<?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>ListIt2</name>
	<version>1.4-beta1</version>
  <mincmsversion>1.11</mincmsversion>
	<help><![CDATA[PGRpdiBzdHlsZT0iZmxvYXQ6cmlnaHQiPjxmb3JtIGFjdGlvbj0iaHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciIgbWV0aG9kPSJwb3N0Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iY21kIiB2YWx1ZT0iX3MteGNsaWNrIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iaG9zdGVkX2J1dHRvbl9pZCIgdmFsdWU9IjdUS0dZUlkzU1JQRVkiPgo8aW5wdXQgdHlwZT0iaW1hZ2UiIHNyYz0iaHR0cHM6Ly93d3cucGF5cGFsb2JqZWN0cy5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYiIGJvcmRlcj0iMCIgbmFtZT0ic3VibWl0IiBhbHQ9IlBheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISI+CjxpbWcgYWx0PSIiIGJvcmRlcj0iMCIgc3JjPSJodHRwczovL3d3dy5wYXlwYWxvYmplY3RzLmNvbS9kZV9ERS9pL3Njci9waXhlbC5naWYiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiPgo8L2Zvcm0+PC9kaXY+Cgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHA6Ly8xMC4xMC4wLjEyL2NtczExMTQvbW9kdWxlcy9MaXN0SXQyL2ZyYW1ld29yay9jc3MvY29sb3Jib3guY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgLz4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwOi8vMTAuMTAuMC4xMi9jbXMxMTE0L21vZHVsZXMvTGlzdEl0Mi9mcmFtZXdvcmsvY3NzL2JhY2tlbmQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgLz4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGxhbmd1YWdlPSJqYXZhc2NyaXB0IiBzcmM9Imh0dHA6Ly8xMC4xMC4wLjEyL2NtczExMTQvbW9kdWxlcy9MaXN0SXQyL2ZyYW1ld29yay9qcy9qcXVlcnkuY29sb3Jib3guanMiPjwvc2NyaXB0Pgo8c2NyaXB0PgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgICBqUXVlcnkoJy5jYm94JykuY29sb3Jib3goewogICAgICAgIHJlbDonZ3JvdXAnLAogICAgICAgIGlmcmFtZTogdHJ1ZSwKICAgICAgICBpbm5lcldpZHRoOiA4MDAsCiAgICAgICAgaW5uZXJIZWlnaHQ6IDQ1MCwKICAgICAgICBvcGFjaXR5OiAwLjIKICAgIH0pOwp9KTsKPC9zY3JpcHQ+CjxkaXYgaWQ9InBhZ2VfdGFicyI+CiAgICA8ZGl2IGlkPSJnZW5lcmFsIj4KICAgICAgICBHZW5lcmFsCiAgICA8L2Rpdj4gICAgCgk8ZGl2IGlkPSJkdXBsaWNhdGluZyI+CgkJQ3JlYXRpbmcgSW5zdGFuY2VzCgk8L2Rpdj4KCTxkaXYgaWQ9ImZpZWxkIj4KCQlGaWVsZCBEZWZpbml0aW9ucwoJPC9kaXY+CQogICAgPGRpdiBpZD0idXBncmFkaW5nIj4KICAgICAgICBVcGdyYWRpbmcKICAgIDwvZGl2PiAgCQoJPGRpdiBpZD0iYWJvdXQiPgoJCUFib3V0Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+CiAgICA8ZGl2IGlkPSJnZW5lcmFsX2MiPgogICAgICAgIDxpbWcgc3JjPSJodHRwOi8vMTAuMTAuMC4xMi9jbXMxMTE0L21vZHVsZXMvTGlzdEl0Mi9pbWFnZXMvbGlzdGl0LWV4dGVuZGVkLWxvZ28uanBnIiBhbHQ9Ikxpc3RJdEV4dGVuZGVkIExvZ28iIC8+CiAgICAgICAgPGgzPkdlbmVyYWwgSW5mbzwvaDM+ICAgICAgCiAgICA8cD5TaW1wbHkgcHV0LCBMaXN0SXRFeHRlbmRlZCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4gWW91IGNvdWxkIG1ha2UgYSBzaW1wbGUgRkFRIG9yIFRlc3RpbW9uaWFscyBmZWF0dXJlIHdpdGggdGhpcyBtb2R1bGUuIFRoZSB3ZWIgZGV2ZWxvcGVyIGRlZmluZXMgZmllbGRzIHRvIGNvbnN0cmFpbiB3aGF0IGRhdGEgdGhlIGNsaWVudCBjYW4gZW50ZXIuIEEgbnVtYmVyIG9mIGZpZWxkIHR5cGVzIGNhbiBiZSBzcGVjaWZpZWQgLSB0ZXh0IGlucHV0LCBjaGVja2JveCwgdGV4dCBhcmVhLCBzZWxlY3QgZGF0ZSwgdXBsb2FkIGZpbGUsIHNlbGVjdCBmaWxlLCBkcm9wZG93biAtIGFuZCBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBjYW4gYmUgc2V0IGZvciBlYWNoIHR5cGUsIGZvciBleGFtcGxlLCBpbnB1dCBmaWVsZCBzaXplLCBtYXggbGVuZ3RoLCBXWVNJV1lHIGVkaXRvciwgcG9zc2libGUgZHJvcCBkb3duIHZhbHVlcywgcG9zc2libGUgZmlsZSBleHRlbnNpb25zLCBkaXJlY3RvcnkgcGF0aHMgZm9yIGZpbGUgc2VsZWN0aW9ucywgZGF0ZSBmb3JtYXRzLCBldGMuLjwvcD4KICAgIDxwPkFuIGltcG9ydGFudCBub3RlIG9mIHdhcm5pbmcgLSBUaGlzIGlzIG5vdCBhIGNvbnRlbnQgY29uc3RydWN0aW9uIGtpdCwgc3VjaCBhcyBpbiBEcnVwYWwuIEl0IGlzIG1lYW50IGZvciBzbWFsbCBsaXN0aW5ncywgbm90IHRvIHN0b3JlIHRob3VzYW5kcyBvZiByZWNvcmRzLiBUaGlzIGlzIGJlY2F1c2Ugb2YgdGhlIGRhdGFiYXNlIG1vZGVsIHVzZWQgKEVBVikuIEFsc28sIGVhY2ggYml0IG9mIGRhdGEgeW91IGVudGVyIGlzIHN0b3JlZCBhcyBURVhUIGRhdGEgdHlwZSwgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIGl0IGlzIHZhcmNoYXIsIGJvb2xlYW4sIHRpbWVzdGFtcCwgZXRjLiBUaGlzIGlzIGEgcmVzdHJpY3Rpb24gb2YgYSBzaG9ydCBkZXZlbG9wbWVudCB0aW1lIGZyYW1lLjwvcD4KICAgIDwvZGl2PiAgICAKCTxkaXYgaWQ9ImR1cGxpY2F0aW5nX2MiPgoJCTxoMz5DcmVhdGluZyBNb2R1bGUgSW5zdGFuY2VzPC9oMz4KICAgIDxwPlRoaXMgbW9kdWxlIGlzIGEgQ29udHJvbCBQYW5lbCBmb3IgY3JlYXRpbmcgTGlzdEl0RXh0ZW5kZWQgTW9kdWxlIEluc3RhbmNlcy4gVG8gY3JlYXRlIExpc3RJdEV4dGVuZGVkIG1vZHVsZSBJbnN0YW5jZSwgc2ltcGx5IGdvIHRvICJJbnN0YW5jZXMiIHRhYiBhbmQgY2xpY2sgb24gIkNyZWF0ZSBJbnN0YW5jZSIgYnV0dG9uLjxiciAvPgogICAgTWFrZSBzdXJlIHlvdSBmb2xsb3cgdGhlIENNU01TIG1vZHVsZSBuYW1pbmcgY29udmVudGlvbnMsIGEteiB3aXRoIG5vIHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgb3Igc3BhY2VzIHRvIGJlIHNhZmUgOik8YnIgLz4KICAgIEFmdGVyIHRoZSBtb2R1bGUgaGFzIGJlZW4gY3JlYXRlZCBhIG5ldyBpbnN0YW5jZSB3aWxsIGJlIGluc3RhbGxlZCBhbmQgbGlzdGVkIGluIG9yaWdpbmFsIExpc3RJdEV4dGVuZGVkIG1vZHVsZSB1bmRlciAiSW5zdGFuY2VzIiB0YWIuPC9wPjxiciAvPgogICAgPHA+WW91IGNhbiBhbHdheXMgY2hhbmdlIHRoZSBtb2R1bGUgZnJpZW5kbHkgbmFtZSBvbmNlIGluc3RhbGxlZCB1bmRlciAiT3B0aW9ucyIgKENvbnRlbnQgJnJhcXVvOyBMaXN0SXQyTmFtZU9mRHVwbGljYXRlKS48YnIgLz4KICAgIFRvIGNoYW5nZSB0aGUgaWNvbiwgcmVwbGFjZSAvbW9kdWxlcy97JG1vZHVsZV9uYW1lfU5hbWVPZkR1cGxpY2F0ZS9pbWFnZXMvaWNvbi5naWYuPGJyIC8+CiAgICBUbyBjaGFuZ2UgQWRtaW4gc2VjdGlvbiBvZiB0aGUgbW9kdWxlLCBzaW1wbHkgc2VsZWN0IGFwcHJvcHJpYXRlIHNlY3Rpb24gZnJvbSBEcm9wZG93bi4gTWFrZSBzdXJlIHlvdSBjbGVhciB0aGUgY2FjaGUgYWZ0ZXIgdGhlc2UgY2hhbmdlcy48L3A+Cgk8L2Rpdj4KCTxkaXYgaWQ9ImZpZWxkX2MiPgoJCTxoMz5GaWVsZCBEZWZpbml0aW9uczwvaDM+CiAgICA8cD5UaGUgZmlyc3QgdGhpbmcgeW91IHNob3VsZCBjb25maWd1cmUgYXJlIHlvdXIgZmllbGQgZGVmaW5pdGlvbnMuPC9wPgogICAgPHA+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgc2V0dGluZ3MgYnkgY2hvb3NpbmcgZnJvbSBhdmFpbGFibGUgb3B0aW9ucy48L3A+CiAgICAKICAgIDxoMz5EZWZhdWx0IEZpZWxkIERlZmluaXRpb25zIGJ5IHR5cGU8L2gzPgogICAgPHVsPgogICAgICAgIDxsaT5UZXh0IElucHV0PC9saT4KICAgICAgICA8bGk+Q2hlY2tib3g6PC9saT4KICAgICAgICA8bGk+VGV4dCBBcmVhPC9saT4KICAgICAgICA8bGk+U2VsZWN0IEZpbGU8L2xpPgogICAgICAgIDxsaT5Ecm9wZG93bjwvbGk+CiAgICAgICAgPGxpPkNvbnRlbnQgUGFnZXM8L2xpPgogICAgICAgIDxsaT5SYWRpbyBCdXR0b25zPC9saT4KICAgICAgICA8bGk+U2VsZWN0IERhdGVUaW1lPC9saT4KICAgICAgICA8bGk+TXVsdGkgU2VsZWN0PC9saT4KICAgICAgICA8bGk+Q2hlY2tib3ggR3JvdXA8L2xpPgogICAgICAgIDxsaT5TbGlkZXI8L2xpPgogICAgPC91bD4KICAgIAogICAgPGgzPkN1c3RvbSBGaWVsZCBEZWZpbml0aW9uczwvaDM+CiAgICA8cD5TaW5jZSBWZXJzaW9uIDEuMyBmaWVsZCBkZWZpbml0aW9ucyBoYXZlIGJlZW4gY29tcGxldGVseSByZXdyaXR0ZW4uPGJyIC8+CiAgICBBcyBhIHJlc3VsdCB5b3UgY2FuIG5vdyBjcmVhdGUgeW91ciBjdXN0b20gZmllbGQgZGVmaW5pdGlvbnMgYnkgZm9sbG93aW5nIG5hbWluZyBjb252ZW50aW9uIGluIExpc3RJdEV4dGVuZGVkIG1vZHVsZS48L3A+CiAgICA8cD5Gb2xsb3dpbmcgdGhlc2UgY2hhbmdlcyB0aGVzZSBjaGFuZ2VzLCBMaXN0SXRFeHRlbmRlZCBUZWFtIGhhcyBhbHNvIHJlbGVhc2VkIGEgbW9kdWxlIG5hbWVkIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0MnhkZWZzIiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0MlhEZWZzPC9hPiB0aGF0IGlzIHNpbXBseSBhIHdyYXBwZXIgbW9kdWxlIGZvciBDdXN0b20gRmllbGQgZGVmaW5pdGlvbnMuPGJyIC8+CiAgICBXaGVuIGNyZWF0aW5nIHlvdXIgY3VzdG9tIGZpbGVkIGZvciBleGFtcGxlICJNeUZpZWxkIiAod2hlcmUgTXlGaWVsZCB3b3VsZCBiZSBuYW1lIG9mIHlvdXIgY3VzdG9tIGZpZWxkKSB5b3Ugd291bGQgY3JlYXRlICJNeUZpZWxkIiBmb2xkZXIgaW5zaWRlICJGTGlzdEl0MlhEZWZzL2ZpZWxkZGVmcyIgZm9sZGVyIGFuZCBhZGQgbmVlZGVkIGZpbGVzIGluIHRoaXMgcGFydGljdWxhciBmb2xkZXIuPGJyIC8+CiAgICBGaWVsZGRlZiBmaWxlIGhhcyB0byBiZSBwcmVmaXhlZCB3aXRoICJsaXN0aXQyZmQiIGZvciBleGFtcGxlICJsaXN0aXQyZmQuTXlGaWVsZC5waHAiLCBmb3IgaW5wdXQgZmllbGQgdGVtcGxhdGUgd2hpY2ggaXMgdXNlZCB3aGVuIG1hbmFnaW5nIEl0ZW0geW91IHdvdWxkIG5lZWQgImlucHV0Lk15RmllbGQudHBsIiBhbmQgYXMgZmllbGQgZGVmaW5pdGlvbiBzZXR0aW5ncyB0ZW1wbGF0ZSB5b3Ugd291bGQgbmVlZCBhZG1pbi5NeUZpZWxkLnRwbCAob25seSBuZWVkZWQgaWYgYWRkaXRpb25hbCBzZXR0aW5ncyBhcmUgcG9zc2libGUgZm9yIHRoaXMgZmllbGQpLjwvcD4KICAgIDxwPkFmdGVyIHlvdSBhcmUgZG9uZSB3cml0aW5nIHlvdXIgb3duIGN1c3RvbSBmaWVsZCBkZWZpbml0aW9uLCB5b3Ugd2lsbCBoYXZlIHRvIGdvIHRvICJNb2R1bGVzICZyYXF1bzsgTGlzdEl0MiIgY2xpY2sgb24gIkZpZWxkIERlZmluaXRpb25zIiB0YWIgYW5kIHNjYW4gZm9yIG5ldyBmaWVsZCBkZWZpbml0aW9ucyBieSBjbGlja2luZyBvbiAiU2NhbiBGaWVsZCBEZWZpbml0aW9ucyIgYnV0dG9uLjwvcD48YnIgLz4KICAgIDxoND48c3Ryb25nPldhdGNoIHRoaXMgdmlkZW8gZm9yIGRldGFpbGVkIGluc3RydWN0aW9uczwvc3Ryb25nPjwvaDQ+CgkJPGEgdGl0bGU9IkNyZWF0aW5nIGN1c3RvbSBmaWVsZCBkZWZpbml0aW9uIiBjbGFzcz0iY2JveCIgcmVsPSJncm91cCIgaHJlZj0iLy9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLzU1NzI4MTI3Ij4KCQkJCTxpbWcgc3JjPSJodHRwOi8vMTAuMTAuMC4xMi9jbXMxMTE0L21vZHVsZXMvTGlzdEl0Mi9pbWFnZXMvc2NyZWVuc2hvdHMvY3VzdG9tX2ZpZWxkc190aHVtYi5qcGciIGFsdD0iQ3JlYXRpbmcgY3VzdG9tIGZpZWxkIGRlZmluaXRpb24iIC8+CgkJPC9hPgkJCgk8L2Rpdj4KICAgIDxkaXYgaWQ9InVwZ3JhZGluZ19jIj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJwYWdld2FybmluZyI+PGgzPkltcG9ydGFudCB1cGdyYWRlIEluZm9ybWF0aW9uPC9oMz4KICAgIDxwPjxzdHJvbmc+SWYgeW91IGhhdmUgdXBncmFkZWQgZnJvbSBMaXN0SXRFeHRlbmRlZCAxLjIuMiBvciBlYXJsaWVyIFZlcnNpb24gdG8gMS4zIHJlYWQgdGhpcyBjYXJlZnVsbHkhPC9zdHJvbmc+PC9wPgogICAgPHA+QWZ0ZXIgdXBncmFkZSBwcm9jZWVkdXJlIG9mIExpc3RJdEV4dGVuZGVkIDEuMyBhIG5ldyBNb2R1bGUgaW5zdGFuY2UgY2FsbGVkIExpc3RJdDJPcmlnaW5hbCB3aWxsIGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS48YnIgLz4KICAgIFBsZWFzZSBnbyB0byAiRXh0ZW5zaW9ucyAmcmFxdW87IE1vZHVsZXMiIGFuZCBpbnN0YWxsIHRoaXMgbmV3bHkgY3JlYXRlZCBJbnN0YW5jZS4gT25jZSB0aGlzIGluc3RhbmNlIHdhcyBpbnN0YWxsZWQgSXRlbXMgZnJvbSBMaXN0SXQyIHdpbGwgYmUgYXZhaWxhYmxlIGFnYWluLjxiciAvPgogICAgVW5mb3J0dW5hdGVsbHkgeW91IHdpbGwgaGF2ZSB0byBjaGFuZ2UgYWxsIHtMaXN0SXQyfSB0YWdzIGluIHlvdXIgV2Vic2l0ZSB0byB7TGlzdEl0Mk9yaWdpbmFsfSwgd2UgYXJlIHNvcnJ5IGFib3V0IHRoYXQuPC9wPjwvZGl2PgogICAgICAgIDxoMz5VcGdyYWRpbmcgZnJvbSAxLjIueCB0byAxLjMueDwvaDM+CiAgICA8aDQ+U3RlcCBvbmU8L2g0PgogICAgPHAgY2xhc3M9InJlZCI+PHN0cm9uZz5QbGVhc2UgcmVhZCB1cGdyYWRlIEluZm9ybWF0aW9uIGFib3ZlITxiciAvPgogICAgTWFrZSBzdXJlIHlvdSBjcmVhdGUgQmFja3VwIG9yIHlvdXIgV2Vic2l0ZSBhbmQgRGF0YWJhc2UgYmVmb3JlIGFueSBmdXJ0aGVyIGFjdGlvbnM8L3N0cm9uZz48L3A+CiAgICA8cD5BcyBtZW50aW9uZWQgYWZ0ZXIgdXBncmFkZSBmcm9tIDEuMi54IHRvIDEuMyB0aGUgZmlyc3Qgc3RlcCB5b3Ugd2lsbCBoYXZlIHRvIG1ha2UgaXMgaW5zdGFsbGluZyBuZXdseSBjcmVhdGVkIDxzdHJvbmc+e0xpc3RJdDJPcmlnaW5hbH08L3N0cm9uZz4gSW5zdGFuY2UuPGJyIC8+CiAgICBPbmNlIHRoaXMgSW5zdGFuY2UgaXMgaW5zdGFsbGVkIHlvdXIgb2xkIE9yaWdpbmFsIExpc3RJdDIgSXRlbXMgd2lsbCBiZSBhdmFpbGFibGUgaW4gTGlzdEl0Mk9yaWdpbmFsIEluc3RhbmNlIHdoaWNoIHlvdSB3aWxsIGZpbmQgaW4gIkNvbnRlbnQiIGJhY2tlbmQgc2VjdGlvbi48L3A+CiAgICA8cD5BdCB0aGlzIG1vbWVudCB5b3VyIEZyb250ZW5kIHdpbGwgbW9zdCBwb3NzaWJseSBiZSBicm9rZW4sIGRpc3BsYXlpbmcgYSBFcnJvciBhYm91dCBub3QgcmVjb2duaXplZCBTbWFydHkgVGFnIGZvciBleGFtcGxlICJ1bmtub3duIHRhZyBMaXN0SXQyIiwgeW91IHNob3VsZCByZXBsYWNlIGFueSBvZiB7TGlzdEl0Mn0gdGFncyB5b3UgYXJlIHVzaW5nIGluIHlvdXIgUGFnZXMgb3IgVGVtcGxhdGVzIHRvIHtMaXN0SXQyT3JpZ2luYWx9LjwvcD4KICAgIDxoND5TdGVwIHR3bzwvaDQ+CiAgICA8cD5EdWUgdG8gbGltaXRhdGlvbiBpbiBtb2R1bGUgdXBncmFkZSBwcm9jZXNzLCBpdCBpcyBub3QgcG9zc2libGUgdG8gZGV0ZWN0IGFueSBvZiB5b3VyIHByZXZpb3VzIExpc3RJdDIgTW9kdWxlIHNldHRpbmdzLCB3aGljaCBtZWFucyB0aGF0IHlvdSBzaG91bGQgbWFrZSBzdXJlIHRvIGNoYW5nZSB0aGVzZSBzZXR0aW5ncyBpbiAiQ29udGVudCAmcmFxdW87IExpc3RJdDJPcmlnaW5hbCIgYWdhaW4gdG8geW91ciBwcmVmZXJlbmNlLjxiciAvPgogICAgQWxzbyB5b3Ugd2lsbCBoYXZlIHRvIHNldCBhbnkgVGVtcGxhdGUgaW4gIlRlbXBsYXRlcyIgdGFiIHRoYXQgeW91IGhhdmUgYmVlbiB1c2luZyBiZWZvcmUgYXMgRGVmYXVsIHRlbXBsYXRlIGJhY2sgdG8gImRlZmF1bHQiIGlmIHlvdSBhcmUgbm90IHVzaW5nICJzdW1hcnl0ZW1wbGF0ZSIgb3IgImRldGFpbHRlbXBsYXRlIiBvciBhbnkgVGVtcGxhdGUgcmVsYXRlZCBwYXJhbWV0ZXJzLjwvcD4KICAgIDxoND5TdGVwIHRocmVlPC9oND4KICAgIDxwPkluIGNhc2UgeW91IGhhdmUgYmVlbiB1c2luZyBGaWVsZCBkZWZpbml0aW9ucyBsaWtlIEdCRmlsZVBpY2tlciBVcGxvYWQgRmlsZSBvciBHYWxsZXJ5IHNlbGVjdGlvbiwgcGxlYXNlIG5vdGUgdGhhdCB0aGVzZSBhcmUgbm8gbG9uZ2VyIHBhcnQgb2YgTGlzdEl0RXh0ZW5kZWQgTW9kdWxlLjxiciAvPgogICAgUmVhc29uIGZvciB0aGlzIGlzIHNpbXBseSB0aGF0IEZpZWxkIGRlZmluaXRpb25zIGhhdmUgYmVlbiBjb21wbGV0ZWx5IHJld3JpdGVuIG1ha2luZyBpdCBwb3NzaWJsZSBmb3IgeW91IHRvIGNyZWF0ZSB5b3VyIG93biBjdXN0b20gRmllbGQgZGVmaW5pdGlvbnMgYW5kIHNpbXBseSBMaXN0SXRFeHRlbmRlZCBERVYgVGVhbSBjYW4gbm90IHN1cHBvcnQgYW55IHRoaXJkIHBhcnR5IE1vZHVsZXMgYXMgcGFydCBvZiBMaXN0SXRFeHRlbmRlZCBNb2R1bGUgYW5kIHRoZXJlZm9yIHBvc3NpYmx5IGRlbGF5aW5nIHJlbGVhc2VzIGluIGZ1dHVyZSBkdWUgdG8gTW9kdWxlIGluY29tcGF0aWJpbGl0eSBvciBhbnl0aGluZyBlbHNlLjwvcD4KICAgIDxwPlRvIG1ha2UgeW91ciBvbGQgVXBsb2FkIEZpbGUgb3IgR2FsbGVyeSBGaWVsZHMgd29ya2luZyBhZ2FpbiB5b3Ugd2lsbCBoYXZlIHRvIGluc3RhbGwgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9saXN0aXQyeGRlZnMiIHRhcmdldD0iX2JsYW5rIj5MaXN0SXRFeHRlbmRlZCBYRGVmczwvYT4gTW9kdWxlIHdoaWNoIGlzIGEgR2F0ZXdheSBtb2R1bGUgdG8gTGlzdEl0RXh0ZW5kZWQgY3VzdG9tIEZpZWxkIGRlZmluaXRpb25zLjxiciAvPgogICAgQWZ0ZXIgTGlzdEl0RXh0ZW5kZWQgWERlZnMgaXMgaW5zdGFsbGVkIHlvdSB3aWxsIGZpbmQgYSBsaXN0IG9mIGF2YWlsYWJsZSBGaWVsZCBEZWZpbml0aW9ucyBpbiAiRXh0ZW5zaW9ucyAmcmFxdW87IExpc3RJdDIiIGJ5IGNsaWNraW5nIG9uICJGaWVsZCBEZWZpbml0aW9ucyIgdGFiLjxiciAvPgogICAgSWRlYWxseSB5b3VyIEZpZWxkIGRlZmluaXRpb25zIHNob3VsZCB3b3JrIGFnYWluLCBpZiB0aGF0IGlzIG5vdCB0aGUgY2FzZSB5b3Ugc2hvdWxkIHRyeSB0byByZXBhaXIgRmllbGQgZGVmaW5pdGlvbnMgZGF0YWJhc2UgdGFibGUgYnkgY2xpY2tpbmcgb24gIlJlcGFpciIgYnV0dG9uIHVuZGVyICJNYWludGVuYW5jZSIgdGFiLjwvcD48YnIgLz4KICAgIDxwPjxzdHJvbmc+SWYgeW91IGhhdmUgZm9sbG93ZWQgYWJvdmUgc3RlcHMsIHlvdSBzaG91bGQgbm93IGhhdmUgYSBmdWxseSBmdW5jdGlvbmFsIGFuZCB1cGdyYWRlZCBMaXN0SXRFeHRlbmRlZCBNb2R1bGUgYW5kIGFsbCBjcmVhdGVkIEluc3RhbmNlcy48L3N0cm9uZz48L3A+ICAgICAgICAKICAgIDwvZGl2PiAJCQoJPGRpdiBpZD0iYWJvdXRfYyI+CgkJPGgzPkFib3V0PC9oMz4KICAgIDxwPk9yaWdpbiBvZiB0aGlzIG1vZHVsZSBjb21lcyBmcm9tIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0IiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0IE1vZHVsZTwvYT4gZGV2ZWxvcGVkIGJ5IEJlbiBNYWxlbi48YnIgLz5BcyB0aGVyZSB3ZXJlIG5vIHBsYW5zIG9uIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgb2YgdGhlIG1vZHVsZSBzb21lIHBlb3BsZSBkZWNpZGVkIHRvIGZvcmsgdGhlIG1vZHVsZSBhbmQgY29udGludWUgd2l0aCBkZXZlbG9wbWVudC48YnIgLz4KICAgIElmIHlvdSBmaW5kIGFueSBidWdzIHBsZWFzZSBmZWVsIGZyZWUgdG8gc3VibWl0IGEgYnVnIHJlcG9ydCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2J1Zy9saXN0LzEwMTUiIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPiBvciBmb3IgYW55IGdvb2QgaWRlYXMgY29uc2lkZXIgc3VibWl0aW5nIGEgZmVhdHVyZSByZXF1ZXN0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvZmVhdHVyZV9yZXF1ZXN0L2xpc3QvMTAxNSIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+LiA8L3A+CiAgICA8cD5QbGVhc2Uga2VlcCBpbiBtaW5kIHRoYXQgZGV2ZWxvcGVycyBkbyBoYXZlIHRoZWlyIGRhaWx5IGpvYnMgd2hpY2ggbWVhbnMgdGhhdCBmZWF0dXJlIHJlcXVlc3RzIGFyZSBjb25zaWRlcmVkIGFuZCBkb25lIGFzIHRpbWUgYWxsb3dzLiBJZiB5b3UgbmVlZCBhIGZlYXR1cmUgcmVhbGx5IGJhZGx5IGNvbnNpZGVyIGNvbnRhY3Rpbmcgb25lIG9mIHRoZSBkZXZlbG9wZXJzIGZvciBhIHNwb25zb3JlZCBkZXZlbG9wbWVudC4KICAgIDwvcD4KICAgIDxoMz5UZWFtPC9oMz4KICAgIDx1bD4KICAgICAgICA8bGk+Sm9uYXRoYW4gU2NobWlkIChGb2FseSopIGhpQGpvbmF0aGFuc2NobWlkLmRlIDxiciAvPnd3dy5qb25hdGhhbnNjaG1pZC5kZTwvbGk+CiAgICAgICAgPGxpPkdvcmFuIElsaWMgKHVuaXF1MykgZy5pbGljQGktYXJ0cy5ldSA8YnIgLz53d3cuaWNoLW1hY2gtZGFzLmF0PC9saT4KICAgICAgICA8bGk+Um9iZXJ0IENhbXBiZWxsIChjYWxndXkxMDAwKSBjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnICA8YnIgLz53d3cuY2FsZ3V5MTAwMC5jb208L2xpPgogICAgICAgIDxsaT5MdWthcyBCbGF0dGVyIChub2NrZW5mZWxsKSBub2NrZW5mZWxsQGdtYWlsLmNvbSA8YnIgLz53d3cuYmxhdHRlcnRlY2guY2g8L2xpPgogICAgICAgIDxsaT5Bcm5vdWQgKGFybm91ZCkgYXJub3VkQHVwc2VydmljZS5ubCA8YnIgLz53d3cudXBzZXJ2aWNlLm5sPC9saT4KICAgICAgICA8bGk+V2F5bmUgT05laWwgKHdpc2hib25lKSB3YXluZUB0ZWFtd2lzaGJvbmUuY29tIDxiciAvPnd3dy50ZWFtd2lzaGJvbmUuY29tPC9saT4KICAgICAgICA8bGk+VGFwaW8gTMO2eXR5eSAoU3Rpa2tpKSB0YXBzYUBibGFja21pbGsuZmk8L2xpPgogICAgPC91bD4KCTwvZGl2PiAgCjwvZGl2PjxoMz5QYXJhbWV0ZXJzPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gUGFyYW1ldGVyIGlzIHVzZWQgdG8gc3BlY2lmeSB3aGF0IGxhbmd1YWdlIHRvIHVzZSBmb3IgZGlzcGxheSBvbiB0aGUgZnJvbnRlbmQuIE5vdCBhbGwgbW9kdWxlcyBzdXBwb3J0IG9yIG5lZWQgdGhpcy48L2xpPjwvdWw+]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBJRFQgTWVkaWEgVGVhbSAmbHQ7aGlAaS1kby10aGlzLmNvbSZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAxLjQtYmV0YTE8YnIgLz48YnIgLz5DaGFuZ2UgSGlzdG9yeTo8YnIgLz48aDM+VmVyc2lvbiAxLjQtYmV0YTE8L2gzPgo8dWw+CiAgICA8bGk+QWRkaW5nIGNhdGVnb3J5IG9wZXJhdGlvbiBjbGFzc2VzOiBMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zLCBMaXN0SXQyQ2F0ZWdvcnk8L2xpPgogICAgPGxpPkFkZGluZyBxdWVyeSBjbGFzc2VzOiBMaXN0SXQyUXVlcnksIExpc3RJdDJJdGVtUXVlcnksIExpc3RJdDJDYXRlZ29yeVF1ZXJ5PC9saT4KICAgIDxsaT5BZGRpbmcgaGllcmFyY2h5IGNsYXNzZXM6IExpc3RJdDJIaWVyYXJjaHlNYW5hZ2VyPC9saT4KICAgIDxsaT5BZGRpbmcgZXZlbnQ6IFByZVJlbmRlckFjdGlvbi4gTWFraW5nIHF1ZXJ5IGluamVjdGlvbnMgcG9zc2libGUgd2l0aCBVRFQuPC9saT4KICAgIDxsaT5BZGRpbmcgZGF0YWJhc2UgaW50ZWdyYXRpb24gY29sdW1uczoga2V5MSwga2V5Miwga2V5My4gTWFrZXMgaW50ZWdyYXRpb25zIHdpdGggZXh0ZXJuYWwgc3lzdGVtcyBwb3NzaWJsZS48L2xpPgogICAgPGxpPkFkZGluZyBiZWhhdmlvciB0byBsb2FkIGl0ZW1zIGFuZCBjYXRlZ29yaWVzIHdpdGggbW9yZSB0aGFuIG9uZSBjcml0ZXJhLjwvbGk+CiAgICA8bGk+QWRkaW5nIGFjdGlvbjogY2F0ZWdvcnkuIE1ha2VzIGNhdGVnb3J5IGxpc3RpbmcgcG9zc2libGUgdmFyaW91cyBvZiB3YXlzLjwvbGk+CiAgICA8bGk+QWRkaW5nIFR3byBuZXcgY2F0ZWdvcnkgdGVtcGxhdGVzLCBvbmUgZm9yIG5vcm1hbCB2aWV3IGFuZCBvbmUgZm9yIGhpZXJhcmNoaWFsLjwvbGk+CiAgICA8bGk+Q2F0ZWdvcmllcyBhcmUgbm8gbG9uZ2VyIG1hbmRhdG9yeSBmb3IgaXRlbXMuPC9saT4KICAgIDxsaT5WYWx1ZXMgbm8gbG9uZ2VyIHNhdmVkIGludG8gZGF0YWJhc2UgaW4gc2VyaWFsaXplZCBmb3JtYXQuIFVzaW5nIHZhbHVlX2luZGV4ZXMgZm9yIHZhbHVlIGZyYWdtZW50cy48L2xpPgogICAgPGxpPlN1cHBvcnQgZm9yIFBIUCA1LjIgZHJvcHBlZC4gTWluaW11bSByZXF1aXJlZCB2ZXJzaW9uIGlzIDUuMy48L2xpPgogICAgPGxpPlNldmVyYWwgbmV3IHBhcmFtZXRlcnMgYXZhaWxhYmxlLjwvbGk+CiAgICA8bGk+QWRkaW5nIEZSIzY3MzMuIEluY2x1ZGUgSXRlbSBpbiBtdWx0aXBsZSBjYXRlZ29yaWVzLjwvbGk+CQogICAgPGxpPkFkZGluZyBGUiM4MjYwLiBEaXNhYmxlIGNhdGVnb3JpZXMuPC9saT4JCiAgICA8bGk+QWRkaW5nIEZSIzg4MTMuIFNlcGFyYXRlIEdldEFkbWluRGVzY3JpcHRpb24uPC9saT4JCiAgICA8bGk+QWRkaW5nIEZSIzg4NTAuIEFsbG93ICJDb250ZW50IFBhZ2VzIiB0byBiZSBwcmVzZW50ZWQgYXMgYSBtdWx0aS1zZWxlY3QuPC9saT4JCiAgICA8bGk+QWRkaW5nIEZSIzg5NjguIFNhdmUgdGhlICJsYXN0IG1vZGlmaWVkIiBkYXRlIG9mIGVhY2ggaXRlbS48L2xpPgkKICAgIDxsaT5BZGRpbmcgRlIjODk2OS4gRGF0ZXBpY2tlciBmaWVsZHMgaW4gYWRtaW4gbGlzdHMuPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4MTc4LiBDYXRlZ29yeSBoaWVyYXJjaGllcyBhbmQgcmVvcmRlcmluZyBkb2Vzbid0IHdvcmsgY29ycmVjdGx5LjwvbGk+CQogICAgPGxpPkZpeGVzIEJSIzgyOTAuIFJlb3JkZXIgQ2F0ZWdvcmllcyBIYW5ncyBCcm93c2VyLjwvbGk+CQogICAgPGxpPkZpeGVzIEJSIzg4NTMuIFRleHQgYXJlYXMgaGF2ZSB0byBoYXZlICdNYXggbGVuZ2h0Jy48L2xpPgkKPC91bD4KCjxoMz5WZXJzaW9uIDEuMy4yPC9oMz4KPHVsPgogICAgPGxpPkZpeGVzIEJSIzg4MjIuIEZpeGVzIGlzc3VlIHdpdGggZmllbGQgdmFsdWVzLCB3aGVuIGRpcmVjdGx5IHVwZ3JhZGluZyBmcm9tIDEuMi54IHNlcmllcy48L2xpPgogICAgPGxpPkZpeGVzIGlzc3VlIHdoZW4gdXNpbmcgb3JkZXJieT0nY3VzdG9tX2FsaWFzJy48L2xpPgogICAgPGxpPkZSICM4ODEzLiBBZGRlZCBhbmQgb3B0aW9uIG9mIGNoYW5naW5nIE1vZHVsZSBEZXNjcmlwdGlvbiBmb3IgZWFjaCBJbnN0YW5jZTwvbGk+CjwvdWw+Cgo8aDM+VmVyc2lvbiAxLjMuMTwvaDM+Cjx1bD4KICAgIDxsaT5GaXhlcyBCUiM4Nzc5LiBVcGdyYWRlIHRpbWUgb3V0cyBvbiBNb01hIHVwZ3JhZGUgcmVxdWVzdC4gTWFudWFsIGZpZWxkIHNjYW4gcmVxdWlyZWQgYWZ0ZXIgdXBncmFkZS48L2xpPgogICAgPGxpPkZpeGVzIEJSIzg3ODAuIFVuaWRlbnRpZmllZCBpbmRleCB3YXJuaW5nIG9uIExpc3RJdDJYRGVmcyBpbnN0YWxsYXRpb24sIHdoZW4gYXV0byBpbnN0YWxsIHNldHRpbmcgaXMgb24uPC9saT4KICAgIDxsaT5BZGRpbmcgbWV0aG9kcyBHZXRIZWFkZXJIVE1MKCkgYW5kIEdldFVSTFBhdGgoKSB0byBGaWVsZGRlZkJhc2UuPC9saT4KICAgIDxsaT5BZGRpbmcgU2VsZWN0IERhdGVUaW1lIGZpZWxkLjwvbGk+CiAgICA8bGk+QWRkaW5nIFNsaWRlciBmaWVsZC48L2xpPgogICAgPGxpPlJlbW92aW5nIFNlbGVjdCBEYXRlIGZpZWxkLjwvbGk+CiAgICA8bGk+UmVzdG9yaW5nIHBhcnRpYWwgUEhQIDUuMi54IHN1cHBvcnQuIFRoaXMgd2lsbCBiZSBsYXN0IHJlbGVhc2Ugc3VwcG9ydGluZyBQSFAgNS4yLnguPC9saT4KICAgIDxsaT5GaXhlcyBVVEYtOCBkZWNvZGUvZW5jb2RlIHByb2JsZW0gd2l0aCBpbXBvcnQvZXhwb3J0LjwvbGk+CiAgICA8bGk+TWFraW5nIG11bHRpdmFsdWVzIHBvc3NpYmxlLiBEYXRhIHN0b3JlZCBpbnRvIGRhdGFiYXNlIGFzIHN0cmluZyBBTkQgc2VyaWFsaXplZCBmb3JtYXQuIFBvc3NpYmxlIHRvIGNhbGwgdmFsdWUgYXMgc3RyaW5nLCBhcnJheSwgb2JqZWN0LjwvbGk+CiAgICA8bGk+QWRkaW5nIE11bHRpIFNlbGVjdCBmaWVsZC48L2xpPgogICAgPGxpPkFkZGluZyBDaGVja2JveCBHcm91cCBmaWVsZC48L2xpPgkKICAgIDxsaT5GaXhlcyBCUiM4ODEyLiBCYXNlIG1vZHVsZSBwZXJtaXNzaW9uIHRpZWQgdG86IE1vZGlmeSBTaXRlIFByZWZlcmVuY2VzLiBUaGFua3MgdG8gY2IyMDA0LjwvbGk+CQogICAgPGxpPkZpeGVzIEJSIzg4MTkuIEFzdGVyaXNrIGFkZGVkIGJhY2sgdG8gZmllbGQgbGFiZWxzLiBUaGFua3MgdG8gY2IyMDA0LjwvbGk+CQo8L3VsPgoKPGgzPlZlcnNpb24gMS4zPC9oMz4KPHVsPgogICAgPGxpPlJlbW92ZWQgZHVwbGljYXRpbmcgaW5zdHJ1Y3Rpb25zIGZyb20gbW9kdWxlIGZpbGVzLCBubyBsb25nZXIgdmFsaWQgYnV0IHNvbWVvbmUgY291bGQgYmUgYSBzbWFydGFzcyBhbmQgZm9sbG93IGluc3RydWN0aW9ucyBhbnl3YXkuPC9saT4KICAgIDxsaT5TZXBhcmF0aW5nIGZyYW1ld29yayBhbmQgaW5zdGFuY2Ugc3R1ZmYuIE1vdGhlciBtb2R1bGUgaW5kZXBlbmRlbnQsIHdpdGhvdXQgYW55IGluc3RhbmNlIG9uIGl0LjwvbGk+CiAgICA8bGk+UmVtb3ZpbmcgcGFyYW1ldGVyOiBudW1iZXIsIHVzZTogcGFnZWxpbWl0IGluc3RlYWQuPC9saT4KICAgIDxsaT5BZGRlZCBvcHRpb24gb2Ygc2hvd2luZyAiZGF0ZSBjcmVhdGVkIiBpbiBJdGVtIGVkaXQgbW9kZSAoRlIgIzgzMzgpPC9saT4KICAgIDxsaT5BZGRlZCBvcHRpb25zIG9mIHNob3dpbmcgY3JlYXRlX3RpbWUsIHN0YXJ0X3RpbWUgYW5kIGVuZF90aW1lIGluIEl0ZW1zIG92ZXJ2aWV3IHRhYmxlPC9saT4KICAgIDxsaT5TYXZlIGN1cnJlbnQgaXRlbSBhbmQgY3JlYXRlIG5ldyAoRlIgIzgyNTQpPC9saT4KICAgIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIGZpZWxkIGRlZmluaXRpb25zPC9saT4KICAgIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIGl0ZW0gY2xhc3NlczwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODIyOS4gTm90IHRocm93aW5nIG5vdGljZSBvbiB1cGdyYWRlPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4MzM5LiBOb3QgdGhyb3dpbmcgZGVwcmVjYXRlZCB3YXJuaW5nIGFueW1vcmUuPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4MzkxLiBJbXBvc3NpYmxlIHRvIGxlYXZlIGNlcnRhaW4gb3B0aW9ucyBlbXB0eS48L2xpPgogICAgPGxpPkZpeGVzIEJSIzgzOTIuIFdvbid0IGNvbGxhcHNlIHdpdGggR2FsbGVyeSBDU1MgYW55bW9yZS48L2xpPgogICAgPGxpPkZpeGVzIEJSIzg0MDYuIEFzc2V0cyBnZXR0aW5nIGNvcnJlY3QgcHJlZml4LjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODU2NS4gRml4ZXMgcHJvYmxlbSB3aXRoIEdCRmlsZVBpY2tlciBmaWVsZCBkZWZpbml0aW9uLjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODU5My4gU2FtZSBhcyBCUiM4MzM5LjwvbGk+CiAgICA8bGk+QWRkaW5nIEZSIzg2NDUuIFBvc3NpYmxlIHRvIHNob3cgaXRlbXMgdXAgdG8gMTAwMC48L2xpPgogICAgPGxpPkFkZGluZyBzaW1wbGUgQ1NWIGltcG9ydC9leHBvcnQgc3lzdGVtLjwvbGk+CiAgICA8bGk+QWRkaW5nIEFKQVggdG8gbW9zdCBvZiBzbWFsbCBhY3Rpb25zLiBpZS4gdG9nZ2xlLCBkZWxldGUuPC9saT4KICAgIDxsaT5BZGRpbmcgbWFueSBvdGhlciB0aGluZ3Mgd2UgZm9yZ290IHRvIGxpc3QgaGVyZS4uLjwvbGk+CjwvdWw+Cgo8aDM+VmVyc2lvbiAxLjIuMjwvaDM+Cjx1bD4KICAgIDxsaT5GaXhlcyBCUiM4MjcwLiBtYWludGFpbnMgb3JkZXJieSBwb3NpdGlvbnMgY29ycmVjdGx5LjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODI2NC4gU3RhdGljIHNlYXJjaCB3b3JrcyBub3cgY29ycmVjdGx5LjwvbGk+CiAgICA8bGk+TWVyZ2luIGFjdGlvbnMgZmlsdGVyIGFuZCBzZWFyY2ggdG8gYWN0aW9uIHNlYXJjaC4gQWN0aW9uIGZpbHRlciB0ZW1wbGF0ZSB0YWJsZXMgcmVtb3ZlZC4gU2VhcmNoIGFjdGlvbiBsb2FkaW5nIGZpZWRkZWZzIG9ubHkgaWYgcmVxdWVzdGVkIGJ5IHRlbXBsYXRlPC9saT4KICAgIDxsaT5SZW1vdmluZyAkaGlkZGVuIHNtYXJ0eSB2YXJpYWJsZSBmcm9tIHRlbXBsYXRlcywgcGFydCBvZiBjb250cm9sbGVyIG5vdy48L2xpPgogICAgPGxpPkFkZGluZyBvd24gY2xhc3MgZm9yIGl0ZW0uIFBvc3NpYmxlIHRvIGNhbGwgZmllbGRkZWYgdmFsdWUgd2l0aCBhbGlhcyBkaXJlY3RseSBmcm9tIG9iamVjdDogJGl0ZW0tPmFsaWFzLCBpbnN0ZWFkIG9mIGl0ZW0tPmZpZWxkZGVmcy5hbGlhcy52YWx1ZS4gT2xkIHdheSB3b3JrcyBhbHNvLjwvbGk+CiAgICA8bGk+QWRkaW5nIHN1cHBvcnQgZm9yIHtjZ2VfbW9kdWxlX2hpbnR9LiBVc2FnZSBhbmQgaW5zdHJ1Y3Rpb25zIGluIENHRXh0ZW5zaW9ucy48L2xpPgogICAgPGxpPkFkZGluZyBGUiM4MTc5LiBwcmV0dHkgdXJsIHN1cHBvcnQgdG8gcGFnaW5hdGlvbi48L2xpPgogICAgPGxpPkFkZGluZyBGUiM4MTgwLiBzZWUgQ0dFeHRlbnNpb25zIGhlbHAgZm9yIHtjZ2VfbW9kdWxlX2hpbnR9LjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODI2Mi4gVHlwb3MgaW4gbGFuZ3VhZ2UgZmlsZXMuPC9saT4KICAgIDxsaT5GaXhlcyBwcm9ibGVtIHdpdGggaW5saW5lIG1vZGUuPC9saT4KICAgIDxsaT5BZGRpbmcgRlIjODE2OC4gcGFnaW5hdGlvbiBmb3IgaXRlbXMgaW4gYmFjay1lbmQuPC9saT4KICAgIDxsaT5GaWVsZCBkZWZpbml0aW9ucyBub3cgcmVtb3ZhYmxlIGV2ZW4gaWYgaXRlbXMgaGF2ZSB2YWx1ZXMgb24gZW0uPC9saT4KICAgIDxsaT5EaXNhYmxpbmcgcmVvcmRlciBjYXRlZ29yeSBidXR0b24sIHVudGlsIHdlIGdldCBpdCB3b3JraW5nIHByb3Blcmx5LjwvbGk+CiAgICA8bGk+UmVtb3ZpbmcgZGVidWcgdGVtcGxhdGVzLiBBZGRpbmcgcGFyYW1ldGVyOiBkZWJ1Zy4gUG9zc2libGUgdG8gdmlldyB0ZW1wbGF0ZSBhbmQgZGVidWcgaW5mbyBhdCB0aGUgc2FtZSB0aW1lIG5vdy48L2xpPgo8L3VsPgoKPGgzPlZlcnNpb24gMS4yLjE8L2gzPgo8dWw+CiAgICA8bGk+Rml4aW5nIGJ1ZyB3aXRoIEdCRmlsZVBpY2tlci48L2xpPgogICAgPGxpPk1pbm9yIGFkanVzdG1lbnRzLjwvbGk+CiAgICA8bGk+TW92aW5nIGNoYW5nZWxvZyB0byBzdGF0aWMgZmlsZS48L2xpPgo8L3VsPgoKPGgzPlZlcnNpb24gMS4yPC9oMz4KPHVsPgogICAgPGxpPkNvbXBsZXRlIHJld3JpdGUgb2YgVGVtcGxhdGUgaGFuZGxpbmcsIHVzaW5nIENNU01TIHRlbXBsYXRlcyB0YWJsZSBub3c8L2xpPgogICAgPGxpPkFkZGl0aW9uYWwgRmlsZWQgZGVmaW5pdGlvbnM8L2xpPgogICAgPGxpPlJlbW92ZWQgR0JGaWxlUGlja2VyIGRlcGVuZGVuY3k8L2xpPgogICAgPGxpPkNNU01TIDEuMTEgcmVhZHk8L2xpPgogICAgPGxpPkltcHJvdmVkIGhhbmRsaW5nIG9mIGl0ZW1zIG9yZGVyaW5nPC9saT4KICAgIDxsaT5BZGRlZCBwb3NzaWJpbGl0eSBvZiBkdXBsaWNhdGluZyBtdWx0aXBsZSBpbnN0YW5jZXMgZnJvbSBiYWNrZW5kIGFuZCByZWR1Y2VkIHRoZSBudW1iZXIgb2YgZmlsZXMgbmVlZGVkIGZvciBkdXBsaWNhdGVkIGluc3RhbmNlczwvbGk+CiAgICA8bGk+TnVtYmVyZWQgcGFnaW5hdGlvbiBpbiBzdW1tYXJ5IHRlbXBsYXRlczwvbGk+CiAgICA8bGk+TnVtZXJvdXMgYnVnZml4ZXM8L2xpPgogICAgPGxpPlBvc3NpYmlsaXR5IHRvIHNwZWNpZnkgZGVmdWFsdCBjYXRlZ29yeTwvbGk+CiAgICA8bGk+UG9zc2liaWxpdHkgdG8gc3BlY2lmeSBkZWZhdWx0IFRlbXBsYXRlczwvbGk+CiAgICA8bGk+UG9zc2liaWxpdHkgdG8gcmVsb2FkIGRlZmF1bHQgdGVtcGxhdGVzPC9saT4KICAgIDxsaT5BZGRlZCBvcHRpb24gb2YgY2hvb3NpbmcgQWRtaW4gU2VjdGlvbjwvbGk+CiAgICA8bGk+YW5kIG1vcmUgLi4uPC9saT4KPC91bD4KCjxoMz5WZXJzaW9uIDEuMTwvaDM+Cjx1bD4KICAgIDxsaT5NdWxpdGxldmVsIENhdGVnb3JpZXM8L2xpPgogICAgPGxpPlN1bW1hcnkgUGFnaW5hdGlvbjwvbGk+CiAgICA8bGk+TXVsdGlwbGUgQ2F0ZWdvcmllcyBmb3IgcGFyYW1ldGVyIGNhdGVnb3J5PC9saT4KICAgIDxsaT5DTVNNUyAxLjEwIHJlYWR5PC9saT4KICAgIDxsaT5CYWNrZW5kIHRhYmxlIHNlYXJjaDwvbGk+CiAgICA8bGk+RXhjbHVkZSBDYXRlZ29yeSBwYXJhbWV0ZXI8L2xpPgo8L3VsPjxiciAvPg==]]></about>
	<description><![CDATA[ListItExtended allows you to create lists that you can display throughout your website.]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.admin_copymodule.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmIChpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkpIHsKCiAgICAkcGFyYW1zID0gYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdpbnN0YW5jZXN0YWInKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOwp9CgokbW9kdWxlX25hbWUgPSAnJzsKaWYoaXNzZXQoJHBhcmFtc1snbW9kdWxlX25hbWUnXSkpIHsKCgkkbW9kdWxlX25hbWUgPSAkcGFyYW1zWydtb2R1bGVfbmFtZSddOwp9CgokaW52YWxpZF9uYW1lcyA9IGFycmF5KCdsaXN0aXQyJywgJ29yaWdpbmFsJywgJ3hkZWZzJyk7CiRtb2R1bGVzID0gJHRoaXMtPkxpc3RNb2R1bGVzKCk7CmZvcmVhY2goJG1vZHVsZXMgYXMgJG1vZCkgewoKCSRtb2QtPm1vZHVsZV9uYW1lID0gc3Vic3RyKCRtb2QtPm1vZHVsZV9uYW1lLCBzdHJsZW4oTGlzdEl0MkR1cGxpY2F0b3I6Ok1PRF9QUkVGSVgpKTsKCSRpbnZhbGlkX25hbWVzW10gPSBzdHJ0b2xvd2VyKCRtb2QtPm1vZHVsZV9uYW1lKTsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFN1Ym1pdAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoaXNzZXQoJHBhcmFtc1snc3VibWl0J10pKSB7CgoJJGVycm9ycyA9IGFycmF5KCk7CgkKCWlmKGVtcHR5KCRtb2R1bGVfbmFtZSkpIHsKCQoJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdtb2R1bGVfbmFtZV9lbXB0eScpOwoJfQoJCglpZihwcmVnX21hdGNoKCcvW14wLTlhLXpBLVpdLycsICRtb2R1bGVfbmFtZSkpIHsKCQoJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdtb2R1bGVfbmFtZV9pbnZhbGlkJyk7Cgl9CgkKCWlmKGluX2FycmF5KHN0cnRvbG93ZXIoJG1vZHVsZV9uYW1lKSwgJGludmFsaWRfbmFtZXMpKSB7CgkKCQkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnbW9kdWxlX25hbWVfaW52YWxpZCcpOwoJfQkKCglpZiAoZW1wdHkoJGVycm9ycykpIHsKCQoJCSRkdXBsaWNhdG9yID0gbmV3IExpc3RJdDJEdXBsaWNhdG9yKCRtb2R1bGVfbmFtZSk7CgkJJG1vZHVsZV9mdWxsbmFtZSA9ICRkdXBsaWNhdG9yLT5SdW4oKTsKCQkKCQlpZigkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfYXV0b2luc3RhbGwnKSkgewoJCQoJCQkkbW9kb3BzID0gY21zbXMoKS0+R2V0TW9kdWxlT3BlcmF0aW9ucygpOwoJCQkkbW9kb3BzLT5JbnN0YWxsTW9kdWxlKCRtb2R1bGVfZnVsbG5hbWUpOwoJCX0KCQkKCQkkcGFyYW1zID0gYXJyYXkoJ21lc3NhZ2UnID0+ICdtb2R1bGVjb3BpZWQnLCdhY3RpdmVfdGFiJyA9PiAnaW5zdGFuY2VzdGFiJyk7CgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsgIAoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRXJyb3IgaGFuZGxpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFlbXB0eSgkZXJyb3JzKSkgewoKICAgIGVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJGVycm9ycyk7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwgJ2FkbWluX2NvcHltb2R1bGUnLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnLCBmYWxzZSwgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X21vZHVsZV9uYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdtb2R1bGVfbmFtZScsICRtb2R1bGVfbmFtZSwgNDApKTsKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2NvcHltb2R1bGUudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_domaintenance.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CiRwYXJtcyA9IGFycmF5KCdhY3RpdmVfdGFiJyA9PiAnbWFpbnRlbmFuY2V0YWInKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBGaXggZmllbGRkZWYgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKGlzc2V0KCRwYXJhbXNbJ2ZpeF9maWVsZGRlZnMnXSkpIHsKCgkkdHlwZV9tYXAgPSBhcnJheSgKCQkJJ3RleHRib3gnID0+ICdUZXh0SW5wdXQnLAoJCQknZHJvcGRvd24nID0+ICdEcm9wZG93bicsCgkJCSdoaWVyYXJjaHknID0+ICdDb250ZW50UGFnZXMnLAoJCQknY2hlY2tib3gnID0+ICdDaGVja2JveCcsCgkJCSd0ZXh0YXJlYScgPT4gJ1RleHRBcmVhJywKCQkJJ2dhbGxlcnknID0+ICdHYWxsZXJ5RHJvcGRvd24nLAoJCQknc2VsZWN0X2RhdGUnID0+ICdTZWxlY3REYXRlJywKCQkJJ3VwbG9hZF9maWxlJyA9PiAnR0JGaWxlUGlja2VyJywKCQkJJ3NlbGVjdF9maWxlJyA9PiAnU2VsZWN0RmlsZScKCSk7CgoJJG1vZHVsZXMgPSAkdGhpcy0+TGlzdE1vZHVsZXMoKTsKCQoJZm9yZWFjaCgkbW9kdWxlcyBhcyAkbW9kdWxlKSB7CgoJCSRtb2QgPSBjbXNtcygpLT5HZXRNb2R1bGVJbnN0YW5jZSgkbW9kdWxlLT5tb2R1bGVfbmFtZSk7CgkJCgkJaWYoaXNfb2JqZWN0KCRtb2QpKSB7CgkJCQoJCQlmb3JlYWNoKCR0eXBlX21hcCBhcyAkb2xkX3R5cGU9PiRuZXdfdHlwZSkgewoKCQkJCSRxdWVyeSAgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYgU0VUIHR5cGUgPSA/IFdIRVJFIHR5cGUgPSA/JzsKCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkbmV3X3R5cGUsICRvbGRfdHlwZSkpOwoJCQl9CgkJfQoJfQoJCgkkcGFybXNbJ21lc3NhZ2UnXSA9ICdtZXNzYWdlX2ZpZWxkZGVmc19maXhlZCc7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBSZWRpcmVjdAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFybXMpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_scanfielddefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgpMaXN0SXQyRmllbGRkZWZPcGVyYXRpb25zOjpTY2FuTW9kdWxlcygpOwoKLy8gYWxsIGRvbmUKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnN0YWInLCAnbWVzc2FnZSc9PidmaWVsZGRlZl9zY2FubmVkJykpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_togglefielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoIWlzc2V0KCRwYXJhbXNbJ3R5cGUnXSkpCgl0aHJvdyBuZXcgTGlzdEl0MkV4Y2VwdGlvbignTWlzc2luZyBwYXJhbWV0ZXIsIHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4hJyk7CgokdHlwZSA9IChzdHJpbmcpJHBhcmFtc1sndHlwZSddOwkKCQokc3RhdHVzID0gTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6VG9nZ2xlQWN0aXZlKCRwYXJhbXNbJ3R5cGUnXSk7CgkKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCiRhZG1pbnRoZW1lID0gY21zbXMoKS0+Z2V0X3ZhcmlhYmxlKCdhZG1pbnRoZW1lJyk7CiRqc29uID0gbmV3IHN0ZENsYXNzOwoKaWYgKCRzdGF0dXMpIHsKCSRqc29uLT5pbWFnZSA9ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZXZlcnQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwp9IAplbHNlIHsKCSRqc29uLT5pbWFnZSA9ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9mYWxzZS5naWYnLCAkdGhpcy0+TW9kTGFuZygnYXBwcm92ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyk7Cn0KCiRqc29uLT5ocmVmID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fdG9nZ2xlZmllbGRkZWYnLCAkcmV0dXJuaWQsICcnLCBhcnJheSgndHlwZScgPT4gJHR5cGUpLCAnJywgdHJ1ZSk7CgovLyBGaXggVVJMIGZvciBKU09OIG91dHB1dAokanNvbi0+aHJlZiA9IGh0bWxfZW50aXR5X2RlY29kZSgkanNvbi0+aHJlZik7CgpoZWFkZXIoIkNvbnRlbnQtdHlwZTphcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Iik7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKZWNobyBqc29uX2VuY29kZSgkanNvbik7CmV4aXQoKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_updateoptions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTZXQgbmV3IHZhbHVlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfYXV0b3NjYW4nLCAoaXNzZXQoJHBhcmFtc1snYWxsb3dfYXV0b3NjYW4nXSk/MTowKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19hdXRvaW5zdGFsbCcsIChpc3NldCgkcGFyYW1zWydhbGxvd19hdXRvaW5zdGFsbCddKT8xOjApKTsKCiRwYXJhbXMgPSBhcnJheSgnbWVzc2FnZScgPT4gJ2NoYW5nZXNzYXZlZCcsICdhY3RpdmVfdGFiJyA9PiAnb3B0aW9uc3RhYicpOwokdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_upgrademodule.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZihpc3NldChzZWxmOjokZHVwbGljYXRlKSkgcmV0dXJuOwppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9uJykpIHJldHVybjsKCmlmICghaXNzZXQoJHBhcmFtc1snbW9kdWxlX2lkJ10pKQoJdGhyb3cgbmV3IExpc3RJdDJFeGNlcHRpb24oJ01pc3NpbmcgcGFyYW1ldGVyLCB0aGlzIHNob3VsZCBub3QgaGFwcGVuIScpOwoKJEdMT0JBTFNbJ0NNU19GT1JDRV9NT0RVTEVfTE9BRCddID0gMTsKCiRtb2RvcHMgPSBjbXNtcygpLT5HZXRNb2R1bGVPcGVyYXRpb25zKCk7CiRtb2R1bGVzID0gJHRoaXMtPkxpc3RNb2R1bGVzKCk7CiRtb2RuYW1lID0gJG1vZHVsZXNbJHBhcmFtc1snbW9kdWxlX2lkJ11dLT5tb2R1bGVfbmFtZTsKCiRtb2RvcHMtPlVwZ3JhZGVNb2R1bGUoJG1vZG5hbWUpOwoKLy8gYWxsIGRvbmUKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdpbnN0YW5jZXN0YWInLCAnbWVzc2FnZScgPT4gJ2luc3RhbmNlX21vZHVsZXVwZ3JhZGVkJykpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoaXNzZXQoJHBhcmFtc1snbWVzc2FnZSddKSkgewoJZWNobyAkdGhpcy0+U2hvd01lc3NhZ2UoJHRoaXMtPk1vZExhbmcoJHBhcmFtc1snbWVzc2FnZSddKSk7Cn0KCmlmIChpc3NldCgkcGFyYW1zWydlcnJvcnMnXSkgJiYgY291bnQoJHBhcmFtc1snZXJyb3JzJ10pKSB7CgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCRwYXJhbXNbJ2Vycm9ycyddKTsKfQoKaWYgKCFlbXB0eSgkcGFyYW1zWydhY3RpdmVfdGFiJ10pKSB7CgkkdGFiID0gJHBhcmFtc1snYWN0aXZlX3RhYiddOwp9IGVsc2UgewoJJHRhYiA9ICdpbnN0YW5jZXN0YWInOwp9CgplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdpbnN0YW5jZXN0YWInLCAkdGhpcy0+TW9kTGFuZygnaW5zdGFuY2VzJyksICgkdGFiID09ICdpbnN0YW5jZXN0YWInKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignZmllbGRkZWZzdGFiJywgJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmcycpLCAoJHRhYiA9PSAnZmllbGRkZWZzdGFiJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ21haW50ZW5hbmNldGFiJywgJHRoaXMtPk1vZExhbmcoJ21haW50ZW5hbmNlJyksICgkdGFiID09ICdtYWludGVuYW5jZXRhYicpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdvcHRpb25zdGFiJywgJHRoaXMtPk1vZExhbmcoJ29wdGlvbnMnKSwgKCR0YWIgPT0gJ29wdGlvbnN0YWInKSk7CmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCgpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2luc3RhbmNlc3RhYicsICRwYXJhbXMpOwppbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy90YWJjb250ZW50LmFkbWluX2luc3RhbmNlc3RhYi5waHAnOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdmaWVsZGRlZnN0YWInLCAkcGFyYW1zKTsKaW5jbHVkZSBkaXJuYW1lKF9fRklMRV9fKSAuICcvdGFiY29udGVudC5hZG1pbl9maWVsZGRlZnN0YWIucGhwJzsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignbWFpbnRlbmFuY2V0YWInLCAkcGFyYW1zKTsKaW5jbHVkZSBkaXJuYW1lKF9fRklMRV9fKSAuICcvdGFiY29udGVudC5hZG1pbl9tYWludGVuYW5jZXRhYi5waHAnOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdvcHRpb25zdGFiJywgJHBhcmFtcyk7CmluY2x1ZGUgZGlybmFtZShfX0ZJTEVfXykgLiAnL3RhYmNvbnRlbnQuYWRtaW5fb3B0aW9uc3RhYi5waHAnOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKICAgIAplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/changelog.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPlZlcnNpb24gMS40LWJldGExPC9oMz4KPHVsPgogICAgPGxpPkFkZGluZyBjYXRlZ29yeSBvcGVyYXRpb24gY2xhc3NlczogTGlzdEl0MkNhdGVnb3J5T3BlcmF0aW9ucywgTGlzdEl0MkNhdGVnb3J5PC9saT4KICAgIDxsaT5BZGRpbmcgcXVlcnkgY2xhc3NlczogTGlzdEl0MlF1ZXJ5LCBMaXN0SXQySXRlbVF1ZXJ5LCBMaXN0SXQyQ2F0ZWdvcnlRdWVyeTwvbGk+CiAgICA8bGk+QWRkaW5nIGhpZXJhcmNoeSBjbGFzc2VzOiBMaXN0SXQySGllcmFyY2h5TWFuYWdlcjwvbGk+CiAgICA8bGk+QWRkaW5nIGV2ZW50OiBQcmVSZW5kZXJBY3Rpb24uIE1ha2luZyBxdWVyeSBpbmplY3Rpb25zIHBvc3NpYmxlIHdpdGggVURULjwvbGk+CiAgICA8bGk+QWRkaW5nIGRhdGFiYXNlIGludGVncmF0aW9uIGNvbHVtbnM6IGtleTEsIGtleTIsIGtleTMuIE1ha2VzIGludGVncmF0aW9ucyB3aXRoIGV4dGVybmFsIHN5c3RlbXMgcG9zc2libGUuPC9saT4KICAgIDxsaT5BZGRpbmcgYmVoYXZpb3IgdG8gbG9hZCBpdGVtcyBhbmQgY2F0ZWdvcmllcyB3aXRoIG1vcmUgdGhhbiBvbmUgY3JpdGVyYS48L2xpPgogICAgPGxpPkFkZGluZyBhY3Rpb246IGNhdGVnb3J5LiBNYWtlcyBjYXRlZ29yeSBsaXN0aW5nIHBvc3NpYmxlIHZhcmlvdXMgb2Ygd2F5cy48L2xpPgogICAgPGxpPkFkZGluZyBUd28gbmV3IGNhdGVnb3J5IHRlbXBsYXRlcywgb25lIGZvciBub3JtYWwgdmlldyBhbmQgb25lIGZvciBoaWVyYXJjaGlhbC48L2xpPgogICAgPGxpPkNhdGVnb3JpZXMgYXJlIG5vIGxvbmdlciBtYW5kYXRvcnkgZm9yIGl0ZW1zLjwvbGk+CiAgICA8bGk+VmFsdWVzIG5vIGxvbmdlciBzYXZlZCBpbnRvIGRhdGFiYXNlIGluIHNlcmlhbGl6ZWQgZm9ybWF0LiBVc2luZyB2YWx1ZV9pbmRleGVzIGZvciB2YWx1ZSBmcmFnbWVudHMuPC9saT4KICAgIDxsaT5TdXBwb3J0IGZvciBQSFAgNS4yIGRyb3BwZWQuIE1pbmltdW0gcmVxdWlyZWQgdmVyc2lvbiBpcyA1LjMuPC9saT4KICAgIDxsaT5TZXZlcmFsIG5ldyBwYXJhbWV0ZXJzIGF2YWlsYWJsZS48L2xpPgogICAgPGxpPkFkZGluZyBGUiM2NzMzLiBJbmNsdWRlIEl0ZW0gaW4gbXVsdGlwbGUgY2F0ZWdvcmllcy48L2xpPgkKICAgIDxsaT5BZGRpbmcgRlIjODI2MC4gRGlzYWJsZSBjYXRlZ29yaWVzLjwvbGk+CQogICAgPGxpPkFkZGluZyBGUiM4ODEzLiBTZXBhcmF0ZSBHZXRBZG1pbkRlc2NyaXB0aW9uLjwvbGk+CQogICAgPGxpPkFkZGluZyBGUiM4ODUwLiBBbGxvdyAiQ29udGVudCBQYWdlcyIgdG8gYmUgcHJlc2VudGVkIGFzIGEgbXVsdGktc2VsZWN0LjwvbGk+CQogICAgPGxpPkFkZGluZyBGUiM4OTY4LiBTYXZlIHRoZSAibGFzdCBtb2RpZmllZCIgZGF0ZSBvZiBlYWNoIGl0ZW0uPC9saT4JCiAgICA8bGk+QWRkaW5nIEZSIzg5NjkuIERhdGVwaWNrZXIgZmllbGRzIGluIGFkbWluIGxpc3RzLjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODE3OC4gQ2F0ZWdvcnkgaGllcmFyY2hpZXMgYW5kIHJlb3JkZXJpbmcgZG9lc24ndCB3b3JrIGNvcnJlY3RseS48L2xpPgkKICAgIDxsaT5GaXhlcyBCUiM4MjkwLiBSZW9yZGVyIENhdGVnb3JpZXMgSGFuZ3MgQnJvd3Nlci48L2xpPgkKICAgIDxsaT5GaXhlcyBCUiM4ODUzLiBUZXh0IGFyZWFzIGhhdmUgdG8gaGF2ZSAnTWF4IGxlbmdodCcuPC9saT4JCjwvdWw+Cgo8aDM+VmVyc2lvbiAxLjMuMjwvaDM+Cjx1bD4KICAgIDxsaT5GaXhlcyBCUiM4ODIyLiBGaXhlcyBpc3N1ZSB3aXRoIGZpZWxkIHZhbHVlcywgd2hlbiBkaXJlY3RseSB1cGdyYWRpbmcgZnJvbSAxLjIueCBzZXJpZXMuPC9saT4KICAgIDxsaT5GaXhlcyBpc3N1ZSB3aGVuIHVzaW5nIG9yZGVyYnk9J2N1c3RvbV9hbGlhcycuPC9saT4KICAgIDxsaT5GUiAjODgxMy4gQWRkZWQgYW5kIG9wdGlvbiBvZiBjaGFuZ2luZyBNb2R1bGUgRGVzY3JpcHRpb24gZm9yIGVhY2ggSW5zdGFuY2U8L2xpPgo8L3VsPgoKPGgzPlZlcnNpb24gMS4zLjE8L2gzPgo8dWw+CiAgICA8bGk+Rml4ZXMgQlIjODc3OS4gVXBncmFkZSB0aW1lIG91dHMgb24gTW9NYSB1cGdyYWRlIHJlcXVlc3QuIE1hbnVhbCBmaWVsZCBzY2FuIHJlcXVpcmVkIGFmdGVyIHVwZ3JhZGUuPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4NzgwLiBVbmlkZW50aWZpZWQgaW5kZXggd2FybmluZyBvbiBMaXN0SXQyWERlZnMgaW5zdGFsbGF0aW9uLCB3aGVuIGF1dG8gaW5zdGFsbCBzZXR0aW5nIGlzIG9uLjwvbGk+CiAgICA8bGk+QWRkaW5nIG1ldGhvZHMgR2V0SGVhZGVySFRNTCgpIGFuZCBHZXRVUkxQYXRoKCkgdG8gRmllbGRkZWZCYXNlLjwvbGk+CiAgICA8bGk+QWRkaW5nIFNlbGVjdCBEYXRlVGltZSBmaWVsZC48L2xpPgogICAgPGxpPkFkZGluZyBTbGlkZXIgZmllbGQuPC9saT4KICAgIDxsaT5SZW1vdmluZyBTZWxlY3QgRGF0ZSBmaWVsZC48L2xpPgogICAgPGxpPlJlc3RvcmluZyBwYXJ0aWFsIFBIUCA1LjIueCBzdXBwb3J0LiBUaGlzIHdpbGwgYmUgbGFzdCByZWxlYXNlIHN1cHBvcnRpbmcgUEhQIDUuMi54LjwvbGk+CiAgICA8bGk+Rml4ZXMgVVRGLTggZGVjb2RlL2VuY29kZSBwcm9ibGVtIHdpdGggaW1wb3J0L2V4cG9ydC48L2xpPgogICAgPGxpPk1ha2luZyBtdWx0aXZhbHVlcyBwb3NzaWJsZS4gRGF0YSBzdG9yZWQgaW50byBkYXRhYmFzZSBhcyBzdHJpbmcgQU5EIHNlcmlhbGl6ZWQgZm9ybWF0LiBQb3NzaWJsZSB0byBjYWxsIHZhbHVlIGFzIHN0cmluZywgYXJyYXksIG9iamVjdC48L2xpPgogICAgPGxpPkFkZGluZyBNdWx0aSBTZWxlY3QgZmllbGQuPC9saT4KICAgIDxsaT5BZGRpbmcgQ2hlY2tib3ggR3JvdXAgZmllbGQuPC9saT4JCiAgICA8bGk+Rml4ZXMgQlIjODgxMi4gQmFzZSBtb2R1bGUgcGVybWlzc2lvbiB0aWVkIHRvOiBNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcy4gVGhhbmtzIHRvIGNiMjAwNC48L2xpPgkKICAgIDxsaT5GaXhlcyBCUiM4ODE5LiBBc3RlcmlzayBhZGRlZCBiYWNrIHRvIGZpZWxkIGxhYmVscy4gVGhhbmtzIHRvIGNiMjAwNC48L2xpPgkKPC91bD4KCjxoMz5WZXJzaW9uIDEuMzwvaDM+Cjx1bD4KICAgIDxsaT5SZW1vdmVkIGR1cGxpY2F0aW5nIGluc3RydWN0aW9ucyBmcm9tIG1vZHVsZSBmaWxlcywgbm8gbG9uZ2VyIHZhbGlkIGJ1dCBzb21lb25lIGNvdWxkIGJlIGEgc21hcnRhc3MgYW5kIGZvbGxvdyBpbnN0cnVjdGlvbnMgYW55d2F5LjwvbGk+CiAgICA8bGk+U2VwYXJhdGluZyBmcmFtZXdvcmsgYW5kIGluc3RhbmNlIHN0dWZmLiBNb3RoZXIgbW9kdWxlIGluZGVwZW5kZW50LCB3aXRob3V0IGFueSBpbnN0YW5jZSBvbiBpdC48L2xpPgogICAgPGxpPlJlbW92aW5nIHBhcmFtZXRlcjogbnVtYmVyLCB1c2U6IHBhZ2VsaW1pdCBpbnN0ZWFkLjwvbGk+CiAgICA8bGk+QWRkZWQgb3B0aW9uIG9mIHNob3dpbmcgImRhdGUgY3JlYXRlZCIgaW4gSXRlbSBlZGl0IG1vZGUgKEZSICM4MzM4KTwvbGk+CiAgICA8bGk+QWRkZWQgb3B0aW9ucyBvZiBzaG93aW5nIGNyZWF0ZV90aW1lLCBzdGFydF90aW1lIGFuZCBlbmRfdGltZSBpbiBJdGVtcyBvdmVydmlldyB0YWJsZTwvbGk+CiAgICA8bGk+U2F2ZSBjdXJyZW50IGl0ZW0gYW5kIGNyZWF0ZSBuZXcgKEZSICM4MjU0KTwvbGk+CiAgICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBmaWVsZCBkZWZpbml0aW9uczwvbGk+CiAgICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBpdGVtIGNsYXNzZXM8L2xpPgogICAgPGxpPkZpeGVzIEJSIzgyMjkuIE5vdCB0aHJvd2luZyBub3RpY2Ugb24gdXBncmFkZTwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODMzOS4gTm90IHRocm93aW5nIGRlcHJlY2F0ZWQgd2FybmluZyBhbnltb3JlLjwvbGk+CiAgICA8bGk+Rml4ZXMgQlIjODM5MS4gSW1wb3NzaWJsZSB0byBsZWF2ZSBjZXJ0YWluIG9wdGlvbnMgZW1wdHkuPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4MzkyLiBXb24ndCBjb2xsYXBzZSB3aXRoIEdhbGxlcnkgQ1NTIGFueW1vcmUuPC9saT4KICAgIDxsaT5GaXhlcyBCUiM4NDA2LiBBc3NldHMgZ2V0dGluZyBjb3JyZWN0IHByZWZpeC48L2xpPgogICAgPGxpPkZpeGVzIEJSIzg1NjUuIEZpeGVzIHByb2JsZW0gd2l0aCBHQkZpbGVQaWNrZXIgZmllbGQgZGVmaW5pdGlvbi48L2xpPgogICAgPGxpPkZpeGVzIEJSIzg1OTMuIFNhbWUgYXMgQlIjODMzOS48L2xpPgogICAgPGxpPkFkZGluZyBGUiM4NjQ1LiBQb3NzaWJsZSB0byBzaG93IGl0ZW1zIHVwIHRvIDEwMDAuPC9saT4KICAgIDxsaT5BZGRpbmcgc2ltcGxlIENTViBpbXBvcnQvZXhwb3J0IHN5c3RlbS48L2xpPgogICAgPGxpPkFkZGluZyBBSkFYIHRvIG1vc3Qgb2Ygc21hbGwgYWN0aW9ucy4gaWUuIHRvZ2dsZSwgZGVsZXRlLjwvbGk+CiAgICA8bGk+QWRkaW5nIG1hbnkgb3RoZXIgdGhpbmdzIHdlIGZvcmdvdCB0byBsaXN0IGhlcmUuLi48L2xpPgo8L3VsPgoKPGgzPlZlcnNpb24gMS4yLjI8L2gzPgo8dWw+CiAgICA8bGk+Rml4ZXMgQlIjODI3MC4gbWFpbnRhaW5zIG9yZGVyYnkgcG9zaXRpb25zIGNvcnJlY3RseS48L2xpPgogICAgPGxpPkZpeGVzIEJSIzgyNjQuIFN0YXRpYyBzZWFyY2ggd29ya3Mgbm93IGNvcnJlY3RseS48L2xpPgogICAgPGxpPk1lcmdpbiBhY3Rpb25zIGZpbHRlciBhbmQgc2VhcmNoIHRvIGFjdGlvbiBzZWFyY2guIEFjdGlvbiBmaWx0ZXIgdGVtcGxhdGUgdGFibGVzIHJlbW92ZWQuIFNlYXJjaCBhY3Rpb24gbG9hZGluZyBmaWVkZGVmcyBvbmx5IGlmIHJlcXVlc3RlZCBieSB0ZW1wbGF0ZTwvbGk+CiAgICA8bGk+UmVtb3ZpbmcgJGhpZGRlbiBzbWFydHkgdmFyaWFibGUgZnJvbSB0ZW1wbGF0ZXMsIHBhcnQgb2YgY29udHJvbGxlciBub3cuPC9saT4KICAgIDxsaT5BZGRpbmcgb3duIGNsYXNzIGZvciBpdGVtLiBQb3NzaWJsZSB0byBjYWxsIGZpZWxkZGVmIHZhbHVlIHdpdGggYWxpYXMgZGlyZWN0bHkgZnJvbSBvYmplY3Q6ICRpdGVtLT5hbGlhcywgaW5zdGVhZCBvZiBpdGVtLT5maWVsZGRlZnMuYWxpYXMudmFsdWUuIE9sZCB3YXkgd29ya3MgYWxzby48L2xpPgogICAgPGxpPkFkZGluZyBzdXBwb3J0IGZvciB7Y2dlX21vZHVsZV9oaW50fS4gVXNhZ2UgYW5kIGluc3RydWN0aW9ucyBpbiBDR0V4dGVuc2lvbnMuPC9saT4KICAgIDxsaT5BZGRpbmcgRlIjODE3OS4gcHJldHR5IHVybCBzdXBwb3J0IHRvIHBhZ2luYXRpb24uPC9saT4KICAgIDxsaT5BZGRpbmcgRlIjODE4MC4gc2VlIENHRXh0ZW5zaW9ucyBoZWxwIGZvciB7Y2dlX21vZHVsZV9oaW50fS48L2xpPgogICAgPGxpPkZpeGVzIEJSIzgyNjIuIFR5cG9zIGluIGxhbmd1YWdlIGZpbGVzLjwvbGk+CiAgICA8bGk+Rml4ZXMgcHJvYmxlbSB3aXRoIGlubGluZSBtb2RlLjwvbGk+CiAgICA8bGk+QWRkaW5nIEZSIzgxNjguIHBhZ2luYXRpb24gZm9yIGl0ZW1zIGluIGJhY2stZW5kLjwvbGk+CiAgICA8bGk+RmllbGQgZGVmaW5pdGlvbnMgbm93IHJlbW92YWJsZSBldmVuIGlmIGl0ZW1zIGhhdmUgdmFsdWVzIG9uIGVtLjwvbGk+CiAgICA8bGk+RGlzYWJsaW5nIHJlb3JkZXIgY2F0ZWdvcnkgYnV0dG9uLCB1bnRpbCB3ZSBnZXQgaXQgd29ya2luZyBwcm9wZXJseS48L2xpPgogICAgPGxpPlJlbW92aW5nIGRlYnVnIHRlbXBsYXRlcy4gQWRkaW5nIHBhcmFtZXRlcjogZGVidWcuIFBvc3NpYmxlIHRvIHZpZXcgdGVtcGxhdGUgYW5kIGRlYnVnIGluZm8gYXQgdGhlIHNhbWUgdGltZSBub3cuPC9saT4KPC91bD4KCjxoMz5WZXJzaW9uIDEuMi4xPC9oMz4KPHVsPgogICAgPGxpPkZpeGluZyBidWcgd2l0aCBHQkZpbGVQaWNrZXIuPC9saT4KICAgIDxsaT5NaW5vciBhZGp1c3RtZW50cy48L2xpPgogICAgPGxpPk1vdmluZyBjaGFuZ2Vsb2cgdG8gc3RhdGljIGZpbGUuPC9saT4KPC91bD4KCjxoMz5WZXJzaW9uIDEuMjwvaDM+Cjx1bD4KICAgIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIFRlbXBsYXRlIGhhbmRsaW5nLCB1c2luZyBDTVNNUyB0ZW1wbGF0ZXMgdGFibGUgbm93PC9saT4KICAgIDxsaT5BZGRpdGlvbmFsIEZpbGVkIGRlZmluaXRpb25zPC9saT4KICAgIDxsaT5SZW1vdmVkIEdCRmlsZVBpY2tlciBkZXBlbmRlbmN5PC9saT4KICAgIDxsaT5DTVNNUyAxLjExIHJlYWR5PC9saT4KICAgIDxsaT5JbXByb3ZlZCBoYW5kbGluZyBvZiBpdGVtcyBvcmRlcmluZzwvbGk+CiAgICA8bGk+QWRkZWQgcG9zc2liaWxpdHkgb2YgZHVwbGljYXRpbmcgbXVsdGlwbGUgaW5zdGFuY2VzIGZyb20gYmFja2VuZCBhbmQgcmVkdWNlZCB0aGUgbnVtYmVyIG9mIGZpbGVzIG5lZWRlZCBmb3IgZHVwbGljYXRlZCBpbnN0YW5jZXM8L2xpPgogICAgPGxpPk51bWJlcmVkIHBhZ2luYXRpb24gaW4gc3VtbWFyeSB0ZW1wbGF0ZXM8L2xpPgogICAgPGxpPk51bWVyb3VzIGJ1Z2ZpeGVzPC9saT4KICAgIDxsaT5Qb3NzaWJpbGl0eSB0byBzcGVjaWZ5IGRlZnVhbHQgY2F0ZWdvcnk8L2xpPgogICAgPGxpPlBvc3NpYmlsaXR5IHRvIHNwZWNpZnkgZGVmYXVsdCBUZW1wbGF0ZXM8L2xpPgogICAgPGxpPlBvc3NpYmlsaXR5IHRvIHJlbG9hZCBkZWZhdWx0IHRlbXBsYXRlczwvbGk+CiAgICA8bGk+QWRkZWQgb3B0aW9uIG9mIGNob29zaW5nIEFkbWluIFNlY3Rpb248L2xpPgogICAgPGxpPmFuZCBtb3JlIC4uLjwvbGk+CjwvdWw+Cgo8aDM+VmVyc2lvbiAxLjE8L2gzPgo8dWw+CiAgICA8bGk+TXVsaXRsZXZlbCBDYXRlZ29yaWVzPC9saT4KICAgIDxsaT5TdW1tYXJ5IFBhZ2luYXRpb248L2xpPgogICAgPGxpPk11bHRpcGxlIENhdGVnb3JpZXMgZm9yIHBhcmFtZXRlciBjYXRlZ29yeTwvbGk+CiAgICA8bGk+Q01TTVMgMS4xMCByZWFkeTwvbGk+CiAgICA8bGk+QmFja2VuZCB0YWJsZSBzZWFyY2g8L2xpPgogICAgPGxpPkV4Y2x1ZGUgQ2F0ZWdvcnkgcGFyYW1ldGVyPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/duplicate/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/duplicate/711298321795374c1c45ad72025b1b78</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyA3MTEyOTgzMjE3OTUzNzRjMWM0NWFkNzIwMjViMWI3OCBleHRlbmRzIExpc3RJdDIKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgpOwoJfQoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgTW9kdWxlIGFwaSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCglwdWJsaWMgZnVuY3Rpb24gR2V0TmFtZSgpCgl7CgkJcmV0dXJuIGdldF9jbGFzcygkdGhpcyk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUoKQoJewoJCXJldHVybiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJyk7Cgl9CgkKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uKCkKICAgIHsKICAgICAgICByZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ21vZGRlc2NyaXB0aW9uJywgJHRoaXMtPk1vZExhbmcoJ21vZGRlc2NyaXB0aW9uJykpOwogICAgfSAJCgoJcHVibGljIGZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpCgl7CgkJcmV0dXJuICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhZG1pbnNlY3Rpb24nKTsKCX0JCgoJcHVibGljIGZ1bmN0aW9uIEFsbG93QXV0b1VwZ3JhZGUoKQoJewoJCXJldHVybiBGQUxTRTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gR2V0RGVwZW5kZW5jaWVzKCkKCXsKCQlyZXR1cm4gYXJyYXkoJ0xpc3RJdDInID0+ICcxLjMuMicpOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9pdGVtJyk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CQoKCXB1YmxpYyBmdW5jdGlvbiBMYXp5TG9hZEZyb250ZW5kKCkgCgl7CgkJcmV0dXJuIGZhbHNlOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gU3ViUGFja2FnZSgpCgl7CgkJcmV0dXJuIEZBTFNFOwoJfQkKCglwdWJsaWMgZnVuY3Rpb24gR2V0SGVscCgpCgl7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfbmFtZScsICR0aGlzLT5HZXROYW1lKCkpOwoJCSRzbWFydHktPmFzc2lnbigncGFyZW50X25hbWUnLCBwYXJlbnQ6OkdldE5hbWUoKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfYWxpYXMnLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkpOwoJCSRzbWFydHktPmFzc2lnbigncm9vdHVybCcsICRjb25maWdbJ3Jvb3RfdXJsJ10pOwoKCQkkc21hcnR5LT5hc3NpZ24oJ21vZCcsICR0aGlzKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCd1c2FnZV90ZXh0Jywgc3RyX3JlcGxhY2UoJ3skbW9kdWxlX25hbWV9JywgJHRoaXMtPkdldE5hbWUoKSwgJHRoaXMtPk1vZExhbmcoJ2hlbHBfdXNhZ2UnKSkpOwoJCSRzbWFydHktPmFzc2lnbigncGVybWlzc2lvbnNfdGV4dCcsIHN0cl9yZXBsYWNlKCd7JG1vZHVsZV9uYW1lfScsICR0aGlzLT5HZXROYW1lKCksICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3Blcm1pc3Npb25zJykpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlc190ZXh0Jywgc3RyX3JlcGxhY2UoJ3skbW9kdWxlX25hbWV9JywgJHRoaXMtPkdldE5hbWUoKSwgJHRoaXMtPk1vZExhbmcoJ2hlbHBfdGVtcGxhdGVzJykpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2R1cGxpY2F0aW5nX3RleHQnLCBzdHJfcmVwbGFjZSgneyRtb2R1bGVfbmFtZX0nLCAkdGhpcy0+R2V0TmFtZSgpLCAkdGhpcy0+TW9kTGFuZygnaGVscF9kdXBsaWNhdGluZycpKSk7CgoJCXJldHVybiAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdoZWxwLnRwbCcpOwoJfQkKCQoJcHVibGljIGZ1bmN0aW9uIEluaXRpYWxpemVGcm9udGVuZCgpCgl7CgkJJHRoaXMtPlJlZ2lzdGVyTW9kdWxlUGx1Z2luKCk7CgkJJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOwoJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2FjdGlvbicsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3Nob3dhbGwnLCBDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2V4Y2x1ZGVfY2F0ZWdvcnknLCBDTEVBTl9TVFJJTkcpOwkJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzdWJjYXRlZ29yeScsIENMRUFOX0lOVCk7CQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnb3JkZXJieScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHRlbXBsYXRlJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3VtbWFyeXRlbXBsYXRlJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VhcmNodGVtcGxhdGUnLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjYXRlZ29yeXRlbXBsYXRlJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlscGFnZScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2l0ZW0nLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpZF9oaWVyYXJjaHknLCBDTEVBTl9TVFJJTkcpOwkJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3BhZ2VsaW1pdCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3RhcnQnLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3BhZ2VudW1iZXInLENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NlYXJjaCcsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoQ0xFQU5fUkVHRVhQLicvc2VhcmNoXy4qLycsQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZmlsdGVyJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncmV0dXJucGFnZScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RlYnVnJywgQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY29sbGFwc2UnLCBDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzaG93X2l0ZW1zJywgQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbnVtYmVyX29mX2xldmVscycsIENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2luY2x1ZGVfaXRlbXMnLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdleGNsdWRlX2l0ZW1zJywgQ0xFQU5fU1RSSU5HKTsKCQkKCQkkc3ViY2F0ZWdvcnkgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3ViY2F0ZWdvcnknKTsKCQkKCQkvLyBQYWdpbmF0aW9uCgkJJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy8nLiR0aGlzLT5wcmVmaXguJ1wvcGFnZVwvKD9QPHBhZ2VudW1iZXI+WzAtOV0rPylcLyg/UDxwYWdlbGltaXQ+WzAtOV0rKVwvKD9QPHJldHVybmlkPlswLTldKykkLycsIGFycmF5KCdhY3Rpb24nID0+ICdkZWZhdWx0JykpOwoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcL3BhZ2VcLyg/UDxwYWdlbnVtYmVyPlswLTldKz8pXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywgYXJyYXkoJ2FjdGlvbicgPT4gJ2RlZmF1bHQnKSk7CgkJCgkJLy8gSGllcmFyY2h5IHZpZXcJCQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcLyg/UDxjYXRlZ29yeT4uKz8pXC8oP1A8aWRfaGllcmFyY2h5PlswLTkuXSspXC8oP1A8aXRlbT4uKz8pXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywgYXJyYXkoJ2FjdGlvbicgPT4gJ2RldGFpbCcpKTsKCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnLycuJHRoaXMtPnByZWZpeC4nXC8oP1A8Y2F0ZWdvcnk+Lis/KVwvKD9QPGlkX2hpZXJhcmNoeT5bMC05Ll0rKVwvKD9QPHJldHVybmlkPlswLTldKykkLycsIGFycmF5KCdhY3Rpb24nID0+ICdkZWZhdWx0JywgJ3N1YmNhdGVnb3J5JyA9PiAkc3ViY2F0ZWdvcnkpKTsJCgkJCgkJLy8gU2luZ3VsYXIJCQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcLyg/UDxpdGVtPi4rPylcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8ZGV0YWlsdGVtcGxhdGU+Lis/KSQvJywgYXJyYXkoJ2FjdGlvbicgPT4gJ2RldGFpbCcpKTsKCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnLycuJHRoaXMtPnByZWZpeC4nXC8oP1A8aXRlbT4uKz8pXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywgYXJyYXkoJ2FjdGlvbicgPT4gJ2RldGFpbCcpKTsJCgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBJbml0aWFsaXplQWRtaW4oKQoJewoJCS8vIHBhcmFtZXRlcnMgdGhhdCBjYW4gYmUgY2FsbGVkIGluIHRoZSBtb2R1bGUgdGFnCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignYWN0aW9uJywgJ2RlZmF1bHQnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9hY3Rpb24nKSk7CQkKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdvcmRlcmJ5JywgJ2l0ZW1fcG9zaXRpb24nLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9vcmRlcmJ5JykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3Nob3dhbGwnLCAnMCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3Nob3dhbGwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY2F0ZWdvcnknLCAnZ2VuZXJhbCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2NhdGVnb3J5JykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2V4Y2x1ZGVfY2F0ZWdvcnknLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZXhjbHVkZV9jYXRlZ29yeScpKTsJCQkKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzdWJjYXRlZ29yeScsICdmYWxzZScsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3N1YmNhdGVnb3J5JykpOwkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGV0YWlsdGVtcGxhdGUnLCAnZGVmYXVsdCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3N1bW1hcnl0ZW1wbGF0ZScsICdkZWZhdWx0JywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3NlYXJjaHRlbXBsYXRlJywgJ2RlZmF1bHQnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9zZWFyY2h0ZW1wbGF0ZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjYXRlZ29yeXRlbXBsYXRlJywgJ2RlZmF1bHQnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9jYXRlZ29yeXRlbXBsYXRlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2RldGFpbHBhZ2UnLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZGV0YWlscGFnZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdpdGVtJywgJ2FsaWFzJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1faXRlbScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdwYWdlbGltaXQnLCAxMDAwMDAsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3BhZ2VsaW1pdCcpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzdGFydCcsIDAsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3N0YXJ0JykpOwoJCS8vJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VhcmNoJywgJycsICR0aGlzLT5sYW5nKCdoZWxwX3BhcmFtX3NlYXJjaCcpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzZXJhY2hfKicsJycsJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fc2VhcmNoXycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdmaWx0ZXInLCcnLCR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2ZpbHRlcicpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdyZXR1cm5wYWdlJywgJycsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3JldHVybnBhZ2UnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGVidWcnLCAnZmFsc2UnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9kZWJ1ZycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdjb2xsYXBzZScsICdmYWxzZScsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2NvbGxhcHNlJykpOwkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2hvd19pdGVtcycsICdmYWxzZScsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3Nob3dfaXRlbXMnKSk7CQkKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdudW1iZXJfb2ZfbGV2ZWxzJywgJycsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX251bWJlcl9vZl9sZXZlbHMnKSk7CQkJCQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2luY2x1ZGVfaXRlbXMnLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1faW5jbHVkZV9pdGVtcycpKTsJCQoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2V4Y2x1ZGVfaXRlbXMnLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZXhjbHVkZV9pdGVtcycpKTsJCQoJfQkKCQogICAgcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQogICAgewoJCS8vIFNTTCBjaGVjayAoSG9wZWZ1bGx5IGNvcmUgd291bGQgZG8gdGhpcyBzb29uLi4uKQoJCSR1c2Vfc3NsID0gZmFsc2U7CgkJaWYoaXNzZXQoJF9TRVJWRVJbJ0hUVFBTJ10pICYmICRfU0VSVkVSWydIVFRQUyddPT0nb24nKQoJCQkkdXNlX3NzbCA9IHRydWU7CgkKICAgICAgICAkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CiAgICAgICAgJG1vZHVsZW5hbWUgPSAkdGhpcy0+R2V0TmFtZSgpOwoJCSRtb2R1bGVkaXIgPSAkdGhpcy0+R2V0UGFyZW50VVJMUGF0aCgkdXNlX3NzbCk7CgkJJGdsb2JhbHNfanMgPSAoJHVzZV9zc2w/JGNvbmZpZ1snc3NsX3VybCddOiRjb25maWdbJ3Jvb3RfdXJsJ10pLiAnL21vZHVsZXMvJy4gTElTVElUMiAuJy9saWIvanMvJzsKCQkkZ2xvYmFsc19jc3MgPSAoJHVzZV9zc2w/JGNvbmZpZ1snc3NsX3VybCddOiRjb25maWdbJ3Jvb3RfdXJsJ10pLiAnL21vZHVsZXMvJy4gTElTVElUMiAuJy9saWIvY3NzLyc7CiAgICAgICAgJGFkbWluZGlyID0gJGNvbmZpZ1snYWRtaW5fdXJsJ107CiAgICAgICAgJHVzZXJrZXkgPSBnZXRfc2VjdXJlX3BhcmFtKCk7CiAgICAgICAgJGpxdWVyeXVpID0gJyc7CiAgICAgICAgaWYgKHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwgJzEuMTEtYWxwaGEwJykgPCAwKSB7CiAgICAgICAgICAgICRqcXVlcnl1aSA9ICc8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSInLiAkbW9kdWxlZGlyIC4nL2Nzcy9qcXVlcnktdWktMS44LjIuY3VzdG9tLmNzcyI+PC9saW5rPic7CiAgICAgICAgfQoKICAgICAgICAkdG1wbCA9IDw8PEVPVAp7JGpxdWVyeXVpfQo8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJ7JG1vZHVsZWRpcn0vY3NzL2NvbG9yYm94LmNzcyIgLz4KPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRnbG9iYWxzX2Nzc31saXN0aXQyLWdsb2JhbHMuY3NzIiAvPgo8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJ7JG1vZHVsZWRpcn0vY3NzL2JhY2tlbmQuY3NzIiAvPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CjwhLS0KdmFyIENNU19BRE1JTl9ESVIgPSAneyRhZG1pbmRpcn0nOwp2YXIgQ01TX1VTRVJfS0VZID0gJ3skdXNlcmtleX0nOwp2YXIgTU9EVUxFX05BTUUgPSAneyRtb2R1bGVuYW1lfSc7Ci0tPgo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ieyRtb2R1bGVkaXJ9L2pzL2pxdWVyeS5xdWlja3NlYXJjaC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InskbW9kdWxlZGlyfS9qcy9qcXVlcnkudGFibGVzb3J0ZXIubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ieyRtb2R1bGVkaXJ9L2pzL2pxdWVyeS5zbHVnLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ieyRtb2R1bGVkaXJ9L2pzL2pxdWVyeS5jb2xvcmJveC5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InskZ2xvYmFsc19qc31saXN0aXQyLWdsb2JhbHMuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJ7JG1vZHVsZWRpcn0vanMvbGlzdGl0Mi5qcyI+PC9zY3JpcHQ+CkVPVDsKCgkJJHRtcGwgLj0gTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6R2V0SGVhZGVySFRNTCgpOwoJCQogICAgICAgIHJldHVybiAkdG1wbDsKICAgIH0JCgoJcHVibGljIGZ1bmN0aW9uIERvQWN0aW9uKCRuYW1lLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZD0nJykKCXsKCQlnbG9iYWwgJENNU19BRE1JTl9QQUdFOwoJCQoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkJCgkJJHRoaXMtPkxvYWRNb2R1bGVIaW50cygkcGFyYW1zKTsKCQkKCQkkc21hcnR5LT5hc3NpZ25fYnlfcmVmKCdtb2QnLCAkdGhpcyk7CgkJJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsICRpZCk7CgkJJHNtYXJ0eS0+YXNzaWduKCdyZXR1cm5pZCcsICRyZXR1cm5pZCk7CgkJCgkJaWYoaXNzZXQoJHBhcmFtc1snaWRfaGllcmFyY2h5J10pKSB7CgkJCWNtc191dGlsczo6c2V0X2FwcF9kYXRhKCdsaXN0aXQyX2lkX2hpZXJhcmNoeScsICRwYXJhbXNbJ2lkX2hpZXJhcmNoeSddKTsKCQl9CQkKCQkKCQlpZigkQ01TX0FETUlOX1BBR0UpIHsKCQkKCQkJJHRoZW1lT2JqZWN0ID0gY21zX3V0aWxzOjpnZXRfdGhlbWVfb2JqZWN0KCk7CgkJCSRzbWFydHktPmFzc2lnbl9ieV9yZWYoJ3RoZW1lT2JqZWN0JywgJHRoZW1lT2JqZWN0KTsJCQoJCX0JCgkKCQlpZiAoJG5hbWUgIT0gJycpIHsKCQoJCQkkZ290X2NvbnRlbnRzID0gZmFsc2U7CgkJCSRjb250ZW50cyA9ICcnOwkJCgkJCSRuYW1lID0gcHJlZ19yZXBsYWNlKCcvW15BLVphLXowLTlcLV8rXS8nLCAnJywgJG5hbWUpOwoKCQkJaWYoJENNU19BRE1JTl9QQUdFKQoJCQkJJGNvbnRlbnRzIC49ICc8ZGl2IGNsYXNzPSJsaXN0aXQyLWFkbWluLXdyYXBwZXIiPic7CgkJCQoJCQkvLyBDaGVjayBpZiB3ZSBoYXZlIGFjdGlvbiBpbiB0aGlzCgkJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkgLiAnL2FjdGlvbi4nIC4gJG5hbWUgLiAnLnBocCc7CgkJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpICYmICEkZ290X2NvbnRlbnRzKSB7CgkJCQkJCQoJCQkJb2Jfc3RhcnQoKTsJCgkJCQlpbmNsdWRlKCRmaWxlbmFtZSk7CgkJCQkkY29udGVudHMgLj0gb2JfZ2V0X2NvbnRlbnRzKCk7CgkJCQlvYl9lbmRfY2xlYW4oKTsKCgkJCQkkZ290X2NvbnRlbnRzID0gdHJ1ZTsJCQkJCgkJCX0JCQkKCQkJCgkJCS8vIENoZWNrIHBhcmVudCBpZiB3ZSBkb24ndAoJCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0UGFyZW50UGF0aCgpIC4gJy9hY3Rpb24uJyAuICRuYW1lIC4gJy5waHAnOwoJCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSAmJiAhJGdvdF9jb250ZW50cykgewoJCQkJCQkKCQkJCW9iX3N0YXJ0KCk7CQoJCQkJaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQkJJGNvbnRlbnRzIC49IG9iX2dldF9jb250ZW50cygpOwoJCQkJb2JfZW5kX2NsZWFuKCk7CQoJCQkJCgkJCQkkZ290X2NvbnRlbnRzID0gdHJ1ZTsJCQkJCgkJCX0KCQkJCgkJCWlmKCRDTVNfQURNSU5fUEFHRSkKCQkJCSRjb250ZW50cyAuPSAnPC9kaXY+JzsKCgkJCWVjaG8gJGNvbnRlbnRzOwkJCQoJCX0KCX0KCQoJZnVuY3Rpb24gVXBncmFkZSgkb2xkdmVyc2lvbiwgJG5ld3ZlcnNpb24pCgl7CgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCSRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCQoJCSRyZXNwb25zZSA9IEZBTFNFOwoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRQYXJlbnRQYXRoKCkgLiAnL21ldGhvZC51cGdyYWRlR2xvYmFscy5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgJHJlc3BvbnNlID0gVFJVRTsKCQl9CgkJCgkJJGZpbGVuYW1lID0gJHRoaXMtPkdldE1vZHVsZVBhdGgoKSAuICcvbWV0aG9kLnVwZ3JhZGUucGhwJzsKCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSkgewoJCQkKCQkJJHJlcyA9IGluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJaWYoJHJlcyA9PSAxIHx8ICRyZXMgPT0gJycpICRyZXNwb25zZSA9IFRSVUU7CgkJfQoJCQoJCS8vIENoZWNrIGlmIG1vZHVsZSBpbiBvdXIgb3duIGNvbnRyb2wgdGFibGVzIHlldAoJCSRxdWVyeSA9ICJTRUxFQ1QgbW9kdWxlX2lkIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfbGlzdGl0Ml9pbnN0YW5jZXMgV0hFUkUgbW9kdWxlX25hbWUgPSA/IjsJCgkJJG1vZHN0YXR1cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJHRoaXMtPkdldE5hbWUoKSkpOwoJCQoJCWlmKCEkbW9kc3RhdHVzKSAkdGhpcy0+UmVnaXN0ZXJNb2R1bGUoKTsJCQoJCgkJcmV0dXJuICRyZXNwb25zZTsKCX0JCgoJZnVuY3Rpb24gSW5zdGFsbCgpCgl7CgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCSRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCQoJCSRyZXNwb25zZSA9IEZBTFNFOwoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRQYXJlbnRQYXRoKCkgLiAnL21ldGhvZC5pbnN0YWxsR2xvYmFscy5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgewoJCQkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCX0gZWxzZSB7CgkJCQkkcmVzcG9uc2UgPSAkcmVzOwoJCQl9CgkJfQoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkgLiAnL21ldGhvZC5pbnN0YWxsLnBocCc7CgkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkpIHsKCQkJCgkJCSRyZXMgPSBpbmNsdWRlKCRmaWxlbmFtZSk7CgkJCWlmKCRyZXMgPT0gMSB8fCAkcmVzID09ICcnKSB7CgkJCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkJfSBlbHNlIHsKCQkJCSRyZXNwb25zZSA9ICRyZXM7CgkJCX0KCQl9CgkJCgkJaWYoISRyZXNwb25zZSkgewoJCQoJCQkkdGhpcy0+UmVnaXN0ZXJNb2R1bGUoKTsKCQl9CgkKCQlyZXR1cm4gJHJlc3BvbnNlOwoJfQoKCWZ1bmN0aW9uIFVuaW5zdGFsbCgpCgl7CgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCSRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCQoJCSRyZXNwb25zZSA9IEZBTFNFOwoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRQYXJlbnRQYXRoKCkgLiAnL21ldGhvZC51bmluc3RhbGxHbG9iYWxzLnBocCc7CgkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkpIHsKCQkJCgkJCSRyZXMgPSBpbmNsdWRlKCRmaWxlbmFtZSk7CgkJCWlmKCRyZXMgPT0gMSB8fCAkcmVzID09ICcnKSB7CgkJCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkJfSBlbHNlIHsKCQkJCSRyZXNwb25zZSA9ICRyZXM7CgkJCX0KCQl9CgkJCgkJJGZpbGVuYW1lID0gJHRoaXMtPkdldE1vZHVsZVBhdGgoKSAuICcvbWV0aG9kLnVuaW5zdGFsbC5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgewoJCQkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCX0gZWxzZSB7CgkJCQkkcmVzcG9uc2UgPSAkcmVzOwoJCQl9CgkJfQoJCQoJCWlmKCEkcmVzcG9uc2UpIHsKCQkKCQkJJHRoaXMtPlVucmVnaXN0ZXJNb2R1bGUoKTsKCQl9CQkKCQoJCXJldHVybiAkcmVzcG9uc2U7Cgl9CQoJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIE1hbmlwdWxhdGlvbiBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkKCQoJcHVibGljIGZ1bmN0aW9uIE1vZExhbmcoKQoJewoJCSRtb2QgPSBjbXNtcygpLT5HZXRNb2R1bGVJbnN0YW5jZShMSVNUSVQyKTsKCQlpZighaXNfb2JqZWN0KCRtb2QpKSAKCQkJdGhyb3cgbmV3IExpc3RJdDJFeGNlcHRpb24oJ0Nhbm5vdCByZXRyaXZlIExpc3RJdDIgT2JqZWN0LicpOwoJCQoJCSRtb2QtPkxvYWRMYW5nTWV0aG9kcygpOwoKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlhcnJheV91bnNoaWZ0KCRhcmdzLCcnKTsKCgkJJGFyZ3NbMF0gPSAmJG1vZDsKCgkJcmV0dXJuIGNhbGxfdXNlcl9mdW5jX2FycmF5KCdjbXNfbW9kdWxlX0xhbmcnLCAkYXJncyk7Cgl9CgkJCglwdWJsaWMgZnVuY3Rpb24gR2V0UGFyZW50UGF0aCgpCgl7CgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCXJldHVybiBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3Jvb3RfcGF0aCddLCAnbW9kdWxlcycsIExJU1RJVDIsICdmcmFtZXdvcmsnKTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhcmVudFVSTFBhdGgoJHVzZV9zc2w9ZmFsc2UpCgl7CgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCXJldHVybiAoJHVzZV9zc2w/JGNvbmZpZ1snc3NsX3VybCddOiRjb25maWdbJ3Jvb3RfdXJsJ10pIC4gJy9tb2R1bGVzLycgLiBMSVNUSVQyIC4gJy9mcmFtZXdvcmsnOwoJfQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBJbnN0YW5jZSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkJCgoJZmluYWwgcHJpdmF0ZSBmdW5jdGlvbiBSZWdpc3Rlck1vZHVsZSgpCgl7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQoJCSRxdWVyeSAgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfbGlzdGl0Ml9pbnN0YW5jZXMgKG1vZHVsZV9uYW1lKSBWQUxVRVMgKD8pJzsKCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHRoaXMtPkdldE5hbWUoKSkpOwoJCQoJCWlmICghJHJlc3VsdCkgZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsKCQkKCQlyZXR1cm4gdHJ1ZTsKCX0KCQoJZmluYWwgcHJpdmF0ZSBmdW5jdGlvbiBVbnJlZ2lzdGVyTW9kdWxlKCkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoKCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfbGlzdGl0Ml9pbnN0YW5jZXMgV0hFUkUgbW9kdWxlX25hbWUgPSA/JzsKCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHRoaXMtPkdldE5hbWUoKSkpOwoJCQoJCWlmICghJHJlc3VsdCkgZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsKCQkKCQlyZXR1cm4gdHJ1ZTsJCQoJfQkKCQkKfSAvLyBlbmQgb2YgY2xhc3MKCj8+]]></data>
	</file>
	<file>
	  <filename>/duplicate/f05209d467666560e4667aaf6790023c</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBmMDUyMDlkNDY3NjY2NTYwZTQ2NjdhYWY2NzkwMDIzYyBleHRlbmRzIExpc3RJdDIKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgpOwoJfQoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgTW9kdWxlIGFwaSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCglwdWJsaWMgZnVuY3Rpb24gR2V0TmFtZSgpCgl7CgkJcmV0dXJuIGdldF9jbGFzcygkdGhpcyk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUoKQoJewoJCXJldHVybiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJyk7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpCgl7CgkJcmV0dXJuICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhZG1pbnNlY3Rpb24nKTsKCX0JCgoJcHVibGljIGZ1bmN0aW9uIEFsbG93QXV0b1VwZ3JhZGUoKQoJewoJCXJldHVybiBGQUxTRTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gR2V0RGVwZW5kZW5jaWVzKCkKCXsKCQlyZXR1cm4gYXJyYXkoJ0xpc3RJdDInID0+ICcxLjMuMScpOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9pdGVtJyk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CQoKCXB1YmxpYyBmdW5jdGlvbiBMYXp5TG9hZEZyb250ZW5kKCkgCgl7CgkJcmV0dXJuIGZhbHNlOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gU3ViUGFja2FnZSgpCgl7CgkJcmV0dXJuIEZBTFNFOwoJfQkKCglwdWJsaWMgZnVuY3Rpb24gR2V0SGVscCgpCgl7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfbmFtZScsICR0aGlzLT5HZXROYW1lKCkpOwoJCSRzbWFydHktPmFzc2lnbigncGFyZW50X25hbWUnLCBwYXJlbnQ6OkdldE5hbWUoKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfYWxpYXMnLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkpOwoJCSRzbWFydHktPmFzc2lnbigncm9vdHVybCcsICRjb25maWdbJ3Jvb3RfdXJsJ10pOwoKCQkkc21hcnR5LT5hc3NpZ24oJ21vZCcsICR0aGlzKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCd1c2FnZV90ZXh0Jywgc3RyX3JlcGxhY2UoJ3skbW9kdWxlX25hbWV9JywgJHRoaXMtPkdldE5hbWUoKSwgJHRoaXMtPk1vZExhbmcoJ2hlbHBfdXNhZ2UnKSkpOwoJCSRzbWFydHktPmFzc2lnbigncGVybWlzc2lvbnNfdGV4dCcsIHN0cl9yZXBsYWNlKCd7JG1vZHVsZV9uYW1lfScsICR0aGlzLT5HZXROYW1lKCksICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3Blcm1pc3Npb25zJykpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlc190ZXh0Jywgc3RyX3JlcGxhY2UoJ3skbW9kdWxlX25hbWV9JywgJHRoaXMtPkdldE5hbWUoKSwgJHRoaXMtPk1vZExhbmcoJ2hlbHBfdGVtcGxhdGVzJykpKTsKCQkkc21hcnR5LT5hc3NpZ24oJ2R1cGxpY2F0aW5nX3RleHQnLCBzdHJfcmVwbGFjZSgneyRtb2R1bGVfbmFtZX0nLCAkdGhpcy0+R2V0TmFtZSgpLCAkdGhpcy0+TW9kTGFuZygnaGVscF9kdXBsaWNhdGluZycpKSk7CgoJCXJldHVybiAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdoZWxwLnRwbCcpOwoJfQkKCQoJcHVibGljIGZ1bmN0aW9uIEluaXRpYWxpemVGcm9udGVuZCgpCgl7CgkJJHRoaXMtPlJlZ2lzdGVyTW9kdWxlUGx1Z2luKCk7CgkJJHRoaXMtPlJlc3RyaWN0VW5rbm93blBhcmFtcygpOwoKCQkvLyBQYXJhbWV0ZXJzIHdlIGxldCB0byBnbyB3aXRoIHBhcmFtcywgcmVzdCB3aWxsIGJlIGRyb3BwZWQKCQkkdGhpcy0+YWxsb3dlZF9wYXJhbXMgPSBhcnJheSgKCQkJJ2l0ZW0nLAoJCQknb3JkZXJieScsCgkJCSdkZXRhaWx0ZW1wbGF0ZScsCgkJCSdzdW1tYXJ5dGVtcGxhdGUnLAoJCQknc2VhcmNodGVtcGxhdGUnLAoJCQknZGV0YWlscGFnZScsCgkJCSdwYWdlbGltaXQnLAoJCQknbnVtYmVyJywKCQkJJ3N0YXJ0JywKCQkJJ3BhZ2VudW1iZXInLAoJCQknZGVidWcnCgkJKTsKCQkKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnYWN0aW9uJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2hvd2FsbCcsIENMRUFOX0lOVCk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhdGVnb3J5JywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZXhjbHVkZV9jYXRlZ29yeScsIENMRUFOX1NUUklORyk7CQkJCgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3N1YmNhdGVnb3J5JywgQ0xFQU5fU1RSSU5HKTsJCQoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdvcmRlcmJ5JywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGV0YWlsdGVtcGxhdGUnLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzdW1tYXJ5dGVtcGxhdGUnLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzZWFyY2h0ZW1wbGF0ZScsIENMRUFOX1NUUklORyk7CgkJJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2RldGFpbHBhZ2UnLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpdGVtJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncGFnZWxpbWl0JyxDTEVBTl9JTlQpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzdGFydCcsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncGFnZW51bWJlcicsQ0xFQU5fSU5UKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc2VhcmNoJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9zZWFyY2hfLiovJyxDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmaWx0ZXInLCBDTEVBTl9TVFJJTkcpOwoJCSR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm5wYWdlJywgQ0xFQU5fU1RSSU5HKTsKCQkkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZGVidWcnLCBDTEVBTl9JTlQpOwoJCQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8ZGV0YWlsdGVtcGxhdGU+W2EtekEtWjAtOS1fXSspXC8oP1A8aXRlbT4uKz8pJC8nLCBhcnJheSgnYWN0aW9uJyA9PiAnZGV0YWlsJykpOwoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8aXRlbT4uKz8pJC8nLCBhcnJheSgnYWN0aW9uJyA9PiAnZGV0YWlsJykpOwoJCQoJCSR0aGlzLT5SZWdpc3RlclJvdXRlKCcvJy4kdGhpcy0+cHJlZml4LidcL3BhZ2VcLyg/UDxyZXR1cm5pZD5bMC05XSspXC8oP1A8cGFnZWxpbWl0PlswLTldKylcLyg/UDxwYWdlbnVtYmVyPlswLTldKz8pJC8nLCBhcnJheSgnYWN0aW9uJyA9PiAnZGVmYXVsdCcpKTsKCQkkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnLycuJHRoaXMtPnByZWZpeC4nXC9wYWdlXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPHBhZ2VudW1iZXI+WzAtOV0rPykkLycsIGFycmF5KCdhY3Rpb24nID0+ICdkZWZhdWx0JykpOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gSW5pdGlhbGl6ZUFkbWluKCkKCXsKCQkvLyBwYXJhbWV0ZXJzIHRoYXQgY2FuIGJlIGNhbGxlZCBpbiB0aGUgbW9kdWxlIHRhZwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2FjdGlvbicsICdkZWZhdWx0JywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fYWN0aW9uJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3Nob3dhbGwnLCAnMCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3Nob3dhbGwnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignY2F0ZWdvcnknLCAnZ2VuZXJhbCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2NhdGVnb3J5JykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2V4Y2x1ZGVfY2F0ZWdvcnknLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZXhjbHVkZV9jYXRlZ29yeScpKTsJCQkKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzdWJjYXRlZ29yeScsICdmYWxzZScsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3N1YmNhdGVnb3J5JykpOwkJCgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignb3JkZXJieScsICdpdGVtX3Bvc2l0aW9uJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fb3JkZXJieScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdkZXRhaWx0ZW1wbGF0ZScsICdkZWZhdWx0JywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZGV0YWlsdGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc3VtbWFyeXRlbXBsYXRlJywgJ2RlZmF1bHQnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VhcmNodGVtcGxhdGUnLCAnZGVmYXVsdCcsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3NlYXJjaHRlbXBsYXRlJykpOwoJCSR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ2RldGFpbHBhZ2UnLCAnJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fZGV0YWlscGFnZScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdpdGVtJywgJ2FsaWFzJywgJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1faXRlbScpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdwYWdlbGltaXQnLCAxMDAwMDAsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3BhZ2VsaW1pdCcpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzdGFydCcsIDAsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3N0YXJ0JykpOwoJCS8vJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignc2VhcmNoJywgJycsICR0aGlzLT5sYW5nKCdoZWxwX3BhcmFtX3NlYXJjaCcpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdzZXJhY2hfKicsJycsJHRoaXMtPk1vZExhbmcoJ2hlbHBfcGFyYW1fc2VhcmNoXycpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdmaWx0ZXInLCcnLCR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX2ZpbHRlcicpKTsKCQkkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdyZXR1cm5wYWdlJywgJycsICR0aGlzLT5Nb2RMYW5nKCdoZWxwX3BhcmFtX3JldHVybnBhZ2UnKSk7CgkJJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcignZGVidWcnLCAnZmFsc2UnLCAkdGhpcy0+TW9kTGFuZygnaGVscF9wYXJhbV9kZWJ1ZycpKTsKCX0JCgkKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkKICAgIHsKCQkvLyBTU0wgY2hlY2sgKEhvcGVmdWxseSBjb3JlIHdvdWxkIGRvIHRoaXMgc29vbi4uLikKCQkkdXNlX3NzbCA9IGZhbHNlOwoJCWlmKGlzc2V0KCRfU0VSVkVSWydIVFRQUyddKSAmJiAkX1NFUlZFUlsnSFRUUFMnXT09J29uJykKCQkJJHVzZV9zc2wgPSB0cnVlOwoJCiAgICAgICAgJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwogICAgICAgICRtb2R1bGVuYW1lID0gJHRoaXMtPkdldE5hbWUoKTsKCQkkbW9kdWxlZGlyID0gJHRoaXMtPkdldFBhcmVudFVSTFBhdGgoJHVzZV9zc2wpOwoJCSRnbG9iYWxzX2pzID0gKCR1c2Vfc3NsPyRjb25maWdbJ3NzbF91cmwnXTokY29uZmlnWydyb290X3VybCddKS4gJy9tb2R1bGVzLycuIExJU1RJVDIgLicvbGliL2pzLyc7CgkJJGdsb2JhbHNfY3NzID0gKCR1c2Vfc3NsPyRjb25maWdbJ3NzbF91cmwnXTokY29uZmlnWydyb290X3VybCddKS4gJy9tb2R1bGVzLycuIExJU1RJVDIgLicvbGliL2Nzcy8nOwogICAgICAgICRhZG1pbmRpciA9ICRjb25maWdbJ2FkbWluX3VybCddOwogICAgICAgICR1c2Vya2V5ID0gZ2V0X3NlY3VyZV9wYXJhbSgpOwogICAgICAgICRqcXVlcnl1aSA9ICcnOwogICAgICAgIGlmICh2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sICcxLjExLWFscGhhMCcpIDwgMCkgewogICAgICAgICAgICAkanF1ZXJ5dWkgPSAnPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iJy4gJG1vZHVsZWRpciAuJy9jc3MvanF1ZXJ5LXVpLTEuOC4yLmN1c3RvbS5jc3MiPjwvbGluaz4nOwogICAgICAgIH0KCiAgICAgICAgJHRtcGwgPSA8PDxFT1QKeyRqcXVlcnl1aX0KPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRtb2R1bGVkaXJ9L2Nzcy9jb2xvcmJveC5jc3MiIC8+CjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9InskZ2xvYmFsc19jc3N9bGlzdGl0Mi1nbG9iYWxzLmNzcyIgLz4KPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRtb2R1bGVkaXJ9L2Nzcy9iYWNrZW5kLmNzcyIgLz4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgo8IS0tCnZhciBDTVNfQURNSU5fRElSID0gJ3skYWRtaW5kaXJ9JzsKdmFyIENNU19VU0VSX0tFWSA9ICd7JHVzZXJrZXl9JzsKdmFyIE1PRFVMRV9OQU1FID0gJ3skbW9kdWxlbmFtZX0nOwotLT4KPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InskbW9kdWxlZGlyfS9qcy9qcXVlcnkucXVpY2tzZWFyY2guanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJ7JG1vZHVsZWRpcn0vanMvanF1ZXJ5LnRhYmxlc29ydGVyLm1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InskbW9kdWxlZGlyfS9qcy9qcXVlcnkuc2x1Zy5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InskbW9kdWxlZGlyfS9qcy9qcXVlcnkuY29sb3Jib3guanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJ7JGdsb2JhbHNfanN9bGlzdGl0Mi1nbG9iYWxzLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ieyRtb2R1bGVkaXJ9L2pzL2xpc3RpdDIuanMiPjwvc2NyaXB0PgpFT1Q7CgoJCSR0bXBsIC49IExpc3RJdDJGaWVsZGRlZk9wZXJhdGlvbnM6OkdldEhlYWRlckhUTUwoKTsKCQkKICAgICAgICByZXR1cm4gJHRtcGw7CiAgICB9CQoKCXB1YmxpYyBmdW5jdGlvbiBEb0FjdGlvbigkbmFtZSwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQ9JycpCgl7CgkJZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKCQkKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJCgkJJHRoaXMtPkxvYWRNb2R1bGVIaW50cygkcGFyYW1zKTsKCQkKCQkkc21hcnR5LT5hc3NpZ25fYnlfcmVmKCdtb2QnLCAkdGhpcyk7CgkJJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsICRpZCk7CgkJJHNtYXJ0eS0+YXNzaWduKCdyZXR1cm5pZCcsICRyZXR1cm5pZCk7CgkJCgkJaWYoJENNU19BRE1JTl9QQUdFKSB7CgkJCgkJCSR0aGVtZU9iamVjdCA9IGNtc191dGlsczo6Z2V0X3RoZW1lX29iamVjdCgpOwoJCQkkc21hcnR5LT5hc3NpZ25fYnlfcmVmKCd0aGVtZU9iamVjdCcsICR0aGVtZU9iamVjdCk7CQkKCQl9CQoJCgkJaWYgKCRuYW1lICE9ICcnKSB7CgkKCQkJJGdvdF9jb250ZW50cyA9IGZhbHNlOwoJCQkkY29udGVudHMgPSAnJzsJCQoJCQkkbmFtZSA9IHByZWdfcmVwbGFjZSgnL1teQS1aYS16MC05XC1fK10vJywgJycsICRuYW1lKTsKCgkJCWlmKCRDTVNfQURNSU5fUEFHRSkKCQkJCSRjb250ZW50cyAuPSAnPGRpdiBjbGFzcz0ibGlzdGl0Mi1hZG1pbi13cmFwcGVyIj4nOwoJCQkKCQkJLy8gQ2hlY2sgaWYgd2UgaGF2ZSBhY3Rpb24gaW4gdGhpcwoJCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0TW9kdWxlUGF0aCgpIC4gJy9hY3Rpb24uJyAuICRuYW1lIC4gJy5waHAnOwoJCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSAmJiAhJGdvdF9jb250ZW50cykgewoJCQkJCQkKCQkJCW9iX3N0YXJ0KCk7CQoJCQkJaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQkJJGNvbnRlbnRzIC49IG9iX2dldF9jb250ZW50cygpOwoJCQkJb2JfZW5kX2NsZWFuKCk7CgoJCQkJJGdvdF9jb250ZW50cyA9IHRydWU7CQkJCQoJCQl9CQkJCgkJCQoJCQkvLyBDaGVjayBwYXJlbnQgaWYgd2UgZG9uJ3QKCQkJJGZpbGVuYW1lID0gJHRoaXMtPkdldFBhcmVudFBhdGgoKSAuICcvYWN0aW9uLicgLiAkbmFtZSAuICcucGhwJzsKCQkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkgJiYgISRnb3RfY29udGVudHMpIHsKCQkJCQkJCgkJCQlvYl9zdGFydCgpOwkKCQkJCWluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJCSRjb250ZW50cyAuPSBvYl9nZXRfY29udGVudHMoKTsKCQkJCW9iX2VuZF9jbGVhbigpOwkKCQkJCQoJCQkJJGdvdF9jb250ZW50cyA9IHRydWU7CQkJCQoJCQl9CgkJCQoJCQlpZigkQ01TX0FETUlOX1BBR0UpCgkJCQkkY29udGVudHMgLj0gJzwvZGl2Pic7CgoJCQllY2hvICRjb250ZW50czsJCQkKCQl9Cgl9CgkKCWZ1bmN0aW9uIFVwZ3JhZGUoJG9sZHZlcnNpb24sICRuZXd2ZXJzaW9uKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkKCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkKCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0UGFyZW50UGF0aCgpIC4gJy9tZXRob2QudXBncmFkZUdsb2JhbHMucGhwJzsKCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSkgewoJCQkKCQkJJHJlcyA9IGluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJaWYoJHJlcyA9PSAxIHx8ICRyZXMgPT0gJycpICRyZXNwb25zZSA9IFRSVUU7CgkJfQoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkgLiAnL21ldGhvZC51cGdyYWRlLnBocCc7CgkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkpIHsKCQkJCgkJCSRyZXMgPSBpbmNsdWRlKCRmaWxlbmFtZSk7CgkJCWlmKCRyZXMgPT0gMSB8fCAkcmVzID09ICcnKSAkcmVzcG9uc2UgPSBUUlVFOwoJCX0KCQkKCQkvLyBDaGVjayBpZiBtb2R1bGUgaW4gb3VyIG93biBjb250cm9sIHRhYmxlcyB5ZXQKCQkkcXVlcnkgPSAiU0VMRUNUIG1vZHVsZV9pZCBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2xpc3RpdDJfaW5zdGFuY2VzIFdIRVJFIG1vZHVsZV9uYW1lID0gPyI7CQoJCSRtb2RzdGF0dXMgPSAkZGItPkdldE9uZSgkcXVlcnksIGFycmF5KCR0aGlzLT5HZXROYW1lKCkpKTsKCQkKCQlpZighJG1vZHN0YXR1cykgJHRoaXMtPlJlZ2lzdGVyTW9kdWxlKCk7CQkKCQoJCXJldHVybiAkcmVzcG9uc2U7Cgl9CQoKCWZ1bmN0aW9uIEluc3RhbGwoKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkKCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkKCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0UGFyZW50UGF0aCgpIC4gJy9tZXRob2QuaW5zdGFsbEdsb2JhbHMucGhwJzsKCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSkgewoJCQkKCQkJJHJlcyA9IGluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJaWYoJHJlcyA9PSAxIHx8ICRyZXMgPT0gJycpIHsKCQkJCSRyZXNwb25zZSA9IEZBTFNFOwoJCQl9IGVsc2UgewoJCQkJJHJlc3BvbnNlID0gJHJlczsKCQkJfQoJCX0KCQkKCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0TW9kdWxlUGF0aCgpIC4gJy9tZXRob2QuaW5zdGFsbC5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgewoJCQkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCX0gZWxzZSB7CgkJCQkkcmVzcG9uc2UgPSAkcmVzOwoJCQl9CgkJfQoJCQoJCWlmKCEkcmVzcG9uc2UpIHsKCQkKCQkJJHRoaXMtPlJlZ2lzdGVyTW9kdWxlKCk7CgkJfQoJCgkJcmV0dXJuICRyZXNwb25zZTsKCX0KCglmdW5jdGlvbiBVbmluc3RhbGwoKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkKCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkKCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0UGFyZW50UGF0aCgpIC4gJy9tZXRob2QudW5pbnN0YWxsR2xvYmFscy5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgewoJCQkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCX0gZWxzZSB7CgkJCQkkcmVzcG9uc2UgPSAkcmVzOwoJCQl9CgkJfQoJCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkgLiAnL21ldGhvZC51bmluc3RhbGwucGhwJzsKCQlpZiAoQGlzX2ZpbGUoJGZpbGVuYW1lKSkgewoJCQkKCQkJJHJlcyA9IGluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJaWYoJHJlcyA9PSAxIHx8ICRyZXMgPT0gJycpIHsKCQkJCSRyZXNwb25zZSA9IEZBTFNFOwoJCQl9IGVsc2UgewoJCQkJJHJlc3BvbnNlID0gJHJlczsKCQkJfQoJCX0KCQkKCQlpZighJHJlc3BvbnNlKSB7CgkJCgkJCSR0aGlzLT5VbnJlZ2lzdGVyTW9kdWxlKCk7CgkJfQkJCgkKCQlyZXR1cm4gJHJlc3BvbnNlOwoJfQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYW5pcHVsYXRpb24gbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJCgkKCXB1YmxpYyBmdW5jdGlvbiBNb2RMYW5nKCkKCXsKCQkkbW9kID0gY21zbXMoKS0+R2V0TW9kdWxlSW5zdGFuY2UoTElTVElUMik7CgkJaWYoIWlzX29iamVjdCgkbW9kKSkgCgkJCXRocm93IG5ldyBMaXN0SXQyRXhjZXB0aW9uKCdDYW5ub3QgcmV0cml2ZSBMaXN0SXQyIE9iamVjdC4nKTsKCQkKCQkkbW9kLT5Mb2FkTGFuZ01ldGhvZHMoKTsKCgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJYXJyYXlfdW5zaGlmdCgkYXJncywnJyk7CgoJCSRhcmdzWzBdID0gJiRtb2Q7CgoJCXJldHVybiBjYWxsX3VzZXJfZnVuY19hcnJheSgnY21zX21vZHVsZV9MYW5nJywgJGFyZ3MpOwoJfQoJCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhcmVudFBhdGgoKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQlyZXR1cm4gY21zX2pvaW5fcGF0aCgkY29uZmlnWydyb290X3BhdGgnXSwgJ21vZHVsZXMnLCBMSVNUSVQyLCAnZnJhbWV3b3JrJyk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBHZXRQYXJlbnRVUkxQYXRoKCR1c2Vfc3NsPWZhbHNlKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQlyZXR1cm4gKCR1c2Vfc3NsPyRjb25maWdbJ3NzbF91cmwnXTokY29uZmlnWydyb290X3VybCddKSAuICcvbW9kdWxlcy8nIC4gTElTVElUMiAuICcvZnJhbWV3b3JrJzsKCX0JCgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgSW5zdGFuY2UgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJCQoKCWZpbmFsIHByaXZhdGUgZnVuY3Rpb24gUmVnaXN0ZXJNb2R1bGUoKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkKCQkkcXVlcnkgID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfaW5zdGFuY2VzIChtb2R1bGVfbmFtZSkgVkFMVUVTICg/KSc7CgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCR0aGlzLT5HZXROYW1lKCkpKTsKCQkKCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CgkJCgkJcmV0dXJuIHRydWU7Cgl9CgkKCWZpbmFsIHByaXZhdGUgZnVuY3Rpb24gVW5yZWdpc3Rlck1vZHVsZSgpCgl7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCgkJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfaW5zdGFuY2VzIFdIRVJFIG1vZHVsZV9uYW1lID0gPyc7CgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCR0aGlzLT5HZXROYW1lKCkpKTsKCQkKCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CgkJCgkJcmV0dXJuIHRydWU7CQkKCX0JCgkJCn0gLy8gZW5kIG9mIGNsYXNzCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/duplicate/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/duplicate/images/icon.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhMAAwAPf/AHHE2gC87GXJ5FfA2xK98kbK83zN4gC/65Dg+d3s8IzS5ErG6W3K41PG5iO+7JfK2AC672S0yVyswrfa5Mvk67fh7FvK6XnK33jN4WLG4lmzzTXB6W290nHL4/D5/Bu97mnJ5Bq13KbR3jS+43a5yyK43/r9/WGtwuP0+WTD3Tury4HL3+r09jHB6qne7+z2+CG64S7B6P3+/lzI5TjC6VS61hSs0wC18FXI6krL7UPC5AOx2yLA6YW+zXbT65XX6Sy74WDI5VLO9HvY9EutyX7S5qrl90upxXnN4Ti11nrM4gC27ieszOTx9U210RinyXbI3gi58HbM4lW30ybA8BvA6Q603bLh8QCiymu5zg26712/29Lx+nTM4nrP5T3D6KDh83XL4TTA5kCmxAC56k7F52nP6gG04nzE2B7A8pXZ602+3Nz1/IPC1IfS5GLM6JvS4orV6gS58XHD2WyyxQKhxnLN5ha87xPA6QCs3JzZ6GrJ42nS80XE6Pb8/oTR4z3A5VjH5un4/Lrm8J/M2VKqw2rH4m3N5+z4+9bp7+/5/Lbj8cPf543d9SnB6SvA7UPE6nXF23LL4lu61QCq0njM4gS770HD6ErF527D2VS+3BG77xOy2gmu1UmnwkmwznnL4HbH3XHB1wm/6VnC4B2x1/X6+/H4+gq68DbG6l3E4oPQ4kjD5VW72C3C7+b3/fD3+QC65Mzq8sbu+ii/7A7A6Yzf+WzL5Ae97dTv9hi/8ga/6XXO5WnM51HA3kauyw+lygCfx6zf8InP43fM4gujxhS77zbE7UTH7YjD1M7w+pHU5pne7/P7/V3H5T/I8KzX423A1jugvAy950Opx2KwxqTc7DPD7WbI5HDP6k/I6gi+7A2/6g687rTW3wanzev4+zvE7Nnw9YjI24DQ40a52XC/1KLf8LLk8rLm9LTn9ASw2A+v2UDE7GfM58Dp9Lvq9oLa9KDV5ILc+GW4zkrB4m/H4GrB2IXY7mvF3W/E2XvN4QC48QC58v///////yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MThCRUI5MEY5MkZFRTExMTg1RjQ5OTBCMjZFMjNFOTMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDhCMUYxNkZGRTk1MTFFMUI4RUJDNUQyQjU1MERDMDUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDhCMUYxNkVGRTk1MTFFMUI4RUJDNUQyQjU1MERDMDUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgSWxsdXN0cmF0b3IgQ1M1Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZThlNjYyZDUtYzYxMC00ZmQzLWFhNDUtNDg4NGVhODNkOWE0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjE4QkVCOTBGOTJGRUUxMTE4NUY0OTkwQjI2RTIzRTkzIi8+IDxkYzp0aXRsZT4gPHJkZjpBbHQ+IDxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+TGlzdEl0RXh0ZW5kZWQtbG9nby1pY29uLW9rPC9yZGY6bGk+IDwvcmRmOkFsdD4gPC9kYzp0aXRsZT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj3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]]></data>
	</file>
	<file>
	  <filename>/duplicate/images/icon.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/duplicate/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleInstalled.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2F1dG9zY2FuJykpCglMaXN0SXQyRmllbGRkZWZPcGVyYXRpb25zOjpTY2FuTW9kdWxlcygpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleUninstalled.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2F1dG9zY2FuJykpCglMaXN0SXQyRmllbGRkZWZPcGVyYXRpb25zOjpTY2FuTW9kdWxlcygpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleUpgraded.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2F1dG9zY2FuJykpCglMaXN0SXQyRmllbGRkZWZPcGVyYXRpb25zOjpTY2FuTW9kdWxlcygpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/framework/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/framework/action.admin_approvecategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIHJldHVybjsKCmlmKCFpc3NldCgkcGFyYW1zWydhcHByb3ZlJ10pIHx8ICFpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkKewoJZGllKCdtaXNzaW5nIHBhcmFtZXRlciwgdGhpcyBzaG91bGQgbm90IGhhcHBlbicpOwp9CgokY2F0ZWdvcnlfaWQgPSAoaW50KSRwYXJhbXNbJ2NhdGVnb3J5X2lkJ107CiRhY3RpdmUgPSAoYm9vbCkkcGFyYW1zWydhcHByb3ZlJ107CgokcXVlcnkgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IFNFVCBhY3RpdmUgPSA/IFdIRVJFIGNhdGVnb3J5X2lkID0gPyc7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRhY3RpdmUsICRjYXRlZ29yeV9pZCkpOwoKJGFkbWludGhlbWUgPSBjbXNtcygpLT5nZXRfdmFyaWFibGUoJ2FkbWludGhlbWUnKTsKJGpzb24gPSBuZXcgc3RkQ2xhc3M7CgppZiAoJGFjdGl2ZSkgewoKCSRqc29uLT5pbWFnZSA9ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZXZlcnQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9hcHByb3ZlY2F0ZWdvcnknLCAkcmV0dXJuaWQsICcnLCBhcnJheSgnYXBwcm92ZScgPT4gMCwnY2F0ZWdvcnlfaWQnID0+ICRjYXRlZ29yeV9pZCksICcnLCB0cnVlKTsKfSBlbHNlIHsKCgkkanNvbi0+aW1hZ2UgPSAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FwcHJvdmUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9hcHByb3ZlY2F0ZWdvcnknLCAkcmV0dXJuaWQsICcnLGFycmF5KCdhcHByb3ZlJyA9PiAxLCdjYXRlZ29yeV9pZCcgPT4gJGNhdGVnb3J5X2lkKSwgJycsIHRydWUpOwp9CgovLyBGaXggVVJMIGZvciBKU09OIG91dHB1dAokanNvbi0+aHJlZiA9IGh0bWxfZW50aXR5X2RlY29kZSgkanNvbi0+aHJlZik7CgpoZWFkZXIoIkNvbnRlbnQtdHlwZTphcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Iik7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKZWNobyBqc29uX2VuY29kZSgkanNvbik7CmV4aXQoKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_approveitem.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKSkgcmV0dXJuOwoKaWYoIWlzc2V0KCRwYXJhbXNbJ2FwcHJvdmUnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2l0ZW1faWQnXSkpCnsKCWRpZSgnbWlzc2luZyBwYXJhbWV0ZXIsIHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4nKTsKfQoKJGl0ZW1faWQgPSAoaW50KSRwYXJhbXNbJ2l0ZW1faWQnXTsKJGFjdGl2ZSA9IChib29sKSRwYXJhbXNbJ2FwcHJvdmUnXTsKCiRxdWVyeSA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbSBTRVQgYWN0aXZlID0gPyBXSEVSRSBpdGVtX2lkID0gPyc7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRhY3RpdmUsICRpdGVtX2lkKSk7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKJGFkbWludGhlbWUgPSBjbXNtcygpLT5nZXRfdmFyaWFibGUoJ2FkbWludGhlbWUnKTsKJGpzb24gPSBuZXcgc3RkQ2xhc3M7CgppZiAoJGFjdGl2ZSkgewoKCSRqc29uLT5pbWFnZSA9ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZXZlcnQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9hcHByb3ZlaXRlbScsICRyZXR1cm5pZCwgJycsIGFycmF5KCdhcHByb3ZlJyA9PiAwLCdpdGVtX2lkJyA9PiAkaXRlbV9pZCksICcnLCB0cnVlKTsKfSBlbHNlIHsKCgkkanNvbi0+aW1hZ2UgPSAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FwcHJvdmUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9hcHByb3ZlaXRlbScsICRyZXR1cm5pZCwgJycsYXJyYXkoJ2FwcHJvdmUnID0+IDEsJ2l0ZW1faWQnID0+ICRpdGVtX2lkKSwgJycsIHRydWUpOwp9CgovLyBGaXggVVJMIGZvciBKU09OIG91dHB1dAokanNvbi0+aHJlZiA9IGh0bWxfZW50aXR5X2RlY29kZSgkanNvbi0+aHJlZik7CgpoZWFkZXIoIkNvbnRlbnQtdHlwZTphcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Iik7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKZWNobyBqc29uX2VuY29kZSgkanNvbik7CmV4aXQoKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_deletecategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIHJldHVybjsKCiRjYXRlZ29yaWVzID0gYXJyYXkoKTsKaWYoaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSkpIHsKCSRjYXRlZ29yaWVzID0gYXJyYXkoKGludCkkcGFyYW1zWydjYXRlZ29yeV9pZCddKTsKfQppZihpc3NldCgkcGFyYW1zWydjYXRlZ29yaWVzJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2NhdGVnb3JpZXMnXSkpIHsKCSRjYXRlZ29yaWVzID0gJHBhcmFtc1snY2F0ZWdvcmllcyddOwp9Cgpmb3JlYWNoKCRjYXRlZ29yaWVzIGFzICRjYXRlZ29yeV9pZCkgewkKCgkkdGhpcy0+RGVsZXRlQ2F0ZWdvcnlCeUlkKCRjYXRlZ29yeV9pZCk7Cn0KCiRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCmZvciAoJGNudCA9IDA7ICRjbnQgPCBzaXplb2YoJGhhbmRsZXJzKTsgJGNudCsrKSB7IG9iX2VuZF9jbGVhbigpOyB9CgplY2hvICR0aGlzLT5Nb2RMYW5nKCdkZWxldGVkJyk7CmV4aXQoKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_deletefielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9uJykpIHJldHVybjsKCiRmaWVsZGRlZnMgPSBhcnJheSgpOwppZihpc3NldCgkcGFyYW1zWydmaWVsZGRlZl9pZCddKSkgewoJJGZpZWxkZGVmcyA9IGFycmF5KChpbnQpJHBhcmFtc1snZmllbGRkZWZfaWQnXSk7Cn0KaWYoaXNzZXQoJHBhcmFtc1snZmllbGRkZWZzJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2ZpZWxkZGVmcyddKSkgewoJJGZpZWxkZGVmcyA9ICRwYXJhbXNbJ2ZpZWxkZGVmcyddOwp9Cgpmb3JlYWNoICgkZmllbGRkZWZzIGFzICRmaWVsZGRlZl9pZCkgewoKICAgIC8vIGdldCBkZXRhaWxzCiAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZiBXSEVSRSBmaWVsZGRlZl9pZCA9ID8nOwogICAgJHJvdyA9ICRkYi0+R2V0Um93KCRxdWVyeSwgYXJyYXkoJGZpZWxkZGVmX2lkKSk7CiAgICAKICAgIC8vIGRlbGV0ZSBmaWVsZCBkZWZpbml0aW9ucwogICAgJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmIFdIRVJFIGZpZWxkZGVmX2lkID0gPyc7CiAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmllbGRkZWZfaWQpKTsKCQogICAgLy8gZGVsZXRlIGZpZWxkIGRlZmluaXRpb25zIG9wdGlvbnMKICAgICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZl9vcHRzIFdIRVJFIGZpZWxkZGVmX2lkID0gPyc7CiAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmllbGRkZWZfaWQpKTsJCiAgICAKICAgIC8vIGRlbGV0ZSBmaWVsZCB2YWx1ZXMKICAgICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCBXSEVSRSBmaWVsZGRlZl9pZCA9ID8nOwogICAgJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGZpZWxkZGVmX2lkKSk7CiAgICAKICAgIC8vIGNsZWFuIHVwIHNvcnQgb3JkZXIKICAgICRxdWVyeSA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYgU0VUIHBvc2l0aW9uID0gKHBvc2l0aW9uIC0gMSkgV0hFUkUgcG9zaXRpb24gPiA/JzsKICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRyb3dbJ3Bvc2l0aW9uJ10pKTsKfQoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmVjaG8gJHRoaXMtPk1vZExhbmcoJ2RlbGV0ZWQnKTsKZXhpdCgpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_deleteitem.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKSkgcmV0dXJuOwoKJGl0ZW1zID0gYXJyYXkoKTsKaWYoaXNzZXQoJHBhcmFtc1snaXRlbV9pZCddKSkgewoJJGl0ZW1zW10gPSAoaW50KSRwYXJhbXNbJ2l0ZW1faWQnXTsKfQppZihpc3NldCgkcGFyYW1zWydpdGVtcyddKSAmJiBpc19hcnJheSgkcGFyYW1zWydpdGVtcyddKSkgewoJJGl0ZW1zID0gJHBhcmFtc1snaXRlbXMnXTsKfQoKZm9yZWFjaCgkaXRlbXMgYXMgJGl0ZW1faWQpIHsJCgoJJHRoaXMtPkRlbGV0ZUl0ZW1CeUlkKCRpdGVtX2lkKTsKfQoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmVjaG8gJHRoaXMtPk1vZExhbmcoJ2RlbGV0ZWQnKTsKZXhpdCgpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_deletetemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9vcHRpb24nKSkgcmV0dXJuOwoKaWYgKCFpc3NldCgkcGFyYW1zWyduYW1lJ10pKSB7CiAgICBkaWUoJ21pc3NpbmcgcGFyYW1ldGVyLCB0aGlzIHNob3VsZCBub3QgaGFwcGVuJyk7Cn0KCiR0aGlzLT5EZWxldGVUZW1wbGF0ZSgkcGFyYW1zWyduYW1lJ10pOwoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmVjaG8gJHRoaXMtPk1vZExhbmcoJ2RlbGV0ZWQnKTsKZXhpdCgpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_editcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIHJldHVybjsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDaGVjayBwYXJhbXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkgewoKICAgICRwYXJhbXMgPSBhcnJheSgnYWN0aXZlX3RhYicgPT4gJ2NhdGVnb3J5dGFiJyk7CiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEluaXQgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRjYXRlZ29yeV9pZCAgICAgIAkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2NhdGVnb3J5X2lkJywgJHBhcmFtcywgLTEpOwokbmFtZSAgICAgICAJCQkgCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ25hbWUnLCAkcGFyYW1zLCAnJyk7CiRhbGlhcwkJIAkJCSAJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignYWxpYXMnLCAkcGFyYW1zLCAnJyk7CiRkZXNjcmlwdGlvbgkJCQk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCdkZXNjcmlwdGlvbicsICRwYXJhbXMsICcnKTsKJHBhcmVudF9pZCAJCQkJIAk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCdwYXJlbnRfaWQnLCAkcGFyYW1zLCAtMSk7CiRhY3RpdmUgICAgICAJCQkgCT0gMTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IEl0ZW0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJG9iaiA9ICR0aGlzLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2NhdGVnb3J5X2lkJywgJGNhdGVnb3J5X2lkKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTdWJtaXQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSB8fCBpc3NldCgkcGFyYW1zWydhcHBseSddKSB8fCBpc3NldCgkcGFyYW1zWydzYXZlX2NyZWF0ZSddKSkgewoKCSRlcnJvcnMgPSBhcnJheSgpOwoKICAgIC8vIGNoZWNrIGNhdGVnb3J5IG5hbWUKICAgIGlmICgkbmFtZSA9PSAnJykgewogICAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdjYXRlZ29yeV9uYW1lX2VtcHR5Jyk7CiAgICB9CgogICAgLy8gY2hlY2sgYWxpYXMKLyogICAgaWYgKCFsaXN0aXQyX3V0aWxzOjppc192YWxpZF9hbGlhcygkYWxpYXMpICYmICFlbXB0eSgkYWxpYXMpKSB7CiAgICAgICAgJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2FsaWFzX2ludmFsaWQnKTsKICAgIH0qLwoJCgkvLyBDaGVjayBmb3IgZHVwbGljYXRlCgkkcGFybXMgPSBhcnJheSgpOwoJJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfYWxpYXMgPSA/JzsKCSRwYXJtc1tdID0gJGFsaWFzOwoKCWlmKCRjYXRlZ29yeV9pZCA+IDApewoJCSRxdWVyeSAuPSAnIEFORCBjYXRlZ29yeV9pZCAhPSA/JzsKCQkkcGFybXNbXSA9ICRjYXRlZ29yeV9pZDsKCX0KCQoJJGV4aXN0cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgJHBhcm1zKTsKCiAgICBpZiAoJGV4aXN0cykgewogICAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdjYXRlZ29yeV9hbGlhc19leGlzdHMnKTsKICAgIH0JCgoJLy8gdGl0bGUgYW5kIHJlcXVpcmVkIGZpZWxkcyBoYXZlIHZhbHVlcywgbGV0J3MgY29udGludWUKCWlmIChlbXB0eSgkZXJyb3JzKSkgewoJCgkJJG9iai0+bmFtZSAgICAgICAgCT0gJG5hbWU7CgkJJG9iai0+YWxpYXMJCSAJPSAkYWxpYXM7CgkJJG9iai0+ZGVzY3JpcHRpb24JPSAkZGVzY3JpcHRpb247CgkJJG9iai0+cGFyZW50X2lkIAk9ICRwYXJlbnRfaWQ7CQkKCQkkb2JqLT5hY3RpdmUgICAgICAgCT0gaXNzZXQoJHBhcmFtc1snYWN0aXZlJ10pID8gMSA6IDA7CgkJCgkJJHRoaXMtPlNhdmVDYXRlZ29yeSgkb2JqKTsKCQkKCQkvLyBpZiBhcHBseSBhbmQgYWpheCAgICAgICAgICAgCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2FqYXgnXSkpIHsKCQkJJHJlc3BvbnNlID0gJzxFZGl0SXRlbT4nOwoJCQkkcmVzcG9uc2UgLj0gJzxSZXNwb25zZT5TdWNjZXNzPC9SZXNwb25zZT4nOwoJCQkkcmVzcG9uc2UgLj0gJzxEZXRhaWxzPjwhW0NEQVRBWycgLiAkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkJykgLiAnXV0+PC9EZXRhaWxzPic7ICAgICAgICAgICAgICAgCgkJCSRyZXNwb25zZSAuPSAnPC9FZGl0SXRlbT4nOwoJCQllY2hvICRyZXNwb25zZTsKCQkJcmV0dXJuOwoJCX0gCgkJCgkJLy8gaWYgc2F2ZSBhbmQgY3JlYXRlIG5ldwoJCWlmIChpc3NldCgkcGFyYW1zWydzYXZlX2NyZWF0ZSddKSApIHsKCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2FkbWluX2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwgYXJyYXkoCgkJCQknbWVzc2FnZScgPT4gJ3NhdmVjcmVhdGVfbWVzc2FnZScKCQkJKSk7CgkJfSAgCQkgICAgCgoJCS8vIHNob3cgc2F2ZWQgbWVzc2FnZQoJCWlmIChpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkpIHsKCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoCgkJCQknYWN0aXZlX3RhYicgPT4gJ2NhdGVnb3J5dGFiJywKCQkJCSdtZXNzYWdlJyA9PiAnY2hhbmdlc3NhdmVkJwoJCQkpKTsKCQkJCgkJfSBlbHNlIHsKCQkJZWNobyAkdGhpcy0+U2hvd01lc3NhZ2UoJHRoaXMtPk1vZExhbmcoJ2NoYW5nZXNzYXZlZCcpKTsKCQl9CgkJCgl9IC8vIGVuZCBlcnJvciBjaGVjawoJCn0gLy8gZW5kIHN1Ym1pdCBvciBhcHBseQplbHNlaWYoJG9iai0+Y2F0ZWdvcnlfaWQgPiAwKSB7CgoJJGNhdGVnb3J5X2lkIAk9ICRvYmotPmNhdGVnb3J5X2lkOwkKCSRuYW1lIAkJCT0gJG9iai0+bmFtZTsKCSRhbGlhcwkJICAJPSAkb2JqLT5hbGlhczsKCSRkZXNjcmlwdGlvbgk9ICRvYmotPmRlc2NyaXB0aW9uOwoJJHBhcmVudF9pZCAJCT0gJG9iai0+cGFyZW50X2lkOwoJJGFjdGl2ZSAgICAgICAJPSAkb2JqLT5hY3RpdmU7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNZXNzYWdlIGNvbnRyb2wKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLy8gZGlzcGxheSBlcnJvcnMgaWYgdGhlcmUgYXJlIGFueQppZiAoIWVtcHR5KCRlcnJvcnMpKSB7CiAgICBpZiAoaXNzZXQoJHBhcmFtc1snYXBwbHknXSkgJiYgaXNzZXQoJHBhcmFtc1snYWpheCddKSkgewogICAgICAgICRyZXNwb25zZSA9ICc8RWRpdEl0ZW0+JzsKICAgICAgICAkcmVzcG9uc2UgLj0gJzxSZXNwb25zZT5FcnJvcjwvUmVzcG9uc2U+JzsKICAgICAgICAkcmVzcG9uc2UgLj0gJzxEZXRhaWxzPjwhW0NEQVRBWyc7CiAgICAgICAgZm9yZWFjaCAoJGVycm9ycyBhcyAkZXJyb3IpIHsKICAgICAgICAgICAgJHJlc3BvbnNlIC49ICc8bGk+JyAuICRlcnJvciAuICc8L2xpPic7CiAgICAgICAgfQogICAgICAgICRyZXNwb25zZSAuPSAnXV0+PC9EZXRhaWxzPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8L0VkaXRJdGVtPic7CiAgICAgICAgZWNobyAkcmVzcG9uc2U7CiAgICAgICAgcmV0dXJuOwogICAgfSBlbHNlIHsKICAgICAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcnMpOwogICAgfQp9CgppZihpc3NldCgkcGFyYW1zWydtZXNzYWdlJ10pICYmIGVtcHR5KCRlcnJvcnMpKSAKICAgIGVjaG8gJHRoaXMtPlNob3dNZXNzYWdlKCR0aGlzLT5Nb2RMYW5nKCdjaGFuZ2Vzc2F2ZWRfY3JlYXRlJykpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRzbWFydHktPmFzc2lnbignY2F0ZWdvcnlPYmplY3QnLCAkb2JqKTsKCiRzbWFydHktPmFzc2lnbignYmFja2xpbmsnLCAkdGhpcy0+Q3JlYXRlQmFja0xpbmsoJ2NhdGVnb3J5dGFiJykpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgICAgIChpc3NldCgkY2F0ZWdvcnlfaWQpID8gJHRoaXMtPk1vZExhbmcoJ2VkaXRfY2F0ZWdvcnknKSA6ICR0aGlzLT5Nb2RMYW5nKCdhZGQnLCAkdGhpcy0+TW9kTGFuZygnY2F0ZWdvcnknKSkpKTsKCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdhZG1pbl9lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnLCBmYWxzZSwgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhdGVnb3J5JywgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAyMCkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsaWFzJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdhbGlhcycsICRhbGlhcywgMjAsIDI1NSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhdGVnb3J5X2Rlc2NyaXB0aW9uJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKHRydWUsICRpZCwgJGRlc2NyaXB0aW9uLCAnZGVzY3JpcHRpb24nLCAnJywgJycsICcnLCAnJywgJzgwJywgJzMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWN0aXZlJywgJHRoaXMtPkNyZWF0ZUlucHV0Y2hlY2tib3goJGlkLCAnYWN0aXZlJywgMSwgJGFjdGl2ZSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9wYXJlbnQnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdwYXJlbnRfaWQnLCAkdGhpcy0+R2V0Q2F0ZWdvcmllc0Ryb3Bkb3duKHRydWUsJGNhdGVnb3J5X2lkKSwgLTEsICRwYXJlbnRfaWQpKTsKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignYXBwbHknLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnYXBwbHknLCBsYW5nKCdhcHBseScpKSk7CiRzbWFydHktPmFzc2lnbignc2F2ZV9jcmVhdGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc2F2ZV9jcmVhdGUnLCAkdGhpcy0+TW9kTGFuZygnc2F2ZV9jcmVhdGUnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOwoKZWNobyAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdlZGl0Y2F0ZWdvcnkudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_editfielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X29wdGlvbicpKSByZXR1cm47CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmIChpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkpIHsKCiAgICAkcGFyYW1zID0gYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnRhYicpOwogICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cn0KCi8vIExvYWQgZmllbGRkZWYgZnJvbSBkYXRhYmFzZQppZihpc3NldCgkcGFyYW1zWydmaWVsZGRlZl9pZCddKSkgewoKCSRmaWVsZGRlZl9vYmogPSAkdGhpcy0+R2V0RmllbGREZWZCeUlkKCRwYXJhbXNbJ2ZpZWxkZGVmX2lkJ10pOwp9IAovLyBMb2FkIGZpZWxkZGVmIGZyb20gdHlwZQplbHNlaWYoIWVtcHR5KCRwYXJhbXNbJ3R5cGUnXSkpIHsKCgkkZmllbGRkZWZfb2JqID0gTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6TG9hZEZpZWxkZGVmQnlUeXBlKCRwYXJhbXNbJ3R5cGUnXSk7Cn0KCiR0eXBlIAkJCQk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCd0eXBlJywgJHBhcmFtcywgKGlzc2V0KCRmaWVsZGRlZl9vYmopID8gJGZpZWxkZGVmX29iai0+R2V0VHlwZSgpIDogJycpKTsKJGZpZWxkZGVmX2lkIAkJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignZmllbGRkZWZfaWQnLCAkcGFyYW1zLCAoaXNzZXQoJGZpZWxkZGVmX29iaikgPyAkZmllbGRkZWZfb2JqLT5HZXRJZCgpIDogLTEpKTsKJG5hbWUgCQkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ25hbWUnLCAkcGFyYW1zLCAoaXNzZXQoJGZpZWxkZGVmX29iaikgPyAkZmllbGRkZWZfb2JqLT5HZXROYW1lKCkgOiAnJykpOwokYWxpYXMgCQkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2FsaWFzJywgJHBhcmFtcywgKGlzc2V0KCRmaWVsZGRlZl9vYmopID8gJGZpZWxkZGVmX29iai0+R2V0QWxpYXMoKSA6ICcnKSk7CiRoZWxwIAkJCQk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCdoZWxwJywgJHBhcmFtcywgKGlzc2V0KCRmaWVsZGRlZl9vYmopID8gJGZpZWxkZGVmX29iai0+R2V0RGVzYygpIDogJycpKTsKJHJlcXVpcmVkIAkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ3JlcXVpcmVkJywgJHBhcmFtcywgKGlzc2V0KCRmaWVsZGRlZl9vYmopID8gJGZpZWxkZGVmX29iai0+R2V0UmVxdWlyZWQoKSA6IGZhbHNlKSk7CiRjdXN0b21faW5wdXQJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2N1c3RvbV9pbnB1dCcsICRwYXJhbXMsIGFycmF5KCkpOwokZXh0cmEJCQkJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignZXh0cmEnLCAkcGFyYW1zLCAnJyk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU3VibWl0CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmIChpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgfHwgaXNzZXQoJHBhcmFtc1snYXBwbHknXSkpIHsKCgkkZXJyb3JzCQkJPSBhcnJheSgpOwoKICAgIC8vIGNoZWNrIHR5cGUKICAgIGlmICghaXNzZXQoJGZpZWxkZGVmX29iaikpIHsKICAgICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnZmllbGRkZWZfdHlwZV9ub3RzZXQnKTsKICAgIH0JCgkKICAgIC8vIGNoZWNrIG5hbWUKICAgIGlmICgkbmFtZSA9PSAnJykgewogICAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl9uYW1lX2VtcHR5Jyk7CiAgICB9CgogICAgLy8gZ2VuZXJhdGUgYWxpYXMgaWYgbm90IHN1cHBsaWVkCiAgICBpZiAoJGFsaWFzID09ICcnKSB7CiAgICAgICAgJGFsaWFzID0gbGlzdGl0Ml91dGlsczo6Z2VuZXJhdGVfYWxpYXMoJG5hbWUpOwogICAgfQoKICAgIGlmIChpc3NldCgkZmllbGRkZWZfaWQpKSB7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBmaWVsZGRlZl9pZCBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmIFdIRVJFIGFsaWFzID0gPyBBTkQgZmllbGRkZWZfaWQgIT0gPyc7CiAgICAgICAgJGV4aXN0cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJGFsaWFzLCAkZmllbGRkZWZfaWQpKTsKICAgIH0gZWxzZSB7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBmaWVsZGRlZl9pZCBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmIFdIRVJFIGFsaWFzID0gPyc7CiAgICAgICAgJGV4aXN0cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJGFsaWFzKSk7CiAgICB9CQoKICAgIC8vIGNoZWNrIGFsaWFzCiAgICBpZiAoIWxpc3RpdDJfdXRpbHM6OmlzX3ZhbGlkX2FsaWFzKCRhbGlhcykpIHsKICAgICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnYWxpYXNfaW52YWxpZCcpOwogICAgfQoKICAgIGlmICgkZXhpc3RzKSB7CiAgICAgICAgJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmX2FsaWFzX2V4aXN0cycpOwogICAgfQkKCiAgICBpZiAoZW1wdHkoJGVycm9ycykpIHsKCQogICAgICAgIC8vIHVwZGF0ZQogICAgICAgIGlmICgkZmllbGRkZWZfaWQgPiAwKSB7CiAgICAgICAgICAgICRxdWVyeSA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYgU0VUIG5hbWUgPSA/LCBhbGlhcyA9ID8sIGhlbHAgPSA/LCB0eXBlID0gPywgcmVxdWlyZWQgPSA/LCBleHRyYSA9ID8gV0hFUkUgZmllbGRkZWZfaWQgPSA/JzsKICAgICAgICAgICAgJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRuYW1lLCAkYWxpYXMsICRoZWxwLCAkdHlwZSwgJHJlcXVpcmVkLCAkZXh0cmEsICRmaWVsZGRlZl9pZCkpOwoJCQkKICAgICAgICAgICAgaWYgKCEkcmVzdWx0KSBkaWUoJ0ZBVEFMIFNRTCBFUlJPUjogJyAuICRkYi0+RXJyb3JNc2coKSAuICc8YnIvPlFVRVJZOiAnIC4gJGRiLT5zcWwpOwoKICAgICAgICAvLyBpbnNlcnQKICAgICAgICB9IGVsc2UgewoJCQoJCQkkcXVlcnkgPSAnU0VMRUNUIG1heChwb3NpdGlvbikgKyAxIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYnOwogICAgICAgICAgICAkcG9zaXRpb24gPSAkZGItPkdldE9uZSgkcXVlcnkpOwogICAgICAgICAgICBpZiAoJHBvc2l0aW9uID09IG51bGwpIHsKICAgICAgICAgICAgICAgICRwb3NpdGlvbiA9IDE7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZiAobmFtZSwgYWxpYXMsIGhlbHAsIHR5cGUsIHBvc2l0aW9uLCByZXF1aXJlZCkgVkFMVUVTICg/LCA/LCA/LCA/LCA/LCA/KSc7CiAgICAgICAgICAgICRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkbmFtZSwgJGFsaWFzLCAkaGVscCwgJHR5cGUsICRwb3NpdGlvbiwgJHJlcXVpcmVkKSk7CgkJCQogICAgICAgICAgICBpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CgogICAgICAgICAgICAvLyBwb3B1bGF0ZSAkZmllbGRkZWZfaWQgZm9yIG5ld2x5IGluc2VydGVkIGl0ZW0KICAgICAgICAgICAgJGZpZWxkZGVmX2lkID0gJGRiLT5JbnNlcnRfSUQoKTsKCQkJJGZpZWxkZGVmX29iai0+U2V0SWQoJGZpZWxkZGVmX2lkKTsJCiAgICAgICAgfQoJCQoJCS8vSGFuZGxlIGN1c3RvbSBvcHRpb25zCgkJaWYoY291bnQoJGN1c3RvbV9pbnB1dCkgPiAwKSB7CgoJCQlmb3JlYWNoKCRjdXN0b21faW5wdXQgYXMgJGtleT0+JHZhbHVlKSB7CgkJCQoJCQkJJGZpZWxkZGVmX29iai0+U2V0T3B0aW9uVmFsdWUoJGtleSwgJHZhbHVlKTsKCQkJfQoJCX0KCQkKCQkkZmllbGRkZWZfb2JqLT5TYXZlT3B0aW9uVmFsdWVzKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSk7CgogICAgICAgIGlmICghaXNzZXQoJHBhcmFtc1snYXBwbHknXSkpIHsKICAgICAgICAgICAgJHBhcmFtcyA9IGFycmF5KCdtZXNzYWdlJyA9PiAnY2hhbmdlc3NhdmVkJywgJ2FjdGl2ZV90YWInID0+ICdmaWVsZGRlZnRhYicpOwogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBlY2hvICR0aGlzLT5TaG93TWVzc2FnZSgkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkJykpOwogICAgICAgIH0KICAgIH0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIExvYWQgaW5zdHJ1Y3Rpb25zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRxdWVyeSA9ICdTRUxFQ1QgZXh0cmEgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZiBXSEVSRSBmaWVsZGRlZl9pZCA9ID8nOwokZXh0cmEgPSAkZGItPkdldE9uZSgkcXVlcnksIGFycmF5KCRmaWVsZGRlZl9pZCkpOwoKaWYoJGV4dHJhICYmICFlbXB0eSgkZXh0cmEpKSB7CgkKCSRzbWFydHktPmFzc2lnbignaW5wdXRfZXh0cmEnLCAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsICRpZCwgJGV4dHJhLCAnZXh0cmEnKSk7Cn0JCgkKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCnVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKdW5zZXQoJHBhcmFtc1snYXBwbHknXSk7CgovLyBkaXNwbGF5IGVycm9ycyBpZiB0aGVyZSBhcmUgYW55CmlmICghZW1wdHkoJGVycm9ycykpIHsKICAgIAoJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3JzKTsKfQoKaWYoaXNzZXQoJGZpZWxkZGVmX29iaikpIAoJJHNtYXJ0eS0+YXNzaWduKCdmaWVsZGRlZicsICRmaWVsZGRlZl9vYmopOwoKaWYoJGZpZWxkZGVmX2lkIDw9IDApIHsKCgkkZmllbGRkZWZzID0gYXJyYXlfbWVyZ2UoYXJyYXkoJHRoaXMtPk1vZExhbmcoJ3NlbGVjdF9vbmUnKT0+JycpLCBMaXN0SXQyRmllbGRkZWZPcGVyYXRpb25zOjpHZXRGaWVsZGRlZlR5cGVzKCkpOwoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHR5cGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICd0eXBlJywgJGZpZWxkZGVmcywgLTEsICR0eXBlLCAnaWQ9Im0xX3R5cGUiJykpOyAvLyA8LSBBc3NpZ24gZHJvcGRvd24KfQplbHNlaWYoaXNzZXQoJGZpZWxkZGVmX29iaikpIHsKCgkkc21hcnR5LT5hc3NpZ24oJ2ZpZWxkZGVmJywgJGZpZWxkZGVmX29iaik7Cgkkc21hcnR5LT5hc3NpZ24oJ2lucHV0dHlwZScsICRmaWVsZGRlZl9vYmotPkdldEZyaWVuZGx5VHlwZSgpKTsgLy8gPC0gQXNzaWduIHN0YXRpYyB0ZXh0LCBhcyB0aGlzIHR5cGUgaXMgc2F2ZWQKfQplbHNlIHsKCQoJLy8gV2h5IHRoaXMgc2hvdWxkIGV2ZXIgYmUgY2FzZT8KCSRzbWFydHktPmFzc2lnbignaW5wdXR0eXBlJywgJHR5cGUpOyAvLyA8LSBBc3NpZ24gc3RhdGljIHRleHQsIGFzIHRoaXMgdHlwZSBpcyBzYXZlZAp9Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0bmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnbmFtZScsICRuYW1lLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWxpYXMnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2FsaWFzJywgJGFsaWFzLCAyMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRoZWxwJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdoZWxwJywgJGhlbHAsIDEwMCwgMjU1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcmVxdWlyZWQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAncmVxdWlyZWQnLCAwKSAuICR0aGlzLT5DcmVhdGVJbnB1dGNoZWNrYm94KCRpZCwgJ3JlcXVpcmVkJywgMSwgJHJlcXVpcmVkKSk7CiRzbWFydHktPmFzc2lnbignYmFja2xpbmsnLCAkdGhpcy0+Q3JlYXRlQmFja0xpbmsoJ2ZpZWxkZGVmdGFiJykpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgICAgIChpc3NldCgkZmllbGRkZWZfaWQpID8gJHRoaXMtPk1vZExhbmcoJ2VkaXRmaWVsZGRlZicpIDogJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZicpKSkpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fZWRpdGZpZWxkZGVmJywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJywgZmFsc2UsICcnLCAkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICAgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2FwcGx5JywgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdhcHBseScsIGxhbmcoJ2FwcGx5JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKCmVjaG8gJHRoaXMtPk1vZFByb2Nlc3NUZW1wbGF0ZSgnZWRpdGZpZWxkZGVmLnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_edititem.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKSkgcmV0dXJuOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHBhcmFtcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKSB7CgoJJHBhcmFtcyA9IGFycmF5KCdhY3RpdmVfdGFiJz0+J2l0ZW10YWInKTsKCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSW5pdCBwYXJhbXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJGl0ZW1faWQgICAgICAJCQkJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignaXRlbV9pZCcsICRwYXJhbXMsIC0xKTsKJHRpdGxlICAgICAgIAkJCSAJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcigndGl0bGUnLCAkcGFyYW1zLCAnJyk7CiRhbGlhcwkJIAkJCSAJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignYWxpYXMnLCAkcGFyYW1zLCAnJyk7Ci8vJGNhdGVnb3J5X2lkIAkJCQk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCdjYXRlZ29yeScsICRwYXJhbXMsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZGVmYXVsdF9jYXRlZ29yeScpKTsKJGNhdGVnb3JpZXMJCQkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2NhdGVnb3J5JywgJHBhcmFtcywgYXJyYXkoKSk7CiR0aW1lX2NvbnRyb2wgCQkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ3RpbWVfY29udHJvbCcsICRwYXJhbXMsIDApOwokYWN0aXZlICAgICAgCQkJIAk9IDE7Cgokc3RhcnRfdGltZSA9ICcnOwokZW5kX3RpbWUgPSAnJzsKaWYgKCR0aW1lX2NvbnRyb2wpIHsKCSRzdGFydF90aW1lID0gJHBhcmFtc1snc3RhcnRfdGltZSddOwoJJGVuZF90aW1lICAgPSAkcGFyYW1zWydlbmRfdGltZSddOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSW5pdCBJdGVtCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRvYmogPSAkdGhpcy0+TG9hZEl0ZW1CeUlkZW50aWZpZXIoJ2l0ZW1faWQnLCAkaXRlbV9pZCk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSGFuZGxlIGN1c3RvbSBmaWVsZHMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2N1c3RvbWZpZWxkJ10pKSB7CgoJZm9yZWFjaCAoKGFycmF5KSRwYXJhbXNbJ2N1c3RvbWZpZWxkJ10gYXMgJGZsZGlkID0+ICR2YWx1ZSkgewoJCgkJaWYoaXNzZXQoJG9iai0+ZmllbGRkZWZzWyRmbGRpZF0pKQoJCQkkb2JqLT5maWVsZGRlZnNbJGZsZGlkXS0+U2V0VmFsdWUoJHZhbHVlKTsKCX0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFN1Ym1pdAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoaXNzZXQoJHBhcmFtc1snc3VibWl0J10pIHx8IGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pIHx8IGlzc2V0KCRwYXJhbXNbJ3NhdmVfY3JlYXRlJ10pKSB7CgoJJGVycm9ycyA9IGFycmF5KCk7CgkKCS8vIGNoZWNrIHRpdGxlCglpZiAoZW1wdHkoJHRpdGxlKSkgewoJCgkJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2l0ZW1fdGl0bGVfZW1wdHknKTsKCX0KCQogICAgLy8gY2hlY2sgYWxpYXMKLyogICAgaWYgKCFsaXN0aXQyX3V0aWxzOjppc192YWxpZF9hbGlhcygkYWxpYXMpICYmICFlbXB0eSgkYWxpYXMpKSB7CiAgICAgICAgJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2FsaWFzX2ludmFsaWQnKTsKICAgIH0qLwkKCQoJLy8gQ2hlY2sgZm9yIGR1cGxpY2F0ZQogICAgaWYgKCRpdGVtX2lkID4gMCkgewoJCiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpdGVtX2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbSBXSEVSRSBhbGlhcyA9ID8gQU5EIGl0ZW1faWQgIT0gPyc7CiAgICAgICAgJGV4aXN0cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJGFsaWFzLCAkaXRlbV9pZCkpOwogICAgfSBlbHNlIHsJCgkKICAgICAgICAkcXVlcnkgPSAnU0VMRUNUIGl0ZW1faWQgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIFdIRVJFIGFsaWFzID0gPyc7CiAgICAgICAgJGV4aXN0cyA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJGFsaWFzKSk7CiAgICB9CQoKICAgIGlmICgkZXhpc3RzKSB7CiAgICAgICAgJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2l0ZW1fYWxpYXNfZXhpc3RzJyk7CiAgICB9CQoKCS8vIGNoZWNrIGlmIHN0YXJ0IGRhdGUgaXMgbGVzcyBlbmQgZGF0ZQoJaWYgKCR0aW1lX2NvbnRyb2wgJiYgJHN0YXJ0X3RpbWUgJiYgJGVuZF90aW1lICYmIHN0cnRvdGltZSgkc3RhcnRfdGltZSkgPiBzdHJ0b3RpbWUoJGVuZF90aW1lKSkgewoJCgkJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2Vycm9yX3N0YXJ0Z3JlYXRlcmVuZCcpOwoJfQoJCgkvLyBjdXN0b20gZmllbGQgdmFsaWRhdGlvbgoJZm9yZWFjaCgkb2JqLT5maWVsZGRlZnMgYXMgJGZpZWxkKSB7CgkKCQkkZmllbGQtPlZhbGlkYXRlKCRlcnJvcnMpOwoJfQoJCgkvLyB0aXRsZSBhbmQgcmVxdWlyZWQgZmllbGRzIGhhdmUgdmFsdWVzLCBsZXQncyBjb250aW51ZQoJaWYgKGVtcHR5KCRlcnJvcnMpKSB7CgkKCQkkb2JqLT50aXRsZSAgICAgICAgCT0gJHRpdGxlOwoJCSRvYmotPmFsaWFzCQkgCT0gJGFsaWFzOwoJCSRvYmotPmFjdGl2ZSAgICAgICAJPSBpc3NldCgkcGFyYW1zWydhY3RpdmUnXSkgPyAxIDogMDsKCQkkb2JqLT5zdGFydF90aW1lICAgCT0gJHN0YXJ0X3RpbWU7CgkJJG9iai0+ZW5kX3RpbWUgICAgIAk9ICRlbmRfdGltZTsKCQkkb2JqLT5jYXRlZ29yaWVzCT0gJGNhdGVnb3JpZXM7CgkJLy8kb2JqLT5jYXRlZ29yeV9pZCAJPSAkY2F0ZWdvcnlfaWQ7CgkKCQkkdGhpcy0+U2F2ZUl0ZW0oJG9iaik7CgkJCQkKCQkvLyBkZWxldGUgdmFsdWUgZnJvbSBmaWxlIGZpZWxkCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2RlbGV0ZV9jdXN0b21maWVsZCddKSAmJiBpc19hcnJheSgkcGFyYW1zWydkZWxldGVfY3VzdG9tZmllbGQnXSkpIHsKCQkJZm9yZWFjaCAoJHBhcmFtc1snZGVsZXRlX2N1c3RvbWZpZWxkJ10gYXMgJGsgPT4gJHYpIHsKCQkJCWlmICgkdiAhPSAnZGVsZXRlJykKCQkJCQljb250aW51ZTsgLy8gc2tpcCBpZiBub3QgZGVsZXRpbmcgYW55dGhpbmcKCgkJCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGR2YWwgV0hFUkUgaXRlbV9pZCA9ID8gQU5EIGZpZWxkZGVmX2lkID0gPyc7CgkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkaXRlbV9pZCwkaykpOwoJCQl9CgkJfQoKCQkvLyBpZiBhcHBseSBhbmQgYWpheCAgICAgICAgICAgCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2FqYXgnXSkpIHsKCQkJJHJlc3BvbnNlID0gJzxFZGl0SXRlbT4nOwoJCQkkcmVzcG9uc2UgLj0gJzxSZXNwb25zZT5TdWNjZXNzPC9SZXNwb25zZT4nOwoJCQkkcmVzcG9uc2UgLj0gJzxEZXRhaWxzPjwhW0NEQVRBWycgLiAkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkJykgLiAnXV0+PC9EZXRhaWxzPic7ICAgICAgICAgICAgICAgCgkJCSRyZXNwb25zZSAuPSAnPC9FZGl0SXRlbT4nOwoJCQllY2hvICRyZXNwb25zZTsKCQkJcmV0dXJuOwoJCX0gCgkJCgkJLy8gaWYgc2F2ZSBhbmQgY3JlYXRlIG5ldwoJCWlmIChpc3NldCgkcGFyYW1zWydzYXZlX2NyZWF0ZSddKSApIHsKCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2FkbWluX2VkaXRpdGVtJywgJHJldHVybmlkLCBhcnJheSgKCQkJCSdtZXNzYWdlJyA9PiAnc2F2ZWNyZWF0ZV9tZXNzYWdlJwoJCQkpKTsKCQl9ICAJCSAgICAKCgkJLy8gc2hvdyBzYXZlZCBtZXNzYWdlCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSkgewoJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCBhcnJheSgKCQkJCSdhY3RpdmVfdGFiJyA9PiAnaXRlbXRhYicsCgkJCQknbWVzc2FnZScgPT4gJ2NoYW5nZXNzYXZlZCcKCQkJKSk7CgkJCQoJCX0gZWxzZSB7CgkJCWVjaG8gJHRoaXMtPlNob3dNZXNzYWdlKCR0aGlzLT5Nb2RMYW5nKCdjaGFuZ2Vzc2F2ZWQnKSk7CgkJfQoJCQoJfSAvLyBlbmQgZXJyb3IgY2hlY2sKCQp9IC8vIGVuZCBzdWJtaXQgb3IgYXBwbHkKZWxzZWlmKCRvYmotPml0ZW1faWQgPiAwKSB7CgoJJGl0ZW1faWQJCT0gJG9iai0+aXRlbV9pZDsKCSR0aXRsZSAJCQk9ICRvYmotPnRpdGxlOwoJJGFsaWFzCQkgIAk9ICRvYmotPmFsaWFzOwoJJGFjdGl2ZSAgICAgICAJPSAkb2JqLT5hY3RpdmU7Cgkkc3RhcnRfdGltZSAgIAk9ICRvYmotPnN0YXJ0X3RpbWU7CgkkZW5kX3RpbWUgICAgIAk9ICRvYmotPmVuZF90aW1lOwoJJGNhdGVnb3JpZXMJCT0gJG9iai0+Y2F0ZWdvcmllczsKCS8vJGNhdGVnb3J5X2lkIAk9ICRvYmotPmNhdGVnb3J5X2lkOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTWVzc2FnZSBjb250cm9sCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi8vIGRpc3BsYXkgZXJyb3JzIGlmIHRoZXJlIGFyZSBhbnkKaWYgKCFlbXB0eSgkZXJyb3JzKSkgewogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2FqYXgnXSkpIHsKICAgICAgICAkcmVzcG9uc2UgPSAnPEVkaXRJdGVtPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8UmVzcG9uc2U+RXJyb3I8L1Jlc3BvbnNlPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8RGV0YWlscz48IVtDREFUQVsnOwogICAgICAgIGZvcmVhY2ggKCRlcnJvcnMgYXMgJGVycm9yKSB7CiAgICAgICAgICAgICRyZXNwb25zZSAuPSAnPGxpPicgLiAkZXJyb3IgLiAnPC9saT4nOwogICAgICAgIH0KICAgICAgICAkcmVzcG9uc2UgLj0gJ11dPjwvRGV0YWlscz4nOwogICAgICAgICRyZXNwb25zZSAuPSAnPC9FZGl0SXRlbT4nOwogICAgICAgIGVjaG8gJHJlc3BvbnNlOwogICAgICAgIHJldHVybjsKICAgIH0gZWxzZSB7CiAgICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3JzKTsKICAgIH0KfQoKaWYoaXNzZXQoJHBhcmFtc1snbWVzc2FnZSddKSAmJiBlbXB0eSgkZXJyb3JzKSkgCiAgICBlY2hvICR0aGlzLT5TaG93TWVzc2FnZSgkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkX2NyZWF0ZScpKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ2l0ZW1PYmplY3QnLCAkb2JqKTsKCiRzbWFydHktPmFzc2lnbignYmFja2xpbmsnLCAkdGhpcy0+Q3JlYXRlQmFja0xpbmsoJ2l0ZW10YWInKSk7CiRzbWFydHktPmFzc2lnbigndGl0bGUnLCAoJGl0ZW1faWQgPiAwID8gJHRoaXMtPk1vZExhbmcoJ2VkaXQnKSAuICcgJyAuICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtX3Npbmd1bGFyJywgJycpIDogJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtX3Npbmd1bGFyJywgJycpKSkpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fZWRpdGl0ZW0nLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnLCBmYWxzZSwgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RpdGxlJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICd0aXRsZScsICR0aXRsZSwgNTApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hbGlhcycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnYWxpYXMnLCAkYWxpYXMsIDUwKSk7Ci8vJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jYXRlZ29yeScsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2NhdGVnb3J5JywgJHRoaXMtPkdldENhdGVnb3JpZXNEcm9wZG93bihmYWxzZSksIC0xLCAkY2F0ZWdvcnlfaWQpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jYXRlZ29yeScsICR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJGlkLCAnY2F0ZWdvcnlbXScsICR0aGlzLT5HZXRDYXRlZ29yaWVzRHJvcGRvd24oZmFsc2UpLCAkY2F0ZWdvcmllcywgMTApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hY3RpdmUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRjaGVja2JveCgkaWQsICdhY3RpdmUnLCAxLCAkYWN0aXZlKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdGltZV9jb250cm9sJywgJHRoaXMtPkNyZWF0ZUlucHV0Y2hlY2tib3goJGlkLCAndGltZV9jb250cm9sJywgMSwgJHRpbWVfY29udHJvbCwgJ29uY2xpY2s9InRvZ2dsZWNvbGxhcHNlKFwnZXhwaXJ5aW5mb1wnKTsiJykpOwokc21hcnR5LT5hc3NpZ24oJ3VzZV90aW1lX2NvbnRyb2wnLCAkdGltZV9jb250cm9sKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zdGFydF90aW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdzdGFydF90aW1lJywgJHN0YXJ0X3RpbWUsIDIwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZW5kX3RpbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2VuZF90aW1lJywgJGVuZF90aW1lLCAyMCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdhcHBseScsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdhcHBseScsIGxhbmcoJ2FwcGx5JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdzYXZlX2NyZWF0ZScsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzYXZlX2NyZWF0ZScsICR0aGlzLT5Nb2RMYW5nKCdzYXZlX2NyZWF0ZScpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7CgplY2hvICR0aGlzLT5Nb2RQcm9jZXNzVGVtcGxhdGUoJ2VkaXRpdGVtLnRwbCcpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_editoption.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKS4gJ19tb2RpZnlfb3B0aW9uJykpIHJldHVybjsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBFcnJvciBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRlcnJvcnMgPSBhcnJheSgpOwoKaWYoZW1wdHkoJHBhcmFtc1sndXJsX3ByZWZpeCddKSkgewoKCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdlcnJvcl9vcHRpb25yZXF1aXJlZCcsICR0aGlzLT5Nb2RMYW5nKCdwcm9tcHRfdXJsX3ByZWZpeCcpKTsKfQoKaWYoZW1wdHkoJHBhcmFtc1snZnJpZW5kbHluYW1lJ10pKSB7CgoJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2Vycm9yX29wdGlvbnJlcXVpcmVkJywgJHRoaXMtPk1vZExhbmcoJ3Byb21wdF9mcmllbmRseW5hbWUnKSk7Cn0KCmlmKGVtcHR5KCRwYXJhbXNbJ2l0ZW1fdGl0bGUnXSkpIHsKCgkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnZXJyb3Jfb3B0aW9ucmVxdWlyZWQnLCAkdGhpcy0+TW9kTGFuZygncHJvbXB0X2l0ZW1fdGl0bGUnKSk7Cn0KCmlmKGVtcHR5KCRwYXJhbXNbJ2l0ZW1fc2luZ3VsYXInXSkpIHsKCgkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnZXJyb3Jfb3B0aW9ucmVxdWlyZWQnLCAkdGhpcy0+TW9kTGFuZygncHJvbXB0X2l0ZW1fc2luZ3VsYXInKSk7Cn0KCmlmKGVtcHR5KCRwYXJhbXNbJ2l0ZW1fcGx1cmFsJ10pKSB7CgoJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ2Vycm9yX29wdGlvbnJlcXVpcmVkJywgJHRoaXMtPk1vZExhbmcoJ3Byb21wdF9pdGVtX3BsdXJhbCcpKTsKfQoKaWYoY291bnQoJGVycm9ycykpIHsKCgkkcGFyYW1zID0gYXJyYXkoJ2Vycm9ycycgPT4gJGVycm9yc1swXSwgJ2FjdGl2ZV90YWInID0+ICdvcHRpb250YWInKTsKCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAnJywgJHBhcmFtcyk7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTZXQgbmV3IHZhbHVlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJywJCSRwYXJhbXNbJ2ZyaWVuZGx5bmFtZSddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluc2VjdGlvbicsCQkkcGFyYW1zWydhZG1pbnNlY3Rpb24nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtb2RkZXNjcmlwdGlvbicsICAgICAgJHBhcmFtc1snbW9kZGVzY3JpcHRpb24nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX3RpdGxlJywJCQkkcGFyYW1zWydpdGVtX3RpdGxlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc29ydG9yZGVyJywJCQkkcGFyYW1zWydpdGVtc19zb3J0b3JkZXInXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX3Npbmd1bGFyJywJCSRwYXJhbXNbJ2l0ZW1fc2luZ3VsYXInXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX3BsdXJhbCcsCQkJJHBhcmFtc1snaXRlbV9wbHVyYWwnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkaXNwbGF5X2NyZWF0ZV9kYXRlJywgKGlzc2V0KCRwYXJhbXNbJ2Rpc3BsYXlfY3JlYXRlX2RhdGUnXSk/MTowKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX2NvbHMnLAkJCSgoaXNzZXQoJHBhcmFtc1snaXRlbV9jb2xzJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ2l0ZW1fY29scyddKSkgPyBpbXBsb2RlKCcsJywgJHBhcmFtc1snaXRlbV9jb2xzJ10pIDogJycpKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2l0ZW1zX3Blcl9wYWdlJywJCSRwYXJhbXNbJ2l0ZW1zX3Blcl9wYWdlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndXJsX3ByZWZpeCcsCQkJJHBhcmFtc1sndXJsX3ByZWZpeCddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Rpc3BsYXlfaW5saW5lJywJCShpc3NldCgkcGFyYW1zWydkaXNwbGF5X2lubGluZSddKT8xOjApKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N1YmNhdGVnb3J5JywJCQkoaXNzZXQoJHBhcmFtc1snc3ViY2F0ZWdvcnknXSk/MTowKSk7CgokcGFyYW1zID0gYXJyYXkoJ21lc3NhZ2UnID0+ICdjaGFuZ2Vzc2F2ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ29wdGlvbnRhYicpOwokdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_edittemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9vcHRpb24nKSkgewoKCXJldHVybjsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkgewoKCSRwYXJhbXMgPSBhcnJheSgnYWN0aXZlX3RhYicgPT4gJ3RlbXBsYXRldGFiJyk7CgkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3R5cGUnXSkpIHsKCgkkdHBsX3R5cGUgPSAkcGFyYW1zWyd0eXBlJ107CgkkdHBsX2NvbnRlbnQgPSAkdGhpcy0+TW9kR2V0VGVtcGxhdGVGcm9tRmlsZSgnZmVfJyAuICR0cGxfdHlwZSAuICdfZGVmYXVsdCcpOwoJJHRwbF9uYW1lID0gJyc7Cgp9IGVsc2VpZihpc3NldCgkcGFyYW1zWyduYW1lJ10pKSB7CgoJbGlzdCgkdHBsX3R5cGUsICR0cGxfbmFtZSkgPSBleHBsb2RlKCdfJywgJHBhcmFtc1snbmFtZSddLCAyKTsKCSR0cGxfY29udGVudCA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgkcGFyYW1zWyduYW1lJ10pOwoJJHBhcmFtc1snb3JpZ19uYW1lJ10gPSAkcGFyYW1zWyduYW1lJ107Cgp9IGVsc2UgewoKCWRpZSgnQ2FudCBoYXBwZW5kJyk7Cn0KCmlmKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlX25hbWUnXSkpIHsKCgkkdHBsX25hbWUgPSAkcGFyYW1zWyd0ZW1wbGF0ZV9uYW1lJ107Cn0KCmlmKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlX3RleHQnXSkpIHsKCgkkdHBsX2NvbnRlbnQgPSAkcGFyYW1zWyd0ZW1wbGF0ZV90ZXh0J107Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTdWJtaXQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSB8fCBpc3NldCgkcGFyYW1zWydhcHBseSddKSkgewoKCSRlcnJvcnMgPSBhcnJheSgpOwoJCglpZiAoZW1wdHkoJHRwbF9uYW1lKSkgewoJCgkJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ3RlbXBsYXRlX25hbWVfZW1wdHknKTsKCX0KCQoJaWYgKGVtcHR5KCR0cGxfY29udGVudCkpIHsKCQoJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCd0ZW1wbGF0ZV9jb250ZW50X2VtcHR5Jyk7Cgl9CgkKCWlmIChlbXB0eSgkZXJyb3JzKSkgewoJCgkJaWYoaXNzZXQoJHBhcmFtc1snb3JpZ19uYW1lJ10pKSB7CgkJCgkJCSR0aGlzLT5EZWxldGVUZW1wbGF0ZSgkcGFyYW1zWydvcmlnX25hbWUnXSk7CgkJCWxpc3QoJG9yaWdfdHBsX3R5cGUsICRvcmlnX3RwbF9uYW1lKSA9IGV4cGxvZGUoJ18nLCAkcGFyYW1zWydvcmlnX25hbWUnXSwgMik7CgkJCQoJCQkkdHBsX2RlZmF1bHQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfJy4kdHBsX3R5cGUuJ190ZW1wbGF0ZScpOwoJCQlpZigkdHBsX2RlZmF1bHQgPT0gJG9yaWdfdHBsX25hbWUpIHsKCQkJCgkJCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfJy4kdHBsX3R5cGUuJ190ZW1wbGF0ZScsICR0cGxfbmFtZSk7CgkJCX0JCQkKCQl9CgkJCgkJJHRoaXMtPlNldFRlbXBsYXRlKCR0cGxfdHlwZS4nXycuJHRwbF9uYW1lLCAkdHBsX2NvbnRlbnQpOwoJCgkJaWYgKCFpc3NldCgkcGFyYW1zWydhcHBseSddKSkgewoJCQoJCQkkcGFyYW1zID0gYXJyYXkoJ21lc3NhZ2UnID0+ICdjaGFuZ2Vzc2F2ZWQnLCdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGV0YWInKTsKCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICcnLCAkcGFyYW1zKTsKICAgICAgICAgICAgCgkJfSBlbHNlaWYgKGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2FqYXgnXSkpIHsKCQkgICAgJHJlc3BvbnNlID0gJzxFZGl0SXRlbT4nOwoJCSAgICAkcmVzcG9uc2UgLj0gJzxSZXNwb25zZT5TdWNjZXNzPC9SZXNwb25zZT4nOwoJCSAgICAkcmVzcG9uc2UgLj0gJzxEZXRhaWxzPjwhW0NEQVRBWycgLiAkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkJykgLiAnXV0+PC9EZXRhaWxzPic7CgkJICAgICRyZXNwb25zZSAuPSAnPC9FZGl0SXRlbT4nOwoJCSAgICBlY2hvICRyZXNwb25zZTsKCQkgICAgcmV0dXJuOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGVjaG8gJHRoaXMtPlNob3dNZXNzYWdlKCR0aGlzLT5Nb2RMYW5nKCdjaGFuZ2Vzc2F2ZWQnKSk7CgkJfQoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLy8gZGlzcGxheSBlcnJvcnMgaWYgdGhlcmUgYXJlIGFueQppZiAoIWVtcHR5KCRlcnJvcnMpKSB7CiAgICBpZiAoaXNzZXQoJHBhcmFtc1snYXBwbHknXSkgJiYgaXNzZXQoJHBhcmFtc1snYWpheCddKSkgewogICAgICAgICRyZXNwb25zZSA9ICc8RWRpdEl0ZW0+JzsKICAgICAgICAkcmVzcG9uc2UgLj0gJzxSZXNwb25zZT5FcnJvcjwvUmVzcG9uc2U+JzsKICAgICAgICAkcmVzcG9uc2UgLj0gJzxEZXRhaWxzPjwhW0NEQVRBWyc7CiAgICAgICAgZm9yZWFjaCAoJGVycm9ycyBhcyAkZXJyb3IpIHsKICAgICAgICAgICAgJHJlc3BvbnNlIC49ICc8bGk+JyAuICRlcnJvciAuICc8L2xpPic7CiAgICAgICAgfQogICAgICAgICRyZXNwb25zZSAuPSAnXV0+PC9EZXRhaWxzPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8L0VkaXRJdGVtPic7CiAgICAgICAgZWNobyAkcmVzcG9uc2U7CiAgICAgICAgcmV0dXJuOwogICAgfSBlbHNlIHsKICAgICAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlcnJvcnMpOwogICAgfQp9Cgokc21hcnR5LT5hc3NpZ24oJ2JhY2tsaW5rJywgJHRoaXMtPkNyZWF0ZUJhY2tMaW5rKCd0ZW1wbGF0ZXRhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZScsIChpc3NldCgkcGFyYW1zWyduYW1lJ10pID8gJHRoaXMtPk1vZExhbmcoJ2VkaXR0ZW1wbGF0ZScpIDogJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5Nb2RMYW5nKCR0cGxfdHlwZS4ndGVtcGxhdGUnKSkpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdhZG1pbl9lZGl0dGVtcGxhdGUnLCAkcmV0dXJuaWQsICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnLCBmYWxzZSwgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdGVtcGxhdGUnLCAkdGhpcy0+Q3JlYXRlU3ludGF4QXJlYSgkaWQsICR0cGxfY29udGVudCwgJ3RlbXBsYXRlX3RleHQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAndGVtcGxhdGVfbmFtZScsICR0cGxfbmFtZSwgNDApKTsKCiR0ZW1wbGF0ZWxpc3QgPSAkdGhpcy0+R2V0RmlsZVRlbXBsYXRlc0J5VHlwZSgkdHBsX3R5cGUpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RwbF9saXN0JywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAndGVtcGxhdGVfZnJvbWZpbGUnLCAkdGVtcGxhdGVsaXN0KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2FwcGx5JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2FwcGx5JywgbGFuZygnYXBwbHknKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOwoKZWNobyAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdlZGl0dGVtcGxhdGUudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_exportitems.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKSkgcmV0dXJuOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHBhcmFtcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKSB7CgoJJHBhcmFtc1snYWN0aXZlX3RhYiddID0gJ2l0ZW10YWInOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cn0KCi8vIEluaXQgJGV4cG9ydHZhbHVlcwokb2JqID0gJHRoaXMtPkluaXRpYXRlSXRlbSgpOwpmb3JlYWNoKCRvYmogYXMgJGs9PiR2KSB7CgoJaWYoJHYgaW5zdGFuY2VvZiBMaXN0SXQyRmllbGRkZWZBcnJheSkgewoJCgkJZm9yZWFjaCgkdiBhcyAkZikgewoJCQkJCgkJCSRleHBvcnR2YWx1ZXNbJGYtPkdldEFsaWFzKCldID0gJGYtPkdldEFsaWFzKCk7CQoJCX0KCX0KCWVsc2UgewoKCQkkZXhwb3J0dmFsdWVzWyRrXSA9ICRrOwoJfQkJCn0KdW5zZXQoJG9iaik7CgokZGF0ZWZvcm1hdCA9IHRyaW0oZ2V0X3ByZWZlcmVuY2UoZ2V0X3VzZXJpZCgpLCdkYXRlX2Zvcm1hdF9zdHJpbmcnLCclWS0lbS0lZCcpKTsKCmlmKGVtcHR5KCRkYXRlZm9ybWF0KSkgCgkkZGF0ZWZvcm1hdCA9ICclWS0lbS0lZCc7CQkKCiRkYXRlIAkJCQk9IHN0cmZ0aW1lKCRkYXRlZm9ybWF0LCB0aW1lKCkpOwokZmlsZW5hbWUgCQkJPSAkdGhpcy0+R2V0TmFtZSgpLiAnLUV4cG9ydC0nIC4kZGF0ZTsKJGZpbGVuYW1lCQkJPSBwcmVnX3JlcGxhY2UoJy9bXlx3XGRcLlwtXF9dLycsJ18nLCRmaWxlbmFtZSk7CgokcGx1cmFsICAJCSAJPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9wbHVyYWwnLCAnJyk7CiRzZXBhcmF0b3IgCQkJPSBsaXN0aXQyX3V0aWxzOjppbml0X3Zhcignc2VwYXJhdG9yJywgJHBhcmFtcywgJzsnKTsgLy8gPC0gRGVmYXVsdCBjb3VsZCBiZSBvcHRpb24gCiRlbmNsb3VzZXIgCQkJPSBsaXN0aXQyX3V0aWxzOjppbml0X3ZhcignZW5jbG91c2VyJywgJHBhcmFtcywgJyInKTsgLy8gPC0gRGVmYXVsdCBjb3VsZCBiZSBvcHRpb24gCiRzZWxfZXhwb3J0dmFsdWVzIAk9IGxpc3RpdDJfdXRpbHM6OmluaXRfdmFyKCdleHBvcnR2YWx1ZXMnLCAkcGFyYW1zLCAkZXhwb3J0dmFsdWVzKTsKJGZpbGVuYW1lIAkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2ZpbGVuYW1lJywgJHBhcmFtcywgJGZpbGVuYW1lKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTdWJtaXQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSkgewoKCSRoZWFkZXJzID0gYXJyYXkoKTsKCSRvdXRwdXQgPSBhcnJheSgpOwoJJGZpcnN0ID0gdHJ1ZTsKCgkkcXVlcnkgPSAnU0VMRUNUIGl0ZW1faWQgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIE9SREVSIEJZIHBvc2l0aW9uICcgLiAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc29ydG9yZGVyJyk7CgkkcmVzdWx0ID0gJGRiLT5HZXRDb2woJHF1ZXJ5KTsKCglpZigkcmVzdWx0KSB7CgoJCWZvcmVhY2goJHJlc3VsdCBhcyAkaXRlbV9pZCkgewoJCQoJCQkkb2JqID0gJHRoaXMtPkxvYWRJdGVtQnlJZCgkaXRlbV9pZCk7CgkJCSRyb3cgPSBhcnJheSgpOwoJCQkKCQkJZm9yZWFjaCgkb2JqIGFzICRrPT4kdikgewoKCQkJCWlmKCR2IGluc3RhbmNlb2YgTGlzdEl0MkZpZWxkZGVmQXJyYXkpIHsKCQkJCQoJCQkJCWZvcmVhY2goJHYgYXMgJGYpIHsKCQkJCQkJCgkJCQkJCWlmKCFpbl9hcnJheSgkZi0+R2V0QWxpYXMoKSwgJHNlbF9leHBvcnR2YWx1ZXMpKSAKCQkJCQkJCWNvbnRpbnVlOwoJCQkJCQkKCQkJCQkJaWYoJGZpcnN0KQoJCQkJCQkJJGhlYWRlcnNbXSA9ICRmLT5HZXRBbGlhcygpOwoJCQkJCQkKCQkJCQkJJHJvd1tdID0gJGYtPkdldFZhbHVlKCk7CQkJCQoJCQkJCX0KCQkJCX0KCQkJCWVsc2UgewoKCQkJCQlpZighaW5fYXJyYXkoJGssICRzZWxfZXhwb3J0dmFsdWVzKSkgY29udGludWU7CgkJCQkKCQkJCQlpZigkZmlyc3QpCgkJCQkJCSRoZWFkZXJzW10gPSAkazsKCQkJCQoJCQkJCWlmKGlzX2FycmF5KCR2KSkKCQkJCQkJJHJvd1tdID0gaW1wbG9kZSgnLCcsICR2KTsKCQkJCQllbHNlCgkJCQkJCSRyb3dbXSA9ICR2OwoJCQkJfQkJCgkJCX0KCQkJCgkJCWlmKCRmaXJzdCkKCQkJCSRvdXRwdXRbXSA9ICRoZWFkZXJzOwoJCQkKCQkJJG91dHB1dFtdID0gJHJvdzsKCQkKCQkJdW5zZXQoJG9iaik7CgkJCSRmaXJzdCA9IGZhbHNlOwoJCX0KCX0KCQkKCS8vIE1ha2Ugc3VyZSBmaWxlbmFtZSBpcyBleHBvcnQgZnJpZW5kbHkKCSRmaWxlbmFtZSA9IHByZWdfcmVwbGFjZSgnL1teXHdcZFwuXC1cX10vJywnXycsJGZpbGVuYW1lKTsKCSRmaWxlbmFtZSAuPSAnLmNzdic7CgoJLy8gU2V0IGhlYWRlcnMKCWhlYWRlcigiQ29udGVudC10eXBlOnRleHQvY3N2OyBjaGFyc2V0PWlzbzg4NTktMSIpOwogICAgaGVhZGVyKCJDb250ZW50LURpc3Bvc2l0aW9uOmF0dGFjaG1lbnQ7ZmlsZW5hbWU9Ii4kZmlsZW5hbWUpOwoKCS8vIENsZWFyIG91dHB1dCBidWZmZXIKCSRoYW5kbGVycyA9IG9iX2xpc3RfaGFuZGxlcnMoKTsgCglmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoJCgkvLyBPdXRwdXQKCSR0b3RhbF9jb3VudCA9IGNvdW50KCRoZWFkZXJzKTsKCWZvcmVhY2goJG91dHB1dCBhcyAkb25lcm93KSB7CgkKCQkkY291bnRlciA9IDE7CgkJZm9yZWFjaCgkb25lcm93IGFzICRvbmVpdGVtKSB7CgkJCgkJCSRzdHIgPSAkZW5jbG91c2VyIC4gdXRmOF9kZWNvZGUoJG9uZWl0ZW0pIC4gJGVuY2xvdXNlcjsKCQkJaWYoJGNvdW50ZXIgPT0gJHRvdGFsX2NvdW50KSB7CgkJCQkkc3RyIC49ICJcbiI7CgkJCX0gZWxzZSB7CgkJCQkkc3RyIC49ICRzZXBhcmF0b3I7CgkJCX0KCQkJCgkJCWVjaG8gJHN0cjsKCQkJJGNvdW50ZXIrKzsKCQl9Cgl9CgkKCS8vIFByZXZlbnQgaW5jbHVkaW5nIGFjdHVhbCBIVE1MCglleGl0KCk7IAoKfSAvLyBlbmQgb2Ygc3VibWl0CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZScsICR0aGlzLT5Nb2RMYW5nKCdleHBvcnQnLCAkcGx1cmFsKSk7CiRzbWFydHktPmFzc2lnbignYmFja2xpbmsnLCAkdGhpcy0+Q3JlYXRlQmFja0xpbmsoJ2l0ZW10YWInKSk7CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdhZG1pbl9leHBvcnRpdGVtcycsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsIGZhbHNlLCAnJywgJHBhcmFtcykpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9leHBvcnR2YWx1ZXMnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwgJ2V4cG9ydHZhbHVlc1tdJywgJGV4cG9ydHZhbHVlcywgJHNlbF9leHBvcnR2YWx1ZXMsIDEwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsZScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmaWxlbmFtZScsICRmaWxlbmFtZSwgNDQpIC4gJy5jc3YnKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfc2VwYXJhdG9yJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3NlcGFyYXRvcicsICRzZXBhcmF0b3IsIDUwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZW5jbG91c2VyJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2VuY2xvdXNlcicsICRlbmNsb3VzZXIsIDUwKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCBsYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCmVjaG8gJHRoaXMtPk1vZFByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fY3N2X2ltcG9ydF9leHBvcnQudHBsJyk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_importitems.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKSkgcmV0dXJuOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENoZWNrIHBhcmFtcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pKSB7CgoJJHBhcmFtc1snYWN0aXZlX3RhYiddID0gJ2l0ZW10YWInOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7Cn0KCiRjc3ZfbWltZXR5cGVzID0gYXJyYXkoCiAgICAndGV4dC9jc3YnLAogICAgJ3RleHQvcGxhaW4nLAogICAgJ2FwcGxpY2F0aW9uL2NzdicsCiAgICAndGV4dC9jb21tYS1zZXBhcmF0ZWQtdmFsdWVzJywKICAgICdhcHBsaWNhdGlvbi9leGNlbCcsCiAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJywKICAgICdhcHBsaWNhdGlvbi92bmQubXNleGNlbCcsCiAgICAndGV4dC9hbnl0ZXh0JywKICAgICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nLAogICAgJ2FwcGxpY2F0aW9uL3R4dCcsCik7CgokYWRtaW50aGVtZSAJCT0gY21zbXMoKS0+Z2V0X3ZhcmlhYmxlKCdhZG1pbnRoZW1lJyk7CiRkZXN0X3BhdGggCQkJPSBjbXNfam9pbl9wYXRoKFRNUF9DQUNIRV9MT0NBVElPTiwgJHRoaXMtPkdldE5hbWUoKSAuICdfQ1NWX0ZJTEUuY3N2Jyk7CiRmaWxlX3ZhbHVlcwkJPSBhcnJheSgpOwokdGVtcGxhdGUgCQkJPSAnYWRtaW5fY3N2X2ltcG9ydF9leHBvcnQudHBsJzsKJHBsdXJhbCAgCQkgCT0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2l0ZW1fcGx1cmFsJywgJycpOwokc2VwYXJhdG9yIAkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ3NlcGFyYXRvcicsICRwYXJhbXMsICc7Jyk7IC8vIDwtIERlZmF1bHQgY291bGQgYmUgb3B0aW9uIAokZW5jbG91c2VyIAkJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2VuY2xvdXNlcicsICRwYXJhbXMsICciJyk7IC8vIDwtIERlZmF1bHQgY291bGQgYmUgb3B0aW9uIAokaW1wb3J0X3ZhbHVlcyAJCT0gbGlzdGl0Ml91dGlsczo6aW5pdF92YXIoJ2ltcG9ydF92YWx1ZXMnLCAkcGFyYW1zLCBhcnJheSgpKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBMb2FkIGl0ZW0gdmFyaWFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkYXRhYmFzZV92YWx1ZXMgPSBhcnJheSgpOwokX2ludmFsaWRfdmFsdWVzID0gYXJyYXkoJ2NyZWF0ZV90aW1lJyk7CiRpdGVtID0gJHRoaXMtPkxvYWRJdGVtQnlJZCgpOyAvLyBCaXQgc3R1cGlkLCBpIGtub3cuIEZpZ3VyZSBzb21ldGhpbmcgb3V0LgoKZm9yZWFjaCgkaXRlbSBhcyAkaz0+JHYpIHsKCglpZigkdiBpbnN0YW5jZW9mIExpc3RJdDJGaWVsZGRlZkFycmF5KSB7CgkKCQlmb3JlYWNoKCR2IGFzICRmKSB7CgoJCQkkb2JqID0gbmV3IHN0ZENsYXNzOwoJCQoJCQlpZihpbl9hcnJheSgkZi0+R2V0QWxpYXMoKSwgJF9pbnZhbGlkX3ZhbHVlcykpCgkJCQljb250aW51ZTsKCQkJCgkJCSRvYmotPmFsaWFzID0gJGYtPkdldEFsaWFzKCk7CgkJCSRvYmotPnJlcXVpcmVkID0gJGYtPklzUmVxdWlyZWQoKSA/IDEgOiAwOwoJCQkkb2JqLT5yZXF1aXJlZF9pbWFnZSA9ICRmLT5Jc1JlcXVpcmVkKCkgPyAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vdHJ1ZS5naWYnLCAnJywnJywnJywnc3lzdGVtaWNvbicpIDogJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicsJycsJycsJycsJ3N5c3RlbWljb24nKTsKCQkJJG9iai0+aGVscCA9ICRmLT5HZXREZXNjKCk7CgoJCQkkZGF0YWJhc2VfdmFsdWVzW10gPSAkb2JqOwoJCX0KCX0KCWVsc2UgewoJCgkJJG9iaiA9IG5ldyBzdGRDbGFzczsKCQoJCWlmKGluX2FycmF5KCRrLCAkX2ludmFsaWRfdmFsdWVzKSkKCQkJY29udGludWU7CgkJCQoJCSRvYmotPmFsaWFzID0gJGs7CgkJJG9iai0+cmVxdWlyZWQgPSBpbl9hcnJheSgkaywgTGlzdEl0Mkl0ZW06OiRtYW5kYXRvcnkpID8gMSA6IDA7CgkJJG9iai0+cmVxdWlyZWRfaW1hZ2UgPSBpbl9hcnJheSgkaywgTGlzdEl0Mkl0ZW06OiRtYW5kYXRvcnkpID8gJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywgJycsJycsJycsJ3N5c3RlbWljb24nKSA6ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9mYWxzZS5naWYnLCcnLCcnLCcnLCdzeXN0ZW1pY29uJyk7CgkJJG9iai0+aGVscCA9ICR0aGlzLT5Nb2RMYW5nKCdpdGVtX3Zhcl9oZWxwXycuICRrKTsKCQkKCQkkZGF0YWJhc2VfdmFsdWVzW10gPSAkb2JqOwoJfQoKfQoKdW5zZXQoJGl0ZW0pOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEdvIGJhY2sKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ3ByZXZpb3VzJ10pKSB7CgoJdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwoJdW5zZXQoJHBhcmFtc1sncHJldmlvdXMnXSk7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBEbyBpbXBvcnQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2RvX2ltcG9ydCddKSkgewoJCQoJJGVycm9ycyA9IGFycmF5KCk7CgoJZm9yZWFjaCgkZGF0YWJhc2VfdmFsdWVzIGFzICRvYmopIHsKCQoJCWlmKCRvYmotPnJlcXVpcmVkKSB7CgkJCgkJCWlmKCEkaW1wb3J0X3ZhbHVlc1skb2JqLT5hbGlhc10pCgkJCQkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygncmVxdWlyZWRfZmllbGRfZW1wdHknKSAuICcgKCcgLiAkb2JqLT5hbGlhcyAuICcpJzsKCQl9Cgl9CgkKCWlmKGVtcHR5KCRlcnJvcnMpKSB7CgoJCSRkYXRhYmFzZV92YWx1ZXMgPSBhcnJheSgpOwoJCQoJCS8vIEluaXRpYXRlIENzdkl0ZXJhdG9yCgkJJGNzdiA9IG5ldyBMaXN0SXQyQ3N2SXRlcmF0b3IoJGRlc3RfcGF0aCwgdHJ1ZSwgJHNlcGFyYXRvciwgJGVuY2xvdXNlcik7CgoJCS8vIENvbGxlY3QgZGF0YSBmcm9tIGZpbGUKCQl3aGlsZSAoJGNzdi0+bmV4dCgpKSB7CgoJCQkkcm93ID0gJGNzdi0+Y3VycmVudCgpOwoJCQkKCQkJZm9yZWFjaCgkaW1wb3J0X3ZhbHVlcyBhcyAkYWxpYXMgPT4gJGluZGV4KSB7CgkJCQoJCQkJaWYoJGluZGV4KSB7CgkJCQkKCQkJCQkkZGF0YWJhc2VfdmFsdWVzWyRjc3YtPmtleSgpXVskYWxpYXNdID0gJHJvd1skaW5kZXhdOwoJCQkJfQoJCQkJZWxzZSB7CgkJCQkKCQkJCQl1bnNldCgkaW1wb3J0X3ZhbHVlc1skYWxpYXNdKTsKCQkJCX0KCQkJfQoJCX0KCQkJCgkJLy8gSW1wb3J0IGRhdGEgdG8gZGF0YWJhc2UKCQlmb3JlYWNoKCRkYXRhYmFzZV92YWx1ZXMgYXMgJGl0ZW1fdmFsdWVzKSB7CgkJCgkJCSRvYmogPSBuZXcgTGlzdEl0Mkl0ZW07CgkJCSRvYmotPmZpZWxkZGVmcyA9ICR0aGlzLT5HZXRGaWVsZERlZnMoKTsKCQkJCgkJCWZvcmVhY2goJGl0ZW1fdmFsdWVzIGFzICRrZXk9PiR2YWx1ZSkgewoKCQkJCWlmKCRrZXkgPT0gJ2l0ZW1faWQnICYmICFpc19udW1lcmljKCR2YWx1ZSkpCgkJCQkJY29udGludWU7CgkJCQoJCQkJJGtleSAJPSB1dGY4X2VuY29kZSgka2V5KTsKCQkJCSR2YWx1ZSAJPSBleHBsb2RlKExJU1RJVDJfVkFMVUVfU0VQQVJBVE9SLCB1dGY4X2VuY29kZSgkdmFsdWUpKTsKCQkJCgkJCQkkb2JqLT5TZXRQcm9wZXJ0eVZhbHVlKCRrZXksICR2YWx1ZSk7CgkJCQlpZigka2V5ID09ICdpdGVtX2lkJykKCQkJCQlMaXN0SXQySXRlbU9wZXJhdGlvbnM6OkxvYWQoJHRoaXMsICRvYmopOyAvLyA8LSBUcnkgbG9hZGluZyBpdGVtIGlmIHdlIGFjdHVhbGx5IGdvdCBJRC4KCQkJfQoJCQkJCQkJCgkJCSR0aGlzLT5TYXZlSXRlbSgkb2JqKTsKCQkJCgkJCXVuc2V0KCRvYmopOwoJCX0KCQkKCQkvLyBSZWRpcmVjdCBiYWNrIHRvIGxpc3RpbmcKCQkkcGFyYW1zID0gYXJyYXkoJ2FjdGl2ZV90YWInPT4naXRlbXRhYicpOwoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOwoJCgl9IC8vIGVuZCBvZiBlcnJvciBjaGVjawp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU3VibWl0CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmIChpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkpIHsKCglpZiAoIWlzc2V0KCRwYXJhbXNbJ2RvX2ltcG9ydCddKSkgewoKCQkkZXJyb3JzID0gYXJyYXkoKTsKCgkJLy8gU3RhcnQgZmlsZSB2YWxpZGF0aW9uCgkJJF9maWxlID0gJF9GSUxFU1skaWQuJ2NzdmZpbGUnXTsKCQlpZighaXNzZXQoJF9maWxlWyduYW1lJ10pIHx8ICRfZmlsZVsnbmFtZSddID09ICcnKSB7CgoJCQkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnZXJyb3JfZmlsZV9lbXB0eScpOwoJCX0gCgkJCQoJCWlmKCFpbl9hcnJheSgkX2ZpbGVbJ3R5cGUnXSwgJGNzdl9taW1ldHlwZXMpKSB7CgkJCgkJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdlcnJvcl9maWxlX25vY3N2Jyk7CgkJfQoJCQkKCQlpZihlbXB0eSgkZXJyb3JzKSkgewoJCQoJCQlpZighbW92ZV91cGxvYWRlZF9maWxlKCRfZmlsZVsndG1wX25hbWUnXSwgJGRlc3RfcGF0aCkpIHsKCQkJCgkJCQkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygnZXJyb3JfZmlsZV9wZXJtaXNzaW9ucycpOwoJCQl9CQoJCX0KCX0KCQoJLy8gTm8gZmlsZSB2YWxpZGF0aW9uIGVycm9ycywgcmVhZCBmaWxlCglpZihlbXB0eSgkZXJyb3JzKSB8fCBpc3NldCgkcGFyYW1zWydkb19pbXBvcnQnXSkpIHsKCQoJCS8vIEluaXRpYXRlIENzdkl0ZXJhdG9yCgkJJGNzdiA9IG5ldyBMaXN0SXQyQ3N2SXRlcmF0b3IoJGRlc3RfcGF0aCwgZmFsc2UsICRzZXBhcmF0b3IsICRlbmNsb3VzZXIpOwoJCSRjc3YtPm5leHQoKTsKCQkkdG1wID0gJGNzdi0+Y3VycmVudCgpOwoJCSRjc3YtPnRlYXJEb3duKCk7CgkJCgkJLy8gQnVpbGQgZHJvcGRvd24gYXJyYXkKCQkkZmlsZV92YWx1ZXMgPSBhcnJheSgwID0+IGxhbmcoJ25vbmUnKSk7CgkJZm9yZWFjaCgkdG1wIGFzICR0bXB2YWwpIHsKCQkKCQkJJGZpbGVfdmFsdWVzWyR0bXB2YWxdID0gdXRmOF9lbmNvZGUoJHRtcHZhbCk7CgkJfQoJCQoJCSR0ZW1wbGF0ZSA9ICdhZG1pbl9jc3ZfaW1wb3J0LnRwbCc7CQoJfQoJCQoJCn0gLy8gZW5kIG9mIHN1Ym1pdAoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi8vIGRpc3BsYXkgZXJyb3JzIGlmIHRoZXJlIGFyZSBhbnkKaWYgKCFlbXB0eSgkZXJyb3JzKSkgewogICAgaWYgKGlzc2V0KCRwYXJhbXNbJ2FwcGx5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2FqYXgnXSkpIHsKICAgICAgICAkcmVzcG9uc2UgPSAnPEVkaXRJdGVtPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8UmVzcG9uc2U+RXJyb3I8L1Jlc3BvbnNlPic7CiAgICAgICAgJHJlc3BvbnNlIC49ICc8RGV0YWlscz48IVtDREFUQVsnOwogICAgICAgIGZvcmVhY2ggKCRlcnJvcnMgYXMgJGVycm9yKSB7CiAgICAgICAgICAgICRyZXNwb25zZSAuPSAnPGxpPicgLiAkZXJyb3IgLiAnPC9saT4nOwogICAgICAgIH0KICAgICAgICAkcmVzcG9uc2UgLj0gJ11dPjwvRGV0YWlscz4nOwogICAgICAgICRyZXNwb25zZSAuPSAnPC9FZGl0SXRlbT4nOwogICAgICAgIGVjaG8gJHJlc3BvbnNlOwogICAgICAgIHJldHVybjsKICAgIH0gZWxzZSB7CiAgICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZXJyb3JzKTsKICAgIH0KfQoKLy8gUGFydCAxCiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsZScsJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsICdjc3ZmaWxlJywgJycsIDI1KSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc2VwYXJhdG9yJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3NlcGFyYXRvcicsICRzZXBhcmF0b3IsIDUwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZW5jbG91c2VyJywkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2VuY2xvdXNlcicsICRlbmNsb3VzZXIsIDUwKSk7CgovLyBQYXJ0IDIKJHNtYXJ0eS0+YXNzaWduKCdkYXRhYmFzZV92YWx1ZXMnLCAkZGF0YWJhc2VfdmFsdWVzKTsKJHNtYXJ0eS0+YXNzaWduKCdmaWxlX3ZhbHVlcycsICRmaWxlX3ZhbHVlcyk7Cgokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPk1vZExhbmcoJ2ltcG9ydCcsICRwbHVyYWwpKTsKJHNtYXJ0eS0+YXNzaWduKCdiYWNrbGluaycsICR0aGlzLT5DcmVhdGVCYWNrTGluaygnaXRlbXRhYicpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkbWluX2ltcG9ydGl0ZW1zJywgJHJldHVybmlkLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJywgZmFsc2UsICcnLCAkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcmV2aW91cycsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdwcmV2aW91cycsIGxhbmcoJ3ByZXZpb3VzJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdkb19pbXBvcnQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZG9faW1wb3J0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKCmVjaG8gJHRoaXMtPk1vZFByb2Nlc3NUZW1wbGF0ZSgkdGVtcGxhdGUpOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_reordercategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyAgQSBmdW5jdGlvbiBmb3IgdGhlIExpc3RJdDIgbW9kdWxlIHRvIGFsbG93IHJlLW9yZGVyaW5nIHRoZSBoaWVyYXJjaGljYWwgY2F0ZWdvcnkgdHJlZS4KIyAoYykgMjAxMiBieSBSb2JlcnQgQ2FtcGJlbGwgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIHJldHVybjsKCi8vCi8vIGZ1bmN0aW9ucwovLwpmdW5jdGlvbiBsaXN0aXQyX2dldF9jYXRlZ29yeV90cmVlKCRtb2R1bGVfYWxpYXMsJHBhcmVudF9pZCA9IC0xKQp7CiAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAkdGhldGFibGUgPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV8nLiRtb2R1bGVfYWxpYXMuJ19jYXRlZ29yeSc7CgogICRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuJHRoZXRhYmxlLicgV0hFUkUgcGFyZW50X2lkID0gPyBPUkRFUiBCWSBoaWVyYXJjaHknOwogICRkYXRhPSAkZGItPkdldEFycmF5KCRxdWVyeSxhcnJheSgkcGFyZW50X2lkKSk7CgogIGlmKCBpc19hcnJheSgkZGF0YSkgJiYgY291bnQoJGRhdGEpICkKICAgIHsKICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKCXsKCSAgJHRtcCA9IGxpc3RpdDJfZ2V0X2NhdGVnb3J5X3RyZWUoJG1vZHVsZV9hbGlhcywkZGF0YVskaV1bJ2NhdGVnb3J5X2lkJ10pOwoJICBpZiggaXNfYXJyYXkoJHRtcCkgJiYgY291bnQoJHRtcCkgKQoJICAgIHsKCSAgICAgICRkYXRhWyRpXVsnY2hpbGRyZW4nXSA9ICR0bXA7CgkgICAgfQoJfQoKICAgICAgcmV0dXJuICRkYXRhOwogICAgfQp9CgpmdW5jdGlvbiBsaXN0aXQyX2NyZWF0ZV9jYXRlZ29yeV9mbGF0bGlzdCgkdHJlZSwkcGFyZW50X2lkID0gLTEpCnsKICAkZGF0YSA9IGFycmF5KCk7CiAgJG9yZGVyID0gMTsKICBmb3JlYWNoKCAkdHJlZSBhcyAmJG5vZGUgKQogICAgewogICAgICBpZiggaXNfYXJyYXkoJG5vZGUpICYmIGNvdW50KCRub2RlKSA9PSAyICkKCXsKCSAgJHBpZCA9IChpbnQpc3Vic3RyKCRub2RlWzBdLHN0cmxlbignY2F0XycpKTsKCSAgJGRhdGFbXSA9IGFycmF5KCdpZCc9PiRwaWQsJ3BhcmVudF9pZCc9PiRwYXJlbnRfaWQsJ29yZGVyJz0+JG9yZGVyKTsKCSAgaWYoIGlzc2V0KCRub2RlWzFdKSAmJiBpc19hcnJheSgkbm9kZVsxXSkgKQoJICAgIHsKCSAgICAgICRkYXRhID0gYXJyYXlfbWVyZ2UoJGRhdGEsbGlzdGl0Ml9jcmVhdGVfY2F0ZWdvcnlfZmxhdGxpc3QoJG5vZGVbMV0sJHBpZCkpOwoJICAgIH0KCX0KICAgICAgZWxzZQoJewoJICAkcGlkID0gKGludClzdWJzdHIoJG5vZGUsc3RybGVuKCdjYXRfJykpOwoJICAkZGF0YVtdID0gYXJyYXkoJ2lkJz0+JHBpZCwncGFyZW50X2lkJz0+JHBhcmVudF9pZCwnb3JkZXInPT4kb3JkZXIpOwoJfQogICAgICAkb3JkZXIrKzsKICAgIH0KICByZXR1cm4gJGRhdGE7Cn0KCi8vCi8vIEdldCB0aGUgZGF0YQovLwokdHJlZSA9IGxpc3RpdDJfZ2V0X2NhdGVnb3J5X3RyZWUoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpKTsKCi8vcHJpbnRfcigkdHJlZSk7CgovLwovLyBIYW5kbGUgZm9ybSBzdWJtaXNzaW9uCi8vCmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAnY2F0ZWdvcnl0YWInKSk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSAKICB7CgogICAgJG9yZGVyZGF0YSA9IGpzb25fZGVjb2RlKCRwYXJhbXNbJ29yZGVyZGF0YSddKTsKCQogICAgJGZsYXRsaXN0ID0gbGlzdGl0Ml9jcmVhdGVfY2F0ZWdvcnlfZmxhdGxpc3QoJG9yZGVyZGF0YSk7CiAgICAkdGhldGFibGUgPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV8nLiR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKS4nX2NhdGVnb3J5JzsKCiAgICAvLyBnZXQgdGhlIGZ1bGwgY2F0ZWdvcnkgbGlzdC4KICAgICRjYXRlZ29yaWVzID0gYXJyYXkoKTsKICAgIHsKICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy4kdGhldGFibGUuJyBPUkRFUiBCWSBoaWVyYXJjaHknOwogICAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCgl7CgkgICRyZWMgPSAkdG1wWyRpXTsKCSAgJGNhdGVnb3JpZXNbJHJlY1snY2F0ZWdvcnlfaWQnXV0gPSAkdG1wOwoJfQogICAgfQogICAgCiAgICAvLyBhbmQgdXBkYXRlIHRoZSBkYXRhYmFzZSB3aXRoIG91ciBuZXcgb3JkZXIgaW5mby4KICAgICRxdWVyeSA9ICdVUERBVEUgJy4kdGhldGFibGUuJyBTRVQgcGFyZW50X2lkID0gPywgcG9zaXRpb24gPSA/LCBoaWVyYXJjaHkgPSA/IFdIRVJFIGNhdGVnb3J5X2lkID0gPyc7CiAgICBmb3JlYWNoKCAkZmxhdGxpc3QgYXMgJHJlYyApCiAgICAgIHsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRyZWNbJ3BhcmVudF9pZCddLCRyZWNbJ29yZGVyJ10sJycsJHJlY1snaWQnXSkpOwogICAgICB9CiAgICBMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zOjpVcGRhdGVIaWVyYXJjaHlQb3NpdGlvbnMoJHRoaXMpOwogICAgCiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCBhcnJheSgnYWN0aXZlX3RhYicgPT4gJ2NhdGVnb3J5dGFiJywgJ21lc3NhZ2UnID0+ICdjaGFuZ2Vzc2F2ZWQnKSk7CiAgfQoKLy8KLy8gZ2l2ZSBkYXRhIHRvIHNtYXJ0eQovLwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX3Jlb3JkZXJjYXRlZ29yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiRzbWFydHktPmFzc2lnbigndHJlZScsJHRyZWUpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsKCmVjaG8gJHRoaXMtPk1vZFByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fcmVvcmRlcmNhdGVnb3J5LnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_requirefielddef.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X29wdGlvbnMnKSkgcmV0dXJuOwoKaWYoIWlzc2V0KCRwYXJhbXNbJ3JlcXVpcmUnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2ZpZWxkZGVmX2lkJ10pKQp7CglkaWUoJ21pc3NpbmcgcGFyYW1ldGVyLCB0aGlzIHNob3VsZCBub3QgaGFwcGVuJyk7Cn0KCiRmaWVsZGRlZl9pZCA9IChpbnQpJHBhcmFtc1snZmllbGRkZWZfaWQnXTsKJHJlcXVpcmVkID0gKGJvb2wpJHBhcmFtc1sncmVxdWlyZSddOwoKJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZiBTRVQgcmVxdWlyZWQgPSA/IFdIRVJFIGZpZWxkZGVmX2lkID0gPyc7CiRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRyZXF1aXJlZCwgJGZpZWxkZGVmX2lkKSk7CgokYWRtaW50aGVtZSA9IGNtc21zKCktPmdldF92YXJpYWJsZSgnYWRtaW50aGVtZScpOwokanNvbiA9IG5ldyBzdGRDbGFzczsKCmlmICgkcmVxdWlyZWQpIHsKCgkkanNvbi0+aW1hZ2UgPSAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vdHJ1ZS5naWYnLCAkdGhpcy0+TW9kTGFuZygncmV2ZXJ0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKTsKCSRqc29uLT5ocmVmID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fcmVxdWlyZWZpZWxkZGVmJywgJHJldHVybmlkLCAnJywgYXJyYXkoJ3JlcXVpcmUnID0+IDAsJ2ZpZWxkZGVmX2lkJyA9PiAkZmllbGRkZWZfaWQpLCAnJywgdHJ1ZSk7Cn0gZWxzZSB7CgoJJGpzb24tPmltYWdlID0gJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdhcHByb3ZlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKTsKCSRqc29uLT5ocmVmID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fcmVxdWlyZWZpZWxkZGVmJywgJHJldHVybmlkLCAnJyxhcnJheSgncmVxdWlyZScgPT4gMSwnZmllbGRkZWZfaWQnID0+ICRmaWVsZGRlZl9pZCksICcnLCB0cnVlKTsKfQoKLy8gRml4IFVSTCBmb3IgSlNPTiBvdXRwdXQKJGpzb24tPmhyZWYgPSBodG1sX2VudGl0eV9kZWNvZGUoJGpzb24tPmhyZWYpOwoKaGVhZGVyKCJDb250ZW50LXR5cGU6YXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCIpOwoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmVjaG8ganNvbl9lbmNvZGUoJGpzb24pOwpleGl0KCk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_setdefaultcategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9ucycpKQogICAgcmV0dXJuOwoKaWYgKCFpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSkgewogICAgZGllKCdtaXNzaW5nIHBhcmFtZXRlciwgdGhpcyBzaG91bGQgbm90IGhhcHBlbicpOwp9CgovLyBzZXQgZGVmYXVsdCBjYXRlZ29yeSBwcmVmZXJlbmNlCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZGVmYXVsdF9jYXRlZ29yeScsICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pOwoKLy8gYWxsIGRvbmUKJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdjYXRlZ29yeXRhYicpKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_setdefaulttemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9ucycpKQogICAgcmV0dXJuOwoKaWYgKCFpc3NldCgkcGFyYW1zWyduYW1lJ10pKSB7CiAgICBkaWUoJ21pc3NpbmcgcGFyYW1ldGVyLCB0aGlzIHNob3VsZCBub3QgaGFwcGVuJyk7Cn0KCmxpc3QoJHRwbF90eXBlLCAkdHBsX25hbWUpID0gZXhwbG9kZSgnXycsICRwYXJhbXNbJ25hbWUnXSwgMik7CgovLyBzZXQgZGVmYXVsdCB0ZW1wbGF0ZSBwcmVmZXJlbmNlCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZGVmYXVsdF8nLiR0cGxfdHlwZS4nX3RlbXBsYXRlJywgJHRwbF9uYW1lKTsKCi8vIGFsbCBkb25lCiR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGV0YWInKSk7Cj8+]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_setfielddefvalue.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9pdGVtJykpIHJldHVybjsKCmlmICghaXNzZXQoJHBhcmFtc1snZmllbGRkZWZfaWQnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2l0ZW1faWQnXSkpCgl0aHJvdyBuZXcgTGlzdEl0MkV4Y2VwdGlvbignTWlzc2luZyBwYXJhbWV0ZXIsIHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4hJyk7CgokZmlkID0gKGludCkkcGFyYW1zWydmaWVsZGRlZl9pZCddOwokaXRlbV9pZCA9IChpbnQpJHBhcmFtc1snaXRlbV9pZCddOwkKCQokdmFsdWUgPSAnJzsJCmlmIChpc3NldCgkcGFyYW1zWyd2YWx1ZSddKSkgewoKCSR2YWx1ZSA9ICRwYXJhbXNbJ3ZhbHVlJ107Cn0KCiRxdWVyeSAgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGR2YWwgV0hFUkUgaXRlbV9pZCA9ID8gQU5EIGZpZWxkZGVmX2lkID0gPyc7CiRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkaXRlbV9pZCwgJGZpZCkpOwoKJHF1ZXJ5ICA9ICdJTlNFUlQgSU5UTyAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCAoaXRlbV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlKSBWQUxVRVMgKD8sID8sID8pJzsKJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRpdGVtX2lkLCAkZmlkLCAkdmFsdWUpKTsKCQokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKJGpzb24gPSBuZXcgc3RkQ2xhc3M7CgokanNvbi0+dmFsdWUgPSAkdmFsdWU7CgovLyBGaXggVVJMIGZvciBKU09OIG91dHB1dAokanNvbi0+aHJlZiA9IGh0bWxfZW50aXR5X2RlY29kZSgkanNvbi0+aHJlZik7CgpoZWFkZXIoIkNvbnRlbnQtdHlwZTphcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Iik7CgokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQoKZWNobyBqc29uX2VuY29kZSgkanNvbik7CmV4aXQoKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/action.admin_togglefielddefvalue.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9pdGVtJykpIHJldHVybjsKCmlmICghaXNzZXQoJHBhcmFtc1snZmllbGRkZWZfaWQnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2l0ZW1faWQnXSkpCgl0aHJvdyBuZXcgTGlzdEl0MkV4Y2VwdGlvbignTWlzc2luZyBwYXJhbWV0ZXIsIHRoaXMgc2hvdWxkIG5vdCBoYXBwZW4hJyk7CgokZmlkID0gKGludCkkcGFyYW1zWydmaWVsZGRlZl9pZCddOwokaXRlbV9pZCA9IChpbnQpJHBhcmFtc1snaXRlbV9pZCddOwkKCQokdmFsdWUgPSAnJzsJCmlmIChpc3NldCgkcGFyYW1zWyd2YWx1ZSddKSkgewoKCSR2YWx1ZSA9ICRwYXJhbXNbJ3ZhbHVlJ10gPyAkcGFyYW1zWyd2YWx1ZSddIDogZmFsc2U7Cn0KCiRxdWVyeSAgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGR2YWwgV0hFUkUgaXRlbV9pZCA9ID8gQU5EIGZpZWxkZGVmX2lkID0gPyc7CiRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkaXRlbV9pZCwgJGZpZCkpOwoKJHF1ZXJ5ICA9ICdJTlNFUlQgSU5UTyAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCAoaXRlbV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlKSBWQUxVRVMgKD8sID8sID8pJzsKJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRpdGVtX2lkLCAkZmlkLCAkdmFsdWUpKTsKCiRhZG1pbnRoZW1lID0gY21zbXMoKS0+Z2V0X3ZhcmlhYmxlKCdhZG1pbnRoZW1lJyk7CiRqc29uID0gbmV3IHN0ZENsYXNzOwoKaWYgKCR2YWx1ZSkgewoKCSRqc29uLT5pbWFnZSA9ICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZXZlcnQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl90b2dnbGVmaWVsZGRlZnZhbHVlJywgJHJldHVybmlkLCAnJywgYXJyYXkoJ2ZpZWxkZGVmX2lkJyA9PiAkZmlkLCAnaXRlbV9pZCcgPT4gJGl0ZW1faWQsICd2YWx1ZScgPT4gMCksICcnLCB0cnVlKTsKfSBlbHNlIHsKCgkkanNvbi0+aW1hZ2UgPSAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FwcHJvdmUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJJGpzb24tPmhyZWYgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl90b2dnbGVmaWVsZGRlZnZhbHVlJywgJHJldHVybmlkLCAnJywgYXJyYXkoJ2ZpZWxkZGVmX2lkJyA9PiAkZmlkLCAnaXRlbV9pZCcgPT4gJGl0ZW1faWQsICd2YWx1ZScgPT4gMSksICcnLCB0cnVlKTsKfQoKLy8gRml4IFVSTCBmb3IgSlNPTiBvdXRwdXQKJGpzb24tPmhyZWYgPSBodG1sX2VudGl0eV9kZWNvZGUoJGpzb24tPmhyZWYpOwoKaGVhZGVyKCJDb250ZW50LXR5cGU6YXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCIpOwoKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KCmVjaG8ganNvbl9lbmNvZGUoJGpzb24pOwpleGl0KCk7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.ajax.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYoaXNzZXQoJHBhcmFtc1sndXNyX2Z1bmN0aW9uJ10pKXsKCSR1c3JfcGFyYW1zID0gYXJyYXkoKTsKCWlmKGlzc2V0KCRwYXJhbXNbJ3BhcmFtcyddKSkKCXsKCQlpZihpc19hcnJheSgkcGFyYW1zWydwYXJhbXMnXSkpCgkJewoJCQkkdXNyX3BhcmFtcyA9IGFycmF5KCRwYXJhbXNbJ3BhcmFtcyddKTsKCQl9CgkJZWxzZQoJCXsKCQkJJHVzcl9wYXJhbXMgPSBleHBsb2RlKCcsJywgJHBhcmFtc1sncGFyYW1zJ10pOwoJCX0KCX0KCWVjaG8gY2FsbF91c2VyX2Z1bmNfYXJyYXkoYXJyYXkoJHRoaXMsICRwYXJhbXNbJ3Vzcl9mdW5jdGlvbiddKSwgJHVzcl9wYXJhbXMpOwoJZXhpdDsKfQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.category.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IG9iamVjdHMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHF1ZXJ5X29iamVjdCA9IG5ldyBMaXN0SXQyQ2F0ZWdvcnlRdWVyeSgkdGhpcywgJHBhcmFtcyk7CgpFdmVudHM6OlNlbmRFdmVudCgkdGhpcy0+R2V0TmFtZSgpLCAnUHJlUmVuZGVyQWN0aW9uJywgYXJyYXkoJ2FjdGlvbl9uYW1lJyA9PiAnY2F0ZWdvcnknLCAncXVlcnlfb2JqZWN0JyA9PiAmJHF1ZXJ5X29iamVjdCkpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEluaXQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLy93aGljaCB0ZW1wbGF0ZSB0byB1c2UKJHRlbXBsYXRlID0gJ2NhdGVnb3J5XycuJHRoaXMtPkdldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2NhdGVnb3J5X3RlbXBsYXRlJyk7CmlmKGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5dGVtcGxhdGUnXSkpIHsKCSR0ZW1wbGF0ZSA9ICdjYXRlZ29yeV8nLiRwYXJhbXNbJ2NhdGVnb3J5dGVtcGxhdGUnXTsKfQoKaWYoaXNzZXQoJHBhcmFtc1snZGV0YWlscGFnZSddKSkgewoKCSRobSA9IGNtc21zKCktPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsKCSRyZXR1cm5pZCA9ICRobS0+c3VyZUdldE5vZGVCeUFsaWFzKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSktPkdldElkKCk7Cn0KCiRkZWJ1ZyA9IChpc3NldCgkcGFyYW1zWydkZWJ1ZyddKSA/IHRydWUgOiBmYWxzZSk7CiRpbmxpbmUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGlzcGxheV9pbmxpbmUnLCAwKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGl0ZW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRxdWVyeV9vYmplY3QtPkFwcGVuZFRvKExpc3RJdDJRdWVyeTo6VkFSVFlQRV9XSEVSRSwgJ0IuYWN0aXZlID0gMSBBTkQgQi5wYXJlbnRfaWQgPSAtMScpOwokZGJyID0gJHF1ZXJ5X29iamVjdC0+RXhlY3V0ZSh0cnVlKTsKCiRpdGVtcyA9IGFycmF5KCk7CndoaWxlKCRkYnIgJiYgISRkYnItPkVPRikgewoKCSRpdGVtc1skZGJyLT5maWVsZHNbJ2NhdGVnb3J5X2lkJ11dID0gJGRici0+ZmllbGRzWydjYXRlZ29yeV9pZCddOwoJJGRici0+TW92ZU5leHQoKTsKfQoKaWYoJGRicikgCgkkZGJyLT5DbG9zZSgpOwkKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBCdWlsZCBoaWVyYXJjaHkKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLy8gR3JhcCBjdXJyZW50IHBhdGgKJGN1cnJlbnRfcGF0aCA9IGNtc191dGlsczo6Z2V0X2FwcF9kYXRhKCdsaXN0aXQyX2lkX2hpZXJhcmNoeScpOwoKLy8gU2V0IGNvbGxhcHNlIHRydWUvZmFsc2UKJHNob3dwYXJlbnRzID0gYXJyYXkoKTsKaWYgKGlzc2V0KCRwYXJhbXNbJ2NvbGxhcHNlJ10pKSB7CgoJaWYgKCRjdXJyZW50X3BhdGgpIHsKCQoJCSRzcGxpdHRlZF9wYXRoID0gZXhwbG9kZSgnLicsICRjdXJyZW50X3BhdGgpOwoJCgkJd2hpbGUoY291bnQoJHNwbGl0dGVkX3BhdGgpKSB7CgkJCgkJCSRzaG93cGFyZW50c1tdID0gaW1wbG9kZSgnLicsICRzcGxpdHRlZF9wYXRoKTsKCQkJYXJyYXlfcG9wKCRzcGxpdHRlZF9wYXRoKTsKCQl9Cgl9Cn0KCiRvcmlnZGVwdGggPSAxOwokcHJldmRlcHRoID0gMTsKJGNvdW50ID0gMDsKJG5vZGVsaXN0ID0gYXJyYXkoKTsKCkxpc3RJdDJIaWVyYXJjaHlNYW5hZ2VyOjpHZXRDaGlsZE5vZGVzKCR0aGlzLCAkaWQsICRyZXR1cm5pZCwgJGl0ZW1zLCAkbm9kZWxpc3QsICRjb3VudCwgJHByZXZkZXB0aCwgJG9yaWdkZXB0aCwgJHBhcmFtcywgJHNob3dwYXJlbnRzKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCAkbm9kZWxpc3QpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCR0ZW1wbGF0ZSk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSW5pdCBvYmplY3RzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRpdGVtX3F1ZXJ5ID0gbmV3IExpc3RJdDJJdGVtUXVlcnkoJHRoaXMsICRwYXJhbXMpOwoKRXZlbnRzOjpTZW5kRXZlbnQoJHRoaXMtPkdldE5hbWUoKSwgJ1ByZVJlbmRlckFjdGlvbicsIGFycmF5KCdhY3Rpb25fbmFtZScgPT4gJ2RlZmF1bHQnLCAncXVlcnlfb2JqZWN0JyA9PiAmJGl0ZW1fcXVlcnkpKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDaGVjayBwYXJhbXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLy93aGljaCB0ZW1wbGF0ZSB0byB1c2UKJHN1bW1hcnl0ZW1wbGF0ZSA9ICdzdW1tYXJ5XycuJHRoaXMtPkdldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X3N1bW1hcnlfdGVtcGxhdGUnKTsKaWYoaXNzZXQoJHBhcmFtc1snc3VtbWFyeXRlbXBsYXRlJ10pKSB7Cgkkc3VtbWFyeXRlbXBsYXRlID0gJ3N1bW1hcnlfJy4kcGFyYW1zWydzdW1tYXJ5dGVtcGxhdGUnXTsKfQoKaWYoaXNzZXQoJHBhcmFtc1snZGV0YWlscGFnZSddKSkgewoKCSRobSA9IGNtc21zKCktPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsKCSRyZXR1cm5pZCA9ICRobS0+c3VyZUdldE5vZGVCeUFsaWFzKCRwYXJhbXNbJ2RldGFpbHBhZ2UnXSktPkdldElkKCk7Cn0KCiRkZWJ1ZyA9IChpc3NldCgkcGFyYW1zWydkZWJ1ZyddKSA/IHRydWUgOiBmYWxzZSk7CiRpbmxpbmUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGlzcGxheV9pbmxpbmUnLCAwKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGl0ZW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRpdGVtX3F1ZXJ5LT5BcHBlbmRUbyhMaXN0SXQyUXVlcnk6OlZBUlRZUEVfV0hFUkUsICdBLmFjdGl2ZSA9IDEnKTsKJHJlc3VsdCA9ICRpdGVtX3F1ZXJ5LT5FeGVjdXRlKHRydWUpOwoKJGl0ZW1zID0gYXJyYXkoKTsKd2hpbGUoJHJlc3VsdCAmJiAkcm93ID0gJHJlc3VsdC0+RmV0Y2hSb3coKSkgewoKCSRvbmVyb3cgPSAkdGhpcy0+TG9hZEl0ZW1CeUlkKCRyb3dbJ2l0ZW1faWQnXSk7CgoJJGxpbmtwYXJhbXMgPSBhcnJheSgpOwoJJGxpbmtwYXJhbXNbJ2l0ZW0nXSAJCQk9ICRvbmVyb3ctPmFsaWFzOwoJCgkvL2xpc3RpdDJfdXRpbHM6OmNsZWFuX3BhcmFtcygkcGFyYW1zLCAkdGhpcy0+YWxsb3dlZF9wYXJhbXMsIHRydWUpOwoJJGxpbmtwYXJhbXMgPSBhcnJheV9tZXJnZSgkbGlua3BhcmFtcywgJHBhcmFtcyk7CgoJJG9uZXJvdy0+dXJsID0gJHRoaXMtPkNyZWF0ZVByZXR0eUxpbmsoJGlkLCAnZGV0YWlsJywgJHJldHVybmlkLCAnJywgJGxpbmtwYXJhbXMsICcnLCB0cnVlLCAkaW5saW5lKTsKCgkkaXRlbXNbJHJvd1snaXRlbV9pZCddXSA9ICRvbmVyb3c7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGNhdGVnb3J5CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKGlzc2V0KCRwYXJhbXNbJ2lkX2hpZXJhcmNoeSddKSkgewoKCSRjYXRlZ29yeSA9ICR0aGlzLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2lkX2hpZXJhcmNoeScsICRwYXJhbXNbJ2lkX2hpZXJhcmNoeSddKTsKCSRzbWFydHktPmFzc2lnbignY2F0ZWdvcnknLCAkY2F0ZWdvcnkpOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHBhZ2VudW1iZXIgPSAkaXRlbV9xdWVyeS0+R2V0UGFnZU51bWJlcigpOwokcGFnZWNvdW50ID0gJGl0ZW1fcXVlcnktPkdldFBhZ2VDb3VudCgpOwoKLy8gQXNzaWduIHNvbWUgcGFnaW5hdGlvbiB2YXJpYWJsZXMgdG8gc21hcnR5CmlmKCRwYWdlbnVtYmVyID09IDEpIHsKCgkkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywkdGhpcy0+TW9kTGFuZygncHJldnBhZ2UnKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZScsJHRoaXMtPk1vZExhbmcoJ2ZpcnN0cGFnZScpKTsKfSBlbHNlIHsKCgkkcGFyYW1zWydwYWdlbnVtYmVyJ10gPSAkcGFnZW51bWJlci0xOwoJJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZScsICR0aGlzLT5DcmVhdGVQcmV0dHlMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICR0aGlzLT5Nb2RMYW5nKCdwcmV2cGFnZScpLCRwYXJhbXMsICcnLCBmYWxzZSwgJGlubGluZSkpOwoJJHNtYXJ0eS0+YXNzaWduKCdwcmV2dXJsJywgJHRoaXMtPkNyZWF0ZVByZXR0eUxpbmsoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwnJywgJHBhcmFtcywgJycsIHRydWUsICRpbmxpbmUpKTsKCSRwYXJhbXNbJ3BhZ2VudW1iZXInXSA9IDE7Cgkkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZScsICR0aGlzLT5DcmVhdGVQcmV0dHlMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICR0aGlzLT5Nb2RMYW5nKCdmaXJzdHBhZ2UnKSwkcGFyYW1zLCAnJywgZmFsc2UsICRpbmxpbmUpKTsKCSRzbWFydHktPmFzc2lnbignZmlyc3R1cmwnLCAkdGhpcy0+Q3JlYXRlUHJldHR5TGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCcnLCAkcGFyYW1zLCAnJywgdHJ1ZSwgJGlubGluZSkpOwp9CgppZigkcGFnZW51bWJlciA+PSAkcGFnZWNvdW50KSB7CgoJJHNtYXJ0eS0+YXNzaWduKCduZXh0cGFnZScsJHRoaXMtPk1vZExhbmcoJ25leHRwYWdlJykpOwoJJHNtYXJ0eS0+YXNzaWduKCdsYXN0cGFnZScsJHRoaXMtPk1vZExhbmcoJ2xhc3RwYWdlJykpOwp9IGVsc2UgewoKCSRwYXJhbXNbJ3BhZ2VudW1iZXInXSA9ICRwYWdlbnVtYmVyKzE7Cgkkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlJywgJHRoaXMtPkNyZWF0ZVByZXR0eUxpbmsoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHRoaXMtPk1vZExhbmcoJ25leHRwYWdlJyksICRwYXJhbXMsICcnLCBmYWxzZSwgJGlubGluZSkpOwoJJHNtYXJ0eS0+YXNzaWduKCduZXh0dXJsJywgJHRoaXMtPkNyZWF0ZVByZXR0eUxpbmsoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJycsICRwYXJhbXMsICcnLCB0cnVlLCAkaW5saW5lKSk7CgkkcGFyYW1zWydwYWdlbnVtYmVyJ109JHBhZ2Vjb3VudDsKCSRzbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLCAkdGhpcy0+Q3JlYXRlUHJldHR5TGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkdGhpcy0+TW9kTGFuZygnbGFzdHBhZ2UnKSwgJHBhcmFtcywgJycsIGZhbHNlLCAkaW5saW5lKSk7Cgkkc21hcnR5LT5hc3NpZ24oJ2xhc3R1cmwnLCAkdGhpcy0+Q3JlYXRlUHJldHR5TGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAnJywgJHBhcmFtcywgJycsIHRydWUsICRpbmxpbmUpKTsKfQoKJHNtYXJ0eS0+YXNzaWduKCdwYWdlbnVtYmVyJywkcGFnZW51bWJlcik7CiRzbWFydHktPmFzc2lnbigncGFnZWNvdW50JywkcGFnZWNvdW50KTsKCiRwYWdlbGlua3MgPSBhcnJheSgpOwp3aGlsZSgkcGFnZWNvdW50KSB7CgoJJG9iaiA9IG5ldyBzdGRDbGFzcygpOwoKCSRwYXJhbXNbJ3BhZ2VudW1iZXInXSA9ICRwYWdlY291bnQ7Cgkkb2JqLT5saW5rID0gJHRoaXMtPkNyZWF0ZVByZXR0eUxpbmsoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJHBhZ2Vjb3VudCwgJHBhcmFtcywgJycsIGZhbHNlLCAkaW5saW5lKTsKCSRvYmotPnVybCA9ICR0aGlzLT5DcmVhdGVQcmV0dHlMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICcnLCAkcGFyYW1zLCAnJywgdHJ1ZSwgJGlubGluZSk7CgkKCSRwYWdlbGlua3NbJHBhZ2Vjb3VudF0gPSAkb2JqOwoJJHBhZ2Vjb3VudC0tOwp9CgokcGFnZWxpbmtzID0gYXJyYXlfcmV2ZXJzZSgkcGFnZWxpbmtzLCB0cnVlKTsKCiRzbWFydHktPmFzc2lnbigncGFnZWxpbmtzJywgJHBhZ2VsaW5rcyk7CiRzbWFydHktPmFzc2lnbignaXRlbXMnLCAkaXRlbXMpOwokc21hcnR5LT5hc3NpZ24oJ3VwbG9hZHNfdXJsJywgJGNvbmZpZ1sndXBsb2Fkc191cmwnXSk7IC8vIERlcHJlY2F0ZWQKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkc3VtbWFyeXRlbXBsYXRlKTsKCmlmKCRkZWJ1ZykgCgkkc21hcnR5LT5kaXNwbGF5KCdzdHJpbmc6PHByZT57JGl0ZW1zfEBwcmludF9yfTwvcHJlPicpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/framework/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfaXRlbScpKQoJcmV0dXJuOwoJCmlmIChpc3NldCgkcGFyYW1zWydtZXNzYWdlJ10pKSB7CgllY2hvICR0aGlzLT5TaG93TWVzc2FnZSgkdGhpcy0+TW9kTGFuZygkcGFyYW1zWydtZXNzYWdlJ10pKTsKfQoKaWYgKGlzc2V0KCRwYXJhbXNbJ2Vycm9ycyddKSAmJiBjb3VudCgkcGFyYW1zWydlcnJvcnMnXSkpIHsKCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHBhcmFtc1snZXJyb3JzJ10pOwp9CgppZiAoIWVtcHR5KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkpIHsKCSR0YWIgPSAkcGFyYW1zWydhY3RpdmVfdGFiJ107Cn0gZWxzZSB7CgkkdGFiID0gJ2l0ZW10YWInOwp9CgplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdpdGVtdGFiJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2l0ZW1fcGx1cmFsJywgJycpLCAoJHRhYiA9PSAnaXRlbXRhYicpKTsKCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIHsKCWVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignY2F0ZWdvcnl0YWInLCAkdGhpcy0+TW9kTGFuZygnY2F0ZWdvcmllcycpLCAoJHRhYiA9PSAnY2F0ZWdvcnl0YWInKSk7Cn0KCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X29wdGlvbicpKSB7CgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2ZpZWxkZGVmdGFiJywgJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmcycpLCAoJHRhYiA9PSAnZmllbGRkZWZ0YWInKSk7CgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3RlbXBsYXRldGFiJywgJHRoaXMtPk1vZExhbmcoJ3RlbXBsYXRlcycpLCAoJHRhYiA9PSAndGVtcGxhdGV0YWInKSk7CgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ29wdGlvbnRhYicsICR0aGlzLT5Nb2RMYW5nKCdvcHRpb25zJyksICgkdGFiID09ICdvcHRpb250YWInKSk7Cn0KCmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignaXRlbXRhYicsICRwYXJhbXMpOwppbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy9mdW5jdGlvbi5hZG1pbl9pdGVtdGFiLnBocCc7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKaWYgKCR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfY2F0ZWdvcnknKSkgewoJZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2NhdGVnb3J5dGFiJywgJHBhcmFtcyk7CglpbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy9mdW5jdGlvbi5hZG1pbl9jYXRlZ29yeXRhYi5waHAnOwoJZWNobyAkdGhpcy0+RW5kVGFiKCk7Cn0KCmlmICgkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X29wdGlvbicpKSB7CgllY2hvICR0aGlzLT5TdGFydFRhYignZmllbGRkZWZ0YWInLCAkcGFyYW1zKTsKCWluY2x1ZGUgZGlybmFtZShfX0ZJTEVfXykgLiAnL2Z1bmN0aW9uLmFkbWluX2ZpZWxkZGVmdGFiLnBocCc7CgllY2hvICR0aGlzLT5FbmRUYWIoKTsKCQoJZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3RlbXBsYXRldGFiJywgJHBhcmFtcyk7CglpbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy9mdW5jdGlvbi5hZG1pbl90ZW1wbGF0ZXRhYi5waHAnOwoJZWNobyAkdGhpcy0+RW5kVGFiKCk7CgkKCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdvcHRpb250YWInLCAkcGFyYW1zKTsKCWluY2x1ZGUgZGlybmFtZShfX0ZJTEVfXykgLiAnL2Z1bmN0aW9uLmFkbWluX29wdGlvbnRhYi5waHAnOwoJZWNobyAkdGhpcy0+RW5kVGFiKCk7Cn0KCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/framework/action.detail.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghaXNzZXQoJHBhcmFtc1snaXRlbSddKSkgewogICAgZGllKCdtaXNzaW5nIHBhcmFtZXRlciwgdGhpcyBzaG91bGQgbm90IGhhcHBlbicpOwp9CgokdGVtcGxhdGUgPSAnZGV0YWlsXycuJHRoaXMtPkdldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2RldGFpbF90ZW1wbGF0ZScpOwppZiAoaXNzZXQoJHBhcmFtc1snZGV0YWlsdGVtcGxhdGUnXSkpIHsKCgkkdGVtcGxhdGUgPSAnZGV0YWlsXycuJHBhcmFtc1snZGV0YWlsdGVtcGxhdGUnXTsKfQoKaWYoaXNzZXQoJHBhcmFtc1snaXRlbSddKSkgewoJY21zX3V0aWxzOjpzZXRfYXBwX2RhdGEoJ2xpc3RpdDJfaXRlbScsICRwYXJhbXNbJ2l0ZW0nXSk7Cn0JCgokZGVidWcgPSAoaXNzZXQoJHBhcmFtc1snZGVidWcnXSkgPyB0cnVlIDogZmFsc2UpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEluaXQgaXRlbQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokaXRlbSA9ICR0aGlzLT5Mb2FkSXRlbUJ5SWRlbnRpZmllcignYWxpYXMnLCAkcGFyYW1zWydpdGVtJ10pOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRzbWFydHktPmFzc2lnbignaXRlbScsICRpdGVtKTsKCiRzbWFydHktPmFzc2lnbigncmV0dXJuX3VybCcsICR0aGlzLT5DcmVhdGVSZXR1cm5MaW5rKCRpZCwgJHJldHVybmlkLCAkdGhpcy0+TW9kTGFuZygncmV0dXJuX3VybCcpLCAkcGFyYW1zLCBmYWxzZSkpOyAvLyBEZXByZWNhdGVkCiRzbWFydHktPmFzc2lnbigncmV0dXJuX2xpbmsnLCAkdGhpcy0+Q3JlYXRlUmV0dXJuTGluaygkaWQsICRyZXR1cm5pZCwgJHRoaXMtPk1vZExhbmcoJ3JldHVybl91cmwnKSwgJHBhcmFtcywgZmFsc2UpKTsgCiRzbWFydHktPmFzc2lnbigncmV0dXJuX2hyZWYnLCAkdGhpcy0+Q3JlYXRlUmV0dXJuTGluaygkaWQsICRyZXR1cm5pZCwgJycsICRwYXJhbXMsIHRydWUpKTsgCiRzbWFydHktPmFzc2lnbigndXBsb2Fkc191cmwnLCAkY29uZmlnWyd1cGxvYWRzX3VybCddKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgkdGVtcGxhdGUpOwoKaWYoJGRlYnVnKSAKCSRzbWFydHktPmRpc3BsYXkoJ3N0cmluZzo8cHJlPnskaXRlbXxAcHJpbnRfcn08L3ByZT4nKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/framework/action.search.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ2hlY2sgcGFyYW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0ZW1wbGF0ZSA9ICdzZWFyY2hfJy4kdGhpcy0+R2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfc2VhcmNoX3RlbXBsYXRlJyk7CmlmKGlzc2V0KCRwYXJhbXNbJ3NlYXJjaHRlbXBsYXRlJ10pKSB7CgoJJHRlbXBsYXRlID0gJ3NlYXJjaF8nLiRwYXJhbXNbJ3NlYXJjaHRlbXBsYXRlJ107Cn0KCmlmKGlzc2V0KCRwYXJhbXNbJ3JldHVybnBhZ2UnXSkpIHsKCQoJJGhtID0gY21zbXMoKS0+R2V0SGllcmFyY2h5TWFuYWdlcigpOwoJJHJldHVybmlkID0gJGhtLT5zdXJlR2V0Tm9kZUJ5QWxpYXMoJHBhcmFtc1sncmV0dXJucGFnZSddKS0+R2V0SWQoKTsKfQoKJGRlYnVnID0gKGlzc2V0KCRwYXJhbXNbJ2RlYnVnJ10pID8gdHJ1ZSA6IGZhbHNlKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBHcmFwIHRlbXBsYXRlCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0ZW1wbGF0ZSA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgkdGVtcGxhdGUpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEluaXQgZmllbGRkZWZzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmKHN0cmlwb3MoJHRlbXBsYXRlLCAnJGZpZWxkZGVmcycpKSB7IC8vIDwtIExvYWQgZmllbGRkZWZzIG9ubHkgaWYgd2UgaGF2ZSB2YXJpYWJsZSByZXF1ZXN0IG9uIHRlbXBsYXRlCgoJJGZpbHRlcnMgPSBhcnJheSgpOwoJaWYoIWVtcHR5KCRwYXJhbXNbJ2ZpbHRlciddKSkgewoKCQkkZmlsdGVycyA9IGV4cGxvZGUoJywnLCAkcGFyYW1zWydmaWx0ZXInXSk7Cgl9CgoJJGZpZWxkZGVmcyA9ICR0aGlzLT5HZXRGaWVsZERlZnMoJGZpbHRlcnMpOwoJZm9yZWFjaCgkZmllbGRkZWZzIGFzICRmaWVsZGRlZikgewoKCQkkZmllbGRkZWYtPnZhbHVlcyA9ICR0aGlzLT5HZXRWYWx1ZXNGb3JGaWVsZERlZigkZmllbGRkZWYtPkdldElkKCkpOwoJfQoKCSRzbWFydHktPmFzc2lnbignZmllbGRkZWZzJywgJGZpZWxkZGVmcyk7Cgkkc21hcnR5LT5hc3NpZ24oJ2ZpbHRlcnByb21wdCcsICR0aGlzLT5Nb2RMYW5nKCdmaWx0ZXJwcm9tcHQnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9wbHVyYWwnLCAnJykpKTsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi8vIERFUFJFQ0FURUQgc3dpdGNoZWQgeyRtb2QtPk1vZExhbmcoJycpfSBpbiB0ZW1wbGF0ZXMKJHNtYXJ0eS0+YXNzaWduKCdzZWFyY2hwcm9tcHQnLCAkdGhpcy0+TW9kTGFuZygnc2VhcmNoZm9yJykpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdHRleHQnLCAkdGhpcy0+TW9kTGFuZygnc2VhcmNoJykpOwokc21hcnR5LT5hc3NpZ24oJ2FsbCcsICR0aGlzLT5Nb2RMYW5nKCdhbGwnKSk7Ci8vIEVORCBERVBSRUNBVEVEIHN3aXRjaGVkIHskbW9kLT5Nb2RMYW5nKCcnKX0gaW4gdGVtcGxhdGVzCgokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScsIGZhbHNlLCAnJywgJHBhcmFtcykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1lbmQnLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVhbGlhcycsICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkdGVtcGxhdGUpOwoKaWYoJGRlYnVnKSAKCSRzbWFydHktPmRpc3BsYXkoJ3N0cmluZzo8cHJlPnskZmllbGRkZWZzfEBwcmludF9yfTwvcHJlPicpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/framework/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/framework/css/backend.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogQmFja2VuZCAqLwpkaXYucGFnZWNvbnRhaW5lciBvbHsKCW1hcmdpbjogMCAwIDFlbSAwOwoJcGFkZGluZy1sZWZ0OjE1cHg7Cn0KZGl2LnBhZ2Vjb250YWluZXIgb2wgbGl7CglsaXN0LXN0eWxlOmRlY2ltYWw7Cn0KCmRpdi5wYWdlY29udGFpbmVyIC5saXN0aXRfZmllbGRzZXQgewoJbWFyZ2luOiAyMHB4IDAgMjBweCA1JTsKCW1heC13aWR0aDogODAlOwoJLW1vei1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDVweCA1cHg7Cgktd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDsKCWJvcmRlci1yYWRpdXM6IDVweCA1cHggNXB4IDVweDsKfQpkaXYucGFnZWNvbnRhaW5lciAubGlzdGl0X2ZpZWxkc2V0Lk9uZUVsZXZlbiB7CgltYXJnaW46IDIwcHggMDsKfQpkaXYucGFnZWNvbnRhaW5lciAubGlzdGl0X2ZpZWxkc2V0IC5wYWdlaW5wdXQsCmRpdi5wYWdlY29udGFpbmVyIC5saXN0aXRfZmllbGRzZXQgLnBhZ2V0ZXh0LApkaXYucGFnZWNvbnRhaW5lciAubGlzdGl0X2ZpZWxkc2V0IC5pbnB1dGhlbHB7CgltYXJnaW4tbGVmdDogMSU7Cn0KLyogUXVpY2sgc2VhcmNoICovCi5pdGVtLXNlYXJjaCB7CglmbG9hdDpyaWdodDsKCXRleHQtYWxpZ246IHJpZ2h0OwoJd2lkdGg6IDUwJTsKCW1hcmdpbi1ib3R0b206IDVweDsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKfQovKiBUYWJsZSBTb3J0ZXIgKi8KLyogTkNsZWFuR3JleSBUaGVtZSAqLwp0YWJsZS5wYWdldGFibGUuTkNsZWFuR3JleSB0aGVhZCB0ciB7CgliYWNrZ3JvdW5kOiAjQ0NDQ0NDIHVybCguLi8uLi8uLi8uLi9hZG1pbi90aGVtZXMvTkNsZWFuR3JleS9pbWFnZXMvbGF5b3V0L2Jhbm5lci5wbmcpIHJlcGVhdC14IGxlZnQgLTMzcHg7Cn0KdGFibGUucGFnZXRhYmxlLk5DbGVhbkdyZXkgdGguaGVhZGVyIHsKCWJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvbW9kdWxldWkvc29ydGFibGUuZ2lmKSBjZW50ZXIgcmlnaHQgbm8tcmVwZWF0OwoJY3Vyc29yOiBwb2ludGVyOwp9CnRhYmxlLnBhZ2V0YWJsZS5OQ2xlYW5HcmV5IHRoLmhlYWRlclNvcnRVcCB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL21vZHVsZXVpL3NvcnRhYmxlX2FzYy5naWYpOwp9CnRhYmxlLnBhZ2V0YWJsZS5OQ2xlYW5HcmV5IHRoLmhlYWRlclNvcnREb3duIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvbW9kdWxldWkvc29ydGFibGVfZGVzYy5naWYpOwp9Ci8qIE9uZUVsZXZlbiBUaGVtZSAqLwp0YWJsZS5wYWdldGFibGUuT25lRWxldmVuIHRoZWFkIHRyIHsKCWJhY2tncm91bmQ6ICMyMzIzMjMgdXJsKC4uLy4uLy4uLy4uL2FkbWluL3RoZW1lcy9PbmVFbGV2ZW4vaW1hZ2VzL2xheW91dC9zcHJpdGVfcmVwZWF0eC5wbmcpIDgzMXB4IC05OXB4IHJlcGVhdC14Owp9CnRhYmxlLnBhZ2V0YWJsZS5PbmVFbGV2ZW4gdGguaGVhZGVyIHsKCWJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvbW9kdWxldWkvc29ydGFibGVfb3JhbmdlLmdpZikgY2VudGVyIHJpZ2h0IG5vLXJlcGVhdDsKCWN1cnNvcjogcG9pbnRlcjsKfQp0YWJsZS5wYWdldGFibGUuT25lRWxldmVuIHRoLmhlYWRlclNvcnRVcCB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL21vZHVsZXVpL3NvcnRhYmxlX2FzY19vcmFuZ2UuZ2lmKTsKfQp0YWJsZS5wYWdldGFibGUuT25lRWxldmVuIHRoLmhlYWRlclNvcnREb3duIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvbW9kdWxldWkvc29ydGFibGVfZGVzY19vcmFuZ2UuZ2lmKTsKfQovKiBnbG9iYWwgKi8KdGFibGUucGFnZXRhYmxlIHRoLmhlYWRlci5uby1zb3J0IHsKCWJhY2tncm91bmQ6IHRyYW5zcGFyZW50IG5vbmU7CgljdXJzb3I6IHBvaW50ZXI7Cn0KdGFibGUucGFnZXRhYmxlIHRoLmhlYWRlclNvcnRVcC5uby1zb3J0IHsKCWJhY2tncm91bmQtaW1hZ2U6IG5vbmU7Cn0KdGFibGUucGFnZXRhYmxlIHRoLmhlYWRlclNvcnREb3duLm5vLXNvcnQgewoJYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKfQouY29udGVudCB0ci51aS1zb3J0YWJsZS1oZWxwZXIgewoJYm94LXNoYWRvdzogMCAycHggNHB4IDAgIzVmNWY1Zgp9Ci5wYWdlc2hvd3Jvd3N7CgljbGVhcjpib3RoOwp9CmEudGh1bWIgewoJZGlzcGxheTogaW5saW5lLWJsb2NrOwoJd2lkdGg6IGF1dG87CgltYXJnaW46IDVweAp9CmEudGh1bWIgaW1nIHsKCWJvcmRlcjogbm9uZQp9CgoucGFnZW9wdGlvbnMgYSB7CgltYXJnaW4tcmlnaHQ6IDVweDsKfQoKdWwubGlzdGl0Mi1jb2x1bW4tbGlzdCB7CgkKCW1hcmdpbjogMCAhaW1wb3J0YW50Owp9Cgp1bC5saXN0aXQyLWNvbHVtbi1saXN0IGxpIHsKCglmbG9hdDogbGVmdDsKCW1hcmdpbi1yaWdodDogNCU7CgltYXJnaW4tYm90dG9tOiAxMHB4OwoJbGlzdC1zdHlsZTogbm9uZTsKfQ==]]></data>
	</file>
	<file>
	  <filename>/framework/css/colorbox.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICAgIENvbG9yQm94IENvcmUgU3R5bGU6CiAgICBUaGUgZm9sbG93aW5nIENTUyBpcyBjb25zaXN0ZW50IGJldHdlZW4gZXhhbXBsZSB0aGVtZXMgYW5kIHNob3VsZCBub3QgYmUgYWx0ZXJlZC4KKi8KI2NvbG9yYm94LCAjY2JveE92ZXJsYXksICNjYm94V3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgei1pbmRleDo5OTk5OyBvdmVyZmxvdzpoaWRkZW47fQojY2JveE92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlO30KI2Nib3hNaWRkbGVMZWZ0LCAjY2JveEJvdHRvbUxlZnR7Y2xlYXI6bGVmdDt9CiNjYm94Q29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt9CiNjYm94TG9hZGVkQ29udGVudHtvdmVyZmxvdzphdXRvO30KI2Nib3hUaXRsZXttYXJnaW46MDt9CiNjYm94TG9hZGluZ092ZXJsYXksICNjYm94TG9hZGluZ0dyYXBoaWN7cG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlO30KI2Nib3hQcmV2aW91cywgI2Nib3hOZXh0LCAjY2JveENsb3NlLCAjY2JveFNsaWRlc2hvd3tjdXJzb3I6cG9pbnRlcjt9Ci5jYm94UGhvdG97ZmxvYXQ6bGVmdDsgbWFyZ2luOmF1dG87IGJvcmRlcjowOyBkaXNwbGF5OmJsb2NrOyBtYXgtd2lkdGg6bm9uZTt9Ci5jYm94SWZyYW1le3dpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBkaXNwbGF5OmJsb2NrOyBib3JkZXI6MDt9CiNjb2xvcmJveCwgI2Nib3hDb250ZW50LCAjY2JveExvYWRlZENvbnRlbnR7Ym94LXNpemluZzpjb250ZW50LWJveDt9CgovKiAKICAgIFVzZXIgU3R5bGU6CiAgICBDaGFuZ2UgdGhlIGZvbGxvd2luZyBzdHlsZXMgdG8gbW9kaWZ5IHRoZSBhcHBlYXJhbmNlIG9mIENvbG9yQm94LiAgVGhleSBhcmUKICAgIG9yZGVyZWQgJiB0YWJiZWQgaW4gYSB3YXkgdGhhdCByZXByZXNlbnRzIHRoZSBuZXN0aW5nIG9mIHRoZSBnZW5lcmF0ZWQgSFRNTC4KKi8KI2Nib3hPdmVybGF5e2JhY2tncm91bmQ6I2ZmZjt9CiNjb2xvcmJveHt9CiAgICAjY2JveENvbnRlbnR7bWFyZ2luLXRvcDozMnB4OyBvdmVyZmxvdzp2aXNpYmxlO30KICAgICAgICAuY2JveElmcmFtZXtiYWNrZ3JvdW5kOiNmZmY7fQogICAgICAgICNjYm94RXJyb3J7cGFkZGluZzo1MHB4OyBib3JkZXI6MXB4IHNvbGlkICNjY2M7fQogICAgICAgICNjYm94TG9hZGVkQ29udGVudHtiYWNrZ3JvdW5kOiMwMDA7IHBhZGRpbmc6MXB4O30KICAgICAgICAjY2JveExvYWRpbmdHcmFwaGlje2JhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1hbmltX2Jhc2ljXzE2eDE2LmdpZikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7fQogICAgICAgICNjYm94TG9hZGluZ092ZXJsYXl7YmFja2dyb3VuZDojZmZmO30KICAgICAgICAjY2JveFRpdGxle3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6LTIycHg7IGxlZnQ6MDsgY29sb3I6IzAwMDt9CiAgICAgICAgI2Nib3hDdXJyZW50e3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6LTIycHg7IHJpZ2h0OjIwNXB4OyB0ZXh0LWluZGVudDotOTk5OXB4O30KICAgICAgICAjY2JveFNsaWRlc2hvdywgI2Nib3hQcmV2aW91cywgI2Nib3hOZXh0LCAjY2JveENsb3Nle3RleHQtaW5kZW50Oi05OTk5cHg7IHdpZHRoOjIwcHg7IGhlaWdodDoyMHB4OyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOi0yMHB4OyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29sb3Jib3gvY29udHJvbHMucG5nKSBuby1yZXBlYXQgMCAwO30KICAgICAgICAjY2JveFByZXZpb3Vze2JhY2tncm91bmQtcG9zaXRpb246MHB4IDBweDsgcmlnaHQ6NDRweDt9CiAgICAgICAgI2Nib3hQcmV2aW91czpob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjBweCAtMjVweDt9CiAgICAgICAgI2Nib3hOZXh0e2JhY2tncm91bmQtcG9zaXRpb246LTI1cHggMHB4OyByaWdodDoyMnB4O30KICAgICAgICAjY2JveE5leHQ6aG92ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjotMjVweCAtMjVweDt9CiAgICAgICAgI2Nib3hDbG9zZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOi01MHB4IDBweDsgcmlnaHQ6MDt9CiAgICAgICAgI2Nib3hDbG9zZTpob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOi01MHB4IC0yNXB4O30KICAgICAgICAuY2JveFNsaWRlc2hvd19vbiAjY2JveFByZXZpb3VzLCAuY2JveFNsaWRlc2hvd19vZmYgI2Nib3hQcmV2aW91c3tyaWdodDo2NnB4O30KICAgICAgICAuY2JveFNsaWRlc2hvd19vbiAjY2JveFNsaWRlc2hvd3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi03NXB4IC0yNXB4OyByaWdodDo0NHB4O30KICAgICAgICAuY2JveFNsaWRlc2hvd19vbiAjY2JveFNsaWRlc2hvdzpob3ZlcntiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMDBweCAtMjVweDt9CiAgICAgICAgLmNib3hTbGlkZXNob3dfb2ZmICNjYm94U2xpZGVzaG93e2JhY2tncm91bmQtcG9zaXRpb246LTEwMHB4IDBweDsgcmlnaHQ6NDRweDt9CiAgICAgICAgLmNib3hTbGlkZXNob3dfb2ZmICNjYm94U2xpZGVzaG93OmhvdmVye2JhY2tncm91bmQtcG9zaXRpb246LTc1cHggLTI1cHg7fQo=]]></data>
	</file>
	<file>
	  <filename>/framework/css/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/framework/css/jquery-ui-1.8.2.custom.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKKiBqUXVlcnkgVUkgQ1NTIEZyYW1ld29yawoqIENvcHlyaWdodCAoYykgMjAxMCBBVVRIT1JTLnR4dCAoaHR0cDovL2pxdWVyeXVpLmNvbS9hYm91dCkKKiBEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgKE1JVC1MSUNFTlNFLnR4dCkgYW5kIEdQTCAoR1BMLUxJQ0VOU0UudHh0KSBsaWNlbnNlcy4KKi8KCi8qIExheW91dCBoZWxwZXJzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktaGVscGVyLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH0KLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogLTk5OTk5OTk5cHg7IH0KLnVpLWhlbHBlci1yZXNldCB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgYm9yZGVyOiAwOyBvdXRsaW5lOiAwOyBsaW5lLWhlaWdodDogMS4zOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtc2l6ZTogMTAwJTsgbGlzdC1zdHlsZTogbm9uZTsgfQoudWktaGVscGVyLWNsZWFyZml4OmFmdGVyIHsgY29udGVudDogIi4iOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAwOyBjbGVhcjogYm90aDsgdmlzaWJpbGl0eTogaGlkZGVuOyB9Ci51aS1oZWxwZXItY2xlYXJmaXggeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0KLyogcmVxdWlyZWQgY29tbWVudCBmb3IgY2xlYXJmaXggdG8gd29yayBpbiBPcGVyYSBcKi8KKiBodG1sIC51aS1oZWxwZXItY2xlYXJmaXggeyBoZWlnaHQ6MSU7IH0KLnVpLWhlbHBlci1jbGVhcmZpeCB7IGRpc3BsYXk6YmxvY2s7IH0KLyogZW5kIGNsZWFyZml4ICovCi51aS1oZWxwZXItemZpeCB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IHRvcDogMDsgbGVmdDogMDsgcG9zaXRpb246IGFic29sdXRlOyBvcGFjaXR5OiAwOyBmaWx0ZXI6QWxwaGEoT3BhY2l0eT0wKTsgfQoKCi8qIEludGVyYWN0aW9uIEN1ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1zdGF0ZS1kaXNhYmxlZCB7IGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50OyB9CgoKLyogSWNvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgovKiBzdGF0ZXMgYW5kIGltYWdlcyAqLwoudWktaWNvbiB7IGRpc3BsYXk6IGJsb2NrOyB0ZXh0LWluZGVudDogLTk5OTk5cHg7IG92ZXJmbG93OiBoaWRkZW47IGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH0KCgovKiBNaXNjIHZpc3VhbHMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgovKiBPdmVybGF5cyAqLwoudWktd2lkZ2V0LW92ZXJsYXkgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfQoKCi8qCiogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsKKiBDb3B5cmlnaHQgKGMpIDIwMTAgQVVUSE9SUy50eHQgKGh0dHA6Ly9qcXVlcnl1aS5jb20vYWJvdXQpCiogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIChNSVQtTElDRU5TRS50eHQpIGFuZCBHUEwgKEdQTC1MSUNFTlNFLnR4dCkgbGljZW5zZXMuCiogVG8gdmlldyBhbmQgbW9kaWZ5IHRoaXMgdGhlbWUsIHZpc2l0IGh0dHA6Ly9qcXVlcnl1aS5jb20vdGhlbWVyb2xsZXIvP2ZmRGVmYXVsdD1UcmVidWNoZXQlMjBNUywlMjBUYWhvbWEsJTIwVmVyZGFuYSwlMjBBcmlhbCwlMjBzYW5zLXNlcmlmJmZ3RGVmYXVsdD1ib2xkJmZzRGVmYXVsdD0xLjFlbSZjb3JuZXJSYWRpdXM9NHB4JmJnQ29sb3JIZWFkZXI9ZjZhODI4JmJnVGV4dHVyZUhlYWRlcj0xMl9nbG9zc193YXZlLnBuZyZiZ0ltZ09wYWNpdHlIZWFkZXI9MzUmYm9yZGVyQ29sb3JIZWFkZXI9ZTc4ZjA4JmZjSGVhZGVyPWZmZmZmZiZpY29uQ29sb3JIZWFkZXI9ZmZmZmZmJmJnQ29sb3JDb250ZW50PWVlZWVlZSZiZ1RleHR1cmVDb250ZW50PTAzX2hpZ2hsaWdodF9zb2Z0LnBuZyZiZ0ltZ09wYWNpdHlDb250ZW50PTEwMCZib3JkZXJDb2xvckNvbnRlbnQ9ZGRkZGRkJmZjQ29udGVudD0zMzMzMzMmaWNvbkNvbG9yQ29udGVudD0yMjIyMjImYmdDb2xvckRlZmF1bHQ9ZjZmNmY2JmJnVGV4dHVyZURlZmF1bHQ9MDJfZ2xhc3MucG5nJmJnSW1nT3BhY2l0eURlZmF1bHQ9MTAwJmJvcmRlckNvbG9yRGVmYXVsdD1jY2NjY2MmZmNEZWZhdWx0PTFjOTRjNCZpY29uQ29sb3JEZWZhdWx0PWVmOGMwOCZiZ0NvbG9ySG92ZXI9ZmRmNWNlJmJnVGV4dHVyZUhvdmVyPTAyX2dsYXNzLnBuZyZiZ0ltZ09wYWNpdHlIb3Zlcj0xMDAmYm9yZGVyQ29sb3JIb3Zlcj1mYmNiMDkmZmNIb3Zlcj1jNzc0MDUmaWNvbkNvbG9ySG92ZXI9ZWY4YzA4JmJnQ29sb3JBY3RpdmU9ZmZmZmZmJmJnVGV4dHVyZUFjdGl2ZT0wMl9nbGFzcy5wbmcmYmdJbWdPcGFjaXR5QWN0aXZlPTY1JmJvcmRlckNvbG9yQWN0aXZlPWZiZDg1MCZmY0FjdGl2ZT1lYjhmMDAmaWNvbkNvbG9yQWN0aXZlPWVmOGMwOCZiZ0NvbG9ySGlnaGxpZ2h0PWZmZTQ1YyZiZ1RleHR1cmVIaWdobGlnaHQ9MDNfaGlnaGxpZ2h0X3NvZnQucG5nJmJnSW1nT3BhY2l0eUhpZ2hsaWdodD03NSZib3JkZXJDb2xvckhpZ2hsaWdodD1mZWQyMmYmZmNIaWdobGlnaHQ9MzYzNjM2Jmljb25Db2xvckhpZ2hsaWdodD0yMjhlZjEmYmdDb2xvckVycm9yPWI4MTkwMCZiZ1RleHR1cmVFcnJvcj0wOF9kaWFnb25hbHNfdGhpY2sucG5nJmJnSW1nT3BhY2l0eUVycm9yPTE4JmJvcmRlckNvbG9yRXJyb3I9Y2QwYTBhJmZjRXJyb3I9ZmZmZmZmJmljb25Db2xvckVycm9yPWZmZDI3YSZiZ0NvbG9yT3ZlcmxheT02NjY2NjYmYmdUZXh0dXJlT3ZlcmxheT0wOF9kaWFnb25hbHNfdGhpY2sucG5nJmJnSW1nT3BhY2l0eU92ZXJsYXk9MjAmb3BhY2l0eU92ZXJsYXk9NTAmYmdDb2xvclNoYWRvdz0wMDAwMDAmYmdUZXh0dXJlU2hhZG93PTAxX2ZsYXQucG5nJmJnSW1nT3BhY2l0eVNoYWRvdz0xMCZvcGFjaXR5U2hhZG93PTIwJnRoaWNrbmVzc1NoYWRvdz01cHgmb2Zmc2V0VG9wU2hhZG93PS01cHgmb2Zmc2V0TGVmdFNoYWRvdz0tNXB4JmNvcm5lclJhZGl1c1NoYWRvdz01cHgKKi8KCgovKiBDb21wb25lbnQgY29udGFpbmVycwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLnVpLXdpZGdldCB7IGZvbnQtZmFtaWx5OiBUcmVidWNoZXQgTVMsIFRhaG9tYSwgVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMS4xZW07IH0KLnVpLXdpZGdldCAudWktd2lkZ2V0IHsgZm9udC1zaXplOiAxZW07IH0KLnVpLXdpZGdldCBpbnB1dCwgLnVpLXdpZGdldCBzZWxlY3QsIC51aS13aWRnZXQgdGV4dGFyZWEsIC51aS13aWRnZXQgYnV0dG9uIHsgZm9udC1mYW1pbHk6IFRyZWJ1Y2hldCBNUywgVGFob21hLCBWZXJkYW5hLCBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxZW07IH0KLnVpLXdpZGdldC1jb250ZW50IHsgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDsgYmFja2dyb3VuZDogI2VlZWVlZSB1cmwoLi4vLi4vaW1hZ2VzL2pxdWVyeXVpL3VpLWJnX2hpZ2hsaWdodC1zb2Z0XzEwMF9lZWVlZWVfMXgxMDAucG5nKSA1MCUgdG9wIHJlcGVhdC14OyBjb2xvcjogIzMzMzMzMzsgfQoudWktd2lkZ2V0LWNvbnRlbnQgYSB7IGNvbG9yOiAjMzMzMzMzOyB9Ci51aS13aWRnZXQtaGVhZGVyIHsgYm9yZGVyOiAxcHggc29saWQgI2U3OGYwODsgYmFja2dyb3VuZDogI2Y2YTgyOCB1cmwoLi4vLi4vaW1hZ2VzL2pxdWVyeXVpL3VpLWJnX2dsb3NzLXdhdmVfMzVfZjZhODI4XzUwMHgxMDAucG5nKSA1MCUgNTAlIHJlcGVhdC14OyBjb2xvcjogI2ZmZmZmZjsgZm9udC13ZWlnaHQ6IGJvbGQ7IH0KLnVpLXdpZGdldC1oZWFkZXIgYSB7IGNvbG9yOiAjZmZmZmZmOyB9CgovKiBJbnRlcmFjdGlvbiBzdGF0ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1zdGF0ZS1kZWZhdWx0LCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kZWZhdWx0IHsgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYzsgYmFja2dyb3VuZDogI2Y2ZjZmNiB1cmwoLi4vLi4vaW1hZ2VzL2pxdWVyeXVpL3VpLWJnX2dsYXNzXzEwMF9mNmY2ZjZfMXg0MDAucG5nKSA1MCUgNTAlIHJlcGVhdC14OyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICMxYzk0YzQ7IH0KLnVpLXN0YXRlLWRlZmF1bHQgYSwgLnVpLXN0YXRlLWRlZmF1bHQgYTpsaW5rLCAudWktc3RhdGUtZGVmYXVsdCBhOnZpc2l0ZWQgeyBjb2xvcjogIzFjOTRjNDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9Ci51aS1zdGF0ZS1ob3ZlciwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1ob3ZlciwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhvdmVyLCAudWktc3RhdGUtZm9jdXMsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZm9jdXMsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1mb2N1cyB7IGJvcmRlcjogMXB4IHNvbGlkICNmYmNiMDk7IGJhY2tncm91bmQ6ICNmZGY1Y2UgdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1iZ19nbGFzc18xMDBfZmRmNWNlXzF4NDAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjYzc3NDA1OyB9Ci51aS1zdGF0ZS1ob3ZlciBhLCAudWktc3RhdGUtaG92ZXIgYTpob3ZlciB7IGNvbG9yOiAjYzc3NDA1OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0KLnVpLXN0YXRlLWFjdGl2ZSwgLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1hY3RpdmUsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUgeyBib3JkZXI6IDFweCBzb2xpZCAjZmJkODUwOyBiYWNrZ3JvdW5kOiAjZmZmZmZmIHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktYmdfZ2xhc3NfNjVfZmZmZmZmXzF4NDAwLnBuZykgNTAlIDUwJSByZXBlYXQteDsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjZWI4ZjAwOyB9Ci51aS1zdGF0ZS1hY3RpdmUgYSwgLnVpLXN0YXRlLWFjdGl2ZSBhOmxpbmssIC51aS1zdGF0ZS1hY3RpdmUgYTp2aXNpdGVkIHsgY29sb3I6ICNlYjhmMDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQoudWktd2lkZ2V0IDphY3RpdmUgeyBvdXRsaW5lOiBub25lOyB9CgovKiBJbnRlcmFjdGlvbiBDdWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktc3RhdGUtaGlnaGxpZ2h0LCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhpZ2hsaWdodCwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCAge2JvcmRlcjogMXB4IHNvbGlkICNmZWQyMmY7IGJhY2tncm91bmQ6ICNmZmU0NWMgdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1iZ19oaWdobGlnaHQtc29mdF83NV9mZmU0NWNfMXgxMDAucG5nKSA1MCUgdG9wIHJlcGVhdC14OyBjb2xvcjogIzM2MzYzNjsgfQoudWktc3RhdGUtaGlnaGxpZ2h0IGEsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtaGlnaGxpZ2h0IGEsLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCBhIHsgY29sb3I6ICMzNjM2MzY7IH0KLnVpLXN0YXRlLWVycm9yLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWVycm9yLCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZXJyb3Ige2JvcmRlcjogMXB4IHNvbGlkICNjZDBhMGE7IGJhY2tncm91bmQ6ICNiODE5MDAgdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1iZ19kaWFnb25hbHMtdGhpY2tfMThfYjgxOTAwXzQweDQwLnBuZykgNTAlIDUwJSByZXBlYXQ7IGNvbG9yOiAjZmZmZmZmOyB9Ci51aS1zdGF0ZS1lcnJvciBhLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWVycm9yIGEsIC51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1lcnJvciBhIHsgY29sb3I6ICNmZmZmZmY7IH0KLnVpLXN0YXRlLWVycm9yLXRleHQsIC51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3ItdGV4dCwgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yLXRleHQgeyBjb2xvcjogI2ZmZmZmZjsgfQoudWktcHJpb3JpdHktcHJpbWFyeSwgLnVpLXdpZGdldC1jb250ZW50IC51aS1wcmlvcml0eS1wcmltYXJ5LCAudWktd2lkZ2V0LWhlYWRlciAudWktcHJpb3JpdHktcHJpbWFyeSB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9Ci51aS1wcmlvcml0eS1zZWNvbmRhcnksIC51aS13aWRnZXQtY29udGVudCAudWktcHJpb3JpdHktc2Vjb25kYXJ5LCAgLnVpLXdpZGdldC1oZWFkZXIgLnVpLXByaW9yaXR5LXNlY29uZGFyeSB7IG9wYWNpdHk6IC43OyBmaWx0ZXI6QWxwaGEoT3BhY2l0eT03MCk7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IH0KLnVpLXN0YXRlLWRpc2FibGVkLCAudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRpc2FibGVkLCAudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGlzYWJsZWQgeyBvcGFjaXR5OiAuMzU7IGZpbHRlcjpBbHBoYShPcGFjaXR5PTM1KTsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfQoKLyogSWNvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgovKiBzdGF0ZXMgYW5kIGltYWdlcyAqLwoudWktaWNvbiB7IHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDE2cHg7IGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktaWNvbnNfMjIyMjIyXzI1NngyNDAucG5nKTsgfQoudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWljb24ge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktaWNvbnNfMjIyMjIyXzI1NngyNDAucG5nKTsgfQoudWktd2lkZ2V0LWhlYWRlciAudWktaWNvbiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1pY29uc19mZmZmZmZfMjU2eDI0MC5wbmcpOyB9Ci51aS1zdGF0ZS1kZWZhdWx0IC51aS1pY29uIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1pY29uc19lZjhjMDhfMjU2eDI0MC5wbmcpOyB9Ci51aS1zdGF0ZS1ob3ZlciAudWktaWNvbiwgLnVpLXN0YXRlLWZvY3VzIC51aS1pY29uIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2pxdWVyeXVpL3VpLWljb25zX2VmOGMwOF8yNTZ4MjQwLnBuZyk7IH0KLnVpLXN0YXRlLWFjdGl2ZSAudWktaWNvbiB7YmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1pY29uc19lZjhjMDhfMjU2eDI0MC5wbmcpOyB9Ci51aS1zdGF0ZS1oaWdobGlnaHQgLnVpLWljb24ge2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktaWNvbnNfMjI4ZWYxXzI1NngyNDAucG5nKTsgfQoudWktc3RhdGUtZXJyb3IgLnVpLWljb24sIC51aS1zdGF0ZS1lcnJvci10ZXh0IC51aS1pY29uIHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2pxdWVyeXVpL3VpLWljb25zX2ZmZDI3YV8yNTZ4MjQwLnBuZyk7IH0KCi8qIHBvc2l0aW9uaW5nICovCi51aS1pY29uLWNhcmF0LTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfQoudWktaWNvbi1jYXJhdC0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggMDsgfQoudWktaWNvbi1jYXJhdC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwOyB9Ci51aS1pY29uLWNhcmF0LTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAwOyB9Ci51aS1pY29uLWNhcmF0LTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IDA7IH0KLnVpLWljb24tY2FyYXQtMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH0KLnVpLWljb24tY2FyYXQtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggMDsgfQoudWktaWNvbi1jYXJhdC0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IDA7IH0KLnVpLWljb24tY2FyYXQtMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggMDsgfQoudWktaWNvbi1jYXJhdC0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAwOyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTZweDsgfQoudWktaWNvbi1hcnJvdy0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMi1uZS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93c3RvcC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTMycHg7IH0KLnVpLWljb24tYXJyb3dzdG9wLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtMzJweDsgfQoudWktaWNvbi1hcnJvd3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93c3RvcC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTMycHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtc3cgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTItbi1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1uZS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1zZS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGlja3N0b3AtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJudGhpY2stMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJuLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJuLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJuLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJuLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JlZnJlc2gtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmVmcmVzaC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZWZyZXNoLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JlZnJlc2gtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93LTQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC04MHB4OyB9Ci51aS1pY29uLWFycm93LTQtZGlhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC04MHB4OyB9Ci51aS1pY29uLWV4dGxpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtODBweDsgfQoudWktaWNvbi1uZXd3aW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtODBweDsgfQoudWktaWNvbi1yZWZyZXNoIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTgwcHg7IH0KLnVpLWljb24tc2h1ZmZsZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC04MHB4OyB9Ci51aS1pY29uLXRyYW5zZmVyLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC04MHB4OyB9Ci51aS1pY29uLXRyYW5zZmVydGhpY2stZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC04MHB4OyB9Ci51aS1pY29uLWZvbGRlci1jb2xsYXBzZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05NnB4OyB9Ci51aS1pY29uLWZvbGRlci1vcGVuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTk2cHg7IH0KLnVpLWljb24tZG9jdW1lbnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTZweDsgfQoudWktaWNvbi1kb2N1bWVudC1iIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTk2cHg7IH0KLnVpLWljb24tbm90ZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC05NnB4OyB9Ci51aS1pY29uLW1haWwtY2xvc2VkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTk2cHg7IH0KLnVpLWljb24tbWFpbC1vcGVuIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTk2cHg7IH0KLnVpLWljb24tc3VpdGNhc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTk2cHg7IH0KLnVpLWljb24tY29tbWVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtOTZweDsgfQoudWktaWNvbi1wZXJzb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTk2cHg7IH0KLnVpLWljb24tcHJpbnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTk2cHg7IH0KLnVpLWljb24tdHJhc2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTk2cHg7IH0KLnVpLWljb24tbG9ja2VkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC05NnB4OyB9Ci51aS1pY29uLXVubG9ja2VkIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC05NnB4OyB9Ci51aS1pY29uLWJvb2ttYXJrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC05NnB4OyB9Ci51aS1pY29uLXRhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtOTZweDsgfQoudWktaWNvbi1ob21lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH0KLnVpLWljb24tZmxhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xMTJweDsgfQoudWktaWNvbi1jYWxlbmRhciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xMTJweDsgfQoudWktaWNvbi1jYXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTExMnB4OyB9Ci51aS1pY29uLXBlbmNpbCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xMTJweDsgfQoudWktaWNvbi1jbG9jayB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMTJweDsgfQoudWktaWNvbi1kaXNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTExMnB4OyB9Ci51aS1pY29uLWNhbGN1bGF0b3IgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTExMnB4OyB9Ci51aS1pY29uLXpvb21pbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTEycHg7IH0KLnVpLWljb24tem9vbW91dCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTEycHg7IH0KLnVpLWljb24tc2VhcmNoIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC0xMTJweDsgfQoudWktaWNvbi13cmVuY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTExMnB4OyB9Ci51aS1pY29uLWdlYXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTExMnB4OyB9Ci51aS1pY29uLWhlYXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC0xMTJweDsgfQoudWktaWNvbi1zdGFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0xMTJweDsgfQoudWktaWNvbi1saW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC0xMTJweDsgfQoudWktaWNvbi1jYW5jZWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjhweDsgfQoudWktaWNvbi1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTEyOHB4OyB9Ci51aS1pY29uLXBsdXN0aGljayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xMjhweDsgfQoudWktaWNvbi1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xMjhweDsgfQoudWktaWNvbi1taW51c3RoaWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTEyOHB4OyB9Ci51aS1pY29uLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTEyOHB4OyB9Ci51aS1pY29uLWNsb3NldGhpY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTI4cHg7IH0KLnVpLWljb24ta2V5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xMjhweDsgfQoudWktaWNvbi1saWdodGJ1bGIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTEyOHB4OyB9Ci51aS1pY29uLXNjaXNzb3JzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xMjhweDsgfQoudWktaWNvbi1jbGlwYm9hcmQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTEyOHB4OyB9Ci51aS1pY29uLWNvcHkgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTEyOHB4OyB9Ci51aS1pY29uLWNvbnRhY3QgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTEyOHB4OyB9Ci51aS1pY29uLWltYWdlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwOHB4IC0xMjhweDsgfQoudWktaWNvbi12aWRlbyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMjRweCAtMTI4cHg7IH0KLnVpLWljb24tc2NyaXB0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC0xMjhweDsgfQoudWktaWNvbi1hbGVydCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0NHB4OyB9Ci51aS1pY29uLWluZm8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTQ0cHg7IH0KLnVpLWljb24tbm90aWNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE0NHB4OyB9Ci51aS1pY29uLWhlbHAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTQ0cHg7IH0KLnVpLWljb24tY2hlY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTQ0cHg7IH0KLnVpLWljb24tYnVsbGV0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE0NHB4OyB9Ci51aS1pY29uLXJhZGlvLW9mZiB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xNDRweDsgfQoudWktaWNvbi1yYWRpby1vbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTQ0cHg7IH0KLnVpLWljb24tcGluLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE0NHB4OyB9Ci51aS1pY29uLXBpbi1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xNDRweDsgfQoudWktaWNvbi1wbGF5IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTYwcHg7IH0KLnVpLWljb24tcGF1c2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTYwcHg7IH0KLnVpLWljb24tc2Vlay1uZXh0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE2MHB4OyB9Ci51aS1pY29uLXNlZWstcHJldiB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNjBweDsgfQoudWktaWNvbi1zZWVrLWVuZCB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNjBweDsgfQoudWktaWNvbi1zZWVrLXN0YXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9Ci8qIHVpLWljb24tc2Vlay1maXJzdCBpcyBkZXByZWNhdGVkLCB1c2UgdWktaWNvbi1zZWVrLXN0YXJ0IGluc3RlYWQgKi8KLnVpLWljb24tc2Vlay1maXJzdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xNjBweDsgfQoudWktaWNvbi1zdG9wIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2MHB4OyB9Ci51aS1pY29uLWVqZWN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xNjBweDsgfQoudWktaWNvbi12b2x1bWUtb2ZmIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xNjBweDsgfQoudWktaWNvbi12b2x1bWUtb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTE2MHB4OyB9Ci51aS1pY29uLXBvd2VyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTc2cHg7IH0KLnVpLWljb24tc2lnbmFsLWRpYWcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTc2cHg7IH0KLnVpLWljb24tc2lnbmFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTE3NnB4OyB9Ci51aS1pY29uLWJhdHRlcnktMCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNzZweDsgfQoudWktaWNvbi1iYXR0ZXJ5LTEgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTc2cHg7IH0KLnVpLWljb24tYmF0dGVyeS0yIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE3NnB4OyB9Ci51aS1pY29uLWJhdHRlcnktMyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xNzZweDsgfQoudWktaWNvbi1jaXJjbGUtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLWFycm93LWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1hcnJvdy1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtYXJyb3ctdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLWFycm93LW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS16b29taW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS16b29tb3V0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE5MnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtY2hlY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZXNtYWxsLXBsdXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMDhweDsgfQoudWktaWNvbi1jaXJjbGVzbWFsbC1taW51cyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0yMDhweDsgfQoudWktaWNvbi1jaXJjbGVzbWFsbC1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0yMDhweDsgfQoudWktaWNvbi1zcXVhcmVzbWFsbC1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTIwOHB4OyB9Ci51aS1pY29uLXNxdWFyZXNtYWxsLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTIwOHB4OyB9Ci51aS1pY29uLXNxdWFyZXNtYWxsLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwOHB4OyB9Ci51aS1pY29uLWdyaXAtZG90dGVkLXZlcnRpY2FsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjI0cHg7IH0KLnVpLWljb24tZ3JpcC1kb3R0ZWQtaG9yaXpvbnRhbCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0yMjRweDsgfQoudWktaWNvbi1ncmlwLXNvbGlkLXZlcnRpY2FsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIyNHB4OyB9Ci51aS1pY29uLWdyaXAtc29saWQtaG9yaXpvbnRhbCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0yMjRweDsgfQoudWktaWNvbi1ncmlwc21hbGwtZGlhZ29uYWwtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjI0cHg7IH0KLnVpLWljb24tZ3JpcC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMjRweDsgfQoKCi8qIE1pc2MgdmlzdWFscwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCi8qIENvcm5lciByYWRpdXMgKi8KLnVpLWNvcm5lci10bCB7IC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiA0cHg7IC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci10ciB7IC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogNHB4OyAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci1ibCB7IC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiA0cHg7IC13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4OyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci1iciB7IC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogNHB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci10b3AgeyAtbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDogNHB4OyAtd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDsgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4OyAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6IDRweDsgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4OyBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4OyB9Ci51aS1jb3JuZXItYm90dG9tIHsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDRweDsgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA0cHg7IC13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLXJpZ2h0IHsgIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogNHB4OyAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7IC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogNHB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7IH0KLnVpLWNvcm5lci1sZWZ0IHsgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDRweDsgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7IGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDsgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6IDRweDsgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7IGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfQoudWktY29ybmVyLWFsbCB7IC1tb3otYm9yZGVyLXJhZGl1czogNHB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDsgYm9yZGVyLXJhZGl1czogNHB4OyB9CgovKiBPdmVybGF5cyAqLwoudWktd2lkZ2V0LW92ZXJsYXkgeyBiYWNrZ3JvdW5kOiAjNjY2NjY2IHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktYmdfZGlhZ29uYWxzLXRoaWNrXzIwXzY2NjY2Nl80MHg0MC5wbmcpIDUwJSA1MCUgcmVwZWF0OyBvcGFjaXR5OiAuNTA7ZmlsdGVyOkFscGhhKE9wYWNpdHk9NTApOyB9Ci51aS13aWRnZXQtc2hhZG93IHsgbWFyZ2luOiAtNXB4IDAgMCAtNXB4OyBwYWRkaW5nOiA1cHg7IGJhY2tncm91bmQ6ICMwMDAwMDAgdXJsKC4uLy4uL2ltYWdlcy9qcXVlcnl1aS91aS1iZ19mbGF0XzEwXzAwMDAwMF80MHgxMDAucG5nKSA1MCUgNTAlIHJlcGVhdC14OyBvcGFjaXR5OiAuMjA7ZmlsdGVyOkFscGhhKE9wYWNpdHk9MjApOyAtbW96LWJvcmRlci1yYWRpdXM6IDVweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7IGJvcmRlci1yYWRpdXM6IDVweDsgfS8qIERhdGVwaWNrZXIKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1kYXRlcGlja2VyIHsgd2lkdGg6IDE3ZW07IHBhZGRpbmc6IC4yZW0gLjJlbSAwOyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWhlYWRlciB7IHBvc2l0aW9uOnJlbGF0aXZlOyBwYWRkaW5nOi4yZW0gMDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LCAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDogMnB4OyB3aWR0aDogMS44ZW07IGhlaWdodDogMS44ZW07IH0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciwgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7IHRvcDogMXB4OyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgeyBsZWZ0OjJweDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHsgcmlnaHQ6MnB4OyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIgeyBsZWZ0OjFweDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHsgcmlnaHQ6MXB4OyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgc3BhbiwgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCBzcGFuIHsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogNTAlOyBtYXJnaW4tbGVmdDogLThweDsgdG9wOiA1MCU7IG1hcmdpbi10b3A6IC04cHg7ICB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHsgbWFyZ2luOiAwIDIuM2VtOyBsaW5lLWhlaWdodDogMS44ZW07IHRleHQtYWxpZ246IGNlbnRlcjsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3QgeyBmb250LXNpemU6MWVtOyBtYXJnaW46MXB4IDA7IH0KLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgteWVhciB7d2lkdGg6IDEwMCU7fQoudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci1tb250aCwgCi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIgeyB3aWR0aDogNDklO30KLnVpLWRhdGVwaWNrZXIgdGFibGUge3dpZHRoOiAxMDAlOyBmb250LXNpemU6IC45ZW07IGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IG1hcmdpbjowIDAgLjRlbTsgfQoudWktZGF0ZXBpY2tlciB0aCB7IHBhZGRpbmc6IC43ZW0gLjNlbTsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXdlaWdodDogYm9sZDsgYm9yZGVyOiAwOyAgfQoudWktZGF0ZXBpY2tlciB0ZCB7IGJvcmRlcjogMDsgcGFkZGluZzogMXB4OyB9Ci51aS1kYXRlcGlja2VyIHRkIHNwYW4sIC51aS1kYXRlcGlja2VyIHRkIGEgeyBkaXNwbGF5OiBibG9jazsgcGFkZGluZzogLjJlbTsgdGV4dC1hbGlnbjogcmlnaHQ7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgbWFyZ2luOiAuN2VtIDAgMCAwOyBwYWRkaW5nOjAgLjJlbTsgYm9yZGVyLWxlZnQ6IDA7IGJvcmRlci1yaWdodDogMDsgYm9yZGVyLWJvdHRvbTogMDsgfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7IGZsb2F0OiByaWdodDsgbWFyZ2luOiAuNWVtIC4yZW0gLjRlbTsgY3Vyc29yOiBwb2ludGVyOyBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbSAuNmVtOyB3aWR0aDphdXRvOyBvdmVyZmxvdzp2aXNpYmxlOyB9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCB7IGZsb2F0OmxlZnQ7IH0KCi8qIHdpdGggbXVsdGlwbGUgY2FsZW5kYXJzICovCi51aS1kYXRlcGlja2VyLnVpLWRhdGVwaWNrZXItbXVsdGkgeyB3aWR0aDphdXRvOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHsgZmxvYXQ6bGVmdDsgfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB0YWJsZSB7IHdpZHRoOjk1JTsgbWFyZ2luOjAgYXV0byAuNGVtOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpLTIgLnVpLWRhdGVwaWNrZXItZ3JvdXAgeyB3aWR0aDo1MCU7IH0KLnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7IHdpZHRoOjMzLjMlOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAgeyB3aWR0aDoyNSU7IH0KLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBib3JkZXItbGVmdC13aWR0aDowOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBib3JkZXItbGVmdC13aWR0aDowOyB9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgeyBjbGVhcjpsZWZ0OyB9Ci51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7IGNsZWFyOmJvdGg7IHdpZHRoOjEwMCU7IH0KCi8qIFJUTCBzdXBwb3J0ICovCi51aS1kYXRlcGlja2VyLXJ0bCB7IGRpcmVjdGlvbjogcnRsOyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2IHsgcmlnaHQ6IDJweDsgbGVmdDogYXV0bzsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7IGxlZnQ6IDJweDsgcmlnaHQ6IGF1dG87IH0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXY6aG92ZXIgeyByaWdodDogMXB4OyBsZWZ0OiBhdXRvOyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0OmhvdmVyIHsgbGVmdDogMXB4OyByaWdodDogYXV0bzsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7IGNsZWFyOnJpZ2h0OyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7IGZsb2F0OiBsZWZ0OyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQgeyBmbG9hdDpyaWdodDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAgeyBmbG9hdDpyaWdodDsgfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbGFzdCAudWktZGF0ZXBpY2tlci1oZWFkZXIgeyBib3JkZXItcmlnaHQtd2lkdGg6MDsgYm9yZGVyLWxlZnQtd2lkdGg6MXB4OyB9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHsgYm9yZGVyLXJpZ2h0LXdpZHRoOjA7IGJvcmRlci1sZWZ0LXdpZHRoOjFweDsgfQoKLyogSUU2IElGUkFNRSBGSVggKHRha2VuIGZyb20gZGF0ZXBpY2tlciAxLjUuMyAqLwoudWktZGF0ZXBpY2tlci1jb3ZlciB7CiAgICBkaXNwbGF5OiBub25lOyAvKnNvcnJ5IGZvciBJRTUqLwogICAgZGlzcGxheS8qKi86IGJsb2NrOyAvKnNvcnJ5IGZvciBJRTUqLwogICAgcG9zaXRpb246IGFic29sdXRlOyAvKm11c3QgaGF2ZSovCiAgICB6LWluZGV4OiAtMTsgLyptdXN0IGhhdmUqLwogICAgZmlsdGVyOiBtYXNrKCk7IC8qbXVzdCBoYXZlKi8KICAgIHRvcDogLTRweDsgLyptdXN0IGhhdmUqLwogICAgbGVmdDogLTRweDsgLyptdXN0IGhhdmUqLwogICAgd2lkdGg6IDIwMHB4OyAvKm11c3QgaGF2ZSovCiAgICBoZWlnaHQ6IDIwMHB4OyAvKm11c3QgaGF2ZSovCn0=]]></data>
	</file>
	<file>
	  <filename>/framework/function.admin_categorytab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGNhdGVnb3JpZXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2NhdGVnb3J5JykpIAoJcmV0dXJuOwoKJGFkbWludGhlbWUgPSBjbXNtcygpLT5nZXRfdmFyaWFibGUoJ2FkbWludGhlbWUnKTsKCiRxdWVyeV9vYmplY3QgPSBuZXcgTGlzdEl0MkNhdGVnb3J5UXVlcnkoJHRoaXMsICRwYXJhbXMpOwokcmVzdWx0ID0gJHF1ZXJ5X29iamVjdC0+RXhlY3V0ZSh0cnVlKTsKCiRpdGVtcyA9IGFycmF5KCk7CndoaWxlICgkcmVzdWx0ICYmICRyb3cgPSAkcmVzdWx0LT5GZXRjaFJvdygpKSB7CgoJJG9iaiA9ICR0aGlzLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2NhdGVnb3J5X2lkJywgJHJvd1snY2F0ZWdvcnlfaWQnXSk7Cgkkb2JqLT5kZXB0aCA9IGNvdW50KGV4cGxvZGUoJy4nLCAkb2JqLT5oaWVyYXJjaHkpKSAtIDE7CiAKICAgIC8vIGFwcHJvdmUKICAgIGlmICgkb2JqLT5hY3RpdmUpIHsKICAgICAgICAkb2JqLT5hcHByb3ZlID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fYXBwcm92ZWNhdGVnb3J5JywgJHJldHVybmlkLCAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vdHJ1ZS5naWYnLCAkdGhpcy0+TW9kTGFuZygncmV2ZXJ0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoCiAgICAgICAgICAgICdhcHByb3ZlJyA9PiAwLAogICAgICAgICAgICAnY2F0ZWdvcnlfaWQnID0+ICRyb3dbJ2NhdGVnb3J5X2lkJ10KICAgICAgICApKTsKICAgIH0gZWxzZSB7CiAgICAgICAgJG9iai0+YXBwcm92ZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2FwcHJvdmVjYXRlZ29yeScsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdhcHByb3ZlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoCiAgICAgICAgICAgICdhcHByb3ZlJyA9PiAxLAogICAgICAgICAgICAnY2F0ZWdvcnlfaWQnID0+ICRyb3dbJ2NhdGVnb3J5X2lkJ10KICAgICAgICApKTsKICAgIH0KICAgIAogICAgLy8gZWRpdAogICAgJG9iai0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5Nb2RMYW5nKCdlZGl0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoCiAgICAgICAgJ2NhdGVnb3J5X2lkJyA9PiAkcm93WydjYXRlZ29yeV9pZCddCiAgICApKTsKCQogICAgJG9iai0+bmFtZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXRjYXRlZ29yeScsICRyZXR1cm5pZCwgJG9iai0+bmFtZSwgYXJyYXkoCiAgICAgICAgJ2NhdGVnb3J5X2lkJyA9PiAkcm93WydjYXRlZ29yeV9pZCddCiAgICApKTsKCQoJLy8gZGVsZXRlCiAgICAkb2JqLT5kZWxldGUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9kZWxldGVjYXRlZ29yeScsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TW9kTGFuZygnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoCiAgICAgICAgJ2NhdGVnb3J5X2lkJyA9PiAkcm93WydjYXRlZ29yeV9pZCddCiAgICApKTsKCQoJLy8gc2VsZWN0IGJveAogICAgJG9iai0+c2VsZWN0ID0gJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnY2F0ZWdvcmllc1tdJywgJHJvd1snY2F0ZWdvcnlfaWQnXSk7CgkKCSRpdGVtc1tdID0gJG9iajsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNtYXJ0eSBwcm9jZXNzaW5nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRzbWFydHktPmFzc2lnbignaXRlbXMnLCAkaXRlbXMpOwokc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0Y2F0ZWdvcnknLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5Nb2RMYW5nKCdjYXRlZ29yeScpKSwgJycsICcnLCAnc3lzdGVtaWNvbicpIC4kdGhpcy0+TW9kTGFuZygnYWRkJywgJHRoaXMtPk1vZExhbmcoJ2NhdGVnb3J5JykpKSk7CiRzbWFydHktPmFzc2lnbigncmVvcmRlcmxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9yZW9yZGVyY2F0ZWdvcnknLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9yZW9yZGVyLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZW9yZGVyX2NhdGVnb3JpZXMnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpIC4kdGhpcy0+TW9kTGFuZygncmVvcmRlcl9jYXRlZ29yaWVzJykpKTsKIAplY2hvICR0aGlzLT5Nb2RQcm9jZXNzVGVtcGxhdGUoJ2NhdGVnb3J5dGFiLnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/function.admin_fielddeftab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgSW5pdCBpdGVtcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9uJykpIHJldHVybjsKCiRhZG1pbnRoZW1lID0gY21zbXMoKS0+Z2V0X3ZhcmlhYmxlKCdhZG1pbnRoZW1lJyk7CiRmaWVsZGRlZnMgPSAkdGhpcy0+R2V0RmllbGREZWZzKCk7Cgpmb3JlYWNoKCRmaWVsZGRlZnMgYXMgJGZpZWxkZGVmKSB7CgoJJGZpZWxkZGVmLT5TZXROYW1lKCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXRmaWVsZGRlZicsICRyZXR1cm5pZCwgJGZpZWxkZGVmLT5HZXROYW1lKCksIGFycmF5KCdmaWVsZGRlZl9pZCc9PiRmaWVsZGRlZi0+R2V0SWQoKSkpKTsKCQoJaWYoJGZpZWxkZGVmLT5Jc1JlcXVpcmVkKCkpIHsKCQkkZmllbGRkZWYtPlNldFJlcXVpcmVkKCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnYWRtaW5fcmVxdWlyZWZpZWxkZGVmJywkcmV0dXJuaWQsCgkJCQkJJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ3N0YXR1c19vcHRpb25hbCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksYXJyYXkoJ3JlcXVpcmUnPT4wLCdmaWVsZGRlZl9pZCc9PiRmaWVsZGRlZi0+R2V0SWQoKSkpKTsKCX0gZWxzZSB7CgkJJGZpZWxkZGVmLT5TZXRSZXF1aXJlZCgkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2FkbWluX3JlcXVpcmVmaWVsZGRlZicsICRyZXR1cm5pZCwKCQkJCQkkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywkdGhpcy0+TW9kTGFuZygnc3RhdHVzX3JlcXVpcmVkJyksJycsJycsJ3N5c3RlbWljb24nKSxhcnJheSgncmVxdWlyZSc9PjEsJ2ZpZWxkZGVmX2lkJz0+JGZpZWxkZGVmLT5HZXRJZCgpKSkpOwoJfQoKICAgICRmaWVsZGRlZi0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0ZmllbGRkZWYnLCAkcmV0dXJuaWQsIAoJCQkJCSRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5Nb2RMYW5nKCdlZGl0JyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoJ2ZpZWxkZGVmX2lkJyA9PiRmaWVsZGRlZi0+R2V0SWQoKSkpOwoKCgkkZmllbGRkZWYtPmRlbGV0ZWxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9kZWxldGVmaWVsZGRlZicsICRyZXR1cm5pZCwgCgkJCQkJJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TW9kTGFuZygnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoJ2ZpZWxkZGVmX2lkJyA9PiRmaWVsZGRlZi0+R2V0SWQoKSkpOwoJJGZpZWxkZGVmLT5zZWxlY3QgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdmaWVsZGRlZnNbXScsICRmaWVsZGRlZi0+R2V0SWQoKSk7Cgp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkbWluX2RlbGV0ZWZpZWxkZGVmJywgJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduX2J5X3JlZignaXRlbXMnLCAkZmllbGRkZWZzKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXRvcmRlcicsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXRfZmllbGRkZWZvcmRlcicsICR0aGlzLT5Nb2RMYW5nKCdzdWJtaXRfb3JkZXInKSkpOwokc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0ZmllbGRkZWYnLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZicpKSwgJycsICcnLCAnc3lzdGVtaWNvbicpIC4gJHRoaXMtPk1vZExhbmcoJ2FkZCcsICR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZicpKSkpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdG1hc3NkZWxldGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0bWFzc2RlbGV0ZScsICR0aGlzLT5Nb2RMYW5nKCdkZWxldGVfc2VsZWN0ZWQnLCAkdGhpcy0+TW9kTGFuZygnZmllbGRkZWZzJykpLCAnJywgJycsICR0aGlzLT5Nb2RMYW5nKCdhcmV5b3VzdXJlX2RlbGV0ZW11bHRpcGxlJywgJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmcycpKSkpOwoKZWNobyAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdmaWVsZGRlZnRhYi50cGwnKTsKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/framework/function.admin_itemtab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGl0ZW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9pdGVtJykpCiAgICByZXR1cm47CgokYWRtaW50aGVtZSA9IGNtc21zKCktPmdldF92YXJpYWJsZSgnYWRtaW50aGVtZScpOwoKLy8gY2hlY2sgcHJlZnMKJHNpbmd1bGFyICAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9zaW5ndWxhcicsICcnKTsKJHBsdXJhbCAgICAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9wbHVyYWwnLCAnJyk7CiRmaWVsZHMgICAgID0gZXhwbG9kZSgnLCcsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtX2NvbHMnLCAnJykpOwokbGltaXQgICAgICA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtc19wZXJfcGFnZScsIDIwKTsKJGRhdGVmb3JtYXQgPSB0cmltKGdldF9wcmVmZXJlbmNlKGdldF91c2VyaWQoKSwnZGF0ZV9mb3JtYXRfc3RyaW5nJywnJVktJW0tJWQnKSk7CgppZihlbXB0eSgkZGF0ZWZvcm1hdCkpIAoJJGRhdGVmb3JtYXQgPSAnJVktJW0tJWQnOwovKgkKLy8gcGFnaW5hdGlvbgokcGFnZSAgID0gaXNzZXQoJHBhcmFtc1sncGFnZSddKSA/ICRwYXJhbXNbJ3BhZ2UnXSA6IDE7CiRvZmZzZXQgPSAoJHBhZ2UgLSAxKSAqICRsaW1pdDsKCiRpdGVtcyAgICAgPSBhcnJheSgpOwovLyRmaWVsZGRlZnMgPSBhcnJheSgpOwoKJHF1ZXJ5ID0gJ1NFTEVDVCBDT1VOVChpdGVtX2lkKSBhcyBjb3VudCBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nOwokdG90YWxjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CgokcXVlcnkgPSAnU0VMRUNUIEEuaXRlbV9pZCBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0gQSwgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgQgogICAgICAgIFdIRVJFIEEuY2F0ZWdvcnlfaWQgPSBCLmNhdGVnb3J5X2lkIE9SREVSIEJZIEEucG9zaXRpb24gJyAuICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInKTsKCiRyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwgJGxpbWl0LCAkb2Zmc2V0KTsKCiovCgokcGFyYW1zWydwYWdlbGltaXQnXSA9ICRsaW1pdDsKJGl0ZW1fcXVlcnkgPSBuZXcgTGlzdEl0Mkl0ZW1RdWVyeSgkdGhpcywgJHBhcmFtcyk7CiRyZXN1bHQgPSAkaXRlbV9xdWVyeS0+RXhlY3V0ZSgpOwoKJHBhZ2UgPSAkaXRlbV9xdWVyeS0+R2V0UGFnZU51bWJlcigpOwokdG90YWxjb3VudCA9ICRpdGVtX3F1ZXJ5LT5Ub3RhbENvdW50KCk7CgokaXRlbXMgPSBhcnJheSgpOwp3aGlsZSAoJHJlc3VsdCAmJiAkcm93ID0gJHJlc3VsdC0+RmV0Y2hSb3coKSkgewoKCSRvYmogPSAkdGhpcy0+TG9hZEl0ZW1CeUlkKCRyb3dbJ2l0ZW1faWQnXSwgJGZpZWxkcyk7Cgkkb2JqLT5jYXRlZ29yaWVzX25hbWVzID0gTGlzdEl0MkNhdGVnb3J5T3BlcmF0aW9uczo6R2V0Q2F0ZWdvcnlOYW1lRnJvbUlkKCR0aGlzLCAkb2JqLT5jYXRlZ29yaWVzKTsKCQoJLy8gQ2hlY2sgaWYgd2UgbmVlZCB0byBzaG93IGFueSBmaWVsZHMKICAgIGlmIChjb3VudCgkZmllbGRzKSA+IDApIHsKCQkKCQkvLyBDaGVjayBzdGF0aWMKCQlpZiAoIWluX2FycmF5KCdjcmVhdGVfdGltZScsICRmaWVsZHMpKSB7CgkJCS8vJG9iai0+Y3JlYXRlX3RpbWUgPSBzdHJmdGltZSgkZGF0ZWZvcm1hdCwgJG9iai0+Y3JlYXRlX3RpbWUpOwoJCQl1bnNldCgkb2JqLT5jcmVhdGVfdGltZSk7CgkJfSBlbHNlIHsKCQkJJG9iai0+Y3JlYXRlX3RpbWUgPSBzdHJmdGltZSgkZGF0ZWZvcm1hdCwgc3RydG90aW1lKCRvYmotPmNyZWF0ZV90aW1lKSk7CgkJfQoJCQoJCWlmIChpbl9hcnJheSgnc3RhcnRfdGltZScsICRmaWVsZHMpKSB7CgkJCSRvYmotPnN0YXJ0X3RpbWUgPSAhZW1wdHkoJG9iai0+c3RhcnRfdGltZSkgPyBzdHJmdGltZSgkZGF0ZWZvcm1hdCwgc3RydG90aW1lKCRvYmotPnN0YXJ0X3RpbWUpKSA6ICcnOwoJCX0KCQkKCQlpZiAoaW5fYXJyYXkoJ2VuZF90aW1lJywgJGZpZWxkcykpIHsKCQkJJG9iai0+ZW5kX3RpbWUgPSAhZW1wdHkoJG9iai0+ZW5kX3RpbWUpID8gc3RyZnRpbWUoJGRhdGVmb3JtYXQsIHN0cnRvdGltZSgkb2JqLT5lbmRfdGltZSkpIDogJyc7CgkJfQkJCQogICAgfQogICAKICAgIC8vIGFwcHJvdmUKICAgIGlmICgkb2JqLT5hY3RpdmUpIHsKICAgICAgICAkb2JqLT5hcHByb3ZlID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fYXBwcm92ZWl0ZW0nLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdyZXZlcnQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgKICAgICAgICAgICAgJ2FwcHJvdmUnID0+IDAsCiAgICAgICAgICAgICdpdGVtX2lkJyA9PiAkcm93WydpdGVtX2lkJ10KICAgICAgICApKTsKICAgIH0gZWxzZSB7CiAgICAgICAgJG9iai0+YXBwcm92ZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2FwcHJvdmVpdGVtJywgJHJldHVybmlkLCAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FwcHJvdmUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgKICAgICAgICAgICAgJ2FwcHJvdmUnID0+IDEsCiAgICAgICAgICAgICdpdGVtX2lkJyA9PiAkcm93WydpdGVtX2lkJ10KICAgICAgICApKTsKICAgIH0KICAgIAogICAgLy8gZWRpdAogICAgJG9iai0+ZWRpdGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0aXRlbScsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgKICAgICAgICAnaXRlbV9pZCcgPT4gJHJvd1snaXRlbV9pZCddCiAgICApKTsKCQogICAgJG9iai0+dGl0bGUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0aXRlbScsICRyZXR1cm5pZCwgJG9iai0+dGl0bGUsIGFycmF5KAogICAgICAgICdpdGVtX2lkJyA9PiAkcm93WydpdGVtX2lkJ10KICAgICkpOwoJCgkvLyBkZWxldGUKICAgICRvYmotPmRlbGV0ZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2RlbGV0ZWl0ZW0nLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KAogICAgICAgICdpdGVtX2lkJyA9PiAkcm93WydpdGVtX2lkJ10KICAgICkpOwoJCgkvLyBzZWxlY3QgYm94CiAgICAkb2JqLT5zZWxlY3QgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdpdGVtc1tdJywgJHJvd1snaXRlbV9pZCddKTsKCQoJJGl0ZW1zW10gPSAkb2JqOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsICRpdGVtcyk7CiRzbWFydHktPmFzc2lnbigncGFnaW5hdGlvbicsICR0aGlzLT5DcmVhdGVQYWdpbmF0aW9uKCRpZCwgJycsICcnLCAkcGFnZSwgJHRvdGFsY291bnQsICRsaW1pdCkpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2l0ZW1fc2luZ3VsYXInLCAnJykpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlX3BsdXJhbCcsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtX3BsdXJhbCcsICcnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdG9yZGVyJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdF9pdGVtb3JkZXInLCAkdGhpcy0+TW9kTGFuZygnc3VibWl0X29yZGVyJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fZWRpdGl0ZW0nLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2FkZCcsICRzaW5ndWxhciksICcnLCAnJywgJ3N5c3RlbWljb24nKSAuIAoJJHRoaXMtPk1vZExhbmcoJ2FkZCcsICRzaW5ndWxhcikpKTsKJHNtYXJ0eS0+YXNzaWduKCdleHBvcnRsaW5rJywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fZXhwb3J0aXRlbXMnLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9leHBvcnQuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2V4cG9ydCcsICRzaW5ndWxhciksICcnLCAnJywgJ3N5c3RlbWljb24nKSAuIAoJJHRoaXMtPk1vZExhbmcoJ2V4cG9ydCcsICRwbHVyYWwpKSk7CiRzbWFydHktPmFzc2lnbignaW1wb3J0bGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2ltcG9ydGl0ZW1zJywgJHJldHVybmlkLCAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZicsICR0aGlzLT5Nb2RMYW5nKCdpbXBvcnQnLCAkc2luZ3VsYXIpLCAnJywgJycsICdzeXN0ZW1pY29uJykgLiAKCSR0aGlzLT5Nb2RMYW5nKCdpbXBvcnQnLCAkcGx1cmFsKSkpOwkKCQplY2hvICR0aGlzLT5Nb2RQcm9jZXNzVGVtcGxhdGUoJ2l0ZW10YWIudHBsJyk7Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/framework/function.admin_optiontab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGl0ZW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9vcHRpb24nKSkKICAgIHJldHVybjsKCiRzeXN0ZW1kZWZzID0gJHRoaXMtPkdldEZpZWxkRGVmcygpOwokZmllbGRkZWZzID0gYXJyYXkoJHRoaXMtPk1vZExhbmcoJ2NyZWF0ZV90aW1lJykgPT4gJ2NyZWF0ZV90aW1lJywgJHRoaXMtPk1vZExhbmcoJ3N0YXJ0X3RpbWUnKSA9PiAnc3RhcnRfdGltZScsICR0aGlzLT5Nb2RMYW5nKCdlbmRfdGltZScpID0+ICdlbmRfdGltZScpOwpmb3JlYWNoKCRzeXN0ZW1kZWZzIGFzICRvbmVkZWYpIHsKCgkkZmllbGRkZWZzWyRvbmVkZWYtPkdldE5hbWUoKV0gPSAkb25lZGVmLT5HZXRBbGlhcygpOwp9CgovLyBwYWdpbmF0aW9uIG9wdGlvbnMKJGl0ZW1zX3Blcl9wYWdlID0gYXJyYXkoCiAgICAxMCA9PiAxMCwKICAgIDIwID0+IDIwLAogICAgNTAgPT4gNTAsCiAgICAxMDAgPT4gMTAwLAogICAgMjAwID0+IDIwMCwKICAgIDMwMCA9PiAzMDAsCiAgICA0MDAgPT4gNDAwLAogICAgNTAwID0+IDUwMCwKICAgIDEwMDAgPT4gMTAwMAopOwoKLy8gbW9kdWxlIGFkbWluIHNlY3Rpb24gb3B0aW9ucwokYWRtaW5fc2VjdGlvbnMgPSBhcnJheSgKICAgIGxhbmcoJ21haW4nKSA9PiAnbWFpbicsCiAgICBsYW5nKCdjb250ZW50JykgPT4gJ2NvbnRlbnQnLAogICAgbGFuZygnbGF5b3V0JykgPT4gJ2xheW91dCcsCiAgICBsYW5nKCd1c2Vyc2dyb3VwcycpID0+ICd1c2Vyc2dyb3VwcycsCiAgICBsYW5nKCdleHRlbnNpb25zJykgPT4gJ2V4dGVuc2lvbnMnLAogICAgbGFuZygnc2l0ZWFkbWluJykgPT4gJ3NpdGVhZG1pbicsCiAgICBsYW5nKCdteXByZWZzJykgPT4gJ215cHJlZnMnLAogICAgbGFuZygnZWNvbW1lcmNlJykgPT4gJ2Vjb21tZXJjZScKKTsKCi8vIHNvcnRvcmRlciBvcHRpb25zCiRzb3J0b3JkZXIgICAgICA9IGFycmF5KAogICAgJHRoaXMtPk1vZExhbmcoJ2FzY2VuZGluZycpID0+ICdBU0MnLAogICAgJHRoaXMtPk1vZExhbmcoJ2Rlc2NlbmRpbmcnKSA9PiAnREVTQycKKTsKCiRkaXNwbGF5X2lubGluZSAgICAgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc3BsYXlfaW5saW5lJywgMCk7CiRzdWJjYXRlZ29yeSAgICAgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3N1YmNhdGVnb3J5JywgMCk7CiRkaXNwbGF5X2NyZWF0ZV9kYXRlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc3BsYXlfY3JlYXRlX2RhdGUnLCAwKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fZWRpdG9wdGlvbicsICRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfaXRlbV90aXRsZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaXRlbV90aXRsZScsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpdGVtX3RpdGxlJywgJycpLCA1MCkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2l0ZW1fc2luZ3VsYXInLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2l0ZW1fc2luZ3VsYXInLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9zaW5ndWxhcicsICcnKSwgNTApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9pdGVtX3BsdXJhbCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaXRlbV9wbHVyYWwnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9wbHVyYWwnLCAnJyksIDUwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZnJpZW5kbHluYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmcmllbmRseW5hbWUnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJywgJycpLCA1MCkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X21vZGRlc2NyaXB0aW9uJywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtb2RkZXNjcmlwdGlvbicsICcnKSwgJ21vZGRlc2NyaXB0aW9uJywgJ3BhZ2VzbWFsbHRleHRhcmVhJywgJycsICcnLCAnJywgJzgwJywgJzMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWRtaW5zZWN0aW9uJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnYWRtaW5zZWN0aW9uJywgJGFkbWluX3NlY3Rpb25zLCAtMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FkbWluc2VjdGlvbicsICdjb250ZW50JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9pdGVtc19wZXJfcGFnZScsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2l0ZW1zX3Blcl9wYWdlJywgJGl0ZW1zX3Blcl9wYWdlLCAtMSwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2l0ZW1zX3Blcl9wYWdlJywgMjApKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc29ydG9yZGVyJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnaXRlbXNfc29ydG9yZGVyJywgJHNvcnRvcmRlciwgLTEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInLCAnQVNDJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91cmxfcHJlZml4JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICd1cmxfcHJlZml4JywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VybF9wcmVmaXgnLCAnJyksIDUwKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZGlzcGxheV9pbmxpbmUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdkaXNwbGF5X2lubGluZScsIDEsICRkaXNwbGF5X2lubGluZSwgKCRkaXNwbGF5X2lubGluZSA/ICdjaGVja2VkPSJjaGVja2VkIicgOiAnJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zdWJjYXRlZ29yeScsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3N1YmNhdGVnb3J5JywgMSwgJHN1YmNhdGVnb3J5LCAoJHN1YmNhdGVnb3J5ID8gJ2NoZWNrZWQ9ImNoZWNrZWQiJyA6ICcnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NyZWF0ZV9kYXRlJywgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnZGlzcGxheV9jcmVhdGVfZGF0ZScsIDEsICRkaXNwbGF5X2NyZWF0ZV9kYXRlLCAoJGRpc3BsYXlfY3JlYXRlX2RhdGUgPyAnY2hlY2tlZD0iY2hlY2tlZCInIDogJycpKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfaXRlbV9jb2xzJywgJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsICdpdGVtX2NvbHNbXScsICRmaWVsZGRlZnMsIGV4cGxvZGUoJywnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaXRlbV9jb2xzJywgJycpKSwgNSkpOwoKZWNobyAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCdvcHRpb250YWIudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/function.admin_templatetab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEluaXQgaXRlbXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X29wdGlvbicpKQogICAgcmV0dXJuOwoJCiRhZG1pbnRoZW1lID0gY21zbXMoKS0+Z2V0X3ZhcmlhYmxlKCdhZG1pbnRoZW1lJyk7CiR0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcygpOwokaXRlbXMgPSBhcnJheSgpOwokYWRkbGlua3MgPSBhcnJheSgpOwoKZm9yZWFjaCAoJHRlbXBsYXRlcyBhcyAkdGVtcGxhdGUpIHsKCglsaXN0KCR0cGxfdHlwZSwgJHRwbF9uYW1lKSA9IGV4cGxvZGUoJ18nLCAkdGVtcGxhdGUsIDIpOwoKICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKCiAgICAkb25lcm93LT5saW5rICAgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl9lZGl0dGVtcGxhdGUnLCAkcmV0dXJuaWQsICR0cGxfbmFtZSwgYXJyYXkoJ25hbWUnID0+ICR0ZW1wbGF0ZSkpOwogICAgJG9uZXJvdy0+bmFtZSAgID0gJHRwbF9uYW1lOwogICAgJG9uZXJvdy0+ZGVsZXRlID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fZGVsZXRldGVtcGxhdGUnLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KCduYW1lJyA9PiAkdGVtcGxhdGUpKTsKICAgICRvbmVyb3ctPmVkaXQgICA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXR0ZW1wbGF0ZScsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgnbmFtZScgPT4gJHRlbXBsYXRlKSk7CgoJJHRwbF9kZWZhdWx0ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0XycuJHRwbF90eXBlLidfdGVtcGxhdGUnKTsKCQoJaWYoJHRwbF9kZWZhdWx0ID09ICR0cGxfbmFtZSkgewoKCQkkb25lcm93LT5kZWZhdWx0ID0gJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2lzX2RlZmF1bHQnKSwnJywnJywnc3lzdGVtaWNvbicpOwoJCQoJCWlmKCR0cGxfdHlwZSAhPSAnZmlsdGVyJykgLy8gPC0gRm9yIHVwZ3JhZGUsIHNvIHBwbCBhcmUgYWJlbCB0byByZW1vdmUgYWxsIGZpbHRlciB0ZW1wbGF0ZXMgYWZ0ZXIgbW92aW5nIHN0dWZmIHRvIHNlYXJjaCBpbnN0YW5jZS4gKDEuMi4xIC0+IDEuMi4yKQoJCQl1bnNldCgkb25lcm93LT5kZWxldGUpOyAvLyA8LSBEaXNhYmxlIGRlbGV0ZSBidXR0b24KCQkKCX0gZWxzZSB7CgkKCQkkb25lcm93LT5kZWZhdWx0ID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZG1pbl9zZXRkZWZhdWx0dGVtcGxhdGUnLCRyZXR1cm5pZCwKCQkJCQkJJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicsJHRoaXMtPk1vZExhbmcoJ3N0YXR1c19kZWZhdWx0JyksJycsJycsJ3N5c3RlbWljb24nKSxhcnJheSgnbmFtZScgPT4gJHRlbXBsYXRlKSk7Cgl9CQoJCiAgICAkaXRlbXNbJHRwbF90eXBlXVtdID0gJG9uZXJvdzsKCQoJaWYoIWlzc2V0KCRhZGRsaW5rc1skdHBsX3R5cGVdKSkKCQkkYWRkbGlua3NbJHRwbF90eXBlXSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXR0ZW1wbGF0ZScsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLCAkdGhpcy0+TW9kTGFuZygnYWRkJywgJHRoaXMtPk1vZExhbmcoJHRwbF90eXBlIC4gJ3RlbXBsYXRlJykpLCAnJywgJycsICdzeXN0ZW1pY29uJykgLiAkdGhpcy0+TW9kTGFuZygnYWRkJywgJHRoaXMtPk1vZExhbmcoJHRwbF90eXBlIC4gJ3RlbXBsYXRlJykpLCBhcnJheSgndHlwZScgPT4gJHRwbF90eXBlKSk7Cn0KCmtzb3J0KCRpdGVtcyk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsICRpdGVtcyk7CiRzbWFydHktPmFzc2lnbignYWRkbGlua3MnLCAkYWRkbGlua3MpOwoKZWNobyAkdGhpcy0+TW9kUHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZXRhYi50cGwnKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/framework/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/framework/js/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/framework/js/jquery.colorbox.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gQ29sb3JCb3ggdjEuMy4yMC4xIC0galF1ZXJ5IGxpZ2h0Ym94IHBsdWdpbgovLyAoYykgMjAxMSBKYWNrIE1vb3JlIC0gamFja2xtb29yZS5jb20KLy8gTGljZW5zZTogaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHAKKGZ1bmN0aW9uICgkLCBkb2N1bWVudCwgd2luZG93KSB7Cgl2YXIKCS8vIERlZmF1bHQgc2V0dGluZ3Mgb2JqZWN0LgoJLy8gU2VlIGh0dHA6Ly9qYWNrbG1vb3JlLmNvbS9jb2xvcmJveCBmb3IgZGV0YWlscy4KCWRlZmF1bHRzID0gewoJCXRyYW5zaXRpb246ICJlbGFzdGljIiwKCQlzcGVlZDogMzAwLAoJCXdpZHRoOiBmYWxzZSwKCQlpbml0aWFsV2lkdGg6ICI2MDAiLAoJCWlubmVyV2lkdGg6IGZhbHNlLAoJCW1heFdpZHRoOiBmYWxzZSwKCQloZWlnaHQ6IGZhbHNlLAoJCWluaXRpYWxIZWlnaHQ6ICI0NTAiLAoJCWlubmVySGVpZ2h0OiBmYWxzZSwKCQltYXhIZWlnaHQ6IGZhbHNlLAoJCXNjYWxlUGhvdG9zOiB0cnVlLAoJCXNjcm9sbGluZzogdHJ1ZSwKCQlpbmxpbmU6IGZhbHNlLAoJCWh0bWw6IGZhbHNlLAoJCWlmcmFtZTogZmFsc2UsCgkJZmFzdElmcmFtZTogdHJ1ZSwKCQlwaG90bzogZmFsc2UsCgkJaHJlZjogZmFsc2UsCgkJdGl0bGU6IGZhbHNlLAoJCXJlbDogZmFsc2UsCgkJb3BhY2l0eTogMC45LAoJCXByZWxvYWRpbmc6IHRydWUsCgoJCWN1cnJlbnQ6ICJpbWFnZSB7Y3VycmVudH0gb2Yge3RvdGFsfSIsCgkJcHJldmlvdXM6ICJwcmV2aW91cyIsCgkJbmV4dDogIm5leHQiLAoJCWNsb3NlOiAiY2xvc2UiLAoJCXhockVycm9yOiAiVGhpcyBjb250ZW50IGZhaWxlZCB0byBsb2FkLiIsCgkJaW1nRXJyb3I6ICJUaGlzIGltYWdlIGZhaWxlZCB0byBsb2FkLiIsCgoJCW9wZW46IGZhbHNlLAoJCXJldHVybkZvY3VzOiB0cnVlLAoJCXJlcG9zaXRpb246IHRydWUsCgkJbG9vcDogdHJ1ZSwKCQlzbGlkZXNob3c6IGZhbHNlLAoJCXNsaWRlc2hvd0F1dG86IHRydWUsCgkJc2xpZGVzaG93U3BlZWQ6IDI1MDAsCgkJc2xpZGVzaG93U3RhcnQ6ICJzdGFydCBzbGlkZXNob3ciLAoJCXNsaWRlc2hvd1N0b3A6ICJzdG9wIHNsaWRlc2hvdyIsCgkJb25PcGVuOiBmYWxzZSwKCQlvbkxvYWQ6IGZhbHNlLAoJCW9uQ29tcGxldGU6IGZhbHNlLAoJCW9uQ2xlYW51cDogZmFsc2UsCgkJb25DbG9zZWQ6IGZhbHNlLAoJCW92ZXJsYXlDbG9zZTogdHJ1ZSwKCQllc2NLZXk6IHRydWUsCgkJYXJyb3dLZXk6IHRydWUsCgkJdG9wOiBmYWxzZSwKCQlib3R0b206IGZhbHNlLAoJCWxlZnQ6IGZhbHNlLAoJCXJpZ2h0OiBmYWxzZSwKCQlmaXhlZDogZmFsc2UsCgkJZGF0YTogdW5kZWZpbmVkCgl9LAoJCgkvLyBBYnN0cmFjdGluZyB0aGUgSFRNTCBhbmQgZXZlbnQgaWRlbnRpZmllcnMgZm9yIGVhc3kgcmVicmFuZGluZwoJY29sb3Jib3ggPSAnY29sb3Jib3gnLAoJcHJlZml4ID0gJ2Nib3gnLAoJYm94RWxlbWVudCA9IHByZWZpeCArICdFbGVtZW50JywKCQoJLy8gRXZlbnRzCglldmVudF9vcGVuID0gcHJlZml4ICsgJ19vcGVuJywKCWV2ZW50X2xvYWQgPSBwcmVmaXggKyAnX2xvYWQnLAoJZXZlbnRfY29tcGxldGUgPSBwcmVmaXggKyAnX2NvbXBsZXRlJywKCWV2ZW50X2NsZWFudXAgPSBwcmVmaXggKyAnX2NsZWFudXAnLAoJZXZlbnRfY2xvc2VkID0gcHJlZml4ICsgJ19jbG9zZWQnLAoJZXZlbnRfcHVyZ2UgPSBwcmVmaXggKyAnX3B1cmdlJywKCQoJLy8gU3BlY2lhbCBIYW5kbGluZyBmb3IgSUUKCWlzSUUgPSAhJC5zdXBwb3J0Lm9wYWNpdHkgJiYgISQuc3VwcG9ydC5zdHlsZSwgLy8gSUU3ICYgSUU4Cglpc0lFNiA9IGlzSUUgJiYgIXdpbmRvdy5YTUxIdHRwUmVxdWVzdCwgLy8gSUU2CglldmVudF9pZTYgPSBwcmVmaXggKyAnX0lFNicsCgoJLy8gQ2FjaGVkIGpRdWVyeSBPYmplY3QgVmFyaWFibGVzCgkkb3ZlcmxheSwKCSRib3gsCgkkd3JhcCwKCSRjb250ZW50LAoJJHRvcEJvcmRlciwKCSRsZWZ0Qm9yZGVyLAoJJHJpZ2h0Qm9yZGVyLAoJJGJvdHRvbUJvcmRlciwKCSRyZWxhdGVkLAoJJHdpbmRvdywKCSRsb2FkZWQsCgkkbG9hZGluZ0JheSwKCSRsb2FkaW5nT3ZlcmxheSwKCSR0aXRsZSwKCSRjdXJyZW50LAoJJHNsaWRlc2hvdywKCSRuZXh0LAoJJHByZXYsCgkkY2xvc2UsCgkkZ3JvdXBDb250cm9scywKCQoJLy8gVmFyaWFibGVzIGZvciBjYWNoZWQgdmFsdWVzIG9yIHVzZSBhY3Jvc3MgbXVsdGlwbGUgZnVuY3Rpb25zCglzZXR0aW5ncywKCWludGVyZmFjZUhlaWdodCwKCWludGVyZmFjZVdpZHRoLAoJbG9hZGVkSGVpZ2h0LAoJbG9hZGVkV2lkdGgsCgllbGVtZW50LAoJaW5kZXgsCglwaG90bywKCW9wZW4sCglhY3RpdmUsCgljbG9zaW5nLAoJbG9hZGluZ1RpbWVyLAoJcHVibGljTWV0aG9kLAoJZGl2ID0gImRpdiIsCglpbml0OwoKCS8vICoqKioqKioqKioqKioqKioKCS8vIEhFTFBFUiBGVU5DVElPTlMKCS8vICoqKioqKioqKioqKioqKioKCQoJLy8gQ29udmllbmNlIGZ1bmN0aW9uIGZvciBjcmVhdGluZyBuZXcgalF1ZXJ5IG9iamVjdHMKCWZ1bmN0aW9uICR0YWcodGFnLCBpZCwgY3NzKSB7CgkJdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZyk7CgoJCWlmIChpZCkgewoJCQllbGVtZW50LmlkID0gcHJlZml4ICsgaWQ7CgkJfQoKCQlpZiAoY3NzKSB7CgkJCWVsZW1lbnQuc3R5bGUuY3NzVGV4dCA9IGNzczsKCQl9CgoJCXJldHVybiAkKGVsZW1lbnQpOwoJfQoKCS8vIERldGVybWluZSB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbWVtYmVycyBpbiBhIGdyb3VwLgoJZnVuY3Rpb24gZ2V0SW5kZXgoaW5jcmVtZW50KSB7CgkJdmFyCgkJbWF4ID0gJHJlbGF0ZWQubGVuZ3RoLAoJCW5ld0luZGV4ID0gKGluZGV4ICsgaW5jcmVtZW50KSAlIG1heDsKCQkKCQlyZXR1cm4gKG5ld0luZGV4IDwgMCkgPyBtYXggKyBuZXdJbmRleCA6IG5ld0luZGV4OwoJfQoKCS8vIENvbnZlcnQgJyUnIGFuZCAncHgnIHZhbHVlcyB0byBpbnRlZ2VycwoJZnVuY3Rpb24gc2V0U2l6ZShzaXplLCBkaW1lbnNpb24pIHsKCQlyZXR1cm4gTWF0aC5yb3VuZCgoLyUvLnRlc3Qoc2l6ZSkgPyAoKGRpbWVuc2lvbiA9PT0gJ3gnID8gd2luV2lkdGgoKSA6IHdpbkhlaWdodCgpKSAvIDEwMCkgOiAxKSAqIHBhcnNlSW50KHNpemUsIDEwKSk7Cgl9CgkKCS8vIENoZWNrcyBhbiBocmVmIHRvIHNlZSBpZiBpdCBpcyBhIHBob3RvLgoJLy8gVGhlcmUgaXMgYSBmb3JjZSBwaG90byBvcHRpb24gKHBob3RvOiB0cnVlKSBmb3IgaHJlZnMgdGhhdCBjYW5ub3QgYmUgbWF0Y2hlZCBieSB0aGlzIHJlZ2V4LgoJZnVuY3Rpb24gaXNJbWFnZSh1cmwpIHsKCQlyZXR1cm4gc2V0dGluZ3MucGhvdG8gfHwgL1wuKGdpZnxwbmd8anAoZXxnfGVnKXxibXB8aWNvKSgoI3xcPykuKik/JC9pLnRlc3QodXJsKTsKCX0KCQoJZnVuY3Rpb24gd2luV2lkdGgoKSB7CgkJLy8gJCh3aW5kb3cpLndpZHRoKCkgaXMgaW5jb3JyZWN0IGZvciBzb21lIG1vYmlsZSBicm93c2VycywgYnV0CgkJLy8gd2luZG93LmlubmVyV2lkdGggaXMgdW5zdXBwb3J0ZWQgaW4gSUU4IGFuZCBsb3dlci4KCQlyZXR1cm4gd2luZG93LmlubmVyV2lkdGggfHwgJHdpbmRvdy53aWR0aCgpOwoJfQoKCWZ1bmN0aW9uIHdpbkhlaWdodCgpIHsKCQlyZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IHx8ICR3aW5kb3cuaGVpZ2h0KCk7Cgl9CgoJLy8gQXNzaWducyBmdW5jdGlvbiByZXN1bHRzIHRvIHRoZWlyIHJlc3BlY3RpdmUgcHJvcGVydGllcwoJZnVuY3Rpb24gbWFrZVNldHRpbmdzKCkgewoJCXZhciBpLAoJCQlkYXRhID0gJC5kYXRhKGVsZW1lbnQsIGNvbG9yYm94KTsKCQkKCQlpZiAoZGF0YSA9PSBudWxsKSB7CgkJCXNldHRpbmdzID0gJC5leHRlbmQoe30sIGRlZmF1bHRzKTsKCQkJaWYgKGNvbnNvbGUgJiYgY29uc29sZS5sb2cpIHsKCQkJCWNvbnNvbGUubG9nKCdFcnJvcjogY2JveEVsZW1lbnQgbWlzc2luZyBzZXR0aW5ncyBvYmplY3QnKTsKCQkJfQoJCX0gZWxzZSB7CgkJCXNldHRpbmdzID0gJC5leHRlbmQoe30sIGRhdGEpOwoJCX0KCQkKCQlmb3IgKGkgaW4gc2V0dGluZ3MpIHsKCQkJaWYgKCQuaXNGdW5jdGlvbihzZXR0aW5nc1tpXSkgJiYgaS5zbGljZSgwLCAyKSAhPT0gJ29uJykgeyAvLyBjaGVja3MgdG8gbWFrZSBzdXJlIHRoZSBmdW5jdGlvbiBpc24ndCBvbmUgb2YgdGhlIGNhbGxiYWNrcywgdGhleSB3aWxsIGJlIGhhbmRsZWQgYXQgdGhlIGFwcHJvcHJpYXRlIHRpbWUuCgkJCQlzZXR0aW5nc1tpXSA9IHNldHRpbmdzW2ldLmNhbGwoZWxlbWVudCk7CgkJCX0KCQl9CgkJCgkJc2V0dGluZ3MucmVsID0gc2V0dGluZ3MucmVsIHx8IGVsZW1lbnQucmVsIHx8ICQoZWxlbWVudCkuZGF0YSgncmVsJykgfHwgJ25vZm9sbG93JzsKCQlzZXR0aW5ncy5ocmVmID0gc2V0dGluZ3MuaHJlZiB8fCAkKGVsZW1lbnQpLmF0dHIoJ2hyZWYnKTsKCQlzZXR0aW5ncy50aXRsZSA9IHNldHRpbmdzLnRpdGxlIHx8IGVsZW1lbnQudGl0bGU7CgkJCgkJaWYgKHR5cGVvZiBzZXR0aW5ncy5ocmVmID09PSAic3RyaW5nIikgewoJCQlzZXR0aW5ncy5ocmVmID0gJC50cmltKHNldHRpbmdzLmhyZWYpOwoJCX0KCX0KCglmdW5jdGlvbiB0cmlnZ2VyKGV2ZW50LCBjYWxsYmFjaykgewoJCSQuZXZlbnQudHJpZ2dlcihldmVudCk7CgkJaWYgKGNhbGxiYWNrKSB7CgkJCWNhbGxiYWNrLmNhbGwoZWxlbWVudCk7CgkJfQoJfQoKCS8vIFNsaWRlc2hvdyBmdW5jdGlvbmFsaXR5CglmdW5jdGlvbiBzbGlkZXNob3coKSB7CgkJdmFyCgkJdGltZU91dCwKCQljbGFzc05hbWUgPSBwcmVmaXggKyAiU2xpZGVzaG93XyIsCgkJY2xpY2sgPSAiY2xpY2suIiArIHByZWZpeCwKCQlzdGFydCwKCQlzdG9wLAoJCWNsZWFyOwoJCQoJCWlmIChzZXR0aW5ncy5zbGlkZXNob3cgJiYgJHJlbGF0ZWRbMV0pIHsKCQkJc3RhcnQgPSBmdW5jdGlvbiAoKSB7CgkJCQkkc2xpZGVzaG93CgkJCQkJLnRleHQoc2V0dGluZ3Muc2xpZGVzaG93U3RvcCkKCQkJCQkudW5iaW5kKGNsaWNrKQoJCQkJCS5iaW5kKGV2ZW50X2NvbXBsZXRlLCBmdW5jdGlvbiAoKSB7CgkJCQkJCWlmIChzZXR0aW5ncy5sb29wIHx8ICRyZWxhdGVkW2luZGV4ICsgMV0pIHsKCQkJCQkJCXRpbWVPdXQgPSBzZXRUaW1lb3V0KHB1YmxpY01ldGhvZC5uZXh0LCBzZXR0aW5ncy5zbGlkZXNob3dTcGVlZCk7CgkJCQkJCX0KCQkJCQl9KQoJCQkJCS5iaW5kKGV2ZW50X2xvYWQsIGZ1bmN0aW9uICgpIHsKCQkJCQkJY2xlYXJUaW1lb3V0KHRpbWVPdXQpOwoJCQkJCX0pCgkJCQkJLm9uZShjbGljayArICcgJyArIGV2ZW50X2NsZWFudXAsIHN0b3ApOwoJCQkJJGJveC5yZW1vdmVDbGFzcyhjbGFzc05hbWUgKyAib2ZmIikuYWRkQ2xhc3MoY2xhc3NOYW1lICsgIm9uIik7CgkJCQl0aW1lT3V0ID0gc2V0VGltZW91dChwdWJsaWNNZXRob2QubmV4dCwgc2V0dGluZ3Muc2xpZGVzaG93U3BlZWQpOwoJCQl9OwoJCQkKCQkJc3RvcCA9IGZ1bmN0aW9uICgpIHsKCQkJCWNsZWFyVGltZW91dCh0aW1lT3V0KTsKCQkJCSRzbGlkZXNob3cKCQkJCQkudGV4dChzZXR0aW5ncy5zbGlkZXNob3dTdGFydCkKCQkJCQkudW5iaW5kKFtldmVudF9jb21wbGV0ZSwgZXZlbnRfbG9hZCwgZXZlbnRfY2xlYW51cCwgY2xpY2tdLmpvaW4oJyAnKSkKCQkJCQkub25lKGNsaWNrLCBmdW5jdGlvbiAoKSB7CgkJCQkJCXB1YmxpY01ldGhvZC5uZXh0KCk7CgkJCQkJCXN0YXJ0KCk7CgkJCQkJfSk7CgkJCQkkYm94LnJlbW92ZUNsYXNzKGNsYXNzTmFtZSArICJvbiIpLmFkZENsYXNzKGNsYXNzTmFtZSArICJvZmYiKTsKCQkJfTsKCQkJCgkJCWlmIChzZXR0aW5ncy5zbGlkZXNob3dBdXRvKSB7CgkJCQlzdGFydCgpOwoJCQl9IGVsc2UgewoJCQkJc3RvcCgpOwoJCQl9CgkJfSBlbHNlIHsKCQkJJGJveC5yZW1vdmVDbGFzcyhjbGFzc05hbWUgKyAib2ZmICIgKyBjbGFzc05hbWUgKyAib24iKTsKCQl9Cgl9CgoJZnVuY3Rpb24gbGF1bmNoKHRhcmdldCkgewoJCWlmICghY2xvc2luZykgewoJCQkKCQkJZWxlbWVudCA9IHRhcmdldDsKCQkJCgkJCW1ha2VTZXR0aW5ncygpOwoJCQkKCQkJJHJlbGF0ZWQgPSAkKGVsZW1lbnQpOwoJCQkKCQkJaW5kZXggPSAwOwoJCQkKCQkJaWYgKHNldHRpbmdzLnJlbCAhPT0gJ25vZm9sbG93JykgewoJCQkJJHJlbGF0ZWQgPSAkKCcuJyArIGJveEVsZW1lbnQpLmZpbHRlcihmdW5jdGlvbiAoKSB7CgkJCQkJdmFyIGRhdGEgPSAkLmRhdGEodGhpcywgY29sb3Jib3gpLAoJCQkJCQlyZWxSZWxhdGVkOwoKCQkJCQlpZiAoZGF0YSkgewoJCQkJCQlyZWxSZWxhdGVkID0gICQodGhpcykuZGF0YSgncmVsJykgfHwgZGF0YS5yZWwgfHwgdGhpcy5yZWw7CgkJCQkJfQoJCQkJCQoJCQkJCXJldHVybiAocmVsUmVsYXRlZCA9PT0gc2V0dGluZ3MucmVsKTsKCQkJCX0pOwoJCQkJaW5kZXggPSAkcmVsYXRlZC5pbmRleChlbGVtZW50KTsKCQkJCQoJCQkJLy8gQ2hlY2sgZGlyZWN0IGNhbGxzIHRvIENvbG9yQm94LgoJCQkJaWYgKGluZGV4ID09PSAtMSkgewoJCQkJCSRyZWxhdGVkID0gJHJlbGF0ZWQuYWRkKGVsZW1lbnQpOwoJCQkJCWluZGV4ID0gJHJlbGF0ZWQubGVuZ3RoIC0gMTsKCQkJCX0KCQkJfQoJCQkKCQkJaWYgKCFvcGVuKSB7CgkJCQlvcGVuID0gYWN0aXZlID0gdHJ1ZTsgLy8gUHJldmVudHMgdGhlIHBhZ2UtY2hhbmdlIGFjdGlvbiBmcm9tIHF1ZXVpbmcgdXAgaWYgdGhlIHZpc2l0b3IgaG9sZHMgZG93biB0aGUgbGVmdCBvciByaWdodCBrZXlzLgoJCQkJCgkJCQkkYm94LnNob3coKTsKCQkJCQoJCQkJaWYgKHNldHRpbmdzLnJldHVybkZvY3VzKSB7CgkJCQkJJChlbGVtZW50KS5ibHVyKCkub25lKGV2ZW50X2Nsb3NlZCwgZnVuY3Rpb24gKCkgewoJCQkJCQkkKHRoaXMpLmZvY3VzKCk7CgkJCQkJfSk7CgkJCQl9CgkJCQkKCQkJCS8vICtzZXR0aW5ncy5vcGFjaXR5IGF2b2lkcyBhIHByb2JsZW0gaW4gSUUgd2hlbiB1c2luZyBub24temVyby1wcmVmaXhlZC1zdHJpbmctdmFsdWVzLCBsaWtlICcuNScKCQkJCSRvdmVybGF5LmNzcyh7Im9wYWNpdHkiOiArc2V0dGluZ3Mub3BhY2l0eSwgImN1cnNvciI6IHNldHRpbmdzLm92ZXJsYXlDbG9zZSA/ICJwb2ludGVyIiA6ICJhdXRvIn0pLnNob3coKTsKCQkJCQoJCQkJLy8gT3BlbnMgaW5pdGFsIGVtcHR5IENvbG9yQm94IHByaW9yIHRvIGNvbnRlbnQgYmVpbmcgbG9hZGVkLgoJCQkJc2V0dGluZ3MudyA9IHNldFNpemUoc2V0dGluZ3MuaW5pdGlhbFdpZHRoLCAneCcpOwoJCQkJc2V0dGluZ3MuaCA9IHNldFNpemUoc2V0dGluZ3MuaW5pdGlhbEhlaWdodCwgJ3knKTsKCQkJCXB1YmxpY01ldGhvZC5wb3NpdGlvbigpOwoJCQkJCgkJCQlpZiAoaXNJRTYpIHsKCQkJCQkkd2luZG93LmJpbmQoJ3Jlc2l6ZS4nICsgZXZlbnRfaWU2ICsgJyBzY3JvbGwuJyArIGV2ZW50X2llNiwgZnVuY3Rpb24gKCkgewoJCQkJCQkkb3ZlcmxheS5jc3Moe3dpZHRoOiB3aW5XaWR0aCgpLCBoZWlnaHQ6IHdpbkhlaWdodCgpLCB0b3A6ICR3aW5kb3cuc2Nyb2xsVG9wKCksIGxlZnQ6ICR3aW5kb3cuc2Nyb2xsTGVmdCgpfSk7CgkJCQkJfSkudHJpZ2dlcigncmVzaXplLicgKyBldmVudF9pZTYpOwoJCQkJfQoJCQkJCgkJCQl0cmlnZ2VyKGV2ZW50X29wZW4sIHNldHRpbmdzLm9uT3Blbik7CgkJCQkKCQkJCSRncm91cENvbnRyb2xzLmFkZCgkdGl0bGUpLmhpZGUoKTsKCQkJCQoJCQkJJGNsb3NlLmh0bWwoc2V0dGluZ3MuY2xvc2UpLnNob3coKTsKCQkJfQoJCQkKCQkJcHVibGljTWV0aG9kLmxvYWQodHJ1ZSk7CgkJfQoJfQoKCS8vIENvbG9yQm94J3MgbWFya3VwIG5lZWRzIHRvIGJlIGFkZGVkIHRvIHRoZSBET00gcHJpb3IgdG8gYmVpbmcgY2FsbGVkCgkvLyBzbyB0aGF0IHRoZSBicm93c2VyIHdpbGwgZ28gYWhlYWQgYW5kIGxvYWQgdGhlIENTUyBiYWNrZ3JvdW5kIGltYWdlcy4KCWZ1bmN0aW9uIGFwcGVuZEhUTUwoKSB7CgkJaWYgKCEkYm94ICYmIGRvY3VtZW50LmJvZHkpIHsKCQkJaW5pdCA9IGZhbHNlOwoKCQkJJHdpbmRvdyA9ICQod2luZG93KTsKCQkJJGJveCA9ICR0YWcoZGl2KS5hdHRyKHtpZDogY29sb3Jib3gsICdjbGFzcyc6IGlzSUUgPyBwcmVmaXggKyAoaXNJRTYgPyAnSUU2JyA6ICdJRScpIDogJyd9KS5oaWRlKCk7CgkJCSRvdmVybGF5ID0gJHRhZyhkaXYsICJPdmVybGF5IiwgaXNJRTYgPyAncG9zaXRpb246YWJzb2x1dGUnIDogJycpLmhpZGUoKTsKCQkJJGxvYWRpbmdPdmVybGF5ID0gJHRhZyhkaXYsICJMb2FkaW5nT3ZlcmxheSIpLmFkZCgkdGFnKGRpdiwgIkxvYWRpbmdHcmFwaGljIikpOwoJCQkkd3JhcCA9ICR0YWcoZGl2LCAiV3JhcHBlciIpOwoJCQkkY29udGVudCA9ICR0YWcoZGl2LCAiQ29udGVudCIpLmFwcGVuZCgKCQkJCSRsb2FkZWQgPSAkdGFnKGRpdiwgIkxvYWRlZENvbnRlbnQiLCAnd2lkdGg6MDsgaGVpZ2h0OjA7IG92ZXJmbG93OmhpZGRlbicpLAoJCQkJJHRpdGxlID0gJHRhZyhkaXYsICJUaXRsZSIpLAoJCQkJJGN1cnJlbnQgPSAkdGFnKGRpdiwgIkN1cnJlbnQiKSwKCQkJCSRuZXh0ID0gJHRhZyhkaXYsICJOZXh0IiksCgkJCQkkcHJldiA9ICR0YWcoZGl2LCAiUHJldmlvdXMiKSwKCQkJCSRzbGlkZXNob3cgPSAkdGFnKGRpdiwgIlNsaWRlc2hvdyIpLmJpbmQoZXZlbnRfb3Blbiwgc2xpZGVzaG93KSwKCQkJCSRjbG9zZSA9ICR0YWcoZGl2LCAiQ2xvc2UiKQoJCQkpOwoJCQkKCQkJJHdyYXAuYXBwZW5kKCAvLyBUaGUgM3gzIEdyaWQgdGhhdCBtYWtlcyB1cCBDb2xvckJveAoJCQkJJHRhZyhkaXYpLmFwcGVuZCgKCQkJCQkkdGFnKGRpdiwgIlRvcExlZnQiKSwKCQkJCQkkdG9wQm9yZGVyID0gJHRhZyhkaXYsICJUb3BDZW50ZXIiKSwKCQkJCQkkdGFnKGRpdiwgIlRvcFJpZ2h0IikKCQkJCSksCgkJCQkkdGFnKGRpdiwgZmFsc2UsICdjbGVhcjpsZWZ0JykuYXBwZW5kKAoJCQkJCSRsZWZ0Qm9yZGVyID0gJHRhZyhkaXYsICJNaWRkbGVMZWZ0IiksCgkJCQkJJGNvbnRlbnQsCgkJCQkJJHJpZ2h0Qm9yZGVyID0gJHRhZyhkaXYsICJNaWRkbGVSaWdodCIpCgkJCQkpLAoJCQkJJHRhZyhkaXYsIGZhbHNlLCAnY2xlYXI6bGVmdCcpLmFwcGVuZCgKCQkJCQkkdGFnKGRpdiwgIkJvdHRvbUxlZnQiKSwKCQkJCQkkYm90dG9tQm9yZGVyID0gJHRhZyhkaXYsICJCb3R0b21DZW50ZXIiKSwKCQkJCQkkdGFnKGRpdiwgIkJvdHRvbVJpZ2h0IikKCQkJCSkKCQkJKS5maW5kKCdkaXYgZGl2JykuY3NzKHsnZmxvYXQnOiAnbGVmdCd9KTsKCQkJCgkJCSRsb2FkaW5nQmF5ID0gJHRhZyhkaXYsIGZhbHNlLCAncG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOjk5OTlweDsgdmlzaWJpbGl0eTpoaWRkZW47IGRpc3BsYXk6bm9uZScpOwoJCQkKCQkJJGdyb3VwQ29udHJvbHMgPSAkbmV4dC5hZGQoJHByZXYpLmFkZCgkY3VycmVudCkuYWRkKCRzbGlkZXNob3cpOwoKCQkJJChkb2N1bWVudC5ib2R5KS5hcHBlbmQoJG92ZXJsYXksICRib3guYXBwZW5kKCR3cmFwLCAkbG9hZGluZ0JheSkpOwoJCX0KCX0KCgkvLyBBZGQgQ29sb3JCb3gncyBldmVudCBiaW5kaW5ncwoJZnVuY3Rpb24gYWRkQmluZGluZ3MoKSB7CgkJaWYgKCRib3gpIHsKCQkJaWYgKCFpbml0KSB7CgkJCQlpbml0ID0gdHJ1ZTsKCgkJCQkvLyBDYWNoZSB2YWx1ZXMgbmVlZGVkIGZvciBzaXplIGNhbGN1bGF0aW9ucwoJCQkJaW50ZXJmYWNlSGVpZ2h0ID0gJHRvcEJvcmRlci5oZWlnaHQoKSArICRib3R0b21Cb3JkZXIuaGVpZ2h0KCkgKyAkY29udGVudC5vdXRlckhlaWdodCh0cnVlKSAtICRjb250ZW50LmhlaWdodCgpOy8vU3VidHJhY3Rpb24gbmVlZGVkIGZvciBJRTYKCQkJCWludGVyZmFjZVdpZHRoID0gJGxlZnRCb3JkZXIud2lkdGgoKSArICRyaWdodEJvcmRlci53aWR0aCgpICsgJGNvbnRlbnQub3V0ZXJXaWR0aCh0cnVlKSAtICRjb250ZW50LndpZHRoKCk7CgkJCQlsb2FkZWRIZWlnaHQgPSAkbG9hZGVkLm91dGVySGVpZ2h0KHRydWUpOwoJCQkJbG9hZGVkV2lkdGggPSAkbG9hZGVkLm91dGVyV2lkdGgodHJ1ZSk7CgkJCQkKCQkJCS8vIFNldHRpbmcgcGFkZGluZyB0byByZW1vdmUgdGhlIG5lZWQgdG8gZG8gc2l6ZSBjb252ZXJzaW9ucyBkdXJpbmcgdGhlIGFuaW1hdGlvbiBzdGVwLgoJCQkJJGJveC5jc3MoeyJwYWRkaW5nLWJvdHRvbSI6IGludGVyZmFjZUhlaWdodCwgInBhZGRpbmctcmlnaHQiOiBpbnRlcmZhY2VXaWR0aH0pOwoKCQkJCS8vIEFub255bW91cyBmdW5jdGlvbnMgaGVyZSBrZWVwIHRoZSBwdWJsaWMgbWV0aG9kIGZyb20gYmVpbmcgY2FjaGVkLCB0aGVyZWJ5IGFsbG93aW5nIHRoZW0gdG8gYmUgcmVkZWZpbmVkIG9uIHRoZSBmbHkuCgkJCQkkbmV4dC5jbGljayhmdW5jdGlvbiAoKSB7CgkJCQkJcHVibGljTWV0aG9kLm5leHQoKTsKCQkJCX0pOwoJCQkJJHByZXYuY2xpY2soZnVuY3Rpb24gKCkgewoJCQkJCXB1YmxpY01ldGhvZC5wcmV2KCk7CgkJCQl9KTsKCQkJCSRjbG9zZS5jbGljayhmdW5jdGlvbiAoKSB7CgkJCQkJcHVibGljTWV0aG9kLmNsb3NlKCk7CgkJCQl9KTsKCQkJCSRvdmVybGF5LmNsaWNrKGZ1bmN0aW9uICgpIHsKCQkJCQlpZiAoc2V0dGluZ3Mub3ZlcmxheUNsb3NlKSB7CgkJCQkJCXB1YmxpY01ldGhvZC5jbG9zZSgpOwoJCQkJCX0KCQkJCX0pOwoJCQkJCgkJCQkvLyBLZXkgQmluZGluZ3MKCQkJCSQoZG9jdW1lbnQpLmJpbmQoJ2tleWRvd24uJyArIHByZWZpeCwgZnVuY3Rpb24gKGUpIHsKCQkJCQl2YXIga2V5ID0gZS5rZXlDb2RlOwoJCQkJCWlmIChvcGVuICYmIHNldHRpbmdzLmVzY0tleSAmJiBrZXkgPT09IDI3KSB7CgkJCQkJCWUucHJldmVudERlZmF1bHQoKTsKCQkJCQkJcHVibGljTWV0aG9kLmNsb3NlKCk7CgkJCQkJfQoJCQkJCWlmIChvcGVuICYmIHNldHRpbmdzLmFycm93S2V5ICYmICRyZWxhdGVkWzFdKSB7CgkJCQkJCWlmIChrZXkgPT09IDM3KSB7CgkJCQkJCQllLnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCQkkcHJldi5jbGljaygpOwoJCQkJCQl9IGVsc2UgaWYgKGtleSA9PT0gMzkpIHsKCQkJCQkJCWUucHJldmVudERlZmF1bHQoKTsKCQkJCQkJCSRuZXh0LmNsaWNrKCk7CgkJCQkJCX0KCQkJCQl9CgkJCQl9KTsKCgkJCQkkKCcuJyArIGJveEVsZW1lbnQsIGRvY3VtZW50KS5saXZlKCdjbGljaycsIGZ1bmN0aW9uIChlKSB7CgkJCQkJLy8gaWdub3JlIG5vbi1sZWZ0LW1vdXNlLWNsaWNrcyBhbmQgY2xpY2tzIG1vZGlmaWVkIHdpdGggY3RybCAvIGNvbW1hbmQsIHNoaWZ0LCBvciBhbHQuCgkJCQkJLy8gU2VlOiBodHRwOi8vamFja2xtb29yZS5jb20vbm90ZXMvY2xpY2stZXZlbnRzLwoJCQkJCWlmICghKGUud2hpY2ggPiAxIHx8IGUuc2hpZnRLZXkgfHwgZS5hbHRLZXkgfHwgZS5tZXRhS2V5KSkgewoJCQkJCQllLnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCWxhdW5jaCh0aGlzKTsKCQkJCQl9CgkJCQl9KTsKCQkJfQoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkJcmV0dXJuIGZhbHNlOwoJfQoKCS8vIERvbid0IGRvIGFueXRoaW5nIGlmIENvbG9yQm94IGFscmVhZHkgZXhpc3RzLgoJaWYgKCQuY29sb3Jib3gpIHsKCQlyZXR1cm47Cgl9CgoJLy8gQXBwZW5kIHRoZSBIVE1MIHdoZW4gdGhlIERPTSBsb2FkcwoJJChhcHBlbmRIVE1MKTsKCgoJLy8gKioqKioqKioqKioqKioqKgoJLy8gUFVCTElDIEZVTkNUSU9OUwoJLy8gVXNhZ2UgZm9ybWF0OiAkLmZuLmNvbG9yYm94LmNsb3NlKCk7CgkvLyBVc2FnZSBmcm9tIHdpdGhpbiBhbiBpZnJhbWU6IHBhcmVudC4kLmZuLmNvbG9yYm94LmNsb3NlKCk7CgkvLyAqKioqKioqKioqKioqKioqCgkKCXB1YmxpY01ldGhvZCA9ICQuZm5bY29sb3Jib3hdID0gJFtjb2xvcmJveF0gPSBmdW5jdGlvbiAob3B0aW9ucywgY2FsbGJhY2spIHsKCQl2YXIgJHRoaXMgPSB0aGlzOwoJCQoJCW9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwoJCQoJCWFwcGVuZEhUTUwoKTsKCgkJaWYgKGFkZEJpbmRpbmdzKCkpIHsKCQkJaWYgKCEkdGhpc1swXSkgewoJCQkJaWYgKCR0aGlzLnNlbGVjdG9yKSB7IC8vIGlmIGEgc2VsZWN0b3Igd2FzIGdpdmVuIGFuZCBpdCBkaWRuJ3QgbWF0Y2ggYW55IGVsZW1lbnRzLCBnbyBhaGVhZCBhbmQgZXhpdC4KCQkJCQlyZXR1cm4gJHRoaXM7CgkJCQl9CgkJCQkvLyBpZiBubyBzZWxlY3RvciB3YXMgZ2l2ZW4gKGllLiAkLmNvbG9yYm94KCkpLCBjcmVhdGUgYSB0ZW1wb3JhcnkgZWxlbWVudCB0byB3b3JrIHdpdGgKCQkJCSR0aGlzID0gJCgnPGEvPicpOwoJCQkJb3B0aW9ucy5vcGVuID0gdHJ1ZTsgLy8gYXNzdW1lIGFuIGltbWVkaWF0ZSBvcGVuCgkJCX0KCQkJCgkJCWlmIChjYWxsYmFjaykgewoJCQkJb3B0aW9ucy5vbkNvbXBsZXRlID0gY2FsbGJhY2s7CgkJCX0KCQkJCgkJCSR0aGlzLmVhY2goZnVuY3Rpb24gKCkgewoJCQkJJC5kYXRhKHRoaXMsIGNvbG9yYm94LCAkLmV4dGVuZCh7fSwgJC5kYXRhKHRoaXMsIGNvbG9yYm94KSB8fCBkZWZhdWx0cywgb3B0aW9ucykpOwoJCQl9KS5hZGRDbGFzcyhib3hFbGVtZW50KTsKCQkJCgkJCWlmICgoJC5pc0Z1bmN0aW9uKG9wdGlvbnMub3BlbikgJiYgb3B0aW9ucy5vcGVuLmNhbGwoJHRoaXMpKSB8fCBvcHRpb25zLm9wZW4pIHsKCQkJCWxhdW5jaCgkdGhpc1swXSk7CgkJCX0KCQl9CgkJCgkJcmV0dXJuICR0aGlzOwoJfTsKCglwdWJsaWNNZXRob2QucG9zaXRpb24gPSBmdW5jdGlvbiAoc3BlZWQsIGxvYWRlZENhbGxiYWNrKSB7CgkJdmFyCgkJY3NzLAoJCXRvcCA9IDAsCgkJbGVmdCA9IDAsCgkJb2Zmc2V0ID0gJGJveC5vZmZzZXQoKSwKCQlzY3JvbGxUb3AsCgkJc2Nyb2xsTGVmdDsKCQkKCQkkd2luZG93LnVuYmluZCgncmVzaXplLicgKyBwcmVmaXgpOwoKCQkvLyByZW1vdmUgdGhlIG1vZGFsIHNvIHRoYXQgaXQgZG9lc24ndCBpbmZsdWVuY2UgdGhlIGRvY3VtZW50IHdpZHRoL2hlaWdodAoJCSRib3guY3NzKHt0b3A6IC05ZTQsIGxlZnQ6IC05ZTR9KTsKCgkJc2Nyb2xsVG9wID0gJHdpbmRvdy5zY3JvbGxUb3AoKTsKCQlzY3JvbGxMZWZ0ID0gJHdpbmRvdy5zY3JvbGxMZWZ0KCk7CgoJCWlmIChzZXR0aW5ncy5maXhlZCAmJiAhaXNJRTYpIHsKCQkJb2Zmc2V0LnRvcCAtPSBzY3JvbGxUb3A7CgkJCW9mZnNldC5sZWZ0IC09IHNjcm9sbExlZnQ7CgkJCSRib3guY3NzKHtwb3NpdGlvbjogJ2ZpeGVkJ30pOwoJCX0gZWxzZSB7CgkJCXRvcCA9IHNjcm9sbFRvcDsKCQkJbGVmdCA9IHNjcm9sbExlZnQ7CgkJCSRib3guY3NzKHtwb3NpdGlvbjogJ2Fic29sdXRlJ30pOwoJCX0KCgkJLy8ga2VlcHMgdGhlIHRvcCBhbmQgbGVmdCBwb3NpdGlvbnMgd2l0aGluIHRoZSBicm93c2VyJ3Mgdmlld3BvcnQuCgkJaWYgKHNldHRpbmdzLnJpZ2h0ICE9PSBmYWxzZSkgewoJCQlsZWZ0ICs9IE1hdGgubWF4KHdpbldpZHRoKCkgLSBzZXR0aW5ncy53IC0gbG9hZGVkV2lkdGggLSBpbnRlcmZhY2VXaWR0aCAtIHNldFNpemUoc2V0dGluZ3MucmlnaHQsICd4JyksIDApOwoJCX0gZWxzZSBpZiAoc2V0dGluZ3MubGVmdCAhPT0gZmFsc2UpIHsKCQkJbGVmdCArPSBzZXRTaXplKHNldHRpbmdzLmxlZnQsICd4Jyk7CgkJfSBlbHNlIHsKCQkJbGVmdCArPSBNYXRoLnJvdW5kKE1hdGgubWF4KHdpbldpZHRoKCkgLSBzZXR0aW5ncy53IC0gbG9hZGVkV2lkdGggLSBpbnRlcmZhY2VXaWR0aCwgMCkgLyAyKTsKCQl9CgkJCgkJaWYgKHNldHRpbmdzLmJvdHRvbSAhPT0gZmFsc2UpIHsKCQkJdG9wICs9IE1hdGgubWF4KHdpbkhlaWdodCgpIC0gc2V0dGluZ3MuaCAtIGxvYWRlZEhlaWdodCAtIGludGVyZmFjZUhlaWdodCAtIHNldFNpemUoc2V0dGluZ3MuYm90dG9tLCAneScpLCAwKTsKCQl9IGVsc2UgaWYgKHNldHRpbmdzLnRvcCAhPT0gZmFsc2UpIHsKCQkJdG9wICs9IHNldFNpemUoc2V0dGluZ3MudG9wLCAneScpOwoJCX0gZWxzZSB7CgkJCXRvcCArPSBNYXRoLnJvdW5kKE1hdGgubWF4KHdpbkhlaWdodCgpIC0gc2V0dGluZ3MuaCAtIGxvYWRlZEhlaWdodCAtIGludGVyZmFjZUhlaWdodCwgMCkgLyAyKTsKCQl9CgoJCSRib3guY3NzKHt0b3A6IG9mZnNldC50b3AsIGxlZnQ6IG9mZnNldC5sZWZ0fSk7CgoJCS8vIHNldHRpbmcgdGhlIHNwZWVkIHRvIDAgdG8gcmVkdWNlIHRoZSBkZWxheSBiZXR3ZWVuIHNhbWUtc2l6ZWQgY29udGVudC4KCQlzcGVlZCA9ICgkYm94LndpZHRoKCkgPT09IHNldHRpbmdzLncgKyBsb2FkZWRXaWR0aCAmJiAkYm94LmhlaWdodCgpID09PSBzZXR0aW5ncy5oICsgbG9hZGVkSGVpZ2h0KSA/IDAgOiBzcGVlZCB8fCAwOwoJCQoJCS8vIHRoaXMgZ2l2ZXMgdGhlIHdyYXBwZXIgcGxlbnR5IG9mIGJyZWF0aGluZyByb29tIHNvIGl0J3MgZmxvYXRlZCBjb250ZW50cyBjYW4gbW92ZSBhcm91bmQgc21vb3RobHksCgkJLy8gYnV0IGl0IGhhcyB0byBiZSBzaHJhbmsgZG93biBhcm91bmQgdGhlIHNpemUgb2YgZGl2I2NvbG9yYm94IHdoZW4gaXQncyBkb25lLiAgSWYgbm90LAoJCS8vIGl0IGNhbiBpbnZva2UgYW4gb2JzY3VyZSBJRSBidWcgd2hlbiB1c2luZyBpZnJhbWVzLgoJCSR3cmFwWzBdLnN0eWxlLndpZHRoID0gJHdyYXBbMF0uc3R5bGUuaGVpZ2h0ID0gIjk5OTlweCI7CgkJCgkJZnVuY3Rpb24gbW9kYWxEaW1lbnNpb25zKHRoYXQpIHsKCQkJJHRvcEJvcmRlclswXS5zdHlsZS53aWR0aCA9ICRib3R0b21Cb3JkZXJbMF0uc3R5bGUud2lkdGggPSAkY29udGVudFswXS5zdHlsZS53aWR0aCA9IHRoYXQuc3R5bGUud2lkdGg7CgkJCSRjb250ZW50WzBdLnN0eWxlLmhlaWdodCA9ICRsZWZ0Qm9yZGVyWzBdLnN0eWxlLmhlaWdodCA9ICRyaWdodEJvcmRlclswXS5zdHlsZS5oZWlnaHQgPSB0aGF0LnN0eWxlLmhlaWdodDsKCQl9CgoJCWNzcyA9IHt3aWR0aDogc2V0dGluZ3MudyArIGxvYWRlZFdpZHRoLCBoZWlnaHQ6IHNldHRpbmdzLmggKyBsb2FkZWRIZWlnaHQsIHRvcDogdG9wLCBsZWZ0OiBsZWZ0fTsKCQlpZihzcGVlZD09PTApeyAvLyB0ZW1wb3Jhcnkgd29ya2Fyb3VuZCB0byBzaWRlLXN0ZXAgalF1ZXJ5LVVJIDEuOCBidWcgKGh0dHA6Ly9idWdzLmpxdWVyeS5jb20vdGlja2V0LzEyMjczKQoJCQkkYm94LmNzcyhjc3MpOwoJCX0KCQkkYm94LmRlcXVldWUoKS5hbmltYXRlKGNzcywgewoJCQlkdXJhdGlvbjogc3BlZWQsCgkJCWNvbXBsZXRlOiBmdW5jdGlvbiAoKSB7CgkJCQltb2RhbERpbWVuc2lvbnModGhpcyk7CgkJCQkKCQkJCWFjdGl2ZSA9IGZhbHNlOwoJCQkJCgkJCQkvLyBzaHJpbmsgdGhlIHdyYXBwZXIgZG93biB0byBleGFjdGx5IHRoZSBzaXplIG9mIGNvbG9yYm94IHRvIGF2b2lkIGEgYnVnIGluIElFJ3MgaWZyYW1lIGltcGxlbWVudGF0aW9uLgoJCQkJJHdyYXBbMF0uc3R5bGUud2lkdGggPSAoc2V0dGluZ3MudyArIGxvYWRlZFdpZHRoICsgaW50ZXJmYWNlV2lkdGgpICsgInB4IjsKCQkJCSR3cmFwWzBdLnN0eWxlLmhlaWdodCA9IChzZXR0aW5ncy5oICsgbG9hZGVkSGVpZ2h0ICsgaW50ZXJmYWNlSGVpZ2h0KSArICJweCI7CgkJCQkKCQkJCWlmIChzZXR0aW5ncy5yZXBvc2l0aW9uKSB7CgkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKSB7ICAvLyBzbWFsbCBkZWxheSBiZWZvcmUgYmluZGluZyBvbnJlc2l6ZSBkdWUgdG8gYW4gSUU4IGJ1Zy4KCQkJCQkJJHdpbmRvdy5iaW5kKCdyZXNpemUuJyArIHByZWZpeCwgcHVibGljTWV0aG9kLnBvc2l0aW9uKTsKCQkJCQl9LCAxKTsKCQkJCX0KCgkJCQlpZiAobG9hZGVkQ2FsbGJhY2spIHsKCQkJCQlsb2FkZWRDYWxsYmFjaygpOwoJCQkJfQoJCQl9LAoJCQlzdGVwOiBmdW5jdGlvbiAoKSB7CgkJCQltb2RhbERpbWVuc2lvbnModGhpcyk7CgkJCX0KCQl9KTsKCX07CgoJcHVibGljTWV0aG9kLnJlc2l6ZSA9IGZ1bmN0aW9uIChvcHRpb25zKSB7CgkJaWYgKG9wZW4pIHsKCQkJb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CgkJCQoJCQlpZiAob3B0aW9ucy53aWR0aCkgewoJCQkJc2V0dGluZ3MudyA9IHNldFNpemUob3B0aW9ucy53aWR0aCwgJ3gnKSAtIGxvYWRlZFdpZHRoIC0gaW50ZXJmYWNlV2lkdGg7CgkJCX0KCQkJaWYgKG9wdGlvbnMuaW5uZXJXaWR0aCkgewoJCQkJc2V0dGluZ3MudyA9IHNldFNpemUob3B0aW9ucy5pbm5lcldpZHRoLCAneCcpOwoJCQl9CgkJCSRsb2FkZWQuY3NzKHt3aWR0aDogc2V0dGluZ3Mud30pOwoJCQkKCQkJaWYgKG9wdGlvbnMuaGVpZ2h0KSB7CgkJCQlzZXR0aW5ncy5oID0gc2V0U2l6ZShvcHRpb25zLmhlaWdodCwgJ3knKSAtIGxvYWRlZEhlaWdodCAtIGludGVyZmFjZUhlaWdodDsKCQkJfQoJCQlpZiAob3B0aW9ucy5pbm5lckhlaWdodCkgewoJCQkJc2V0dGluZ3MuaCA9IHNldFNpemUob3B0aW9ucy5pbm5lckhlaWdodCwgJ3knKTsKCQkJfQoJCQlpZiAoIW9wdGlvbnMuaW5uZXJIZWlnaHQgJiYgIW9wdGlvbnMuaGVpZ2h0KSB7CgkJCQkkbG9hZGVkLmNzcyh7aGVpZ2h0OiAiYXV0byJ9KTsKCQkJCXNldHRpbmdzLmggPSAkbG9hZGVkLmhlaWdodCgpOwoJCQl9CgkJCSRsb2FkZWQuY3NzKHtoZWlnaHQ6IHNldHRpbmdzLmh9KTsKCQkJCgkJCXB1YmxpY01ldGhvZC5wb3NpdGlvbihzZXR0aW5ncy50cmFuc2l0aW9uID09PSAibm9uZSIgPyAwIDogc2V0dGluZ3Muc3BlZWQpOwoJCX0KCX07CgoJcHVibGljTWV0aG9kLnByZXAgPSBmdW5jdGlvbiAob2JqZWN0KSB7CgkJaWYgKCFvcGVuKSB7CgkJCXJldHVybjsKCQl9CgkJCgkJdmFyIGNhbGxiYWNrLCBzcGVlZCA9IHNldHRpbmdzLnRyYW5zaXRpb24gPT09ICJub25lIiA/IDAgOiBzZXR0aW5ncy5zcGVlZDsKCQkKCQkkbG9hZGVkLnJlbW92ZSgpOwoJCSRsb2FkZWQgPSAkdGFnKGRpdiwgJ0xvYWRlZENvbnRlbnQnKS5hcHBlbmQob2JqZWN0KTsKCQkKCQlmdW5jdGlvbiBnZXRXaWR0aCgpIHsKCQkJc2V0dGluZ3MudyA9IHNldHRpbmdzLncgfHwgJGxvYWRlZC53aWR0aCgpOwoJCQlzZXR0aW5ncy53ID0gc2V0dGluZ3MubXcgJiYgc2V0dGluZ3MubXcgPCBzZXR0aW5ncy53ID8gc2V0dGluZ3MubXcgOiBzZXR0aW5ncy53OwoJCQlyZXR1cm4gc2V0dGluZ3MudzsKCQl9CgkJZnVuY3Rpb24gZ2V0SGVpZ2h0KCkgewoJCQlzZXR0aW5ncy5oID0gc2V0dGluZ3MuaCB8fCAkbG9hZGVkLmhlaWdodCgpOwoJCQlzZXR0aW5ncy5oID0gc2V0dGluZ3MubWggJiYgc2V0dGluZ3MubWggPCBzZXR0aW5ncy5oID8gc2V0dGluZ3MubWggOiBzZXR0aW5ncy5oOwoJCQlyZXR1cm4gc2V0dGluZ3MuaDsKCQl9CgkJCgkJJGxvYWRlZC5oaWRlKCkKCQkuYXBwZW5kVG8oJGxvYWRpbmdCYXkuc2hvdygpKS8vIGNvbnRlbnQgaGFzIHRvIGJlIGFwcGVuZGVkIHRvIHRoZSBET00gZm9yIGFjY3VyYXRlIHNpemUgY2FsY3VsYXRpb25zLgoJCS5jc3Moe3dpZHRoOiBnZXRXaWR0aCgpLCBvdmVyZmxvdzogc2V0dGluZ3Muc2Nyb2xsaW5nID8gJ2F1dG8nIDogJ2hpZGRlbid9KQoJCS5jc3Moe2hlaWdodDogZ2V0SGVpZ2h0KCl9KS8vIHNldHMgdGhlIGhlaWdodCBpbmRlcGVuZGVudGx5IGZyb20gdGhlIHdpZHRoIGluIGNhc2UgdGhlIG5ldyB3aWR0aCBpbmZsdWVuY2VzIHRoZSB2YWx1ZSBvZiBoZWlnaHQuCgkJLnByZXBlbmRUbygkY29udGVudCk7CgkJCgkJJGxvYWRpbmdCYXkuaGlkZSgpOwoJCQoJCS8vIGZsb2F0aW5nIHRoZSBJTUcgcmVtb3ZlcyB0aGUgYm90dG9tIGxpbmUtaGVpZ2h0IGFuZCBmaXhlZCBhIHByb2JsZW0gd2hlcmUgSUUgbWlzY2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgdGhlIHBhcmVudCBlbGVtZW50IGFzIDEwMCUgb2YgdGhlIGRvY3VtZW50IHdpZHRoLgoJCS8vJChwaG90bykuY3NzKHsnZmxvYXQnOiAnbm9uZScsIG1hcmdpbkxlZnQ6ICdhdXRvJywgbWFyZ2luUmlnaHQ6ICdhdXRvJ30pOwoJCQoJCSQocGhvdG8pLmNzcyh7J2Zsb2F0JzogJ25vbmUnfSk7CgkJCgkJLy8gSGlkZXMgU0VMRUNUIGVsZW1lbnRzIGluIElFNiBiZWNhdXNlIHRoZXkgd291bGQgb3RoZXJ3aXNlIHNpdCBvbiB0b3Agb2YgdGhlIG92ZXJsYXkuCgkJaWYgKGlzSUU2KSB7CgkJCSQoJ3NlbGVjdCcpLm5vdCgkYm94LmZpbmQoJ3NlbGVjdCcpKS5maWx0ZXIoZnVuY3Rpb24gKCkgewoJCQkJcmV0dXJuIHRoaXMuc3R5bGUudmlzaWJpbGl0eSAhPT0gJ2hpZGRlbic7CgkJCX0pLmNzcyh7J3Zpc2liaWxpdHknOiAnaGlkZGVuJ30pLm9uZShldmVudF9jbGVhbnVwLCBmdW5jdGlvbiAoKSB7CgkJCQl0aGlzLnN0eWxlLnZpc2liaWxpdHkgPSAnaW5oZXJpdCc7CgkJCX0pOwoJCX0KCQkKCQljYWxsYmFjayA9IGZ1bmN0aW9uICgpIHsKCQkJdmFyIHByZWxvYWQsCgkJCQlpLAoJCQkJdG90YWwgPSAkcmVsYXRlZC5sZW5ndGgsCgkJCQlpZnJhbWUsCgkJCQlmcmFtZUJvcmRlciA9ICdmcmFtZUJvcmRlcicsCgkJCQlhbGxvd1RyYW5zcGFyZW5jeSA9ICdhbGxvd1RyYW5zcGFyZW5jeScsCgkJCQljb21wbGV0ZSwKCQkJCXNyYywKCQkJCWltZywKCQkJCWRhdGE7CgkJCQoJCQlpZiAoIW9wZW4pIHsKCQkJCXJldHVybjsKCQkJfQoJCQkKCQkJZnVuY3Rpb24gcmVtb3ZlRmlsdGVyKCkgewoJCQkJaWYgKGlzSUUpIHsKCQkJCQkkYm94WzBdLnN0eWxlLnJlbW92ZUF0dHJpYnV0ZSgnZmlsdGVyJyk7CgkJCQl9CgkJCX0KCQkJCgkJCWNvbXBsZXRlID0gZnVuY3Rpb24gKCkgewoJCQkJY2xlYXJUaW1lb3V0KGxvYWRpbmdUaW1lcik7CgkJCQkvLyBEZXRhY2hpbmcgZm9yY2VzIEFuZHJpb2Qgc3RvY2sgYnJvd3NlciB0byByZWRyYXcgdGhlIGFyZWEgdW5kZXJuZWF0IHRoZSBsb2FkaW5nIG92ZXJsYXkuICBIaWRpbmcgYWxvbmUgaXNuJ3QgZW5vdWdoLgoJCQkJJGxvYWRpbmdPdmVybGF5LmRldGFjaCgpLmhpZGUoKTsKCQkJCXRyaWdnZXIoZXZlbnRfY29tcGxldGUsIHNldHRpbmdzLm9uQ29tcGxldGUpOwoJCQl9OwoJCQkKCQkJaWYgKGlzSUUpIHsKCQkJCS8vVGhpcyBmYWRlSW4gaGVscHMgdGhlIGJpY3ViaWMgcmVzYW1wbGluZyB0byBraWNrLWluLgoJCQkJaWYgKHBob3RvKSB7CgkJCQkJJGxvYWRlZC5mYWRlSW4oMTAwKTsKCQkJCX0KCQkJfQoJCQkKCQkJJHRpdGxlLmh0bWwoc2V0dGluZ3MudGl0bGUpLmFkZCgkbG9hZGVkKS5zaG93KCk7CgkJCQoJCQlpZiAodG90YWwgPiAxKSB7IC8vIGhhbmRsZSBncm91cGluZwoJCQkJaWYgKHR5cGVvZiBzZXR0aW5ncy5jdXJyZW50ID09PSAic3RyaW5nIikgewoJCQkJCSRjdXJyZW50Lmh0bWwoc2V0dGluZ3MuY3VycmVudC5yZXBsYWNlKCd7Y3VycmVudH0nLCBpbmRleCArIDEpLnJlcGxhY2UoJ3t0b3RhbH0nLCB0b3RhbCkpLnNob3coKTsKCQkJCX0KCQkJCQoJCQkJJG5leHRbKHNldHRpbmdzLmxvb3AgfHwgaW5kZXggPCB0b3RhbCAtIDEpID8gInNob3ciIDogImhpZGUiXSgpLmh0bWwoc2V0dGluZ3MubmV4dCk7CgkJCQkkcHJldlsoc2V0dGluZ3MubG9vcCB8fCBpbmRleCkgPyAic2hvdyIgOiAiaGlkZSJdKCkuaHRtbChzZXR0aW5ncy5wcmV2aW91cyk7CgkJCQkKCQkJCWlmIChzZXR0aW5ncy5zbGlkZXNob3cpIHsKCQkJCQkkc2xpZGVzaG93LnNob3coKTsKCQkJCX0KCQkJCQoJCQkJLy8gUHJlbG9hZHMgaW1hZ2VzIHdpdGhpbiBhIHJlbCBncm91cAoJCQkJaWYgKHNldHRpbmdzLnByZWxvYWRpbmcpIHsKCQkJCQlwcmVsb2FkID0gWwoJCQkJCQlnZXRJbmRleCgtMSksCgkJCQkJCWdldEluZGV4KDEpCgkJCQkJXTsKCQkJCQl3aGlsZSAoaSA9ICRyZWxhdGVkW3ByZWxvYWQucG9wKCldKSB7CgkJCQkJCWRhdGEgPSAkLmRhdGEoaSwgY29sb3Jib3gpOwoJCQkJCQkKCQkJCQkJaWYgKGRhdGEgJiYgZGF0YS5ocmVmKSB7CgkJCQkJCQlzcmMgPSBkYXRhLmhyZWY7CgkJCQkJCQlpZiAoJC5pc0Z1bmN0aW9uKHNyYykpIHsKCQkJCQkJCQlzcmMgPSBzcmMuY2FsbChpKTsKCQkJCQkJCX0KCQkJCQkJfSBlbHNlIHsKCQkJCQkJCXNyYyA9IGkuaHJlZjsKCQkJCQkJfQoKCQkJCQkJaWYgKGlzSW1hZ2Uoc3JjKSkgewoJCQkJCQkJaW1nID0gbmV3IEltYWdlKCk7CgkJCQkJCQlpbWcuc3JjID0gc3JjOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9IGVsc2UgewoJCQkJJGdyb3VwQ29udHJvbHMuaGlkZSgpOwoJCQl9CgkJCQoJCQlpZiAoc2V0dGluZ3MuaWZyYW1lKSB7CgkJCQlpZnJhbWUgPSAkdGFnKCdpZnJhbWUnKVswXTsKCQkJCQoJCQkJaWYgKGZyYW1lQm9yZGVyIGluIGlmcmFtZSkgewoJCQkJCWlmcmFtZVtmcmFtZUJvcmRlcl0gPSAwOwoJCQkJfQoJCQkJaWYgKGFsbG93VHJhbnNwYXJlbmN5IGluIGlmcmFtZSkgewoJCQkJCWlmcmFtZVthbGxvd1RyYW5zcGFyZW5jeV0gPSAidHJ1ZSI7CgkJCQl9CgkJCQkvLyBnaXZlIHRoZSBpZnJhbWUgYSB1bmlxdWUgbmFtZSB0byBwcmV2ZW50IGNhY2hpbmcKCQkJCWlmcmFtZS5uYW1lID0gcHJlZml4ICsgKCtuZXcgRGF0ZSgpKTsKCQkJCWlmIChzZXR0aW5ncy5mYXN0SWZyYW1lKSB7CgkJCQkJY29tcGxldGUoKTsKCQkJCX0gZWxzZSB7CgkJCQkJJChpZnJhbWUpLm9uZSgnbG9hZCcsIGNvbXBsZXRlKTsKCQkJCX0KCQkJCWlmcmFtZS5zcmMgPSBzZXR0aW5ncy5ocmVmOwoJCQkJaWYgKCFzZXR0aW5ncy5zY3JvbGxpbmcpIHsKCQkJCQlpZnJhbWUuc2Nyb2xsaW5nID0gIm5vIjsKCQkJCX0KCQkJCSQoaWZyYW1lKS5hZGRDbGFzcyhwcmVmaXggKyAnSWZyYW1lJykuYXBwZW5kVG8oJGxvYWRlZCkub25lKGV2ZW50X3B1cmdlLCBmdW5jdGlvbiAoKSB7CgkJCQkJaWZyYW1lLnNyYyA9ICIvL2Fib3V0OmJsYW5rIjsKCQkJCX0pOwoJCQl9IGVsc2UgewoJCQkJY29tcGxldGUoKTsKCQkJfQoJCQkKCQkJaWYgKHNldHRpbmdzLnRyYW5zaXRpb24gPT09ICdmYWRlJykgewoJCQkJJGJveC5mYWRlVG8oc3BlZWQsIDEsIHJlbW92ZUZpbHRlcik7CgkJCX0gZWxzZSB7CgkJCQlyZW1vdmVGaWx0ZXIoKTsKCQkJfQoJCX07CgkJCgkJaWYgKHNldHRpbmdzLnRyYW5zaXRpb24gPT09ICdmYWRlJykgewoJCQkkYm94LmZhZGVUbyhzcGVlZCwgMCwgZnVuY3Rpb24gKCkgewoJCQkJcHVibGljTWV0aG9kLnBvc2l0aW9uKDAsIGNhbGxiYWNrKTsKCQkJfSk7CgkJfSBlbHNlIHsKCQkJcHVibGljTWV0aG9kLnBvc2l0aW9uKHNwZWVkLCBjYWxsYmFjayk7CgkJfQoJfTsKCglwdWJsaWNNZXRob2QubG9hZCA9IGZ1bmN0aW9uIChsYXVuY2hlZCkgewoJCXZhciBocmVmLCBzZXRSZXNpemUsIHByZXAgPSBwdWJsaWNNZXRob2QucHJlcDsKCQkKCQlhY3RpdmUgPSB0cnVlOwoJCQoJCXBob3RvID0gZmFsc2U7CgkJCgkJZWxlbWVudCA9ICRyZWxhdGVkW2luZGV4XTsKCQkKCQlpZiAoIWxhdW5jaGVkKSB7CgkJCW1ha2VTZXR0aW5ncygpOwoJCX0KCQkKCQl0cmlnZ2VyKGV2ZW50X3B1cmdlKTsKCQkKCQl0cmlnZ2VyKGV2ZW50X2xvYWQsIHNldHRpbmdzLm9uTG9hZCk7CgkJCgkJc2V0dGluZ3MuaCA9IHNldHRpbmdzLmhlaWdodCA/CgkJCQlzZXRTaXplKHNldHRpbmdzLmhlaWdodCwgJ3knKSAtIGxvYWRlZEhlaWdodCAtIGludGVyZmFjZUhlaWdodCA6CgkJCQlzZXR0aW5ncy5pbm5lckhlaWdodCAmJiBzZXRTaXplKHNldHRpbmdzLmlubmVySGVpZ2h0LCAneScpOwoJCQoJCXNldHRpbmdzLncgPSBzZXR0aW5ncy53aWR0aCA/CgkJCQlzZXRTaXplKHNldHRpbmdzLndpZHRoLCAneCcpIC0gbG9hZGVkV2lkdGggLSBpbnRlcmZhY2VXaWR0aCA6CgkJCQlzZXR0aW5ncy5pbm5lcldpZHRoICYmIHNldFNpemUoc2V0dGluZ3MuaW5uZXJXaWR0aCwgJ3gnKTsKCQkKCQkvLyBTZXRzIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgZm9yIHVzZSBpbiBpbWFnZSBzY2FsaW5nCgkJc2V0dGluZ3MubXcgPSBzZXR0aW5ncy53OwoJCXNldHRpbmdzLm1oID0gc2V0dGluZ3MuaDsKCQkKCQkvLyBSZS1ldmFsdWF0ZSB0aGUgbWluaW11bSB3aWR0aCBhbmQgaGVpZ2h0IGJhc2VkIG9uIG1heFdpZHRoIGFuZCBtYXhIZWlnaHQgdmFsdWVzLgoJCS8vIElmIHRoZSB3aWR0aCBvciBoZWlnaHQgZXhjZWVkIHRoZSBtYXhXaWR0aCBvciBtYXhIZWlnaHQsIHVzZSB0aGUgbWF4aW11bSB2YWx1ZXMgaW5zdGVhZC4KCQlpZiAoc2V0dGluZ3MubWF4V2lkdGgpIHsKCQkJc2V0dGluZ3MubXcgPSBzZXRTaXplKHNldHRpbmdzLm1heFdpZHRoLCAneCcpIC0gbG9hZGVkV2lkdGggLSBpbnRlcmZhY2VXaWR0aDsKCQkJc2V0dGluZ3MubXcgPSBzZXR0aW5ncy53ICYmIHNldHRpbmdzLncgPCBzZXR0aW5ncy5tdyA/IHNldHRpbmdzLncgOiBzZXR0aW5ncy5tdzsKCQl9CgkJaWYgKHNldHRpbmdzLm1heEhlaWdodCkgewoJCQlzZXR0aW5ncy5taCA9IHNldFNpemUoc2V0dGluZ3MubWF4SGVpZ2h0LCAneScpIC0gbG9hZGVkSGVpZ2h0IC0gaW50ZXJmYWNlSGVpZ2h0OwoJCQlzZXR0aW5ncy5taCA9IHNldHRpbmdzLmggJiYgc2V0dGluZ3MuaCA8IHNldHRpbmdzLm1oID8gc2V0dGluZ3MuaCA6IHNldHRpbmdzLm1oOwoJCX0KCQkKCQlocmVmID0gc2V0dGluZ3MuaHJlZjsKCQkKCQlsb2FkaW5nVGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKCQkJJGxvYWRpbmdPdmVybGF5LnNob3coKS5hcHBlbmRUbygkY29udGVudCk7CgkJfSwgMTAwKTsKCQkKCQlpZiAoc2V0dGluZ3MuaW5saW5lKSB7CgkJCS8vIEluc2VydHMgYW4gZW1wdHkgcGxhY2Vob2xkZXIgd2hlcmUgaW5saW5lIGNvbnRlbnQgaXMgYmVpbmcgcHVsbGVkIGZyb20uCgkJCS8vIEFuIGV2ZW50IGlzIGJvdW5kIHRvIHB1dCBpbmxpbmUgY29udGVudCBiYWNrIHdoZW4gQ29sb3JCb3ggY2xvc2VzIG9yIGxvYWRzIG5ldyBjb250ZW50LgoJCQkkdGFnKGRpdikuaGlkZSgpLmluc2VydEJlZm9yZSgkKGhyZWYpWzBdKS5vbmUoZXZlbnRfcHVyZ2UsIGZ1bmN0aW9uICgpIHsKCQkJCSQodGhpcykucmVwbGFjZVdpdGgoJGxvYWRlZC5jaGlsZHJlbigpKTsKCQkJfSk7CgkJCXByZXAoJChocmVmKSk7CgkJfSBlbHNlIGlmIChzZXR0aW5ncy5pZnJhbWUpIHsKCQkJLy8gSUZyYW1lIGVsZW1lbnQgd29uJ3QgYmUgYWRkZWQgdG8gdGhlIERPTSB1bnRpbCBpdCBpcyByZWFkeSB0byBiZSBkaXNwbGF5ZWQsCgkJCS8vIHRvIGF2b2lkIHByb2JsZW1zIHdpdGggRE9NLXJlYWR5IEpTIHRoYXQgbWlnaHQgYmUgdHJ5aW5nIHRvIHJ1biBpbiB0aGF0IGlmcmFtZS4KCQkJcHJlcCgiICIpOwoJCX0gZWxzZSBpZiAoc2V0dGluZ3MuaHRtbCkgewoJCQlwcmVwKHNldHRpbmdzLmh0bWwpOwoJCX0gZWxzZSBpZiAoaXNJbWFnZShocmVmKSkgewoJCQkkKHBob3RvID0gbmV3IEltYWdlKCkpCgkJCS5hZGRDbGFzcyhwcmVmaXggKyAnUGhvdG8nKQoJCQkuZXJyb3IoZnVuY3Rpb24gKCkgewoJCQkJc2V0dGluZ3MudGl0bGUgPSBmYWxzZTsKCQkJCXByZXAoJHRhZyhkaXYsICdFcnJvcicpLmh0bWwoc2V0dGluZ3MuaW1nRXJyb3IpKTsKCQkJfSkKCQkJLmxvYWQoZnVuY3Rpb24gKCkgewoJCQkJdmFyIHBlcmNlbnQ7CgkJCQlwaG90by5vbmxvYWQgPSBudWxsOyAvL3N0b3BzIGFuaW1hdGVkIGdpZnMgZnJvbSBmaXJpbmcgdGhlIG9ubG9hZCByZXBlYXRlZGx5LgoJCQkJCgkJCQlpZiAoc2V0dGluZ3Muc2NhbGVQaG90b3MpIHsKCQkJCQlzZXRSZXNpemUgPSBmdW5jdGlvbiAoKSB7CgkJCQkJCXBob3RvLmhlaWdodCAtPSBwaG90by5oZWlnaHQgKiBwZXJjZW50OwoJCQkJCQlwaG90by53aWR0aCAtPSBwaG90by53aWR0aCAqIHBlcmNlbnQ7CgkJCQkJfTsKCQkJCQlpZiAoc2V0dGluZ3MubXcgJiYgcGhvdG8ud2lkdGggPiBzZXR0aW5ncy5tdykgewoJCQkJCQlwZXJjZW50ID0gKHBob3RvLndpZHRoIC0gc2V0dGluZ3MubXcpIC8gcGhvdG8ud2lkdGg7CgkJCQkJCXNldFJlc2l6ZSgpOwoJCQkJCX0KCQkJCQlpZiAoc2V0dGluZ3MubWggJiYgcGhvdG8uaGVpZ2h0ID4gc2V0dGluZ3MubWgpIHsKCQkJCQkJcGVyY2VudCA9IChwaG90by5oZWlnaHQgLSBzZXR0aW5ncy5taCkgLyBwaG90by5oZWlnaHQ7CgkJCQkJCXNldFJlc2l6ZSgpOwoJCQkJCX0KCQkJCX0KCQkJCQoJCQkJaWYgKHNldHRpbmdzLmgpIHsKCQkJCQlwaG90by5zdHlsZS5tYXJnaW5Ub3AgPSBNYXRoLm1heChzZXR0aW5ncy5oIC0gcGhvdG8uaGVpZ2h0LCAwKSAvIDIgKyAncHgnOwoJCQkJfQoJCQkJCgkJCQlpZiAoJHJlbGF0ZWRbMV0gJiYgKHNldHRpbmdzLmxvb3AgfHwgJHJlbGF0ZWRbaW5kZXggKyAxXSkpIHsKCQkJCQlwaG90by5zdHlsZS5jdXJzb3IgPSAncG9pbnRlcic7CgkJCQkJcGhvdG8ub25jbGljayA9IGZ1bmN0aW9uICgpIHsKCQkJCQkJcHVibGljTWV0aG9kLm5leHQoKTsKCQkJCQl9OwoJCQkJfQoJCQkJCgkJCQlpZiAoaXNJRSkgewoJCQkJCXBob3RvLnN0eWxlLm1zSW50ZXJwb2xhdGlvbk1vZGUgPSAnYmljdWJpYyc7CgkJCQl9CgkJCQkKCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCkgeyAvLyBBIHBhdXNlIGJlY2F1c2UgQ2hyb21lIHdpbGwgc29tZXRpbWVzIHJlcG9ydCBhIDAgYnkgMCBzaXplIG90aGVyd2lzZS4KCQkJCQlwcmVwKHBob3RvKTsKCQkJCX0sIDEpOwoJCQl9KTsKCQkJCgkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCkgeyAvLyBBIHBhdXNlIGJlY2F1c2UgT3BlcmEgMTAuNisgd2lsbCBzb21ldGltZXMgbm90IHJ1biB0aGUgb25sb2FkIGZ1bmN0aW9uIG90aGVyd2lzZS4KCQkJCXBob3RvLnNyYyA9IGhyZWY7CgkJCX0sIDEpOwoJCX0gZWxzZSBpZiAoaHJlZikgewoJCQkkbG9hZGluZ0JheS5sb2FkKGhyZWYsIHNldHRpbmdzLmRhdGEsIGZ1bmN0aW9uIChkYXRhLCBzdGF0dXMsIHhocikgewoJCQkJcHJlcChzdGF0dXMgPT09ICdlcnJvcicgPyAkdGFnKGRpdiwgJ0Vycm9yJykuaHRtbChzZXR0aW5ncy54aHJFcnJvcikgOiAkKHRoaXMpLmNvbnRlbnRzKCkpOwoJCQl9KTsKCQl9Cgl9OwoJCQoJLy8gTmF2aWdhdGVzIHRvIHRoZSBuZXh0IHBhZ2UvaW1hZ2UgaW4gYSBzZXQuCglwdWJsaWNNZXRob2QubmV4dCA9IGZ1bmN0aW9uICgpIHsKCQlpZiAoIWFjdGl2ZSAmJiAkcmVsYXRlZFsxXSAmJiAoc2V0dGluZ3MubG9vcCB8fCAkcmVsYXRlZFtpbmRleCArIDFdKSkgewoJCQlpbmRleCA9IGdldEluZGV4KDEpOwoJCQlwdWJsaWNNZXRob2QubG9hZCgpOwoJCX0KCX07CgkKCXB1YmxpY01ldGhvZC5wcmV2ID0gZnVuY3Rpb24gKCkgewoJCWlmICghYWN0aXZlICYmICRyZWxhdGVkWzFdICYmIChzZXR0aW5ncy5sb29wIHx8IGluZGV4KSkgewoJCQlpbmRleCA9IGdldEluZGV4KC0xKTsKCQkJcHVibGljTWV0aG9kLmxvYWQoKTsKCQl9Cgl9OwoKCS8vIE5vdGU6IHRvIHVzZSB0aGlzIHdpdGhpbiBhbiBpZnJhbWUgdXNlIHRoZSBmb2xsb3dpbmcgZm9ybWF0OiBwYXJlbnQuJC5mbi5jb2xvcmJveC5jbG9zZSgpOwoJcHVibGljTWV0aG9kLmNsb3NlID0gZnVuY3Rpb24gKCkgewoJCWlmIChvcGVuICYmICFjbG9zaW5nKSB7CgkJCQoJCQljbG9zaW5nID0gdHJ1ZTsKCQkJCgkJCW9wZW4gPSBmYWxzZTsKCQkJCgkJCXRyaWdnZXIoZXZlbnRfY2xlYW51cCwgc2V0dGluZ3Mub25DbGVhbnVwKTsKCQkJCgkJCSR3aW5kb3cudW5iaW5kKCcuJyArIHByZWZpeCArICcgLicgKyBldmVudF9pZTYpOwoJCQkKCQkJJG92ZXJsYXkuZmFkZVRvKDIwMCwgMCk7CgkJCQoJCQkkYm94LnN0b3AoKS5mYWRlVG8oMzAwLCAwLCBmdW5jdGlvbiAoKSB7CgkJCQoJCQkJJGJveC5hZGQoJG92ZXJsYXkpLmNzcyh7J29wYWNpdHknOiAxLCBjdXJzb3I6ICdhdXRvJ30pLmhpZGUoKTsKCQkJCQoJCQkJdHJpZ2dlcihldmVudF9wdXJnZSk7CgkJCQkKCQkJCSRsb2FkZWQucmVtb3ZlKCk7CgkJCQkKCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewoJCQkJCWNsb3NpbmcgPSBmYWxzZTsKCQkJCQl0cmlnZ2VyKGV2ZW50X2Nsb3NlZCwgc2V0dGluZ3Mub25DbG9zZWQpOwoJCQkJfSwgMSk7CgkJCX0pOwoJCX0KCX07CgoJLy8gUmVtb3ZlcyBjaGFuZ2VzIENvbG9yQm94IG1hZGUgdG8gdGhlIGRvY3VtZW50LCBidXQgZG9lcyBub3QgcmVtb3ZlIHRoZSBwbHVnaW4KCS8vIGZyb20galF1ZXJ5LgoJcHVibGljTWV0aG9kLnJlbW92ZSA9IGZ1bmN0aW9uICgpIHsKCQkkKFtdKS5hZGQoJGJveCkuYWRkKCRvdmVybGF5KS5yZW1vdmUoKTsKCQkkYm94ID0gbnVsbDsKCQkkKCcuJyArIGJveEVsZW1lbnQpCgkJCS5yZW1vdmVEYXRhKGNvbG9yYm94KQoJCQkucmVtb3ZlQ2xhc3MoYm94RWxlbWVudCkKCQkJLmRpZSgpOwoJfTsKCgkvLyBBIG1ldGhvZCBmb3IgZmV0Y2hpbmcgdGhlIGN1cnJlbnQgZWxlbWVudCBDb2xvckJveCBpcyByZWZlcmVuY2luZy4KCS8vIHJldHVybnMgYSBqUXVlcnkgb2JqZWN0LgoJcHVibGljTWV0aG9kLmVsZW1lbnQgPSBmdW5jdGlvbiAoKSB7CgkJcmV0dXJuICQoZWxlbWVudCk7Cgl9OwoKCXB1YmxpY01ldGhvZC5zZXR0aW5ncyA9IGRlZmF1bHRzOwoKfShqUXVlcnksIGRvY3VtZW50LCB0aGlzKSk7]]></data>
	</file>
	<file>
	  <filename>/framework/js/jquery.quicksearch.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKTGljZW5zZQpVbmRlciB0aGUgc2FtZSBsaWNlbnNlcyBhcyB0aGUgalF1ZXJ5IGxpYnJhcnkgaXRzZWxmOiBodHRwOi8vZG9jcy5qcXVlcnkuY29tL0xpY2Vuc2UKQ3JlZGl0cwpqUXVlcnkgcXVpY2tzZWFyY2ggaXMgbWFkZSBieSBSaWsgTG9tYXMgYXQgTG9tYWxvZ3VlClRoYW5rcyB0byBTZXRoIEYuIGZvciBmaXhlcyBhbmQgS3J6eXNpZWsgR29qIGZvciB0aGUgdGVzdFF1ZXJ5IGFuZCBwcmVwYXJlUXVlcnkgb3B0aW9uIHVwZGF0ZXMKICovCgooZnVuY3Rpb24oYSxiLGMsZCl7YS5mbi5xdWlja3NlYXJjaD1mdW5jdGlvbihjLGQpe3ZhciBlLGYsZyxoLGk9IiIsaj10aGlzLGs9YS5leHRlbmQoe2RlbGF5OjEwMCxzZWxlY3RvcjpudWxsLHN0cmlwZVJvd3M6bnVsbCxsb2FkZXI6bnVsbCxub1Jlc3VsdHM6IiIsYmluZDoia2V5dXAiLG9uQmVmb3JlOmZ1bmN0aW9uKCl7cmV0dXJufSxvbkFmdGVyOmZ1bmN0aW9uKCl7cmV0dXJufSxzaG93OmZ1bmN0aW9uKCl7dGhpcy5zdHlsZS5kaXNwbGF5PSIifSxoaWRlOmZ1bmN0aW9uKCl7dGhpcy5zdHlsZS5kaXNwbGF5PSJub25lIn0scHJlcGFyZVF1ZXJ5OmZ1bmN0aW9uKGEpe3JldHVybiBhLnRvTG93ZXJDYXNlKCkuc3BsaXQoIiAiKX0sdGVzdFF1ZXJ5OmZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoO2QrPTEpe2lmKGIuaW5kZXhPZihhW2RdKT09PS0xKXtyZXR1cm4gZmFsc2V9fXJldHVybiB0cnVlfX0sZCk7dGhpcy5nbz1mdW5jdGlvbigpe3ZhciBhPTAsYj10cnVlLGM9ay5wcmVwYXJlUXVlcnkoaSksZD1pLnJlcGxhY2UoIiAiLCIiKS5sZW5ndGg9PT0wO2Zvcih2YXIgYT0wLGU9Zy5sZW5ndGg7YTxlO2ErKyl7aWYoZHx8ay50ZXN0UXVlcnkoYyxmW2FdLGdbYV0pKXtrLnNob3cuYXBwbHkoZ1thXSk7Yj1mYWxzZX1lbHNle2suaGlkZS5hcHBseShnW2FdKX19aWYoYil7dGhpcy5yZXN1bHRzKGZhbHNlKX1lbHNle3RoaXMucmVzdWx0cyh0cnVlKTt0aGlzLnN0cmlwZSgpfXRoaXMubG9hZGVyKGZhbHNlKTtrLm9uQWZ0ZXIoKTtyZXR1cm4gdGhpc307dGhpcy5zdHJpcGU9ZnVuY3Rpb24oKXtpZih0eXBlb2Ygay5zdHJpcGVSb3dzPT09Im9iamVjdCImJmsuc3RyaXBlUm93cyE9PW51bGwpe3ZhciBiPWsuc3RyaXBlUm93cy5qb2luKCIgIik7dmFyIGM9ay5zdHJpcGVSb3dzLmxlbmd0aDtoLm5vdCgiOmhpZGRlbiIpLmVhY2goZnVuY3Rpb24oZCl7YSh0aGlzKS5yZW1vdmVDbGFzcyhiKS5hZGRDbGFzcyhrLnN0cmlwZVJvd3NbZCVjXSl9KX1yZXR1cm4gdGhpc307dGhpcy5zdHJpcF9odG1sPWZ1bmN0aW9uKGIpe3ZhciBjPWIucmVwbGFjZShuZXcgUmVnRXhwKCI8W148XSs+IiwiZyIpLCIiKTtjPWEudHJpbShjLnRvTG93ZXJDYXNlKCkpO3JldHVybiBjfTt0aGlzLnJlc3VsdHM9ZnVuY3Rpb24oYil7aWYodHlwZW9mIGsubm9SZXN1bHRzPT09InN0cmluZyImJmsubm9SZXN1bHRzIT09IiIpe2lmKGIpe2Eoay5ub1Jlc3VsdHMpLmhpZGUoKX1lbHNle2Eoay5ub1Jlc3VsdHMpLnNob3coKX19cmV0dXJuIHRoaXN9O3RoaXMubG9hZGVyPWZ1bmN0aW9uKGIpe2lmKHR5cGVvZiBrLmxvYWRlcj09PSJzdHJpbmciJiZrLmxvYWRlciE9PSIiKXtiP2Eoay5sb2FkZXIpLnNob3coKTphKGsubG9hZGVyKS5oaWRlKCl9cmV0dXJuIHRoaXN9O3RoaXMuY2FjaGU9ZnVuY3Rpb24oKXtoPWEoYyk7aWYodHlwZW9mIGsubm9SZXN1bHRzPT09InN0cmluZyImJmsubm9SZXN1bHRzIT09IiIpe2g9aC5ub3Qoay5ub1Jlc3VsdHMpfXZhciBiPXR5cGVvZiBrLnNlbGVjdG9yPT09InN0cmluZyI/aC5maW5kKGsuc2VsZWN0b3IpOmEoYykubm90KGsubm9SZXN1bHRzKTtmPWIubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIGouc3RyaXBfaHRtbCh0aGlzLmlubmVySFRNTCl9KTtnPWgubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KTtyZXR1cm4gdGhpcy5nbygpfTt0aGlzLnRyaWdnZXI9ZnVuY3Rpb24oKXt0aGlzLmxvYWRlcih0cnVlKTtrLm9uQmVmb3JlKCk7Yi5jbGVhclRpbWVvdXQoZSk7ZT1iLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtqLmdvKCl9LGsuZGVsYXkpO3JldHVybiB0aGlzfTt0aGlzLmNhY2hlKCk7dGhpcy5yZXN1bHRzKHRydWUpO3RoaXMuc3RyaXBlKCk7dGhpcy5sb2FkZXIoZmFsc2UpO3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXthKHRoaXMpLmJpbmQoay5iaW5kLGZ1bmN0aW9uKCl7aT1hKHRoaXMpLnZhbCgpO2oudHJpZ2dlcigpfSl9KX19KShqUXVlcnksdGhpcyxkb2N1bWVudCk=]]></data>
	</file>
	<file>
	  <filename>/framework/js/jquery.slug.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8KLy8JalF1ZXJ5IFNsdWcgR2VuZXJhdGlvbiBQbHVnaW4gYnkgUGVycnkgVHJpbmllciAocGVycnl0cmluaWVyQGdtYWlsLmNvbSkKLy8gIExpY2Vuc2VkIHVuZGVyIHRoZSBHUEw6IGh0dHA6Ly93d3cuZ251Lm9yZy9jb3B5bGVmdC9ncGwuaHRtbAoKalF1ZXJ5LmZuLnNsdWc9ZnVuY3Rpb24oYSl7dmFyIGI9e3NsdWc6InNsdWciLGhpZGU6dHJ1ZX07aWYoYSl7alF1ZXJ5LmV4dGVuZChiLGEpfSR0aGlzPWpRdWVyeSh0aGlzKTtqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7aWYoYi5oaWRlKXtqUXVlcnkoImlucHV0LiIrYi5zbHVnKS5hZnRlcigiPHNwYW4gY2xhc3M9IitiLnNsdWcrIj48L3NwYW4+Iik7alF1ZXJ5KCJpbnB1dC4iK2Iuc2x1ZykuaGlkZSgpfX0pO21ha2VTbHVnPWZ1bmN0aW9uKCl7dmFyIGE9JHRoaXMudmFsKCk7dmFyIGM9YS5yZXBsYWNlKC9ccy9nLCItIik7dmFyIGQ9Yy5yZXBsYWNlKC9bXmEtekEtWjAtOVwtXS9nLCIiKTtqUXVlcnkoImlucHV0LiIrYi5zbHVnKS52YWwoZC50b0xvd2VyQ2FzZSgpKTtqUXVlcnkoInNwYW4uIitiLnNsdWcpLnRleHQoZC50b0xvd2VyQ2FzZSgpKX07alF1ZXJ5KHRoaXMpLmtleXVwKG1ha2VTbHVnKTtyZXR1cm4gJHRoaXN9Cg==]]></data>
	</file>
	<file>
	  <filename>/framework/js/jquery.tablesorter.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[KGZ1bmN0aW9uKCQpeyQuZXh0ZW5kKHt0YWJsZXNvcnRlcjpuZXcKZnVuY3Rpb24oKXt2YXIgcGFyc2Vycz1bXSx3aWRnZXRzPVtdO3RoaXMuZGVmYXVsdHM9e2Nzc0hlYWRlcjoiaGVhZGVyIixjc3NBc2M6ImhlYWRlclNvcnRVcCIsY3NzRGVzYzoiaGVhZGVyU29ydERvd24iLGNzc0NoaWxkUm93OiJleHBhbmQtY2hpbGQiLHNvcnRJbml0aWFsT3JkZXI6ImFzYyIsc29ydE11bHRpU29ydEtleToic2hpZnRLZXkiLHNvcnRGb3JjZTpudWxsLHNvcnRBcHBlbmQ6bnVsbCxzb3J0TG9jYWxlQ29tcGFyZTp0cnVlLHRleHRFeHRyYWN0aW9uOiJzaW1wbGUiLHBhcnNlcnM6e30sd2lkZ2V0czpbXSx3aWRnZXRaZWJyYTp7Y3NzOlsiZXZlbiIsIm9kZCJdfSxoZWFkZXJzOnt9LHdpZHRoRml4ZWQ6ZmFsc2UsY2FuY2VsU2VsZWN0aW9uOnRydWUsc29ydExpc3Q6W10saGVhZGVyTGlzdDpbXSxkYXRlRm9ybWF0OiJ1cyIsZGVjaW1hbDonL1wufFwsL2cnLG9uUmVuZGVySGVhZGVyOm51bGwsc2VsZWN0b3JIZWFkZXJzOid0aGVhZCB0aCcsZGVidWc6ZmFsc2V9O2Z1bmN0aW9uIGJlbmNobWFyayhzLGQpe2xvZyhzKyIsIisobmV3IERhdGUoKS5nZXRUaW1lKCktZC5nZXRUaW1lKCkpKyJtcyIpO310aGlzLmJlbmNobWFyaz1iZW5jaG1hcms7ZnVuY3Rpb24gbG9nKHMpe2lmKHR5cGVvZiBjb25zb2xlIT0idW5kZWZpbmVkIiYmdHlwZW9mIGNvbnNvbGUuZGVidWchPSJ1bmRlZmluZWQiKXtjb25zb2xlLmxvZyhzKTt9ZWxzZXthbGVydChzKTt9fWZ1bmN0aW9uIGJ1aWxkUGFyc2VyQ2FjaGUodGFibGUsJGhlYWRlcnMpe2lmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7dmFyIHBhcnNlcnNEZWJ1Zz0iIjt9aWYodGFibGUudEJvZGllcy5sZW5ndGg9PTApcmV0dXJuO3ZhciByb3dzPXRhYmxlLnRCb2RpZXNbMF0ucm93cztpZihyb3dzWzBdKXt2YXIgbGlzdD1bXSxjZWxscz1yb3dzWzBdLmNlbGxzLGw9Y2VsbHMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe3ZhciBwPWZhbHNlO2lmKCQubWV0YWRhdGEmJigkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpJiYkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpLnNvcnRlcikpe3A9Z2V0UGFyc2VyQnlJZCgkKCRoZWFkZXJzW2ldKS5tZXRhZGF0YSgpLnNvcnRlcik7fWVsc2UgaWYoKHRhYmxlLmNvbmZpZy5oZWFkZXJzW2ldJiZ0YWJsZS5jb25maWcuaGVhZGVyc1tpXS5zb3J0ZXIpKXtwPWdldFBhcnNlckJ5SWQodGFibGUuY29uZmlnLmhlYWRlcnNbaV0uc29ydGVyKTt9aWYoIXApe3A9ZGV0ZWN0UGFyc2VyRm9yQ29sdW1uKHRhYmxlLHJvd3MsLTEsaSk7fWlmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7cGFyc2Vyc0RlYnVnKz0iY29sdW1uOiIraSsiIHBhcnNlcjoiK3AuaWQrIlxuIjt9bGlzdC5wdXNoKHApO319aWYodGFibGUuY29uZmlnLmRlYnVnKXtsb2cocGFyc2Vyc0RlYnVnKTt9cmV0dXJuIGxpc3Q7fTtmdW5jdGlvbiBkZXRlY3RQYXJzZXJGb3JDb2x1bW4odGFibGUscm93cyxyb3dJbmRleCxjZWxsSW5kZXgpe3ZhciBsPXBhcnNlcnMubGVuZ3RoLG5vZGU9ZmFsc2Usbm9kZVZhbHVlPWZhbHNlLGtlZXBMb29raW5nPXRydWU7d2hpbGUobm9kZVZhbHVlPT0nJyYma2VlcExvb2tpbmcpe3Jvd0luZGV4Kys7aWYocm93c1tyb3dJbmRleF0pe25vZGU9Z2V0Tm9kZUZyb21Sb3dBbmRDZWxsSW5kZXgocm93cyxyb3dJbmRleCxjZWxsSW5kZXgpO25vZGVWYWx1ZT10cmltQW5kR2V0Tm9kZVRleHQodGFibGUuY29uZmlnLG5vZGUpO2lmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7bG9nKCdDaGVja2luZyBpZiB2YWx1ZSB3YXMgZW1wdHkgb24gcm93Oicrcm93SW5kZXgpO319ZWxzZXtrZWVwTG9va2luZz1mYWxzZTt9fWZvcih2YXIgaT0xO2k8bDtpKyspe2lmKHBhcnNlcnNbaV0uaXMobm9kZVZhbHVlLHRhYmxlLG5vZGUpKXtyZXR1cm4gcGFyc2Vyc1tpXTt9fXJldHVybiBwYXJzZXJzWzBdO31mdW5jdGlvbiBnZXROb2RlRnJvbVJvd0FuZENlbGxJbmRleChyb3dzLHJvd0luZGV4LGNlbGxJbmRleCl7cmV0dXJuIHJvd3Nbcm93SW5kZXhdLmNlbGxzW2NlbGxJbmRleF07fWZ1bmN0aW9uIHRyaW1BbmRHZXROb2RlVGV4dChjb25maWcsbm9kZSl7cmV0dXJuICQudHJpbShnZXRFbGVtZW50VGV4dChjb25maWcsbm9kZSkpO31mdW5jdGlvbiBnZXRQYXJzZXJCeUlkKG5hbWUpe3ZhciBsPXBhcnNlcnMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKHBhcnNlcnNbaV0uaWQudG9Mb3dlckNhc2UoKT09bmFtZS50b0xvd2VyQ2FzZSgpKXtyZXR1cm4gcGFyc2Vyc1tpXTt9fXJldHVybiBmYWxzZTt9ZnVuY3Rpb24gYnVpbGRDYWNoZSh0YWJsZSl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgY2FjaGVUaW1lPW5ldyBEYXRlKCk7fXZhciB0b3RhbFJvd3M9KHRhYmxlLnRCb2RpZXNbMF0mJnRhYmxlLnRCb2RpZXNbMF0ucm93cy5sZW5ndGgpfHwwLHRvdGFsQ2VsbHM9KHRhYmxlLnRCb2RpZXNbMF0ucm93c1swXSYmdGFibGUudEJvZGllc1swXS5yb3dzWzBdLmNlbGxzLmxlbmd0aCl8fDAscGFyc2Vycz10YWJsZS5jb25maWcucGFyc2VycyxjYWNoZT17cm93OltdLG5vcm1hbGl6ZWQ6W119O2Zvcih2YXIgaT0wO2k8dG90YWxSb3dzOysraSl7dmFyIGM9JCh0YWJsZS50Qm9kaWVzWzBdLnJvd3NbaV0pLGNvbHM9W107aWYoYy5oYXNDbGFzcyh0YWJsZS5jb25maWcuY3NzQ2hpbGRSb3cpKXtjYWNoZS5yb3dbY2FjaGUucm93Lmxlbmd0aC0xXT1jYWNoZS5yb3dbY2FjaGUucm93Lmxlbmd0aC0xXS5hZGQoYyk7Y29udGludWU7fWNhY2hlLnJvdy5wdXNoKGMpO2Zvcih2YXIgaj0wO2o8dG90YWxDZWxsczsrK2ope2NvbHMucHVzaChwYXJzZXJzW2pdLmZvcm1hdChnZXRFbGVtZW50VGV4dCh0YWJsZS5jb25maWcsY1swXS5jZWxsc1tqXSksdGFibGUsY1swXS5jZWxsc1tqXSkpO31jb2xzLnB1c2goY2FjaGUubm9ybWFsaXplZC5sZW5ndGgpO2NhY2hlLm5vcm1hbGl6ZWQucHVzaChjb2xzKTtjb2xzPW51bGw7fTtpZih0YWJsZS5jb25maWcuZGVidWcpe2JlbmNobWFyaygiQnVpbGRpbmcgY2FjaGUgZm9yICIrdG90YWxSb3dzKyIgcm93czoiLGNhY2hlVGltZSk7fXJldHVybiBjYWNoZTt9O2Z1bmN0aW9uIGdldEVsZW1lbnRUZXh0KGNvbmZpZyxub2RlKXt2YXIgdGV4dD0iIjtpZighbm9kZSlyZXR1cm4iIjtpZighY29uZmlnLnN1cHBvcnRzVGV4dENvbnRlbnQpY29uZmlnLnN1cHBvcnRzVGV4dENvbnRlbnQ9bm9kZS50ZXh0Q29udGVudHx8ZmFsc2U7aWYoY29uZmlnLnRleHRFeHRyYWN0aW9uPT0ic2ltcGxlIil7aWYoY29uZmlnLnN1cHBvcnRzVGV4dENvbnRlbnQpe3RleHQ9bm9kZS50ZXh0Q29udGVudDt9ZWxzZXtpZihub2RlLmNoaWxkTm9kZXNbMF0mJm5vZGUuY2hpbGROb2Rlc1swXS5oYXNDaGlsZE5vZGVzKCkpe3RleHQ9bm9kZS5jaGlsZE5vZGVzWzBdLmlubmVySFRNTDt9ZWxzZXt0ZXh0PW5vZGUuaW5uZXJIVE1MO319fWVsc2V7aWYodHlwZW9mKGNvbmZpZy50ZXh0RXh0cmFjdGlvbik9PSJmdW5jdGlvbiIpe3RleHQ9Y29uZmlnLnRleHRFeHRyYWN0aW9uKG5vZGUpO31lbHNle3RleHQ9JChub2RlKS50ZXh0KCk7fX1yZXR1cm4gdGV4dDt9ZnVuY3Rpb24gYXBwZW5kVG9UYWJsZSh0YWJsZSxjYWNoZSl7aWYodGFibGUuY29uZmlnLmRlYnVnKXt2YXIgYXBwZW5kVGltZT1uZXcgRGF0ZSgpfXZhciBjPWNhY2hlLHI9Yy5yb3csbj1jLm5vcm1hbGl6ZWQsdG90YWxSb3dzPW4ubGVuZ3RoLGNoZWNrQ2VsbD0oblswXS5sZW5ndGgtMSksdGFibGVCb2R5PSQodGFibGUudEJvZGllc1swXSkscm93cz1bXTtmb3IodmFyIGk9MDtpPHRvdGFsUm93cztpKyspe3ZhciBwb3M9bltpXVtjaGVja0NlbGxdO3Jvd3MucHVzaChyW3Bvc10pO2lmKCF0YWJsZS5jb25maWcuYXBwZW5kZXIpe3ZhciBsPXJbcG9zXS5sZW5ndGg7Zm9yKHZhciBqPTA7ajxsO2orKyl7dGFibGVCb2R5WzBdLmFwcGVuZENoaWxkKHJbcG9zXVtqXSk7fX19aWYodGFibGUuY29uZmlnLmFwcGVuZGVyKXt0YWJsZS5jb25maWcuYXBwZW5kZXIodGFibGUscm93cyk7fXJvd3M9bnVsbDtpZih0YWJsZS5jb25maWcuZGVidWcpe2JlbmNobWFyaygiUmVidWlsdCB0YWJsZToiLGFwcGVuZFRpbWUpO31hcHBseVdpZGdldCh0YWJsZSk7c2V0VGltZW91dChmdW5jdGlvbigpeyQodGFibGUpLnRyaWdnZXIoInNvcnRFbmQiKTt9LDApO307ZnVuY3Rpb24gYnVpbGRIZWFkZXJzKHRhYmxlKXtpZih0YWJsZS5jb25maWcuZGVidWcpe3ZhciB0aW1lPW5ldyBEYXRlKCk7fXZhciBtZXRhPSgkLm1ldGFkYXRhKT90cnVlOmZhbHNlO3ZhciBoZWFkZXJfaW5kZXg9Y29tcHV0ZVRhYmxlSGVhZGVyQ2VsbEluZGV4ZXModGFibGUpOyR0YWJsZUhlYWRlcnM9JCh0YWJsZS5jb25maWcuc2VsZWN0b3JIZWFkZXJzLHRhYmxlKS5lYWNoKGZ1bmN0aW9uKGluZGV4KXt0aGlzLmNvbHVtbj1oZWFkZXJfaW5kZXhbdGhpcy5wYXJlbnROb2RlLnJvd0luZGV4KyItIit0aGlzLmNlbGxJbmRleF07dGhpcy5vcmRlcj1mb3JtYXRTb3J0aW5nT3JkZXIodGFibGUuY29uZmlnLnNvcnRJbml0aWFsT3JkZXIpO3RoaXMuY291bnQ9dGhpcy5vcmRlcjtpZihjaGVja0hlYWRlck1ldGFkYXRhKHRoaXMpfHxjaGVja0hlYWRlck9wdGlvbnModGFibGUsaW5kZXgpKXRoaXMuc29ydERpc2FibGVkPXRydWU7aWYoY2hlY2tIZWFkZXJPcHRpb25zU29ydGluZ0xvY2tlZCh0YWJsZSxpbmRleCkpdGhpcy5vcmRlcj10aGlzLmxvY2tlZE9yZGVyPWNoZWNrSGVhZGVyT3B0aW9uc1NvcnRpbmdMb2NrZWQodGFibGUsaW5kZXgpO2lmKCF0aGlzLnNvcnREaXNhYmxlZCl7dmFyICR0aD0kKHRoaXMpLmFkZENsYXNzKHRhYmxlLmNvbmZpZy5jc3NIZWFkZXIpO2lmKHRhYmxlLmNvbmZpZy5vblJlbmRlckhlYWRlcil0YWJsZS5jb25maWcub25SZW5kZXJIZWFkZXIuYXBwbHkoJHRoKTt9dGFibGUuY29uZmlnLmhlYWRlckxpc3RbaW5kZXhdPXRoaXM7fSk7aWYodGFibGUuY29uZmlnLmRlYnVnKXtiZW5jaG1hcmsoIkJ1aWx0IGhlYWRlcnM6Iix0aW1lKTtsb2coJHRhYmxlSGVhZGVycyk7fXJldHVybiAkdGFibGVIZWFkZXJzO307ZnVuY3Rpb24gY29tcHV0ZVRhYmxlSGVhZGVyQ2VsbEluZGV4ZXModCl7dmFyIG1hdHJpeD1bXTt2YXIgbG9va3VwPXt9O3ZhciB0aGVhZD10LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdUSEVBRCcpWzBdO3ZhciB0cnM9dGhlYWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ1RSJyk7Zm9yKHZhciBpPTA7aTx0cnMubGVuZ3RoO2krKyl7dmFyIGNlbGxzPXRyc1tpXS5jZWxscztmb3IodmFyIGo9MDtqPGNlbGxzLmxlbmd0aDtqKyspe3ZhciBjPWNlbGxzW2pdO3ZhciByb3dJbmRleD1jLnBhcmVudE5vZGUucm93SW5kZXg7dmFyIGNlbGxJZD1yb3dJbmRleCsiLSIrYy5jZWxsSW5kZXg7dmFyIHJvd1NwYW49Yy5yb3dTcGFufHwxO3ZhciBjb2xTcGFuPWMuY29sU3Bhbnx8MQp2YXIgZmlyc3RBdmFpbENvbDtpZih0eXBlb2YobWF0cml4W3Jvd0luZGV4XSk9PSJ1bmRlZmluZWQiKXttYXRyaXhbcm93SW5kZXhdPVtdO31mb3IodmFyIGs9MDtrPG1hdHJpeFtyb3dJbmRleF0ubGVuZ3RoKzE7aysrKXtpZih0eXBlb2YobWF0cml4W3Jvd0luZGV4XVtrXSk9PSJ1bmRlZmluZWQiKXtmaXJzdEF2YWlsQ29sPWs7YnJlYWs7fX1sb29rdXBbY2VsbElkXT1maXJzdEF2YWlsQ29sO2Zvcih2YXIgaz1yb3dJbmRleDtrPHJvd0luZGV4K3Jvd1NwYW47aysrKXtpZih0eXBlb2YobWF0cml4W2tdKT09InVuZGVmaW5lZCIpe21hdHJpeFtrXT1bXTt9dmFyIG1hdHJpeHJvdz1tYXRyaXhba107Zm9yKHZhciBsPWZpcnN0QXZhaWxDb2w7bDxmaXJzdEF2YWlsQ29sK2NvbFNwYW47bCsrKXttYXRyaXhyb3dbbF09IngiO319fX1yZXR1cm4gbG9va3VwO31mdW5jdGlvbiBjaGVja0NlbGxDb2xTcGFuKHRhYmxlLHJvd3Mscm93KXt2YXIgYXJyPVtdLHI9dGFibGUudEhlYWQucm93cyxjPXJbcm93XS5jZWxscztmb3IodmFyIGk9MDtpPGMubGVuZ3RoO2krKyl7dmFyIGNlbGw9Y1tpXTtpZihjZWxsLmNvbFNwYW4+MSl7YXJyPWFyci5jb25jYXQoY2hlY2tDZWxsQ29sU3Bhbih0YWJsZSxoZWFkZXJBcnIscm93KyspKTt9ZWxzZXtpZih0YWJsZS50SGVhZC5sZW5ndGg9PTF8fChjZWxsLnJvd1NwYW4+MXx8IXJbcm93KzFdKSl7YXJyLnB1c2goY2VsbCk7fX19cmV0dXJuIGFycjt9O2Z1bmN0aW9uIGNoZWNrSGVhZGVyTWV0YWRhdGEoY2VsbCl7aWYoKCQubWV0YWRhdGEpJiYoJChjZWxsKS5tZXRhZGF0YSgpLnNvcnRlcj09PWZhbHNlKSl7cmV0dXJuIHRydWU7fTtyZXR1cm4gZmFsc2U7fWZ1bmN0aW9uIGNoZWNrSGVhZGVyT3B0aW9ucyh0YWJsZSxpKXtpZigodGFibGUuY29uZmlnLmhlYWRlcnNbaV0pJiYodGFibGUuY29uZmlnLmhlYWRlcnNbaV0uc29ydGVyPT09ZmFsc2UpKXtyZXR1cm4gdHJ1ZTt9O3JldHVybiBmYWxzZTt9ZnVuY3Rpb24gY2hlY2tIZWFkZXJPcHRpb25zU29ydGluZ0xvY2tlZCh0YWJsZSxpKXtpZigodGFibGUuY29uZmlnLmhlYWRlcnNbaV0pJiYodGFibGUuY29uZmlnLmhlYWRlcnNbaV0ubG9ja2VkT3JkZXIpKXJldHVybiB0YWJsZS5jb25maWcuaGVhZGVyc1tpXS5sb2NrZWRPcmRlcjtyZXR1cm4gZmFsc2U7fWZ1bmN0aW9uIGFwcGx5V2lkZ2V0KHRhYmxlKXt2YXIgYz10YWJsZS5jb25maWcud2lkZ2V0czt2YXIgbD1jLmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXtnZXRXaWRnZXRCeUlkKGNbaV0pLmZvcm1hdCh0YWJsZSk7fX1mdW5jdGlvbiBnZXRXaWRnZXRCeUlkKG5hbWUpe3ZhciBsPXdpZGdldHMubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKHdpZGdldHNbaV0uaWQudG9Mb3dlckNhc2UoKT09bmFtZS50b0xvd2VyQ2FzZSgpKXtyZXR1cm4gd2lkZ2V0c1tpXTt9fX07ZnVuY3Rpb24gZm9ybWF0U29ydGluZ09yZGVyKHYpe2lmKHR5cGVvZih2KSE9Ik51bWJlciIpe3JldHVybih2LnRvTG93ZXJDYXNlKCk9PSJkZXNjIik/MTowO31lbHNle3JldHVybih2PT0xKT8xOjA7fX1mdW5jdGlvbiBpc1ZhbHVlSW5BcnJheSh2LGEpe3ZhciBsPWEubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bDtpKyspe2lmKGFbaV1bMF09PXYpe3JldHVybiB0cnVlO319cmV0dXJuIGZhbHNlO31mdW5jdGlvbiBzZXRIZWFkZXJzQ3NzKHRhYmxlLCRoZWFkZXJzLGxpc3QsY3NzKXskaGVhZGVycy5yZW1vdmVDbGFzcyhjc3NbMF0pLnJlbW92ZUNsYXNzKGNzc1sxXSk7dmFyIGg9W107JGhlYWRlcnMuZWFjaChmdW5jdGlvbihvZmZzZXQpe2lmKCF0aGlzLnNvcnREaXNhYmxlZCl7aFt0aGlzLmNvbHVtbl09JCh0aGlzKTt9fSk7dmFyIGw9bGlzdC5sZW5ndGg7Zm9yKHZhciBpPTA7aTxsO2krKyl7aFtsaXN0W2ldWzBdXS5hZGRDbGFzcyhjc3NbbGlzdFtpXVsxXV0pO319ZnVuY3Rpb24gZml4Q29sdW1uV2lkdGgodGFibGUsJGhlYWRlcnMpe3ZhciBjPXRhYmxlLmNvbmZpZztpZihjLndpZHRoRml4ZWQpe3ZhciBjb2xncm91cD0kKCc8Y29sZ3JvdXA+Jyk7JCgidHI6Zmlyc3QgdGQiLHRhYmxlLnRCb2RpZXNbMF0pLmVhY2goZnVuY3Rpb24oKXtjb2xncm91cC5hcHBlbmQoJCgnPGNvbD4nKS5jc3MoJ3dpZHRoJywkKHRoaXMpLndpZHRoKCkpKTt9KTskKHRhYmxlKS5wcmVwZW5kKGNvbGdyb3VwKTt9O31mdW5jdGlvbiB1cGRhdGVIZWFkZXJTb3J0Q291bnQodGFibGUsc29ydExpc3Qpe3ZhciBjPXRhYmxlLmNvbmZpZyxsPXNvcnRMaXN0Lmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXt2YXIgcz1zb3J0TGlzdFtpXSxvPWMuaGVhZGVyTGlzdFtzWzBdXTtvLmNvdW50PXNbMV07by5jb3VudCsrO319ZnVuY3Rpb24gbXVsdGlzb3J0KHRhYmxlLHNvcnRMaXN0LGNhY2hlKXtpZih0YWJsZS5jb25maWcuZGVidWcpe3ZhciBzb3J0VGltZT1uZXcgRGF0ZSgpO312YXIgZHluYW1pY0V4cD0idmFyIHNvcnRXcmFwcGVyID0gZnVuY3Rpb24oYSxiKSB7IixsPXNvcnRMaXN0Lmxlbmd0aDtmb3IodmFyIGk9MDtpPGw7aSsrKXt2YXIgYz1zb3J0TGlzdFtpXVswXTt2YXIgb3JkZXI9c29ydExpc3RbaV1bMV07dmFyIHM9KHRhYmxlLmNvbmZpZy5wYXJzZXJzW2NdLnR5cGU9PSJ0ZXh0Iik/KChvcmRlcj09MCk/bWFrZVNvcnRGdW5jdGlvbigidGV4dCIsImFzYyIsYyk6bWFrZVNvcnRGdW5jdGlvbigidGV4dCIsImRlc2MiLGMpKTooKG9yZGVyPT0wKT9tYWtlU29ydEZ1bmN0aW9uKCJudW1lcmljIiwiYXNjIixjKTptYWtlU29ydEZ1bmN0aW9uKCJudW1lcmljIiwiZGVzYyIsYykpO3ZhciBlPSJlIitpO2R5bmFtaWNFeHArPSJ2YXIgIitlKyIgPSAiK3M7ZHluYW1pY0V4cCs9ImlmKCIrZSsiKSB7IHJldHVybiAiK2UrIjsgfSAiO2R5bmFtaWNFeHArPSJlbHNlIHsgIjt9dmFyIG9yZ09yZGVyQ29sPWNhY2hlLm5vcm1hbGl6ZWRbMF0ubGVuZ3RoLTE7ZHluYW1pY0V4cCs9InJldHVybiBhWyIrb3JnT3JkZXJDb2wrIl0tYlsiK29yZ09yZGVyQ29sKyJdOyI7Zm9yKHZhciBpPTA7aTxsO2krKyl7ZHluYW1pY0V4cCs9In07ICI7fWR5bmFtaWNFeHArPSJyZXR1cm4gMDsgIjtkeW5hbWljRXhwKz0ifTsgIjtpZih0YWJsZS5jb25maWcuZGVidWcpe2JlbmNobWFyaygiRXZhbGluZyBleHByZXNzaW9uOiIrZHluYW1pY0V4cCxuZXcgRGF0ZSgpKTt9ZXZhbChkeW5hbWljRXhwKTtjYWNoZS5ub3JtYWxpemVkLnNvcnQoc29ydFdyYXBwZXIpO2lmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7YmVuY2htYXJrKCJTb3J0aW5nIG9uICIrc29ydExpc3QudG9TdHJpbmcoKSsiIGFuZCBkaXIgIitvcmRlcisiIHRpbWU6Iixzb3J0VGltZSk7fXJldHVybiBjYWNoZTt9O2Z1bmN0aW9uIG1ha2VTb3J0RnVuY3Rpb24odHlwZSxkaXJlY3Rpb24saW5kZXgpe3ZhciBhPSJhWyIraW5kZXgrIl0iLGI9ImJbIitpbmRleCsiXSI7aWYodHlwZT09J3RleHQnJiZkaXJlY3Rpb249PSdhc2MnKXtyZXR1cm4iKCIrYSsiID09ICIrYisiID8gMCA6ICgiK2ErIiA9PT0gbnVsbCA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6ICgiK2IrIiA9PT0gbnVsbCA/IE51bWJlci5ORUdBVElWRV9JTkZJTklUWSA6ICgiK2ErIiA8ICIrYisiKSA/IC0xIDogMSApKSk7Ijt9ZWxzZSBpZih0eXBlPT0ndGV4dCcmJmRpcmVjdGlvbj09J2Rlc2MnKXtyZXR1cm4iKCIrYSsiID09ICIrYisiID8gMCA6ICgiK2ErIiA9PT0gbnVsbCA/IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSA6ICgiK2IrIiA9PT0gbnVsbCA/IE51bWJlci5ORUdBVElWRV9JTkZJTklUWSA6ICgiK2IrIiA8ICIrYSsiKSA/IC0xIDogMSApKSk7Ijt9ZWxzZSBpZih0eXBlPT0nbnVtZXJpYycmJmRpcmVjdGlvbj09J2FzYycpe3JldHVybiIoIithKyIgPT09IG51bGwgJiYgIitiKyIgPT09IG51bGwpID8gMCA6KCIrYSsiID09PSBudWxsID8gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZIDogKCIrYisiID09PSBudWxsID8gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZIDogIithKyIgLSAiK2IrIikpOyI7fWVsc2UgaWYodHlwZT09J251bWVyaWMnJiZkaXJlY3Rpb249PSdkZXNjJyl7cmV0dXJuIigiK2ErIiA9PT0gbnVsbCAmJiAiK2IrIiA9PT0gbnVsbCkgPyAwIDooIithKyIgPT09IG51bGwgPyBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgOiAoIitiKyIgPT09IG51bGwgPyBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgOiAiK2IrIiAtICIrYSsiKSk7Ijt9fTtmdW5jdGlvbiBtYWtlU29ydFRleHQoaSl7cmV0dXJuIigoYVsiK2krIl0gPCBiWyIraSsiXSkgPyAtMSA6ICgoYVsiK2krIl0gPiBiWyIraSsiXSkgPyAxIDogMCkpOyI7fTtmdW5jdGlvbiBtYWtlU29ydFRleHREZXNjKGkpe3JldHVybiIoKGJbIitpKyJdIDwgYVsiK2krIl0pID8gLTEgOiAoKGJbIitpKyJdID4gYVsiK2krIl0pID8gMSA6IDApKTsiO307ZnVuY3Rpb24gbWFrZVNvcnROdW1lcmljKGkpe3JldHVybiJhWyIraSsiXS1iWyIraSsiXTsiO307ZnVuY3Rpb24gbWFrZVNvcnROdW1lcmljRGVzYyhpKXtyZXR1cm4iYlsiK2krIl0tYVsiK2krIl07Ijt9O2Z1bmN0aW9uIHNvcnRUZXh0KGEsYil7aWYodGFibGUuY29uZmlnLnNvcnRMb2NhbGVDb21wYXJlKXJldHVybiBhLmxvY2FsZUNvbXBhcmUoYik7cmV0dXJuKChhPGIpPy0xOigoYT5iKT8xOjApKTt9O2Z1bmN0aW9uIHNvcnRUZXh0RGVzYyhhLGIpe2lmKHRhYmxlLmNvbmZpZy5zb3J0TG9jYWxlQ29tcGFyZSlyZXR1cm4gYi5sb2NhbGVDb21wYXJlKGEpO3JldHVybigoYjxhKT8tMTooKGI+YSk/MTowKSk7fTtmdW5jdGlvbiBzb3J0TnVtZXJpYyhhLGIpe3JldHVybiBhLWI7fTtmdW5jdGlvbiBzb3J0TnVtZXJpY0Rlc2MoYSxiKXtyZXR1cm4gYi1hO307ZnVuY3Rpb24gZ2V0Q2FjaGVkU29ydFR5cGUocGFyc2VycyxpKXtyZXR1cm4gcGFyc2Vyc1tpXS50eXBlO307dGhpcy5jb25zdHJ1Y3Q9ZnVuY3Rpb24oc2V0dGluZ3Mpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtpZighdGhpcy50SGVhZHx8IXRoaXMudEJvZGllcylyZXR1cm47dmFyICR0aGlzLCRkb2N1bWVudCwkaGVhZGVycyxjYWNoZSxjb25maWcsc2hpZnREb3duPTAsc29ydE9yZGVyO3RoaXMuY29uZmlnPXt9O2NvbmZpZz0kLmV4dGVuZCh0aGlzLmNvbmZpZywkLnRhYmxlc29ydGVyLmRlZmF1bHRzLHNldHRpbmdzKTskdGhpcz0kKHRoaXMpOyQuZGF0YSh0aGlzLCJ0YWJsZXNvcnRlciIsY29uZmlnKTskaGVhZGVycz1idWlsZEhlYWRlcnModGhpcyk7dGhpcy5jb25maWcucGFyc2Vycz1idWlsZFBhcnNlckNhY2hlKHRoaXMsJGhlYWRlcnMpO2NhY2hlPWJ1aWxkQ2FjaGUodGhpcyk7dmFyIHNvcnRDU1M9W2NvbmZpZy5jc3NEZXNjLGNvbmZpZy5jc3NBc2NdO2ZpeENvbHVtbldpZHRoKHRoaXMpOyRoZWFkZXJzLmNsaWNrKGZ1bmN0aW9uKGUpe3ZhciB0b3RhbFJvd3M9KCR0aGlzWzBdLnRCb2RpZXNbMF0mJiR0aGlzWzBdLnRCb2RpZXNbMF0ucm93cy5sZW5ndGgpfHwwO2lmKCF0aGlzLnNvcnREaXNhYmxlZCYmdG90YWxSb3dzPjApeyR0aGlzLnRyaWdnZXIoInNvcnRTdGFydCIpO3ZhciAkY2VsbD0kKHRoaXMpO3ZhciBpPXRoaXMuY29sdW1uO3RoaXMub3JkZXI9dGhpcy5jb3VudCsrJTI7aWYodGhpcy5sb2NrZWRPcmRlcil0aGlzLm9yZGVyPXRoaXMubG9ja2VkT3JkZXI7aWYoIWVbY29uZmlnLnNvcnRNdWx0aVNvcnRLZXldKXtjb25maWcuc29ydExpc3Q9W107aWYoY29uZmlnLnNvcnRGb3JjZSE9bnVsbCl7dmFyIGE9Y29uZmlnLnNvcnRGb3JjZTtmb3IodmFyIGo9MDtqPGEubGVuZ3RoO2orKyl7aWYoYVtqXVswXSE9aSl7Y29uZmlnLnNvcnRMaXN0LnB1c2goYVtqXSk7fX19Y29uZmlnLnNvcnRMaXN0LnB1c2goW2ksdGhpcy5vcmRlcl0pO31lbHNle2lmKGlzVmFsdWVJbkFycmF5KGksY29uZmlnLnNvcnRMaXN0KSl7Zm9yKHZhciBqPTA7ajxjb25maWcuc29ydExpc3QubGVuZ3RoO2orKyl7dmFyIHM9Y29uZmlnLnNvcnRMaXN0W2pdLG89Y29uZmlnLmhlYWRlckxpc3Rbc1swXV07aWYoc1swXT09aSl7by5jb3VudD1zWzFdO28uY291bnQrKztzWzFdPW8uY291bnQlMjt9fX1lbHNle2NvbmZpZy5zb3J0TGlzdC5wdXNoKFtpLHRoaXMub3JkZXJdKTt9fTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c2V0SGVhZGVyc0NzcygkdGhpc1swXSwkaGVhZGVycyxjb25maWcuc29ydExpc3Qsc29ydENTUyk7YXBwZW5kVG9UYWJsZSgkdGhpc1swXSxtdWx0aXNvcnQoJHRoaXNbMF0sY29uZmlnLnNvcnRMaXN0LGNhY2hlKSk7fSwxKTtyZXR1cm4gZmFsc2U7fX0pLm1vdXNlZG93bihmdW5jdGlvbigpe2lmKGNvbmZpZy5jYW5jZWxTZWxlY3Rpb24pe3RoaXMub25zZWxlY3RzdGFydD1mdW5jdGlvbigpe3JldHVybiBmYWxzZX07cmV0dXJuIGZhbHNlO319KTskdGhpcy5iaW5kKCJ1cGRhdGUiLGZ1bmN0aW9uKCl7dmFyIG1lPXRoaXM7c2V0VGltZW91dChmdW5jdGlvbigpe21lLmNvbmZpZy5wYXJzZXJzPWJ1aWxkUGFyc2VyQ2FjaGUobWUsJGhlYWRlcnMpO2NhY2hlPWJ1aWxkQ2FjaGUobWUpO30sMSk7fSkuYmluZCgidXBkYXRlQ2VsbCIsZnVuY3Rpb24oZSxjZWxsKXt2YXIgY29uZmlnPXRoaXMuY29uZmlnO3ZhciBwb3M9WyhjZWxsLnBhcmVudE5vZGUucm93SW5kZXgtMSksY2VsbC5jZWxsSW5kZXhdO2NhY2hlLm5vcm1hbGl6ZWRbcG9zWzBdXVtwb3NbMV1dPWNvbmZpZy5wYXJzZXJzW3Bvc1sxXV0uZm9ybWF0KGdldEVsZW1lbnRUZXh0KGNvbmZpZyxjZWxsKSxjZWxsKTt9KS5iaW5kKCJzb3J0b24iLGZ1bmN0aW9uKGUsbGlzdCl7JCh0aGlzKS50cmlnZ2VyKCJzb3J0U3RhcnQiKTtjb25maWcuc29ydExpc3Q9bGlzdDt2YXIgc29ydExpc3Q9Y29uZmlnLnNvcnRMaXN0O3VwZGF0ZUhlYWRlclNvcnRDb3VudCh0aGlzLHNvcnRMaXN0KTtzZXRIZWFkZXJzQ3NzKHRoaXMsJGhlYWRlcnMsc29ydExpc3Qsc29ydENTUyk7YXBwZW5kVG9UYWJsZSh0aGlzLG11bHRpc29ydCh0aGlzLHNvcnRMaXN0LGNhY2hlKSk7fSkuYmluZCgiYXBwZW5kQ2FjaGUiLGZ1bmN0aW9uKCl7YXBwZW5kVG9UYWJsZSh0aGlzLGNhY2hlKTt9KS5iaW5kKCJhcHBseVdpZGdldElkIixmdW5jdGlvbihlLGlkKXtnZXRXaWRnZXRCeUlkKGlkKS5mb3JtYXQodGhpcyk7fSkuYmluZCgiYXBwbHlXaWRnZXRzIixmdW5jdGlvbigpe2FwcGx5V2lkZ2V0KHRoaXMpO30pO2lmKCQubWV0YWRhdGEmJigkKHRoaXMpLm1ldGFkYXRhKCkmJiQodGhpcykubWV0YWRhdGEoKS5zb3J0bGlzdCkpe2NvbmZpZy5zb3J0TGlzdD0kKHRoaXMpLm1ldGFkYXRhKCkuc29ydGxpc3Q7fWlmKGNvbmZpZy5zb3J0TGlzdC5sZW5ndGg+MCl7JHRoaXMudHJpZ2dlcigic29ydG9uIixbY29uZmlnLnNvcnRMaXN0XSk7fWFwcGx5V2lkZ2V0KHRoaXMpO30pO307dGhpcy5hZGRQYXJzZXI9ZnVuY3Rpb24ocGFyc2VyKXt2YXIgbD1wYXJzZXJzLmxlbmd0aCxhPXRydWU7Zm9yKHZhciBpPTA7aTxsO2krKyl7aWYocGFyc2Vyc1tpXS5pZC50b0xvd2VyQ2FzZSgpPT1wYXJzZXIuaWQudG9Mb3dlckNhc2UoKSl7YT1mYWxzZTt9fWlmKGEpe3BhcnNlcnMucHVzaChwYXJzZXIpO307fTt0aGlzLmFkZFdpZGdldD1mdW5jdGlvbih3aWRnZXQpe3dpZGdldHMucHVzaCh3aWRnZXQpO307dGhpcy5mb3JtYXRGbG9hdD1mdW5jdGlvbihzKXt2YXIgaT1wYXJzZUZsb2F0KHMpO3JldHVybihpc05hTihpKSk/MDppO307dGhpcy5mb3JtYXRJbnQ9ZnVuY3Rpb24ocyl7dmFyIGk9cGFyc2VJbnQocyk7cmV0dXJuKGlzTmFOKGkpKT8wOmk7fTt0aGlzLmlzRGlnaXQ9ZnVuY3Rpb24ocyxjb25maWcpe3JldHVybi9eWy0rXT9cZCokLy50ZXN0KCQudHJpbShzLnJlcGxhY2UoL1ssLiddL2csJycpKSk7fTt0aGlzLmNsZWFyVGFibGVCb2R5PWZ1bmN0aW9uKHRhYmxlKXtpZigkLmJyb3dzZXIubXNpZSl7ZnVuY3Rpb24gZW1wdHkoKXt3aGlsZSh0aGlzLmZpcnN0Q2hpbGQpdGhpcy5yZW1vdmVDaGlsZCh0aGlzLmZpcnN0Q2hpbGQpO31lbXB0eS5hcHBseSh0YWJsZS50Qm9kaWVzWzBdKTt9ZWxzZXt0YWJsZS50Qm9kaWVzWzBdLmlubmVySFRNTD0iIjt9fTt9fSk7JC5mbi5leHRlbmQoe3RhYmxlc29ydGVyOiQudGFibGVzb3J0ZXIuY29uc3RydWN0fSk7dmFyIHRzPSQudGFibGVzb3J0ZXI7dHMuYWRkUGFyc2VyKHtpZDoidGV4dCIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuIHRydWU7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuICQudHJpbShzLnRvTG9jYWxlTG93ZXJDYXNlKCkpO30sdHlwZToidGV4dCJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJkaWdpdCIsaXM6ZnVuY3Rpb24ocyx0YWJsZSl7dmFyIGM9dGFibGUuY29uZmlnO3JldHVybiAkLnRhYmxlc29ydGVyLmlzRGlnaXQocyxjKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChzKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoiY3VycmVuY3kiLGlzOmZ1bmN0aW9uKHMpe3JldHVybi9eW8KjJOKCrD8uXS8udGVzdChzKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChzLnJlcGxhY2UobmV3IFJlZ0V4cCgvW8KjJOKCrF0vZyksIiIpKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoiaXBBZGRyZXNzIixpczpmdW5jdGlvbihzKXtyZXR1cm4vXlxkezIsM31bXC5dXGR7MiwzfVtcLl1cZHsyLDN9W1wuXVxkezIsM30kLy50ZXN0KHMpO30sZm9ybWF0OmZ1bmN0aW9uKHMpe3ZhciBhPXMuc3BsaXQoIi4iKSxyPSIiLGw9YS5sZW5ndGg7Zm9yKHZhciBpPTA7aTxsO2krKyl7dmFyIGl0ZW09YVtpXTtpZihpdGVtLmxlbmd0aD09Mil7cis9IjAiK2l0ZW07fWVsc2V7cis9aXRlbTt9fXJldHVybiAkLnRhYmxlc29ydGVyLmZvcm1hdEZsb2F0KHIpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJ1cmwiLGlzOmZ1bmN0aW9uKHMpe3JldHVybi9eKGh0dHBzP3xmdHB8ZmlsZSk6XC9cLyQvLnRlc3Qocyk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuIGpRdWVyeS50cmltKHMucmVwbGFjZShuZXcgUmVnRXhwKC8oaHR0cHM/fGZ0cHxmaWxlKTpcL1wvLyksJycpKTt9LHR5cGU6InRleHQifSk7dHMuYWRkUGFyc2VyKHtpZDoiaXNvRGF0ZSIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuL15cZHs0fVtcLy1dXGR7MSwyfVtcLy1dXGR7MSwyfSQvLnRlc3Qocyk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyl7cmV0dXJuICQudGFibGVzb3J0ZXIuZm9ybWF0RmxvYXQoKHMhPSIiKT9uZXcgRGF0ZShzLnJlcGxhY2UobmV3IFJlZ0V4cCgvLS9nKSwiLyIpKS5nZXRUaW1lKCk6IjAiKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoicGVyY2VudCIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuL1wlJC8udGVzdCgkLnRyaW0ocykpO30sZm9ybWF0OmZ1bmN0aW9uKHMpe3JldHVybiAkLnRhYmxlc29ydGVyLmZvcm1hdEZsb2F0KHMucmVwbGFjZShuZXcgUmVnRXhwKC8lL2cpLCIiKSk7fSx0eXBlOiJudW1lcmljIn0pO3RzLmFkZFBhcnNlcih7aWQ6InVzTG9uZ0RhdGUiLGlzOmZ1bmN0aW9uKHMpe3JldHVybiBzLm1hdGNoKG5ldyBSZWdFeHAoL15bQS1aYS16XXszLDEwfVwuPyBbMC05XXsxLDJ9LCAoWzAtOV17NH18Jz9bMC05XXsyfSkgKChbMC0yXT9bMC05XTpbMC01XVswLTldKXwoWzAtMV0/WzAtOV06WzAtNV1bMC05XVxzKEFNfFBNKSkpJC8pKTt9LGZvcm1hdDpmdW5jdGlvbihzKXtyZXR1cm4gJC50YWJsZXNvcnRlci5mb3JtYXRGbG9hdChuZXcgRGF0ZShzKS5nZXRUaW1lKCkpO30sdHlwZToibnVtZXJpYyJ9KTt0cy5hZGRQYXJzZXIoe2lkOiJzaG9ydERhdGUiLGlzOmZ1bmN0aW9uKHMpe3JldHVybi9cZHsxLDJ9W1wvXC1dXGR7MSwyfVtcL1wtXVxkezIsNH0vLnRlc3Qocyk7fSxmb3JtYXQ6ZnVuY3Rpb24ocyx0YWJsZSl7dmFyIGM9dGFibGUuY29uZmlnO3M9cy5yZXBsYWNlKC9cLS9nLCIvIik7aWYoYy5kYXRlRm9ybWF0PT0idXMiKXtzPXMucmVwbGFjZSgvKFxkezEsMn0pW1wvXC1dKFxkezEsMn0pW1wvXC1dKFxkezR9KS8sIiQzLyQxLyQyIik7fWVsc2UgaWYoYy5kYXRlRm9ybWF0PT0idWsiKXtzPXMucmVwbGFjZSgvKFxkezEsMn0pW1wvXC1dKFxkezEsMn0pW1wvXC1dKFxkezR9KS8sIiQzLyQyLyQxIik7fWVsc2UgaWYoYy5kYXRlRm9ybWF0PT0iZGQvbW0veXkifHxjLmRhdGVGb3JtYXQ9PSJkZC1tbS15eSIpe3M9cy5yZXBsYWNlKC8oXGR7MSwyfSlbXC9cLV0oXGR7MSwyfSlbXC9cLV0oXGR7Mn0pLywiJDEvJDIvJDMiKTt9cmV0dXJuICQudGFibGVzb3J0ZXIuZm9ybWF0RmxvYXQobmV3IERhdGUocykuZ2V0VGltZSgpKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoidGltZSIsaXM6ZnVuY3Rpb24ocyl7cmV0dXJuL14oKFswLTJdP1swLTldOlswLTVdWzAtOV0pfChbMC0xXT9bMC05XTpbMC01XVswLTldXHMoYW18cG0pKSkkLy50ZXN0KHMpO30sZm9ybWF0OmZ1bmN0aW9uKHMpe3JldHVybiAkLnRhYmxlc29ydGVyLmZvcm1hdEZsb2F0KG5ldyBEYXRlKCIyMDAwLzAxLzAxICIrcykuZ2V0VGltZSgpKTt9LHR5cGU6Im51bWVyaWMifSk7dHMuYWRkUGFyc2VyKHtpZDoibWV0YWRhdGEiLGlzOmZ1bmN0aW9uKHMpe3JldHVybiBmYWxzZTt9LGZvcm1hdDpmdW5jdGlvbihzLHRhYmxlLGNlbGwpe3ZhciBjPXRhYmxlLmNvbmZpZyxwPSghYy5wYXJzZXJNZXRhZGF0YU5hbWUpPydzb3J0VmFsdWUnOmMucGFyc2VyTWV0YWRhdGFOYW1lO3JldHVybiAkKGNlbGwpLm1ldGFkYXRhKClbcF07fSx0eXBlOiJudW1lcmljIn0pO3RzLmFkZFdpZGdldCh7aWQ6InplYnJhIixmb3JtYXQ6ZnVuY3Rpb24odGFibGUpe2lmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7dmFyIHRpbWU9bmV3IERhdGUoKTt9dmFyICR0cixyb3c9LTEsb2RkOyQoInRyOnZpc2libGUiLHRhYmxlLnRCb2RpZXNbMF0pLmVhY2goZnVuY3Rpb24oaSl7JHRyPSQodGhpcyk7aWYoISR0ci5oYXNDbGFzcyh0YWJsZS5jb25maWcuY3NzQ2hpbGRSb3cpKXJvdysrO29kZD0ocm93JTI9PTApOyR0ci5yZW1vdmVDbGFzcyh0YWJsZS5jb25maWcud2lkZ2V0WmVicmEuY3NzW29kZD8wOjFdKS5hZGRDbGFzcyh0YWJsZS5jb25maWcud2lkZ2V0WmVicmEuY3NzW29kZD8xOjBdKX0pO2lmKHRhYmxlLmNvbmZpZy5kZWJ1Zyl7JC50YWJsZXNvcnRlci5iZW5jaG1hcmsoIkFwcGx5aW5nIFplYnJhIHdpZGdldCIsdGltZSk7fX19KTt9KShqUXVlcnkpOw==]]></data>
	</file>
	<file>
	  <filename>/framework/js/listit2.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogRlVOQ1RJT05TCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCmZ1bmN0aW9uIGluaXRUYWJsZVNvcnRlcigpewoJdmFyIGwgPSBqUXVlcnkoJyNzb3J0YWJsZV9pdGVtIHRoJykubGVuZ3RoOwoJdmFyIGhlYWRlck9wdGlvbnMgPSB7fTsKCWZvcihuID0gMTsgbiA8PSA0OyBuKyspewoJCXZhciBpbmRleCA9IGwtbjsKCQloZWFkZXJPcHRpb25zW2luZGV4XSA9IHtzb3J0ZXI6IGZhbHNlfTsKCX0KCWpRdWVyeSgnI3NvcnRhYmxlX2l0ZW0nKS50YWJsZXNvcnRlcih7CgkJaGVhZGVyczogaGVhZGVyT3B0aW9ucwoJfSk7Cn0KCmZ1bmN0aW9uIGluaXREYXRlcGlja2VyKCl7CglqUXVlcnkoJyNtMV9zdGFydF90aW1lLCAjbTFfZW5kX3RpbWUnKS5kYXRlcGlja2VyKHsKCQkgZGF0ZUZvcm1hdDogJ3l5LW1tLWRkJwoJfSk7Cn0KCmZ1bmN0aW9uIGluaXRTb3J0YWJsZSgpewoKCWpRdWVyeSgnYm9keScpLmRlbGVnYXRlKCcjbTFfc3VibWl0X2l0ZW1vcmRlcicsJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpewoJCgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsJCgkKCQl2YXIgbmV3T3JkZXJJZHMgPSBnZXRPcmRlcmluZygnI3NvcnRhYmxlX2l0ZW0nKTsgCgkJdmFyIGNhbGxiYWNrID0gYWpheF9mdW5jdGlvbignU2F2ZUl0ZW1PcmRlcicsIG5ld09yZGVySWRzKTsKCQljYWxsYmFjay5zdWNjZXNzKGZ1bmN0aW9uKGRhdGEpIHsKCQkJc2hvd19tZXNzYWdlKGRhdGEpOwkJCgkJfSk7CQkKCgl9KTsKCglqUXVlcnkoJ2JvZHknKS5kZWxlZ2F0ZSgnI20xX3N1Ym1pdF9maWVsZGRlZm9yZGVyJywnY2xpY2snLCBmdW5jdGlvbihldmVudCl7CgkKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwkKCQoJCXZhciBuZXdPcmRlcklkcyA9IGdldE9yZGVyaW5nKCcjc29ydGFibGVfZmllbGRkZWYnKTsgCgkJdmFyIGNhbGxiYWNrID0gYWpheF9mdW5jdGlvbignU2F2ZUZpZWxkRGVmT3JkZXInLCBuZXdPcmRlcklkcyk7CgkJY2FsbGJhY2suc3VjY2VzcyhmdW5jdGlvbihkYXRhKSB7CgkJCXNob3dfbWVzc2FnZShkYXRhKTsKCQl9KTsJCQkKCgl9KTsKCgl2YXIgZ2V0T3JkZXJpbmcgPSBmdW5jdGlvbihpdGVtKSB7CgkKCQl2YXIgbmV3T3JkZXJpbmcgPSBqUXVlcnkoaXRlbSkuZmluZCgidGJvZHkuY29udGVudCIpLnNvcnRhYmxlKCd0b0FycmF5Jyk7CQoJCgkJaWYoaXRlbSA9PSAnI3NvcnRhYmxlX2l0ZW0nKQoJCQl2YXIgbCA9ICJpdGVtXyIubGVuZ3RoOwoJCQkKCQlpZihpdGVtID09ICcjc29ydGFibGVfZmllbGRkZWYnKQoJCQl2YXIgbCA9ICJmaWVsZGRlZl8iLmxlbmd0aDsKCQkJCgkgICAgdmFyIG5ld09yZGVySWRzID0gbmV3IEFycmF5KG5ld09yZGVyaW5nLmxlbmd0aCk7CgkgICAgdmFyIGN0ciA9IDA7CgkgICAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgaW4gdGhlIGFycmF5IGFuZCBnZXQgdGhlIElECgkgICAgalF1ZXJ5LmVhY2goCgkgICAgICAgIG5ld09yZGVyaW5nLAoJICAgICAgICBmdW5jdGlvbihpbnRJbmRleCwgb2JqVmFsdWUpIHsKCSAgICAgICAgICAgIC8vR2V0IHRoZSBJRCBvZiB0aGUgcmVvcmRlcmVkIGl0ZW1zIAoJICAgICAgICAgICAgLy8tIHRoaXMgaXMgc2VudCBiYWNrIHRvIHNlcnZlciB0byBzYXZlCgkgICAgICAgICAgICBuZXdPcmRlcklkc1tjdHJdID0gb2JqVmFsdWUuc3Vic3RyaW5nKGwsIG9ialZhbHVlLmxlbmd0aCk7CgkgICAgICAgICAgICBjdHIgPSBjdHIgKyAxOwoJICAgICAgICB9CgkgICAgKTsKCSAgICByZXR1cm4gbmV3T3JkZXJJZHM7ICAgIAoJfTsKCgkvL2ZpeCB0YWJsZSB3aWR0aCBvbiBzb3J0aW5nCgl2YXIgZml4SGVscGVyID0gZnVuY3Rpb24oZSwgdWkpIHsKICAgIAl1aS5jaGlsZHJlbigpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgCWpRdWVyeSh0aGlzKS53aWR0aChqUXVlcnkodGhpcykud2lkdGgoKSk7CiAgICAJfSk7CiAgICAJcmV0dXJuIHVpOwoJfTsKCQoJLy9ydW4gc29ydGFibGUgZnVuY3Rpb24KCWpRdWVyeSgiI3NvcnRhYmxlX2l0ZW0gdGJvZHkuY29udGVudCwgI3NvcnRhYmxlX2ZpZWxkZGVmIHRib2R5LmNvbnRlbnQiKS5zb3J0YWJsZSh7CgkJaGVscGVyOiBmaXhIZWxwZXIsCiAgICAgICAgdXBkYXRlOiBmdW5jdGlvbihldmVudCwgdWkpIHsKICAgICAgICAgICAgalF1ZXJ5KCIjc29ydGFibGVfaXRlbSwgI3NvcnRhYmxlX2ZpZWxkZGVmIikuZmluZCgidGJvZHkuY29udGVudCB0cjpvZGQiKS5hdHRyKCdjbGFzcycsICJyb3cyIik7CiAgICAgICAgICAgIGpRdWVyeSgiI3NvcnRhYmxlX2l0ZW0sICNzb3J0YWJsZV9maWVsZGRlZiIpLmZpbmQoInRib2R5LmNvbnRlbnQgdHI6ZXZlbiIpLmF0dHIoJ2NsYXNzJywgInJvdzEiKTsKICAgICAgICB9Cgl9KTsKCWpRdWVyeSgiI3NvcnRhYmxlX2l0ZW0sICNzb3J0YWJsZV9maWVsZGRlZiIpLmZpbmQoInRib2R5LmNvbnRlbnQiKS5kaXNhYmxlU2VsZWN0aW9uKCk7Cn0KCgpmdW5jdGlvbiBpbml0U2VsZWN0QWxsKCl7CglqUXVlcnkoJyNjaGVja19hbGxfaXRlbSwgI2NoZWNrX2FsbF9jYXRlZ29yeSwgI2NoZWNrX2FsbF9maWVsZGRlZicpLmNsaWNrKGZ1bmN0aW9uICgpIHsKCQoJCSQodGhpcykuY2xvc2VzdCgndGFibGUnKS5maW5kKCJ0Ym9keSB0ciIpLmVhY2goZnVuY3Rpb24oKSB7CgkJCgkJCSRjaGVja2JveCA9ICQodGhpcykuZmluZCgnOmNoZWNrYm94Jyk7CgkJCSRjaGVja2JveC5wcm9wKCdjaGVja2VkJywgISRjaGVja2JveFswXS5jaGVja2VkKTsJCQkKCQl9KTsKIAl9KTsKfQoKZnVuY3Rpb24gaW5pdFNsdWcoKSB7CgoJaWYgKGpRdWVyeSgnI20xX2FsaWFzJykudmFsKCkgPT0gJycpIHsKCQlqUXVlcnkoJyNtMV9hbGlhcycpLmFkZENsYXNzKCdzbHVnJyk7CgkJLy8gc2x1ZyBhbGlhcwoJCWpRdWVyeSgiI20xX3RpdGxlIikuc2x1Zyh7CgkJCXNsdWc6J3NsdWcnLCAvLyBjbGFzcyBvZiBpbnB1dCAvIHNwYW4gdGhhdCBjb250YWlucyB0aGUgZ2VuZXJhdGVkIHNsdWcKCQkJaGlkZTogZmFsc2UgLy8gaGlkZSB0aGUgdGV4dCBpbnB1dCwgdHJ1ZSBieSBkZWZhdWx0CgkJfSk7Cgl9Cn0KCmZ1bmN0aW9uIGluaXRRdWlja1NlYXJjaCgpIHsKCgkvLyBUYWJsZSBxdWlja3NlYXJjaAoJalF1ZXJ5KCJpbnB1dCNpdGVtX3NlYXJjaCIpLnF1aWNrc2VhcmNoKCJ0YWJsZSNzb3J0YWJsZV9pdGVtIHRib2R5IHRyIiwgewoJCXN0cmlwZVJvd3M6IFsncm93MScsICdyb3cyJ10KCX0pOwoJLy8gcHJldmVudCBxdWlja3NlYXJjaCBpbnB1dCBmcm9tIHN1Ym1pdHRpbmcKCWpRdWVyeSgiI3F1aWNrc2VhcmNoX2Zvcm0iKS5zdWJtaXQoZnVuY3Rpb24oZXZlbnQpIHsKCgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCX0pOwp9CgpmdW5jdGlvbiBpbml0Q29sb3JCb3goKSB7CgoJaWYoKGpRdWVyeSgnLmNib3gnKS5sZW5ndGggIT09IDApICYmICh0eXBlb2YgJC5jb2xvcmJveCA9PSAnZnVuY3Rpb24nKSkgewoJCWpRdWVyeSgnLmNib3gnKS5jb2xvcmJveCh7CgkJCXNjYWxlUGhvdG9zOiB0cnVlLAoJCQltYXhXaWR0aDogODAwLAoJCQltYXhIZWlnaHQ6IDYwMCwKCQkJcmVsOiAnZ3JvdXAnLAoJCQlvcGFjaXR5OiAwLjIKCQl9KTsKCX0KfQoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogSlFVRVJZIElOSVQgKFJ1biBpbml0aWFsIHN0dWZmIGhlcmUpCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCmpRdWVyeShmdW5jdGlvbigkKXsKCglqUXVlcnkoIi5wYWdlbWNvbnRhaW5lciIpLmVhY2goZnVuY3Rpb24oKXsKCQl2YXIgYyA9IGpRdWVyeSh0aGlzKTsKCQl3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpeyBjLmhpZGUoKTsgfSwgOTAwMCk7Cgl9KTsKCglpbml0U29ydGFibGUoKTsKCWluaXRTZWxlY3RBbGwoKTsKCWluaXREYXRlcGlja2VyKCk7Cglpbml0VGFibGVTb3J0ZXIoKTsKCWluaXRTbHVnKCk7Cglpbml0UXVpY2tTZWFyY2goKTsKCWluaXRDb2xvckJveCgpOwkKfSk7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiBBSkFYIExPQURJTkcgKE9ubHkgbG9hZCBhamF4IGZ1bmN0aW9ucyBpbiBoZXJlKQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgovKioKKiBBY2Nlc3MgbW9kdWxlIG9iamVjdCBtZXRob2RzIHdpdGggdGhpcwoqIEAgdXNyX2Z1bmN0aW9uOiBNZXRob2Qgb2YgbW9kdWxlIG9iamVjdAoqIEAgcGFyYW1zOiBQYXJhbXMgdG8gbW9kdWxlIG9iamVjdAoqLwpmdW5jdGlvbiBhamF4X2Z1bmN0aW9uKHVzcl9mdW5jdGlvbiwgcGFyYW1zKXsKCglyZXR1cm4galF1ZXJ5LnBvc3QoQ01TX0FETUlOX0RJUisiL21vZHVsZWludGVyZmFjZS5waHAiK0NNU19VU0VSX0tFWSwgeyAKCQkJbWFjdDogTU9EVUxFX05BTUUrJyxtMV8sYWpheCwwJywKCQkJbTFfdXNyX2Z1bmN0aW9uOiB1c3JfZnVuY3Rpb24sCgkJCXNob3d0ZW1wbGF0ZTogZmFsc2UsCgkJCW0xX3BhcmFtczogcGFyYW1zCgl9KTsKfQoKalF1ZXJ5KGZ1bmN0aW9uKCQpIHsKCgkvKioKCSogVFlQRSBTRUxFQ1QKCSovCglqUXVlcnkoJyNtMV90eXBlJykuY2hhbmdlKGZ1bmN0aW9uIChldmVudCkgewoKCQl2YXIgdXJsID0gJCh0aGlzKS5jbG9zZXN0KCJmb3JtIikuYXR0cigiYWN0aW9uIik7CgkJdmFyIHBhcmFtcyA9ICAkKHRoaXMpLmNsb3Nlc3QoImZvcm0iKS5zZXJpYWxpemUoKTsKCQlwYXJhbXMgKz0gIiZzaG93dGVtcGxhdGU9ZmFsc2UiOwoJCXZhciBzZWxlY3RvciA9ICcubGlzdGl0Ml90eXBlb3B0aW9ucyc7CgkJCQoJCSQuYWpheCh7CgkJCXR5cGU6ICJQT1NUIiwKCQkJdXJsOiB1cmwsCgkJCWFzeW5jOiB0cnVlLAoJCQlkYXRhVHlwZTogImh0bWwiLAoJCQlkYXRhOiBwYXJhbXMsCgkJCWJlZm9yZVNlbmQ6IGZ1bmN0aW9uKCkgewoJCQkKCQkJCSQoc2VsZWN0b3IpLmVtcHR5KCkuYXBwZW5kKCc8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPjxkaXYgY2xhc3M9InBhZ2VpbnB1dCI+PGRpdiBjbGFzcz0iYWpheC1sb2FkaW5nIGFqYXgtbG9hZGVyLXR5cGUtd2lkZSI+PC9kaXY+PC9kaXY+PC9kaXY+Jyk7CgkJCX0sCgkJCWVycm9yOiBmdW5jdGlvbihqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pIHsKCQkJCQoJCQkJYWxlcnQoIlNvcnJ5LiBUaGVyZSB3YXMgYW4gTGlzdEl0MiBBSkFYIGVycm9yOiAiICsgdGV4dFN0YXR1cyk7CgkJCX0sCgkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpIHsKCQkJCQoJCQkJdmFyIG15X2RhdGEgPSAkKHNlbGVjdG9yLCBkYXRhKS5odG1sKCk7CgkJCQkkKHNlbGVjdG9yKS5odG1sKG15X2RhdGEpOwoJCQl9CQoJCQkKCQl9KTsKCX0pOwoJCgkvKioKCSogTUFTUyBBQ1RJT04gSVRFTVMKCSovCglqUXVlcnkoJyNsaXN0aXQyX2l0ZW1fbWFzc19hY3Rpb24nKS5jaGFuZ2UoZnVuY3Rpb24gKGV2ZW50KSB7CgoJCWlmKGNvbmZpcm0oJ0FyZSB5b3VyIHN1cmU/JykpIHsKCQoJCQl2YXIgaXRlbXMgPSBqUXVlcnkoIi5pdGVtLW1hc3MtYWN0aW9uIDppbnB1dCIpLnNlcmlhbGl6ZUFycmF5KCk7CgkJCQoJCQlzd2l0Y2goJCh0aGlzKS52YWwoKSkKCQkJewoJCQkJY2FzZSAnZGVsZXRlJzoKCQkJCQoJCQkJCWpRdWVyeS5lYWNoKGl0ZW1zLCBmdW5jdGlvbihpLCBmaWVsZCl7CgkJCQkJCgkJCQkJCWFqYXhfZGVsZXRlKCQoIiNpdGVtXyIgKyBmaWVsZC52YWx1ZSkuZmluZCgiLmFqYXgtZGVsZXRlIikpOwoJCQkJCX0pOwoKCQkJCQlicmVhazsKCQkJCgkJCQljYXNlICdhcHByb3ZlJzoKCQkJCQoJCQkJCWpRdWVyeS5lYWNoKGl0ZW1zLCBmdW5jdGlvbihpLCBmaWVsZCl7CgkJCQkJCgkJCQkJCWFqYXhfdG9nZ2xlKCQoIiNpdGVtXyIgKyBmaWVsZC52YWx1ZSkuZmluZCgiLmFwcHJvdmUtaXRlbSAuYWpheC10b2dnbGUiKSk7CgkJCQkJfSk7CgkJCQkJCgkJCQkJYnJlYWs7CgkJCX0KCQkKCQl9IAoJCQoJCSQodGhpcykudmFsKDApOwoJCQoJfSk7CQoKCS8qKgoJKiBNQVNTIEFDVElPTiBDQVRFR09SSUVTCgkqLwoJalF1ZXJ5KCcjbGlzdGl0Ml9jYXRlZ29yeV9tYXNzX2FjdGlvbicpLmNoYW5nZShmdW5jdGlvbiAoZXZlbnQpIHsKCgkJaWYoY29uZmlybSgnQXJlIHlvdXIgc3VyZT8nKSkgewoJCgkJCXZhciBpdGVtcyA9IGpRdWVyeSgiLmNhdGVnb3J5LW1hc3MtYWN0aW9uIDppbnB1dCIpLnNlcmlhbGl6ZUFycmF5KCk7CgkJCQoJCQlzd2l0Y2goJCh0aGlzKS52YWwoKSkKCQkJewoJCQkJY2FzZSAnZGVsZXRlJzoKCQkJCQoJCQkJCWpRdWVyeS5lYWNoKGl0ZW1zLCBmdW5jdGlvbihpLCBmaWVsZCl7CgkJCQkJCgkJCQkJCWFqYXhfZGVsZXRlKCQoIiNjYXRlZ29yeV8iICsgZmllbGQudmFsdWUpLmZpbmQoIi5hamF4LWRlbGV0ZSIpKTsKCQkJCQl9KTsKCgkJCQkJYnJlYWs7CgkJCQoJCQkJY2FzZSAnYXBwcm92ZSc6CgkJCQkKCQkJCQlqUXVlcnkuZWFjaChpdGVtcywgZnVuY3Rpb24oaSwgZmllbGQpewoJCQkJCQoJCQkJCQlhamF4X3RvZ2dsZSgkKCIjY2F0ZWdvcnlfIiArIGZpZWxkLnZhbHVlKS5maW5kKCIuYXBwcm92ZS1jYXRlZ29yeSAuYWpheC10b2dnbGUiKSk7CgkJCQkJfSk7CgkJCQkJCgkJCQkJYnJlYWs7CgkJCX0KCQkKCQl9IAoJCQoJCSQodGhpcykudmFsKDApOwoJCQoJfSk7CQoJCgkvKioKCSogTUFTUyBBQ1RJT04gRklFTERERUZTCgkqLwoJalF1ZXJ5KCcjbGlzdGl0Ml9maWVsZGRlZl9tYXNzX2FjdGlvbicpLmNoYW5nZShmdW5jdGlvbiAoZXZlbnQpIHsKCgkJaWYoY29uZmlybSgnQXJlIHlvdXIgc3VyZT8nKSkgewoJCgkJCXZhciBpdGVtcyA9IGpRdWVyeSgiLmZpZWxkZGVmLW1hc3MtYWN0aW9uIDppbnB1dCIpLnNlcmlhbGl6ZUFycmF5KCk7CgkJCQoJCQlzd2l0Y2goJCh0aGlzKS52YWwoKSkKCQkJewoJCQkJY2FzZSAnZGVsZXRlJzoKCQkJCQoJCQkJCWpRdWVyeS5lYWNoKGl0ZW1zLCBmdW5jdGlvbihpLCBmaWVsZCl7CgkJCQkJCgkJCQkJCWFqYXhfZGVsZXRlKCQoIiNmaWVsZGRlZl8iICsgZmllbGQudmFsdWUpLmZpbmQoIi5hamF4LWRlbGV0ZSIpKTsKCQkJCQl9KTsKCgkJCQkJYnJlYWs7CgkJCQoJCQkJY2FzZSAncmVxdWlyZSc6CgkJCQkKCQkJCQlqUXVlcnkuZWFjaChpdGVtcywgZnVuY3Rpb24oaSwgZmllbGQpewoJCQkJCQoJCQkJCQlhamF4X3RvZ2dsZSgkKCIjZmllbGRkZWZfIiArIGZpZWxkLnZhbHVlKS5maW5kKCIuYWpheC10b2dnbGUiKSk7CgkJCQkJfSk7CgkJCQkJCgkJCQkJYnJlYWs7CgkJCX0KCQkKCQl9IAoJCQoJCSQodGhpcykudmFsKDApOwoJCQoJfSk7CQkKCQp9KTs=]]></data>
	</file>
	<file>
	  <filename>/framework/method.installGlobals.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGF0YWJhc2UgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCi8vIGNyZWF0ZSBpdGVtIHRhYmxlCiRmaWVsZHMgPSAnCiAgICBpdGVtX2lkIEkgS0VZIEFVVE8sCgljYXRlZ29yeV9pZCBJLAogICAgdGl0bGUgQygyNTUpLAoJYWxpYXMgQygyNTUpLAogICAgcG9zaXRpb24gSSwKICAgIGFjdGl2ZSBJNCwKICAgIGNyZWF0ZV90aW1lIERULAoJbW9kaWZpZWRfdGltZSBEVCwKCXN0YXJ0X3RpbWUgRCwKCWVuZF90aW1lIEQsCglrZXkxIEMoNTApLAoJa2V5MiBDKDUwKSwKCWtleTMgQyg1MCkKJzsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBjcmVhdGUgY2F0ZWdvcnkgdGFibGUKJGZpZWxkcyA9ICcKCWNhdGVnb3J5X2lkIEkgS0VZIEFVVE8sCgljYXRlZ29yeV9uYW1lIEMoMjU1KSwKICAgIGNhdGVnb3J5X2FsaWFzIEMoMjU1KSwKCWNhdGVnb3J5X2Rlc2NyaXB0aW9uIFgsCiAgICBwYXJlbnRfaWQgSSwKICAgIHBvc2l0aW9uIEksCiAgICBoaWVyYXJjaHkgQygyNTUpLAoJaGllcmFyY2h5X3BhdGggQygyNTUpLAoJaWRfaGllcmFyY2h5IEMoMjU1KSwKCWFjdGl2ZSBJNCwKCWNyZWF0ZV9kYXRlIERULAoJbW9kaWZpZWRfZGF0ZSBEVCwKCWtleTEgQyg1MCksCglrZXkyIEMoNTApLAoJa2V5MyBDKDUwKQonOwoKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBjcmVhdGUgaXRlbV9jYXRlZ29yaWVzCiRmaWVsZHMgPSAnCiAgICBpdGVtX2lkIEkgS0VZIE5PVCBudWxsLAogICAgY2F0ZWdvcnlfaWQgSSBLRVkgTk9UIG51bGwKJzsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW1fY2F0ZWdvcmllcycsICRmaWVsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCi8vIGNyZWF0ZSBmaWVsZGRlZiB0YWJsZQokZmllbGRzID0gJwogICAgZmllbGRkZWZfaWQgSSBLRVkgQVVUTywKICAgIG5hbWUgQygyNTUpLAogICAgYWxpYXMgQygyNTUpLAogICAgaGVscCBDKDI1NSksCiAgICB0eXBlIEMoNTApLAogICAgcG9zaXRpb24gSSwKICAgIHJlcXVpcmVkIEksCglleHRyYSBYCic7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZicsICRmaWVsZHMsICR0YWJvcHRhcnJheSk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCi8vIGNyZWF0ZSBmaWVsZGRlZiBvcHRpb25zIHRhYmxlCiRmaWVsZHMgPSAnCiAgICBmaWVsZGRlZl9pZCBJIEtFWSwKICAgIG5hbWUgQygyNTUpIEtFWSwKICAgIHZhbHVlIFgKJzsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmX29wdHMnLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBjcmVhdGUgZmllbGR2YWwgdGFibGUKJGZpZWxkcyA9ICcKICAgIGl0ZW1faWQgSSBLRVkgTk9UIG51bGwsCiAgICBmaWVsZGRlZl9pZCBJIEtFWSBOT1QgbnVsbCwKICAgIHZhbHVlX2luZGV4IEkgS0VZIE5PVCBudWxsLAogICAgdmFsdWUgWCwKCWRhdGEgWAonOwoKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGR2YWwnLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBpbnNlcnQgY2F0ZWdvcnkgZGF0YQokcXVlcnkgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgCgkJKGNhdGVnb3J5X25hbWUsIGNhdGVnb3J5X2FsaWFzLCBwYXJlbnRfaWQsIHBvc2l0aW9uLCBhY3RpdmUsIGNyZWF0ZV9kYXRlLCBtb2RpZmllZF9kYXRlKSAKCQlWQUxVRVMoPywgPywgPywgPywgPywgTk9XKCksIE5PVygpKSc7CgkJCiRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgnR2VuZXJhbCcsICdnZW5lcmFsJywgLTEsIDEsIDEpKTsKTGlzdEl0MkNhdGVnb3J5T3BlcmF0aW9uczo6VXBkYXRlSGllcmFyY2h5UG9zaXRpb25zKCR0aGlzKTsKCmlmKCEkcmVzdWx0KQoJZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUZW1wbGF0ZXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCQovLyBTdW1tYXJ5IHRlbXBsYXRlcwokZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX3N1bW1hcnlfZGVmYXVsdC50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzdW1tYXJ5X2RlZmF1bHQnLCAkdGVtcGxhdGUpOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X3N1bW1hcnlfdGVtcGxhdGUnLCAnZGVmYXVsdCcpOwp9CgokZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX3N1bW1hcnlfY2F0ZWdvcml6ZWQudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeV9jYXRlZ29yaXplZCcsICR0ZW1wbGF0ZSk7Cn0KCiRmbiA9IGNtc19qb2luX3BhdGgoTElTVElUMl9URU1QTEFURV9QQVRILCAnZmVfc3VtbWFyeV9hY2NvcmRpb24udHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnc3VtbWFyeV9hY2NvcmRpb24nLCAkdGVtcGxhdGUpOwp9CgokZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX3N1bW1hcnlfc2VhcmNocmVzdWx0cy50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzdW1tYXJ5X3NlYXJjaHJlc3VsdHMnLCAkdGVtcGxhdGUpOwp9CgovLyBEZXRhaWwgdGVtcGxhdGVzCiRmbiA9IGNtc19qb2luX3BhdGgoTElTVElUMl9URU1QTEFURV9QQVRILCAnZmVfZGV0YWlsX2RlZmF1bHQudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZGV0YWlsX2RlZmF1bHQnLCAkdGVtcGxhdGUpOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2RldGFpbF90ZW1wbGF0ZScsICdkZWZhdWx0Jyk7Cn0KCi8vIFNlYXJjaCB0ZW1wbGF0ZXMKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9zZWFyY2hfZGVmYXVsdC50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzZWFyY2hfZGVmYXVsdCcsICR0ZW1wbGF0ZSk7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfc2VhcmNoX3RlbXBsYXRlJywgJ2RlZmF1bHQnKTsKfQoKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9zZWFyY2hfZmlsdGVyLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ3NlYXJjaF9maWx0ZXInLCAkdGVtcGxhdGUpOwp9CgokZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX3NlYXJjaF9tdWx0aXNlbGVjdC50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdzZWFyY2hfbXVsdGlzZWxlY3QnLCAkdGVtcGxhdGUpOwp9CgovLyBDYXRlZ29yeSB0ZW1wbGF0ZXMKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9jYXRlZ29yeV9kZWZhdWx0LnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2NhdGVnb3J5X2RlZmF1bHQnLCAkdGVtcGxhdGUpOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2NhdGVnb3J5X3RlbXBsYXRlJywgJ2RlZmF1bHQnKTsKfQoKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9jYXRlZ29yeV9oaWVyYXJjaHkudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnY2F0ZWdvcnlfaGllcmFyY2h5JywgJHRlbXBsYXRlKTsKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByZWZlcmVuY2VzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInLCAnQVNDJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhZG1pbnNlY3Rpb24nLCAnY29udGVudCcpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndXJsX3ByZWZpeCcsIG11bmdlX3N0cmluZ190b191cmwoJHRoaXMtPkdldE5hbWUoKSwgdHJ1ZSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZnJpZW5kbHluYW1lJywgJHRoaXMtPkdldE5hbWUoKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX3Npbmd1bGFyJywgdXRmOF9lbmNvZGUoaHRtbF9lbnRpdHlfZGVjb2RlKCR0aGlzLT5Nb2RMYW5nKCdpdGVtJykpKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpdGVtX3BsdXJhbCcsIHV0ZjhfZW5jb2RlKGh0bWxfZW50aXR5X2RlY29kZSgkdGhpcy0+TW9kTGFuZygnaXRlbXMnKSkpKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2l0ZW1fdGl0bGUnLCB1dGY4X2VuY29kZShodG1sX2VudGl0eV9kZWNvZGUoJHRoaXMtPk1vZExhbmcoJ2l0ZW1fdGl0bGUnKSkpKTsKLy8kdGhpcy0+U2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfY2F0ZWdvcnknLCAnMScpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFBlcm1pc3Npb25zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnOiBNb2RpZnkgSXRlbXMnKTsKJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfY2F0ZWdvcnknLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnOiBNb2RpZnkgQ2F0ZWdvcmllcycpOwokdGhpcy0+Q3JlYXRlUGVybWlzc2lvbigkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX21vZGlmeV9vcHRpb24nLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnOiBNb2RpZnkgT3B0aW9ucycpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEV2ZW50cwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+Q3JlYXRlRXZlbnQoJ1ByZUl0ZW1TYXZlJyk7CiR0aGlzLT5DcmVhdGVFdmVudCgnUG9zdEl0ZW1TYXZlJyk7CgokdGhpcy0+Q3JlYXRlRXZlbnQoJ1ByZUl0ZW1EZWxldGUnKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCdQb3N0SXRlbURlbGV0ZScpOwoKJHRoaXMtPkNyZWF0ZUV2ZW50KCdQcmVJdGVtTG9hZCcpOwokdGhpcy0+Q3JlYXRlRXZlbnQoJ1Bvc3RJdGVtTG9hZCcpOwoKJHRoaXMtPkNyZWF0ZUV2ZW50KCdQcmVSZW5kZXJBY3Rpb24nKTsK]]></data>
	</file>
	<file>
	  <filename>/framework/method.uninstallGlobals.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGF0YWJhc2UgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZicpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWZfb3B0cycpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknKTsgLy8gdGhlIG9ubHkgZ29vZCBjYXQgaXMgYSBkZWFkIGNhdAokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbV9jYXRlZ29yaWVzJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCi8vIERFUFJFQ0FURUQKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX3RlbXBsYXRlJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGVtcGxhdGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgokdGhpcy0+RGVsZXRlVGVtcGxhdGUoKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmVmZXJlbmNlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFBlcm1pc3Npb25zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfbW9kaWZ5X2l0ZW0nKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfY2F0ZWdvcnknKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19tb2RpZnlfb3B0aW9uJyk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRXZlbnRzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiR0aGlzLT5SZW1vdmVFdmVudCgnUHJlSXRlbVNhdmUnKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCdQb3N0SXRlbVNhdmUnKTsKCiR0aGlzLT5SZW1vdmVFdmVudCgnUHJlSXRlbURlbGV0ZScpOwokdGhpcy0+UmVtb3ZlRXZlbnQoJ1Bvc3RJdGVtRGVsZXRlJyk7CgokdGhpcy0+UmVtb3ZlRXZlbnQoJ1ByZUl0ZW1Mb2FkJyk7CiR0aGlzLT5SZW1vdmVFdmVudCgnUG9zdEl0ZW1Mb2FkJyk7CgokdGhpcy0+UmVtb3ZlRXZlbnQoJ1ByZVJlbmRlckFjdGlvbicpOwoK]]></data>
	</file>
	<file>
	  <filename>/framework/method.upgradeGlobals.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIE5PVEU6IFN3aXRjaCB0byB1c2UgdmVyc2lvbl9jb21wYXJlKCkKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCmlmICghaXNfb2JqZWN0KGNtc21zKCkpKSBleGl0OwoKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoKc3dpdGNoICgkb2xkdmVyc2lvbikgewoJY2FzZSAnMS4wIEJldGEnIDoKCQkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfdGVtcGxhdGUnLCAndHlwZSBDKDI1NSknKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkJJGRiLT5FeGVjdXRlKCdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfdGVtcGxhdGUgU0VUIHR5cGUgPSAic3VtbWFyeSInKTsKCgkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX3RlbXBsYXRlIChuYW1lLCBjb250ZW50LCB0eXBlKSBWQUxVRVMoPywgPywgPyknOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCdkZWZhdWx0JywgJHRoaXMtPkdldFRlbXBsYXRlRnJvbUZpbGUoJ2ZlX2RldGFpbF9kZWZhdWx0JyksICdkZXRhaWwnKSk7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJ2RlYnVnJywgICR0aGlzLT5HZXRUZW1wbGF0ZUZyb21GaWxlKCdmZV9kZXRhaWxfZGVidWcnKSwgJ2RldGFpbCcpKTsKCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VybF9wcmVmaXgnLCBtdW5nZV9zdHJpbmdfdG9fdXJsKCR0aGlzLT5HZXROYW1lKCksIHRydWUpKTsKCgkJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nLCAnYWxpYXMgQygyNTUpJyk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJ1NFTEVDVCBpdGVtX2lkLCB0aXRsZSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nKTsKCQl3aGlsZSgkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgewoJCQkkYWxpYXMgPSBtdW5nZV9zdHJpbmdfdG9fdXJsKCRyb3dbJ3RpdGxlJ10sIHRydWUpOwoJCQkkZGItPkV4ZWN1dGUoJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIFNFVCBhbGlhcyA9ID8gV0hFUkUgaXRlbV9pZCA9ID8nLCBhcnJheSgkYWxpYXMsICRyb3dbJ2l0ZW1faWQnXSkpOwoJCX0KCgljYXNlICcxLjAnIDoKCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfdGVtcGxhdGUgKG5hbWUsIGNvbnRlbnQsIHR5cGUpIFZBTFVFUyg/LCA/LCA/KSc7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJ2FjY29yZGlvbicsICR0aGlzLT5HZXRUZW1wbGF0ZUZyb21GaWxlKCdmZV9zdW1tYXJ5X2FjY29yZGlvbicpLCAnc3VtbWFyeScpKTsKCgkJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nLCAnc3RhcnRfdGltZSBEJyk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2VuZF90aW1lIEQnKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgoJY2FzZSAnMS4wLjMnOgoJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2NyZWF0ZV90aW1lIERUJyk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdjYXRlZ29yeV9kZXNjcmlwdGlvbiBYJyk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdwYXJlbnRfaWQgSScpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAnaGllcmFyY2h5IEMoMjU1KScpOwoJCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQkkZGItPkV4ZWN1dGUoJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBTRVQgcGFyZW50X2lkID0gLTEnKTsKCQkKCQlMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zOjpVcGRhdGVIaWVyYXJjaHlQb3NpdGlvbnMoJHRoaXMpOwoJCQoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCdkZWZhdWx0JywgJHRoaXMtPkdldFRlbXBsYXRlRnJvbUZpbGUoJ2ZlX3NlYXJjaF9kZWZhdWx0JyksICdzZWFyY2gnKSk7CgkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJ3NlYXJjaHJlc3VsdHMnLCAkdGhpcy0+R2V0VGVtcGxhdGVGcm9tRmlsZSgnZmVfc3VtbWFyeV9zZWFyY2hyZXN1bHRzJyksICdzdW1tYXJ5JykpOwoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCdkZWZhdWx0JywgJHRoaXMtPkdldFRlbXBsYXRlRnJvbUZpbGUoJ2ZlX2ZpbHRlcl9kZWZhdWx0JyksICdmaWx0ZXInKSk7Cgp9CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCAnMS4yJykgPCAwICkgewoKCS8vIE1vZGlmeSBkYXRhYmFlCgkkZGItPkV4ZWN1dGUoJ0FMVEVSIFRBQkxFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmIE1PRElGWSBleHRyYSBURVhUJyk7CgkKCS8vIFNldCBwcmVmZXJlbmNlcwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NvcnRvcmRlcicsICdBU0MnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhZG1pbnNlY3Rpb24nLCAnY29udGVudCcpOwoKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdkZWZhdWx0X3N1bW1hcnlfdGVtcGxhdGUnLCAnZGVmYXVsdCcpOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ2RlZmF1bHRfZGV0YWlsX3RlbXBsYXRlJywgJ2RlZmF1bHQnKTsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdkZWZhdWx0X2ZpbHRlcl90ZW1wbGF0ZScsICdkZWZhdWx0Jyk7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnZGVmYXVsdF9zZWFyY2hfdGVtcGxhdGUnLCAnZGVmYXVsdCcpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2NhdGVnb3J5JywgJzEnKTsKCQoJLy8gVXBkYXRpbmcgZnJvbSBvbGQgdGVtcGxhdGUgdHlwZXMKCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAiX3RlbXBsYXRlIjsKCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQoJd2hpbGUoJGRiciAmJiAkcm93ID0gJGRici0+RmV0Y2hSb3coKSl7CgkKCQkkdGhpcy0+U2V0VGVtcGxhdGUoJHJvd1sndHlwZSddIC4gJ18nIC4gJHJvd1snbmFtZSddLCAkcm93Wydjb250ZW50J10pOwoJCWlmKCRyb3dbJ3RwbF9kZWZhdWx0J10pIHsKCQkKCQkJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0XycuJHJvd1sndHlwZSddLidfdGVtcGxhdGUnLCAkcm93WyduYW1lJ10pOwoJCX0KCX0KCQp9IC8vIGVuZCBvZiAxLjEgLT4gMS4yIHVwZ3JhZGUKCmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sICcxLjMnKSA8IDAgKSB7CgoJLy8gY3JlYXRlIGZpZWxkZGVmIG9wdGlvbnMgdGFibGUKCSRmaWVsZHMgPSAnCgkJZmllbGRkZWZfaWQgSSBLRVksCgkJbmFtZSBDKDI1NSkgS0VZLAoJCXZhbHVlIEMoMjU1KQoJJzsKCgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZGRlZl9vcHRzJywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQoJLy8gY3JlYXRlIGV2ZW50cwoJJHRoaXMtPkNyZWF0ZUV2ZW50KCdQcmVJdGVtU2F2ZScpOwoJJHRoaXMtPkNyZWF0ZUV2ZW50KCdQb3N0SXRlbVNhdmUnKTsKCgkkdGhpcy0+Q3JlYXRlRXZlbnQoJ1ByZUl0ZW1EZWxldGUnKTsKCSR0aGlzLT5DcmVhdGVFdmVudCgnUG9zdEl0ZW1EZWxldGUnKTsKCgkkdGhpcy0+Q3JlYXRlRXZlbnQoJ1ByZUl0ZW1Mb2FkJyk7CgkkdGhpcy0+Q3JlYXRlRXZlbnQoJ1Bvc3RJdGVtTG9hZCcpOwkKCQp9IC8vIGVuZCBvZiAxLjIuMiAtPiAxLjMgdXBncmFkZQoKaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzEuMy4yJykgPCAwICkgewoKCS8vIE1vZGlmeSBkYXRhYmFlCgkkZGItPkV4ZWN1dGUoJ0FMVEVSIFRBQkxFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkZGVmX29wdHMgTU9ESUZZIHZhbHVlIFRFWFQnKTsKCQoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkdmFsJywgJ2RhdGEgWCcpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwkKCQp9IC8vIGVuZCBvZiAxLjMgLT4gMS4zLjIgdXBncmFkZQoKaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzEuNC1iZXRhMScpIDwgMCApIHsKCgkvLyBDcmVhdGUgaXRlbV9jYXRlZ29yaWVzIHRhYmxlCgkkZmllbGRzID0gJwoJCWl0ZW1faWQgSSBLRVkgTk9UIG51bGwsCgkJY2F0ZWdvcnlfaWQgSSBLRVkgTk9UIG51bGwKCSc7CgoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbV9jYXRlZ29yaWVzJywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgkvLyBVcGRhdGUgY2F0ZWdvcnkgdGFibGUKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdoaWVyYXJjaHlfcGF0aCBDKDI1NSknKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5JywgJ2lkX2hpZXJhcmNoeSBDKDI1NSknKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAnYWN0aXZlIEk0Jyk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5JywgJ2NyZWF0ZV9kYXRlIERUJyk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5JywgJ21vZGlmaWVkX2RhdGUgRFQnKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsJCgkKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdrZXkxIEMoMjU1KScpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdrZXkyIEMoMjU1KScpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdrZXkzIEMoMjU1KScpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCS8vIFVwZGF0ZSBpdGVtIHRhYmxlCgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbScsICdtb2RpZmllZF90aW1lIERUJyk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQoJCQoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nLCAna2V5MSBDKDI1NSknKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgkkc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbScsICdrZXkyIEMoMjU1KScpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCSRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2tleTMgQygyNTUpJyk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQoKCS8vIFVwZGF0ZSBmaWVsZHZhbCB0YWJsZQoJJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkdmFsJywgJ3ZhbHVlX2luZGV4IEkgTk9UIG51bGwnKTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCQoJJGRiLT5FeGVjdXRlKCdBTFRFUiBUQUJMRSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCBEUk9QIFBSSU1BUlkgS0VZLCBBREQgUFJJTUFSWSBLRVkoaXRlbV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlX2luZGV4KScpOwkKCgkvLyBVcGRhdGUgdGVtcGxhdGVzCgkkZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX2NhdGVnb3J5X2RlZmF1bHQudHBsJyk7CglpZiggZmlsZV9leGlzdHMoICRmbiApICkgewoJCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJCSR0aGlzLT5TZXRUZW1wbGF0ZSgnY2F0ZWdvcnlfZGVmYXVsdCcsICR0ZW1wbGF0ZSk7CgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2NhdGVnb3J5X3RlbXBsYXRlJywgJ2RlZmF1bHQnKTsKCX0KCgkkZm4gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwgJ2ZlX2NhdGVnb3J5X2hpZXJhcmNoeS50cGwnKTsKCWlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CgkJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkJJHRoaXMtPlNldFRlbXBsYXRlKCdjYXRlZ29yeV9oaWVyYXJjaHknLCAkdGVtcGxhdGUpOwoJfQkKCgkvLyBVcGRhdGUgZXZlbnRzCgkkdGhpcy0+Q3JlYXRlRXZlbnQoJ1ByZVJlbmRlckFjdGlvbicpOwoJCn0gLy8gZW5kIG9mIDEuMy4yIC0+IDEuNC1iZXRhMSB1cGdyYWRlCgo=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/framework/templates/admin_csv_import.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0aXRlbSI+CgkJeyR0aXRsZX0KCTwvZGl2Pgo8L2Rpdj4KPCEtLSBlbmQgdGFiIC8vLS0+CjwhLS0gc3RhcnQgY29udGVudCAtLT4KPGRpdiBpZD0icGFnZV9jb250ZW50Ij4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9jIj4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9yZXN1bHQiPjwvZGl2PgoKCQl7JGJhY2tsaW5rfQoJCXskc3RhcnRmb3JtfQoKCQk8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgoJCQk8dGhlYWQ+CgkJCQk8dHIgY2xhc3M9InRvcCI+CgkJCQkJPHRoPnskbW9kLT5Nb2RMYW5nKCdpbXBvcnRfYWxpYXMnKX08L3RoPgoJCQkJCTx0aD57JG1vZC0+TW9kTGFuZygnZmlsZV9hbGlhcycpfTwvdGg+CgkJCQkJPHRoPntsYW5nKCdoZWxwJyl9PC90aD4KCQkJCQk8dGggY2xhc3M9InBhZ2VpY29uIj57JG1vZC0+TW9kTGFuZygncmVxdWlyZWQnKX08L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGNsYXNzPSJjb250ZW50IiB3aWR0aD0iMTAwJSI+CgkJe2ZvcmVhY2ggZnJvbT0kZGF0YWJhc2VfdmFsdWVzIGl0ZW09b2JqfQoJCQkJPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLHJvdzInfSI+CgkJCQkJPHRkPnskb2JqLT5hbGlhc308L3RkPgoJCQkJCTx0ZD57aHRtbF9vcHRpb25zIG5hbWU9ImAkYWN0aW9uaWRgaW1wb3J0X3ZhbHVlc1tgJG9iai0+YWxpYXNgXSIgb3B0aW9ucz0kZmlsZV92YWx1ZXN9PC90ZD4KCQkJCQk8dGQ+eyRvYmotPmhlbHB9PC90ZD4KCQkJCQk8dGQ+eyRvYmotPnJlcXVpcmVkX2ltYWdlfTwvdGQ+CgkJCQk8L3RyPgoJCXsvZm9yZWFjaH0JCQoJCQk8L3Rib2R5PgoJCTwvdGFibGU+CQkKCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQkJPGRpdiBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvZGl2PgoJCQk8ZGl2IGNsYXNzPSJwYWdlaW5wdXQiPnskcHJldmlvdXN9eyRkb19pbXBvcnR9eyRjYW5jZWx9PC9kaXY+CgkJPC9kaXY+CgoJCXskZW5kZm9ybX0KCTwvZGl2Pgo8L2Rpdj4KPCEtLSBlbmQgY29udGVudCAvLy0tPg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/admin_csv_import_export.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0aXRlbSI+CgkJeyR0aXRsZX0KCTwvZGl2Pgo8L2Rpdj4KPCEtLSBlbmQgdGFiIC8vLS0+CjwhLS0gc3RhcnQgY29udGVudCAtLT4KPGRpdiBpZD0icGFnZV9jb250ZW50Ij4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9jIj4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9yZXN1bHQiPjwvZGl2PgoKCQl7JGJhY2tsaW5rfQoJCXskc3RhcnRmb3JtfQoKCQl7aWYgaXNzZXQoJGlucHV0X2V4cG9ydHZhbHVlcyl9CgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQkJPGRpdiBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCd2YWx1ZXMnKX06PC9kaXY+CgkJCTxkaXYgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9leHBvcnR2YWx1ZXN9PC9kaXY+CgkJPC9kaXY+CgkJey9pZn0JCgoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJCTxkaXYgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnZmlsZScpfTo8L2Rpdj4KCQkJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZpbGV9PC9kaXY+CgkJPC9kaXY+CgkKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQk8ZGl2IGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ3NlcGFyYXRvcicpfTo8L2Rpdj4KCQkJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NlcGFyYXRvcn08L2Rpdj4KCQk8L2Rpdj4KCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQkJPGRpdiBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdlbmNsb3VzZXInKX06PC9kaXY+CgkJCTxkaXYgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbmNsb3VzZXJ9PC9kaXY+CgkJPC9kaXY+CgoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJCTxkaXYgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L2Rpdj4KCQkJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGNhbmNlbH08L2Rpdj4KCQk8L2Rpdj4KCgkJeyRlbmRmb3JtfQoJPC9kaXY+CjwvZGl2Pgo8IS0tIGVuZCBjb250ZW50IC8vLS0+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/admin_reordercategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2Z1bmN0aW9uIG5hbWU9dHJlZV9tYW5hZ2VyIGRlcHRoPTAgdHJlZT0wfQogIDx1bCBjbGFzcz0ic29ydGFibGVMaXN0e2lmICRkZXB0aCA9PSAwfSBzb3J0YWJsZXsvaWZ9Ij4KICB7Zm9yZWFjaCBmcm9tPSR0cmVlIGl0ZW09aXRlbX0KICAgIDxsaSBpZD0iY2F0X3skaXRlbS5jYXRlZ29yeV9pZH0iPgoJCTxkaXYgY2xhc3M9ImxhYmVsIj48c3Bhbj4mbmJzcDs8L3NwYW4+eyRpdGVtLmNhdGVnb3J5X25hbWV9PC9kaXY+CgkJe2lmIGlzc2V0KCRpdGVtLmNoaWxkcmVuKX0KCQkJe3RyZWVfbWFuYWdlciBkZXB0aD0kZGVwdGgrMSB0cmVlPSRpdGVtLmNoaWxkcmVufQoJCXsvaWZ9CiAgICA8L2xpPgogIHsvZm9yZWFjaH0KICA8L3VsPgp7L2Z1bmN0aW9ufQoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpmdW5jdGlvbiBwYXJzZVRyZWUodWwpewoKCXZhciB0YWdzID0gW107Cgl1bC5jaGlsZHJlbigibGkiKS5lYWNoKGZ1bmN0aW9uKCl7CgkKCQl2YXIgc3VidHJlZSA9CSQodGhpcykuY2hpbGRyZW4oInVsIik7CgkJaWYoc3VidHJlZS5zaXplKCkgPiAwKQoJCQl0YWdzLnB1c2goWyQodGhpcykuYXR0cigiaWQiKSwgcGFyc2VUcmVlKHN1YnRyZWUpXSk7CgkJZWxzZQoJCQl0YWdzLnB1c2goJCh0aGlzKS5hdHRyKCJpZCIpKTsKCX0pOwoJCglyZXR1cm4gdGFnczsKfQoKalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKXsKCglqUXVlcnkoJ3VsLnNvcnRhYmxlJykubmVzdGVkU29ydGFibGUoewoJCWRpc2FibGVOZXN0aW5nOiAnbm8tbmVzdCcsCgkJZm9yY2VQbGFjZWhvbGRlclNpemU6IHRydWUsCgkJaGFuZGxlOiAnZGl2JywKCQlpdGVtczogJ2xpJywKCQlvcGFjaXR5OiA2LAoJCXBsYWNlaG9sZGVyOiAncGxhY2Vob2xkZXInLAoJCXRhYlNpemU6IDM1LAoJCXRvbGVyYW5jZTogJ3BvaW50ZXInLAoJCWxpc3RUeXBlOiAndWwnLAoJCXRvbGVyYW5jZUVsZW1lbnQ6ICc+IGRpdicKCX0pOwoKCWpRdWVyeSgiI2xpc3RpdDJfb3JkZXJmb3JtIikuc3VibWl0KGZ1bmN0aW9uKCl7CgoJCXZhciB0cmVlID0gJC50b0pTT04ocGFyc2VUcmVlKCQoJ3VsLnNvcnRhYmxlJykpKTsKCQkkKCcjb3JkZXJkYXRhJykudmFsKHRyZWUpOwoJfSk7Cgp9KTsKPC9zY3JpcHQ+CjwhLS0gc3RhcnQgdGFiIC0tPgo8ZGl2IGlkPSJwYWdlX3RhYnMiPgoJPGRpdiBpZD0icmVvcmRlcl9jYXRlZ29yaWVzIj4KCQl7JG1vZC0+TW9kTGFuZygncmVvcmRlcl9jYXRlZ29yaWVzJyl9Cgk8L2Rpdj4KPC9kaXY+CjwhLS0gZW5kIHRhYiAvLy0tPgo8IS0tIHN0YXJ0IGNvbnRlbnQgLS0+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+IAoJPGRpdiBpZD0icmVvcmRlcl9jYXRlZ29yaWVzX2MiPiAKCgkJPGRpdiBpZD0ibGlzdGl0Ml9vcmRlcmZvcm0iPgoJCQl7JGZvcm1zdGFydH0KCgkJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfW9yZGVyZGF0YSIgdmFsdWU9IiIgaWQ9Im9yZGVyZGF0YSIgLz4KCgkJCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQkJICA8ZGl2IGNsYXNzPSJwYWdlaW5wdXQiPgoJCQkJCTxkaXYgY2xhc3M9InJlb3JkZXItcGFnZXMiPgoJCQkJCQl7dHJlZV9tYW5hZ2VyIHRyZWU9JHRyZWV9CgkJCQkJPC9kaXY+CgkJCQkgIDwvZGl2PgoJCQkJPGRpdj4KCgkJCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQkJCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJCQkJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fXskY2FuY2VsfTwvcD4KCQkJCTwvZGl2PgoJCQkJCgkJCXskZm9ybWVuZH0KCQk8L2Rpdj4KCgk8L2Rpdj4KPC9kaXY+CjwhLS0gZW5kIGNvbnRlbnQgLy8tLT4=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/categorytab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGNvdW50KCRpdGVtcykgPiAwfQo8dGFibGUgaWQ9ImNhdGVnb3J5IiBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CiAgICA8dGhlYWQ+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGg+eyRtb2QtPk1vZExhbmcoJ2NhdGVnb3J5Jyl9PC90aD4KICAgICAgICAgICAgPHRoPnskbW9kLT5Nb2RMYW5nKCdhbGlhcycpfTwvdGg+CiAgICAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAgICAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAgICAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CiAgICAgICAgICAgIDx0aCB0aXRsZT0ieyRtb2QtPk1vZExhbmcoJ3NlbGVjdF9hbGwnKX0iIGNsYXNzPSJwYWdlaWNvbiBuby1zb3J0Ij48aW5wdXQgaWQ9ImNoZWNrX2FsbF9jYXRlZ29yeSIgdHlwZT0iY2hlY2tib3giIC8+PC90aD4KICAgICAgICA8L3RyPgogICAgPC90aGVhZD4KICAgIDx0Ym9keSBjbGFzcz0iY29udGVudCIgd2lkdGg9IjEwMCUiPgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQogICAge2N5Y2xlIHZhbHVlcz0icm93MSxyb3cyIiBhc3NpZ249J3Jvd2NsYXNzJ30KICAgICAgICA8dHIgaWQ9ImNhdGVnb3J5X3skZW50cnktPmNhdGVnb3J5X2lkfSIgY2xhc3M9Inskcm93Y2xhc3N9Ij4KICAgICAgICAgICAgPHRkPntyZXBlYXQgc3RyaW5nPSc+Jm5ic3A7JyB0aW1lcz0kZW50cnktPmRlcHRofXskZW50cnktPm5hbWV9PC90ZD4KICAgICAgICAgICAgPHRkPnskZW50cnktPmFsaWFzfTwvdGQ+CiAgICAgICAgICAgIDx0ZCBjbGFzcz0iaW5pdC1hamF4LXRvZ2dsZSBhcHByb3ZlLWNhdGVnb3J5Ij57JGVudHJ5LT5hcHByb3ZlfTwvdGQ+CiAgICAgICAgICAgIDx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgogICAgICAgICAgICA8dGQgY2xhc3M9ImluaXQtYWpheC1kZWxldGUiPnskZW50cnktPmRlbGV0ZX08L3RkPgogICAgICAgICAgICA8dGQgY2xhc3M9ImNhdGVnb3J5LW1hc3MtYWN0aW9uIj57JGVudHJ5LT5zZWxlY3R9PC90ZD4KICAgICAgICA8L3RyPgp7L2ZvcmVhY2h9CiAgICA8L3Rib2R5Pgo8L3RhYmxlPgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyIgc3R5bGU9ImZsb2F0OnJpZ2h0OyI+CjxzZWxlY3QgaWQ9Imxpc3RpdDJfY2F0ZWdvcnlfbWFzc19hY3Rpb24iPgoJPG9wdGlvbiB2YWx1ZT0iIj57JG1vZC0+TW9kTGFuZygnc2VsZWN0X29uZScpfTwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iZGVsZXRlIj5EZWxldGU8L29wdGlvbj4KCTxvcHRpb24gdmFsdWU9ImFwcHJvdmUiPlRvZ2dsZSBhY3RpdmU8L29wdGlvbj4KPC9zZWxlY3Q+CjwvZGl2Pgp7L2lmfQoKPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua317aWYgaXNzZXQoJHJlb3JkZXJsaW5rKX0mbmJzcDt7JHJlb3JkZXJsaW5rfXsvaWZ9PC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/editcategory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0Y2F0ZWdvcnkiPgoJCXskdGl0bGV9Cgk8L2Rpdj4KPC9kaXY+CjwhLS0gZW5kIHRhYiAvLy0tPgo8IS0tIHN0YXJ0IGNvbnRlbnQgLS0+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+IAoJPGRpdiBpZD0iZWRpdGNhdGVnb3J5X2MiPiAKCXskYmFja2xpbmt9Cgl7JHN0YXJ0Zm9ybX0KCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyRtb2QtPk1vZExhbmcoJ2NhdGVnb3J5X25hbWUnKX06PC9wPgogICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NhdGVnb3J5fTwvcD4KCQk8L2Rpdj4KCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdhbGlhcycpfTo8L3A+CiAgICAJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxpYXN9PC9wPgoJCTwvZGl2PgoJCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57bGFuZygncGFyZW50Jyl9OjwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wYXJlbnR9PC9wPgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdjYXRlZ29yeV9kZXNjcmlwdGlvbicpfTo8L3A+CiAgICAJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY2F0ZWdvcnlfZGVzY3JpcHRpb259PC9wPgoJCTwvZGl2PgoJCQoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ2FjdGl2ZScpfTo8L3A+CiAgICAJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWN0aXZlfTwvcD4KCQk8L2Rpdj4JCQoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KCQkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9eyRjYW5jZWx9eyRhcHBseX17JHNhdmVfY3JlYXRlfTwvcD4KCQk8L2Rpdj4KCQoJeyRlbmRmb3JtfQoJPC9kaXY+CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/editfielddef.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0ZmllbGRkZWYiPgoJCXskdGl0bGV9Cgk8L2Rpdj4KCXtpZiBpc3NldCgkaW5wdXRfZXh0cmEpfQoJPGRpdiBpZD0iZmllbGRkZWZleHRyYSI+CgkJeyRtb2QtPk1vZExhbmcoJ2V4dHJhJyl9Cgk8L2Rpdj4JCgl7L2lmfQo8L2Rpdj4KPCEtLSBlbmQgdGFiIC8vLS0+CjwhLS0gc3RhcnQgY29udGVudCAtLT4KeyRzdGFydGZvcm19CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+IAoKCXskYmFja2xpbmt9Cgk8ZGl2IGlkPSJlZGl0ZmllbGRkZWZfYyI+IAoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdmaWVsZGRlZl90eXBlJyl9OjwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dHR5cGV9PC9wPgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQk8cCBjbGFzcz0icGFnZXRleHQiPip7JG1vZC0+TW9kTGFuZygnZmllbGRkZWZfbmFtZScpfTo8L3A+CgkJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRuYW1lfTwvcD4KCQk8L2Rpdj4KCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdhbGlhcycpfTo8L3A+CgkJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxpYXN9PC9wPgoJCTwvZGl2PgoJCQoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ2ZpZWxkZGVmX2hlbHAnKX06PC9wPgoJCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0aGVscH08L3A+CgkJPC9kaXY+CgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnZmllbGRkZWZfcmVxdWlyZWQnKX06PC9wPgoJCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlcXVpcmVkfTwvcD4KCQk8L2Rpdj4KCgkJPGRpdiBjbGFzcz0ibGlzdGl0Ml90eXBlb3B0aW9ucyI+CgkJe2lmIGlzc2V0KCRmaWVsZGRlZil9CQoJCQl7JGZpZWxkZGVmLT5SZW5kZXJGb3JFZGl0KCRhY3Rpb25pZCwgJHJldHVybmlkKX0KCQl7L2lmfQoJCTwvZGl2PgogICAgICAgICAgCgk8L2Rpdj4Ke2lmIGlzc2V0KCRpbnB1dF9leHRyYSl9Cgk8ZGl2IGlkPSJmaWVsZGRlZmV4dHJhX2MiPiAKCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnZXh0cmEnKX06PC9wPgogICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2V4dHJhfTwvcD4KCQk8L2Rpdj4KCQkKCTwvZGl2Pgp7L2lmfQkKCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+e2lmIGlzc2V0KCRmaWVsZGRlZl9pZCl9eyRmaWVsZGRlZl9pZH17L2lmfXskc3VibWl0fXskY2FuY2VsfXskYXBwbHl9PC9wPgoJPC9kaXY+CQkKPC9kaXY+CnskZW5kZm9ybX0=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/edititem.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0aXRlbSI+CgkJeyR0aXRsZX0KCTwvZGl2Pgo8L2Rpdj4KPCEtLSBlbmQgdGFiIC8vLS0+CjwhLS0gc3RhcnQgY29udGVudCAtLT4KPGRpdiBpZD0icGFnZV9jb250ZW50Ij4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9jIj4gCgk8ZGl2IGlkPSJlZGl0aXRlbV9yZXN1bHQiPjwvZGl2PgoKCQl7JGJhY2tsaW5rfQoJCXskc3RhcnRmb3JtfQoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGNhbmNlbH17JGFwcGx5fXskc2F2ZV9jcmVhdGV9PC9wPgoJCTwvZGl2PgoKCQl7aWYgJG1vZC0+R2V0UHJlZmVyZW5jZSgnZGlzcGxheV9jcmVhdGVfZGF0ZScsIDApID09IDF9CgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIAkJPHAgY2xhc3M9J3BhZ2V0ZXh0Jz57JG1vZC0+TW9kTGFuZygnY3JlYXRlX3RpbWUnLCAnJyl9OiA8ZW0gc3R5bGU9J2ZvbnQtd2VpZ2h0OiBub3JtYWw7Jz57JGl0ZW1PYmplY3QtPmNyZWF0ZV90aW1lfTwvZW0+PC9wPgoJCTwvZGl2PgoJCXsvaWZ9CgoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkdldFByZWZlcmVuY2UoJ2l0ZW1fdGl0bGUnLCAnJyl9Kjo8L3A+CiAgICAJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdGl0bGV9PC9wPgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdhbGlhcycpfTo8L3A+eyRhbGlhc3xkZWZhdWx0OicnfQogICAgCQkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGlhc308L3A+CgkJPC9kaXY+CgoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ2NhdGVnb3J5Jyl9Kjo8L3A+CiAgICAJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY2F0ZWdvcnl9PC9wPgoJCTwvZGl2PgoKCQl7aWYgY291bnQoJGl0ZW1PYmplY3QpfQoJCQl7Zm9yZWFjaCBmcm9tPSRpdGVtT2JqZWN0LT5maWVsZGRlZnMgaXRlbT0nZmllbGRkZWYnfQoJCQkJeyRmaWVsZGRlZi0+UmVuZGVySW5wdXQoJGFjdGlvbmlkLCAkcmV0dXJuaWQpfQoJCQl7L2ZvcmVhY2h9CgkJey9pZn0KCgkJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIAkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnYWN0aXZlJyl9OjwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hY3RpdmV9PC9wPgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCd0aW1lX2NvbnRyb2wnKX06PC9wPgogICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RpbWVfY29udHJvbH08L3A+CgkJPC9kaXY+CgoJCTxkaXYgaWQ9ImV4cGlyeWluZm8ie2lmICR1c2VfdGltZV9jb250cm9sICE9IHRydWV9IHN0eWxlPSJkaXNwbGF5Om5vbmU7InsvaWZ9PgoJCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnc3RhcnRfdGltZScpfTo8L3A+CgkJCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N0YXJ0X3RpbWV9PC9wPgoJCQk8L2Rpdj4KCQoJCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCQkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnZW5kX3RpbWUnKX06PC9wPgoJCQkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbmRfdGltZX08L3A+CgkJCTwvZGl2PgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9eyRjYW5jZWx9eyRhcHBseX17JHNhdmVfY3JlYXRlfTwvcD4KCQk8L2Rpdj4KCgl7JGVuZGZvcm19Cgk8L2Rpdj4KPC9kaXY+CjwhLS0gZW5kIGNvbnRlbnQgLy8tLT4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPntsaXRlcmFsfQpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewogICAgalF1ZXJ5KCdbbmFtZT1tMV9hcHBseV0nKS5saXZlKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0eXBlb2YgdGlueU1DRSAhPSAndW5kZWZpbmVkJykgewogICAgICAgICAgICB0aW55TUNFLnRyaWdnZXJTYXZlKCk7CiAgICAgICAgfQogICAgICAgIHZhciBkYXRhID0galF1ZXJ5KCdmb3JtJykuZmluZCgnaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pLCBzZWxlY3QsIHRleHRhcmVhJykuc2VyaWFsaXplQXJyYXkoKTsKICAgICAgICBkYXRhLnB1c2goewogICAgICAgICAgICAnbmFtZSc6ICdtMV9hamF4JywKICAgICAgICAgICAgJ3ZhbHVlJzogMQogICAgICAgIH0pOwogICAgICAgIGRhdGEucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogJ20xX2FwcGx5JywKICAgICAgICAgICAgJ3ZhbHVlJzogMQogICAgICAgIH0pOwogICAgICAgIGRhdGEucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogJ3Nob3d0ZW1wbGF0ZScsCiAgICAgICAgICAgICd2YWx1ZSc6ICdmYWxzZScKICAgICAgICB9KTsKICAgICAgICB2YXIgdXJsID0galF1ZXJ5KCdmb3JtJykuYXR0cignYWN0aW9uJyk7CiAgICAgICAgalF1ZXJ5LnBvc3QodXJsLCBkYXRhLCBmdW5jdGlvbihyZXN1bHRkYXRhLCB0ZXh0KSB7CiAgICAgICAgICAgIHZhciByZXNwID0galF1ZXJ5KHJlc3VsdGRhdGEpLmZpbmQoJ1Jlc3BvbnNlJykudGV4dCgpOwogICAgICAgICAgICB2YXIgZGV0YWlscyA9IGpRdWVyeShyZXN1bHRkYXRhKS5maW5kKCdEZXRhaWxzJykudGV4dCgpOwogICAgICAgICAgICB2YXIgaHRtbFNob3cgPSAnJzsKICAgICAgICAgICAgaWYgKHJlc3AgPT09ICdTdWNjZXNzJyAmJiBkZXRhaWxzICE9PSAnJykgewogICAgICAgICAgICAgICAgaHRtbFNob3cgPSAnPGRpdiBjbGFzcz0icGFnZW1jb250YWluZXIiPjxwIGNsYXNzPSJwYWdlbWVzc2FnZSI+JyArIGRldGFpbHMgKyAnPFwvcD48XC9kaXY+JzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGh0bWxTaG93ID0gJzxkaXYgY2xhc3M9InBhZ2VlcnJvcmNvbnRhaW5lciI+PHVsIGNsYXNzPSJwYWdlZXJyb3IiPic7CiAgICAgICAgICAgICAgICBodG1sU2hvdyArPSBkZXRhaWxzOwogICAgICAgICAgICAgICAgaHRtbFNob3cgKz0gJzxcL3VsPjxcL2Rpdj4nOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGpRdWVyeSgnI2VkaXRpdGVtX3Jlc3VsdCcpLmh0bWwoaHRtbFNob3cpOwogICAgICAgICAgICB3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpeyAKICAgICAgICAgICAgCSQoJy5wYWdlbWNvbnRhaW5lcicpLmhpZGUoKTsgCiAgICAgICAgICAgIAl9LCA5MDAwKQogICAgICAgIH0sICd4bWwnKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9KTsKfSk7CnsvbGl0ZXJhbH08L3NjcmlwdD4=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/edittemplate.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBzdGFydCB0YWIgLS0+CjxkaXYgaWQ9InBhZ2VfdGFicyI+Cgk8ZGl2IGlkPSJlZGl0dGVtcGxhdGUiPgoJCXskdGl0bGV9Cgk8L2Rpdj4KPC9kaXY+CjwhLS0gZW5kIHRhYiAvLy0tPgo8IS0tIHN0YXJ0IGNvbnRlbnQgLS0+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+IAoJPGRpdiBpZD0iZWRpdHRlbXBsYXRlX2MiPiAKCTxkaXYgaWQ9ImVkaXR0ZW1wbGF0ZV9yZXN1bHQiPjwvZGl2PgoJeyRiYWNrbGlua30KCXskc3RhcnRmb3JtfQoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPiogeyRtb2QtPk1vZExhbmcoJ3RlbXBsYXRlX25hbWUnKX06PC9wPgogICAgCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25hbWV9PC9wPgoJCTwvZGl2PgoJCQoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ2RlZmF1bHRfdGVtcGxhdGVzJyl9OjwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCB0cGxfbGlzdCI+eyRpbnB1dF90cGxfbGlzdH08L3A+CgkJPC9kaXY+CgoJCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ3RlbXBsYXRlJyl9OjwvcD4KICAgIAkJPGRpdiBjbGFzcz0icGFnZWlucHV0IHRwbF9jb250ZW50Ij57JGlucHV0X3RlbXBsYXRlfTwvZGl2PgoJCTwvZGl2PgoKCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIAkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+e2lmIGlzc2V0KCRpZGZpZWxkKX17JGlkZmllbGR9ey9pZn17JHN1Ym1pdH17JGNhbmNlbH17JGFwcGx5fXtpZiBpc3NldCgkcmVzZXQpfXskcmVzZXR9ey9pZn08L3A+CgkJPC9kaXY+CgoJeyRlbmRmb3JtfQoJPC9kaXY+CjwvZGl2PgoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPntsaXRlcmFsfQpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewoKCWpRdWVyeSgnLnRwbF9saXN0IHNlbGVjdCcpLmNoYW5nZShmdW5jdGlvbigpIHsKCQl2YXIgY2FsbGJhY2sgPSBhamF4X2Z1bmN0aW9uKCdNb2RHZXRUZW1wbGF0ZUZyb21GaWxlJywgJCh0aGlzKS52YWwoKSk7CgkJY2FsbGJhY2suc3VjY2VzcyhmdW5jdGlvbihkYXRhKSB7CgkJCWpRdWVyeSgnLnRwbF9jb250ZW50IHRleHRhcmVhJykudmFsKGRhdGEpOwoJCX0pOwoJfSk7CgogICAgalF1ZXJ5KCdbbmFtZT1tMV9hcHBseV0nKS5saXZlKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh0eXBlb2YgdGlueU1DRSAhPSAndW5kZWZpbmVkJykgewogICAgICAgICAgICB0aW55TUNFLnRyaWdnZXJTYXZlKCk7CiAgICAgICAgfQogICAgICAgIHZhciBkYXRhID0galF1ZXJ5KCdmb3JtJykuZmluZCgnaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pLCBzZWxlY3QsIHRleHRhcmVhJykuc2VyaWFsaXplQXJyYXkoKTsKICAgICAgICBkYXRhLnB1c2goewogICAgICAgICAgICAnbmFtZSc6ICdtMV9hamF4JywKICAgICAgICAgICAgJ3ZhbHVlJzogMQogICAgICAgIH0pOwogICAgICAgIGRhdGEucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogJ20xX2FwcGx5JywKICAgICAgICAgICAgJ3ZhbHVlJzogMQogICAgICAgIH0pOwogICAgICAgIGRhdGEucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogJ3Nob3d0ZW1wbGF0ZScsCiAgICAgICAgICAgICd2YWx1ZSc6ICdmYWxzZScKICAgICAgICB9KTsKICAgICAgICB2YXIgdXJsID0galF1ZXJ5KCdmb3JtJykuYXR0cignYWN0aW9uJyk7CgkJCiAgICAgICAgalF1ZXJ5LnBvc3QodXJsLCBkYXRhLCBmdW5jdGlvbihyZXN1bHRkYXRhLCB0ZXh0KSB7CiAgICAgICAgICAgIHZhciByZXNwID0galF1ZXJ5KHJlc3VsdGRhdGEpLmZpbmQoJ1Jlc3BvbnNlJykudGV4dCgpOwogICAgICAgICAgICB2YXIgZGV0YWlscyA9IGpRdWVyeShyZXN1bHRkYXRhKS5maW5kKCdEZXRhaWxzJykudGV4dCgpOwogICAgICAgICAgICB2YXIgaHRtbFNob3cgPSAnJzsKICAgICAgICAgICAgaWYgKHJlc3AgPT09ICdTdWNjZXNzJyAmJiBkZXRhaWxzICE9PSAnJykgewogICAgICAgICAgICAgICAgaHRtbFNob3cgPSAnPGRpdiBjbGFzcz0icGFnZW1jb250YWluZXIiPjxwIGNsYXNzPSJwYWdlbWVzc2FnZSI+JyArIGRldGFpbHMgKyAnPFwvcD48XC9kaXY+JzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIGh0bWxTaG93ID0gJzxkaXYgY2xhc3M9InBhZ2VlcnJvcmNvbnRhaW5lciI+PHVsIGNsYXNzPSJwYWdlZXJyb3IiPic7CiAgICAgICAgICAgICAgICBodG1sU2hvdyArPSBkZXRhaWxzOwogICAgICAgICAgICAgICAgaHRtbFNob3cgKz0gJzxcL3VsPjxcL2Rpdj4nOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGpRdWVyeSgnI2VkaXR0ZW1wbGF0ZV9yZXN1bHQnKS5odG1sKGh0bWxTaG93KTsKICAgICAgICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXsgCiAgICAgICAgICAgIAkkKCcucGFnZW1jb250YWluZXInKS5oaWRlKCk7IAogICAgICAgICAgICAJfSwgOTAwMCkKICAgICAgICB9LCAneG1sJyk7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSk7Cn0pOwp7L2xpdGVyYWx9PC9zY3JpcHQ+Cg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_category_default.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgp7Zm9yZWFjaCBmcm9tPSRjYXRlZ29yaWVzIGl0ZW09Y2F0ZWdvcnl9CiAgICA8bGk+PGEgaHJlZj0ieyRjYXRlZ29yeS0+dXJsfSI+eyRjYXRlZ29yeS0+bmFtZX0gKHskY2F0ZWdvcnktPml0ZW1zfGNvdW50fSk8L2E+PC9saT4Key9mb3JlYWNofQo8dWw+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_category_hierarchy.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgp7Zm9yZWFjaCBmcm9tPSRjYXRlZ29yaWVzIGl0ZW09Y2F0ZWdvcnl9Cgp7aWYgJGNhdGVnb3J5LT5kZXB0aCA+ICRjYXRlZ29yeS0+cHJldmRlcHRofQp7cmVwZWF0IHN0cmluZz0iPHVsPiIgdGltZXM9JGNhdGVnb3J5LT5kZXB0aC0kY2F0ZWdvcnktPnByZXZkZXB0aH0KCntlbHNlaWYgJGNhdGVnb3J5LT5kZXB0aCA8ICRjYXRlZ29yeS0+cHJldmRlcHRofQp7cmVwZWF0IHN0cmluZz0iPC9saT48L3VsPiIgdGltZXM9JGNhdGVnb3J5LT5wcmV2ZGVwdGgtJGNhdGVnb3J5LT5kZXB0aH0KPC9saT4KCntlbHNlaWYgJGNhdGVnb3J5LT5pbmRleCA+IDB9PC9saT4Key9pZn0KCntpZiAoJGNhdGVnb3J5LT5jdXJyZW50ID09IHRydWUgfHwgJGNhdGVnb3J5LT5wYXJlbnQgPT0gdHJ1ZSkgJiYgJGNhdGVnb3J5LT5kZXB0aCA8PSAxfQo8bGkgY2xhc3M9ImN1cnJlbnRzaWRlIj48YSBocmVmPSJ7JGNhdGVnb3J5LT51cmx9Ij4+IHskY2F0ZWdvcnktPm1lbnV0ZXh0fSA8L2E+Cgp7ZWxzZWlmICRjYXRlZ29yeS0+Y3VycmVudCA9PSB0cnVlICYmICRjYXRlZ29yeS0+ZGVwdGggPiAxfQo8bGkgY2xhc3M9ImN1cnJlbnRzdWJzaWRlIj48YSBocmVmPSJ7JGNhdGVnb3J5LT51cmx9Ij4mcmFxdW87IHskY2F0ZWdvcnktPm1lbnV0ZXh0fSA8L2E+Cgp7ZWxzZWlmICRjYXRlZ29yeS0+ZGVwdGggPiAxfQo8bGkgY2xhc3M9InBhc3NpdmVzdWJzaWRlIj48YSBocmVmPSJ7JGNhdGVnb3J5LT51cmx9Ij4mcmFxdW87IHskY2F0ZWdvcnktPm1lbnV0ZXh0fSA8L2E+Cgp7ZWxzZX0KPGxpIGNsYXNzPSJwYXNzaXZlc2lkZSI+PGEgaHJlZj0ieyRjYXRlZ29yeS0+dXJsfSI+PiB7JGNhdGVnb3J5LT5tZW51dGV4dH0gPC9hPgp7L2lmfQoKey9mb3JlYWNofQoKe3JlcGVhdCBzdHJpbmc9IjwvbGk+PC91bD4iIHRpbWVzPSRjYXRlZ29yeS0+ZGVwdGgtMX08L2xpPgo8L3VsPg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_detail_default.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0iaXRlbSI+CjxoMiBjbGFzcz0iaXRlbS10aXRsZSI+eyRpdGVtLT50aXRsZXxjbXNfZXNjYXBlfTwvaDI+CjxkaXYgY2xhc3M9Iml0ZW0tY2F0ZWdvcnkiPkNhdGVnb3J5OiB7JGl0ZW0tPmNhdGVnb3J5X25hbWV8Y21zX2VzY2FwZX08L2Rpdj4Ke2lmICFlbXB0eSgkaXRlbS0+ZmllbGRkZWZzKX0KICAgIDxkaXYgY2xhc3M9Iml0ZW0tcHJvcGVydGllcyI+CiAgICB7Zm9yZWFjaCBmcm9tPSRpdGVtLT5maWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KICAgICAgICB7aWYgJGZpZWxkZGVmLnR5cGUgPT0gJ3VwbG9hZF9maWxlJyB8fCAkZmllbGRkZWYudHlwZSA9PSAnc2VsZWN0X2ZpbGUnfQogICAgICAgICAgICB7JGZpZWxkZGVmLm5hbWV8Y21zX2VzY2FwZX06IDxhIGhyZWY9InskdXBsb2Fkc191cmx9L3skZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX0iPnskZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX08L2E+PGJyIC8+CiAgICAgICAge2Vsc2V9CiAgICAgICAgICAgIHskZmllbGRkZWYubmFtZXxjbXNfZXNjYXBlfTogeyRmaWVsZGRlZi52YWx1ZXxjbXNfZXNjYXBlfTxiciAvPgogICAgICAgIHsvaWZ9CiAgICB7L2ZvcmVhY2h9CiAgICA8L2Rpdj4Key9pZn0KeyRyZXR1cm5fbGlua30geyogb25seSBocmVmIHskcmV0dXJuX2hyZWZ9ICp9CjwvZGl2PjwhLS0gaXRlbSAtLT4K]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_search_default.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBpZD0ieyRtb2R1bGVhbGlhc31fc2VhcmNoIj4KeyRmb3Jtc3RhcnR9CjxsYWJlbCBmb3I9InskbW9kdWxlYWxpYXN9c2VhcmNoaW5wdXQiPnskbW9kLT5Nb2RMYW5nKCdzZWFyY2hmb3InKX06PC9sYWJlbD4mbmJzcDsKPGlucHV0IHR5cGU9InRleHQiIGlkPSJ7JG1vZHVsZWFsaWFzfXNlYXJjaGlucHV0IiBuYW1lPSJ7JGFjdGlvbmlkfXNlYXJjaCIgc2l6ZT0iMjAiIG1heGxlbmd0aD0iNTAiIHZhbHVlPSIiIC8+CjxpbnB1dCBjbGFzcz0ic2VhcmNoLWJ1dHRvbiIgbmFtZT0ic3VibWl0IiB2YWx1ZT0ieyRtb2QtPk1vZExhbmcoJ3NlYXJjaCcpfSIgdHlwZT0ic3VibWl0IiAvPgp7JGZvcm1lbmR9CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_search_filter.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBpZD0ieyRtb2R1bGVhbGlhc31fZmlsdGVyIj4KeyRmb3Jtc3RhcnR9CjxoMz57JGZpbHRlcnByb21wdH08L2gzPgp7Zm9yZWFjaCBmcm9tPSRmaWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KCTxkaXYgY2xhc3M9InJvdyI+Cgk8bGFiZWwgZm9yPSJmaWx0ZXJfeyRmaWVsZGRlZi0+YWxpYXN9Ij57JGZpZWxkZGVmLT5uYW1lfTwvbGFiZWw+Cgk8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9c2VhcmNoX3skZmllbGRkZWYtPmFsaWFzfSIgaWQ9ImZpbHRlcl97JGZpZWxkZGVmLT5hbGlhc30iPgoJCTxvcHRpb24gdmFsdWU9Jyc+eyRtb2QtPk1vZExhbmcoJ2FsbCcpfTwvb3B0aW9uPgoJe2ZvcmVhY2ggZnJvbT0kZmllbGRkZWYtPnZhbHVlcyBpdGVtPXZhbHVlfQoJCTxvcHRpb24+eyR2YWx1ZX08L29wdGlvbj4KCXsvZm9yZWFjaH0KCTwvc2VsZWN0PgoJPC9kaXY+CnsvZm9yZWFjaH0KPGlucHV0IGNsYXNzPSJzZWFyY2gtYnV0dG9uIiBuYW1lPSJzdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TW9kTGFuZygnc2VhcmNoJyl9IiB0eXBlPSJzdWJtaXQiIC8+CnskZm9ybWVuZH0KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_search_multiselect.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBpZD0ieyRtb2R1bGVhbGlhc31fZmlsdGVyIj4KeyRmb3Jtc3RhcnR9CjxoMz57JGZpbHRlcnByb21wdH08L2gzPgp7Zm9yZWFjaCBmcm9tPSRmaWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KCTxkaXYgY2xhc3M9ImZpbHRlciI+CgkJCgkJPHN0cm9uZz57JGZpZWxkZGVmLT5uYW1lfTwvc3Ryb25nPgoJCQoJCTx1bCBjbGFzcz0ibGlzdCI+CgkJe2ZvcmVhY2ggZnJvbT0kZmllbGRkZWYtPnZhbHVlcyBpdGVtPXZhbHVlfQoJCQk8bGk+CgkJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9c2VhcmNoX3skZmllbGRkZWYtPmFsaWFzfVtdIiBpZD0iZmlsdGVyX3skZmllbGRkZWYtPmFsaWFzfV97JHZhbHVlfSIgdmFsdWU9InskdmFsdWV9IiAvPgoJCQkJPGxhYmVsIGZvcj0iZmlsdGVyX3skZmllbGRkZWYtPmFsaWFzfV97JHZhbHVlfSI+eyR2YWx1ZX08L2xhYmVsPgoJCQk8L2xpPgoJCXsvZm9yZWFjaH0KCQk8L3VsPgoJPC9kaXY+CnsvZm9yZWFjaH0KPGlucHV0IGNsYXNzPSJzZWFyY2gtYnV0dG9uIiBuYW1lPSJzdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TW9kTGFuZygnZmlsdGVyJyl9IiB0eXBlPSJzdWJtaXQiIC8+CnskZm9ybWVuZH0KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_summary_accordion.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogQUREIFRPIFBBR0UgVEVNUExBVEUKVGhpcyBpcyBvbmx5IGEgZGVtb25zcnRhdGlvbiBUZW1wbGF0ZSB1c2luZyBqcXVlcnkgYWNjb3JkaW9uIGVmZmVjdCBhbmQgQ1NTMyBzdHlsaW5nLgpCZWZvcmUgeW91IGNhbiB1c2UgdGhpcyB0ZW1wbGF0ZSBpbnNlcnQgQ1NTIGFuZCBKUyBiZWxvdyBpbiA8aGVhZD4gPC9oZWFkPiBwYXJ0IG9mIHlvdXIgVGVtcGxhdGUsIHlvdSBjYW4gYWxzbyBhZGQgQ1NTIHVzZWQgYmVsb3cgdG8geW91ciBTdHlsZXNoZWV0IGF0dGFjaGVkIHRvIFRlbXBsYXRlLgpQbGVhc2Ugbm90ZSB0aGF0IENTUzMgd2FzIHVzZWQgZm9yIHN0eWxpbmcsIHNvIGNoZWNrIElFIEZhbWlseSAKKn0KeyoKPHN0eWxlIHR5cGU9InRleHQvY3NzIj4Ke2xpdGVyYWx9CmgyLml0ZW0tdGl0bGUgewoJY29sb3I6ICM4ODg7CgljdXJzb3I6IHBvaW50ZXI7CgltYXJnaW4tYm90dG9tOiA1cHg7CglwYWRkaW5nOiA1cHg7Cgl0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmOwoJdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKCS1tb3otYm9yZGVyLXJhZGl1czogOHB4OyAvKiBGRiAzLjYgKi8KCS13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4OyAgLyogU2FmYXJpNCwgQ2hyb21lICovCglib3JkZXItcmFkaXVzOiA4cHg7CgktbW96LWJveC1zaGFkb3c6IDAgMXB4IDFweCAjZmZmIGluc2V0OwoJLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAxcHggI2ZmZiBpbnNldDsKCWJveC1zaGFkb3c6IDAgMXB4IDFweCAjZmZmIGluc2V0OwoJYmFja2dyb3VuZDogI2VlZWVlZTsgLyogT2xkIGJyb3dzZXJzICovCgliYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNlYWVhZWEgMCUsICNkOWQ5ZDkgMTAwJSk7IC8qIEZGMy42KyAqLwoJYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjZWFlYWVhICksIGNvbG9yLXN0b3AoMTAwJSwjZDlkOWQ5KSk7IC8qIENocm9tZSwgU2FmYXJpNCsgKi8KCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VhZWFlYSAwJSwjZDlkOWQ5IDEwMCUpOyAgLyogQ2hyb21lMTArLCBTYWZhcmk1LjErICovCgliYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWFlYWVhIDAlLCNkOWQ5ZDkgMTAwJSk7IC8qIE9wZXJhMTEuMTArICovCgliYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VhZWFlYSAwJSwjZDlkOWQ5IDEwMCUpOyAvKiBJRTEwKyAqLwoJZmlsdGVyOiBwcm9naWQ6IERYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZWFlYWVhJywgZW5kQ29sb3JzdHI9JyNkOWQ5ZDknLEdyYWRpZW50VHlwZT0wICk7IC8qIElFNi05ICovCgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjZWFlYWVhIDAlLCNkOWQ5ZDkgMTAwJSk7Cn0KI2FjY29yZGlvbiAuaXRlbS1hY3RpdmUgewoJY29sb3I6ICMwMDA7CgliYWNrZ3JvdW5kOiAjOWRjMmQxOyAvKiBPbGQgYnJvd3NlcnMgKi8KCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzlkYzJkMSAwJSwgIzQ4N2U5YiAxMDAlKTsgLyogRkYzLjYrICovCgliYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCM5ZGMyZDEpLCBjb2xvci1zdG9wKDEwMCUsIzQ4N2U5YikpOyAvKiBDaHJvbWUsIFNhZmFyaTQrICovCgliYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICM5ZGMyZDEgMCUsIzQ4N2U5YiAxMDAlKTsgLyogQ2hyb21lMTArLCBTYWZhcmk1LjErICovCgliYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjOWRjMmQxIDAlLCM0ODdlOWIgMTAwJSk7IC8qIE9wZXJhMTEuMTArICovCgliYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzlkYzJkMSAwJSwjNDg3ZTliIDEwMCUpOyAvKiBJRTEwKyAqLwoJZmlsdGVyOiBwcm9naWQ6IERYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjOWRjMmQxJywgZW5kQ29sb3JzdHI9JyM0ODdlOWInLEdyYWRpZW50VHlwZT0wICk7IC8qIElFNi05ICovCgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG9wLCAjOWRjMmQxIDAlLCM0ODdlOWIgMTAwJSk7Cn0KLml0ZW0tY29udGVudCB7CgktbW96LWJvcmRlci1yYWRpdXM6IDhweDsKCS13ZWJraXQtYm9yZGVyLXJhZGl1czogOHB4OwoJYm9yZGVyLXJhZGl1czogOHB4OwoJLW1vei1ib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggMXB4ICNjY2M7Cgktd2Via2l0LWJveC1zaGFkb3c6IGluc2V0MXB4IDAgMXB4IDFweCAjY2NjOwoJYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMXB4IDFweCAjY2NjOwoJYmFja2dyb3VuZDogI2U5ZTllOTsKCW1hcmdpbjogNXB4IDAgMTBweCAwOwoJcGFkZGluZzogNXB4IDEwcHg7Cn0KPC9zdHlsZT4Key9saXRlcmFsfQo8IS0tIGxvYWQgalF1ZXJ5IGlmIG5vbiBsb2FkZWQgYW5kIHRyaWdnZXIgYWNjb3JkaW9uIGZ1bmN0aW9uIC8vIGFkZCB0aGUgcGFydCBiZWxvdyBiZXN0IGJlZm9yZSA8L2JvZHk+IC0tPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+IAogCnZhciBqUXVlcnlTY3JpcHRPdXRwdXR0ZWQgPSBmYWxzZTsKIApmdW5jdGlvbiBpbml0SlF1ZXJ5KCkgewogICAgaWYgKHR5cGVvZihqUXVlcnkpID09ICd1bmRlZmluZWQnKSB7CiAgICAgICAgaWYgKCFqUXVlcnlTY3JpcHRPdXRwdXR0ZWQpIHsKICAgICAgICAgICAgLy9vbmx5IG91dHB1dCB0aGUgc2NyaXB0IG9uY2UuLgogICAgICAgICAgICBqUXVlcnlTY3JpcHRPdXRwdXR0ZWQgPSB0cnVlOwogCiAgICAgICAgICAgIC8vb3V0cHV0IHRoZSBzY3JpcHQgKGxvYWQgaXQgZnJvbSBnb29nbGUgYXBpKQogICAgICAgICAgICBkb2N1bWVudC53cml0ZSgiPHNjciIgKyAiaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIiBzcmM9XCJodHRwOi8vYWpheC5nb29nbGVhcGlzLmNvbS9hamF4L2xpYnMvanF1ZXJ5LzEuNi4xL2pxdWVyeS5taW4uanNcIj48L3NjciIgKyAiaXB0PiIpOwogICAgICAgIH0KICAgICAgICBzZXRUaW1lb3V0KCJpbml0SlF1ZXJ5KCkiLCA1MCk7CiAgICB9IGVsc2UgewogCiAgICAgICAgJChmdW5jdGlvbigpIHsKICAgICAgICAgICAgJCgnLml0ZW0tY29udGVudCcpLmhpZGUoKTsKICAgICAgICAgICAgJCgnLml0ZW0tdGl0bGUnKS5jbGljayhmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHZhciB0cmlnID0gJCh0aGlzKTsKICAgICAgICAgICAgICAgIGlmICh0cmlnLmhhc0NsYXNzKCdpdGVtLWFjdGl2ZScpKSB7CiAgICAgICAgICAgICAgICAgICAgdHJpZy5uZXh0KCcuaXRlbS1jb250ZW50Jykuc2xpZGVUb2dnbGUoJ3Nsb3cnKTsKICAgICAgICAgICAgICAgICAgICB0cmlnLnJlbW92ZUNsYXNzKCdpdGVtLWFjdGl2ZScpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkKCcuaXRlbS1hY3RpdmUnKS5uZXh0KCcuaXRlbS1jb250ZW50Jykuc2xpZGVUb2dnbGUoJ3Nsb3cnKTsKICAgICAgICAgICAgICAgICAgICAkKCcuaXRlbS1hY3RpdmUnKS5yZW1vdmVDbGFzcygnaXRlbS1hY3RpdmUnKTsKICAgICAgICAgICAgICAgICAgICB0cmlnLm5leHQoJy5pdGVtLWNvbnRlbnQnKS5zbGlkZVRvZ2dsZSgnc2xvdycpOwogICAgICAgICAgICAgICAgICAgIHRyaWcuYWRkQ2xhc3MoJ2l0ZW0tYWN0aXZlJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIH0KIAogICAgICAgIH0KICAgICAgICBpbml0SlF1ZXJ5KCk7CiAKPC9zY3JpcHQ+IAoqfQp7KiBFT0YgQUREIFRPIFBBR0UgVEVNUExBVEUgKn0KPGRpdiBpZD0iYWNjb3JkaW9uIiBjbGFzcz0iaXRlbSI+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09Iml0ZW0iIG5hbWU9InBvcyJ9CjxoMiBjbGFzcz0iaXRlbS10aXRsZSI+eyRpdGVtLT50aXRsZXxjbXNfZXNjYXBlfTwvaDI+CjxkaXYgY2xhc3M9Iml0ZW0tY29udGVudCI+CjxkaXYgY2xhc3M9Iml0ZW0tY2F0ZWdvcnkiPkNhdGVnb3J5OiB7JGl0ZW0tPmNhdGVnb3J5X25hbWV8Y21zX2VzY2FwZX08L2Rpdj4Ke2lmICFlbXB0eSgkaXRlbS0+ZmllbGRkZWZzKX0KICAgIDxkaXYgY2xhc3M9Iml0ZW0tcHJvcGVydGllcyI+CiAgICB7Zm9yZWFjaCBmcm9tPSRpdGVtLT5maWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KICAgICAgICB7aWYgJGZpZWxkZGVmLnR5cGUgPT0gJ1NlbGVjdEZpbGUnfQogICAgICAgICAgICB7JGZpZWxkZGVmLm5hbWV8Y21zX2VzY2FwZX06IDxhIGhyZWY9InskdXBsb2Fkc191cmx9L3skZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX0iPnskZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX08L2E+PGJyIC8+CiAgICAgICAge2Vsc2V9CiAgICAgICAgICAgIHskZmllbGRkZWYubmFtZXxjbXNfZXNjYXBlfTogeyRmaWVsZGRlZi52YWx1ZXxjbXNfZXNjYXBlfTxiciAvPgogICAgICAgIHsvaWZ9CiAgICB7L2ZvcmVhY2h9CiAgICA8L2Rpdj4Key9pZn0KPGEgaHJlZj0ieyRpdGVtLT51cmx9Ij5tb3JlPC9hPgo8L2Rpdj4Key9mb3JlYWNofQo8L2Rpdj4K]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_summary_categorized.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyoKCkZvciB0aGlzIHRlbXBsYXRlIHRvIHdvcmsgYXMgaW50ZW5kZWQsIHlvdSBuZWVkIHRvIGNhbGwgdGhlIG1vZHVsZSB1c2luZyBhbiBhcHByb3ByaWF0ZSB2YWx1ZSBmb3IgdGhlIG9yZGVyYnkgcGFyYW1ldGVyLCBmb3IgZXhhbXBsZToKe0xpc3RJdDIgc3VtbWFyeXRlbXBsYXRlPSdjYXRlZ29yaXplZCcgb3JkZXJieT0nY2F0ZWdvcnlfcG9zaXRpb24nfQoKKn0Ke2Fzc2lnbiB2YXI9J2N1cnJlbnRfY2F0ZWdvcnknIHZhbHVlPScnfQp7YXNzaWduIHZhcj0nb3BlbicgdmFsdWU9ZmFsc2V9Cgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWl0ZW19Cgp7aWYgJGN1cnJlbnRfY2F0ZWdvcnkgIT0gJGl0ZW0tPmNhdGVnb3J5X2FsaWFzfQogICAge2lmICRvcGVufTwvZGl2PjwhLS0gaXRlbXMgLS0+ey9pZn0KICAgIDxoMiBjbGFzcz0iY2F0ZWdvcnktdGl0bGUiPnskaXRlbS0+Y2F0ZWdvcnlfbmFtZXxjbXNfZXNjYXBlfTwvaDI+CiAgICA8ZGl2IGNsYXNzPSJpdGVtcyI+CiAgICB7YXNzaWduIHZhcj0nY3VycmVudF9jYXRlZ29yeScgdmFsdWU9JGl0ZW0tPmNhdGVnb3J5X2FsaWFzfQogICAge2Fzc2lnbiB2YXI9J29wZW4nIHZhbHVlPXRydWV9CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJpdGVtIj4KPGgzIGNsYXNzPSJpdGVtLXRpdGxlIj57JGl0ZW0tPnRpdGxlfGNtc19lc2NhcGV9PC9oMz4Ke2lmICFlbXB0eSgkaXRlbS0+ZmllbGRkZWZzKX0KICAgIDxkaXYgY2xhc3M9Iml0ZW0tcHJvcGVydGllcyI+CiAgICB7Zm9yZWFjaCBmcm9tPSRpdGVtLT5maWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KICAgICAgICB7aWYgJGZpZWxkZGVmLnR5cGUgPT0gJ1NlbGVjdEZpbGUnfQogICAgICAgICAgICB7JGZpZWxkZGVmLm5hbWV8Y21zX2VzY2FwZX06IDxhIGhyZWY9InskdXBsb2Fkc191cmx9L3skZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX0iPnskZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX08L2E+PGJyIC8+CiAgICAgICAge2Vsc2V9CiAgICAgICAgICAgIHskZmllbGRkZWYubmFtZXxjbXNfZXNjYXBlfTogeyRmaWVsZGRlZi52YWx1ZXxjbXNfZXNjYXBlfTxiciAvPgogICAgICAgIHsvaWZ9CiAgICB7L2ZvcmVhY2h9CiAgICA8L2Rpdj4Key9pZn0KPC9kaXY+PCEtLSBpdGVtIC0tPgp7L2ZvcmVhY2h9Cgp7aWYgJG9wZW59PC9kaXY+PCEtLSBpdGVtcyAtLT57L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_summary_default.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRwYWdlY291bnQgPiAxfQo8cD4Ke2lmICRwYWdlbnVtYmVyID4gMX0KeyRmaXJzdHBhZ2V9Jm5ic3A7eyRwcmV2cGFnZX0Key9pZn0Ke2ZvcmVhY2ggZnJvbT0kcGFnZWxpbmtzIGl0ZW09cGFnZX0KICAgIHskcGFnZS0+bGlua30Key9mb3JlYWNofQp7aWYgJHBhZ2VudW1iZXIgPCAkcGFnZWNvdW50fQombmJzcDt7JG5leHRwYWdlfSZuYnNwO3skbGFzdHBhZ2V9CnsvaWZ9CjwvcD4Key9pZn0KCntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09aXRlbX0KPGRpdiBjbGFzcz0iaXRlbSI+CjxoMiBjbGFzcz0iaXRlbS10aXRsZSI+eyRpdGVtLT50aXRsZXxjbXNfZXNjYXBlfTwvaDI+CjxkaXYgY2xhc3M9Iml0ZW0tY2F0ZWdvcnkiPkNhdGVnb3J5OiB7JGl0ZW0tPmNhdGVnb3J5X25hbWV8Y21zX2VzY2FwZX08L2Rpdj4Ke2lmICFlbXB0eSgkaXRlbS0+ZmllbGRkZWZzKX0KICAgIDxkaXYgY2xhc3M9Iml0ZW0tcHJvcGVydGllcyI+CiAgICB7Zm9yZWFjaCBmcm9tPSRpdGVtLT5maWVsZGRlZnMgaXRlbT1maWVsZGRlZn0KICAgICAgICB7aWYgJGZpZWxkZGVmLnR5cGUgPT0gJ1NlbGVjdEZpbGUnfQogICAgICAgICAgICB7JGZpZWxkZGVmLm5hbWV8Y21zX2VzY2FwZX06IDxhIGhyZWY9InskdXBsb2Fkc191cmx9L3skZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX0iPnskZmllbGRkZWYudmFsdWV8Y21zX2VzY2FwZX08L2E+PGJyIC8+CiAgICAgICAge2Vsc2V9CiAgICAgICAgICAgIHskZmllbGRkZWYubmFtZXxjbXNfZXNjYXBlfTogeyRmaWVsZGRlZi52YWx1ZXxjbXNfZXNjYXBlfTxiciAvPgogICAgICAgIHsvaWZ9CiAgICB7L2ZvcmVhY2h9CiAgICA8L2Rpdj4Key9pZn0KPGEgaHJlZj0ieyRpdGVtLT51cmx9Ij5tb3JlPC9hPgo8L2Rpdj48IS0tIGl0ZW0gLS0+CnsvZm9yZWFjaH0=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fe_summary_searchresults.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICRwYWdlY291bnQgPiAxfQo8cD4Ke2lmICRwYWdlbnVtYmVyID4gMX0KeyRmaXJzdHBhZ2V9Jm5ic3A7eyRwcmV2cGFnZX0Key9pZn0Ke2lmICRwYWdlbnVtYmVyIDwgJHBhZ2Vjb3VudH0KJm5ic3A7eyRuZXh0cGFnZX0mbmJzcDt7JGxhc3RwYWdlfQp7L2lmfQo8L3A+CnsvaWZ9Cgo8aDI+eyRtb2QtPk1vZExhbmcoJ3NlYXJjaHJlc3VsdHNmb3InKX0gJnF1b3Q7eyRzZWFyY2h0ZXh0fSZxdW90OzwvaDI+Cjx1bD4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1pdGVtfQo8bGkgY2xhc3M9Iml0ZW0gc2VhcmNocmVzdWx0Ij48YSBocmVmPSJ7JGl0ZW0tPnVybH0iPnskaXRlbS0+dGl0bGV8Y21zX2VzY2FwZX08L2E+PC9saT4Key9mb3JlYWNofQo8L3VsPg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/fielddeftab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGNvdW50KCRpdGVtcykgPiAwfQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvZGl2Pgo8dGFibGUgaWQ9InNvcnRhYmxlX2ZpZWxkZGVmIiBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CiAgICA8dGhlYWQ+CiAgICAgICAgPHRyPgogICAgICAgICAgICA8dGg+eyRtb2QtPk1vZExhbmcoJ2ZpZWxkZGVmJyl9PC90aD4KICAgICAgICAgICAgPHRoPnskbW9kLT5Nb2RMYW5nKCdhbGlhcycpfTwvdGg+CiAgICAgICAgICAgIDx0aD57JG1vZC0+TW9kTGFuZygnZmllbGRkZWZfdHlwZScpfTwvdGg+CiAgICAgICAgICAgIDx0aD57JG1vZC0+TW9kTGFuZygncmVxdWlyZWQnKX08L3RoPgogICAgICAgICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogICAgICAgICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgogICAgICAgICAgICA8dGggdGl0bGU9InskbW9kLT5Nb2RMYW5nKCdzZWxlY3RfYWxsJyl9IiBjbGFzcz0icGFnZWljb24iPjxpbnB1dCBpZD0iY2hlY2tfYWxsX2ZpZWxkZGVmIiB0eXBlPSJjaGVja2JveCIgLz48L3RoPgogICAgICAgIDwvdHI+CiAgICA8L3RoZWFkPgogICAgPHRib2R5IGNsYXNzPSJjb250ZW50IiB3aWR0aD0iMTAwJSI+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09J2ZpZWxkZGVmJ30KICAgIHtjeWNsZSB2YWx1ZXM9InJvdzEscm93MiIgYXNzaWduPSdyb3djbGFzcyd9CiAgICAgICAgPHRyIGlkPSJmaWVsZGRlZl97JGZpZWxkZGVmLT5HZXRJZCgpfSIgY2xhc3M9Inskcm93Y2xhc3N9IiBzdHlsZT0iY3Vyc29yOiBtb3ZlOyI+CiAgICAgICAgICAgIDx0ZD57JGZpZWxkZGVmLT5HZXROYW1lKCl9PC90ZD4KICAgICAgICAgICAgPHRkPnskZmllbGRkZWYtPkdldEFsaWFzKCl9PC90ZD4KICAgICAgICAgICAgPHRkPnskZmllbGRkZWYtPkdldEZyaWVuZGx5VHlwZSgpfTwvdGQ+CiAgICAgICAgICAgIDx0ZCBjbGFzcz0iaW5pdC1hamF4LXRvZ2dsZSI+eyRmaWVsZGRlZi0+R2V0UmVxdWlyZWQoKX08L3RkPgogICAgICAgICAgICA8dGQ+eyRmaWVsZGRlZi0+ZWRpdGxpbmt9PC90ZD4KICAgICAgICAgICAgPHRkIGNsYXNzPSJpbml0LWFqYXgtZGVsZXRlIj57JGZpZWxkZGVmLT5kZWxldGVsaW5rfTwvdGQ+CiAgICAgICAgICAgIDx0ZCBjbGFzcz0iZmllbGRkZWYtbWFzcy1hY3Rpb24iPnskZmllbGRkZWYtPnNlbGVjdH08L3RkPgogICAgICAgIDwvdHI+CnsvZm9yZWFjaH0KICAgIDwvdGJvZHk+CjwvdGFibGU+CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIiBzdHlsZT0iZmxvYXQ6cmlnaHQ7Ij4KPHNlbGVjdCBpZD0ibGlzdGl0Ml9maWVsZGRlZl9tYXNzX2FjdGlvbiI+Cgk8b3B0aW9uIHZhbHVlPSIiPnskbW9kLT5Nb2RMYW5nKCdzZWxlY3Rfb25lJyl9PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSJkZWxldGUiPkRlbGV0ZTwvb3B0aW9uPgkKCTxvcHRpb24gdmFsdWU9InJlcXVpcmUiPlRvZ2dsZSByZXF1aXJlPC9vcHRpb24+Cjwvc2VsZWN0Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiIHN0eWxlPSJmbG9hdDpyaWdodDsiPnskc3VibWl0b3JkZXJ9PC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/help.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBzdHlsZT0iZmxvYXQ6cmlnaHQiPjxmb3JtIGFjdGlvbj0iaHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciIgbWV0aG9kPSJwb3N0Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iY21kIiB2YWx1ZT0iX3MteGNsaWNrIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iaG9zdGVkX2J1dHRvbl9pZCIgdmFsdWU9IjdUS0dZUlkzU1JQRVkiPgo8aW5wdXQgdHlwZT0iaW1hZ2UiIHNyYz0iaHR0cHM6Ly93d3cucGF5cGFsb2JqZWN0cy5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYiIGJvcmRlcj0iMCIgbmFtZT0ic3VibWl0IiBhbHQ9IlBheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISI+CjxpbWcgYWx0PSIiIGJvcmRlcj0iMCIgc3JjPSJodHRwczovL3d3dy5wYXlwYWxvYmplY3RzLmNvbS9kZV9ERS9pL3Njci9waXhlbC5naWYiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiPgo8L2Zvcm0+CjwvZGl2Pgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Inskcm9vdHVybH0vbW9kdWxlcy97JHBhcmVudF9uYW1lfS9mcmFtZXdvcmsvY3NzL2NvbG9yYm94LmNzcyIgdHlwZT0idGV4dC9jc3MiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ZyYW1ld29yay9jc3MvYmFja2VuZC5jc3MiIHR5cGU9InRleHQvY3NzIiAvPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHNyYz0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ZyYW1ld29yay9qcy9qcXVlcnkuY29sb3Jib3guanMiPjwvc2NyaXB0Pgo8c2NyaXB0PgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7bGRlbGltfQoJalF1ZXJ5KCcuY2JveCcpLmNvbG9yYm94KHtsZGVsaW19CgkJcmVsOidncm91cCcsCgkJaWZyYW1lOiB0cnVlLAoJCWlubmVyV2lkdGg6IDgwMCwKCQlpbm5lckhlaWdodDogNDUwLAoJCW9wYWNpdHk6IDAuMgoJe3JkZWxpbX0pOwp7cmRlbGltfSk7Cjwvc2NyaXB0Pgo8ZGl2IGlkPSJwYWdlX3RhYnMiPgoJPGRpdiBpZD0iZ2VuZXJhbCI+CgkJeyRtb2QtPk1vZExhbmcoJ2dlbmVyYWwnKX0KCTwvZGl2PgoJPGRpdiBpZD0idXNhZ2UiPgoJCXskbW9kLT5Nb2RMYW5nKCd1c2FnZScpfQoJPC9kaXY+Cgk8ZGl2IGlkPSJwZXJtaXNzaW9ucyI+CgkJeyRtb2QtPk1vZExhbmcoJ3Blcm1pc3Npb25zJyl9Cgk8L2Rpdj4KCTxkaXYgaWQ9ImZpZWxkIj4KCQl7JG1vZC0+TW9kTGFuZygnZmllbGRkZWZzJyl9Cgk8L2Rpdj4KCTxkaXYgaWQ9ImNhdGVnb3JpZXMiPgoJCXskbW9kLT5Nb2RMYW5nKCdjYXRlZ29yaWVzJyl9Cgk8L2Rpdj4KCTxkaXYgaWQ9InRlbXBsYXRlcyI+CgkJeyRtb2QtPk1vZExhbmcoJ3RlbXBsYXRlcycpfQoJPC9kaXY+Cgk8ZGl2IGlkPSJhYm91dCI+CgkJeyRtb2QtPk1vZExhbmcoJ2Fib3V0Jyl9Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+ICAKCTxkaXYgaWQ9ImdlbmVyYWxfYyI+CgkJPGltZyBzcmM9Inskcm9vdHVybH0vbW9kdWxlcy97JHBhcmVudF9uYW1lfS9pbWFnZXMvbGlzdGl0LWV4dGVuZGVkLWxvZ28uanBnIiBhbHQ9Ikxpc3RJdEV4dGVuZGVkIExvZ28iIC8+CgkJeyRtb2QtPk1vZExhbmcoJ2hlbHBfZ2VuZXJhbCcpfQoJPC9kaXY+CQoJPGRpdiBpZD0idXNhZ2VfYyI+CQkKCQl7JHVzYWdlX3RleHR9CgkJPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsgd2lkdGg6MjEwcHg7IG1hcmdpbi1yaWdodDoxMHB4OyBtYXJnaW4tYm90dG9tOjIwcHg7Ij4JCQkKCQkJPGEgdGl0bGU9IlNldHRpbmcgdGhlIE1vZHVsZSBPcHRpb25zIiBjbGFzcz0iY2JveCIgcmVsPSJncm91cCIgaHJlZj0iLy9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLzQ5NDYyMTQ5Ij4KCQkJCTxpbWcgc3JjPSJ7JHJvb3R1cmx9L21vZHVsZXMveyRwYXJlbnRfbmFtZX0vaW1hZ2VzL3NjcmVlbnNob3RzL3RodW1iX3NjcmVlbnNob3QxLmpwZyIgYWx0PSJTZXR0aW5nIHRoZSBNb2R1bGUgT3B0aW9ucyIgLz48L2E+CgkJPC9kaXY+CQkKCQk8ZGl2IHN0eWxlPSJmbG9hdDpsZWZ0OyI+CgkJCXskbW9kLT5Nb2RMYW5nKCdoZWxwX3VzYWdlX29wdGlvbnMnKX0KCQk8L2Rpdj4KCQk8YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPgoJCTxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7IHdpZHRoOjIxMHB4OyBtYXJnaW4tcmlnaHQ6MTBweDsgbWFyZ2luLWJvdHRvbToyMHB4OyI+CgkJCTxhIHRpdGxlPSJTZXR0aW5nIHRoZSBGaWVsZCBEZWZpbml0aW9ucyIgY2xhc3M9ImNib3giIHJlbD0iZ3JvdXAiIGhyZWY9Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby80OTQ2MjE0OCI+CgkJCQk8aW1nIHNyYz0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ltYWdlcy9zY3JlZW5zaG90cy90aHVtYl9BZGRfRmllbGREZWZfVGFiOC5qcGciIGFsdD0iU2V0dGluZyB0aGUgRmllbGQgRGVmaW5pdGlvbnMiIC8+PC9hPgoJCTwvZGl2PgoJCTxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7IGRpc3BsYXk6IGlubGluZTsiPgoJCQl7JG1vZC0+TW9kTGFuZygnaGVscF91c2FnZV9maWVsZGRlZnMnKX0KCQk8L2Rpdj4KCQk8YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPgoJCTxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7IHdpZHRoOjIxMHB4OyBtYXJnaW4tcmlnaHQ6MTBweDsgbWFyZ2luLWJvdHRvbToyMHB4OyI+CgkJCTxhIHRpdGxlPSJTZXR0aW5nIHRoZSBsaXN0IGNhdGVnb3JpZXMiIGNsYXNzPSJjYm94IiByZWw9Imdyb3VwIiBocmVmPSIvL3BsYXllci52aW1lby5jb20vdmlkZW8vNTA4MTk2NzAiPgoJCQkJPGltZyBzcmM9Inskcm9vdHVybH0vbW9kdWxlcy97JHBhcmVudF9uYW1lfS9pbWFnZXMvc2NyZWVuc2hvdHMvdGh1bWJfQ2F0ZWdvcmllc19UYWI4LmpwZyIgYWx0PSJTZXR0aW5nIHRoZSBsaXN0IGNhdGVnb3JpZXMiIC8+CgkJCTwvYT4KCQk8L2Rpdj4KCQk8ZGl2IHN0eWxlPSJmbG9hdDpsZWZ0OyI+CgkJCXskbW9kLT5Nb2RMYW5nKCdoZWxwX3VzYWdlX2NhdGVnb3JpZXMnKX0KCQk8L2Rpdj4KCQk8YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPgoJCTxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7IHdpZHRoOjIxMHB4OyBtYXJnaW4tcmlnaHQ6MTBweDsgbWFyZ2luLWJvdHRvbToyMHB4OyI+CgkJCTxhIHRpdGxlPSJBZGRpbmcgTGlzdCBJdGVtcyIgY2xhc3M9ImNib3giIHJlbD0iZ3JvdXAiIGhyZWY9Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby81MDgyMTMxNyI+CgkJCQk8aW1nIHNyYz0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ltYWdlcy9zY3JlZW5zaG90cy90aHVtYl9BZGRfSXRlbV9UYWI4LmpwZyIgYWx0PSJBZGRpbmcgTGlzdCBJdGVtcyIgLz48L2E+CgkJPC9kaXY+CgkJPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsiPgoJCQl7JG1vZC0+TW9kTGFuZygnaGVscF91c2FnZV9pdGVtcycpfQoJCTwvZGl2PgoJCTxiciBzdHlsZT0iY2xlYXI6Ym90aDsiIC8+Cgk8L2Rpdj4KCTxkaXYgaWQ9InBlcm1pc3Npb25zX2MiPgoJCXskcGVybWlzc2lvbnNfdGV4dH0KCTwvZGl2PgoJPGRpdiBpZD0iZmllbGRfYyI+CgkJeyRtb2QtPk1vZExhbmcoJ2hlbHBfZmllbGRkZWZzJyl9CgkJPGEgdGl0bGU9IkNyZWF0aW5nIGN1c3RvbSBmaWVsZCBkZWZpbml0aW9uIiBjbGFzcz0iY2JveCIgcmVsPSJncm91cCIgaHJlZj0iLy9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLzU1NzI4MTI3Ij4KCQkJCTxpbWcgc3JjPSJ7JHJvb3R1cmx9L21vZHVsZXMveyRwYXJlbnRfbmFtZX0vaW1hZ2VzL3NjcmVlbnNob3RzL2N1c3RvbV9maWVsZHNfdGh1bWIuanBnIiBhbHQ9IkNyZWF0aW5nIGN1c3RvbSBmaWVsZCBkZWZpbml0aW9uIiAvPgoJCTwvYT4KCTwvZGl2PgoJPGRpdiBpZD0iY2F0ZWdvcmllc19jIj4KCQl7JG1vZC0+TW9kTGFuZygnaGVscF9jYXRlZ29yaWVzJyl9Cgk8L2Rpdj4KICA8ZGl2IGlkPSJ0ZW1wbGF0ZXNfYyI+CgkJeyR0ZW1wbGF0ZXNfdGV4dH0KPHByZSBjbGFzcz0iY29kZSI+Cjxjb2RlPgp7bGl0ZXJhbH0Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1pdGVtfQoJeyRpdGVtLT5maWVsZGRlZnMucG9zaXRpb24udmFsdWV8Y21zX2VzY2FwZX0mbHQ7YnIgLyZndDsKey9mb3JlYWNofQp7L2xpdGVyYWx9Cgp7bGl0ZXJhbH0Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1pdGVtfQoJeyRpdGVtLT5wb3NpdGlvbnxjbXNfZXNjYXBlfSZsdDticiAvJmd0Owp7L2ZvcmVhY2h9CnsvbGl0ZXJhbH0KPC9jb2RlPgoKPC9wcmU+CgkJeyRtb2QtPk1vZExhbmcoJ2hlbHBfdGVtcGxhdGVzX2NhdGVnb3JpZXMnKX0KPHByZSBjbGFzcz0iY29kZSI+Cjxjb2RlPgp7bGl0ZXJhbH0Ke2ZvcmVhY2ggZnJvbT0kY2F0ZWdvcmllcyBpdGVtPWNhdGVnb3J5fQoJeyRjYXRlZ29yeS0+bmFtZX0mbHQ7YnIgLyZndDsKCXskY2F0ZWdvcnktPmFsaWFzfSZsdDticiAvJmd0OwoJeyRjYXRlZ29yeS0+aWR9Jmx0O2JyIC8mZ3Q7CnsvZm9yZWFjaH0Key9saXRlcmFsfQo8L2NvZGU+CjwvcHJlPgoJPC9kaXY+Cgk8ZGl2IGlkPSJhYm91dF9jIj4KCQl7JG1vZC0+TW9kTGFuZygnaGVscF9hYm91dCcpfQoJPC9kaXY+ICAKPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/framework/templates/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/framework/templates/itemtab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGNvdW50KCRpdGVtcykgPiAwfQo8ZGl2IGNsYXNzPSJpdGVtLXNlYXJjaCI+Cjxmb3JtIGlkPSJxdWlja3NlYXJjaF9mb3JtIj4gCgk8bGFiZWwgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygnc2VhcmNoJyl9IHskdGl0bGVfcGx1cmFsfTogPC9sYWJlbD4KCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic2VhcmNoIiB2YWx1ZT0iIiBpZD0iaXRlbV9zZWFyY2giIHBsYWNlaG9sZGVyPSJ7JG1vZC0+TW9kTGFuZygnc2VhcmNoZm9yJyl9IHskdGl0bGV9IiAvPiAKPC9mb3JtPgkKPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9eyRpbXBvcnRsaW5rfXskZXhwb3J0bGlua308L2Rpdj4KPGRpdiBjbGFzcz0iY2xlYXIiPjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlc2hvd3Jvd3MiPnskcGFnaW5hdGlvbn08L2Rpdj4KPHRhYmxlIGlkPSJzb3J0YWJsZV9pdGVtIiBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSB7JHRoZW1lT2JqZWN0LT50aGVtZU5hbWV9Ij4KCTx0aGVhZD4KCQk8dHIgY2xhc3M9InRvcCI+CgkJCTx0aD57JHRpdGxlfTwvdGg+CgkJCTx0aD57JG1vZC0+TW9kTGFuZygnYWxpYXMnKX08L3RoPgoJCQk8dGg+eyRtb2QtPk1vZExhbmcoJ2NhdGVnb3J5Jyl9PC90aD4KCQkJe2ZvcmVhY2ggZnJvbT0kaXRlbXMuMC0+ZmllbGRkZWZzIGl0ZW09ZmllbGRkZWZ9CgkJCTx0aD57JGZpZWxkZGVmLm5hbWV9PC90aD4KCQkJey9mb3JlYWNofQoJCQl7aWYgaXNzZXQoJGl0ZW1zLjAtPmNyZWF0ZV90aW1lKX08dGg+eyRtb2QtPk1vZExhbmcoJ2NyZWF0ZV90aW1lJyl9PC90aD57L2lmfQoJCQl7aWYgaXNzZXQoJGl0ZW1zLjAtPnN0YXJ0X3RpbWUpfTx0aD57JG1vZC0+TW9kTGFuZygnc3RhcnRfdGltZScpfTwvdGg+ey9pZn0KCQkJe2lmIGlzc2V0KCRpdGVtcy4wLT5lbmRfdGltZSl9PHRoPnskbW9kLT5Nb2RMYW5nKCdlbmRfdGltZScpfTwvdGg+ey9pZn0KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4KCQkJPHRoIHRpdGxlPSJ7JG1vZC0+TW9kTGFuZygnc2VsZWN0X2FsbCcpfSIgY2xhc3M9InBhZ2VpY29uIG5vLXNvcnQiPjxpbnB1dCBpZD0iY2hlY2tfYWxsX2l0ZW0iIHR5cGU9ImNoZWNrYm94IiAvPjwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHkgY2xhc3M9ImNvbnRlbnQiIHdpZHRoPSIxMDAlIj4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KICAgIHtjeWNsZSB2YWx1ZXM9InJvdzEscm93MiIgYXNzaWduPSdyb3djbGFzcyd9CgkJPHRyIGlkPSJpdGVtX3skZW50cnktPml0ZW1faWR9IiBjbGFzcz0ieyRyb3djbGFzc30iIHN0eWxlPSJjdXJzb3I6IG1vdmU7Ij4KCQkJPHRkPnskZW50cnktPnRpdGxlfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5hbGlhc308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+Y2F0ZWdvcmllc19uYW1lc3xpbXBsb2RlOicsICd9PC90ZD4KCQkJe2ZvcmVhY2ggZnJvbT0kZW50cnktPmZpZWxkZGVmcyBpdGVtPWZpZWxkZGVmfQoJCQk8dGQ+eyRmaWVsZGRlZi0+UmVuZGVyRm9yQWRtaW5MaXN0aW5nKCRhY3Rpb25pZCwgJHJldHVybmlkKX08L3RkPgoJCQl7L2ZvcmVhY2h9CgkJCXtpZiBpc3NldCgkaXRlbXMuMC0+Y3JlYXRlX3RpbWUpfTx0ZD57JGVudHJ5LT5jcmVhdGVfdGltZX08L3RkPnsvaWZ9CgkJCXtpZiBpc3NldCgkaXRlbXMuMC0+c3RhcnRfdGltZSl9PHRkPnskZW50cnktPnN0YXJ0X3RpbWV9PC90ZD57L2lmfQoJCQl7aWYgaXNzZXQoJGl0ZW1zLjAtPmVuZF90aW1lKX08dGQ+eyRlbnRyeS0+ZW5kX3RpbWV9PC90ZD57L2lmfQoJCQk8dGQgY2xhc3M9ImluaXQtYWpheC10b2dnbGUgYXBwcm92ZS1pdGVtIj57JGVudHJ5LT5hcHByb3ZlfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua308L3RkPgoJCQk8dGQgY2xhc3M9ImluaXQtYWpheC1kZWxldGUiPnskZW50cnktPmRlbGV0ZX08L3RkPgoJCQk8dGQgY2xhc3M9Iml0ZW0tbWFzcy1hY3Rpb24iPnskZW50cnktPnNlbGVjdH08L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CjxkaXYgY2xhc3M9InBhZ2VzaG93cm93cyI+eyRwYWdpbmF0aW9ufTwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyIgc3R5bGU9ImZsb2F0OnJpZ2h0OyI+CjxzZWxlY3QgaWQ9Imxpc3RpdDJfaXRlbV9tYXNzX2FjdGlvbiI+Cgk8b3B0aW9uIHZhbHVlPSIiPnskbW9kLT5Nb2RMYW5nKCdzZWxlY3Rfb25lJyl9PC9vcHRpb24+Cgk8b3B0aW9uIHZhbHVlPSJkZWxldGUiPkRlbGV0ZTwvb3B0aW9uPgoJPG9wdGlvbiB2YWx1ZT0iYXBwcm92ZSI+VG9nZ2xlIGFwcHJvdmU8L29wdGlvbj4KPC9zZWxlY3Q+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyIgc3R5bGU9ImZsb2F0OnJpZ2h0OyI+eyRzdWJtaXRvcmRlcn08L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9eyRpbXBvcnRsaW5rfXskZXhwb3J0bGlua308L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/framework/templates/optiontab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxmaWVsZHNldD4KCTxsZWdlbmQ+eyRtb2QtPk1vZExhbmcoJ21vZHVsZV9vcHRpb25zJyl9PC9sZWdlbmQ+Cgk8ZGl2IGNsYXNzPSJwYWdld2FybmluZyI+CgkJPGgzPnskbW9kLT5Nb2RMYW5nKCdub3RpY2UnKX08L2gzPgoJCTxwPnskbW9kLT5Nb2RMYW5nKCdvcHRpb25zX25vdGljZScpfTwvcD4KCTwvZGl2PgkKICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2ZyaWVuZGx5bmFtZScpfTo8L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mcmllbmRseW5hbWV9PC9wPgogICAgPC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ3Byb21wdF9tb2RkZXNjcmlwdGlvbicpfTo8L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9tb2RkZXNjcmlwdGlvbn08L3A+CiAgICA8L2Rpdj4gICAgICAKICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2FkbWluc2VjdGlvbicpfTo8L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hZG1pbnNlY3Rpb259PC9wPgogICAgPC9kaXY+CjwvZmllbGRzZXQ+IAo8ZmllbGRzZXQ+CiAgICA8bGVnZW5kPnskbW9kLT5Nb2RMYW5nKCdpdGVtc19vcHRpb25zJyl9PC9sZWdlbmQ+ICAgICAgICAgICAKICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2l0ZW1fdGl0bGUnKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfaXRlbV90aXRsZX08L3A+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2l0ZW1fc2luZ3VsYXInKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfaXRlbV9zaW5ndWxhcn08L3A+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2l0ZW1fcGx1cmFsJyl9OjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2l0ZW1fcGx1cmFsfTwvcD4KICAgIDwvZGl2PgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdwcm9tcHRfY3JlYXRlX2RhdGUnKX08L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9jcmVhdGVfZGF0ZX08L3A+CiAgICA8L2Rpdj4gICAgCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ3Byb21wdF9pdGVtX2NvbHMnKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfaXRlbV9jb2xzfTwvcD4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdwcm9tcHRfaXRlbXNfcGVyX3BhZ2UnKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfaXRlbXNfcGVyX3BhZ2V9PC9wPgogICAgPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPk1vZExhbmcoJ3RleHRfc29ydG9yZGVyJyl9OjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NvcnRvcmRlcn08L3A+CiAgICA8L2Rpdj4gICAgIAo8L2ZpZWxkc2V0Pgo8ZmllbGRzZXQ+Cgk8bGVnZW5kPnskbW9kLT5Nb2RMYW5nKCd1cmxfb3B0aW9ucycpfTwvbGVnZW5kPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdwcm9tcHRfdXJsX3ByZWZpeCcpfTo8L3A+CiAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF91cmxfcHJlZml4fTwvcD4KICAgIDwvZGl2PiAKCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X3N1YmNhdGVnb3J5Jyl9OjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3N1YmNhdGVnb3J5fTwvcD4KICAgIDwvZGl2PgkKCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2Rpc3BsYXlfaW5saW5lJyl9OjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2Rpc3BsYXlfaW5saW5lfTwvcD4KICAgIDwvZGl2Pgo8L2ZpZWxkc2V0PgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KCQkJeyRzdWJtaXR9CgkJPC9wPgogICAgPC9kaXY+Cgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/framework/templates/templatetab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/e2ZvcmVhY2ggZnJvbT0kaXRlbXMga2V5PXNlY3Rpb24gaXRlbT10ZW1wbGF0ZXN9CgoJPGZpZWxkc2V0PgoJCXtjYXB0dXJlIGFzc2lnbj0nc2VjdGlvbl9sYW5nJ317JHNlY3Rpb259dGVtcGxhdGVzey9jYXB0dXJlfQoJCTxsZWdlbmQ+eyRtb2QtPk1vZExhbmcoJHNlY3Rpb25fbGFuZyl9PC9sZWdlbmQ+CgoJCXtpZiBjb3VudCgkdGVtcGxhdGVzKSA+IDB9CgkJPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCQkJPHRoZWFkPgoJCQkJPHRyPgoJCQkJCTx0aD57JG1vZC0+TW9kTGFuZygndGVtcGxhdGUnKX08L3RoPgkJCQkKCQkJCQk8dGggY2xhc3M9InBhZ2VpY29uIj57J2RlZmF1bHQnfGxhbmd9PC90aD4KCQkJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHk+CgkJCXtmb3JlYWNoIGZyb209JHRlbXBsYXRlcyBpdGVtPWVudHJ5fQoJCQkJPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLHJvdzInIG5hbWU9J3N1bW1hcnknfSI+CgkJCQkJPHRkPnskZW50cnktPmxpbmt9PC90ZD4KCQkJCQk8dGQ+eyRlbnRyeS0+ZGVmYXVsdH08L3RkPgoJCQkJCTx0ZD57JGVudHJ5LT5lZGl0fTwvdGQ+CgkJCQkJPHRkIGNsYXNzPSJpbml0LWFqYXgtZGVsZXRlIj57JGVudHJ5LT5kZWxldGV8ZGVmYXVsdDonJ308L3RkPgoJCQkJPC90cj4KCQkJey9mb3JlYWNofQoJCQk8L3Rib2R5PgoJCTwvdGFibGU+CgkJey9pZn0KCgkJPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPnskYWRkbGlua3MuJHNlY3Rpb259PC9kaXY+Cgk8L2ZpZWxkc2V0PgkKCQp7L2ZvcmVhY2h9]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/colorbox/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/colorbox/controls.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAH0AAAAyCAMAAABGUCSuAAAAS1BMVEW/v7+fn5/v7+////+Hh4cPDw8/Pz9/f3/f39+AgIAAAADPz8+Xl5e3t7dvb2+vr6/n5+f39/cvLy+np6ePj4/Hx8dfX1/X19dPT08As0YMAAABqklEQVR4Xu3V2WrsMAwAUC3enX2W9v+/9HrChNKxzERQeh9qPSRgER0UIgX4f0bXu36TgduqA8IiU4QIfEMkSV+HKANxEPh1MA9kMXUSYhb1ECMyxhgEfTGxpccC1UQ53R8CITUq9VzwiIiX78iMiCVRdbO7Jj8ui6DHy6rRIR7x0vcRo8THGj9qDXReH2NLf8cvLOvR0Gkdfl4fzuuc3+lZ+eZx5bP6UWwEgJdKAONuSLiB5lc3KyeOhvbEDaScuMxKnde5oYvjs5jnthF6N4G1envTypuL6LhVCrEYBPDBHwDU/3Fd/+3oete73vWrDFxJWTLLVHDO89W5IOm0JRlIm8DTZh9ItnXSJxR1SMmxSwkEPdvU0lOBaqKc7g95ITUpdSx4cs59fkfu5agkqm521+LjkgU9fZJG9+mIl76PmCQ+1fhRawvn9Sm19Hd8ZllPNpzW/c/r23md8Z2OyjfviM/qR7HJe/9SyftpNyTc+uZXd1dOXNjaE7cF5cQhK3Wme0MXxyfb57YRerfAWr29aVE8DeG4VUpgMYL3M8/eh7/4j+t617v+DxheWmCszl0eAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/icon.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhMAAwAPf/AHHE2gC87GXJ5FfA2xK98kbK83zN4gC/65Dg+d3s8IzS5ErG6W3K41PG5iO+7JfK2AC672S0yVyswrfa5Mvk67fh7FvK6XnK33jN4WLG4lmzzTXB6W290nHL4/D5/Bu97mnJ5Bq13KbR3jS+43a5yyK43/r9/WGtwuP0+WTD3Tury4HL3+r09jHB6qne7+z2+CG64S7B6P3+/lzI5TjC6VS61hSs0wC18FXI6krL7UPC5AOx2yLA6YW+zXbT65XX6Sy74WDI5VLO9HvY9EutyX7S5qrl90upxXnN4Ti11nrM4gC27ieszOTx9U210RinyXbI3gi58HbM4lW30ybA8BvA6Q603bLh8QCiymu5zg26712/29Lx+nTM4nrP5T3D6KDh83XL4TTA5kCmxAC56k7F52nP6gG04nzE2B7A8pXZ602+3Nz1/IPC1IfS5GLM6JvS4orV6gS58XHD2WyyxQKhxnLN5ha87xPA6QCs3JzZ6GrJ42nS80XE6Pb8/oTR4z3A5VjH5un4/Lrm8J/M2VKqw2rH4m3N5+z4+9bp7+/5/Lbj8cPf543d9SnB6SvA7UPE6nXF23LL4lu61QCq0njM4gS770HD6ErF527D2VS+3BG77xOy2gmu1UmnwkmwznnL4HbH3XHB1wm/6VnC4B2x1/X6+/H4+gq68DbG6l3E4oPQ4kjD5VW72C3C7+b3/fD3+QC65Mzq8sbu+ii/7A7A6Yzf+WzL5Ae97dTv9hi/8ga/6XXO5WnM51HA3kauyw+lygCfx6zf8InP43fM4gujxhS77zbE7UTH7YjD1M7w+pHU5pne7/P7/V3H5T/I8KzX423A1jugvAy950Opx2KwxqTc7DPD7WbI5HDP6k/I6gi+7A2/6g687rTW3wanzev4+zvE7Nnw9YjI24DQ40a52XC/1KLf8LLk8rLm9LTn9ASw2A+v2UDE7GfM58Dp9Lvq9oLa9KDV5ILc+GW4zkrB4m/H4GrB2IXY7mvF3W/E2XvN4QC48QC58v///////yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MThCRUI5MEY5MkZFRTExMTg1RjQ5OTBCMjZFMjNFOTMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDhCMUYxNkZGRTk1MTFFMUI4RUJDNUQyQjU1MERDMDUiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDhCMUYxNkVGRTk1MTFFMUI4RUJDNUQyQjU1MERDMDUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgSWxsdXN0cmF0b3IgQ1M1Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZThlNjYyZDUtYzYxMC00ZmQzLWFhNDUtNDg4NGVhODNkOWE0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjE4QkVCOTBGOTJGRUUxMTE4NUY0OTkwQjI2RTIzRTkzIi8+IDxkYzp0aXRsZT4gPHJkZjpBbHQ+IDxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+TGlzdEl0RXh0ZW5kZWQtbG9nby1pY29uLW9rPC9yZGY6bGk+IDwvcmRmOkFsdD4gPC9kYzp0aXRsZT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4B//79/Pv6+fj3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]]></data>
	</file>
	<file>
	  <filename>/images/icon.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-anim_basic_16x16.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_diagonals-thick_18_b81900_40x40.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAy0lEQVRYhe3XQQrCMBSE4d8svIH0Ft5/5X3EG7jRTYUYk5ekackgb5alDF8LbZjT7bq8SPJ83NNLPzlfluo9e/SFPctyGe37AqrhIAIq4mAFquIAgjIOMh/JSNkRD2sCZ+PAeIMKOCgAVXCQASrhIAGq4SACKuJgBariAIIyDhp+1D1lRzxsE3DmcVgFzj6rTeBsHBhABRwUgCo48E3im6Sv7BPfJFvLfJOMllnxTdJSlotvkp6yOL5JtpSBb5Kxstb4JimV1fKXm+QNcHvyUkD/BIAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_diagonals-thick_20_666666_40x40.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAwklEQVRYhe3XXQqDMBhE0dtsIKvNwrOC+mIhTfNrlAzlm0eR4ShomFcI4U2WGGN+6Sfe++49d/S5O8tKWe37AqrhIAEq4uAEquIAnDIOCh/JStkTD9sE7sZB4w0q4KACVMFBAaiEgwyohoMEqIiDE6iKA3DKOBj4Uc+UPfGwQ8Cdx2EXuPusbgJ346ABVMBBBaiCA9sktknmyj6xTXK1zDbJalkrtklGykqxTTJTlsY2yZUysE2yVjYa2yS1sl7+cpMcegPyrqBRcaoAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_flat_10_000000_40x100.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACgAAABkCAYAAAD0ZHJ6AAAAeUlEQVRoge3OMQHAIBAAsQf/nlsJDDfAkCjImplvHrZvB04EK8FKsBKsBCvBSrASrAQrwUqwEqwEK8FKsBKsBCvBSrASrAQrwUqwEqwEK8FKsBKsBCvBSrASrAQrwUqwEqwEK8FKsBKsBCvBSrASrAQrwUqwEqwEqx92LQHHRpDUNwAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_glass_65_ffffff_1x400.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAAMElEQVQ4je3LIQ4AIBTD0O3f/8wrFgmKhMy8pKJKwkhSKeVbbGuAPU9f4PIopTxgAeS0DRtI4yK0AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_glass_100_f6f6f6_1x400.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAAL0lEQVQ4je3HsQ0AIBDDwIT9F/4igpYiAyDk5mRrZvaSJAD4liT32u7bqi0APMcBiYQKDwcroFAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_glass_100_fdf5ce_1x400.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAAGQCAYAAABvWArbAAAARElEQVQ4jWP4+/PhfyYGBgaGUWKUGCWGL/HnLQMTAwMjjGBkYmBiYGBiYGJgZEZlMcNlYRKMCMUQAwbcM6PEKDFKYCEAGrQJAcbElNQAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_gloss-wave_35_f6a828_500x100.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_highlight-soft_75_ffe45c_1x100.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAASElEQVQYldWPwQmAQBADJ+m/DfuzgN2ND/WjX+HwMzAQBkL2LQb4EZLCZLAYnDSWGpO6lBSGwjy1sHjvRN+pM1oYBmv5349xADIyLQUayPX/AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-bg_highlight-soft_100_eeeeee_1x100.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAAIUlEQVQYlWP48ePHfyYGBgaGIUT8//8fO5cSFn6J4UQAAJSgIpAFCJPdAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-icons_228ef1_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-icons_222222_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-icons_ef8c08_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/jqueryui/ui-icons_ffd27a_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEX80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nz80nzkx5/eAAAATnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWNqa2zKP2fJO8KBgKPo2KVoa9s351GPm5+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>/images/jqueryui/ui-icons_ffffff_256x240.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAQAAAADwCAMAAADYSUr5AAAA7VBMVEX8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vz8/vywC3+8AAAATnRSTlMAGBAyBAhQv4OZLiJUcEBmYBoSzQwgPBZCSEoeWiYwUiyFNIeBw2rJz8c4RBy9uXyrtaWNqa2zKP2fJO8KBgKPo2KVoa9s351GPm5+kWho0kj9AAAPhUlEQVR4nO1djWLbthEGyUiq5YSSLXtp7FpLOmfzkmxr126tmi2p03RJ1/Xe/3EGgARxPyAgRbIk2/hkSz4CJO4+HsE7AJSVysjI2AMUUOxahZ2iANhzBtZWr4BoIRSYAVN5u4QwDwQDRbcwfUi5KS3wFuDmFnQLa4Dtb//cqktwD5QEFFwfUs7PoCCA7y4bEJVFizcIob8KmhAplwwqVjt+9FBl3uINQniwEiryEyw9JHqGpQdEFNi+B4QQ7QOiHhysIPoAxUqxvdvvA9K42bsAv4S2fxfYOe57IJSRkZGRkZGxx7jxSHDHcRBXQMTyIjInBgHwBJ/bEx8PEANC+uhbpSSggCBAVODVabpI1S/k4WLZpTn6NpMhoX9Y40hxYERFpMcqUs4AloCtDQdID1YhnyXZ2hLjAYWiO9Dy1PDB7tPhIqLx+uMB8grZaR+Qxl2/C2RkZGRkZGRk7A7rBf7J0DR5/LUTjzUPIPSPGvQJiVJiB7kcQCiUOJrcFNtDZIf2xarQ3aGvLNxAVIFAabz90BFiBIlycTBhgWwOWCH0FLYHlPqwHaCvcIn2ZbosCevfPTRiFFcgvHukCjWwrc3GrGh1fsAof8EaUReKXkCB4/MzFNo97qLpFiKFYv/kNR5YQxQbQEofkZ2OuEOHqqT6gFTpru8CN7x/+jaZkZGRkZGRcV+x/rLUNcMMqUAscgnFocmpqkTzqymwVAPxfJ5PnIUUQOUKT04tEdWZyv3JCQSn96WS4pD97QfyW25A7NhSAbyhmVj0FEltA4vdiygBibXhoUYgykCUP7HwPTDeEqAIcHVMkZg7Zx4k0uFANs63hPQXCoRLAwdgGsr9Az7Qv7sgQGgg1aPl/BJLExBWgG4RFRLFImGmIquPC/klEGyCG0AuAXaJJC+B8FVe9NYQDEcXB8g6AQcjYJ1goJIggHWCrFR0S6kRHN5+4BzFi8NaoN35NRxUvL+JJdZr7PV4wK6fj8nIyMjIyNhr3OxdXAYq7FHZwB6bDSzSh4sF0utChqo0NAvaT1hLzXwFinmCzmeDucEQK18TTaQoFgP7bNC+RZ4OT4T6gQogDFYk+1QxQlj19QGSAWKiLYp8P0Ag1Gbz1ULfWHLg9iUnQNK5QQJcukm04blKLH2GgEJCY+HzXAZWCvHKco3Bp6MIaCjSXXRJyOxeqhnzEaF93MfFGW/O16ZvDL5TM4MJIjujz/cHypkQuuzRwWJ93BKdIt+wCRAPl9kpe2Ikkb2mFgGlxh/i40d3EHfdvoyMjIyMu43ylt/IAmGHnN5iIt7wKfbv01RAcJqFRl9lcjYQSnbQqKgC4fYOwSJt6N6trE0twZ9kN/PqNpTQeICvr4TLsDYC06U7BMjshS+v1/aT7IwQYD5LcgRQXMT2FrBfBLjZ6151jDElk9tPFfpUgk2yregusX25BJbwAFEfM+YI6vGAti4bTtizB+TjfQCrERyhKb2X8D6A9wX75P4t4neBYJeP6pdhg/gQl8MWvytzeSTjgOQBynQdh/iXKdxOrGJ/RkZGRsb9QmXihGr5+g8GGg9uTh+KoVZuNIzV+CwRucFBEyr1mVjx4irOxwM1BhirB6Q+2eNQi4eqR+aF6mELtoMzCR7V9RAFe/ZvQogNiyY8FPSUTFsLp8TeTmMui5mtw7bcaT0Yw2AA4wFRQIlkgq+1DQrNhkmoxS5Jq+u6bMAIGRECEANgXHTgWzwgBOhDH2l0oTQ4D8D5NMktBgNywAEMjo8rwATMZrPY7JGxBoJCkIBDQiAY09EGTUiBCWkUpISfGPR5AAwBfZiG2z7Ayc1yeKTxid39xBNwfHr4O0LA48ePFTvhYrF1r4tyAoz9n2MCqEuBtp/6GDR0oAYfG/R6wJExHYZHfhygsv7fEWCOj4bYmsP5A+pL4MkTfAnMlD4F+r3bobKvTyTA2P/w7PN+Agq2QW8piqMCpTBwenoKvX0AHGkGtP2YAPvTEWA7QUTAudn7/NxtOG46wWNmDtpBEkBzN7rBEvAFHp+YTB/q97qPAN4gHFqgBi8uLsC7qPCA6mg41G/+ErByPwEXDdoNxRhOx+M5jPEzQugS0ht+b1/Y3gEnYMAIAOIBE29/hIDucE8tmMsNOgK4B1RHFu4UCRlMHzv0xzcajcfdXWDs2h8TArBCkoDUJYDLmz6w7ip3BFS0ve5wTRwAn6keMA9I3QYbfSZ0DKbyt+7OXjGI1idPcfNyAyfAMlCrzaGqphYrxHocLHRJVycnfGUcbtT+jIyMjIw9x7Nn8fJSzG0TmFtO8rZT+XT3S3ub+tKJbbLd5diTVp50+zahyeHSslJ/YPrU0fuazrZO2CZ92/ZCCVXlGRiZKPJyPPRxyIFWeXLQBXJBKiq/3divEAN6ZwM200Qjm7EJBZeWm/PRWVCbYK7s7u2l4XaCz+lzgOfMfhMonXr7TWzeZb98dbgIzBT8Ub8eYYUqfZ4rVJ/MDbIDgPqTulJ/xvntWAtjIisqnwxOkGz0n077FARoY79GdA6HPE4rOy196NiMWHTZlSSApcOgXpy/fHV2joaNKu3ffsAnRcBf4K/6NcIG6tIxk3HyoXPjASqfUgXbYN5PzpL2njkR9QMjeDTVHDTCgRuxOegjoO0FvKzP/t/gmVdI24+G7NIe8JX6Wv3dDyldMA+4YB5wwTygtd+dwRqaTqrLb1l73zTSN52CNpnHuQOYPsDblybgxfkXh/oVtr+N1DEBJdhRJyd/Bd/q1z+cbNrD17iVKyajcnv9arhOkRPgsruuD6DmNPwpDNrLw2CoTgHni4yALr0L29+tiKAEIPn868ejx//8rpWP3OEOl5On9OwpcQm0MhafP/ey8f1uvDNIgGLQG8z4YO99ENgg95etwv4uYJYY8fUGHYH6j6fscHFZMftlAl9i+9XL73X3N/n+ZStOzfVfRvYXhrbdKOpEgVQTg/wsDuDD3kwOfQNMTJ5y+/ltUDWLunyxnRF46IqlBzGMY4X7inggREFioIyMjIyMHWCIB6ZNKAcXseo3vLTQTkVE7348dlwJJSz0+wLfmi8BhZqfw3D4ww/wHVLnEd5/fgYvXsDZ3MlsvYUbbnDjDZ3MN3TJG4+bxjAaDl8TBri9qxEw1ccao2wTNAMLHo2f+sjrXwb/9qHoYqgPMBXJTVfOpmrZH23y6uvo0LHSyY6fHGwKfHJlAuMFvObjDYrIqxBgQi20h7Hd/nYVLmno+eaNUm/eeH2GCuopntnhBJAlI2AHo9CCh1I1QxUdAbqqGY9BBLwyc3W4wYVhvY8A4BoIc1l5M7vnPWphZW9/Ses3n37y9a0uGqFwFQZsQQbd386DogpgEk+dzynsAZMJXq8+ns9NeukJ0PYrNATGGefJQlhkLo7DTXr+y3bNiOsDvrXTz/C2q1DXZH84iRNwrP88Nj+u2DjYEE6RBxD9Knj16ujVHC67A7422o02RwD3gB+t7EblWvu9geOFxSnd3ROmT+nJyQkhoPlsxVONc/3TEdBos+jtA+ZzcwHgTvD1cDjaYCcItA8w9i88A8b+mqSjc6Pvqd998QguEQPmQMeo23ODN86+p0/bn1buBkT6+oBhNZ/PYY4ZAHYb3PRd4LkZmPX68NRtMZn4ASvdA+qf0jMA5MP9eeg28Nug9QiLnj5A33U1MAES6xHAUNpz/9zFAYE1gqQDMT3G6xI9pwdw/aIgKoHCS1YGlRnSq9yCjdXjgN3j+N27YyROHxmuNAeNKPpYuXIyIyMjYy0M8eros59MF/PT2c602T7eA7zvhJ9dr/vzDjXaLp4Yc5+0wllzxzHv3gdmMMM7/CcQzKgVBqYTmFn+Z+mKm8J7k0A5F/jgCfjQ1WBhQyiOqD0lYuqBb+AyzMw9Ha2G3m6c8qQx+AlqnIceQp+Sb6i9UyQWbhr54+AjnZ0VzW2TAN0DmBT6PWmc6jDBE2PK2u+nF43dyP7Q0t1pOcX2fdRvH0mF2Q4JqN35rnHjVIeaXfIAVyUuw/aHCCiJy9iF5l1621zweI8KZrPZ9iJdb7DXJ3US0OSrtZ10imt7wHY7QesAzUMz1oZ3noB3qFJ/H18j97FYuw8QDN4oeKf30osvcSW2ExLo+VcbuAuo/sUIm8fMG9xocO3Ea19J9gFYivnHJ2KnyfovZlgW3v6ySx32abQiIyMjIyPjhlFDTLxpwIgFMnTp6A3g4IDKNY+stkwAMAoIAbasxBXqUWneSAWTMjt50lTqT29rFjvXohjsDNm2YPXDFlICmrJOZ3t6tHm8AiEAl0sCeLIIorIRt+cFbew/QRsoAXb4o1XSfoywzm0FTMAoYBNvLyFu8v8HpLBtD1iKgC17wHb7AI6d9wFbvguAIGTHd4E9wG7jgIyMjIyM+434c2R3HeV/Ffx6jtZu6ijl8h59T655jhR+rdHzDOP6beABCheb8O8/WFXeOyzgf5oAhVYnKxP7CwaAf1afJu8bSrhS6tdaXeGnrRenOqOlz9d6QwYnA/3TLd+GE7qe3chA5YF5DfY0vK3adfOX/gyNp2BW25MHdxAB9qvRiiP3/XpQQFGYDU4+Mi///XumXG8pjvaUAOsBGlf4jJt+YYEzeEzAdw06F19R3juM7D1wita86GR0CKfDHgLuXCc4Bri6vMLdfjMc4VNSUNsdodo2xu/1+Xl/K5+az8jIyMhYG/z5gJTMF1GtKq/a3rpyCvz5gJTMl9GtKq/a3rpyCmfQ4WwZmS+kXFVetb115ST48wEf/AGcfG1iw+tWbpbS2vJ3nQxcVr3lH3z5h972FUTLzYpOVk7l5hD+eYcYwDcAnewOotrZ4OtrPDucqi/LRX0/RR4qx7Nn4U8g+qjffvuN6Gf+nC85vwauHjaYyubqvWYKY4VEfSUMitdnBCT1Ue63R5439m+OgCn6DroAAaHPVQxKth/wkJgHmG8bmQMsT0D6EjDfvhVRKO3ywOQUgRA7nmL1uawZmHf1k+DPBwQ6NdcJ+k6Md1LA5f5ONdhJ8vZ5J0vLHT99srkGOjmJbd/G1r2Nriqnse1AZt1AalU5jW2HsuuG0qvKGRkZGRkZGRG0gcONyXsP9v8D0/IdJADiBNiXl3327WRGgOL/9HC/0XwlIURkRhC4tz6Z/fu7fUf2gHvfB9z3u0BGRkZGRkbGplHcnkgguQoSqtUXuhbs/wPtMwqV0HUJAvj5vk32b8IDuL23yn7qAXZ5u32hbRX7d3o82Df1FZXvbh9QOfhyxldr/+3xgXU9oKmvsHyr7F/XA269/eveBXrsv7N9QALe/tvjA0kPWAXGbvebkbHn+D/J5nMcHzx1UAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/listit-extended-logo.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QMpaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzUgV2luZG93cyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozMTk4QkNCM0ZGMDkxMUUxOEU1MUNFM0E1NTU2OEI4NiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozMTk4QkNCNEZGMDkxMUUxOEU1MUNFM0E1NTU2OEI4NiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjMxOThCQ0IxRkYwOTExRTE4RTUxQ0UzQTU1NTY4Qjg2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjMxOThCQ0IyRkYwOTExRTE4RTUxQ0UzQTU1NTY4Qjg2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEB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]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/moduleui/ajax-loader-wide.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/banner.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAEAAABQCAYAAADYxx/bAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNXG14zYAAAAWdEVYdENyZWF0aW9uIFRpbWUAMTAvMTAvMzDEOp2NAAAAJ0lEQVQYlWP4+PHjfyYGBgYGpv///0MJNC6xYkSYQl9tpLt5wL0KAHD2rsaLVlOZAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/blank.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable_asc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable_asc_orange.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIABAPqABP///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDZGOUEzMTREMUM3MTFFMUFEODA5RDlGNDJCOTAzQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDZGOUEzMTVEMUM3MTFFMUFEODA5RDlGNDJCOTAzQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NkY5QTMxMkQxQzcxMUUxQUQ4MDlEOUY0MkI5MDNCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NkY5QTMxM0QxQzcxMUUxQUQ4MDlEOUY0MkI5MDNCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable_desc.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable_desc_orange.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAEAIABAPqABP///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTIwMkY2QTNEMUM3MTFFMUIyMDFGNUM2QjUyNkUzMTUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTIwMkY2QTREMUM3MTFFMUIyMDFGNUM2QjUyNkUzMTUiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1MjAyRjZBMUQxQzcxMUUxQjIwMUY1QzZCNTI2RTMxNSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo1MjAyRjZBMkQxQzcxMUUxQjIwMUY1QzZCNTI2RTMxNSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAAAEALAAAAAAVAAQAAAINjI+AywnaYnhUMopbAQA7]]></data>
	</file>
	<file>
	  <filename>/images/moduleui/sortable_orange.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhFQAJAIABAPqABP///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6M0FGRDg3ODhEMUM3MTFFMUJGNUVCNjJFRDBBRjg0QjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6M0FGRDg3ODlEMUM3MTFFMUJGNUVCNjJFRDBBRjg0QjkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozQUZEODc4NkQxQzcxMUUxQkY1RUI2MkVEMEFGODRCOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozQUZEODc4N0QxQzcxMUUxQkY1RUI2MkVEMEFGODRCOSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==]]></data>
	</file>
	<file>
	  <filename>/images/screenshots/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/screenshots/custom_fields_thumb.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QOeaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUM1ODA4QkUwRURCMTFFMkE4M0ZBMUU5Mjg3NjZCRDgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUM1ODA4QkYwRURCMTFFMkE4M0ZBMUU5Mjg3NjZCRDgiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkFDNTgwOEJEMEVEQjExRTJBODNGQTFFOTI4NzY2QkQ4Ii8+IDxkYzpjcmVhdG9yPiA8cmRmOlNlcT4gPHJkZjpsaT51bmlxdTM8L3JkZjpsaT4gPC9yZGY6U2VxPiA8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]]></data>
	</file>
	<file>
	  <filename>/images/screenshots/thumb_Add_FieldDef_Tab8.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QOeaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Qzk3N0FBQjUwRUM2MTFFMkJCNzZBQTJBODgyNDA2NjEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Qzk3N0FBQjYwRUM2MTFFMkJCNzZBQTJBODgyNDA2NjEiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkM5NzdBQUI0MEVDNjExRTJCQjc2QUEyQTg4MjQwNjYxIi8+IDxkYzpjcmVhdG9yPiA8cmRmOlNlcT4gPHJkZjpsaT51bmlxdTM8L3JkZjpsaT4gPC9yZGY6U2VxPiA8L2RjOmNyZWF0b3I+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+0ASFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAPHAFaAAMbJUccAgAAAgACADhCSU0EJQAAAAAAEPzhH4nIt8l4LzRiNAdYd+v/7gAOQWRvYmUAZMAAAAAB/9sAhAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAgICAgICAgICAgIDAwMDAwMDAwMDAQEBAQEBAQIBAQICAgECAgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwP/wAARCACIAMgDAREAAhEBAxEB/8QA0AABAAAHAQEBAQAAAAAAAAAAAAIDBAUGBwgJAQoLAQEBAAMBAQEBAAAAAAAAAAAAAQIDBQQGBwgQAAEDAgQCAwURDAUHDQEAAAIBAwQFBgAREgchEzEUCCKT01TUQVFh0XIjM5QVFtYXl1gJGQoyUrJTJDRV1ZZXGBpxkkNElZFjs2R0pCWBobFigtJzozVFJlYnKBEAAQMCBAIHBQYFBAMAAAAAAQARAgMEITESBUETUWFxkSLSBvBSolMHgaHhMkIUwdHxchWxYoIjM6Mk/9oADAMBAAIRAxEAPwDsG6e21WLSvZ6yGdrarWY0WXR4DdxQ5TjdPVJsOlyXn5TQUGQEVAGoqjAA48shWiTuF4YyjEyy9uxHbE5Ld9570XRZ1hfGQ1SkuaCLFflTLTgR6XDrsNqkxpRw2YSBWalUalLnSYJgSFDbRBdb7kFz1fh/pT6k77v+7beKlvS/xu43FxTnSAhCvZxpRny5TH7ipUqvOmY1SaUBASiWgzH9Z9Reg9p2bb74RrVBe2FCjONXxzo3Uqkoa4xPJhTptGYNMCrPUYyGqQII5jh/SA3RMuJilpszVGKe7QKvVXH5FQkMy2ptPosuuMRHOdb7cZtHG4axXA4mL6qQqQBkf7hoK/JXxZWuD9Ibd0sOS5szKYnE5LcZU6jNAJMSBIaOUrMJ23m5KOpCeEUJXFEHF5hog+t4aT9iq7Poe8UqrUWkVR+LHiO1WmQKicNdJlDWfEZldUNxRHmuRedyyNEFDIVVBFFyTRSFcRPPMDPUW0ggaX8OZJdszkTkBktlTkuOSJiLB9RBLtjiAAz5BnbNXlnd2ey000j5IjTYNonMJMkbFBRMs+CIiY2rWpnxw1Dxgu+l6eCJ8cNQ8YLvpengifHDUPGC76Xp4Inxw1Dxgu+l6eCJ8cNQ8YLvpengifHDUPGC76Xp4Inxw1Dxgu+l6eCJ8cNQ8YLvpengix6Rv7WmJrsQKFcMptuS1GSdHGOsRxHFZRZDauzGnCjNc7MjQckECXpFUSAk4AH2f+OH2hXiBhj7fircPaPrK89FtS9hcZYlOoK0+OrbxxozklI7D6VJQcdkoHLa8wniQeHTinBRsHOX+nap0XtE1qU+Mb3sXhGM1IUcmRoDEVCSLJljzZaVZxhoHBjctCVchedbAtKlwgLh2KyMSC2Bx4KKR2h60xMfiDbV3yhYMg65FiwlhvaSdFDYdkVWOTrbgtakJByyIc8s8UY5KAP0Dt7H+/goJPaLq8Z11v3s3pKFp02kfh05l9lzInRBxtTqLLptOI1nqQNIoQ5rxRcAH7kYuRxCj/iFrBQIc4Lau0nJbjrZ05yJGaqMTlSji8yS2dQWODZqHNEldRCYVDTiunFbB+CEMWVA72k6yxo12ZfjiHHB9Oq0yJJ0kTSunHcQaoKg+3loyXgTioiLxzxBiH4OhiRmp7/aNrDDkkPele74sOG227Gp8JwJaAAOa4wlVW3iEhJURVFE1io555IsfFsVYx1DMAkf6qpjdoSrSJ4wjty7YrbjJPBPkwY4QUyhtzOS84NRJxh9Vc5OSio88VDVwVUoxWPAHpVM72jau2ekLUvR9vXHBX26dHFv19gH9YA7UQkEDOvlmqgOl1FFckTPAllW6woW+0lWBVhxbOvzun3WlAaXDNwFjuKCmQBV1JGHVRFA+gwVCHNM8pHEY4Ix49f3L84730tG4kKNZT7u32zlOgXo5WmYbs7cuv8ALt5mi1FynId0twGKjUKM3NQENpXY4qQl0LxVONt2+2+5btuG0U6NzTq7fOlGU50qkKdTmQ1g0ZyiI1RHGEzCUgJDMOy7F/tNxt+2WO6ValvOlfQqSjCFSE6lPlzESKsIyMqZk4lETjEmJwBIKhkfSv3vDJZbdpdmqQ+5JhRSdgbuV0pjiSxFUkuuLRGH1hQssnzMvWlToXhn6LfYtltNyq7ra2dpS3WuGqV40qYqzGP56gjrlli5xwdeWrvm7XNjT224ubqe20sYUpVJmnD+2BOkEdAGGKtNy/TCbgW07GYKwdmbhWSJOa7U3LuauR2AFuM62Up4KawDJvc9UEF9cEmjQhHJM+iJiRIAOHURxb8exeESPHBYuv009+EYuFs5YROAhIDhXdcyuAh6eYgGsTUCOaE1Ii5FkmfQmMnV1FRJ9NPfiKi/E1YBLq1d1dtzFmuefH8lz44ihJKvlt/TIXjcZ1lHrA2Zt5aTQajXBWv39c8Maq/BBDboVJ5dPfV+sTyXSyB6G+C6jTgi8bed5OzRtpC0vLv9xdU6P/zwE+UJljWquRppQ/UQ56l1dp2obrKuDc2ttyLedX/umYcwwypU2B1VJ/pBYYZrHA+mwvIyBF2k24ATIA1neNxoIalRCNzKKS6QQs1yRVRPMXHZ4suQ7h1m1W+l8uulU2RUm7e7O9Z5BqIU2i7m3jKrEpOcy0Bx4LtvRgISB7mLm6mkALPukQVpDAHAv0Y+3SrHxdWD4+2Z6FjtK+mdu+puk27tztFR0BUQnavfV0MNrn95yKbINxUXpRE4ebljnX19OyAMLa5uCRlSjGTduqUQO/Hgujt+3076RFS5traMeNaUog9mmEye77lXzfpj7shi4bdlbIT+W2TojC3CuwnHhQVIQZB6jtKrx6VRBLSueSL0pjz0t2q1JxhOxv6ZkQHlTiwcs8jGoWAzJD4ZL119lp0YylC/2+oIxfw1JvLB2iJUw5OQBbHqIKxv67G8v3Rbc/tlcPk2OwuGn12N5/ui25/bK4fJsET67G8/3Rbc/tlcPk2CJ9djef7otuf2yuHybBE+uxvP90W3P7ZXD5NgifXY3n+6Lbn9srh8mwRPrsbz/dFtz+2Vw+TYIn12N5/ui25/bK4fJsET67G8/wB0W3P7ZXD5NgifXY3n+6Lbn9srh8mwRffrr70/dDt1+2NxeS4IsplfTDXvFs+lXiu3mzbwVary6QNvx9wa87cUJYgSCWbPpyRuZHhudX4EqZaXWVzXmZDwbffo3HqG49Oi1vIzt7eNU15UyLaYlpaFOplKY1YgYvGoCPDj2a+yzobFQ343NrKFevKnyIzBrw06vFOGYiWcHJpQLvJhKrf0xt5UWj2zV/i92gqa3JAkzlp1Mvu45FQoqRnQa6tWGeqJ1eS4pqiD06gNOKIhFu27dzuF/eWJtrmj+0qiGupHTCq4J1Uj+qODv0GOTssNw2obfZWl7+4t6wuqZnopyedJmGmoP0nHvBGLOpM/6ZG+YVXhUdrbHaaoPTgp/LlQ79r3ue05PUQRuRMejNMMJGNV5hkqCIZEWnNUS2m707rbqu5So3FKnS5jxnAipIUw7wgHJ1ZRGZlgHDE43O1VLe/p7dCrQqVKmhpwmDTGss0pFgNP6nwAxLcL1bn0vl63Le8azqZYezIrIdkizcNQv+t0u3ySFAeqBkU+eMeM2LisKyCk4gm4qaVLNM/Fu3qSOy+nJeoryzvJRgIaqFOnKpX8c4wAFOAlItqEpMDpi+oBivbtfp87tv8AHYba6tImRkBXqVI06HggZkmc5RiMtIeXilkS4C8WLltKyaVHsurJfm21RcvkalLqlOp3XJNSsByMTZNxb1YYgOvRpEo3tIckXclAly0pnjLad/ud03XcNsrbdfWlKwqxhCvWjEUboS1eO3IJMoR04mQBxCw3XY6O17ZY7lSvrO6q3tMylRoyJq25DNCuCAIyL4AE5FSHLPshllJB7l7PuIjz7DkaK/dEqYJMuI2DwMhZotOxZKGJg4jiLo1KSCoqmPoZHTFxiej+vszL59y7aT7e33FXZvbywiKSLm82wzfJZcMS67ergyXmyjao8dR2+zXWL5K24WkDVokzRMlWyLDDFlSWDjL29vtUqJYNhSorLx7v7HQ3XAcccizJV4NvRxFsjabdJqxXgJ94k0qAKXLVeK5Yfp1fdxWRYccXb8exakq8u34ZVKOyFHmjEWUy3PgNKUOYjKmAy4Tj8eNIKO+g6wVxts9KpmIrwSAuHQhiy/ocXztdtNZ9rbKBbGwPZgYG6aVTkuW47820ssIFIgQLOp1R57DYRqUc6p1GW7pFFeIuldK8SH7b0js+w7pQv6+9yvDUt6EDRpWwGurUnPSRKUoVBGEY4k6ccA6/JPqj6t9YemrnZ7T0pT2uNK+uq0bq4vpHlW9GlSEwYQjWoGpUqSOmMRMnA+EhzHP6ftLssFkW5X53ZM2muCtVSjnOl061NoLHbbWSExmO2EZuq0hEihNiO9ZbR9/iAEIka6c+Vc7VYf5avZULmFvZ06jCVcuQNL+IwHiMZeAmMc2LBfW7Lve7V/TVnuW5W3N3StR1TjbRkIGQkwMBUJMIzi0wJzObAywVOO2WzoMOvyew9Y+oJDbTcOBthtlLmkz3KOyjSRRKfEEUNwdAg8ZKAmpaFERN/h9ulUFOO52gix8UhMBx+nASI7SM2zBJHsO9X8YylLbbosY4RMCWOZx0jB8gSc3Ys92o+0uxtUrUWkyuxjZNEYkKvNrlT2n2rWjxNLL5kj70OJJkEausIAaW1AkcFdaKqimi42u0oWsrmlf2laYypx5ms4jIGIGRxcvgcDgV6LfdbqtdRt52N1SgTjOWjQMDmRIl3HANiMXcLY38NfZy+b9sj8lNi/qLHGXZT+Gvs5fN+2R+Smxf1Fgifw19nL5v2yPyU2L+osET+Gvs5fN+2R+Smxf1Fgifw19nL5v2yPyU2L+osET+Gvs5fN+2R+Smxf1Fgifw19nL5v2yPyU2L+osET+Gvs5fN+2R+Smxf1Fgioal2duzzBhPSo3Zu2cqrzStaYEHavbwZT6G6DZ8pZdIjx/WgNTLUadyK5Zrki7KUIVKghUnGES/iLsGD8ATjksKkpQgZQiZyHAM/wB6xUdmdiibmmnY7sNFiAJtNntXtCDk9SIxVuGhKgk4CIKrrUByLgq5Lj1/tLdwDc0Mf78O3wYfevMbqsxa3rOP7Mezx8M1gtR2m2Xr028baTscWTajVv060KpTLurO023DVEuSTX2esSqPSnKbS5UlZtvu5szkyIQIVzyzDXvv9roWu00dwtb21r3deVWJox166JgWhOo4HgqYSi2LHpdsra5nVupUq1GrCjAROos0nzEWJxjiD19CxiH2c9m1jt+6WwG0TcpdauBE2vtd9kUVwtCC8ttxicVG8s15Y8f+f5na47rCwpx3qdCe5sdcqMZRpnEtpjMmQaLO5zXSujamuTZCYtsG1tqyxdsM1TTOzftGpPFT9htlg1MIDCzto6E4TchAeXmOrGpTXOY5it9wmgskLus1THR6jk/t/FefB3UtOzjtVoD/APA9kEcJsefltPR0DnIvFWl9xtZAo9GrIk9HLiJP2KN0df4KoZ7OGz/PVJGwWzPVFQ8xY2ooPWM+KNpqcoaNKi8FJck85E83Ec5qkRZgq5ezpsQKir2wm0wtqYoqvbWWkLfFeGauUNA6cUEjEZoQDgV5fSPoFewI4++4bG+2s3nDPTu4SJqIyUsk97PBM1xEUn6hPsBfiN9/ldL4M4In1CfYC/Eb7/K6XwZwRPqE+wF+I33+V0vgzgislw/QT/R9UekypcmD2h5AaUZRumbonPkob6o0B9WS3W1NsSNFXJc14CiKSomCL9IkCiNM0WjUdhCci0mlUynsC9GjzDKPAgR4TCujKjvJzEaaTMkEVVVX+jGMjUGNOpKn0kNj3gqGnSqDTWpwqx6JBwD0t0q5dQnpkiSZmSIiInVImSIiZIifknBETHn0y+fL/wBflW/UBgKcW/5eZOoz/GZntSL5Jhol8+XweVNQ+XH4vMpax5SKqLOkIqLkqKxCRUVOlFTqvBUxlyavzZ90PIpzIfLj8XmXzkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSfH3+8QvJcOTV+bPuh5E5kPcj8XmTkSU6Kg/3mF5NhyavzZ90PInMh7kfi8y+8mV+kJHeYXk2HJq/Nn3Q8icyHuR+LzJyZX6Qkd5heTYcmr82fdDyJzIe5H4vMnJlfpCR3mF5NhyavzZ90PInMh7kfi8ycmV+kJHeYXk2HJq/Nn3Q8icyHuR+LzKS/TPdAQizJkh5g3WiINEZvMgNFFdTbAGiovo4cmr82fdDyJzIe5Hvl5l59z9xLmBasUSFFkvsvKNOjuBJiBIzcFD6xJcYMRRAJSzAVyUVHjwJd5dvCHK1huOAUuj7iXQ/CRyuU6HTKhzXBKLAdeqkXlCgct5uYcSAZcxVJFFWhUdPo4yLA+HELEPxV09/wBUfO/3Rz08RVPf9UfO/wB0c9PBFSzr+qPUpipwVIkrIkiOZj6wfFFTimCLFvpFKHvVcVmbGs7P03eaqo1Wrhk3gxstLrUKujDctOC3RXqm7SHGxWGFVNVEX8wLI0HIlzx/QH0EvPSNndbvL1RV2alXla0BbS3KEJ0dXOJqiMZY6jTweDEOCcF+AfXmx9XXtrtMfS1Pd6tGNzWNxHb5zhV08oCmZSiQGFTEasCNQGK8zqbtV2u6nJkQmLN7fDEl1wiph1O9qzS6aMVgkkyUqtRqD0dlqU5BbcbZQCBDkaETNS04/frv1F9NrSiK8736fypiI16LLmT1nwjlwhqJhqIlJ4kxg5OAcfz/AGfpn6n3VxOiLT1zEknl67yUI6R4v+yc5ACWkEAAgSlpADljSyNt+1YVPUYtm/SJN1TqoIjsi4a87BWWLT4mRMibUgYz7qtlki62xQkRSVUVPRR3v6eQuoyub36cTtRPxCNsIy0uPyychwHAJzcE8VqrenvqOaJFva/UGNfTgZXMiHbiMM5YnoGAX6Aezcl1Quz9svD3BC4Wb5ibb2vGu1q5mam5cTdeZpzbc8K25NbcmHUhdHJ1XSVxS+6VVx/FP1BqbRV9dbvU2A0TsctwrGhydPK5RkdHL0gR0NlpDNkv7V+n9PdqPobaaW/CsN6jt9EV+c5q80QGvmGXi1vm+L5rdXWWfPd9rSvA4+PX16dZZ8932tK8DgidZZ8932tK8Dgiyi17UuO85qQLZo1Rqr/FSViHJFhoRy1E7JdabYbQUXPJSzy6EwRdAQuyTudLYB9yoWhBI0RerzalV0fD0DSNQZLaKnqlwRWyu9lrdKixikst0OvaUz6vQps5+SvoC3OplPRV/wCXBFzxUYsukS3YFUhzoExgyB2PKgTWXRISUV7k46ahzTgqZovmLgioess+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwRTGpLPNa4u+yB/dpX3yeezlgi4vq22e4QNG47JtmktR0UH6gdxvNI445UHSB99yZDSNHVxt5qOIJkmY55qRIibqVSFOcZyhGcRnEux4YtiOkNxWidGcxMRnKMpMxDPFuh8O9WWnbO7ntyXXluiDV201p1N6u08o7CmmSZrT6ExI1AQrp1mqdPBVTHtub60r0OVSs6FGo48cJVTLsac5Rx44OvNbWd1Rq66t1WrRb8so0wO3wwiexXr4qNyfv6F/jb/wCr8cxdBPio3J+/oX+Nv/q/BFbaptFug7GI2p9IjAw1LckMtVVHRntLDfAYzpvUs3WAB0hcQmiA1UNKrpVcbqdSnCnUhOnGcpxAiSZAwLg6osQCWeLSBji7OAVpq06k505QqShGMnkAIkTDEaS4JAciTxIODZErseddEWxbPqN01OPKlRLft+JK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]]></data>
	</file>
	<file>
	  <filename>/images/screenshots/thumb_Add_Item_Tab8.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QOeaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUU5M0QzM0EwRUQ1MTFFMkFEODdFMkUwOTVBNTBENDMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUU5M0QzM0IwRUQ1MTFFMkFEODdFMkUwOTVBNTBENDMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFFOTNEMzM5MEVENTExRTJBRDg3RTJFMDk1QTUwRDQzIi8+IDxkYzpjcmVhdG9yPiA8cmRmOlNlcT4gPHJkZjpsaT51bmlxdTM8L3JkZjpsaT4gPC9yZGY6U2VxPiA8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]]></data>
	</file>
	<file>
	  <filename>/images/screenshots/thumb_Categories_Tab8.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QOeaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjkzRTYwQTMwRUM5MTFFMjhDMDRCRjdFNzI2RDA5ODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NjkzRTYwQTQwRUM5MTFFMjhDMDRCRjdFNzI2RDA5ODYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjY5M0U2MEEyMEVDOTExRTI4QzA0QkY3RTcyNkQwOTg2Ii8+IDxkYzpjcmVhdG9yPiA8cmRmOlNlcT4gPHJkZjpsaT51bmlxdTM8L3JkZjpsaT4gPC9yZGY6U2VxPiA8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qtRqD0dlqU5BbcbZQCBDkaETNS04/frv1F9NrSiK8736fypiI16LLmT1nwjlwhqJhqIlJ4kxg5OAcfz/AGfpn6n3VxOiLT1zEknl67yUI6R4v+yc5ACWkEAAgSlpADljSyNt+1YVPUYtm/SJN1TqoIjsi4a87BWWLT4mRMibUgYz7qtlki62xQkRSVUVPRR3v6eQuoyub36cTtRPxCNsIy0uPyychwHAJzcE8VqrenvqOaJFva/UGNfTgZXMiHbiMM5YnoGAX6Aezcl1Quz9svD3BC4Wb5ibb2vGu1q5mam5cTdeZpzbc8K25NbcmHUhdHJ1XSVxS+6VVx/FP1BqbRV9dbvU2A0TsctwrGhydPK5RkdHL0gR0NlpDNkv7V+n9PdqPobaaW/CsN6jt9EV+c5q80QGvmGXi1vm+L5rdXWWfPd9rSvA4+PX16dZZ8932tK8DgidZZ8932tK8Dgiyi17UuO85qQLZo1Rqr/FSViHJFhoRy1E7JdabYbQUXPJSzy6EwRdAQuyTudLYB9yoWhBI0RerzalV0fD0DSNQZLaKnqlwRWyu9lrdKixikst0OvaUz6vQps5+SvoC3OplPRV/wCXBFzxUYsukS3YFUhzoExgyB2PKgTWXRISUV7k46ahzTgqZovmLgioess+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwROss+e77WleBwRTGpLPNa4u+yB/dpX3yeezlgi4vq22e4QNG47JtmktR0UH6gdxvNI445UHSB99yZDSNHVxt5qOIJkmY55qRIibqVSFOcZyhGcRnEux4YtiOkNxWidGcxMRnKMpMxDPFuh8O9WWnbO7ntyXXluiDV201p1N6u08o7CmmSZrT6ExI1AQrp1mqdPBVTHtub60r0OVSs6FGo48cJVTLsac5Rx44OvNbWd1Rq66t1WrRb8so0wO3wwiexXr4qNyfv6F/jb/wCr8cxdBPio3J+/oX+Nv/q/BFbaptFug7GI2p9IjAw1LckMtVVHRntLDfAYzpvUs3WAB0hcQmiA1UNKrpVcbqdSnCnUhOnGcpxAiSZAwLg6osQCWeLSBji7OAVpq06k505QqShGMnkAIkTDEaS4JAciTxIODZErseddEWxbPqN01OPKlRLft+JK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]]></data>
	</file>
	<file>
	  <filename>/images/screenshots/thumb_screenshot1.jpg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QOeaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NzYxRDA5RDgwRUM1MTFFMkIzMDk5MjM3MjMyREM0MjUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NzYxRDA5RDkwRUM1MTFFMkIzMDk5MjM3MjMyREM0MjUiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjc2MUQwOUQ3MEVDNTExRTJCMzA5OTIzNzIzMkRDNDI1Ii8+IDxkYzpjcmVhdG9yPiA8cmRmOlNlcT4gPHJkZjpsaT51bmlxdTM8L3JkZjpsaT4gPC9yZGY6U2VxPiA8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]]></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[PD9waHAKLyogLS0tIGRvIG5vdCBlZGl0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwovKiBPbmx5IG5lY2Vzc2FyeSBpbiB0aGUgRW5nbGlzaCBsYW5nIGZpbGUsIGJlY2F1c2UgaXQncyBhbHdheXMgbG9hZGVkIGZpcnN0LCBldmVuIEVuZ2xpc2ggaXMgbm90IHRoZSB1c2VyJ3MgbGFuZ3VhZ2UuCiovCgppZihpc19vYmplY3QoJG1vZGluc3RhbmNlKSl7CiAgICAkbW9kdWxlX25hbWUgPSAkbW9kaW5zdGFuY2UtPkdldE5hbWUoKTsKfQovKiAtLSBlbmQgb2YgZG8gbm90IGVkaXQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgovLyBnbG9iYWwKJGxhbmdbJ2ludmFsaWRfY2hhcmFjdGVycyddID0gJ0NoYXJhY3RlcnMsIHN1Y2g6ICVzIG5vdCBhbGxvd2VkIHdpdGggZmllbGQ6ICVzJzsKCi8vIHRhYnMKJGxhbmdbJ2l0ZW0nXSA9ICdJdGVtJzsKJGxhbmdbJ2l0ZW1zJ10gPSAnSXRlbXMnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0ZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sndGVtcGxhdGVzJ10gPSAnVGVtcGxhdGVzJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvcnknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOwokbGFuZ1snb3B0aW9uJ10gPSAnT3B0aW9uJzsKJGxhbmdbJ29wdGlvbnMnXSA9ICdPcHRpb25zJzsKJGxhbmdbJ21haW50ZW5hbmNlJ10gPSAnTWFpbnRlbmFuY2UnOwokbGFuZ1snYmFjayddID0gJ0dvIG9uZSBwYWdlIGJhY2snOwoKLy8gbWFpbnRlbmFuY2UKJGxhbmdbJ3Byb21wdF9maXhfZmllbGRkZWZzJ10gPSAnQXR0ZW1wdCB0byByZXBhaXIgZmllbGQgZGVmaW5pdGlvbiBkYXRhYmFzZSB0YWJsZXMnOwokbGFuZ1snbWVzc2FnZV9maWVsZGRlZnNfZml4ZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyBvbiBhbGwgaW5zdGFuY2VzIHJlcGFpcmVkLic7CgovLyBpdGVtcwokbGFuZ1snaXRlbV90aXRsZSddID0gJ1RpdGxlJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3RpdGxlJ10gPSAnSXRlbSB0aXRsZSc7CiRsYW5nWydhY3RpdmUnXSA9ICdBY3RpdmUnOwokbGFuZ1snY3JlYXRlX3RpbWUnXSA9ICdEYXRlIGNyZWF0ZWQnOwokbGFuZ1sndGltZV9jb250cm9sJ10gPSAnVXNlIHRpbWUgY29udHJvbCc7CiRsYW5nWydzdGFydF90aW1lJ10gPSAnU3RhcnQgdGltZSc7CiRsYW5nWydlbmRfdGltZSddID0gJ0VuZCB0aW1lJzsKJGxhbmdbJ2l0ZW1fdGl0bGVfZW1wdHknXSA9ICdJdGVtIHRpdGxlIGlzIGVtcHR5JzsKJGxhbmdbJ3JlcXVpcmVkX2ZpZWxkX2VtcHR5J10gPSAnUmVxdWlyZWQgZmllbGQgaXMgZW1wdHknOwokbGFuZ1sndG9vX2xvbmcnXSA9ICdGaWVsZCB2YWx1ZSBleGNlZWRzIG1heCBsZW5ndGgnOwokbGFuZ1snYXBwcm92ZSddID0gJ1NldCBTdGF0dXMgdG8gXCdBY3RpdmVcJyc7CiRsYW5nWydyZXZlcnQnXSA9ICdTZXQgU3RhdHVzIHRvIFwnSW5hY3RpdmVcJyc7CiRsYW5nWydzdWJtaXRfb3JkZXInXSA9ICdTYXZlIG9yZGVyJzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCAlcyc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZW11bHRpcGxlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBhbGwgb2YgdGhlc2UgJXM/JzsKJGxhbmdbJ3NlbGVjdF9hbGwnXSA9ICdTZWxlY3QgYWxsJzsKJGxhbmdbJ2Vycm9yX3N0YXJ0Z3JlYXRlcmVuZCddID0gJ1N0YXJ0IGRhdGUgaXMgZ3JlYXRlciB0aGFuIGVuZCBkYXRlLic7CiRsYW5nWydpdGVtX2FsaWFzX2V4aXN0cyddID0gJ0l0ZW0gYWxpYXMgYWxyZWFkeSBleGlzdHMuIEFsaWFzIG11c3QgYmUgdW5pcXVlLic7CiRsYW5nWydyZXR1cm5fdXJsJ10gPSAnUmV0dXJuJzsKJGxhbmdbJ3BhdGhjb250YWluc3ZhcnMnXSA9ICdUaGlzIGZpZWxkIGNhbiBiZSBlZGl0ZWQgYWZ0ZXIgZmlyc3Qgc2F2aW5nIHRoaXMgJXMnOwoKLy8gSXRlbSBzdGF0aWMgdmFyaWFibGUgaGVscHMKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfaXRlbV9pZCddID0gJ0lmIGl0ZW1faWQgaXMgZ2l2ZW4sIGl0ZW1zIGFyZSBleHBlY3RlZCB0byBiZSBleGlzdGluZyBvbmVzIGluIGRhdGFiYXNlLiBJZiB5b3UgaW1wb3J0aW5nIG5ldyBpdGVtcywgaWdub3JlIHRoaXMgZmllbGQuJzsKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfY2F0ZWdvcnlfaWQnXSA9ICdJZiBjYXRlZ29yeV9pZCBpcyBnaXZlLCBpdGVtIHdpbGwgYmUgc2V0IGludG8gdGhpcyBjYXRlZ29yeS4gSWYgY2F0ZWdvcnlfaWQgaXMgc2V0LCBidXQgZG9zZW5cJyBleGlzdHMsIGl0IGlzIGlnbm9yZWQgYW5kIGRlZmF1bHQgaXMgdXNlZCBpbnN0ZWFkLic7CiRsYW5nWydpdGVtX3Zhcl9oZWxwX3RpdGxlJ10gPSAnSXRlbSB0aXRsZSB0aGF0IGlzIHNob3duIGluIFVSTCBhbmQgZGVzY3JpcGVzIGl0ZW0uJzsKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfYWxpYXMnXSA9ICdJdGVtIGFsaWFzIGRldGVybWluZXMgZnJpZW5kbHkgY29tcHV0ZXIgYWNjZXB0YWJsZSBuYW1lIG9mIGl0ZW0uIEFsaWFzIGlzIHVuaXF1ZSBmb3IgZWFjaCBpdGVtLic7CiRsYW5nWydpdGVtX3Zhcl9oZWxwX3Bvc2l0aW9uJ10gPSAnV2l0aCBwb3NpdGlvbiB5b3UgYXJlIGFiZWwgdG8gc2V0IHBvc2l0aW9uIG9mIGl0ZW0uIFRoaXMgb3B0aW9uIHdpbGwgYWZmZWN0IHRvIHdheSBob3cgaXRlbXMgYXJlIHNob3duLic7CiRsYW5nWydpdGVtX3Zhcl9oZWxwX2FjdGl2ZSddID0gJ1RoaXMgb3B0aW9uIHdpbGwgc2V0IGl0ZW0gZWl0aGVyIGFjdGl2ZSBvciBkZWFjdGl2ZS4nOwokbGFuZ1snaXRlbV92YXJfaGVscF9zdGFydF90aW1lJ10gPSAnU2V0IHRpbWUgd2hlbiB5b3Ugd2FudCB0byBzaG93IHRoaXMgaXRlbSc7CiRsYW5nWydpdGVtX3Zhcl9oZWxwX2VuZF90aW1lJ10gPSAnU2V0IHRpbWUgd2hlbiB5b3Ugd2FudCB0byBoaWRlIHRoaXMgaXRlbSc7CgovLyBmaWVsZCBkZWZpbml0aW9ucwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnRWRpdCBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ2ZpZWxkZGVmX2hlbHAnXSA9ICdIZWxwZnVsIHRpcCc7CiRsYW5nWydmaWVsZGRlZl90eXBlJ10gPSAnVHlwZSc7CiRsYW5nWydmaWVsZGRlZl9kZXBzJ10gPSAnTW9kdWxlIERlcGVuZGVuY2llcyc7CiRsYW5nWydmaWVsZGRlZl9kZXBzX21pc3NpbmcnXSA9ICdPbmUgb3IgbW9yZSBtb2R1bGUgZGVwZW5kZW5jaWVzIG1pc3NpbmcsIHBsZWFzZSBpbnN0YWxsIGFsbCByZXF1aXJlZCBtb2R1bGVzIGluIG9yZGVyIHRvIHN0YXJ0IHVzaW5nIHRoaXMgZmllbGQuJzsKJGxhbmdbJ2ZpZWxkZGVmX3NjYW4nXSA9ICdTY2FuIEZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ2ZpZWxkZGVmX3NjYW5uZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyBzY2FubmVkJzsKJGxhbmdbJ2ZpZWxkZGVmX3R5cGVfbm90c2V0J10gPSAnRmllbGQgRGVmaW5pdGlvbnMgdHlwZSBpcyBub3Qgc2V0JzsKJGxhbmdbJ2ZpZWxkZGVmX2ZyaWVuZGx5dHlwZSddID0gJ0ZyaWVuZGx5IFR5cGUnOwokbGFuZ1snZmllbGRkZWZfb3JpZ2luYXRvciddID0gJ09yaWdpbmF0b3InOwokbGFuZ1snZmllbGRkZWZfbWF4X2xlbmd0aCddID0gJ01heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2ZpZWxkZGVmX3JlcXVpcmVkJ10gPSAnUmVxdWlyZWQnOwokbGFuZ1sncmVnaXN0ZXJlZF9maWVsZGRlZnMnXSA9ICdSZWdpc3RlcmVkIEZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZW1wdHknXSA9ICdGaWVsZCBkZWZpbml0aW9uIG5hbWUgaXMgZW1wdHknOwokbGFuZ1snZmllbGRkZWZfbmFtZV9leGlzdHMnXSA9ICdGaWVsZCBkZWZpbml0aW9uIG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZmllbGRkZWZfYWxpYXNfZXhpc3RzJ10gPSAnRmllbGQgZGVmaW5pdGlvbiBhbGlhcyBhbHJlYWR5IGV4aXN0cy4gQWxpYXMgbXVzdCBiZSB1bmlxdWUuJzsKJGxhbmdbJ2ludmFsaWQnXSA9ICdGaWVsZCB2YWx1ZSBpcyBpbnZhbGlkJzsKJGxhbmdbJ3N0YXR1c19yZXF1aXJlZCddID0gJ1NldCBzdGF0dXMgdG8gXCdyZXF1aXJlZFwnJzsKJGxhbmdbJ3N0YXR1c19vcHRpb25hbCddID0gJ1NldCBzdGF0dXMgdG8gXCdvcHRpb25hbFwnJzsKJGxhbmdbJ2lzX2RlZmF1bHQnXSA9ICdJcyBzZXQgdG8gXCdEZWZhdWx0XCcnOwokbGFuZ1snc3RhdHVzX2RlZmF1bHQnXSA9ICdTZXQgdG8gXCdEZWZhdWx0XCcnOwokbGFuZ1snaGVscHRleHRfdGl0bGUnXSA9ICdQb3NzaWJsZSBGaWVsZCBEZWZpbml0aW9uIGluc3RydWN0aW9ucyBmb3IgRXh0cmEgZmllbGQ6JzsKCi8vIFRleHRJbnB1dAokbGFuZ1snZmllbGRkZWZfVGV4dElucHV0J10gPSAnVGV4dCBJbnB1dCc7Ci8vIENoZWNrQm94CiRsYW5nWydmaWVsZGRlZl9DaGVja2JveCddID0gJ0NoZWNrYm94JzsKLy8gVGV4dEFyZWEKJGxhbmdbJ2ZpZWxkZGVmX1RleHRBcmVhJ10gPSAnVGV4dCBBcmVhJzsKLy8gU2VsZWN0IERhdGUgKGRlcHJlY2F0ZWQpCiRsYW5nWydmaWVsZGRlZl9TZWxlY3REYXRlJ10gPSAnU2VsZWN0IERhdGUnOwovLyBTZWxlY3QgRGF0ZVRpbWUKJGxhbmdbJ2ZpZWxkZGVmX1NlbGVjdERhdGVUaW1lJ10gPSAnU2VsZWN0IERhdGVUaW1lJzsKLy9Ecm9wZG93bgokbGFuZ1snZmllbGRkZWZfRHJvcGRvd24nXSA9ICdEcm9wZG93bic7Ci8vIENvbnRlbnQgUGFnZXMKJGxhbmdbJ2ZpZWxkZGVmX0NvbnRlbnRQYWdlcyddID0gJ0NvbnRlbnQgUGFnZXMnOwovLyBTZWxlY3QgRmlsZQokbGFuZ1snZmllbGRkZWZfU2VsZWN0RmlsZSddID0gJ1NlbGVjdCBGaWxlJzsKLy8gUmFkaW8gR3JvdXAKJGxhbmdbJ2ZpZWxkZGVmX1JhZGlvR3JvdXAnXSA9ICdSYWRpbyBHcm91cCc7Ci8vIFNsaWRlcgokbGFuZ1snZmllbGRkZWZfU2xpZGVyJ10gPSAnU2xpZGVyJzsKLy8gTXVsdGkgU2VsZWN0CiRsYW5nWydmaWVsZGRlZl9NdWx0aVNlbGVjdCddID0gJ011bHRpIFNlbGVjdCc7Ci8vIENoZWNrYm94IEdyb3VwCiRsYW5nWydmaWVsZGRlZl9DaGVja2JveEdyb3VwJ10gPSAnQ2hlY2tib3ggR3JvdXAnOwoKLyogSW5zdHJ1Y3Rpb25zICovCiRsYW5nWydmaWVsZGRlZl9hbGxvd19oZWxwJ10gPSAnU3BlY2lmeSBhIGNvbW1hIHNlcHJhdGVkIGxpc3Qgb2YgZmlsZSBleHRlbnNpb25zIHRoYXQgYXJlIGFsbG93ZWQuIEZvciBleGFtcGxlOiBwZGYsZ2lmLGpwZWcsanBnIChrZWVwIGxvd2VyY2FzZSknOwokbGFuZ1snZmllbGRkZWZfZGlyX2hlbHAnXSA9ICdEaXJlY3RvcnkgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gJGNvbmZpZ1tcJ3VwbG9hZHNfdXJsXCddIC4gTm8gc2xhc2ggYXQgdGhlIGVuZC4geyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfSB3aWxsIGJlIHJlcGxhY2VkLic7CiRsYW5nWydmaWVsZGRlZl9leGNsdWRlX3ByZWZpeF9oZWxwJ10gPSAnU3BlY2lmeSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBwcmVmaXhlcyB0byBleGNsdWRlIGZpbGVzIHRoYXQgc3RhcnRzIHdpdGggdGhlIHNldCBwcmVmaXguIEZvciBleGFtcGxlOiB0aHVtYl8sIGZvb18nOwokbGFuZ1snZmllbGRkZWZfbXVsdGlvcHRpb25zX2hlbHAnXSA9ICdPcHRpb25zIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gRm9yIGV4YW1wbGU6IEJhbmFuYT1iYW5hbmEnOwokbGFuZ1snZmllbGRkZWZfc2VwYXJhdG9yX2hlbHAnXSA9ICdDYW4gYmUgZW1wdHksIHNpbmdsZSBjaGFyYWN0ZXIgb3IgSFRNTCBlbnRpdHkuJzsKJGxhbmdbJ2ZpZWxkZGVmX3NpemVfaGVscCddID0gJ1NwZWNpZnkgc2l6ZSBvZiBpbnB1dCBmaWVsZC4gRm9yIGV4YW1wbGU6IDIwJzsKJGxhbmdbJ2ZpZWxkZGVmX21heF9sZW5naHRfaGVscCddID0gJ1NwZWNpZnkgbWF4aW11bSBsZW5naHQgb2YgdGhlIGZpZWxkLiBGb3IgZXhhbXBsZTogMjU1JzsKJGxhbmdbJ2ZpZWxkZGVmX2RhdGVfZm9ybWF0X2hlbHAnXSA9ICdTcGVjaWZ5IGRhdGUgZm9ybWF0IHVzZWQgYnkgalF1ZXJ5IERhdGVwaWNrZXIuIFRyeSBnb29nbGluZyBcJ2pxdWVyeSBmb3JtYXREYXRlXCcuIEZvciBleGFtcGxlOiBkZC1tbS15eSc7CiRsYW5nWydmaWVsZGRlZl9mb3JtYXRfdHlwZV9oZWxwJ10gPSAnU3BlY2lmeSBvdXRwdXQgZm9ybWF0IGZvciB0aGlzIGZpZWxkLic7CiRsYW5nWydmaWVsZGRlZl9zaG93X3NlY29uZHNfaGVscCddID0gJ1NwZWNpZnkgaWYgd2Ugc2hvdWxkIHNob3cgc2Vjb25kcyBzY3JvbGxlciwgb3Igbm90LiBOT1RJQ0UsIHNlY29uZCBzY3JvbGxlciBoYXMgbm8gZWZmZWN0IGlmIHRpbWUgZm9ybWF0IGlzIHdyb25nLiBUcnkgSEg6bW06c3MnOwokbGFuZ1snZmllbGRkZWZfdGltZV9mb3JtYXRfaGVscCddID0gJ1NwZWNpZnkgZGF0ZSBmb3JtYXQgdXNlZCBieSBqUXVlcnkgdGltZXBpY2tlci4gVHJ5IGdvb2dsaW5nIFwnanF1ZXJ5IGZvcm1hdFRpbWVcJy4gRm9yIGV4YW1wbGU6IEhIOm1tJzsKJGxhbmdbJ2ZpZWxkZGVmX3d5c2l3eWdfaGVscCddID0gJ0lmIGNoZWNrZWQsIGEgV1lTSVdZRyBFZGl0b3Igd2lsbCBiZSBlbmFibGVkIGZvciB0aGlzIGZpZWxkLic7CiRsYW5nWydmaWVsZGRlZl9taW5fdmFsdWVfaGVscCddID0gJ1NwZWNpZnkgbWluaW11bSB2YWx1ZSBmb3IgdGhpcyBmaWVsZC4nOwokbGFuZ1snZmllbGRkZWZfbWF4X3ZhbHVlX2hlbHAnXSA9ICdTcGVjaWZ5IG1heGltdW0gdmFsdWUgZm9yIHRoaXMgZmllbGQuJzsKJGxhbmdbJ2ZpZWxkZGVmX3dpZHRoX2hlbHAnXSA9ICdTcGVjaWZ5IHdpZHRoIG9mIGVsZW1lbnQuIFZhbHVlIHBvc3NpYmxlIHRvIGJlIHBlcmNlbnRhbCBvciBpbiBwaXhlbHMsIHRoaXMgaXMgZGlyZWN0IENTUyB2YWx1ZS4nOwokbGFuZ1snZmllbGRkZWZfc3VidHlwZV9oZWxwJ10gPSAnU2VsZWN0IFN1YiBUeXBlIGZvciB0aGlzIGZpZWxkIHRvIGRldGVybWluZSBpdFwncyBiZWhhdmlvci4nOwokbGFuZ1snZmllbGRkZWZfc2hvd2FsbF9oZWxwJ10gPSAnU2hvdyBhbGwsIHJlZ2FyZGxlc3Mgb2Ygc3lzdGVtIHBlcm1pc3Npb25zLic7CiRsYW5nWydmaWVsZGRlZl9jb2x1bW5zX2hlbHAnXSA9ICdOdW1iZXIgb2YgY29sdW1ucy4gRGl2aWRlIHRoaXMgZmllbGQgdG8gY29sdW1ucyBmb3IgYmV0dGVyIHVzZXIgZXhwZXJpZW5jZS4nOwoKLy8gY2F0ZWdvcnkKJGxhbmdbJ3Jlb3JkZXJfY2F0ZWdvcmllcyddID0gJ1Jlb3JkZXIgQ2F0ZWdvcmllcyc7CiRsYW5nWydlZGl0X2NhdGVnb3J5J10gPSAnRWRpdCBDYXRlZ29yeSc7CiRsYW5nWydjYXRlZ29yeV9uYW1lJ10gPSAnQ2F0ZWdvcnkgbmFtZSc7CiRsYW5nWydjYXRlZ29yeV9kZXNjcmlwdGlvbiddID0gJ0NhdGVnb3J5IERlc2NyaXB0aW9uJzsKJGxhbmdbJ2NhdGVnb3J5X25hbWVfZW1wdHknXSA9ICdDYXRlZ29yeSBuYW1lIGlzIGVtcHR5JzsKJGxhbmdbJ2NhdGVnb3J5X2FsaWFzX2V4aXN0cyddID0gJ0NhdGVnb3J5IGFsaWFzIGFscmVhZHkgZXhpc3RzLiBBbGlhcyBtdXN0IGJlIHVuaXF1ZS4nOwoKLy8gdGVtcGxhdGVzCiRsYW5nWydjYXRlZ29yeXRlbXBsYXRlJ10gPSAnQ2F0ZWdvcnkgVGVtcGxhdGUnOwokbGFuZ1snY2F0ZWdvcnl0ZW1wbGF0ZXMnXSA9ICdDYXRlZ29yeSBUZW1wbGF0ZXMnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlJ10gPSAnU3VtbWFyeSBUZW1wbGF0ZSc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAnU3VtbWFyeSBUZW1wbGF0ZXMnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGUnXSA9ICdEZXRhaWwgVGVtcGxhdGUnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnRGV0YWlsIFRlbXBsYXRlcyc7CiRsYW5nWydzZWFyY2h0ZW1wbGF0ZSddID0gJ1NlYXJjaCBUZW1wbGF0ZSc7CiRsYW5nWydzZWFyY2h0ZW1wbGF0ZXMnXSA9ICdTZWFyY2ggVGVtcGxhdGVzJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlJ10gPSAnRmlsdGVyIFRlbXBsYXRlJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlcyddID0gJ0ZpbHRlciBUZW1wbGF0ZXMnOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAnRWRpdCBUZW1wbGF0ZSc7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lJ10gPSAnVGVtcGxhdGUgbmFtZSc7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lX2VtcHR5J10gPSAnVGVtcGxhdGUgbmFtZSBpcyBlbXB0eSc7CiRsYW5nWyd0ZW1wbGF0ZV9jb250ZW50X2VtcHR5J10gPSAnVGVtcGxhdGUgY29udGVudCBpcyBlbXB0eSc7CiRsYW5nWydkZWZhdWx0X3RlbXBsYXRlcyddID0gJ0RlZmF1bHQgdGVtcGxhdGVzJzsKCi8vIG9wdGlvbnMKJGxhbmdbJ21vZHVsZV9vcHRpb25zJ10gPSAnTW9kdWxlIE9wdGlvbnMnOwokbGFuZ1sndXJsX29wdGlvbnMnXSA9ICdVUkwgT3B0aW9ucyc7CiRsYW5nWydwcm9tcHRfZnJpZW5kbHluYW1lJ10gPSAnTW9kdWxlIGZyaWVuZGx5IG5hbWUnOwokbGFuZ1sncHJvbXB0X21vZGRlc2NyaXB0aW9uJ10gPSAnTW9kdWxlIEFkbWluIGRlc2NyaXB0aW9uJzsKJGxhbmdbJ3Byb21wdF9hZG1pbnNlY3Rpb24nXSA9ICdNb2R1bGUgQWRtaW4gU2VjdGlvbic7CiRsYW5nWydpdGVtc19vcHRpb25zJ10gPSAnSXRlbXMgT3B0aW9ucyc7CiRsYW5nWydwcm9tcHRfaXRlbV9zaW5ndWxhciddID0gJ0l0ZW0gc2luZ3VsYXInOwokbGFuZ1sncHJvbXB0X2l0ZW1fcGx1cmFsJ10gPSAnSXRlbSBwbHVyYWwnOwokbGFuZ1sncHJvbXB0X3VybF9wcmVmaXgnXSA9ICdVUkwgUHJlZml4JzsKJGxhbmdbJ3Byb21wdF9kaXNwbGF5X2lubGluZSddID0gJ0Rpc3BsYXkgZGV0YWlscyBpbmxpbmUgKHJlcGxhY2VzIG1vZHVsZSB0YWcgaW5zdGVhZCBvZiB7Y29udGVudH0pJzsKJGxhbmdbJ3Byb21wdF9zdWJjYXRlZ29yeSddID0gJ0VuYWJsZSBzdWJjYXRlZ29yeSBvcHRpb24sIHdpbGwgc2hvdyBpbmhlcml0ZWQgaXRlbXMgaW4gY2F0ZWdvcnkgYW5kIGl0XCdzIGNoaWxkcmVuJzsKJGxhbmdbJ3Byb21wdF9pdGVtX2NvbHMnXSA9ICdEaXNwbGF5IHRoZXNlIGZpZWxkcyBpbiBpdGVtIG92ZXJ2aWV3JzsKJGxhbmdbJ3Byb21wdF9pdGVtc19wZXJfcGFnZSddID0gJ0Rpc3BsYXkgaXRlbXMgcGVyIHBhZ2UnOwokbGFuZ1sncHJvbXB0X2NyZWF0ZV9kYXRlJ10gPSAnRGlzcGxheSBpdGVtIGNyZWF0ZWQgZGF0ZSBpbiBJdGVtIGVkaXQgbW9kZT8nOwokbGFuZ1sndGV4dF9zb3J0b3JkZXInXSA9ICdEZWZhdWx0IEl0ZW1zIHNvcnRvcmRlcic7CiRsYW5nWydvcHRpb25zX25vdGljZSddID0gJ0FmdGVyIGNoYW5naW5nIG1vZHVsZSBmcmllbmRseSBuYW1lIG9yIEFkbWluIHNlY3Rpb24sIGEgImNsZWFyIGNhY2hlIiBhY3Rpb24gbWlnaHQgYmUgcmVxdWlyZWQgZm9yIGNoYW5nZXMgdG8gdGFrZSBlZmZlY3QuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19hdXRvc2NhbiddID0gJ0FsbG93IHN5c3RlbSB0byBzY2FuIGZpZWxkIGRlZmluaXRpb25zIGF1dG9tYXRpY2FsbHknOwokbGFuZ1snbm90aWNlX2FsbG93X2F1dG9zY2FuJ10gPSAnQWxsb3dpbmcgYXV0b21hdGljIHNjYW4gb24gaW5zdGFsbCwgdXBncmFkZSBhbmQgdW5pbnN0YWxsIGV2ZW50cywgbWlnaHQgaGF2ZSBzb21lIHN0cmFuZ2UgYmVoYXZpb3Igd2l0aCBzb21lIGNvcmUgdmVyc2lvbnMuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19hdXRvaW5zdGFsbCddID0gJ0FsbG93IHN5c3RlbSB0byBpbnN0YWxsIGluc3RhbmNlcyBhdXRvbWF0aWNhbGx5JzsKCi8vIGluc3RhbmNlcwokbGFuZ1snbm90aWNlJ10gPSAnTm90aWNlJzsKJGxhbmdbJ2luc3RhbmNlcyddID0gJ0luc3RhbmNlcyc7CiRsYW5nWydpbnN0YWxsZWRfaW5zdGFuY2VzX3dhcm5pbmcnXSA9ICdCZWxvdyBpcyBhIGxpc3Qgb2YgZHVwbGljYXRlZCBtb2R1bGUgaW5zdGFuY2VzLjxiciAvPk1ha2Ugc3VyZSB0byBiYWNrdXAgeW91ciBzaXRlIChEYXRhYmFzZSBhbmQgRmlsZXMpIGJlZm9yZSAidXBkYXRlIiBhY3Rpb24nOwokbGFuZ1snaW5zdGFsbGVkX2luc3RhbmNlcyddID0gJ0luc3RhbGxlZCBpbnN0YW5jZXMnOwokbGFuZ1snaW5zdGFuY2VfbmFtZSddID0gJ0luc3RhbmNlIG5hbWUnOwokbGFuZ1snaW5zdGFuY2VfZnJpZW5kbHluYW1lJ10gPSAnRnJpZW5kbHkgbmFtZSc7CiRsYW5nWydpbnN0YW5jZV9zbWFydHknXSA9ICdTbWFydHkgdGFnJzsKJGxhbmdbJ2luc3RhbmNlX3ZlcnNpb24nXSA9ICdWZXJzaW9uJzsKJGxhbmdbJ2luc3RhbmNlX3VwZ3JhZGUnXSA9ICdVcGdyYWRlJzsKJGxhbmdbJ2luc3RhbmNlX3VwdG9kYXRlJ10gPSAnVXAgdG8gZGF0ZSc7CiRsYW5nWydpbnN0YW5jZV9tb2R1bGV1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCc7Ci8vJGxhbmdbJ2R1cGxpY2F0ZV9pbnN0YW5jZSddID0gJ0R1cGxpY2F0ZSBtb2R1bGUnOwovLyRsYW5nWydkdXBsaWNhdGVfZGVzY3JpcHRpb24nXSA9ICRtb2R1bGVfbmFtZSAuICcgY2FuIGJlIGVhc2lseSBkdXBsaWNhdGVkIHRvIG11bHRpcGxlIG1vZHVsZSBpbnN0YW5jZXMgd2l0aCBkdXBsaWNhdGUgYnV0dG9uLjxiciAvPiBJbnN0YWxsIG5ld2x5IGNvcGllZCBtb2R1bGUgZnJvbSAiRXh0ZW5zaW9ucyAmcmFxdW87IE1vZHVsZXMiLic7CiRsYW5nWydjb3B5X3RpdGxlJ10gPSAnRHVwbGljYXRlIG1vZHVsZSc7CgovLyBnbG9iYWwKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydkZWZhdWx0J10gPSAnRGVmYXVsdCc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1sndXBkYXRlJ10gPSAnVXBkYXRlJzsKJGxhbmdbJ3JlcGFpciddID0gJ1JlcGFpcic7CiRsYW5nWydzYXZlX2NyZWF0ZSddID0gJ1NhdmUgJmFtcDsgQ3JlYXRlJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXQgRGVmYXVsdCc7CiRsYW5nWydkdXBsaWNhdGUnXSA9ICdDcmVhdGUgaW5zdGFuY2UnOwokbGFuZ1snY2hhbmdlc3NhdmVkJ10gPSAnWW91ciBjaGFuZ2VzIGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgc2F2ZWQuJzsKJGxhbmdbJ2NoYW5nZXNzYXZlZF9jcmVhdGUnXSA9ICdZb3VyIHByZXZpb3VzIGl0ZW0gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHNhdmVkLiBDcmVhdGUgbmV3IGl0ZW0/JzsKJGxhbmdbJ3RlbXBsYXRlcmVzdG9yZWQnXSA9ICdEZWZhdWx0IFRlbXBsYXRlIGhhcyBiZWVuIHJlc3RvcmVkLic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZT8nOwokbGFuZ1sndXAnXSA9ICdVcCc7CiRsYW5nWydkb3duJ10gPSAnRG93bic7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUnOwokbGFuZ1snbm9zdWNoaWQnXSA9ICdObyBzdWNoIElEJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdUaGUgaXRlbShzKSBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQuJzsKJGxhbmdbJ2FkZCddID0gJ0FkZCAlcyc7CiRsYW5nWydpbXBvcnQnXSA9ICdJbXBvcnQgJXMnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0ICVzJzsKJGxhbmdbJ2FsaWFzJ10gPSAnQWxpYXMnOwokbGFuZ1snYWxpYXNfaW52YWxpZCddID0gJ0FsaWFzIGlzIGludmFsaWQuIEl0IG11c3QgYmUgYSB2YWxpZCBQSFAgdmFyaWFibGUgbmFtZSc7CiRsYW5nWydzZWFyY2gnXSA9ICdTZWFyY2gnOwokbGFuZ1snc2VhcmNoZm9yJ10gPSAnU2VhcmNoIGZvcic7CiRsYW5nWydzZWFyY2hyZXN1bHRzZm9yJ10gPSAnU2VhcmNoIHJlc3VsdHMgZm9yJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJyZsdDsmbHQ7JzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnJmx0Oyc7CiRsYW5nWyduZXh0cGFnZSddID0gJyZndDsnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICcmZ3Q7Jmd0Oyc7CiRsYW5nWydtb2R1bGVfbmFtZSddID0gJ01vZHVsZSBuYW1lJzsKJGxhbmdbJ21vZHVsZV9uYW1lX2VtcHR5J10gPSAnTW9kdWxlIG5hbWUgaXMgZW1wdHknOwokbGFuZ1snbW9kdWxlX25hbWVfaW52YWxpZCddID0gJ01vZHVsZSBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVycyc7CiRsYW5nWydtb2R1bGVjb3BpZWQnXSA9ICdNb2R1bGUgY29waWVkIHN1Y2Nlc2Z1bGx5JzsKJGxhbmdbJ3NlbGVjdF9vbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ21heF9sZW5naHQnXSA9ICdNYXggTGVuZ2h0JzsKJGxhbmdbJ3d5c2l3eWcnXSA9ICdXWVNJV1lHJzsKJGxhbmdbJ2RhdGVfZm9ybWF0J10gPSAnRGF0ZSBGb3JtYXQnOwokbGFuZ1sndGltZV9mb3JtYXQnXSA9ICdUaW1lIEZvcm1hdCc7CiRsYW5nWydmb3JtYXRfdHlwZSddID0gJ0Zvcm1hdCBUeXBlJzsKJGxhbmdbJ2RpciddID0gJ0RpcmVjdG9yeSc7CiRsYW5nWydhbGxvd2VkJ10gPSAnQWxsb3dlZCc7CiRsYW5nWydleGNsdWRlX3ByZWZpeCddID0gJ0V4Y2x1ZGUgcHJlZml4JzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZmlsZSddID0gJ0ZpbGUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdBc2NlbmRpbmcnOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ0Rlc2NlbmRpbmcnOwokbGFuZ1snZXh0cmEnXSA9ICdFeHRyYSc7CiRsYW5nWydjb21iaW5lZCddID0gJ0NvbWJpbmVkJzsKJGxhbmdbJ3Nob3dfc2Vjb25kcyddID0gJ1Nob3cgU2Vjb25kcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbHVlJzsKJGxhbmdbJ3dpZHRoJ10gPSAnV2lkdGgnOwokbGFuZ1snbWluX3ZhbHVlJ10gPSAnTWluaW11bSBWYWx1ZSc7CiRsYW5nWydtYXhfdmFsdWUnXSA9ICdNYXhpbXVtIFZhbHVlJzsKJGxhbmdbJ3N1YnR5cGUnXSA9ICdTdWIgVHlwZSc7CiRsYW5nWydzaG93YWxsJ10gPSAnU2hvdyBBbGwnOwokbGFuZ1snY29sdW1ucyddID0gJ0NvbHVtbnMnOwoKLy8gY3N2IGltcG9ydC9leHBvcnQKJGxhbmdbJ2ZpbGVuYW1lJ10gPSAnRmlsZSBuYW1lJzsKJGxhbmdbJ2VuY2xvdXNlciddID0gJ0VuY2xvdXNlcic7CiRsYW5nWydzZXBhcmF0b3InXSA9ICdTZXBhcmF0b3InOwokbGFuZ1sndmFsdWVzJ10gPSAnVmFsdWVzJzsKJGxhbmdbJ2ltcG9ydF9hbGlhcyddID0gJ0l0ZW0vRmllbGRkZWYgYWxpYXMnOwokbGFuZ1snZmlsZV9hbGlhcyddID0gJ0ZpbGUgaGVhZGVyL2FsaWFzJzsKCi8vIGVycm9ycwokbGFuZ1snZXJyb3Jfb3B0aW9ucmVxdWlyZWQnXSA9ICdPcHRpb24gJXMgaXMgcmVxdWlyZWQnOwokbGFuZ1snZXJyb3JfZmlsZV9wZXJtaXNzaW9ucyddID0gJ1RoZXJlIHdhcyBwcm9ibGVtIHdpdGggZmlsZSBwZXJtaXNzaW9ucyc7CiRsYW5nWydlcnJvcl9maWxlX2VtcHR5J10gPSAnTm8gZmlsZSBnaXZlbic7CiRsYW5nWydlcnJvcl9maWxlX25vY3N2J10gPSAnRmlsZSBpcyBub3QgQ1NWIGZpbGUnOwoKLy8gZmlsdGVyCiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1snZmlsdGVycHJvbXB0J10gPSAnRmlsdGVyICVzJzsKJGxhbmdbJ3BhcmFtX2ZpbHRlcl9taXNzaW5nJ10gPSAnUGFyYW1ldGVyIDxlbT5maWx0ZXI8L2VtPiBpcyByZXF1aXJlZCBpbiBmaWx0ZXIgbW9kZS4nOwokbGFuZ1snYWxsJ10gPSAnQWxsJzsKCi8vIEV2ZW50IGRlc2NyaXB0aW9ucwokbGFuZ1snZXZlbnRkZXNjX1ByZUl0ZW1TYXZlJ10gPSAnU2VudCBiZWZvcmUgaXRlbSBzYXZlIHByb2Nlc3MgYmVnaW5zLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuJzsKJGxhbmdbJ2V2ZW50ZGVzY19Qb3N0SXRlbVNhdmUnXSA9ICdTZW50IGFmdGVyIGl0ZW0gc2F2ZSBwcm9jZXNzIGhhcyBjb21wbGV0ZWQuIFBvc3NpYmxlIHRvIG1hbmlwdWxhdGUgaXRlbSBvYmplY3QgZGF0YS4nOwokbGFuZ1snZXZlbnRkZXNjX1ByZUl0ZW1EZWxldGUnXSA9ICdTZW50IGJlZm9yZSBpdGVtIGRlbGV0ZSBwcm9jZXNzIGJlZ2lucy4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIG9iamVjdCBkYXRhLic7CiRsYW5nWydldmVudGRlc2NfUG9zdEl0ZW1EZWxldGUnXSA9ICdTZW50IGFmdGVyIGl0ZW0gZGVsZXRlIHByb2Nlc3MgaGFzIGNvbXBsZXRlZC4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIG9iamVjdCBkYXRhLic7CiRsYW5nWydldmVudGRlc2NfUHJlSXRlbUxvYWQnXSA9ICdTZW50IGJlZm9yZSBpdGVtIGxvYWQgcHJvY2VzcyBiZWdpbnMuIFBvc3NpYmxlIHRvIG1hbmlwdWxhdGUgaXRlbSBvYmplY3QgZGF0YS4nOwokbGFuZ1snZXZlbnRkZXNjX1Bvc3RJdGVtTG9hZCddID0gJ1NlbnQgYWZ0ZXIgaXRlbSBsb2FkIHByb2Nlc3MgaGFzIGNvbXBsZXRlZC4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIG9iamVjdCBkYXRhLic7CiRsYW5nWydldmVudGRlc2NfUHJlUmVuZGVyQWN0aW9uJ10gPSAnU2VudCBvbiBhY3Rpb24gZXhlY3V0ZS4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIHF1ZXJ5IGRhdGEuJzsKCiNFdmVudCBoZWxwCiRsYW5nWydldmVudGhlbHBfUHJlSXRlbVNhdmUnXSA9ICI8cD4iLiRsYW5nWydldmVudGRlc2NfUHJlSXRlbVNhdmUnXS4iPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPidpdGVtX29iamVjdCcgLSBSZWZlcmVuY2UgdG8gYWZmZWN0ZWQgaXRlbSBvYmplY3QuPC9saT4KPC91bD4iOwoKJGxhbmdbJ2V2ZW50aGVscF9Qb3N0SXRlbVNhdmUnXSA9ICI8cD4iLiRsYW5nWydldmVudGRlc2NfUG9zdEl0ZW1TYXZlJ10uIjwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT4naXRlbV9vYmplY3QnIC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+CjwvdWw+IjsKCiRsYW5nWydldmVudGhlbHBfUHJlSXRlbURlbGV0ZSddID0gIjxwPiIuJGxhbmdbJ2V2ZW50ZGVzY19QcmVJdGVtRGVsZXRlJ10uIjwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT4naXRlbV9vYmplY3QnIC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+CjwvdWw+IjsKCiRsYW5nWydldmVudGhlbHBfUG9zdEl0ZW1EZWxldGUnXSA9ICI8cD4iLiRsYW5nWydldmVudGRlc2NfUG9zdEl0ZW1EZWxldGUnXS4iPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPidpdGVtX29iamVjdCcgLSBSZWZlcmVuY2UgdG8gYWZmZWN0ZWQgaXRlbSBvYmplY3QuPC9saT4KPC91bD4iOwoKJGxhbmdbJ2V2ZW50aGVscF9QcmVJdGVtTG9hZCddID0gIjxwPiIuJGxhbmdbJ2V2ZW50ZGVzY19QcmVJdGVtTG9hZCddLiI8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+J2l0ZW1fb2JqZWN0JyAtIFJlZmVyZW5jZSB0byBhZmZlY3RlZCBpdGVtIG9iamVjdC48L2xpPgo8L3VsPiI7CgokbGFuZ1snZXZlbnRoZWxwX1Bvc3RJdGVtTG9hZCddID0gIjxwPiIuJGxhbmdbJ2V2ZW50ZGVzY19Qb3N0SXRlbUxvYWQnXS4iPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPidpdGVtX29iamVjdCcgLSBSZWZlcmVuY2UgdG8gYWZmZWN0ZWQgaXRlbSBvYmplY3QuPC9saT4KPC91bD4iOwoKJGxhbmdbJ2V2ZW50aGVscF9QcmVSZW5kZXJBY3Rpb24nXSA9ICI8cD4iLiRsYW5nWydldmVudGRlc2NfUHJlUmVuZGVyQWN0aW9uJ10uIjwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT4nYWN0aW9uX25hbWUnIC0gTmFtZSBvZiBleGVjdXRlZCBhY3Rpb24uPC9saT4KPGxpPidxdWVyeV9vYmplY3QnIC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIHF1ZXJ5IG9iamVjdC48L2xpPgo8L3VsPiI7CgovLyBtb2R1bGUKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTGlzdEl0RXh0ZW5kZWQgYWxsb3dzIHlvdSB0byBjcmVhdGUgbGlzdHMgdGhhdCB5b3UgY2FuIGRpc3BsYXkgdGhyb3VnaG91dCB5b3VyIHdlYnNpdGUuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAkbW9kdWxlX25hbWUgLiAnIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiBpbnN0YWxsZWQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJG1vZHVsZV9uYW1lIC4gJyBoYXMgc3VjY2Vzc2Z1bGx5IGJlZW4gdW5pbnN0YWxsZWQnOwoKLy8gbW9kdWxlIGhlbHAKJGxhbmdbJ2dlbmVyYWwnXSA9ICdHZW5lcmFsJzsKJGxhbmdbJ3VzYWdlJ10gPSAnVXNhZ2UnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdQZXJtaXNzaW9ucyc7CiRsYW5nWydkdXBsaWNhdGluZyddID0gJ0NyZWF0aW5nIEluc3RhbmNlcyc7CiRsYW5nWyd1cGdyYWRpbmcnXSA9ICdVcGdyYWRpbmcnOwokbGFuZ1snYWJvdXQnXSA9ICdBYm91dCc7CiRsYW5nWydoZWxwX2dlbmVyYWwnXSA9ICc8aDM+R2VuZXJhbCBJbmZvPC9oMz4gICAgICAKICAgIDxwPlNpbXBseSBwdXQsIExpc3RJdEV4dGVuZGVkIGFsbG93cyB5b3UgdG8gY3JlYXRlIGxpc3RzIHRoYXQgeW91IGNhbiBkaXNwbGF5IHRocm91Z2hvdXQgeW91ciB3ZWJzaXRlLiBZb3UgY291bGQgbWFrZSBhIHNpbXBsZSBGQVEgb3IgVGVzdGltb25pYWxzIGZlYXR1cmUgd2l0aCB0aGlzIG1vZHVsZS4gVGhlIHdlYiBkZXZlbG9wZXIgZGVmaW5lcyBmaWVsZHMgdG8gY29uc3RyYWluIHdoYXQgZGF0YSB0aGUgY2xpZW50IGNhbiBlbnRlci4gQSBudW1iZXIgb2YgZmllbGQgdHlwZXMgY2FuIGJlIHNwZWNpZmllZCAtIHRleHQgaW5wdXQsIGNoZWNrYm94LCB0ZXh0IGFyZWEsIHNlbGVjdCBkYXRlLCB1cGxvYWQgZmlsZSwgc2VsZWN0IGZpbGUsIGRyb3Bkb3duIC0gYW5kIGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBzZXQgZm9yIGVhY2ggdHlwZSwgZm9yIGV4YW1wbGUsIGlucHV0IGZpZWxkIHNpemUsIG1heCBsZW5ndGgsIFdZU0lXWUcgZWRpdG9yLCBwb3NzaWJsZSBkcm9wIGRvd24gdmFsdWVzLCBwb3NzaWJsZSBmaWxlIGV4dGVuc2lvbnMsIGRpcmVjdG9yeSBwYXRocyBmb3IgZmlsZSBzZWxlY3Rpb25zLCBkYXRlIGZvcm1hdHMsIGV0Yy4uPC9wPgogICAgPHA+QW4gaW1wb3J0YW50IG5vdGUgb2Ygd2FybmluZyAtIFRoaXMgaXMgbm90IGEgY29udGVudCBjb25zdHJ1Y3Rpb24ga2l0LCBzdWNoIGFzIGluIERydXBhbC4gSXQgaXMgbWVhbnQgZm9yIHNtYWxsIGxpc3RpbmdzLCBub3QgdG8gc3RvcmUgdGhvdXNhbmRzIG9mIHJlY29yZHMuIFRoaXMgaXMgYmVjYXVzZSBvZiB0aGUgZGF0YWJhc2UgbW9kZWwgdXNlZCAoRUFWKS4gQWxzbywgZWFjaCBiaXQgb2YgZGF0YSB5b3UgZW50ZXIgaXMgc3RvcmVkIGFzIFRFWFQgZGF0YSB0eXBlLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgaXQgaXMgdmFyY2hhciwgYm9vbGVhbiwgdGltZXN0YW1wLCBldGMuIFRoaXMgaXMgYSByZXN0cmljdGlvbiBvZiBhIHNob3J0IGRldmVsb3BtZW50IHRpbWUgZnJhbWUuPC9wPic7CiRsYW5nWydoZWxwX3VzYWdlJ10gPSAnPGgzPlVzYWdlPC9oMz4gICAgICAgICAgIAogICAgPHA+WW91IGNhbiBjb25maWd1cmUgeyRtb2R1bGVfbmFtZX0gaGVyZTogQ29udGVudCAmcmFxdW87IHskbW9kdWxlX25hbWV9PC9wPgogICAgPHA+UGxhY2UgdGhpcyB0YWcgaW4geW91ciBwYWdlOiB7eyRtb2R1bGVfbmFtZX19PC9wPjxiciAvPic7CiRsYW5nWydoZWxwX3VzYWdlX29wdGlvbnMnXSA9ICdBZnRlciBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgdGhlIG5leHQgdGhpbmcgdG8gZG8gaXMgc2V0IHRoZSBvcHRpb25zLiAgICAgICAgICAgICAgICAgCiAgICA8b2w+ICAgICAgICAgICAgICAgICAgICAKICAgICAgICA8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgaW4gdGhlIG1lbnUgY2hhbmdlIHRoZSAiTW9kdWxlIEZyaWVuZGx5IE5hbWUiLjwvbGk+CiAgICAgICAgPGxpPlRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgaXRlbSB0YWIgY2hhbmdlIHRoZSAiSXRlbSBQbHVyYWwiLjwvbGk+CiAgICA8L29sPic7CiRsYW5nWydoZWxwX3VzYWdlX2ZpZWxkZGVmcyddID0gJ05leHQgLSBzZXQgdGhlIEZpZWxkIERlZmluaXRpb25zLiAKICAgIDxvbD4KICAgICAgICA8bGk+Q2hvb3NlIGZyb20gIlRleHQgSW5wdXQiLCAiQ2hlY2tib3giLCAiVGV4dCBBcmVhIiwgIlNlbGVjdCBEYXRlIiwgIlNlbGVjdCBGaWxlIiwgIkNvbnRlbnQgUGFnZXMiICAmYW1wOyAiRHJvcGRvd24iLjwvbGk+CiAgICAgICAgPGxpPkZvciBlYWNoIGZpZWxkIGRlZmluaXRpb24sIHlvdSBjYW4gc3BlY2lmeSBvciBjaG9vc2UgYWRkaXRpb25hbCBzZXR0aW5nczxiciAvPiBmcm9tIGF2YWlsYWJsZSBvcHRpb25zIHdoaWNoIGRlcGVuZCBvbiBmaWVsZCBkZWZpbml0aW9uIHR5cGUuPC9saT4KICAgICAgICA8bGk+RWFjaCBpdGVtIGluIGVhY2ggbGlzdCBoYXMgdGhyZWUgZGVmYXVsdCBmaWVsZHMuIDxiciAvPkFsbCBGaWVsZCBEZWZpbml0aW9ucyBzZXQgaGVyZSBhcmUgYWRkaXRpb25hbCB0byB0aGVtLjwvbGk+CiAgICA8L29sPic7CiRsYW5nWydoZWxwX3VzYWdlX2NhdGVnb3JpZXMnXSA9ICdUaGVyZSBpcyBhIHNpbmdsZSBjYXRlZ29yeSBieSBkZWZhdWx0IGNhbGxlZCAiR2VuZXJhbCIuIFRoaXMgY2FuIGJlIHJlbmFtZWQgYW5kIGFkZGl0aW9uYWwgQ2F0ZWdvcmllcyBjYW4gYmUgYWRkZWQuJzsKJGxhbmdbJ2hlbHBfdXNhZ2VfaXRlbXMnXSA9ICdOb3cgd2UgbW92ZSBvbiB0byB0aGUgaXRlbSBsaXN0IGl0c2VsZi4gSW4gdGhpcyBleGFtcGxlIGl0IHNheXMgIkFkZCBCb3giLCB0aGlzIHdhcyByZW5hbWVkIGluIHRoZSAiT3B0aW9ucyIgdGFiLiAKICAgIDxvbD4KICAgICAgICA8bGk+VGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBkZWZhdWx0ICJUaXRsZSIgZmllbGQuPC9saT4KICAgICAgICA8bGk+VGhlICJDYXRlZ29yeSIgZHJvcGRvd24gaXMgYWxzbyBhIGRlZmF1bHQgZmllbGQsIGFuZCBpZiB1bmNoYW5nZWQsIHdpbGwgYmUgc2V0IHRvICJHZW5lcmFsIi48L2xpPgogICAgICAgIDxsaT5UaGUgdGhpcmQgZGVmYXVsdCBmaWVsZCBpcyB0aGUgY2hlY2tib3ggY2FsbGVkICJBY3RpdmUiLiBUaGlzIGFsbG93cyB5b3UgdG8gdG9nZ2xlIGEgbGlzdCBlbnRyeSB3aXRob3V0IGRlbGV0aW5nIGl0LjwvbGk+CiAgICA8L29sPic7CiRsYW5nWydoZWxwX3Blcm1pc3Npb25zJ10gPSAnPGgzPlBlcm1pc3Npb25zPC9oMz4KICAgIDxwPllvdSBjYW4gc3BlY2lmeSB0aGUgZm9sbG93aW5nIHBlcm1pc3Npb25zIHVuZGVyIFVzZXJzICYgR3JvdXBzID4gR3JvdXAgUGVybWlzc2lvbnM8L3A+CiAgICA8dWw+CiAgICAgICAgPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgSXRlbXM8L2xpPgogICAgICAgIDxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IENhdGVnb3JpZXM8L2xpPgogICAgICAgIDxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IE9wdGlvbnM8L2xpPgogICAgPC91bD4KICAgIDxwPlRvIGFsbG93IG5vbi1hZG1pbiB1c2VycyB0byB1cGxvYWQgZmlsZXMsIHBsZWFzZSBnbyB0byBFeHRlbnNpb25zID4gR0JGaWxlUGlja2VyIGFuZCB0aWNrIHRoYXQgZmlyc3QgY2hlY2tib3ggIlNob3cgZmlsZW1hbmFnZW1lbnQgb3B0aW9ucyIuPC9wPic7CiRsYW5nWydoZWxwX2ZpZWxkZGVmcyddID0gJzxoMz5GaWVsZCBEZWZpbml0aW9uczwvaDM+CiAgICA8cD5UaGUgZmlyc3QgdGhpbmcgeW91IHNob3VsZCBjb25maWd1cmUgYXJlIHlvdXIgZmllbGQgZGVmaW5pdGlvbnMuPC9wPgogICAgPHA+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgc2V0dGluZ3MgYnkgY2hvb3NpbmcgZnJvbSBhdmFpbGFibGUgb3B0aW9ucy48L3A+CiAgICAKICAgIDxoMz5EZWZhdWx0IEZpZWxkIERlZmluaXRpb25zIGJ5IHR5cGU8L2gzPgogICAgPHVsPgogICAgICAgIDxsaT5UZXh0IElucHV0PC9saT4KICAgICAgICA8bGk+Q2hlY2tib3g6PC9saT4KICAgICAgICA8bGk+VGV4dCBBcmVhPC9saT4KICAgICAgICA8bGk+U2VsZWN0IEZpbGU8L2xpPgogICAgICAgIDxsaT5Ecm9wZG93bjwvbGk+CiAgICAgICAgPGxpPkNvbnRlbnQgUGFnZXM8L2xpPgogICAgICAgIDxsaT5SYWRpbyBCdXR0b25zPC9saT4KICAgICAgICA8bGk+U2VsZWN0IERhdGVUaW1lPC9saT4KICAgICAgICA8bGk+TXVsdGkgU2VsZWN0PC9saT4KICAgICAgICA8bGk+Q2hlY2tib3ggR3JvdXA8L2xpPgogICAgICAgIDxsaT5TbGlkZXI8L2xpPgogICAgPC91bD4KICAgIAogICAgPGgzPkN1c3RvbSBGaWVsZCBEZWZpbml0aW9uczwvaDM+CiAgICA8cD5TaW5jZSBWZXJzaW9uIDEuMyBmaWVsZCBkZWZpbml0aW9ucyBoYXZlIGJlZW4gY29tcGxldGVseSByZXdyaXR0ZW4uPGJyIC8+CiAgICBBcyBhIHJlc3VsdCB5b3UgY2FuIG5vdyBjcmVhdGUgeW91ciBjdXN0b20gZmllbGQgZGVmaW5pdGlvbnMgYnkgZm9sbG93aW5nIG5hbWluZyBjb252ZW50aW9uIGluIExpc3RJdEV4dGVuZGVkIG1vZHVsZS48L3A+CiAgICA8cD5Gb2xsb3dpbmcgdGhlc2UgY2hhbmdlcyB0aGVzZSBjaGFuZ2VzLCBMaXN0SXRFeHRlbmRlZCBUZWFtIGhhcyBhbHNvIHJlbGVhc2VkIGEgbW9kdWxlIG5hbWVkIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0MnhkZWZzIiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0MlhEZWZzPC9hPiB0aGF0IGlzIHNpbXBseSBhIHdyYXBwZXIgbW9kdWxlIGZvciBDdXN0b20gRmllbGQgZGVmaW5pdGlvbnMuPGJyIC8+CiAgICBXaGVuIGNyZWF0aW5nIHlvdXIgY3VzdG9tIGZpbGVkIGZvciBleGFtcGxlICJNeUZpZWxkIiAod2hlcmUgTXlGaWVsZCB3b3VsZCBiZSBuYW1lIG9mIHlvdXIgY3VzdG9tIGZpZWxkKSB5b3Ugd291bGQgY3JlYXRlICJNeUZpZWxkIiBmb2xkZXIgaW5zaWRlICJGTGlzdEl0MlhEZWZzL2ZpZWxkZGVmcyIgZm9sZGVyIGFuZCBhZGQgbmVlZGVkIGZpbGVzIGluIHRoaXMgcGFydGljdWxhciBmb2xkZXIuPGJyIC8+CiAgICBGaWVsZGRlZiBmaWxlIGhhcyB0byBiZSBwcmVmaXhlZCB3aXRoICJsaXN0aXQyZmQiIGZvciBleGFtcGxlICJsaXN0aXQyZmQuTXlGaWVsZC5waHAiLCBmb3IgaW5wdXQgZmllbGQgdGVtcGxhdGUgd2hpY2ggaXMgdXNlZCB3aGVuIG1hbmFnaW5nIEl0ZW0geW91IHdvdWxkIG5lZWQgImlucHV0Lk15RmllbGQudHBsIiBhbmQgYXMgZmllbGQgZGVmaW5pdGlvbiBzZXR0aW5ncyB0ZW1wbGF0ZSB5b3Ugd291bGQgbmVlZCBhZG1pbi5NeUZpZWxkLnRwbCAob25seSBuZWVkZWQgaWYgYWRkaXRpb25hbCBzZXR0aW5ncyBhcmUgcG9zc2libGUgZm9yIHRoaXMgZmllbGQpLjwvcD4KICAgIDxwPkFmdGVyIHlvdSBhcmUgZG9uZSB3cml0aW5nIHlvdXIgb3duIGN1c3RvbSBmaWVsZCBkZWZpbml0aW9uLCB5b3Ugd2lsbCBoYXZlIHRvIGdvIHRvICJNb2R1bGVzICZyYXF1bzsgTGlzdEl0MiIgY2xpY2sgb24gIkZpZWxkIERlZmluaXRpb25zIiB0YWIgYW5kIHNjYW4gZm9yIG5ldyBmaWVsZCBkZWZpbml0aW9ucyBieSBjbGlja2luZyBvbiAiU2NhbiBGaWVsZCBEZWZpbml0aW9ucyIgYnV0dG9uLjwvcD48YnIgLz4KICAgIDxoND48c3Ryb25nPldhdGNoIHRoaXMgdmlkZW8gZm9yIGRldGFpbGVkIGluc3RydWN0aW9uczwvc3Ryb25nPjwvaDQ+JzsKJGxhbmdbJ2hlbHBfdXBncmFkaW5nJ10gPSAnPGgzPlVwZ3JhZGluZyBmcm9tIDEuMi54IHRvIDEuMy54PC9oMz4KICAgIDxoND5TdGVwIG9uZTwvaDQ+CiAgICA8cCBjbGFzcz0icmVkIj48c3Ryb25nPlBsZWFzZSByZWFkIHVwZ3JhZGUgSW5mb3JtYXRpb24gYWJvdmUhPGJyIC8+CiAgICBNYWtlIHN1cmUgeW91IGNyZWF0ZSBCYWNrdXAgb3IgeW91ciBXZWJzaXRlIGFuZCBEYXRhYmFzZSBiZWZvcmUgYW55IGZ1cnRoZXIgYWN0aW9uczwvc3Ryb25nPjwvcD4KICAgIDxwPkFzIG1lbnRpb25lZCBhZnRlciB1cGdyYWRlIGZyb20gMS4yLnggdG8gMS4zIHRoZSBmaXJzdCBzdGVwIHlvdSB3aWxsIGhhdmUgdG8gbWFrZSBpcyBpbnN0YWxsaW5nIG5ld2x5IGNyZWF0ZWQgPHN0cm9uZz57TGlzdEl0Mk9yaWdpbmFsfTwvc3Ryb25nPiBJbnN0YW5jZS48YnIgLz4KICAgIE9uY2UgdGhpcyBJbnN0YW5jZSBpcyBpbnN0YWxsZWQgeW91ciBvbGQgT3JpZ2luYWwgTGlzdEl0MiBJdGVtcyB3aWxsIGJlIGF2YWlsYWJsZSBpbiBMaXN0SXQyT3JpZ2luYWwgSW5zdGFuY2Ugd2hpY2ggeW91IHdpbGwgZmluZCBpbiAiQ29udGVudCIgYmFja2VuZCBzZWN0aW9uLjwvcD4KICAgIDxwPkF0IHRoaXMgbW9tZW50IHlvdXIgRnJvbnRlbmQgd2lsbCBtb3N0IHBvc3NpYmx5IGJlIGJyb2tlbiwgZGlzcGxheWluZyBhIEVycm9yIGFib3V0IG5vdCByZWNvZ25pemVkIFNtYXJ0eSBUYWcgZm9yIGV4YW1wbGUgInVua25vd24gdGFnIExpc3RJdDIiLCB5b3Ugc2hvdWxkIHJlcGxhY2UgYW55IG9mIHtMaXN0SXQyfSB0YWdzIHlvdSBhcmUgdXNpbmcgaW4geW91ciBQYWdlcyBvciBUZW1wbGF0ZXMgdG8ge0xpc3RJdDJPcmlnaW5hbH0uPC9wPgogICAgPGg0PlN0ZXAgdHdvPC9oND4KICAgIDxwPkR1ZSB0byBsaW1pdGF0aW9uIGluIG1vZHVsZSB1cGdyYWRlIHByb2Nlc3MsIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBkZXRlY3QgYW55IG9mIHlvdXIgcHJldmlvdXMgTGlzdEl0MiBNb2R1bGUgc2V0dGluZ3MsIHdoaWNoIG1lYW5zIHRoYXQgeW91IHNob3VsZCBtYWtlIHN1cmUgdG8gY2hhbmdlIHRoZXNlIHNldHRpbmdzIGluICJDb250ZW50ICZyYXF1bzsgTGlzdEl0Mk9yaWdpbmFsIiBhZ2FpbiB0byB5b3VyIHByZWZlcmVuY2UuPGJyIC8+CiAgICBBbHNvIHlvdSB3aWxsIGhhdmUgdG8gc2V0IGFueSBUZW1wbGF0ZSBpbiAiVGVtcGxhdGVzIiB0YWIgdGhhdCB5b3UgaGF2ZSBiZWVuIHVzaW5nIGJlZm9yZSBhcyBEZWZhdWwgdGVtcGxhdGUgYmFjayB0byAiZGVmYXVsdCIgaWYgeW91IGFyZSBub3QgdXNpbmcgInN1bWFyeXRlbXBsYXRlIiBvciAiZGV0YWlsdGVtcGxhdGUiIG9yIGFueSBUZW1wbGF0ZSByZWxhdGVkIHBhcmFtZXRlcnMuPC9wPgogICAgPGg0PlN0ZXAgdGhyZWU8L2g0PgogICAgPHA+SW4gY2FzZSB5b3UgaGF2ZSBiZWVuIHVzaW5nIEZpZWxkIGRlZmluaXRpb25zIGxpa2UgR0JGaWxlUGlja2VyIFVwbG9hZCBGaWxlIG9yIEdhbGxlcnkgc2VsZWN0aW9uLCBwbGVhc2Ugbm90ZSB0aGF0IHRoZXNlIGFyZSBubyBsb25nZXIgcGFydCBvZiBMaXN0SXRFeHRlbmRlZCBNb2R1bGUuPGJyIC8+CiAgICBSZWFzb24gZm9yIHRoaXMgaXMgc2ltcGx5IHRoYXQgRmllbGQgZGVmaW5pdGlvbnMgaGF2ZSBiZWVuIGNvbXBsZXRlbHkgcmV3cml0ZW4gbWFraW5nIGl0IHBvc3NpYmxlIGZvciB5b3UgdG8gY3JlYXRlIHlvdXIgb3duIGN1c3RvbSBGaWVsZCBkZWZpbml0aW9ucyBhbmQgc2ltcGx5IExpc3RJdEV4dGVuZGVkIERFViBUZWFtIGNhbiBub3Qgc3VwcG9ydCBhbnkgdGhpcmQgcGFydHkgTW9kdWxlcyBhcyBwYXJ0IG9mIExpc3RJdEV4dGVuZGVkIE1vZHVsZSBhbmQgdGhlcmVmb3IgcG9zc2libHkgZGVsYXlpbmcgcmVsZWFzZXMgaW4gZnV0dXJlIGR1ZSB0byBNb2R1bGUgaW5jb21wYXRpYmlsaXR5IG9yIGFueXRoaW5nIGVsc2UuPC9wPgogICAgPHA+VG8gbWFrZSB5b3VyIG9sZCBVcGxvYWQgRmlsZSBvciBHYWxsZXJ5IEZpZWxkcyB3b3JraW5nIGFnYWluIHlvdSB3aWxsIGhhdmUgdG8gaW5zdGFsbCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2xpc3RpdDJ4ZGVmcyIgdGFyZ2V0PSJfYmxhbmsiPkxpc3RJdEV4dGVuZGVkIFhEZWZzPC9hPiBNb2R1bGUgd2hpY2ggaXMgYSBHYXRld2F5IG1vZHVsZSB0byBMaXN0SXRFeHRlbmRlZCBjdXN0b20gRmllbGQgZGVmaW5pdGlvbnMuPGJyIC8+CiAgICBBZnRlciBMaXN0SXRFeHRlbmRlZCBYRGVmcyBpcyBpbnN0YWxsZWQgeW91IHdpbGwgZmluZCBhIGxpc3Qgb2YgYXZhaWxhYmxlIEZpZWxkIERlZmluaXRpb25zIGluICJFeHRlbnNpb25zICZyYXF1bzsgTGlzdEl0MiIgYnkgY2xpY2tpbmcgb24gIkZpZWxkIERlZmluaXRpb25zIiB0YWIuPGJyIC8+CiAgICBJZGVhbGx5IHlvdXIgRmllbGQgZGVmaW5pdGlvbnMgc2hvdWxkIHdvcmsgYWdhaW4sIGlmIHRoYXQgaXMgbm90IHRoZSBjYXNlIHlvdSBzaG91bGQgdHJ5IHRvIHJlcGFpciBGaWVsZCBkZWZpbml0aW9ucyBkYXRhYmFzZSB0YWJsZSBieSBjbGlja2luZyBvbiAiUmVwYWlyIiBidXR0b24gdW5kZXIgIk1haW50ZW5hbmNlIiB0YWIuPC9wPjxiciAvPgogICAgPHA+PHN0cm9uZz5JZiB5b3UgaGF2ZSBmb2xsb3dlZCBhYm92ZSBzdGVwcywgeW91IHNob3VsZCBub3cgaGF2ZSBhIGZ1bGx5IGZ1bmN0aW9uYWwgYW5kIHVwZ3JhZGVkIExpc3RJdEV4dGVuZGVkIE1vZHVsZSBhbmQgYWxsIGNyZWF0ZWQgSW5zdGFuY2VzLjwvc3Ryb25nPjwvcD4nOwokbGFuZ1snaGVscF9jYXRlZ29yaWVzJ10gPSAnPGgzPkNhdGVnb3JpZXM8L2gzPgogICAgPHA+TXVsdGkgbGV2ZWwgY2F0ZWdvcmllcyBhcmUgc3VwcG9ydGVkLjwvcD4nOwokbGFuZ1snaGVscF90ZW1wbGF0ZXMnXSA9ICc8aDM+VGVtcGxhdGVzPC9oMz4KICAgIDxwPklmIHlvdSBhcmUgbm90IHN1cmUgd2hhdCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZSB0byB1c2UgaW4geW91ciB0ZW1wbGF0ZXMsIHRyeSBkZWJ1Z2dpbmc6PC9wPgogICAgPHA+e3skbW9kdWxlX25hbWV9IGRlYnVnPTF9PC9wPgogICAgPHA+WW91IGNhbiBhY2Nlc3MgYW55IGZpZWxkIGRpcmVjdGx5IHdoZW4gbG9vcGluZyB0aHJvdWdoIGl0ZW1zIHVzaW5nIGl0cyBhbGlhcywgZm9yIGV4YW1wbGUsIHRvIGlmIHlvdSBjcmVhdGVkIGEgZmllbGQgZGVmaW5pdGlvbiB3aXRoIGFuIGFsaWFzICJwb3NpdGlvbiIsIHlvdSBjYW4gZG8gb25lIG9mIHRoZSBmb2xsb3dpbmc6PC9wPic7CiRsYW5nWydoZWxwX3RlbXBsYXRlc19jYXRlZ29yaWVzJ10gPSAnPHA+QmVzaWRlcywgeW91IGNhbiBsb29wIHRocm91Z2ggY2F0ZWdvcmllcyBpbiB0aGUgc3VtbWFyeSB0ZW1wbGF0ZSBqdXN0IGFzIHdlbGwgYXMgbG9vcGluZyB0aHJvdWdoIGl0ZW1zOjwvcD4nOwokbGFuZ1snaGVscF9kdXBsaWNhdGluZyddID0gJzxoMz5DcmVhdGluZyBNb2R1bGUgSW5zdGFuY2VzPC9oMz4KICAgIDxwPlRoaXMgbW9kdWxlIGlzIGEgQ29udHJvbCBQYW5lbCBmb3IgY3JlYXRpbmcgTGlzdEl0RXh0ZW5kZWQgTW9kdWxlIEluc3RhbmNlcy4gVG8gY3JlYXRlIExpc3RJdEV4dGVuZGVkIG1vZHVsZSBJbnN0YW5jZSwgc2ltcGx5IGdvIHRvICJJbnN0YW5jZXMiIHRhYiBhbmQgY2xpY2sgb24gIkNyZWF0ZSBJbnN0YW5jZSIgYnV0dG9uLjxiciAvPgogICAgTWFrZSBzdXJlIHlvdSBmb2xsb3cgdGhlIENNU01TIG1vZHVsZSBuYW1pbmcgY29udmVudGlvbnMsIGEteiB3aXRoIG5vIHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgb3Igc3BhY2VzIHRvIGJlIHNhZmUgOik8YnIgLz4KICAgIEFmdGVyIHRoZSBtb2R1bGUgaGFzIGJlZW4gY3JlYXRlZCBhIG5ldyBpbnN0YW5jZSB3aWxsIGJlIGluc3RhbGxlZCBhbmQgbGlzdGVkIGluIG9yaWdpbmFsIExpc3RJdEV4dGVuZGVkIG1vZHVsZSB1bmRlciAiSW5zdGFuY2VzIiB0YWIuPC9wPjxiciAvPgogICAgPHA+WW91IGNhbiBhbHdheXMgY2hhbmdlIHRoZSBtb2R1bGUgZnJpZW5kbHkgbmFtZSBvbmNlIGluc3RhbGxlZCB1bmRlciAiT3B0aW9ucyIgKENvbnRlbnQgJnJhcXVvOyBMaXN0SXQyTmFtZU9mRHVwbGljYXRlKS48YnIgLz4KICAgIFRvIGNoYW5nZSB0aGUgaWNvbiwgcmVwbGFjZSAvbW9kdWxlcy97JG1vZHVsZV9uYW1lfU5hbWVPZkR1cGxpY2F0ZS9pbWFnZXMvaWNvbi5naWYuPGJyIC8+CiAgICBUbyBjaGFuZ2UgQWRtaW4gc2VjdGlvbiBvZiB0aGUgbW9kdWxlLCBzaW1wbHkgc2VsZWN0IGFwcHJvcHJpYXRlIHNlY3Rpb24gZnJvbSBEcm9wZG93bi4gTWFrZSBzdXJlIHlvdSBjbGVhciB0aGUgY2FjaGUgYWZ0ZXIgdGhlc2UgY2hhbmdlcy48L3A+JzsKJGxhbmdbJ2hlbHBfYWJvdXQnXSA9ICc8aDM+QWJvdXQ8L2gzPgogICAgPHA+T3JpZ2luIG9mIHRoaXMgbW9kdWxlIGNvbWVzIGZyb20gPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9saXN0aXQiIHRhcmdldD0iX2JsYW5rIj5MaXN0SXQgTW9kdWxlPC9hPiBkZXZlbG9wZWQgYnkgQmVuIE1hbGVuLjxiciAvPkFzIHRoZXJlIHdlcmUgbm8gcGxhbnMgb24gZnVydGhlciBkZXZlbG9wbWVudCBvZiB0aGUgbW9kdWxlIHNvbWUgcGVvcGxlIGRlY2lkZWQgdG8gZm9yayB0aGUgbW9kdWxlIGFuZCBjb250aW51ZSB3aXRoIGRldmVsb3BtZW50LjxiciAvPgogICAgSWYgeW91IGZpbmQgYW55IGJ1Z3MgcGxlYXNlIGZlZWwgZnJlZSB0byBzdWJtaXQgYSBidWcgcmVwb3J0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvYnVnL2xpc3QvMTAxNSIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+IG9yIGZvciBhbnkgZ29vZCBpZGVhcyBjb25zaWRlciBzdWJtaXRpbmcgYSBmZWF0dXJlIHJlcXVlc3QgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9mZWF0dXJlX3JlcXVlc3QvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uIDwvcD4KICAgIDxwPlBsZWFzZSBrZWVwIGluIG1pbmQgdGhhdCBkZXZlbG9wZXJzIGRvIGhhdmUgdGhlaXIgZGFpbHkgam9icyB3aGljaCBtZWFucyB0aGF0IGZlYXR1cmUgcmVxdWVzdHMgYXJlIGNvbnNpZGVyZWQgYW5kIGRvbmUgYXMgdGltZSBhbGxvd3MuIElmIHlvdSBuZWVkIGEgZmVhdHVyZSByZWFsbHkgYmFkbHkgY29uc2lkZXIgY29udGFjdGluZyBvbmUgb2YgdGhlIGRldmVsb3BlcnMgZm9yIGEgc3BvbnNvcmVkIGRldmVsb3BtZW50LgogICAgPC9wPgogICAgPGgzPlRlYW08L2gzPgogICAgPHVsPgogICAgICAgIDxsaT5Kb25hdGhhbiBTY2htaWQgKEZvYWx5KikgaGlAam9uYXRoYW5zY2htaWQuZGUgPGJyIC8+d3d3LmpvbmF0aGFuc2NobWlkLmRlPC9saT4KICAgICAgICA8bGk+R29yYW4gSWxpYyAodW5pcXUzKSBnLmlsaWNAaS1hcnRzLmV1IDxiciAvPnd3dy5pY2gtbWFjaC1kYXMuYXQ8L2xpPgogICAgICAgIDxsaT5Sb2JlcnQgQ2FtcGJlbGwgKGNhbGd1eTEwMDApIGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcgIDxiciAvPnd3dy5jYWxndXkxMDAwLmNvbTwvbGk+CiAgICAgICAgPGxpPkx1a2FzIEJsYXR0ZXIgKG5vY2tlbmZlbGwpIG5vY2tlbmZlbGxAZ21haWwuY29tIDxiciAvPnd3dy5ibGF0dGVydGVjaC5jaDwvbGk+CiAgICAgICAgPGxpPkFybm91ZCAoYXJub3VkKSBhcm5vdWRAdXBzZXJ2aWNlLm5sIDxiciAvPnd3dy51cHNlcnZpY2Uubmw8L2xpPgogICAgICAgIDxsaT5XYXluZSBPTmVpbCAod2lzaGJvbmUpIHdheW5lQHRlYW13aXNoYm9uZS5jb20gPGJyIC8+d3d3LnRlYW13aXNoYm9uZS5jb208L2xpPgogICAgICAgIDxsaT5UYXBpbyBMw7Z5dHl5IChTdGlra2kpIHRhcHNhQGJsYWNrbWlsay5maTwvbGk+CiAgICA8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJwogICAgT3ZlcnJpZGUgdGhlIGRlZmF1bHQgYWN0aW9uLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOgogICAgPHVsPgogICAgICAgIDxsaT4mcXVvdDtkZWZhdWx0JnF1b3Q7IC0gZGlzcGxheXMgdGhlIHN1bW1hcnkgdmlldy48L2xpPgogICAgICAgIDxsaT4mcXVvdDtkZXRhaWwmcXVvdDsgLSBkaXNwbGF5cyBhIHNwZWNpZmllZCBlbnRyeSBpbiBkZXRhaWwgbW9kZS48L2xpPgogICAgICAgIDxsaT4mcXVvdDtzZWFyY2gmcXVvdDsgLSBkaXNwbGF5cyB0aGUgc2VhcmNoIGZvcm0uIE9wdGlvbmFsIHBhcmFtZXRlcnMgdGhhdCBhZmZlY3QgdG8gdGhpcyBhY3Rpb24gb25seTogPGVtPmZpbHRlci48L2VtPjwvbGk+CiAgICAgICAgPGxpPiZxdW90O2NhdGVnb3J5JnF1b3Q7IC0gZGlzcGxheXMgdGhlIGNhdGVnb3JpZXMuIE9wdGlvbmFsIHBhcmFtZXRlcnMgdGhhdCBhZmZlY3QgdG8gdGhpcyBhY3Rpb24gb25seTogPGVtPnNob3dfaXRlbXMsIGNvbGxhcHNlLCBudW1iZXJfb2ZfbGV2ZWxzLjwvZW0+PC9saT4KICAgIDwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2FsbCddID0gJ1Nob3cgYWxsIGl0ZW1zLCBpcnJlc3BlY3RpdmUgb2YgZW5kIGRhdGUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IGFuIGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBhbGlhc2VzIG9mIHRoZSBjYXRlZ29yeS9jYXRlZ29yaWVzIGRpc3BsYXllZCBpdGVtcyBtdXN0IGJlIGEgbWVtYmVyIG9mLic7CiRsYW5nWydoZWxwX3BhcmFtX2V4Y2x1ZGVfY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IGFuIGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBhbGlhc2VzIG9mIHRoZSBjYXRlZ29yeS9jYXRlZ29yaWVzIGRpc3BsYXllZCBpdGVtcyBtdXNuXCd0IGJlIGEgbWVtYmVyIG9mLic7CiRsYW5nWydoZWxwX3BhcmFtX3N1YmNhdGVnb3J5J10gPSAnSWYgcGFyYW1ldGVyIFwnY2F0ZWdvcnlcJyBpcyBzcGVjaWZpZWQsIHRoaXMgcGFyYW1ldGVyIHNldCB0byA8ZW0+dHJ1ZTwvZW0+IHdpbGwgbWFrZSBhbGxvd2FuY2UgZm9yIHN1YmNhdGVnb3JpZXNcJyBpdGVtcy4gSXQgaXMgc2V0IHRvIGZhbHNlIGJ5IGRlZmF1bHQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdUaGUgZGV0YWlsIHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdUaGUgc3VtbWFyeSB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNodGVtcGxhdGUnXSA9ICdUaGUgc2VhcmNoIHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9jYXRlZ29yeXRlbXBsYXRlJ10gPSAnVGhlIGNhdGVnb3J5IHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9vcmRlcmJ5J10gPSAnWW91IGNhbiBvcmRlciBieSBhbnkgb2YgdGhlIGZvbGxvd2luZyBjb2x1bW5zOiBpdGVtX2lkLCBpdGVtX3RpdGxlLCBpdGVtX3Bvc2l0aW9uLCBpdGVtX2NyZWF0ZWQsIGNhdGVnb3J5X2lkLCBjYXRlZ29yeV9uYW1lLCBjYXRlZ29yeV9wb3NpdGlvbiwgY2F0ZWdvcnlfaGllcmFyY2h5LCByYW5kIGFuZCBhbHNvIGJ5IGN1c3RvbSBmaWVsZHMgd2l0aCBjdXN0b21fKiAoKiB3b3VsZCBiZSBmaWVsZCBkZWZpbml0aW9uIGFsaWFzKS48YnIgLz4KICAgIDx1bD4KICAgICAgICA8bGk+Rm9yIGV4YW1wbGU6PGJyIC8+CiAgICAgICAgb3JkZXJieT1cJ2NhdGVnb3J5X25hbWUsIGl0ZW1fdGl0bGVcJzwvbGk+CiAgICAgICAgPGxpPldpdGggZmllbGRkZWYgdmFsdWVzOjxiciAvPgogICAgICAgIG9yZGVyYnk9XCdjdXN0b21fW2ZpZWxkZGVmIGFsaWFzXVwnPC9saT4gICAgICAgIAogICAgICAgIDxsaT5Zb3UgY2FuIGFsc28gc3BlY2lmeSBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBmb3IgYW55IGNvbHVtbiwgZm9yIGV4YW1wbGU6PGJyIC8+CiAgICAgICAgb3JkZXJieT1cJ2NhdGVnb3J5X25hbWV8QVNDLCBpdGVtX3RpdGxlfERFU0NcJzwvbGk+CiAgICA8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzdXBwbGllZCBhbGwgbWF0Y2hpbmcgaXRlbXMgd2lsbCBiZSBkaXNwbGF5ZWQuICBJZiBpdCBpcywgYW5kIHRoZXJlIGFyZSBtb3JlIGl0ZW1zIGF2YWlsYWJsZSB0aGFuIHNwZWNpZmllZCBpbiB0aGUgcGFyYW1ldGVyLCB0ZXh0IGFuZCBsaW5rcyB3aWxsIGJlIHN1cHBsaWVkIHRvIGFsbG93IHNjcm9sbGluZyB0aHJvdWdoIHRoZSByZXN1bHRzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3RhcnQnXSA9ICdTdGFydCBhdCB0aGUgbnRoIGl0ZW0gLS0gbGVhdmluZyBlbXB0eSB3aWxsIHN0YXJ0IGF0IHRoZSBmaXJzdCBpdGVtLic7CiRsYW5nWydoZWxwX3BhcmFtX251bWJlciddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKSAtLSBsZWF2aW5nIGVtcHR5IHdpbGwgc2hvdyBhbGwgaXRlbXMuIFRoaXMgaXMgYSBzeW5vbnltIGZvciB0aGUgcGFnZWxpbWl0IHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnUGFnZSB0byBkaXNwbGF5IGl0ZW0gZGV0YWlscyBpbi4gTXVzdCBiZSBhIHBhZ2UgYWxpYXMuIFVzZWQgdG8gYWxsb3cgZGV0YWlscyB0byBiZSBkaXNwbGF5ZWQgaW4gYSBkaWZmZXJlbnQgcGFnZSB0aGFuIHN1bW1hcnkuJzsKJGxhbmdbJ2hlbHBfcGFyYW1faXRlbSddID0gJ1RoaXMgcGFyYW1ldGVyIGlzIG9ubHkgYXBwbGljYWJsZSB0byB0aGUgZGV0YWlsIHZpZXcuIEl0IGFsbG93cyBzcGVjaWZ5aW5nIHdoaWNoIGl0ZW0gdG8gZGlzcGxheSBpbiBkZXRhaWwgbW9kZS4gTXVzdCBiZSBhbiBpdGVtIGFsaWFzLic7Ci8vJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoJ10gPSAnU2VhcmNoIGFsbCBmaWVsZHMuIFVzZXMgZnVsbHRleHQgc2VhcmNoLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaF8nXSA9ICdTZWFyY2ggYSBwYXJ0aWN1bGFyIGZpZWxkLiBZb3UgY2FuIHVzZSBcJ3RpdGxlXCcgb3IgdGhlIGFsaWFzIG9mIGEgZmllbGQgZGVmaW5pdGlvbiwgZS5nLiBzZWFyY2hfdGl0bGUuIFdpbGwgYmUgaWdub3JlZCB3aGVuIHBhcmFtZXRlciBcJ3NlYXJjaFwnIGlzIHNldCwgYnV0IG11bHRpcGxlIHNlYXJjaF8qIHBhcmFtcyBjYW4gYmUgY29tYmluZWQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZmlsdGVyJ10gPSAnQXBwbGllcyBvbmx5IHRvIGFjdGlvbjogPGVtPnNlYXJjaDwvZW0+LiBTcGVjaWZ5IHRoZSBmaWVsZHMgd2hvc2UgdmFsdWVzIHNob3VsZCBiZSBvZmZlcmVkIGFzIGZpbHRlciBvcHRpb25zIGJ5IGxpc3RpbmcgdGhlIGZpZWxkXCdzIGFsaWFzZXMgY29tbWEgc2VwYXJhdGVkLic7CiRsYW5nWydoZWxwX3BhcmFtX3JldHVybnBhZ2UnXSA9ICdVc2VkIGZvciBmaWx0ZXIgb3Igc2VhcmNoIG1vZGUgb25seS4gUGFnZSB0byBkaXNwbGF5IHNlYXJjaCByZXN1bHRzIHJlc3BlY3Rpdmx5IGZpbHRlcmVkIGl0ZW1zIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBzdW1tYXJ5IHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gZmlsdGVyIC8gc2VhcmNoIG1hc2suJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGVidWcnXSA9ICdFbmFibGVzIGRlYnVnIG1vZGUsIHByaW50aW5nIG91dCBhbGwgdGhlIG9iamVjdHMsIGFycmF5cywgdmFyaWFibGVzIGF2YWlsYWJsZSBmb3IgY3VycmVudCBhY3Rpb24uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fY29sbGFwc2UnXSA9ICdBcHBsaWVzIG9ubHkgdG8gYWN0aW9uOiA8ZW0+Y2F0ZWdvcnk8L2VtPi4gVG9nZ2xlIGNvbGxhcHNlIGNhdGVnb3JpZXMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd19pdGVtcyddID0gJ0FwcGxpZXMgb25seSB0byBhY3Rpb246IDxlbT5jYXRlZ29yeTwvZW0+LiBBcHBlbmQgaXRlbXMgdG8gY2F0ZWdvcnkgdHJlZS4nOwokbGFuZ1snaGVscF9wYXJhbV9udW1iZXJfb2ZfbGV2ZWxzJ10gPSAnQXBwbGllcyBvbmx5IHRvIGFjdGlvbjogPGVtPmNhdGVnb3J5PC9lbT4uIE51bWJlciBvZiBvZiBjYXRlZ29yeSBsZXZlbHMgdG8gc2hvdy4nOwokbGFuZ1snaGVscF9wYXJhbV9pbmNsdWRlX2l0ZW1zJ10gPSAnU3BlY2lmeSBhbiBpZC9hbGlhcyBvciBjb21tYSBzZXBhcmF0ZWQgaWRzL2FsaWFzZXMgb2YgdGhlIGl0ZW1zIHlvdSB3YW5cJ3QgdG8gZGlzcGxheS4nOwokbGFuZ1snaGVscF9wYXJhbV9leGNsdWRlX2l0ZW1zJ10gPSAnU3BlY2lmeSBhbiBpZC9hbGlhcyBvciBjb21tYSBzZXBhcmF0ZWQgaWRzL2FsaWFzZXMgb2YgdGhlIGl0ZW1zIHlvdSB3YW5cJ3QgdG8gZXhjbHVkZSBmcm9tIGxpc3QuJzsKCi8vIHRoaXMgaXMgdGVtcG9yYXJ5IGZvciAxLjMgdXBncmFkZQokbGFuZ1sndXBncmFkZV93YXJuaW5nJ10gPSAnPGgzPkltcG9ydGFudCB1cGdyYWRlIEluZm9ybWF0aW9uPC9oMz4KICAgIDxwPjxzdHJvbmc+SWYgeW91IGhhdmUgdXBncmFkZWQgZnJvbSBMaXN0SXRFeHRlbmRlZCAxLjIuMiBvciBlYXJsaWVyIFZlcnNpb24gdG8gMS4zIHJlYWQgdGhpcyBjYXJlZnVsbHkhPC9zdHJvbmc+PC9wPgogICAgPHA+QWZ0ZXIgdXBncmFkZSBwcm9jZWVkdXJlIG9mIExpc3RJdEV4dGVuZGVkIDEuMyBhIG5ldyBNb2R1bGUgaW5zdGFuY2UgY2FsbGVkIExpc3RJdDJPcmlnaW5hbCB3aWxsIGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS48YnIgLz4KICAgIFBsZWFzZSBnbyB0byAiRXh0ZW5zaW9ucyAmcmFxdW87IE1vZHVsZXMiIGFuZCBpbnN0YWxsIHRoaXMgbmV3bHkgY3JlYXRlZCBJbnN0YW5jZS4gT25jZSB0aGlzIGluc3RhbmNlIHdhcyBpbnN0YWxsZWQgSXRlbXMgZnJvbSBMaXN0SXQyIHdpbGwgYmUgYXZhaWxhYmxlIGFnYWluLjxiciAvPgogICAgVW5mb3J0dW5hdGVsbHkgeW91IHdpbGwgaGF2ZSB0byBjaGFuZ2UgYWxsIHtMaXN0SXQyfSB0YWdzIGluIHlvdXIgV2Vic2l0ZSB0byB7TGlzdEl0Mk9yaWdpbmFsfSwgd2UgYXJlIHNvcnJ5IGFib3V0IHRoYXQuPC9wPic7Cgo/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[PD9waHAKJGxhbmdbJ2ludmFsaWRfY2hhcmFjdGVycyddID0gJ1plaWNoZW4gd2llOiAlcyBzaW5kIG5pY2h0IGVybGF1YnQgbWl0IGRpZXNlbiBGZWxkOiAlcyc7CiRsYW5nWydpdGVtJ10gPSAnRWludHJhZyc7CiRsYW5nWydpdGVtcyddID0gJ0VpbnRyJmF1bWw7Z2UnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdFeHRyYS1GZWxkJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0V4dHJhLUZlbGRlcic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWyd0ZW1wbGF0ZXMnXSA9ICdUZW1wbGF0ZXMgJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWVuJzsKJGxhbmdbJ29wdGlvbiddID0gJ09wdGlvbiAnOwokbGFuZ1snb3B0aW9ucyddID0gJ09wdGlvbmVuJzsKJGxhbmdbJ21haW50ZW5hbmNlJ10gPSAnV2FydHVuZyc7CiRsYW5nWydiYWNrJ10gPSAnRWluZSBTZWl0ZSB6dXImdXVtbDtjayc7CiRsYW5nWydwcm9tcHRfZml4X2ZpZWxkZGVmcyddID0gJ1ZlcnN1Y2hlIFJlcGFyYXR1ciBkZXIgRGF0ZW5iYW5rIEVpbnRyJmF1bWw7Z2UgZiZ1dW1sO3IgRXh0cmEtRmVsZGVyJzsKJGxhbmdbJ21lc3NhZ2VfZmllbGRkZWZzX2ZpeGVkJ10gPSAnRXh0cmEtRmVsZGVyIGYmdXVtbDtyIGFsbGUgSW5zdGFuemVuIHJlcGFyaWVydC4nOwokbGFuZ1snaXRlbV90aXRsZSddID0gJ1RpdGVsJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3RpdGxlJ10gPSAnVGl0ZWwgZGVzIEVpbnRyYWdzJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FrdGl2JzsKJGxhbmdbJ2NyZWF0ZV90aW1lJ10gPSAnRXJzdGVsbHVuZ3NkYXR1bSc7CiRsYW5nWyd0aW1lX2NvbnRyb2wnXSA9ICdaZWl0c3RldWVydW5nIHZlcndlbmRlbic7CiRsYW5nWydzdGFydF90aW1lJ10gPSAnU3RhcnR6ZWl0JzsKJGxhbmdbJ2VuZF90aW1lJ10gPSAnRW5kemVpdCc7CiRsYW5nWydpdGVtX3RpdGxlX2VtcHR5J10gPSAnVGl0ZWwgZGVzIEVpbnRyYWdzIGlzdCBsZWVyJzsKJGxhbmdbJ3JlcXVpcmVkX2ZpZWxkX2VtcHR5J10gPSAnUGZsaWNodGZlbGQgaXN0IGxlZXInOwokbGFuZ1sndG9vX2xvbmcnXSA9ICdGZWxkd2VydCAmdXVtbDtiZXJzY2hyZWl0ZXQgbWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydhcHByb3ZlJ10gPSAnU3RhdHVzIGF1ZiAmIzAzOTtBa3RpdiYjMDM5OyBzZXR6ZW4nOwokbGFuZ1sncmV2ZXJ0J10gPSAnU3RhdHVzIGF1ZiAmIzAzOTtJbmFrdGl2JiMwMzk7IHNldHplbic7CiRsYW5nWydzdWJtaXRfb3JkZXInXSA9ICdSZWloZW5mb2xnZSBzcGVpY2hlcm4nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXVzZ2V3JmF1bWw7aGx0ZSAlcyBsJm91bWw7c2NoZW4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVtdWx0aXBsZSddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggYWxsZSAlcyBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ3NlbGVjdF9hbGwnXSA9ICdBbGxlIGF1c3cmYXVtbDtobGVuJzsKJGxhbmdbJ2Vycm9yX3N0YXJ0Z3JlYXRlcmVuZCddID0gJ0ZFSExFUjogRGFzIFN0YXJ0ZGF0dW0gaXN0IHNwJmF1bWw7dGVyIGFscyBkYXMgRW5kZGF0dW0uJzsKJGxhbmdbJ2l0ZW1fYWxpYXNfZXhpc3RzJ10gPSAnQWxpYXMgZGVzIEVpbnRyYWdzIGV4aXN0aWVydCBiZXJlaXRzLiBEZXIgQWxpYXMg4oCL4oCLbXVzcyBlaW5kZXV0aWcgc2Vpbi4nOwokbGFuZ1sncmV0dXJuX3VybCddID0gJ1p1ciZ1dW1sO2NrJzsKJGxhbmdbJ3BhdGhjb250YWluc3ZhcnMnXSA9ICdEaWVzZXMgRmVsZCBrYW5uIG5hY2ggZGVtIGVyc3RlbiBTcGVpY2hlcm4gZGVzICVzIGJlYXJiZWl0ZXQgd2VyZGVuJzsKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfaXRlbV9pZCddID0gJ0lmIGl0ZW1faWQgaXMgZ2l2ZW4sIGl0ZW1zIGFyZSBleHBlY3RlZCB0byBiZSBleGlzdGluZyBvbmVzIGluIGRhdGFiYXNlLiBJZiB5b3UgaW1wb3J0aW5nIG5ldyBpdGVtcywgaWdub3JlIHRoaXMgZmllbGQuJzsKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfY2F0ZWdvcnlfaWQnXSA9ICdJZiBjYXRlZ29yeV9pZCBpcyBnaXZlLCBpdGVtIHdpbGwgYmUgc2V0IGludG8gdGhpcyBjYXRlZ29yeS4gSWYgY2F0ZWdvcnlfaWQgaXMgc2V0LCBidXQgZG9zZW4mIzAzOTsgZXhpc3RzLCBpdCBpcyBpZ25vcmVkIGFuZCBkZWZhdWx0IGlzIHVzZWQgaW5zdGVhZC4nOwokbGFuZ1snaXRlbV92YXJfaGVscF90aXRsZSddID0gJ0l0ZW0gdGl0bGUgdGhhdCBpcyBzaG93biBpbiBVUkwgYW5kIGRlc2NyaXBlcyBpdGVtLic7CiRsYW5nWydpdGVtX3Zhcl9oZWxwX2FsaWFzJ10gPSAnSXRlbSBhbGlhcyBkZXRlcm1pbmVzIGZyaWVuZGx5IGNvbXB1dGVyIGFjY2VwdGFibGUgbmFtZSBvZiBpdGVtLiBBbGlhcyBpcyB1bmlxdWUgZm9yIGVhY2ggaXRlbS4nOwokbGFuZ1snaXRlbV92YXJfaGVscF9wb3NpdGlvbiddID0gJ1dpdGggcG9zaXRpb24geW91IGFyZSBhYmVsIHRvIHNldCBwb3NpdGlvbiBvZiBpdGVtLiBUaGlzIG9wdGlvbiB3aWxsIGFmZmVjdCB0byB3YXkgaG93IGl0ZW1zIGFyZSBzaG93bi4nOwokbGFuZ1snaXRlbV92YXJfaGVscF9hY3RpdmUnXSA9ICdUaGlzIG9wdGlvbiB3aWxsIHNldCBpdGVtIGVpdGhlciBhY3RpdmUgb3IgZGVhY3RpdmUuJzsKJGxhbmdbJ2l0ZW1fdmFyX2hlbHBfc3RhcnRfdGltZSddID0gJ1NldCB0aW1lIHdoZW4geW91IHdhbnQgdG8gc2hvdyB0aGlzIGl0ZW0nOwokbGFuZ1snaXRlbV92YXJfaGVscF9lbmRfdGltZSddID0gJ1NldCB0aW1lIHdoZW4geW91IHdhbnQgdG8gaGlkZSB0aGlzIGl0ZW0nOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnRXh0cmEtRmVsZCBiZWFyYmVpdGVuJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWUnXSA9ICdOYW1lICc7CiRsYW5nWydmaWVsZGRlZl9oZWxwJ10gPSAnSGlsZnJlaWNoZXIgVGlwcCc7CiRsYW5nWydmaWVsZGRlZl90eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ2ZpZWxkZGVmX2RlcHMnXSA9ICdNb2R1bCBBYmgmYXVtbDtuZ2lna2VpdGVuJzsKJGxhbmdbJ2ZpZWxkZGVmX2RlcHNfbWlzc2luZyddID0gJ09uZSBvciBtb3JlIG1vZHVsZSBkZXBlbmRlbmNpZXMgbWlzc2luZywgcGxlYXNlIGluc3RhbGwgYWxsIHJlcXVpcmVkIG1vZHVsZXMgaW4gb3JkZXIgdG8gc3RhcnQgdXNpbmcgdGhpcyBmaWVsZC4nOwokbGFuZ1snZmllbGRkZWZfc2NhbiddID0gJ0V4dHJhLUZlbGRlciBTY2FubmVuJzsKJGxhbmdbJ2ZpZWxkZGVmX3NjYW5uZWQnXSA9ICdFeHRyYS1GZWxkZXIgZ2VzY2FubnQnOwokbGFuZ1snZmllbGRkZWZfdHlwZV9ub3RzZXQnXSA9ICdFeHRyYS1GZWxkIFR5cCBuaWNodCBkZWZpbmllcnQnOwokbGFuZ1snZmllbGRkZWZfZnJpZW5kbHl0eXBlJ10gPSAnRnJpZW5kbHkgVHlwZSc7CiRsYW5nWydmaWVsZGRlZl9vcmlnaW5hdG9yJ10gPSAnVXJzcHJ1aW5nJzsKJGxhbmdbJ2ZpZWxkZGVmX21heF9sZW5ndGgnXSA9ICdtYXhpbWFsZSBMJmF1bWw7bmdlJzsKJGxhbmdbJ2ZpZWxkZGVmX3JlcXVpcmVkJ10gPSAnRXJmb3JkZXJsaWNoJzsKJGxhbmdbJ3JlZ2lzdGVyZWRfZmllbGRkZWZzJ10gPSAnUmVnaXN0cmllcnRlIEV4dHJhLUZlbGRlcic7CiRsYW5nWydmaWVsZGRlZl9uYW1lX2VtcHR5J10gPSAnRGVyIE5hbWUgZGVzIEV4dHJhLUZlbGRzIGlzdCBsZWVyJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZXhpc3RzJ10gPSAnRGVyIE5hbWUgZGVzIEV4dHJhLUZlbGRzIGV4aXN0aWVydCBiZXJlaXRzJzsKJGxhbmdbJ2ZpZWxkZGVmX2FsaWFzX2V4aXN0cyddID0gJ0RlciBBbGlhcyBleGlzdGllcnQgYmVyZWl0cy4gQWxpYXMgbXVzcyBlaW5kZXV0aWcgc2Vpbi4nOwokbGFuZ1snaW52YWxpZCddID0gJ0RlciBGZWxkd2VydCBpc3QgdW56dWwmYXVtbDtzc2lnJzsKJGxhbmdbJ3N0YXR1c19yZXF1aXJlZCddID0gJ1N0YXR1cyBhdWYgJiMwMzk7ZXJmb3JkZXJsaWNoJiMwMzk7IHNldHplbic7CiRsYW5nWydzdGF0dXNfb3B0aW9uYWwnXSA9ICdTdGF0dXMgYXVmICYjMDM5O29wdGlvbmFsJiMwMzk7IHNldHplbic7CiRsYW5nWydpc19kZWZhdWx0J10gPSAnSXN0ICYjMDM5O1N0YW5kYXJkJiMwMzk7JzsKJGxhbmdbJ3N0YXR1c19kZWZhdWx0J10gPSAnQXVmICYjMDM5O1N0YW5kYXJkJiMwMzk7IHNldHplbic7CiRsYW5nWydoZWxwdGV4dF90aXRsZSddID0gJ00mb3VtbDtnbGljaGUgRmVsZGRlZmluaXRpb24gQW53ZWlzdW5nZW4gZiZ1dW1sO3IgZGFzIEV4dHJhLUZlbGQ6JzsKJGxhbmdbJ2ZpZWxkZGVmX1RleHRJbnB1dCddID0gJ1RleHRmZWxkJzsKJGxhbmdbJ2ZpZWxkZGVmX0NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snZmllbGRkZWZfVGV4dEFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydmaWVsZGRlZl9TZWxlY3REYXRlJ10gPSAnRGF0dW0gYXVzd2FobCc7CiRsYW5nWydmaWVsZGRlZl9Ecm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ2ZpZWxkZGVmX0NvbnRlbnRQYWdlcyddID0gJ0luaGFsdHNzZWl0ZW4nOwokbGFuZ1snZmllbGRkZWZfU2VsZWN0RmlsZSddID0gJ0RhdGVpIGF1c3dhaGwnOwokbGFuZ1snZmllbGRkZWZfUmFkaW9Hcm91cCddID0gJ1JhZGlva25vcGYtR3VwcGUnOwokbGFuZ1snZmllbGRkZWZfYWxsb3dfaGVscCddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXByYXRlZCBsaXN0IG9mIGZpbGUgZXh0ZW5zaW9ucyB0aGF0IGFyZSBhbGxvd2VkLiBGb3IgZXhhbXBsZTogcGRmLGdpZixqcGVnLGpwZyAoa2VlcCBsb3dlcmNhc2UpJzsKJGxhbmdbJ2ZpZWxkZGVmX2Rpcl9oZWxwJ10gPSAnRGlyZWN0b3J5IHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvICRjb25maWdbJiMwMzk7dXBsb2Fkc191cmwmIzAzOTtdIC4gTm8gc2xhc2ggYXQgdGhlIGVuZC4geyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfSB3aWxsIGJlIHJlcGxhY2VkLic7CiRsYW5nWydmaWVsZGRlZl9leGNsdWRlX3ByZWZpeF9oZWxwJ10gPSAnU3BlY2lmeSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBwcmVmaXhlcyB0byBleGNsdWRlIGZpbGVzIHRoYXQgc3RhcnRzIHdpdGggdGhlIHNldCBwcmVmaXguIEZvciBleGFtcGxlOiB0aHVtYl8sIGZvb18nOwokbGFuZ1snZmllbGRkZWZfZHJvcGRvd25faGVscCddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gRm9yIGV4YW1wbGU6IEJhbmFuYT1iYW5hbmEnOwokbGFuZ1snZmllbGRkZWZfcmFkaW9ncm91cF9oZWxwJ10gPSAnUmFkaW8gZ3JvdXAgb3B0aW9ucywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBGb3IgZXhhbXBsZTogQmFuYW5hPWJhbmFuYSc7CiRsYW5nWydmaWVsZGRlZl9zZXBhcmF0b3JfaGVscCddID0gJ0NhbiBiZSBlbXB0eSwgc2luZ2xlIGNoYXJhY3RlciBvciBIVE1MIGVudGl0eS4nOwokbGFuZ1snZmllbGRkZWZfc2l6ZV9oZWxwJ10gPSAnU3BlY2lmeSBzaXplIG9mIGlucHV0IGZpZWxkLiBGb3IgZXhhbXBsZTogMjAnOwokbGFuZ1snZmllbGRkZWZfbWF4X2xlbmdodF9oZWxwJ10gPSAnU3BlY2lmeSBtYXhpbXVtIGxlbmdodCBvZiB0aGUgZmllbGQuIEZvciBleGFtcGxlOiAyNTUnOwokbGFuZ1snZmllbGRkZWZfZGF0ZV9mb3JtYXRfaGVscCddID0gJ1NwZWNpZnkgZGF0ZSBmb3JtYXQgdXNlZCBieSBqUXVlcnkgRGF0ZXBpY2tlci4gVHJ5IGdvb2dsaW5nICYjMDM5O2pxdWVyeSBmb3JtYXREYXRlJiMwMzk7LiBGb3IgZXhhbXBsZTogZGQvbW0veXknOwokbGFuZ1snZmllbGRkZWZfd3lzaXd5Z19oZWxwJ10gPSAnSWYgY2hlY2tlZCwgYSBXWVNJV1lHIEVkaXRvciB3aWxsIGJlIGVuYWJsZWQgZm9yIHRoaXMgZmllbGQuJzsKJGxhbmdbJ3Jlb3JkZXJfY2F0ZWdvcmllcyddID0gJ0thdGVnb3JpZW4gbmV1IGFub3JkbmVuJzsKJGxhbmdbJ2VkaXRfY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWUgYmVhcmJlaXRlbic7CiRsYW5nWydjYXRlZ29yeV9uYW1lJ10gPSAnTmFtZSBkZXIgS2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10gPSAnS2F0ZWdvcmllLUJlc2NocmVpYnVuZyc7CiRsYW5nWydjYXRlZ29yeV9uYW1lX2VtcHR5J10gPSAnTmFtZSBkZXIgS2F0ZWdvcmllIGlzdCBsZWVyJzsKJGxhbmdbJ2NhdGVnb3J5X2FsaWFzX2V4aXN0cyddID0gJ0RlciBLYXRlZ29yaWUtQWxpYXMgZXhpc3RpZXJ0IGJlcmVpdHMuIEFsaWFzIG11c3MgZWluZGV1dGlnIHNlaW4uJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1p1c2FtbWVuZmFzc3VuZ3MtVGVtcGxhdGUnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJ1p1c2FtbWVuZmFzc3VuZ3MtVGVtcGxhdGVzJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlJ10gPSAnRGV0YWlsLVRlbXBsYXRlJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlcyddID0gJ0RldGFpbC1UZW1wbGF0ZXMnOwokbGFuZ1snc2VhcmNodGVtcGxhdGUnXSA9ICdTdWNoLVRlbXBsYXRlJzsKJGxhbmdbJ3NlYXJjaHRlbXBsYXRlcyddID0gJ1N1Y2gtVGVtcGxhdGVzJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlJ10gPSAnRmlsdGVyLVRlbXBsYXRlJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlcyddID0gJ0ZpbHRlci1UZW1wbGF0ZXMnOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgYmVhcmJlaXRlbic7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lJ10gPSAnVGVtcGxhdGUtTmFtZSc7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lX2VtcHR5J10gPSAnTmFtZSBkZXMgVGVtcGxhdGVzIGlzdCBsZWVyJzsKJGxhbmdbJ3RlbXBsYXRlX2NvbnRlbnRfZW1wdHknXSA9ICdUZW1wbGF0ZSBJbmhhbHQgaXN0IGxlZXInOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdTdGFuZGFyZCBUZW1wbGF0ZXMnOwokbGFuZ1snbW9kdWxlX29wdGlvbnMnXSA9ICdNb2R1bC1PcHRpb25lbic7CiRsYW5nWyd1cmxfb3B0aW9ucyddID0gJ1VSTC1PcHRpb25lbic7CiRsYW5nWydwcm9tcHRfZnJpZW5kbHluYW1lJ10gPSAnQW5nZXplaWd0ZXIgTW9kdWxuYW1lJzsKJGxhbmdbJ3Byb21wdF9hZG1pbnNlY3Rpb24nXSA9ICdNb2R1bCBBZG1pbi1CZXJlaWNoJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3Npbmd1bGFyJ10gPSAnRWluemFobCB2b24gJiMwMzk7RWludHJhZyYjMDM5Oyc7CiRsYW5nWydwcm9tcHRfaXRlbV9wbHVyYWwnXSA9ICdNZWhyemFobCB2b24gJiMwMzk7RWludHJhZyYjMDM5Oyc7CiRsYW5nWydwcm9tcHRfdXJsX3ByZWZpeCddID0gJ1VSTC1QciZhdW1sO2ZpeCc7CiRsYW5nWydwcm9tcHRfZGlzcGxheV9pbmxpbmUnXSA9ICdEZXRhaWxzICYjMDM5O2lubGluZSYjMDM5OyBhbnplaWdlbic7CiRsYW5nWydwcm9tcHRfaXRlbV9jb2xzJ10gPSAnRGllc2UgRmVsZGVyIGluIGRlciAmVXVtbDtiZXJzaWNodCB6ZWlnZW4nOwokbGFuZ1sncHJvbXB0X2l0ZW1zX3Blcl9wYWdlJ10gPSAnQXJ0aWtlbCBwcm8gU2VpdGUgYW56ZWlnZW4nOwokbGFuZ1sncHJvbXB0X2NyZWF0ZV9kYXRlJ10gPSAnRGlzcGxheSBpdGVtIGNyZWF0ZWQgZGF0ZSBpbiBJdGVtIGVkaXQgbW9kZT8nOwokbGFuZ1sndGV4dF9zb3J0b3JkZXInXSA9ICdWb3JlaW5nZXN0ZWxsdGUgRWludHJhZy1Tb3J0aWVycmVpaGVuZm9sZ2UgaW4gZGVyIEFkbWluaXN0cmF0aW9uJzsKJGxhbmdbJ29wdGlvbnNfbm90aWNlJ10gPSAnTmFjaCAmYXVtbDtuZGVydW5nIGRlcyBNb2R1bCBBbnplaWdlbmFtZW5zIG9kZXIgQWRtaW4tQmVyZWljaHMsIGsmb3VtbDtubnRlICBmJnV1bWw7ciBkaWUgd2lya3NhbWUgJkF1bWw7bmRlcnVuZ2VuICZxdW90O1p3aXNjaGVuc3BlaWNoZXIgbGVlcmVuJnF1b3Q7IEFrdGlvbiBlcmZvcmRlcmxpY2ggc2Vpbi4nOwokbGFuZ1sncHJvbXB0X2FsbG93X2F1dG9zY2FuJ10gPSAnQWxsb3cgc3lzdGVtIHRvIHNjYW4gZmllbGQgZGVmaW5pdGlvbnMgYXV0b21hdGljYWxseSc7CiRsYW5nWydub3RpY2VfYWxsb3dfYXV0b3NjYW4nXSA9ICdBbGxvd2luZyBhdXRvbWF0aWMgc2NhbiBvbiBpbnN0YWxsLCB1cGdyYWRlIGFuZCB1bmluc3RhbGwgZXZlbnRzLCBtaWdodCBoYXZlIHNvbWUgc3RyYW5nZSBiZWhhdmlvciB3aXRoIHNvbWUgY29yZSB2ZXJzaW9ucy4nOwokbGFuZ1sncHJvbXB0X2FsbG93X2F1dG9pbnN0YWxsJ10gPSAnQWxsb3cgc3lzdGVtIHRvIGluc3RhbGwgaW5zdGFuY2VzIGF1dG9tYXRpY2FsbHknOwokbGFuZ1snbm90aWNlJ10gPSAnSGlud2Vpcyc7CiRsYW5nWydpbnN0YW5jZXMnXSA9ICdJbnN0YW56ZW4nOwokbGFuZ1snaW5zdGFsbGVkX2luc3RhbmNlc193YXJuaW5nJ10gPSAnVW50ZW4gaXN0IGVpbmUgTGlzdGUgdm9uIGR1cGxpemllcnRlbiBNb2R1bC1JbnN0YW56ZW4uPGJyIC8+RXJzdGVsbGVuIFNpZSBlaW5lIFNpY2hlcnVuZyBJaHJlciBTZWl0ZSAoRGF0ZW5iYW5rIHVuZCBEYXRlaWVuKSB2b3IgJnF1b3Q7dXBncmFkZSZxdW90OyBBa3Rpb24nOwokbGFuZ1snaW5zdGFsbGVkX2luc3RhbmNlcyddID0gJ0luc3RhbGxpZXJ0ZSBJbnN0YW56ZW4nOwokbGFuZ1snaW5zdGFuY2VfbmFtZSddID0gJ0luc3RhbnogTmFtZSc7CiRsYW5nWydpbnN0YW5jZV9mcmllbmRseW5hbWUnXSA9ICdBbnplaWdlbmFtZSc7CiRsYW5nWydpbnN0YW5jZV9zbWFydHknXSA9ICdTbWFydHkgdGFnJzsKJGxhbmdbJ2luc3RhbmNlX3ZlcnNpb24nXSA9ICdWZXJzaW9uJzsKJGxhbmdbJ2luc3RhbmNlX3VwZ3JhZGUnXSA9ICdBa3R1YWxpc2llcmVuJzsKJGxhbmdbJ2luc3RhbmNlX3VwdG9kYXRlJ10gPSAnQWt0dWVsbCc7CiRsYW5nWydpbnN0YW5jZV9tb2R1bGV1cGdyYWRlZCddID0gJ01vZHVsIEFrdHVhbGlzaWVydCc7CiRsYW5nWydjb3B5X3RpdGxlJ10gPSAnTW9kdWwgRHVwbGl6aWVyZW4nOwokbGFuZ1snc3VibWl0J10gPSAnQWJzZW5kZW4nOwokbGFuZ1snZGVmYXVsdCddID0gJ1N0YW5kYXJkJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FiYnJlY2hlbic7CiRsYW5nWyd1cGRhdGUnXSA9ICdBa3R1YWxpc2llcmVuJzsKJGxhbmdbJ3JlcGFpciddID0gJ1JlcGFyaWVyZW4nOwokbGFuZ1snc2F2ZV9jcmVhdGUnXSA9ICdTcGVpY2hlcm4gJmFtcDsgRXJzdGVsbGVuJzsKJGxhbmdbJ3Jlc2V0J10gPSAnU3RhbmRhcmQgenVyJnV1bWw7Y2tzZXR6ZW4nOwokbGFuZ1snZHVwbGljYXRlJ10gPSAnRHVwbGl6aWVyZW4nOwokbGFuZ1snY2hhbmdlc3NhdmVkJ10gPSAnSWhyZSAmQXVtbDtuZGVydW5nZW4gd3VyZGVuIGdlc3BlaWNoZXJ0Lic7CiRsYW5nWydjaGFuZ2Vzc2F2ZWRfY3JlYXRlJ10gPSAnWW91ciBwcmV2aW91cyBpdGVtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBzYXZlZC4gQ3JlYXRlIG5ldyBpdGVtPyc7CiRsYW5nWyd0ZW1wbGF0ZXJlc3RvcmVkJ10gPSAnVm9yZWluZ2VzdGVsbHRlcyBUZW1wbGF0ZSB3dXJkZSB3aWVkZXJoZXJnZXN0ZWxsdC4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dvbGxlbiBTaWUgZGllcyB3aXJrbGljaCBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ3VwJ10gPSAnTmFjaCBvYmVuJzsKJGxhbmdbJ2Rvd24nXSA9ICdOYWNoIHVudGVuJzsKJGxhbmdbJ2VkaXQnXSA9ICdCZWFyYmVpdGVuJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0wmb3VtbDtzY2hlbic7CiRsYW5nWydub3N1Y2hpZCddID0gJ0tlaW5lIHNvbGNoZSBJRCB2b3JoYW5kZW4nOwokbGFuZ1snZGVsZXRlZCddID0gJ0locmUgQXVzd2FobCB3dXJkZSBnZWwmb3VtbDtzY2h0Lic7CiRsYW5nWydhZGQnXSA9ICclcyBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1snaW1wb3J0J10gPSAnSW1wb3J0aWVyZW4gJXMnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0aWVyZW4gJXMnOwokbGFuZ1snYWxpYXMnXSA9ICdBbGlhcyAnOwokbGFuZ1snYWxpYXNfaW52YWxpZCddID0gJ0RlciBBbGlhcyDigIvigItpc3QgdW5nJnV1bWw7bHRpZy4gRXMgbXVzcyBlaW4gZyZ1dW1sO2x0aWdlciBQSFAtVmFyaWFibGVubmFtZW4gc2Vpbic7CiRsYW5nWydzZWFyY2gnXSA9ICdTdWNoZSc7CiRsYW5nWydzZWFyY2hmb3InXSA9ICdTdWNoZSBuYWNoJzsKJGxhbmdbJ3NlYXJjaHJlc3VsdHNmb3InXSA9ICdTdWNoZXJnZWJuaXNzZSBmJnV1bWw7cic7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZSddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1snbW9kdWxlX25hbWUnXSA9ICdNb2R1bCBOYW1lJzsKJGxhbmdbJ21vZHVsZV9uYW1lX2VtcHR5J10gPSAnTW9kdWwgTmFtZSBpc3QgbGVlcic7CiRsYW5nWydtb2R1bGVfbmFtZV9pbnZhbGlkJ10gPSAnTW9kdWwgTmFtZSBlbnRoJmF1bWw7bHQgdW5nJnV1bWw7bHRpZ2UgWmVpY2hlbic7CiRsYW5nWydtb2R1bGVjb3BpZWQnXSA9ICdNb2R1bCBlcmZvbGdyZWljaCBrb3BpZXJ0JzsKJGxhbmdbJ3NlbGVjdF9vbmUnXSA9ICdCaXR0ZSBhdXN3JmF1bWw7aGxlbic7CiRsYW5nWydzaXplJ10gPSAnR3Imb3VtbDsmc3psaWc7ZSc7CiRsYW5nWydtYXhfbGVuZ2h0J10gPSAnTWF4aW1hbGUgbCZhdW1sO25nZSc7CiRsYW5nWyd3eXNpd3lnJ10gPSAnV1lTSVdZRyc7CiRsYW5nWydkYXRlX2Zvcm1hdCddID0gJ0RhdHVtc2Zvcm1hdCc7CiRsYW5nWydkaXInXSA9ICdPcmRuZXInOwokbGFuZ1snYWxsb3dlZCddID0gJ0VybGF1YnQnOwokbGFuZ1snZXhjbHVkZV9wcmVmaXgnXSA9ICdQcmVmaXggYXVzc2NobGllJnN6bGlnO2VuJzsKJGxhbmdbJ2ltYWdlJ10gPSAnQmlsZCc7CiRsYW5nWydmaWxlJ10gPSAnRGF0ZWknOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdFcmZvcmRlcmxpY2gnOwokbGFuZ1snYXNjZW5kaW5nJ10gPSAnQXVmc3RlaWdlbmQnOwokbGFuZ1snZGVzY2VuZGluZyddID0gJ0Fic3RlaWdlbmQnOwokbGFuZ1snZXh0cmEnXSA9ICdFeHRyYSAnOwokbGFuZ1snZmlsZW5hbWUnXSA9ICdEYXRlaS1OYW1lJzsKJGxhbmdbJ2VuY2xvdXNlciddID0gJ0VuY2xvdXNlcic7CiRsYW5nWydzZXBhcmF0b3InXSA9ICdUcmVubmVyJzsKJGxhbmdbJ3ZhbHVlcyddID0gJ1dlcnRlJzsKJGxhbmdbJ2ltcG9ydF9hbGlhcyddID0gJ0l0ZW0vRmllbGRkZWYgYWxpYXMnOwokbGFuZ1snZmlsZV9hbGlhcyddID0gJ0ZpbGUgaGVhZGVyL2FsaWFzJzsKJGxhbmdbJ2Vycm9yX29wdGlvbnJlcXVpcmVkJ10gPSAnT3B0aW9uICVzIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ2Vycm9yX2ZpbGVfcGVybWlzc2lvbnMnXSA9ICdUaGVyZSB3YXMgcHJvYmxlbSB3aXRoIGZpbGUgcGVybWlzc2lvbnMnOwokbGFuZ1snZXJyb3JfZmlsZV9lbXB0eSddID0gJ05vIGZpbGUgZ2l2ZW4nOwokbGFuZ1snZXJyb3JfZmlsZV9ub2NzdiddID0gJ0ZpbGUgaXMgbm90IENTViBmaWxlJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1snZmlsdGVycHJvbXB0J10gPSAnRmlsdGVyICVzICc7CiRsYW5nWydwYXJhbV9maWx0ZXJfbWlzc2luZyddID0gJ0YmdXVtbDtyIGRlbiBGaWx0ZXJtb2R1cyBpc3QgendpbmdlbmQgZGVyIFBhcmFtZXRlciA8ZW0+ZmlsdGVyPC9lbT4gZXJmb3JkZXJsaWNoLic7CiRsYW5nWydhbGwnXSA9ICdBbGxlJzsKJGxhbmdbJ2V2ZW50ZGVzY19QcmVJdGVtU2F2ZSddID0gJ1NlbnQgYmVmb3JlIGl0ZW0gc2F2ZSBwcm9jZXNzIGJlZ2lucy4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIG9iamVjdCBkYXRhLic7CiRsYW5nWydldmVudGRlc2NfUG9zdEl0ZW1TYXZlJ10gPSAnU2VudCBhZnRlciBpdGVtIHNhdmUgcHJvY2VzcyBoYXMgY29tcGxldGVkLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuJzsKJGxhbmdbJ2V2ZW50ZGVzY19QcmVJdGVtRGVsZXRlJ10gPSAnU2VudCBiZWZvcmUgaXRlbSBkZWxldGUgcHJvY2VzcyBiZWdpbnMuIFBvc3NpYmxlIHRvIG1hbmlwdWxhdGUgaXRlbSBvYmplY3QgZGF0YS4nOwokbGFuZ1snZXZlbnRkZXNjX1Bvc3RJdGVtRGVsZXRlJ10gPSAnU2VudCBhZnRlciBpdGVtIGRlbGV0ZSBwcm9jZXNzIGhhcyBjb21wbGV0ZWQuIFBvc3NpYmxlIHRvIG1hbmlwdWxhdGUgaXRlbSBvYmplY3QgZGF0YS4nOwokbGFuZ1snZXZlbnRkZXNjX1ByZUl0ZW1Mb2FkJ10gPSAnU2VudCBiZWZvcmUgaXRlbSBsb2FkIHByb2Nlc3MgYmVnaW5zLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuJzsKJGxhbmdbJ2V2ZW50ZGVzY19Qb3N0SXRlbUxvYWQnXSA9ICdTZW50IGFmdGVyIGl0ZW0gbG9hZCBwcm9jZXNzIGhhcyBjb21wbGV0ZWQuIFBvc3NpYmxlIHRvIG1hbmlwdWxhdGUgaXRlbSBvYmplY3QgZGF0YS4nOwokbGFuZ1snZXZlbnRoZWxwX1ByZUl0ZW1TYXZlJ10gPSAnPHA+U2VudCBiZWZvcmUgaXRlbSBzYXZlIHByb2Nlc3MgYmVnaW5zLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPiYjMDM5O2l0ZW1fb2JqZWN0JiMwMzk7IC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudGhlbHBfUG9zdEl0ZW1TYXZlJ10gPSAnPHA+U2VudCBhZnRlciBpdGVtIHNhdmUgcHJvY2VzcyBoYXMgY29tcGxldGVkLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPiYjMDM5O2l0ZW1fb2JqZWN0JiMwMzk7IC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudGhlbHBfUHJlSXRlbURlbGV0ZSddID0gJzxwPlNlbnQgYmVmb3JlIGl0ZW0gZGVsZXRlIHByb2Nlc3MgYmVnaW5zLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPiYjMDM5O2l0ZW1fb2JqZWN0JiMwMzk7IC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudGhlbHBfUG9zdEl0ZW1EZWxldGUnXSA9ICc8cD5TZW50IGFmdGVyIGl0ZW0gZGVsZXRlIHByb2Nlc3MgaGFzIGNvbXBsZXRlZC4gUG9zc2libGUgdG8gbWFuaXB1bGF0ZSBpdGVtIG9iamVjdCBkYXRhLjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT4mIzAzOTtpdGVtX29iamVjdCYjMDM5OyAtIFJlZmVyZW5jZSB0byBhZmZlY3RlZCBpdGVtIG9iamVjdC48L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRoZWxwX1ByZUl0ZW1Mb2FkJ10gPSAnPHA+U2VudCBiZWZvcmUgaXRlbSBsb2FkIHByb2Nlc3MgYmVnaW5zLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPiYjMDM5O2l0ZW1fb2JqZWN0JiMwMzk7IC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudGhlbHBfUG9zdEl0ZW1Mb2FkJ10gPSAnPHA+U2VudCBhZnRlciBpdGVtIGxvYWQgcHJvY2VzcyBoYXMgY29tcGxldGVkLiBQb3NzaWJsZSB0byBtYW5pcHVsYXRlIGl0ZW0gb2JqZWN0IGRhdGEuPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPiYjMDM5O2l0ZW1fb2JqZWN0JiMwMzk7IC0gUmVmZXJlbmNlIHRvIGFmZmVjdGVkIGl0ZW0gb2JqZWN0LjwvbGk+DQo8L3VsPic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0xpc3RJdCBlcmxhdWJ0IGVzIElobmVuLCBMaXN0ZW4genUgZXJzdGVsbGVuLCBkaWUgU2llIGF1ZiBJaHJlciBXZWJzaXRlIGFuemVpZ2VuIGsmb3VtbDtubmVuLic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJyB3dXJkZSBpbnN0YWxsaWVydCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnIHd1cmRlIGRlaW5zdGFsbGllcnQnOwokbGFuZ1snZ2VuZXJhbCddID0gJ0FsbGdlbWVpbic7CiRsYW5nWyd1c2FnZSddID0gJ1ZlcndlbmR1bmcnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdCZXJlY2h0aWd1bmdlbic7CiRsYW5nWydkdXBsaWNhdGluZyddID0gJ0RpZXNlcyBNb2R1bCBkdXBsaXppZXJlbic7CiRsYW5nWydhYm91dCddID0gJyZVdW1sO2Jlcic7CiRsYW5nWydoZWxwX2dlbmVyYWwnXSA9ICc8aDM+R2VuZXJhbCBJbmZvPC9oMz4gICAgICANCiAgICA8cD5TaW1wbHkgcHV0LCBMaXN0SXRFeHRlbmRlZCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4gWW91IGNvdWxkIG1ha2UgYSBzaW1wbGUgRkFRIG9yIFRlc3RpbW9uaWFscyBmZWF0dXJlIHdpdGggdGhpcyBtb2R1bGUuIFRoZSB3ZWIgZGV2ZWxvcGVyIGRlZmluZXMgZmllbGRzIHRvIGNvbnN0cmFpbiB3aGF0IGRhdGEgdGhlIGNsaWVudCBjYW4gZW50ZXIuIEEgbnVtYmVyIG9mIGZpZWxkIHR5cGVzIGNhbiBiZSBzcGVjaWZpZWQgLSB0ZXh0IGlucHV0LCBjaGVja2JveCwgdGV4dCBhcmVhLCBzZWxlY3QgZGF0ZSwgdXBsb2FkIGZpbGUsIHNlbGVjdCBmaWxlLCBkcm9wZG93biAtIGFuZCBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBjYW4gYmUgc2V0IGZvciBlYWNoIHR5cGUsIGZvciBleGFtcGxlLCBpbnB1dCBmaWVsZCBzaXplLCBtYXggbGVuZ3RoLCBXWVNJV1lHIGVkaXRvciwgcG9zc2libGUgZHJvcCBkb3duIHZhbHVlcywgcG9zc2libGUgZmlsZSBleHRlbnNpb25zLCBkaXJlY3RvcnkgcGF0aHMgZm9yIGZpbGUgc2VsZWN0aW9ucywgZGF0ZSBmb3JtYXRzLCBldGMuLjwvcD4NCiAgICA8cD5BbiBpbXBvcnRhbnQgbm90ZSBvZiB3YXJuaW5nIC0gVGhpcyBpcyBub3QgYSBjb250ZW50IGNvbnN0cnVjdGlvbiBraXQsIHN1Y2ggYXMgaW4gRHJ1cGFsLiBJdCBpcyBtZWFudCBmb3Igc21hbGwgbGlzdGluZ3MsIG5vdCB0byBzdG9yZSB0aG91c2FuZHMgb2YgcmVjb3Jkcy4gVGhpcyBpcyBiZWNhdXNlIG9mIHRoZSBkYXRhYmFzZSBtb2RlbCB1c2VkIChFQVYpLiBBbHNvLCBlYWNoIGJpdCBvZiBkYXRhIHlvdSBlbnRlciBpcyBzdG9yZWQgYXMgVEVYVCBkYXRhIHR5cGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBpdCBpcyB2YXJjaGFyLCBib29sZWFuLCB0aW1lc3RhbXAsIGV0Yy4gVGhpcyBpcyBhIHJlc3RyaWN0aW9uIG9mIGEgc2hvcnQgZGUnOwokbGFuZ1snaGVscF91c2FnZSddID0gJzxoMz5WZXJ3ZW5kdW5nPC9oMz4JCQkNCgk8cD5Zb3UgY2FuIGNvbmZpZ3VyZSB7JG1vZHVsZV9uYW1lfSBoZXJlOiBDb250ZW50ID4geyRtb2R1bGVfbmFtZX08L3A+DQoJPHA+UGxhY2UgdGhpcyB0YWcgaW4geW91ciBwYWdlOiB7eyRtb2R1bGVfbmFtZX19PC9wPic7CiRsYW5nWydoZWxwX3VzYWdlX29wdGlvbnMnXSA9ICdBZnRlciBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgdGhlIG5leHQgdGhpbmcgdG8gZG8gaXMgc2V0IHRoZSBvcHRpb25zLiAgCQkJCQ0KCTxvbD4JCQkJCQ0KCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgaW4gdGhlIG1lbnUgY2hhbmdlIHRoZSAmcXVvdDtNb2R1bGUgRnJpZW5kbHkgTmFtZSZxdW90Oy48L2xpPg0KCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBpdGVtIHRhYiBjaGFuZ2UgdGhlICZxdW90O0l0ZW0gUGx1cmFsJnF1b3Q7LjwvbGk+DQoJPC9vbD4nOwokbGFuZ1snaGVscF91c2FnZV9maWVsZGRlZnMnXSA9ICdOZXh0IC0gc2V0IHRoZSBGaWVsZCBEZWZpbml0aW9ucy4gDQoJPG9sPg0KCQk8bGk+Q2hvb3NlIGZyb20gJnF1b3Q7VGV4dCBJbnB1dCZxdW90OywgJnF1b3Q7Q2hlY2tib3gmcXVvdDssICZxdW90O1RleHQgQXJlYSZxdW90OywgJnF1b3Q7U2VsZWN0IERhdGUmcXVvdDssICZxdW90O1VwbG9hZCBGaWxlJnF1b3Q7LCAmcXVvdDtTZWxlY3QgRmlsZSZxdW90OyAmYW1wOyAmcXVvdDtEcm9wZG93biZxdW90Oy48L2xpPg0KCQk8bGk+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGluIHRoZSAmcXVvdDtleHRyYSZxdW90OyBmaWVsZC4gU2VlIHRoZSAmcXVvdDtGaWVsZCBEZWZpbml0aW9ucyZxdW90OyB0YWIgZm9yIGEgbGlzdC48L2xpPg0KCQk8bGk+RWFjaCBpdGVtIGluIGVhY2ggbGlzdCBoYXMgdGhyZWUgZGVmYXVsdCBmaWVsZHMuIEFsbCBGaWVsZCBEZWZpbml0aW9ucyBzZXQgaGVyZSBhcmUgYWRkaXRpb25hbCB0byB0aGVtLjwvbGk+DQoJPC9vbD4nOwokbGFuZ1snaGVscF91c2FnZV9jYXRlZ29yaWVzJ10gPSAnVGhlcmUgaXMgYSBzaW5nbGUgY2F0ZWdvcnkgYnkgZGVmYXVsdCBjYWxsZWQgJnF1b3Q7R2VuZXJhbCZxdW90Oy4gVGhpcyBjYW4gYmUgcmVuYW1lZCBhbmQgYWRkaXRpb25hbCBDYXRlZ29yaWVzIGNhbiBiZSBhZGRlZC4nOwokbGFuZ1snaGVscF91c2FnZV9pdGVtcyddID0gJ05vdyB3ZSBtb3ZlIG9uIHRvIHRoZSBpdGVtIGxpc3QgaXRzZWxmLiBJbiB0aGlzIGV4YW1wbGUgaXQgc2F5cyAmcXVvdDtBZGQgQm94JnF1b3Q7LCB0aGlzIHdhcyByZW5hbWVkIGluIHRoZSAmcXVvdDtPcHRpb25zJnF1b3Q7IHRhYi4gDQoJPG9sPg0KCQk8bGk+VGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBkZWZhdWx0ICZxdW90O1RpdGxlJnF1b3Q7IGZpZWxkLjwvbGk+DQoJCTxsaT5UaGUgJnF1b3Q7Q2F0ZWdvcnkmcXVvdDsgZHJvcGRvd24gaXMgYWxzbyBhIGRlZmF1bHQgZmllbGQsIGFuZCBpZiB1bmNoYW5nZWQsIHdpbGwgYmUgc2V0IHRvICZxdW90O0dlbmVyYWwmcXVvdDsuPC9saT4NCgkJPGxpPlRoZSB0aGlyZCBkZWZhdWx0IGZpZWxkIGlzIHRoZSBjaGVja2JveCBjYWxsZWQgJnF1b3Q7QWN0aXZlJnF1b3Q7LiBUaGlzIGFsbG93cyB5b3UgdG8gdG9nZ2xlIGEgbGlzdCBlbnRyeSB3aXRob3V0IGRlbGV0aW5nIGl0LjwvbGk+DQoJPC9vbD4nOwokbGFuZ1snaGVscF9wZXJtaXNzaW9ucyddID0gJzxoMz5CZXJlY2h0aWd1bmdlbjwvaDM+DQoJPHA+WW91IGNhbiBzcGVjaWZ5IHRoZSBmb2xsb3dpbmcgcGVybWlzc2lvbnMgdW5kZXIgVXNlcnMgJmFtcDsgR3JvdXBzID4gR3JvdXAgUGVybWlzc2lvbnM8L3A+DQoJPHVsPg0KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBJdGVtczwvbGk+DQoJCTxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IENhdGVnb3JpZXM8L2xpPg0KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBPcHRpb25zPC9saT4NCgk8L3VsPg0KCTxwPlRvIGFsbG93IG5vbi1hZG1pbiB1c2VycyB0byB1cGxvYWQgZmlsZXMsIHBsZWFzZSBnbyB0byBFeHRlbnNpb25zID4gR0JGaWxlUGlja2VyIGFuZCB0aWNrIHRoYXQgZmlyc3QgY2hlY2tib3ggJnF1b3Q7U2hvdyBmaWxlbWFuYWdlbWVudCBvcHRpb25zJnF1b3Q7LjwvcD4nOwokbGFuZ1snaGVscF9maWVsZGRlZnMnXSA9ICc8aDM+RmllbGQgRGVmaW5pdGlvbnM8L2gzPg0KICAgIDxwPlRoZSBmaXJzdCB0aGluZyB5b3Ugc2hvdWxkIGNvbmZpZ3VyZSBhcmUgeW91ciBmaWVsZCBkZWZpbml0aW9ucy48L3A+DQogICAgPHA+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgc2V0dGluZ3MgYnkgY2hvb3NpbmcgZnJvbSBhdmFpbGFibGUgb3B0aW9ucy48L3A+DQogICAgDQogICAgPGgzPkRlZmF1bHQgRmllbGQgRGVmaW5pdGlvbnMgYnkgdHlwZTwvaDM+DQogICAgPHVsPg0KICAgICAgICA8bGk+VGV4dCBJbnB1dDwvbGk+DQogICAgICAgIDxsaT5DaGVja2JveDo8L2xpPg0KICAgICAgICA8bGk+VGV4dCBBcmVhPC9saT4NCiAgICAgICAgPGxpPlNlbGVjdCBEYXRlPC9saT4NCiAgICAgICAgPGxpPlNlbGVjdCBGaWxlPC9saT4NCiAgICAgICAgPGxpPkRyb3Bkb3duPC9saT4NCiAgICAgICAgPGxpPkNvbnRlbnQgUGFnZXM8L2xpPg0KICAgICAgICA8bGk+UmFkaW8gQnV0dG9uczwvbGk+DQogICAgPC91bD4NCiAgICANCiAgICA8aDM+Q3VzdG9tIEZpZWxkIERlZmluaXRpb25zPC9oMz4NCiAgICA8cD5TaW5jZSBWZXJzaW9uIDEuMyBmaWVsZCBkZWZpbml0aW9ucyBoYXZlIGJlZW4gY29tcGxldGVseSByZXdyaXR0ZW4uPGJyIC8+DQogICAgQXMgYSByZXN1bHQgeW91IGNhbiBub3cgY3JlYXRlIHlvdXIgY3VzdG9tIGZpZWxkIGRlZmluaXRpb25zIGJ5IGZvbGxvd2luZyBuYW1pbmcgY29udmVudGlvbiBpbiBMaXN0SXRFeHRlbmRlZCBtb2R1bGUuPC9wPg0KICAgIDxwPkZvbGxvd2luZyB0aGVzZSBjaGFuZ2VzIHRoZXNlIGNoYW5nZXMsIExpc3RJdEV4dGVuZGVkIFRlYW0gaGFzIGFsc28gcmVsZWFzZWQgYSBtb2R1bGUgbmFtZWQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9saXN0aXQyeGRlZnMiIHRhcmdldD0iX2JsYW5rIj5MaXN0SXQyWERlZnM8L2E+IHRoYXQgaXMgc2ltcGx5IGEgd3JhcHBlciBtb2R1bGUgZm9yIEN1c3RvbSBGaWVsZCBkZWZpbml0aW9ucy48YnIgLz4NCiAgICBXaGVuIGNyZWF0aW5nIHlvdXIgY3VzdG9tIGZpbGVkIGZvciBleGFtcGxlICZxdW90O015RmllbGQmcXVvdDsgKHdoZXJlIE15RmllbGQgd291bGQgYmUgbmFtZSBvZiB5b3VyIGN1c3RvbSBmaWVsZCkgeW91IHdvdWxkIGNyZWF0ZSAmcXVvdDtNeUZpZWxkJnF1b3Q7IGZvbGRlciBpbnNpZGUgJnF1b3Q7Rkxpc3RJdDJYRGVmcy9maWVsZGRlZnMmcXVvdDsgZm9sZGVyIGFuZCBhZGQgbmVlZGVkIGZpbGVzIGluIHRoaXMgcGFydGljdWxhciBmb2xkZXIuPGJyIC8+DQogICAgRmllbGRkZWYgZmlsZSBoYXMgdG8gYmUgcHJlZml4ZWQgd2l0aCAmcXVvdDtsaXN0aXQyZmQmcXVvdDsgZm9yIGV4YW1wbGUgJnF1b3Q7bGlzdGl0MmZkLk15RmllbGQucGhwJnF1b3Q7LCBmb3IgaW5wdXQgZmllbGQgdGVtcGxhdGUgd2hpY2ggaXMgdXNlZCB3aGVuIG1hbmFnaW5nIEl0ZW0geW91IHdvdWxkIG5lZWQgJnF1b3Q7aW5wdXQuTXlGaWVsZC50cGwmcXVvdDsgYW5kIGFzIGZpZWxkIGRlZmluaXRpb24gc2V0dGluZ3MgdGVtcGxhdGUgeW91IHdvdWxkIG5lZWQgYWRtaW4uTXlGaWVsZC50cGwgKG9ubHkgbmVlZGVkIGlmIGFkZGl0aW9uYWwgc2V0dGluZ3MgYXJlIHBvc3NpYmxlIGZvciB0aGlzIGZpZWxkKS48L3A+DQogICAgPHA+QWZ0ZXIgeW91IGFyZSBkb25lIHdyaXRpbmcgeW91ciBvd24gY3VzdG9tIGZpZWxkIGRlZmluaXRpb24sIHlvdSB3aWxsIGhhdmUgdG8gZ28gdG8gJnF1b3Q7TW9kdWxlcyAmYW1wO3JhcXVvOyBMaXN0SXQyJnF1b3Q7IGNsaWNrIG9uICZxdW90O0ZpZWxkIERlZmluaXRpb25zJnF1b3Q7IHRhYiBhbmQgc2NhbiBmb3IgbmV3IGZpZWxkIGRlZmluaXRpb25zIGJ5IGNsaWNraW5nIG9uICZxdW90O1NjYW4gRmllbGQgRGVmaW5pdGlvbnMmcXVvdDsgYnV0dG9uLjwvcD48YnIgLz4NCiAgICA8aDQ+PHN0cm9uZz5XYXRjaCB0aGlzIHZpZGVvIGZvciBkZXRhaWxlZCBpbnN0cnVjdGlvbnM8L3N0cm9uZz48L2g0Pic7CiRsYW5nWydoZWxwX2NhdGVnb3JpZXMnXSA9ICc8aDM+S2F0ZWdvcmllbjwvaDM+DQoJPHA+TWVocnNjaGljaHRpZ2UgS2F0ZWdvcmllbiB3ZXJkZW4gdW50ZXJzdCZ1dW1sO3R6dC48L3A+JzsKJGxhbmdbJ2hlbHBfdGVtcGxhdGVzJ10gPSAnPGgzPlRlbXBsYXRlczwvaDM+DQoJPHA+SWYgeW91IGFyZSBub3Qgc3VyZSB3aGF0IHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlIHRvIHVzZSBpbiB5b3VyIHRlbXBsYXRlcywgdHJ5IHRoZSBkZWJ1ZyB0ZW1wbGF0ZTo8L3A+DQoJPHA+e3skbW9kdWxlX25hbWV9IHN1bW1hcnl0ZW1wbGF0ZT0mIzAzOTtkZWJ1ZyYjMDM5O308L3A+DQoJPHA+WW91IGNhbiBhY2Nlc3MgYW55IGZpZWxkIGRpcmVjdGx5IHdoZW4gbG9vcGluZyB0aHJvdWdoIGl0ZW1zIHVzaW5nIGl0cyBhbGlhcywgZm9yIGV4YW1wbGUsIHRvIGlmIHlvdSBjcmVhdGVkIGEgZmllbGQgZGVmaW5pdGlvbiB3aXRoIGFuIGFsaWFzICZxdW90O3Bvc2l0aW9uJnF1b3Q7LCB5b3UgY2FuIGRvOjwvcD4nOwokbGFuZ1snaGVscF90ZW1wbGF0ZXNfY2F0ZWdvcmllcyddID0gJzxwPkJlc2lkZXMsIHlvdSBjYW4gbG9vcCB0aHJvdWdoIGNhdGVnb3JpZXMgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGUganVzdCBhcyB3ZWxsIGFzIGxvb3BpbmcgdGhyb3VnaCBpdGVtczo8L3A+JzsKJGxhbmdbJ2hlbHBfZHVwbGljYXRpbmcnXSA9ICc8aDM+Q3JlYXRpbmcgTW9kdWxlIEluc3RhbmNlczwvaDM+DQogICAgPHA+VGhpcyBtb2R1bGUgaXMgYSBDb250cm9sIFBhbmVsIGZvciBjcmVhdGluZyBMaXN0SXRFeHRlbmRlZCBNb2R1bGUgSW5zdGFuY2VzLiBUbyBjcmVhdGUgTGlzdEl0RXh0ZW5kZWQgbW9kdWxlIEluc3RhbmNlLCBzaW1wbHkgZ28gdG8gJnF1b3Q7SW5zdGFuY2VzJnF1b3Q7IHRhYiBhbmQgY2xpY2sgb24gJnF1b3Q7Q3JlYXRlIEluc3RhbmNlJnF1b3Q7IGJ1dHRvbi48YnIgLz4NCiAgICBNYWtlIHN1cmUgeW91IGZvbGxvdyB0aGUgQ01TTVMgbW9kdWxlIG5hbWluZyBjb252ZW50aW9ucywgYS16IHdpdGggbm8gcHVuY3R1YXRpb24gY2hhcmFjdGVycyBvciBzcGFjZXMgdG8gYmUgc2FmZSA6KTxiciAvPg0KICAgIEFmdGVyIHRoZSBtb2R1bGUgaGFzIGJlZW4gY3JlYXRlZCBhIG5ldyBpbnN0YW5jZSB3aWxsIGJlIGluc3RhbGxlZCBhbmQgbGlzdGVkIGluIG9yaWdpbmFsIExpc3RJdEV4dGVuZGVkIG1vZHVsZSB1bmRlciAmcXVvdDtJbnN0YW5jZXMmcXVvdDsgdGFiLjwvcD48YnIgLz4NCiAgICA8cD5Zb3UgY2FuIGFsd2F5cyBjaGFuZ2UgdGhlIG1vZHVsZSBmcmllbmRseSBuYW1lIG9uY2UgaW5zdGFsbGVkIHVuZGVyICZxdW90O09wdGlvbnMmcXVvdDsgKENvbnRlbnQgJmFtcDtyYXF1bzsgTGlzdEl0Mk5hbWVPZkR1cGxpY2F0ZSkuPGJyIC8+DQogICAgVG8gY2hhbmdlIHRoZSBpY29uLCByZXBsYWNlIC9tb2R1bGVzL3skbW9kdWxlX25hbWV9TmFtZU9mRHVwbGljYXRlL2ltYWdlcy9pY29uLmdpZi48YnIgLz4NCiAgICBUbyBjaGFuZ2UgQWRtaW4gc2VjdGlvbiBvZiB0aGUgbW9kdWxlLCBzaW1wbHkgc2VsZWN0IGFwcHJvcHJpYXRlIHNlY3Rpb24gZnJvbSBEcm9wZG93bi4gTWFrZSBzdXJlIHlvdSBjbGVhciB0aGUgY2FjaGUgYWZ0ZXIgdGhlc2UgY2hhbmdlcy48L3A+JzsKJGxhbmdbJ2hlbHBfYWJvdXQnXSA9ICc8aDM+QWJvdXQ8L2gzPg0KICAgIDxwPk9yaWdpbiBvZiB0aGlzIG1vZHVsZSBjb21lcyBmcm9tIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0IiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0IE1vZHVsZTwvYT4gZGV2ZWxvcGVkIGJ5IEJlbiBNYWxlbi48YnIgLz5BcyB0aGVyZSB3ZXJlIG5vIHBsYW5zIG9uIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgb2YgdGhlIG1vZHVsZSBzb21lIHBlb3BsZSBkZWNpZGVkIHRvIGZvcmsgdGhlIG1vZHVsZSBhbmQgY29udGludWUgd2l0aCBkZXZlbG9wbWVudC48YnIgLz4NCiAgICBJZiB5b3UgZmluZCBhbnkgYnVncyBwbGVhc2UgZmVlbCBmcmVlIHRvIHN1Ym1pdCBhIGJ1ZyByZXBvcnQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9idWcvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4gb3IgZm9yIGFueSBnb29kIGlkZWFzIGNvbnNpZGVyIHN1Ym1pdGluZyBhIGZlYXR1cmUgcmVxdWVzdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2ZlYXR1cmVfcmVxdWVzdC9saXN0LzEwMTUiIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPi4gPC9wPg0KICAgIDxwPlBsZWFzZSBrZWVwIGluIG1pbmQgdGhhdCBkZXZlbG9wZXJzIGRvIGhhdmUgdGhlaXIgZGFpbHkgam9icyB3aGljaCBtZWFucyB0aGF0IGZlYXR1cmUgcmVxdWVzdHMgYXJlIGNvbnNpZGVyZWQgYW5kIGRvbmUgYXMgdGltZSBhbGxvd3MuIElmIHlvdSBuZWVkIGEgZmVhdHVyZSByZWFsbHkgYmFkbHkgY29uc2lkZXIgY29udGFjdGluZyBvbmUgb2YgdGhlIGRldmVsb3BlcnMgZm9yIGEgc3BvbnNvcmVkIGRldmVsb3BtZW50Lg0KICAgIDwvcD4NCiAgICA8aDM+VGVhbTwvaDM+DQogICAgPHVsPg0KICAgICAgICA8bGk+Sm9uYXRoYW4gU2NobWlkIChGb2FseSopIGhpQGpvbmF0aGFuc2NobWlkLmRlIDxiciAvPnd3dy5qb25hdGhhbnNjaG1pZC5kZTwvbGk+DQogICAgICAgIDxsaT5Hb3JhbiBJbGljICh1bmlxdTMpIGcuaWxpY0BpLWFydHMuZXUgPGJyIC8+d3d3LmljaC1tYWNoLWRhcy5hdDwvbGk+DQogICAgICAgIDxsaT5Sb2JlcnQgQ2FtcGJlbGwgKGNhbGd1eTEwMDApIGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcgIDxiciAvPnd3dy5jYWxndXkxMDAwLmNvbTwvbGk+DQogICAgICAgIDxsaT5MdWthcyBCbGF0dGVyIChub2NrZW5mZWxsKSBub2NrZW5mZWxsQGdtYWlsLmNvbSA8YnIgLz53d3cuYmxhdHRlcnRlY2guY2g8L2xpPg0KICAgICAgICA8bGk+QXJub3VkIChhcm5vdWQpIGFybm91ZEB1cHNlcnZpY2UubmwgPGJyIC8+d3d3LnVwc2VydmljZS5ubDwvbGk+DQogICAgICAgIDxsaT5XYXluZSBPTmVpbCAod2lzaGJvbmUpIHdheW5lQHRlYW13aXNoYm9uZS5jb20gPGJyIC8+d3d3LnRlYW13aXNoYm9uZS5jb208L2xpPg0KICAgICAgICA8bGk+VGFwaW8gTCZvdW1sO3l0eXkgKFN0aWtraSkgdGFwc2FAYmxhY2ttaWxrLmZpPC9saT4NCiAgICA8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJyZVdW1sO2JlcnNjaHJlaWJlbiBkZXIgU3RhbmRhcmQtQWt0aW9uLiBNJm91bWw7Z2xpY2hlIFdlcnRlIHNpbmQ6DQo8dWw+DQo8bGk+JnF1b3Q7ZGVmYXVsdCZxdW90OyAtIHp1ciBBbnplaWdlIGRlciBadXNhbW1lbmZhc3N1bmcuPC9saT4NCjxsaT4mcXVvdDtkZXRhaWwmcXVvdDsgLSB6dXIgQW56ZWlnZSBkZXIgRGV0YWlsc2VpdGUuPC9saT4NCjxsaT4mcXVvdDtzZWFyY2gmcXVvdDsgLSB6dXIgQW56ZWlnZSBkZXMgU3VjaGZvcm11bGFycy48L2xpPg0KPGxpPiZxdW90O2ZpbHRlciZxdW90OyAtIHp1ciBBbnplaWdlIGRlcyBGaWx0ZXJmb3JtdWxhcnMuIERlciBQYXJhbWV0ZXIgPGVtPmZpbHRlcjwvZW0+IE1VU1MgYW5nZWdlYmVuIHdlcmRlbi48L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zaG93YWxsJ10gPSAnQWxsZSBFaW50ciZhdW1sO2dlIHplaWdlbiwgdW5hYmgmYXVtbDtuZ2lnIHZvbiBkZXIgWmVpdHN0ZXVlcnVuZy4nOwokbGFuZ1snaGVscF9wYXJhbV9jYXRlZ29yeSddID0gJ0dlYmVuIFNpZSBlaW5lbiBvZGVyIG1laHJlcmUgS29tbWEgZ2V0cmVubnRlIEFsaWFzIHZvbiBLYXRlZ29yaWUobikgYW4sIHVtIG51ciBFaW50ciZhdW1sO2dlIGF1cyBkaWVzZW4gYW56dXplaWdlbi4nOwokbGFuZ1snaGVscF9wYXJhbV9leGNsdWRlX2NhdGVnb3J5J10gPSAnR2ViZW4gU2llIGVpbmVuIG9kZXIgbWVocmVyZSBLb21tYSBnZXRyZW5udGUgQWxpYXMgdm9uIEthdGVnb3JpZShuKSBhbiwgdW0gRWludHImYXVtbDtnZSBhdXMgZGllc2VuIGF1c3p1c2NobGllJnN6bGlnO2VuLic7CiRsYW5nWydoZWxwX3BhcmFtX3N1YmNhdGVnb3J5J10gPSAnV2VubiBTaWUgZGVuIFBhcmFtZXRlciAmIzAzOTtjYXRlZ29yeSYjMDM5OyBhbmdlZ2ViZW4gaGFiZW4sIGsmb3VtbDtubmVuIFNpZSBtaXQgPGVtPnRydWU8LyBlbT4gYXVjaCBFbGVtZW50ZSBhdXMgVW50ZXJrYXRlZ29yaWVuIGFuemVpZ2VuLiBTdGFuZGFyZG0mYXVtbDsmc3psaWc7aWcgaXN0IGRlciBXZXJ0IGF1ZiBmYWxzZSBnZXNldHp0Lic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnRGFzIERldGFpbC1UZW1wbGF0ZSwgZGFzIFNpZSB2ZXJ3ZW5kZW4gbSZvdW1sO2NodGVuLic7CiRsYW5nWydoZWxwX3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ0RhcyBadXNhbW1lbmZhc3N1bmdzLVRlbXBsYXRlLCBkYXMgU2llIHZlcndlbmRlbiBtJm91bWw7Y2h0ZW4uICc7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaHRlbXBsYXRlJ10gPSAnRGFzIFN1Y2gtVGVtcGxhdGUsIGRhcyBTaWUgdmVyd2VuZGVuIG0mb3VtbDtjaHRlbi4nOwokbGFuZ1snaGVscF9wYXJhbV9vcmRlcmJ5J10gPSAnWW91IGNhbiBvcmRlciBieSBhbnkgb2YgdGhlIGZvbGxvd2luZyBjb2x1bW5zOiBpdGVtX2lkLCBpdGVtX3RpdGxlLCBpdGVtX3Bvc2l0aW9uLCBpdGVtX2NyZWF0ZWQsIGNhdGVnb3J5X2lkLCBjYXRlZ29yeV9uYW1lLCBjYXRlZ29yeV9wb3NpdGlvbiwgY2F0ZWdvcnlfaGllcmFyY2h5LCByYW5kIGFuZCBhbHNvIGJ5IGN1c3RvbSBmaWVsZHMgd2l0aCBjdXN0b21fKiAoKiB3b3VsZCBiZSBmaWVsZCBkZWZpbml0aW9uIGFsaWFzKS48YnIgLz4NCiAgICA8dWw+DQogICAgICAgIDxsaT5Gb3IgZXhhbXBsZTo8YnIgLz4NCiAgICAgICAgb3JkZXJieT0mIzAzOTtjYXRlZ29yeV9uYW1lLCBpdGVtX3RpdGxlJiMwMzk7PC9saT4NCiAgICAgICAgPGxpPldpdGggZmllbGRkZWYgdmFsdWVzOjxiciAvPg0KICAgICAgICBvcmRlcmJ5PSYjMDM5O2N1c3RvbV9bZmllbGRkZWYgYWxpYXNdJiMwMzk7PC9saT4gICAgICAgIA0KICAgICAgICA8bGk+WW91IGNhbiBhbHNvIHNwZWNpZnkgYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcgZm9yIGFueSBjb2x1bW4sIGZvciBleGFtcGxlOjxiciAvPg0KICAgICAgICBvcmRlcmJ5PSYjMDM5O2NhdGVnb3J5X25hbWV8QVNDLCBpdGVtX3RpdGxlfERFU0MmIzAzOTs8L2xpPg0KICAgIDwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fcGFnZWxpbWl0J10gPSAnTWF4aW1hbGUgQW56YWhsIGRlciBhbnp1emVpZ2VuZGVuIEVpbnRyJmF1bWw7Z2UgKHBybyBTZWl0ZSkuIFdlbm4gZGllc2VyIFBhcmFtZXRlciBuaWNodCBhbmdlZ2ViZW4gd2lyZCwgd2VyZGVuIGFsbGUgcGFzc2VuZGVuIEVpbnRyJmF1bWw7Z2UgYW5nZXplaWd0LiBXZW5uIGVzIGlzdCwgdW5kIGVzIGdpYnQgbWVociBFaW50ciZhdW1sO2dlIGFscyBpbSBQYXJhbWV0ZXIgYW5nZWdlYmVuLCB3aXJkIGRlciBUZXh0IHVuZCBMaW5rcyBhbmdlemVpZ3QsIHVtIGRhcyBTY3JvbGxlbiBkdXJjaCBkaWUgRXJnZWJuaXNzZSB6dSBlcm0mb3VtbDtnbGljaGVuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3RhcnQnXSA9ICdCZWdpbm5lbiBiZWltIG4tdGVuIEVpbnRyYWcgLSBiZWltIGxlZXJlbiB3ZXJ0IHdpcmQgYWIgZXJzdGVuIEVpbnRyYWcgZ2VzdGFydGV0Lic7CiRsYW5nWydoZWxwX3BhcmFtX251bWJlciddID0gJ01heGltYWxlIGFuemFobCBkZXIgRWludHImYXVtbDtnZSAocHJvIFNlaXRlKSAtIGJlaW0gbGVlcmVuIHdlcnQgd2VyZGVuIGFsbGUgRWludHImYXVtbDtnZSBhbmdlaXplaWd0LiBEaWVzIGlzdCBlaW4gU3lub255bSBmJnV1bWw7ciBkaWUgcGFnZWxpbWl0IFBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnU2VpdGUgZiZ1dW1sO3IgRWludHJhZ2RldGFpbHMuIE11c3MgZWluIFNlaXRlbmFsaWFzIHNlaW4uIFdpcmQgdmVyd2VuZGV0LCBkYW1pdCBEZXRhaWxzIGluIGVpbmVyIGFuZGVyZW4gU2VpdGUgYWxzIFp1c2FtbWVuZmFzc3VuZyBhbmdlemVpZ3Qgd2VyZGVuLic7CiRsYW5nWydoZWxwX3BhcmFtX2l0ZW0nXSA9ICdEaWVzZXIgUGFyYW1ldGVyIGlzdCBudXIgZiZ1dW1sO3IgZGllIERldGFpbGFuc2ljaHQuIEVzIGVybSZvdW1sO2dsaWNodCBkaWUgQW5nYWJlLCB3ZWxjaGVzIEVsZW1lbnQgaW0gRGV0YWlsLU1vZHVzIGFuZ2V6ZWlndCB3ZXJkZW4gc29sbC4gTXVzcyBlaW4gRWxlbWVudCBBbGlhcyDigIvigItzZWluLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaF8nXSA9ICdEdXJjaHN1Y2h0IGVpbiBiZXN0aW1tdGVzIEZlbGQuIFNpZSBrJm91bWw7bm5lbiAmIzAzOTt0aXRsZSYjMDM5OyB2ZXJ3ZW5kZW4gb2RlciBkZW4gQWxpYXMgZWluZXMgRXh0cmEtRmVsZHMsIGJzcHcuIHNlYXJjaF90aXRsZS4gQmxlaWJ0IHVuYmVhY2h0ZXQsIHdlbm4gZGVyIFBhcmFtZXRlciAmIzAzOTtzZWFyY2gmIzAzOTsgZ2VzZXR6dCBpc3QsIGplZG9jaCBpc3QgZGllIEtvbWJpbmF0aW9uIG1laHJlcmVyIHNlYXJjaF8qIFBhcmFtZXRlciBtJm91bWw7Z2xpY2guJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZmlsdGVyJ10gPSAnUmVxdWlyZWQgZm9yIGFjdGlvbiA8ZW0+ZmlsdGVyPC9lbT4uIFNwZWNpZnkgdGhlIGZpZWxkcyB3aG9zZSB2YWx1ZXMgc2hvdWxkIGJlIG9mZmVyZWQgYXMgZmlsdGVyIG9wdGlvbnMgYnkgbGlzdGluZyB0aGUgZmllbGQmIzAzOTtzIGFsaWFzZXMgY29tbWEgc2VwYXJhdGVkLic7CiRsYW5nWydoZWxwX3BhcmFtX3JldHVybnBhZ2UnXSA9ICdVc2VkIGZvciBmaWx0ZXIgb3Igc2VhcmNoIG1vZGUgb25seS4gUGFnZSB0byBkaXNwbGF5IHNlYXJjaCByZXN1bHRzIHJlc3BlY3Rpdmx5IGZpbHRlcmVkIGl0ZW1zIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBzdW1tYXJ5IHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gZmlsdGVyIC8gc2VhcmNoIG1hc2suJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGVidWcnXSA9ICdFcm0mb3VtbDtnbGljaHQgRGVidWctTW9kdXMsIEF1c2dhYmUgYWxsZXIgT2JqZWt0ZSwgQXJyYXlzIHVuZCBWYXJpYWJsZW4gZiZ1dW1sO3IgYWt0dWVsbGUgQWt0aW9uLic7CiRsYW5nWyd1cGdyYWRlX3dhcm5pbmcnXSA9ICc8aDM+SW1wb3J0YW50IHVwZ3JhZGUgSW5mb3JtYXRpb248L2gzPg0KICAgIDxwPjxzdHJvbmc+SWYgeW91IGhhdmUgdXBncmFkZWQgZnJvbSBMaXN0SXRFeHRlbmRlZCAxLjIuMiBvciBlYXJsaWVyIFZlcnNpb24gdG8gMS4zIHJlYWQgdGhpcyBjYXJlZnVsbHkhPC9zdHJvbmc+PC9wPg0KICAgIDxwPkFmdGVyIHVwZ3JhZGUgcHJvY2VlZHVyZSBvZiBMaXN0SXRFeHRlbmRlZCAxLjMgYSBuZXcgTW9kdWxlIGluc3RhbmNlIGNhbGxlZCBMaXN0SXQyT3JpZ2luYWwgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkuPGJyIC8+DQogICAgUGxlYXNlIGdvIHRvICZxdW90O0V4dGVuc2lvbnMgJnJhcXVvOyBNb2R1bGVzJnF1b3Q7IGFuZCBpbnN0YWxsIHRoaXMgbmV3bHkgY3JlYXRlZCBJbnN0YW5jZS4gT25jZSB0aGlzIGluc3RhbmNlIHdhcyBpbnN0YWxsZWQgSXRlbXMgZnJvbSBMaXN0SXQyIHdpbGwgYmUgYXZhaWxhYmxlIGFnYWluLjxiciAvPg0KICAgIFVuZm9ydHVuYXRlbGx5IHlvdSB3aWxsIGhhdmUgdG8gY2hhbmdlIGFsbCB7TGlzdEl0Mn0gdGFncyBpbiB5b3VyIFdlYnNpdGUgdG8ge0xpc3RJdDJPcmlnaW5hbH0sIHdlIGFyZSBzb3JyeSBhYm91dCB0aGF0LjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43OTkwOTk0NzYuMTM1NTU4MTE2OS4xMzU1NTgxMTY5LjEzNTU1ODExNjkuMSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTM1NTU4MTE2OS4xLjEudXRtY3NyPShkaXJlY3QpfHV0bWNjbj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMuMS4xMC4xMzU1NTgxMTY5JzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludmFsaWRfY2hhcmFjdGVycyddID0gJ0tpcmphaW1ldCwga3V0ZW46ICVzIGVpdiZhdW1sO3Qgb2xlIHNhbGxpdHR1amEga2VudCZhdW1sO3NzJmF1bWw7OiAlcyc7CiRsYW5nWydpdGVtJ10gPSAnSXRlbWknOwokbGFuZ1snaXRlbXMnXSA9ICdJdGVtaXQnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdLZW50JmF1bWw7biBNJmF1bWw7JmF1bWw7cml0eXMnOwokbGFuZ1snZmllbGRkZWZzJ10gPSAnS2VudCZhdW1sO24gTSZhdW1sOyZhdW1sO3JpdHlrc2V0JzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUG9oamEnOwokbGFuZ1sndGVtcGxhdGVzJ10gPSAnUG9oamF0JzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnS2F0ZWdvcmlhJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWF0JzsKJGxhbmdbJ29wdGlvbiddID0gJ1ZhbGludGEnOwokbGFuZ1snb3B0aW9ucyddID0gJ1ZhbGlubmF0JzsKJGxhbmdbJ2JhY2snXSA9ICdTaXZ1IHRhYWtzZXBwJmF1bWw7aW4nOwokbGFuZ1snaXRlbV90aXRsZSddID0gJ090c2lra28nOwokbGFuZ1sncHJvbXB0X2l0ZW1fdGl0bGUnXSA9ICdJdGVtaW4gb3RzaWtrbyc7CiRsYW5nWydhY3RpdmUnXSA9ICdBa3RpaXZpbmVuJzsKJGxhbmdbJ3RpbWVfY29udHJvbCddID0gJ0smYXVtbDt5dCZhdW1sOyBhamFuaGFsbGludGFhJzsKJGxhbmdbJ3N0YXJ0X3RpbWUnXSA9ICdBbG9pdHVzIGFpa2EnOwokbGFuZ1snZW5kX3RpbWUnXSA9ICdMb3BldHVzIGFpa2EnOwokbGFuZ1snaXRlbV90aXRsZV9lbXB0eSddID0gJ0l0ZW1pbiBvdHNpa2tvYSBlaSBvbGUgYW5uZXR0dSc7CiRsYW5nWydyZXF1aXJlZF9maWVsZF9lbXB0eSddID0gJ1ZhYWRpdHR1IGtlbnR0JmF1bWw7IG9uIHR5aGomYXVtbDsnOwokbGFuZ1sndG9vX2xvbmcnXSA9ICdLZW50JmF1bWw7biBhcnZvIG9uIHNhbGxpdHR1YSBwaWRlbXBpJzsKJGxhbmdbJ2FwcHJvdmUnXSA9ICdBc2V0YSBha3RpaXZpc2Vrc2knOwokbGFuZ1sncmV2ZXJ0J10gPSAnQXNldGEgcGFzc2lpdmlzZWtzaSc7CiRsYW5nWydzdWJtaXRfb3JkZXInXSA9ICdUYWxsZW5uYSBqJmF1bWw7cmplc3R5cyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdQb2lzdGEgVmFsaXR1dCAlcyc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZW11bHRpcGxlJ10gPSAnT2xldGtvIHZhcm1hIGV0dCZhdW1sOyBoYWx1YXQgcG9pc3RhYSBrYWlra2kgJXM/JzsKJGxhbmdbJ3NlbGVjdF9hbGwnXSA9ICdWYWxpdHNlIGthaWtraSc7CiRsYW5nWydlcnJvcl9zdGFydGdyZWF0ZXJlbmQnXSA9ICdBbG9pdHVzIHAmYXVtbDtpdiZhdW1sOyBvbiBsb3BldHVzIHAmYXVtbDtpdiZhdW1sOyZhdW1sOyBpc29tcGkuJzsKJGxhbmdbJ2l0ZW1fYWxpYXNfZXhpc3RzJ10gPSAnSXRlbWluIGFsaWFzIG9uIGpvIG9sZW1hc3NhLiBBbGlhcyBwaXQmYXVtbDsmYXVtbDsgb2xsYWEgdW5paWtraS4nOwokbGFuZ1sncmV0dXJuX3VybCddID0gJ1BhbGFhJzsKJGxhbmdbJ3BhdGhjb250YWluc3ZhcnMnXSA9ICdUJmF1bWw7dCZhdW1sOyBrZW50dCZhdW1sOyZhdW1sOyB2b2lkYWFuIG11b2thdGEgZW5zaW1tJmF1bWw7aXNlbiB0YWxsZW5udWtzZW4gaiZhdW1sO2xrZWVuICVzJzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ011b2trYWEgS2VudCZhdW1sO24gTSZhdW1sOyZhdW1sO3JpdHlzdCZhdW1sOyc7CiRsYW5nWydmaWVsZGRlZl9uYW1lJ10gPSAnTmltaSc7CiRsYW5nWydmaWVsZGRlZl9oZWxwJ10gPSAnQXZ1bGlhcyB2aW5ra2knOwokbGFuZ1snZmllbGRkZWZfdHlwZSddID0gJ1R5eXBwaSc7CiRsYW5nWydmaWVsZGRlZl9tYXhfbGVuZ3RoJ10gPSAnTWFrc2ltaSBwaXR1dXMnOwokbGFuZ1snZmllbGRkZWZfcmVxdWlyZWQnXSA9ICdWYWFkaXR0dSc7CiRsYW5nWydleHRyYSddID0gJ0V4dHJhJzsKJGxhbmdbJ3RleHRib3gnXSA9ICdUZWtzdGlrZW50dCZhdW1sOyc7CiRsYW5nWydjaGVja2JveCddID0gJ1ZhbGludGFsYWF0aWtrbyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1Rla3N0aWFsdWUnOwokbGFuZ1snc2VsZWN0X2RhdGUnXSA9ICdWYWxpdHNlIFAmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1RpZWRvc3RvbmxhdGF1cyc7CiRsYW5nWydkcm9wZG93biddID0gJ0FsYXN2ZXRvdmFsaWtrbyc7CiRsYW5nWydnYWxsZXJ5J10gPSAnR2FsbGVyaWEgQWxhc3ZldG92YWxpa2tvJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTW9uaXZhbGludGEnOwokbGFuZ1snaGllcmFyY2h5J10gPSAnU2lzJmF1bWw7bHQmb3VtbDsgU2l2dXQnOwokbGFuZ1snc2VsZWN0X2ZpbGUnXSA9ICdWYWxpdHNlIFRpZWRvc3RvJzsKJGxhbmdbJ2ZpZWxkc2V0X3N0YXJ0J10gPSAnRmllbGRzZXQgQWxrYWEnOwokbGFuZ1snZmllbGRzZXRfZW5kJ10gPSAnRmllbGRzZXQgTG9wcHV1JzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZW1wdHknXSA9ICdLZW50JmF1bWw7biBtJmF1bWw7JmF1bWw7cml0eWtzZW4gbmltZSZhdW1sOyBlaSBvbGUgYW5uZXR0dSc7CiRsYW5nWydmaWVsZGRlZl9uYW1lX2V4aXN0cyddID0gJ0tlbnQmYXVtbDtuIG0mYXVtbDsmYXVtbDtyaXR5a3NlbiBuaW1pIG9uIGpvIG9sZW1hc3NhJzsKJGxhbmdbJ2ZpZWxkZGVmX2FsaWFzX2V4aXN0cyddID0gJ0tlbnQmYXVtbDtuIG0mYXVtbDsmYXVtbDtyaXR5a3NlbiBhbGlhcyBvbiBqbyBvbGVtYXNzYS4gQWxpYXMgcGl0JmF1bWw7JmF1bWw7IG9sbGEgdW5paWtraS4nOwokbGFuZ1snaW52YWxpZCddID0gJ0tlbnQmYXVtbDtuIGFydm8gb24gdmlyaGVlbGxpbmVuJzsKJGxhbmdbJ3N0YXR1c19yZXF1aXJlZCddID0gJ0FzZXRhIHN0YXR1cyAmIzAzOTt2YWFkaXR1a3NpJiMwMzk7JzsKJGxhbmdbJ3N0YXR1c19vcHRpb25hbCddID0gJ0FzZXRhIHN0YXR1ICYjMDM5O3ZhcGFhZWh0b2lzZWtzaSYjMDM5Oyc7CiRsYW5nWydpc19kZWZhdWx0J10gPSAnT24gYXNldGV0dHUgJiMwMzk7T2xldHVrc2Vrc2kmIzAzOTsnOwokbGFuZ1snc3RhdHVzX2RlZmF1bHQnXSA9ICdBc2V0YSAmIzAzOTtPbGV0dWtzZWtzaSYjMDM5Oyc7CiRsYW5nWydoZWxwdGV4dF90aXRsZSddID0gJ01haGRvbGxpc2V0IEtlbnQmYXVtbDtuIE0mYXVtbDsmYXVtbDtyaXR5cyBvaGplZXQgRXh0cmEga2VudCZhdW1sO2xsZTonOwokbGFuZ1snZ2FsbGVyeV9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT5ObyBleHRyYSBpbnN0cnVjdGlvbnM8L2xpPgo8L3VsPic7CiRsYW5nWyd0ZXh0Ym94X2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPnNpemVbMjBdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5tYXhfbGVuZ2h0WzIwXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjwvbGk+CjwvdWw+JzsKJGxhbmdbJ2NoZWNrYm94X2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPk5vIGV4dHJhIGluc3RydWN0aW9uPC9saT4KPC91bD4nOwokbGFuZ1sndGV4dGFyZWFfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+bWF4X2xlbmdodFsyMF08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPnd5c2l3eWdbMV08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPC9saT4KPC91bD4nOwokbGFuZ1snc2VsZWN0X2RhdGVfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+c2l6ZVsyMF08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPm1heF9sZW5naHRbMjBdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5kYXRlZm9ybWF0W2RkL21tL3l5XTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGF0ZSBmb3JtYXQgdXNlZCBieSB0aGUgalF1ZXJ5IGRhdGVwaWNrZXIuIFRyeSBnb29nbGluZyAmIzAzOTtqcXVlcnkgZm9ybWF0RGF0ZSYjMDM5OzwvbGk+CjwvdWw+JzsKJGxhbmdbJ3VwbG9hZF9maWxlX2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBleHRlbnNpb24gKGtlZXAgbG93ZXJjYXNlKTwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+ZGlyWy9wYXRoL3RvL2Rpcl08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IERpcmVjdG9yeSBwYXRoIHRoYXQgd2lsbCBiZSBhcHBlbmRlZCB0byAkY29uZmlnWyYjMDM5O3VwbG9hZHNfdXJsJiMwMzk7XSAuIE5vIHNsYXNoIGF0IHRoZSBlbmQuIHskaXRlbV9pZH0gYW5kIHskaXRlbV9hbGlhc30gd2lsbCBiZSByZXBsYWNlZC48L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmV4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogcHJlZml4PC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5maWxlYnJvd3NlclsxXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBOb3RlOiBTZXRzIEdCRmlsZVBpY2tlciB0byBmaWxlYnJvd3NlciBtb2RlIGluc3RlYWQgb2YgZGVmYXVsdCBkcm9wZG93biBtb2RlPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5pbWFnZVsxXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBOb3RlOiBTZXRzIEdCRmlsZVBpY2tlciB0byBzaG93IHRodW1ibmFpbCBpbWFnZSBpbnN0ZWFkIG9mIGlucHV0IGZpZWxkLjwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+Y3JlYXRlX2RpcnNbMV08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgTm90ZTogU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgY3JlYXRpbmcgbmV3IGRpcmVjdG9yeS4gKERlcGVuZHMgb24gdXNlciBvciBncm91cCBhcyB3ZWxsIGFzIEdCRmlsZVBpY2tlciBwZXJtaXNzaW9uKTwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+ZGVsZXRlWzFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIGFsbG93IGRlbGV0aW5nIGZpbGVzLiAoRGVwZW5kcyBvbiB1c2VyIG9yIGdyb3VwIGFzIHdlbGwgYXMgR0JGaWxlUGlja2VyIHBlcm1pc3Npb24pPC9saT4gCiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+c2hvd19zdWJkaXJzWzFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIGFsbG93IHZpZXdpbmcgb2Ygc3ViZGlyZWN0b3JpZXMuIChEZXBlbmRzIG9uIHVzZXIgb3IgZ3JvdXAgYXMgd2VsbCBhcyBHQkZpbGVQaWNrZXIgcGVybWlzc2lvbik8L2xpPiAgICAgICAgICAgICAgICAgICAgICAgICAKPC91bD4nOwokbGFuZ1snc2VsZWN0X2ZpbGVfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ108L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGV4dGVuc2lvbiAoa2VlcCBsb3dlcmNhc2UpPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGlyZWN0b3J5IHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvICRjb25maWdbJiMwMzk7dXBsb2Fkc191cmwmIzAzOTtdIC4gTm8gc2xhc2ggYXQgdGhlIGVuZC4geyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfSB3aWxsIGJlIHJlcGxhY2VkLjwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBwcmVmaXg8L2xpPgo8L3VsPic7CiRsYW5nWydkcm9wZG93bl9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5vcHRpb25zW2FwcGxlPUFwcGxlLGJhbmFuYT1CYW5hbmFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAga2V5PXZhbHVlPC9saT4KPC91bD4nOwokbGFuZ1snbXVsdGlzZWxlY3RfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogIGtleT12YWx1ZTwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+c2l6ZVs1XTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjwvbGk+CjwvdWw+JzsKJGxhbmdbJ2ZpZWxkc2V0X3N0YXJ0X2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPk5vIGV4dHJhIGluc3RydWN0aW9uczwvbGk+CjwvdWw+JzsKJGxhbmdbJ2ZpZWxkc2V0X2VuZF9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT5ObyBleHRyYSBpbnN0cnVjdGlvbnM8L2xpPgo8L3VsPic7CiRsYW5nWydoaWVyYXJjaHlfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+Tm8gZXh0cmEgaW5zdHJ1Y3Rpb25zPC9saT4KPC91bD4nOwokbGFuZ1sncmVvcmRlcl9jYXRlZ29yaWVzJ10gPSAnSiZhdW1sO3JqZXN0JmF1bWw7IEthdGVnb3Jpb2l0YSc7CiRsYW5nWydlZGl0X2NhdGVnb3J5J10gPSAnTXVva2thIEthdGVnb3JpYWEnOwokbGFuZ1snY2F0ZWdvcnlfbmFtZSddID0gJ0thdGVnb3JpYW4gbmltaSc7CiRsYW5nWydjYXRlZ29yeV9kZXNjcmlwdGlvbiddID0gJ0thdGVnb3JpYW4ga3V2YXVzJzsKJGxhbmdbJ2NhdGVnb3J5X25hbWVfZW1wdHknXSA9ICdLYXRlZ29yaWFuIG5pbWUmYXVtbDsgZWkgb2xlIGFubmV0dHUnOwokbGFuZ1snY2F0ZWdvcnlfYWxpYXNfZXhpc3RzJ10gPSAnS2F0ZWdvcmlhbiBhbGlhcyBvbiBqbyBvbGVtYXNzYS4gQWxpYXMgcGl0JmF1bWw7JmF1bWw7IG9sbGEgdW5paWtraS4nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlJ10gPSAnS29vc3RlIFBvaGphJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdLb29zdGUgUG9oamF0JzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlJ10gPSAnWWtzaXR5aXNrb2h0YWluZW4gUG9oamEnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnWWtzaXR5aXNrb2h0YWlzZXQgUG9oamF0JzsKJGxhbmdbJ3NlYXJjaHRlbXBsYXRlJ10gPSAnSGFrdSBQb2hqYSc7CiRsYW5nWydzZWFyY2h0ZW1wbGF0ZXMnXSA9ICdIYWt1IFBvaGphdCc7CiRsYW5nWydmaWx0ZXJ0ZW1wbGF0ZSddID0gJ1ZhbGl0c2luIFBvaGphJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlcyddID0gJ1ZhbGl0c2luIFBvaGphdCc7CiRsYW5nWydlZGl0dGVtcGxhdGUnXSA9ICdNdW9ra2FhIFBvaGphYSc7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lJ10gPSAnUG9oamFuIG5pbWknOwokbGFuZ1sndGVtcGxhdGVfbmFtZV9lbXB0eSddID0gJ1BvaGphbiBuaW1lJmF1bWw7IGVpIG9sZSBhbm5ldHR1JzsKJGxhbmdbJ3RlbXBsYXRlX2NvbnRlbnRfZW1wdHknXSA9ICdQb2hqYW4gc2lzJmF1bWw7bHQmb3VtbDsmYXVtbDsgZWkgb2xlIGFubmV0dHUnOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdPbGV0dXMgcG9oamF0JzsKJGxhbmdbJ21vZHVsZV9vcHRpb25zJ10gPSAnTW9kdXVsaSBWYWxpbm5hdCc7CiRsYW5nWyd1cmxfb3B0aW9ucyddID0gJ1VSTCBWYWxpbm5hdCc7CiRsYW5nWydwcm9tcHRfZnJpZW5kbHluYW1lJ10gPSAnTW9kdXVsaW4geXN0JmF1bWw7diZhdW1sO2xsaW5lbiBuaW1pa2UnOwokbGFuZ1sncHJvbXB0X2FkbWluc2VjdGlvbiddID0gJ01vZHV1bGluIEFkbWluIE9zaW8nOwokbGFuZ1sncHJvbXB0X2l0ZW1fc2luZ3VsYXInXSA9ICdJdGVtIHNpbmd1bGFyJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3BsdXJhbCddID0gJ0l0ZW0gcGx1cmFsJzsKJGxhbmdbJ3Byb21wdF91cmxfcHJlZml4J10gPSAnVVJMIFByZWZpeCc7CiRsYW5nWydwcm9tcHRfZGlzcGxheV9pbmxpbmUnXSA9ICdOJmF1bWw7eXQmYXVtbDsgeWtzaXR5aXNrb2h0YWluZW4gc2lzJmF1bWw7bHQmb3VtbDsgaW5saW5lIG1vZGVzc2EnOwokbGFuZ1sncHJvbXB0X2l0ZW1fY29scyddID0gJ04mYXVtbDt5dCZhdW1sOyB0JmF1bWw7bSZhdW1sOyBrZW50dCZhdW1sOyBpdGVtaWVuIGxpc3RhdWtzZXNzYSc7CiRsYW5nWyd0ZXh0X3NvcnRvcmRlciddID0gJ09sZXR1cyBqJmF1bWw7cmplc3R5cyBpdGVtZWlsbGUnOwokbGFuZ1snYXNjZW5kaW5nJ10gPSAnTm91c2V2YSc7CiRsYW5nWydkZXNjZW5kaW5nJ10gPSAnTGFza2V2YSc7CiRsYW5nWydvcHRpb25zX25vdGljZSddID0gJ0t1biBvbGV0IHRlaG55dCBtdXV0b2tzaWEgbW9kdXVsaW4geXN0JmF1bWw7diZhdW1sO2xsaXNlZW4gbmltaWtrZWVzZWVuIHRhaSBhZG1pbiBvc2lvb24sIGpvdWR1dCBtYWhkb2xsaXNlc3RpIHR5aGpldCZhdW1sO20mYXVtbDsmYXVtbDtuIHYmYXVtbDtsaW11aXN0aW4gJnF1b3Q7Y2xlYXIgY2FjaGUmcXVvdDsgdG9pbWlubm9uIGF2dWxsYS4nOwokbGFuZ1snbm90aWNlJ10gPSAnSHVvbWF1dHVzJzsKJGxhbmdbJ2luc3RhbmNlcyddID0gJ0luc3RhbnNzaXQnOwokbGFuZ1snaW5zdGFsbGVkX2luc3RhbmNlc193YXJuaW5nJ10gPSAnQWxsYSBvbiBsaXN0YXVzIGtsb29uYXR1aXN0YSBpbnN0YW5zc2Vpc3RhLjxiciAvPlZhcm1pc3RhIGV0dCZhdW1sOyBvdGF0IHZhcm11dXNrb3Bpb24ga2Fpa2VzdGEgKFRpZWRvc3RvaXN0YSAmYW1wOyBUaWV0b2thbm5hc3RhKSBlbm5lbmt1aW4gcCZhdW1sO2l2aXQmYXVtbDt0IG1vZHV1bGluJzsKJGxhbmdbJ2luc3RhbGxlZF9pbnN0YW5jZXMnXSA9ICdBc2VubmV0dXQgaW5zdGFuc3NpdCc7CiRsYW5nWydpbnN0YW5jZV9uYW1lJ10gPSAnSW5zdGFuc3NpbiBuaW1pJzsKJGxhbmdbJ2luc3RhbmNlX2ZyaWVuZGx5bmFtZSddID0gJ1lzdCZhdW1sO3YmYXVtbDtsbGluZW4gbmltaWtlJzsKJGxhbmdbJ2luc3RhbmNlX3NtYXJ0eSddID0gJ1NtYXJ0eSB0YWdpJzsKJGxhbmdbJ2luc3RhbmNlX3ZlcnNpb24nXSA9ICdWZXJzaW8nOwokbGFuZ1snaW5zdGFuY2VfdXBncmFkZSddID0gJ1AmYXVtbDtpdml0JmF1bWw7JzsKJGxhbmdbJ2luc3RhbmNlX3VwdG9kYXRlJ10gPSAnQWphbnRhc2FsbGEnOwokbGFuZ1snaW5zdGFuY2VfbW9kdWxldXBncmFkZWQnXSA9ICdNb2R1dWxpbiBwJmF1bWw7aXZpdHlzJzsKJGxhbmdbJ2R1cGxpY2F0ZV9pbnN0YW5jZSddID0gJ0tsb29uYWEgbW9kdXVsaSc7CiRsYW5nWydkdXBsaWNhdGVfZGVzY3JpcHRpb24nXSA9ICdUJmF1bWw7bSZhdW1sOyBtb2R1dWxpIG9uIGhlbHBwbyBrbG9vbmF0YSBwYWluYW1hbGxhIEtsb29uYWEgbW9kdXVsaSBwYWluaWtldHRhLjxiciAvPiBBc2VubmEga2xvb25pdCAmcXVvdDtMYWFqZW5ub2tzZXQgJmFtcDtyYXF1bzsgTW9kdXVsaXQmcXVvdDsuJzsKJGxhbmdbJ2NvcHlfdGl0bGUnXSA9ICdLbG9vbmFhIG1vZHV1bGknOwokbGFuZ1snc3VibWl0J10gPSAnTCZhdW1sO2hldCZhdW1sOyc7CiRsYW5nWydkZWZhdWx0J10gPSAnT2xldHVzJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1BlcnV1dGEnOwokbGFuZ1sncmVzZXQnXSA9ICdQYWxhdXRhIE9sZXR1a3Nla3NpJzsKJGxhbmdbJ2R1cGxpY2F0ZSddID0gJ0tsb29uYWEnOwokbGFuZ1snY2hhbmdlc3NhdmVkJ10gPSAnS2Fpa2tpIG11dXRva3NldCB0YWxsZW5uZXR0dSBvbm5pc3R1bmVlc3RpLic7CiRsYW5nWyd0ZW1wbGF0ZXJlc3RvcmVkJ10gPSAnT2xldHVzIFBvaGphIHBhbGF1dGV0dHUnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ09sZXRrbyB2YXJtYSBldHQmYXVtbDsgaGFsdWF0IHBvc3RhYT8nOwokbGFuZ1sndXAnXSA9ICdZbCZvdW1sO3MnOwokbGFuZ1snZG93biddID0gJ0FsYXMnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZGVsZXRlJ10gPSAnUG9pc3RhJzsKJGxhbmdbJ25vc3VjaGlkJ10gPSAnRWkgSUQ6dCZhdW1sOyBvbGVtYXNzYSc7CiRsYW5nWydkZWxldGVkJ10gPSAnSXRlbWkodCkgcG9pc3RldHR1IG9ubmlzdHVuZWVzdGkuJzsKJGxhbmdbJ2FkZCddID0gJ0xpcyZhdW1sOyZhdW1sOyAlcyc7CiRsYW5nWydhbGlhcyddID0gJ0FsaWFzJzsKJGxhbmdbJ2FsaWFzX2ludmFsaWQnXSA9ICdBbGlhcyBlaSBrZWxwYWEuIEFsaWFzIHBpdCZhdW1sOyZhdW1sOyBvbGxhIFBIUCBtdXV0dHVqYW4gbmltaSc7CiRsYW5nWydzZWFyY2gnXSA9ICdIYWt1JzsKJGxhbmdbJ3NlYXJjaGZvciddID0gJ0hha3UnOwokbGFuZ1snc2VhcmNocmVzdWx0c2ZvciddID0gJ0hha3UgdHVsb2tzZXQnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ21vZHVsZV9uYW1lJ10gPSAnTW9kdXVsaW4gbmltaSc7CiRsYW5nWydtb2R1bGVfbmFtZV9lbXB0eSddID0gJ01vZHV1bGluIG5pbWUmYXVtbDsgZWkgb2xlIGFubmV0dHUnOwokbGFuZ1snbW9kdWxlX25hbWVfaW52YWxpZCddID0gJ01vZHV1bGluIG5pbWkgc2lzJmF1bWw7bHQmYXVtbDsmYXVtbDsgdmlyaGVlbGxpc2kmYXVtbDsga2lyamFpbWlhJzsKJGxhbmdbJ21vZHVsZWNvcGllZCddID0gJ01vZHV1bGkga29waW9pdHUgb25uaXN0dW5lZXN0aSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0dGVyaSc7CiRsYW5nWydmaWx0ZXJwcm9tcHQnXSA9ICdGaWx0dGVyaSAlcyc7CiRsYW5nWydwYXJhbV9maWx0ZXJfbWlzc2luZyddID0gJ1BhcmFtdGVyaSA8ZW0+ZmlsdGVyPC9lbT4gb24gdmFhZGl0dHUgZmlsdGVyIG1vb2Rpc3NhLic7CiRsYW5nWydhbGwnXSA9ICdLYWlra2knOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdMaXN0SXQgYWxsb3dzIHlvdSB0byBjcmVhdGUgbGlzdHMgdGhhdCB5b3UgY2FuIGRpc3BsYXkgdGhyb3VnaG91dCB5b3VyIHdlYnNpdGUuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnb25uaXN0dW5lZXN0aSBhc2VubmV0dHUnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ29ubmlzdHVuZWVzdGkgcG9pc3RldHR1JzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzxoMz5WZXJzaW9uIDEuMjwvaDM+Cjx1bD4KICAgIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIFRlbXBsYXRlIGhhbmRsaW5nLCB1c2luZyBDTVNNUyB0ZW1wbGF0ZXMgdGFibGUgbm93PC9saT4KICAgIDxsaT5BZGRpdGlvbmFsIEZpbGVkIGRlZmluaXRpb25zPC9saT4KICAgIDxsaT5SZW1vdmVkIEdCRmlsZVBpY2tlciBkZXBlbmRlbmN5PC9saT4KICAgIDxsaT5DTVNNUyAxLjExIHJlYWR5PC9saT4KICAgIDxsaT5JbXByb3ZlZCBoYW5kbGluZyBvZiBpdGVtcyBvcmRlcmluZzwvbGk+CiAgICA8bGk+QWRkZWQgcG9zc2liaWxpdHkgb2YgZHVwbGljYXRpbmcgbXVsdGlwbGUgaW5zdGFuY2VzIGZyb20gYmFja2VuZCBhbmQgcmVkdWNlZCB0aGUgbnVtYmVyIG9mIGZpbGVzIG5lZWRlZCBmb3IgZHVwbGljYXRlZCBpbnN0YW5jZXM8L2xpPgogICAgPGxpPE51bWJlcmVkIHBhZ2luYXRpb24gaW4gc3VtbWFyeSB0ZW1wbGF0ZXM8L2xpPgogICAgPGxpPk51bWVyb3VzIGJ1Z2ZpeGVzPC9saT4KICAgIDxsaT5Qb3NzaWJpbGl0eSB0byBzcGVjaWZ5IGRlZnVhbHQgY2F0ZWdvcnk8L2xpPgogICAgPGxpPlBvc3NpYmlsaXR5IHRvIHNwZWNpZnkgZGVmYXVsdCBUZW1wbGF0ZXM8L2xpPgogICAgPGxpPlBvc3NpYmlsaXR5IHRvIHJlbG9hZCBkZWZhdWx0IHRlbXBsYXRlczwvbGk+CiAgICA8bGk+QWRkZWQgb3B0aW9uIG9mIGNob29zaW5nIEFkbWluIFNlY3Rpb248L2xpPgogICAgPGxpPmFuZCBtb3JlIC4uLjwvbGk+CjwvdWw+CjxoMz5WZXJzaW9uIDEuMTwvaDM+Cjx1bD4KICAgIDxsaT5NdWxpdGxldmVsIENhdGVnb3JpZXM8L2xpPgogICAgPGxpPlN1bW1hcnkgUGFnaW5hdGlvbjwvbGk+CiAgICA8bGk+TXVsdGlwbGUgQ2F0ZWdvcmllcyBmb3IgcGFyYW1ldGVyIGNhdGVnb3J5PC9saT4KICAgIDxsaT5DTVNNUyAxLjEwIHJlYWR5PC9saT4KICAgIDxsaT5CYWNrZW5kIHRhYmxlIHNlYXJjaDwvbGk+CiAgICA8bGk+RXhjbHVkZSBDYXRlZ29yeSBwYXJhbWV0ZXI8L2xpPgo8L3VsPic7CiRsYW5nWydnZW5lcmFsJ10gPSAnWWxlaW5lbic7CiRsYW5nWyd1c2FnZSddID0gJ0smYXVtbDt5dHQmb3VtbDsnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdPaWtldWRldCc7CiRsYW5nWydkdXBsaWNhdGluZyddID0gJ01vZHV1bGluIGtsb29uYXVzJzsKJGxhbmdbJ2Fib3V0J10gPSAnTWVpc3QmYXVtbDsnOwokbGFuZ1snaGVscF9nZW5lcmFsJ10gPSAnPGgzPkdlbmVyYWwgSW5mbzwvaDM+CQkKCTxwPlNpbXBseSBwdXQsIExpc3RJdCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4gWW91IGNvdWxkIG1ha2UgYSBzaW1wbGUgRkFRIG9yIFRlc3RpbW9uaWFscyBmZWF0dXJlIHdpdGggdGhpcyBtb2R1bGUuIFRoZSB3ZWIgZGV2ZWxvcGVyIGRlZmluZXMgZmllbGRzIHRvIGNvbnN0cmFpbiB3aGF0IGRhdGEgdGhlIGNsaWVudCBjYW4gZW50ZXIuIEEgbnVtYmVyIG9mIGZpZWxkIHR5cGVzIGNhbiBiZSBzcGVjaWZpZWQgLSB0ZXh0IGlucHV0LCBjaGVja2JveCwgdGV4dCBhcmVhLCBzZWxlY3QgZGF0ZSwgdXBsb2FkIGZpbGUsIHNlbGVjdCBmaWxlLCBkcm9wZG93biAtIGFuZCBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBjYW4gYmUgc2V0IGZvciBlYWNoIHR5cGUsIGZvciBleGFtcGxlLCBpbnB1dCBmaWVsZCBzaXplLCBtYXggbGVuZ3RoLCBXWVNJV1lHIGVkaXRvciwgcG9zc2libGUgZHJvcCBkb3duIHZhbHVlcywgcG9zc2libGUgZmlsZSBleHRlbnNpb25zLCBkaXJlY3RvcnkgcGF0aHMgZm9yIGZpbGUgc2VsZWN0aW9ucywgZGF0ZSBmb3JtYXRzLCBldGMuLjwvcD4KCTxwPkFuIGltcG9ydGFudCBub3RlIG9mIHdhcm5pbmcgLSBUaGlzIGlzIG5vdCBhIGNvbnRlbnQgY29uc3RydWN0aW9uIGtpdCwgc3VjaCBhcyBpbiBEcnVwYWwuIEl0IGlzIG1lYW50IGZvciBzbWFsbCBsaXN0aW5ncywgbm90IHRvIHN0b3JlIHRob3VzYW5kcyBvZiByZWNvcmRzLiBUaGlzIGlzIGJlY2F1c2Ugb2YgdGhlIGRhdGFiYXNlIG1vZGVsIHVzZWQgKEVBVikuIEFsc28sIGVhY2ggYml0IG9mIGRhdGEgeW91IGVudGVyIGlzIHN0b3JlZCBhcyBURVhUIGRhdGEgdHlwZSwgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIGl0IGlzIHZhcmNoYXIsIGJvb2xlYW4sIHRpbWVzdGFtcCwgZXRjLiBUaGlzIGlzIGEgcmVzdHJpY3Rpb24gb2YgYSBzaG9ydCBkZXZlbG9wbWVudCB0aW1lIGZyYW1lLjwvcD4nOwokbGFuZ1snaGVscF91c2FnZSddID0gJzxoMz5Vc2FnZTwvaDM+CQkJCgk8cD5Zb3UgY2FuIGNvbmZpZ3VyZSB7JG1vZHVsZV9uYW1lfSBoZXJlOiBDb250ZW50ID4geyRtb2R1bGVfbmFtZX08L3A+Cgk8cD5QbGFjZSB0aGlzIHRhZyBpbiB5b3VyIHBhZ2U6IHt7JG1vZHVsZV9uYW1lfX08L3A+JzsKJGxhbmdbJ2hlbHBfdXNhZ2Vfb3B0aW9ucyddID0gJ0FmdGVyIGluc3RhbGxpbmcgdGhlIG1vZHVsZSB0aGUgbmV4dCB0aGluZyB0byBkbyBpcyBzZXQgdGhlIG9wdGlvbnMuICAJCQkJCgk8b2w+CQkJCQkKCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgaW4gdGhlIG1lbnUgY2hhbmdlIHRoZSAmcXVvdDtNb2R1bGUgRnJpZW5kbHkgTmFtZSZxdW90Oy48L2xpPgoJCTxsaT5UbyBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGl0ZW0gdGFiIGNoYW5nZSB0aGUgJnF1b3Q7SXRlbSBQbHVyYWwmcXVvdDsuPC9saT4KCTwvb2w+JzsKJGxhbmdbJ2hlbHBfdXNhZ2VfZmllbGRkZWZzJ10gPSAnTmV4dCAtIHNldCB0aGUgRmllbGQgRGVmaW5pdGlvbnMuIAoJPG9sPgoJCTxsaT5DaG9vc2UgZnJvbSAmcXVvdDtUZXh0IElucHV0JnF1b3Q7LCAmcXVvdDtDaGVja2JveCZxdW90OywgJnF1b3Q7VGV4dCBBcmVhJnF1b3Q7LCAmcXVvdDtTZWxlY3QgRGF0ZSZxdW90OywgJnF1b3Q7VXBsb2FkIEZpbGUmcXVvdDssICZxdW90O1NlbGVjdCBGaWxlJnF1b3Q7ICZhbXA7ICZxdW90O0Ryb3Bkb3duJnF1b3Q7LjwvbGk+CgkJPGxpPkZvciBlYWNoIGZpZWxkIGRlZmluaXRpb24sIHlvdSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBpbiB0aGUgJnF1b3Q7ZXh0cmEmcXVvdDsgZmllbGQuIFNlZSB0aGUgJnF1b3Q7RmllbGQgRGVmaW5pdGlvbnMmcXVvdDsgdGFiIGZvciBhIGxpc3QuPC9saT4KCQk8bGk+RWFjaCBpdGVtIGluIGVhY2ggbGlzdCBoYXMgdGhyZWUgZGVmYXVsdCBmaWVsZHMuIEFsbCBGaWVsZCBEZWZpbml0aW9ucyBzZXQgaGVyZSBhcmUgYWRkaXRpb25hbCB0byB0aGVtLjwvbGk+Cgk8L29sPic7CiRsYW5nWydoZWxwX3VzYWdlX2NhdGVnb3JpZXMnXSA9ICdUaGVyZSBpcyBhIHNpbmdsZSBjYXRlZ29yeSBieSBkZWZhdWx0IGNhbGxlZCAmcXVvdDtHZW5lcmFsJnF1b3Q7LiBUaGlzIGNhbiBiZSByZW5hbWVkIGFuZCBhZGRpdGlvbmFsIENhdGVnb3JpZXMgY2FuIGJlIGFkZGVkLic7CiRsYW5nWydoZWxwX3VzYWdlX2l0ZW1zJ10gPSAnTm93IHdlIG1vdmUgb24gdG8gdGhlIGl0ZW0gbGlzdCBpdHNlbGYuIEluIHRoaXMgZXhhbXBsZSBpdCBzYXlzICZxdW90O0FkZCBCb3gmcXVvdDssIHRoaXMgd2FzIHJlbmFtZWQgaW4gdGhlICZxdW90O09wdGlvbnMmcXVvdDsgdGFiLiAKCTxvbD4KCQk8bGk+VGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBkZWZhdWx0ICZxdW90O1RpdGxlJnF1b3Q7IGZpZWxkLjwvbGk+CgkJPGxpPlRoZSAmcXVvdDtDYXRlZ29yeSZxdW90OyBkcm9wZG93biBpcyBhbHNvIGEgZGVmYXVsdCBmaWVsZCwgYW5kIGlmIHVuY2hhbmdlZCwgd2lsbCBiZSBzZXQgdG8gJnF1b3Q7R2VuZXJhbCZxdW90Oy48L2xpPgoJCTxsaT5UaGUgdGhpcmQgZGVmYXVsdCBmaWVsZCBpcyB0aGUgY2hlY2tib3ggY2FsbGVkICZxdW90O0FjdGl2ZSZxdW90Oy4gVGhpcyBhbGxvd3MgeW91IHRvIHRvZ2dsZSBhIGxpc3QgZW50cnkgd2l0aG91dCBkZWxldGluZyBpdC48L2xpPgoJPC9vbD4nOwokbGFuZ1snaGVscF9wZXJtaXNzaW9ucyddID0gJzxoMz5QZXJtaXNzaW9uczwvaDM+Cgk8cD5Zb3UgY2FuIHNwZWNpZnkgdGhlIGZvbGxvd2luZyBwZXJtaXNzaW9ucyB1bmRlciBVc2VycyAmYW1wOyBHcm91cHMgPiBHcm91cCBQZXJtaXNzaW9uczwvcD4KCTx1bD4KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBJdGVtczwvbGk+CgkJPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgQ2F0ZWdvcmllczwvbGk+CgkJPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgT3B0aW9uczwvbGk+Cgk8L3VsPgoJPHA+VG8gYWxsb3cgbm9uLWFkbWluIHVzZXJzIHRvIHVwbG9hZCBmaWxlcywgcGxlYXNlIGdvIHRvIEV4dGVuc2lvbnMgPiBHQkZpbGVQaWNrZXIgYW5kIHRpY2sgdGhhdCBmaXJzdCBjaGVja2JveCAmcXVvdDtTaG93IGZpbGVtYW5hZ2VtZW50IG9wdGlvbnMmcXVvdDsuPC9wPic7CiRsYW5nWydoZWxwX2ZpZWxkZGVmcyddID0gJzxoMz5GaWVsZCBEZWZpbml0aW9uczwvaDM+Cgk8cD5UaGUgZmlyc3QgdGhpbmcgeW91IHNob3VsZCBjb25maWd1cmUgYXJlIHlvdXIgZmllbGQgZGVmaW5pdGlvbnMuIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gRmllbGQgZGVmaW5pdGlvbnMgY2FuIG9ubHkgYmUgZGVsZXRlZCB3aGVuIHRoZXkmIzAzOTtyZSBub3QgaW4gdXNlIGluIG9yZGVyIHRvIGF2b2lkIGRhdGEgbG9zcy48L3A+Cgk8cD5Gb3IgZWFjaCBmaWVsZCBkZWZpbml0aW9uLCB5b3UgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgaW4gdGhlICZxdW90O2V4dHJhJnF1b3Q7IGZpZWxkLjwvcD4KCTx1bD4KCQk8bGk+CgkJCTxwPkluc3RydWN0aW9uOiAKCQkJPGNvZGU+c2l6ZVsyMF08L2NvZGU+PGJyIC8+CgkJCVBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPGJyIC8+CgkJCUFwcGxpY2FibGUgdG86IFRleHQgSW5wdXQsIFNlbGVjdCBEYXRlPC9wPiAgICAKCQk8L2xpPgoJCTxsaT4KCQkJPHA+SW5zdHJ1Y3Rpb246IAoJCQk8Y29kZT5tYXhfbGVuZ3RoWzIwXQoJCQk8L2NvZGU+PGJyIC8+CgkJCVBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPGJyIC8+CgkJCUFwcGxpY2FibGUgdG86IFRleHQgSW5wdXQsIFRleHQgQXJlYSwgU2VsZWN0IERhdGU8L3A+CgkJPC9saT4KCQk8bGk+CgkJCTxwPkluc3RydWN0aW9uOiAKCQkJPGNvZGU+d3lzaXd5Z1sxXQoJCQk8L2NvZGU+PGJyIC8+CgkJCVBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgoJCQlBcHBsaWNhYmxlIHRvOiBUZXh0IEFyZWE8L3A+CgkJPC9saT4KCQk8bGk+CgkJCTxwPkluc3RydWN0aW9uOiAKCQkJPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXQoJCQk8L2NvZGU+PGJyIC8+CgkJCVBvc3NpYmxlIHZhbHVlOiBrZXk9dmFsdWUsLi4uPGJyIC8+CgkJCUFwcGxpY2FibGUgdG86IERyb3Bkb3duPC9wPgoJCTwvbGk+CiAgICAgIDxsaT4KICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPmFsbG93W3BkZixnaWYscG5nLGpwZWcsanBnXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogZXh0ZW5zaW9uLC4uLiAoa2VlcCBsb3dlcmNhc2UpPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+ICAgIAogICAgICA8bGk+ICAgICAgICAKICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPmRpclsvcGF0aC90by9kaXJdCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEaXJlY3RvcnkgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gCiAgICAgICAgPGNvZGU+JGNvbmZpZ1smIzAzOTt1cGxvYWRzX3VybCYjMDM5O10KICAgICAgICA8L2NvZGU+LiBObyBzbGFzaCBhdCB0aGUgZW5kLiA8Y29kZT57JGl0ZW1faWR9IGFuZCB7JGl0ZW1fYWxpYXN9PC9jb2RlPiB3aWxsIGJlIHJlcGxhY2VkLjxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlLCBTZWxlY3QgRmlsZQogICAgICA8L3A+ICAgIAogICAgICA8L2xpPiAgICAKICAgICAgPGxpPiAgICAgICAgCiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5leGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX10KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IHByZWZpeCwuLi48YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUKICAgICAgPC9wPiAgICAKICAgICAgPC9saT4gICAgCiAgICAgIDxsaT4gICAgICAgIAogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+ZGF0ZWZvcm1hdFtkZC9tbS95eV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IERhdGUgZm9ybWF0IHVzZWQgYnkgdGhlIGpRdWVyeSBkYXRlcGlja2VyLiBUcnkgZ29vZ2xpbmcgJiMwMzk7anF1ZXJ5IGZvcm1hdERhdGUmIzAzOTs8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBTZWxlY3QgRGF0ZQogICAgICA8L3A+ICAgIAogICAgICA8L2xpPgoJICA8bGk+ICAgICAgICAKICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPmZpbGVicm93c2VyWzFdCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+CgkJPGI+Tm90ZTo8L2I+IFNldHMgR0JGaWxlUGlja2VyIHRvIGZpbGVicm93c2VyIG1vZGUgaW5zdGVhZCBvZiBkZWZhdWx0IGRyb3Bkb3duIG1vZGUKICAgICAgPC9wPiAgICAKICAgICAgPC9saT4KICAgICAgPGxpPgogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+aW1hZ2VbMV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGU8YnIgLz4KICAgICAgICA8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gc2hvdyB0aHVtYm5haWwgaW1hZ2UgaW5zdGVhZCBvZiBpbnB1dCBmaWVsZC4KICAgICAgPC9wPiAgICAKICAgICAgPC9saT4KICAgICAgPGxpPgogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+Y3JlYXRlX2RpcnNbMV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGU8YnIgLz4KICAgICAgICA8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgY3JlYXRpbmcgb2YgbmV3IGRpcmVjb3RpcmVzLgogICAgICA8L3A+ICAgIAogICAgICA8L2xpPiAKICAgICAgPGxpPgogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+ZGVsZXRlWzFdCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+CiAgICAgICAgPGI+Tm90ZTo8L2I+IFNldHMgR0JGaWxlUGlja2VyIHRvIGFsbG93IGRlbGV0aW5nIGZpbGVzLgogICAgICA8L3A+ICAgIAogICAgICA8L2xpPgogICAgICA8bGk+CiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5zaG93X3N1YmRpcnNbMV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGU8YnIgLz4KICAgICAgICA8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgdmlld2luZyBvZiBzdWJkaXJlY3Rvcmllcy4KICAgICAgPC9wPiAgICAKICAgICAgPC9saT4gICAgICAgICAgICAgICAgICAgICAgIAogICAgPC91bD4KICAgIDxwPllvdSBjYW4gc3BlY2lmeSBtdWx0aXBsZSBpbnN0cnVjdGlvbnMgc2VwYXJhdGVkIGJ5IGEgc2VtaWNvbG9uICgKICAgICAgPGNvZGU+OwogICAgICA8L2NvZGU+KSwgZm9yIGV4YW1wbGU6CiAgICA8L3A+CiAgICA8cD4KICAgICAgPGNvZGU+YWxsb3dbcGRmXTtkaXJbL2RvY3MvcGRmXTwvY29kZT4KICAgIDwvcD4KICAgIAoJPGgzPkZpZWxkIERlZmluaXRpb25zIGJ5IHR5cGU8L2gzPgogICAgICAgIAogICAgPHVsPgogICAgICAgIDxsaT5UZXh0IElucHV0OiA8Y29kZT5zaXplWzIwXTttYXhfbGVuZ3RoWzIwXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5DaGVja2JveDogPGNvZGU+LTwvY29kZT48L2xpPgogICAgICAgIDxsaT5UZXh0IEFyZWE6IDxjb2RlPm1heF9sZW5ndGhbMjBdO3d5c2l3eWdbMV08L2NvZGU+PC9saT4KICAgICAgICA8bGk+U2VsZWN0IERhdGU6IDxjb2RlPnNpemVbMjBdO21heF9sZW5ndGhbMjBdO2RhdGVmb3JtYXRbZGQvbW0veXldPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPlVwbG9hZCBGaWxlOiA8Y29kZT5hbGxvd1twZGYsZ2lmLGpwZWcsanBnXTtkaXJbL3BhdGgvdG8vZGlyXTtleGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX107ZmlsZWJyb3dzZXJbMV07aW1hZ2VbMV07PC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPlNlbGVjdCBGaWxlOiA8Y29kZT5hbGxvd1twZGYsZ2lmLGpwZWcsanBnXTtkaXJbL3BhdGgvdG8vZGlyXTtleGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX108L2NvZGU+PC9saT4KICAgICAgICA8bGk+RHJvcGRvd246IDxjb2RlPm9wdGlvbnNbYXBwbGU9QXBwbGUsYmFuYW5hPUJhbmFuYV08L2NvZGU+PC9saT4KICAgICAgICA8bGk+Q29udGVudCBQYWdlczogPGNvZGU+LTwvY29kZT48L2xpPgogICAgICAgIDxsaT5GaWVsZHNldCBTdGFydDogPGNvZGU+LTwvY29kZT48L2xpPgogICAgICAgIDxsaT5GaWVsZHNldCBFbmQ6IDxjb2RlPi08L2NvZGU+PC9saT4KICAgIDwvdWw+JzsKJGxhbmdbJ2hlbHBfY2F0ZWdvcmllcyddID0gJzxoMz5DYXRlZ29yaWVzPC9oMz4KCTxwPk11bHRpIGxldmVsIGNhdGVnb3JpZXMgYXJlIHN1cHBvcnRlZC48L3A+JzsKJGxhbmdbJ2hlbHBfdGVtcGxhdGVzJ10gPSAnPGgzPlRlbXBsYXRlczwvaDM+Cgk8cD5JZiB5b3UgYXJlIG5vdCBzdXJlIHdoYXQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGUgdG8gdXNlIGluIHlvdXIgdGVtcGxhdGVzLCB0cnkgdGhlIGRlYnVnIHRlbXBsYXRlOjwvcD4KCTxwPnt7JG1vZHVsZV9uYW1lfSBzdW1tYXJ5dGVtcGxhdGU9JiMwMzk7ZGVidWcmIzAzOTt9PC9wPgoJPHA+WW91IGNhbiBhY2Nlc3MgYW55IGZpZWxkIGRpcmVjdGx5IHdoZW4gbG9vcGluZyB0aHJvdWdoIGl0ZW1zIHVzaW5nIGl0cyBhbGlhcywgZm9yIGV4YW1wbGUsIHRvIGlmIHlvdSBjcmVhdGVkIGEgZmllbGQgZGVmaW5pdGlvbiB3aXRoIGFuIGFsaWFzICZxdW90O3Bvc2l0aW9uJnF1b3Q7LCB5b3UgY2FuIGRvOjwvcD4nOwokbGFuZ1snaGVscF90ZW1wbGF0ZXNfY2F0ZWdvcmllcyddID0gJzxwPkJlc2lkZXMsIHlvdSBjYW4gbG9vcCB0aHJvdWdoIGNhdGVnb3JpZXMgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGUganVzdCBhcyB3ZWxsIGFzIGxvb3BpbmcgdGhyb3VnaCBpdGVtczo8L3A+JzsKJGxhbmdbJ2hlbHBfZHVwbGljYXRpbmcnXSA9ICc8aDM+RHVwbGljYXRpbmcgdGhpcyBtb2R1bGU8L2gzPgoJPHA+VGhpcyBtb2R1bGUgd2FzIG1hZGUgdG8gYmUgZWFzaWx5IGR1cGxpY2F0ZWQuIFRvIGR1cGxpY2F0ZSB0aGlzIG1vZHVsZSwgZm9sbG93IHRoZXNlIHN0ZXBzIEJFRk9SRSBpbnN0YWxsaW5nIHRoZSBtb2R1bGU6PC9wPgoJPG9sPiAgICAKCQk8bGk+UmVuYW1lIHRoZSBkaXJlY3RvcnkgJnF1b3Q7PGI+TGlzdEl0PC9iPiZxdW90OzwvbGk+ICAgIAoJCTxsaT5SZW5hbWUgJnF1b3Q7Y2xhc3MgPGI+TGlzdEl0PC9iPiBleHRlbmRzIENNU01vZHVsZSZxdW90OyBpbnNpZGUgTGlzdEl0Lm1vZHVsZS5waHA8L2xpPiAgICAKCQk8bGk+UmVuYW1lICZxdW90OzxiPkxpc3RJdDwvYj4ubW9kdWxlLnBocCZxdW90OzwvbGk+Cgk8L29sPgoJPHA+TWFrZSBzdXJlIHlvdSBmb2xsb3cgdGhlIENNU01TIG1vZHVsZSBuYW1pbmcgY29udmVudGlvbnMsIGEteiB3aXRoIG5vIHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgb3Igc3BhY2VzIHRvIGJlIHNhZmUgOik8L3A+Cgk8cD5Zb3UgY2FuIGFsd2F5cyBjaGFuZ2UgdGhlIG1vZHVsZSBmcmllbmRseSBuYW1lIG9uY2UgaW5zdGFsbGVkIHVuZGVyICZxdW90O09wdGlvbnMmcXVvdDsgKENvbnRlbnQgPiB7JG1vZHVsZV9uYW1lfSkuIFRvIGNoYW5nZSB0aGUgaWNvbiwgcmVwbGFjZSAvbW9kdWxlcy97JG1vZHVsZV9uYW1lfS9pbWFnZXMvaWNvbi5naWYuPC9wPic7CiRsYW5nWydoZWxwX2Fib3V0J10gPSAnPGgzPkFib3V0PC9oMz4KCTxwPk9yaWdpbiBvZiB0aGlzIG1vZHVsZSBjb21lcyBmcm9tIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0IiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0IE1vZHVsZTwvYT4gZGV2ZWxvcGVkIGJ5IEJlbiBNYWxlbi48YnIgLz5BcyB0aGVyZSB3ZXJlIG5vIHBsYW5zIG9uIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgb2YgdGhlIG1vZHVsZSBzb21lIHBlb3BsZSBkZWNpZGVkIHRvIGZvcmsgdGhlIG1vZHVsZSBhbmQgY29udGludWUgd2l0aCBkZXZlbG9wbWVudC48YnIgLz4KCUlmIHlvdSBmaW5kIGFueSBidWdzIHBsZWFzZSBmZWVsIGZyZWUgdG8gc3VibWl0IGEgYnVnIHJlcG9ydCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2J1Zy9saXN0LzEwMTUiIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPiBvciBmb3IgYW55IGdvb2QgaWRlYXMgY29uc2lkZXIgc3VibWl0aW5nIGEgZmVhdHVyZSByZXF1ZXN0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvZmVhdHVyZV9yZXF1ZXN0L2xpc3QvMTAxNSIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+LiA8YnIgLz4KCVBsZWFzZSBrZWVwIGluIG1pbmQgdGhhdCBkZXZlbG9wZXJzIGRvIGhhdmUgdGhlaXIgZGFpbHkgam9icyB3aGljaCBtZWFucyB0aGF0IGZlYXR1cmUgcmVxdWVzdHMgYXJlIGNvbnNpZGVyZWQgYW5kIGRvbmUgYXMgdGltZSBhbGxvd3MuIElmIHlvdSBuZWVkIGEgZmVhdHVyZSByZWFsbHkgYmFkbHkgY29uc2lkZXIgY29udGFjdGluZyBvbmUgb2YgdGhlIGRldmVsb3BlcnMgZm9yIGEgc3BvbnNvcmVkIGRldmVsb3BtZW50LgoJPC9wPgoJPGgzPlRlYW08L2gzPgoJPHVsPgoJCTxsaT5Kb25hdGhhbiBTY2htaWQgKEZvYWx5KikgaGlAam9uYXRoYW5zY2htaWQuZGUgPGJyIC8+d3d3LmpvbmF0aGFuc2NobWlkLmRlPC9saT4KCQk8bGk+R29yYW4gSWxpYyAodW5pcXUzKSBnLmlsaWNAaS1hcnRzLmV1IDxiciAvPnd3dy5pY2gtbWFjaC1kYXMuYXQ8L2xpPgoJCTxsaT5Sb2JlcnQgQ2FtcGJlbGwgKGNhbGd1eTEwMDApIGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcgIDxiciAvPnd3dy5jYWxndXkxMDAwLmNvbTwvbGk+CgkJPGxpPkx1a2FzIEJsYXR0ZXIgKG5vY2tlbmZlbGwpIG5vY2tlbmZlbGxAZ21haWwuY29tIDxiciAvPnd3dy5ibGF0dGVydGVjaC5jaDwvbGk+CgkJPGxpPkFybm91ZCAoYXJub3VkKSBhcm5vdWRAdXBzZXJ2aWNlLm5sIDxiciAvPnd3dy51cHNlcnZpY2Uubmw8L2xpPgoJCTxsaT5XYXluZSBPTmVpbCAod2lzaGJvbmUpIHdheW5lQHRlYW13aXNoYm9uZS5jb20gPGJyIC8+d3d3LnRlYW13aXNoYm9uZS5jb208L2xpPgoJCTxsaT5UYXBpbyBMJm91bWw7eXR5eSAoU3Rpa2tpKSB0YXBzYUBibGFja21pbGsuZmk8L2xpPgoJPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9hY3Rpb24nXSA9ICcJT3ZlcnJpZGUgdGhlIGRlZmF1bHQgYWN0aW9uLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOgoJPHVsPgoJCTxsaT4mcXVvdDtkZWZhdWx0JnF1b3Q7IC0gZGlzcGxheXMgdGhlIHN1bW1hcnkgdmlldy48L2xpPgoJCTxsaT4mcXVvdDtkZXRhaWwmcXVvdDsgLSBkaXNwbGF5cyBhIHNwZWNpZmllZCBlbnRyeSBpbiBkZXRhaWwgbW9kZS48L2xpPgoJCTxsaT4mcXVvdDtzZWFyY2gmcXVvdDsgLSBkaXNwbGF5cyB0aGUgc2VhcmNoIGZvcm0uPC9saT4KCQk8bGk+JnF1b3Q7ZmlsdGVyJnF1b3Q7IC0gZGlzcGxheXMgdGhlIGZpbHRlciBmb3JtLiBQYXJhbWV0ZXIgPGVtPmZpbHRlcjwvZW0+IGlzIHJlcXVpcmVkLjwvbGk+Cgk8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3Nob3dhbGwnXSA9ICdTaG93IGFsbCBpdGVtcywgaXJyZXNwZWN0aXZlIG9mIGVuZCBkYXRlLic7CiRsYW5nWydoZWxwX3BhcmFtX2NhdGVnb3J5J10gPSAnU3BlY2lmeSBhbiBhbGlhcyBvciBjb21tYSBzZXBhcmF0ZWQgYWxpYXNlcyBvZiB0aGUgY2F0ZWdvcnkvY2F0ZWdvcmllcyBkaXNwbGF5ZWQgaXRlbXMgbXVzdCBiZSBhIG1lbWJlciBvZi4nOwokbGFuZ1snaGVscF9wYXJhbV9leGNsdWRlX2NhdGVnb3J5J10gPSAnU3BlY2lmeSBhbiBhbGlhcyBvciBjb21tYSBzZXBhcmF0ZWQgYWxpYXNlcyBvZiB0aGUgY2F0ZWdvcnkvY2F0ZWdvcmllcyBkaXNwbGF5ZWQgaXRlbXMgbXVzbiYjMDM5O3QgYmUgYSBtZW1iZXIgb2YuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3ViY2F0ZWdvcnknXSA9ICdJZiBwYXJhbWV0ZXIgJiMwMzk7Y2F0ZWdvcnkmIzAzOTsgaXMgc3BlY2lmaWVkLCB0aGlzIHBhcmFtZXRlciBzZXQgdG8gPGVtPnRydWU8L2VtPiB3aWxsIG1ha2UgYWxsb3dhbmNlIGZvciBzdWJjYXRlZ29yaWVzJiMwMzk7IGl0ZW1zLiBJdCBpcyBzZXQgdG8gZmFsc2UgYnkgZGVmYXVsdC4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ1RoZSBkZXRhaWwgdGVtcGxhdGUgeW91IHdpc2ggdG8gdXNlLic7CiRsYW5nWydoZWxwX3BhcmFtX3N1bW1hcnl0ZW1wbGF0ZSddID0gJ1RoZSBzdW1tYXJ5IHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2h0ZW1wbGF0ZSddID0gJ1RoZSBzZWFyY2ggdGVtcGxhdGUgeW91IHdpc2ggdG8gdXNlLic7CiRsYW5nWydoZWxwX3BhcmFtX29yZGVyYnknXSA9ICdZb3UgY2FuIG9yZGVyIGJ5IGFueSBvZiB0aGUgZm9sbG93aW5nIGNvbHVtbnM6IGl0ZW1faWQsIGl0ZW1fdGl0bGUsIGl0ZW1fcG9zaXRpb24sIGNhdGVnb3J5X2lkLCBjYXRlZ29yeV9uYW1lLCBjYXRlZ29yeV9wb3NpdGlvbiwgY2F0ZWdvcnlfaGllcmFyY2h5LjxiciAvPgoJPHVsPgoJCTxsaT5Gb3IgZXhhbXBsZTo8YnIgLz4KCQlvcmRlcmJ5PSYjMDM5O2NhdGVnb3J5X25hbWUsIGl0ZW1fdGl0bGUmIzAzOTs8L2xpPgoJCTxsaT5Zb3UgY2FuIGFsc28gc3BlY2lmeSBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBmb3IgYW55IGNvbHVtbiwgZm9yIGV4YW1wbGU6PGJyIC8+CgkJb3JkZXJieT0mIzAzOTtjYXRlZ29yeV9uYW1lfGFzYywgaXRlbV90aXRsZXxkZXNjJiMwMzk7PC9saT4KCTwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fcGFnZWxpbWl0J10gPSAnTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGlzcGxheSAocGVyIHBhZ2UpLiAgSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHN1cHBsaWVkIGFsbCBtYXRjaGluZyBpdGVtcyB3aWxsIGJlIGRpc3BsYXllZC4gIElmIGl0IGlzLCBhbmQgdGhlcmUgYXJlIG1vcmUgaXRlbXMgYXZhaWxhYmxlIHRoYW4gc3BlY2lmaWVkIGluIHRoZSBwYXJhbWV0ZXIsIHRleHQgYW5kIGxpbmtzIHdpbGwgYmUgc3VwcGxpZWQgdG8gYWxsb3cgc2Nyb2xsaW5nIHRocm91Z2ggdGhlIHJlc3VsdHMnOwokbGFuZ1snaGVscF9wYXJhbV9zdGFydCddID0gJ1N0YXJ0IGF0IHRoZSBudGggaXRlbSAtLSBsZWF2aW5nIGVtcHR5IHdpbGwgc3RhcnQgYXQgdGhlIGZpcnN0IGl0ZW0uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fbnVtYmVyJ10gPSAnTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGlzcGxheSAocGVyIHBhZ2UpIC0tIGxlYXZpbmcgZW1wdHkgd2lsbCBzaG93IGFsbCBpdGVtcy4gVGhpcyBpcyBhIHN5bm9ueW0gZm9yIHRoZSBwYWdlbGltaXQgcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdQYWdlIHRvIGRpc3BsYXkgaXRlbSBkZXRhaWxzIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBkZXRhaWxzIHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gc3VtbWFyeS4nOwokbGFuZ1snaGVscF9wYXJhbV9pdGVtJ10gPSAnVGhpcyBwYXJhbWV0ZXIgaXMgb25seSBhcHBsaWNhYmxlIHRvIHRoZSBkZXRhaWwgdmlldy4gSXQgYWxsb3dzIHNwZWNpZnlpbmcgd2hpY2ggaXRlbSB0byBkaXNwbGF5IGluIGRldGFpbCBtb2RlLiBNdXN0IGJlIGFuIGl0ZW0gYWxpYXMuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoJ10gPSAnU2VhcmNoIGFsbCBmaWVsZHMuIFVzZXMgZnVsbHRleHQgc2VhcmNoLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaF8nXSA9ICdTZWFyY2ggYSBwYXJ0aWN1bGFyIGZpZWxkLiBZb3UgY2FuIHVzZSAmIzAzOTt0aXRsZSYjMDM5OyBvciB0aGUgYWxpYXMgb2YgYSBmaWVsZCBkZWZpbml0aW9uLCBlLmcuIHNlYXJjaF90aXRsZS4gV2lsbCBiZSBpZ25vcmVkIHdoZW4gcGFyYW1ldGVyICYjMDM5O3NlYXJjaCYjMDM5OyBpcyBzZXQsIGJ1dCBtdWx0aXBsZSBzZWFyY2hfKiBwYXJhbXMgY2FuIGJlIGNvbWJpbmVkLic7CiRsYW5nWydoZWxwX3BhcmFtX2ZpbHRlciddID0gJ1JlcXVpcmVkIGZvciBhY3Rpb24gPGVtPmZpbHRlcjwvZW0+LiBTcGVjaWZ5IHRoZSBmaWVsZHMgd2hvc2UgdmFsdWVzIHNob3VsZCBiZSBvZmZlcmVkIGFzIGZpbHRlciBvcHRpb25zIGJ5IGxpc3RpbmcgdGhlIGZpZWxkJiMwMzk7cyBhbGlhc2VzIGNvbW1hIHNlcGFyYXRlZC4nOwokbGFuZ1snaGVscF9wYXJhbV9yZXR1cm5wYWdlJ10gPSAnVXNlZCBmb3IgZmlsdGVyIG9yIHNlYXJjaCBtb2RlIG9ubHkuIFBhZ2UgdG8gZGlzcGxheSBzZWFyY2ggcmVzdWx0cyByZXNwZWN0aXZseSBmaWx0ZXJlZCBpdGVtcyBpbi4gTXVzdCBiZSBhIHBhZ2UgYWxpYXMuIFVzZWQgdG8gYWxsb3cgc3VtbWFyeSB0byBiZSBkaXNwbGF5ZWQgaW4gYSBkaWZmZXJlbnQgcGFnZSB0aGFuIGZpbHRlciAvIHNlYXJjaCBtYXNrLic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjU0MzYxOTA3LjEzNDM4ODI4MjcuMTM0Mzg4MjgyNy4xMzQzODgyODI3LjEnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzNDM4ODI4MjcuMS4xLnV0bWNzcj1nb29nbGV8dXRtY2NuPShvcmdhbmljKXx1dG1jbWQ9b3JnYW5pY3x1dG1jdHI9KG5vdCBwcm92aWRlZCknOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEzNDM4ODI4MjcnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2l0ZW0nXSA9ICdBcnRpY2xlJzsKJGxhbmdbJ2l0ZW1zJ10gPSAnQXJ0aWNsZXMnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcCc7CiRsYW5nWydmaWVsZGRlZnMnXSA9ICdEJmVhY3V0ZTtmaW5pdGlvbiBkZSBjaGFtcHMnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdHYWJhcml0JzsKJGxhbmdbJ3RlbXBsYXRlcyddID0gJ0dhYmFyaXRzJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAnQ2F0JmVhY3V0ZTtnb3JpZXMnOwokbGFuZ1snb3B0aW9uJ10gPSAnT3B0aW9uJzsKJGxhbmdbJ29wdGlvbnMnXSA9ICdPcHRpb25zJzsKJGxhbmdbJ2JhY2snXSA9ICdQYWdlIHByJmVhY3V0ZTtjJmVhY3V0ZTtkZW50ZSc7CiRsYW5nWydpdGVtX3RpdGxlJ10gPSAnVGl0cmUnOwokbGFuZ1sncHJvbXB0X2l0ZW1fdGl0bGUnXSA9ICdUaXJlIGRlIGwmIzAzOTthcnRpY2xlJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGlmJzsKJGxhbmdbJ3RpbWVfY29udHJvbCddID0gJ1V0aWxpc2VyIGxhIGRhdGUgZCYjMDM5O2V4cGlyYXRpb24nOwokbGFuZ1snc3RhcnRfdGltZSddID0gJ0RhdGUgZGUgZCZlYWN1dGU7YnV0JzsKJGxhbmdbJ2VuZF90aW1lJ10gPSAnRGF0ZSBkZSBmaW4nOwokbGFuZ1snaXRlbV90aXRsZV9lbXB0eSddID0gJ0xlIHRpdHJlIGRlIGwmIzAzOTthcnRpY2xlIGVzdCB2aWRlJzsKJGxhbmdbJ3JlcXVpcmVkX2ZpZWxkX2VtcHR5J10gPSAnQ2hhbXAgb2JsaWdhdG9pcmUgdmlkZSc7CiRsYW5nWyd0b29fbG9uZyddID0gJ0xhIHZhbGV1ciBkdSBjaGFtcCBkJmVhY3V0ZTtwYXNzZSBsYSBsb25ndWV1ciBtYXhpbWFsZSc7CiRsYW5nWydhcHByb3ZlJ10gPSAnUGFzc2VyIGwmIzAzOTsmZWFjdXRlO3RhdCAmYWdyYXZlOyAmIzAzOTtBY3RpZiYjMDM5Oyc7CiRsYW5nWydyZXZlcnQnXSA9ICdQYXNzZXIgbCYjMDM5OyZlYWN1dGU7dGF0ICZhZ3JhdmU7ICYjMDM5O0luYWN0aWYmIzAzOTsnOwokbGFuZ1snc3VibWl0X29yZGVyJ10gPSAnU2F1dmVnYXJkZXIgbCYjMDM5O29yZHJlJzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ1N1cHByaW1lciBsYSBzJmVhY3V0ZTtsZWN0aW9uICVzJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlbXVsdGlwbGUnXSA9ICdFdGVzLXZvdXMgcyZ1Y2lyYztyIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGwmIzAzOTtlbnNlbWJsZSBkZSBjZXMgJXM/JzsKJGxhbmdbJ3NlbGVjdF9hbGwnXSA9ICdUb3V0IHNlbGVjdGlvbm5lcic7CiRsYW5nWydlcnJvcl9zdGFydGdyZWF0ZXJlbmQnXSA9ICdMYSBkYXRlIGRlIGQmZWFjdXRlO3BhcnQgZXN0IHN1cCZlYWN1dGU7cmlldXJlICZhZ3JhdmU7IGxhIGRhdGUgZGUgZmluJzsKJGxhbmdbJ2l0ZW1fYWxpYXNfZXhpc3RzJ10gPSAnTCYjMDM5O2FsaWFzIGRlIGwmIzAzOTthcnRpY2xlIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsuIElsIGRvaXQgJmVjaXJjO3RyZSB1bmlxdWUuJzsKJGxhbmdbJ3JldHVybl91cmwnXSA9ICdSZXRvdXInOwokbGFuZ1sncGF0aGNvbnRhaW5zdmFycyddID0gJ0NlIGNoYW1wIHBldXQgJmVjaXJjO3RyZSAmZWFjdXRlO2RpdCZlYWN1dGU7IGFwciZlZ3JhdmU7cyBsYSBwcmVtaSZlZ3JhdmU7cmUgc2F1dmVnYXJkZSBkZSBjZSAlcyc7CiRsYW5nWydlZGl0ZmllbGRkZWYnXSA9ICdNb2RpZmllciBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkdSBjaGFtcCc7CiRsYW5nWydmaWVsZGRlZl9uYW1lJ10gPSAnTm9tJzsKJGxhbmdbJ2ZpZWxkZGVmX2hlbHAnXSA9ICdDb25zZWlsJzsKJGxhbmdbJ2ZpZWxkZGVmX3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ2ZpZWxkZGVmX21heF9sZW5ndGgnXSA9ICdMb25ndWV1ciBtYXhpbXVtJzsKJGxhbmdbJ2ZpZWxkZGVmX3JlcXVpcmVkJ10gPSAnT2JsaWdhdG9pcmUnOwokbGFuZ1snZXh0cmEnXSA9ICdFeHRyYSc7CiRsYW5nWyd0ZXh0Ym94J10gPSAnQ2hhbXAgdGV4dGUnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDYXNlICZhZ3JhdmU7IGNvY2hlcic7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1pvbmUgZGUgdGV4dGUnOwokbGFuZ1snc2VsZWN0X2RhdGUnXSA9ICdTZWxlY3Rpb25uZXIgdW5lIGRhdGUnOwokbGFuZ1sndXBsb2FkX2ZpbGUnXSA9ICdEJmVhY3V0ZTtwb3NlciB1biBmaWNoaWVyJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTGlzdGUgZCZlYWN1dGU7cm91bGFudGUnOwokbGFuZ1snc2VsZWN0X2ZpbGUnXSA9ICdTZWxlY3Rpb25uZXIgdW4gZmljaGllcic7CiRsYW5nWydmaWVsZHNldF9zdGFydCddID0gJ0QmZWFjdXRlO2J1dCBkdSBGaWVsZHNldCc7CiRsYW5nWydmaWVsZHNldF9lbmQnXSA9ICdGaW4gZHUgRmllbGRzZXQnOwokbGFuZ1snZmllbGRkZWZfbmFtZV9lbXB0eSddID0gJ0xlIG5vbSBkZSBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkdSBjaGFtcCBlc3QgdmlkZSc7CiRsYW5nWydmaWVsZGRlZl9uYW1lX2V4aXN0cyddID0gJ0xlIG5vbSBkZSBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkdSBjaGFtcCBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7JzsKJGxhbmdbJ2ZpZWxkZGVmX2FsaWFzX2V4aXN0cyddID0gJ0wmIzAzOTthbGlhcyBkZSBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkdSBjaGFtcCBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7LiBsJiMwMzk7YWxpYXMgZG9pdCAmZWNpcmM7dHJlIHVuaXF1ZS4nOwokbGFuZ1snaW52YWxpZCddID0gJ0xhIHZhbGV1ciBkdSBjaGFtcCBlc3QgaW52YWxpZGUnOwokbGFuZ1snc3RhdHVzX3JlcXVpcmVkJ10gPSAnUGFzc2VyIGxlIHN0YXR1dCAmYWdyYXZlOyAmIzAzOTtvYmxpZ2F0b2lyZSYjMDM5Oyc7CiRsYW5nWydzdGF0dXNfb3B0aW9uYWwnXSA9ICdQYXNzZXIgbGUgc3RhdHV0ICZhZ3JhdmU7ICYjMDM5O29wdGlvbm5lbCYjMDM5Oyc7CiRsYW5nWydyZW9yZGVyX2NhdGVnb3JpZXMnXSA9ICdSJmVhY3V0ZTtvcmRvbm5lciBsZXMgY2F0JmVhY3V0ZTtnb3JpZXMnOwokbGFuZ1snZWRpdF9jYXRlZ29yeSddID0gJ01vZGlmaWVyIGxhIGNhdCZlYWN1dGU7Z29yaWUnOwokbGFuZ1snY2F0ZWdvcnlfbmFtZSddID0gJ05vbSBkZSBjYXQmZWFjdXRlO2dvcmllJzsKJGxhbmdbJ2NhdGVnb3J5X2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24gZGUgY2F0JmVhY3V0ZTtnb3JpZSc7CiRsYW5nWydjYXRlZ29yeV9uYW1lX2VtcHR5J10gPSAnTGUgbm9tIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWUgZXN0IHZpZGUnOwokbGFuZ1snY2F0ZWdvcnlfYWxpYXNfZXhpc3RzJ10gPSAnTCYjMDM5O2FsaWFzIGRlIGxhIGNhdCZlYWN1dGU7Z29yaWUgZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOy4gbCYjMDM5O2FsaWFzIGRvaXQgJmVjaXJjO3RyZSB1bmlxdWUuJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZSddID0gJ0dhYmFyaXQgZGUgc29tbWFpcmUnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJ0dhYmFyaXRzIGRlIHNvbW1haXJlJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSBkZXRhaWwnOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnR2FiYXJpdHMgZGUgZGV0YWlsJzsKJGxhbmdbJ3NlYXJjaHRlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSByZWNoZXJjaGUnOwokbGFuZ1snc2VhcmNodGVtcGxhdGVzJ10gPSAnR2FiYXJpdHMgZGUgcmVjaGVyY2hlJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSBmaWx0cmUnOwokbGFuZ1snZmlsdGVydGVtcGxhdGVzJ10gPSAnR2FiYXJpdHMgZGUgZmlsdHJlJzsKJGxhbmdbJ2VkaXR0ZW1wbGF0ZSddID0gJ01vZGlmaWVyIGxlIGdhYmFyaXQnOwokbGFuZ1sndGVtcGxhdGVfbmFtZSddID0gJ05vbSBkdSBnYWJhcml0JzsKJGxhbmdbJ3RlbXBsYXRlX25hbWVfZW1wdHknXSA9ICdMZSBub20gZHUgZ2FiYXJpdCBlc3QgdmlkZSc7CiRsYW5nWydtb2R1bGVfb3B0aW9ucyddID0gJ09wdGlvbnMgZHUgbW9kdWxlJzsKJGxhbmdbJ3VybF9vcHRpb25zJ10gPSAnT3B0aW9ucyBkJiMwMzk7VVJMJzsKJGxhbmdbJ3Byb21wdF9mcmllbmRseW5hbWUnXSA9ICdOb20gY291cmFudCBkdSBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2l0ZW1fc2luZ3VsYXInXSA9ICdBcnRpY2xlIGF1IHNpbmd1bGllcic7CiRsYW5nWydwcm9tcHRfaXRlbV9wbHVyYWwnXSA9ICdBcnRpY2xlIGF1IHBsdXJpZWwnOwokbGFuZ1sncHJvbXB0X3VybF9wcmVmaXgnXSA9ICdQcmVmaXggZCYjMDM5O1VSTCc7CiRsYW5nWydwcm9tcHRfZGlzcGxheV9pbmxpbmUnXSA9ICdBZmZpY2hlciBsZXMgZCZlYWN1dGU7dGFpbCAmIzAzOTtpbmxpbmUmIzAzOTsnOwokbGFuZ1sncHJvbXB0X2l0ZW1fY29scyddID0gJ1Nob3cgdGhpcyBmaWVsZHMgaW4gaXRlbSBvdmVydmlldyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2NoYW5nZXNzYXZlZCddID0gJ1lvdXIgY2hhbmdlcyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHNhdmVkLic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZT8nOwokbGFuZ1sndXAnXSA9ICdVcCc7CiRsYW5nWydkb3duJ10gPSAnRG93bic7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUnOwokbGFuZ1snbm9zdWNoaWQnXSA9ICdObyBzdWNoIElEJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdUaGUgaXRlbShzKSBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQuJzsKJGxhbmdbJ2FkZCddID0gJ0FkZCAlcyc7CiRsYW5nWydhbGlhcyddID0gJ0FsaWFzJzsKJGxhbmdbJ2FsaWFzX2ludmFsaWQnXSA9ICdBbGlhcyBpcyBpbnZhbGlkLiBJdCBtdXN0IGJlIGEgdmFsaWQgUEhQIHZhcmlhYmxlIG5hbWUnOwokbGFuZ1snc2VhcmNoJ10gPSAnU2VhcmNoJzsKJGxhbmdbJ3NlYXJjaGZvciddID0gJ1NlYXJjaCBmb3InOwokbGFuZ1snc2VhcmNocmVzdWx0c2ZvciddID0gJ1NlYXJjaCByZXN1bHRzIGZvcic7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZSddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ2ZpbHRlcnByb21wdCddID0gJ0ZpbHRlciAlcyc7CiRsYW5nWydwYXJhbV9maWx0ZXJfbWlzc2luZyddID0gJ1BhcmFtZXRlciA8ZW0+ZmlsdGVyPC9lbT4gaXMgcmVxdWlyZWQgaW4gZmlsdGVyIG1vZGUuJzsKJGxhbmdbJ2FsbCddID0gJ0FsbCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0xpc3RJdCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4nOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICcgaGFzIHN1Y2Nlc3NmdWxseSBiZWVuIGluc3RhbGxlZCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiB1bmluc3RhbGxlZCc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8cD5WZXJzaW9uIDEuMTwvcD48dWw+PGxpPk11bGl0bGV2ZWwgQ2F0ZWdvcmllczwvbGk+PGxpPlN1bW1hcnkgUGFnaW5hdGlvbjwvbGk+PGxpPk11bHRpcGxlIENhdGVnb3JpZXMgZm9yIHBhcmFtZXRlciBjYXRlZ29yeTwvbGk+PGxpPkNNU01TIDEuMTAgcmVhZHk8L2xpPjxsaT5CYWNrZW5kIHRhYmxlIHNlYXJjaDwvbGk+PGxpPkV4Y2x1ZGUgQ2F0ZWdvcnkgcGFyYW1ldGVyPC9saT48L3VsPic7CiRsYW5nWydnZW5lcmFsJ10gPSAnR2VuZXJhbCc7CiRsYW5nWyd1c2FnZSddID0gJ1VzYWdlJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUGVybWlzc2lvbnMnOwokbGFuZ1snZHVwbGljYXRpbmcnXSA9ICdEdXBsaWNhdGluZyB0aGlzIG1vZHVsZSc7CiRsYW5nWydhYm91dCddID0gJ0Fib3V0JzsKJGxhbmdbJ2hlbHBfZ2VuZXJhbCddID0gJzxoMz5HZW5lcmFsIEluZm88L2gzPgkJCgk8cD5TaW1wbHkgcHV0LCBMaXN0SXQgYWxsb3dzIHlvdSB0byBjcmVhdGUgbGlzdHMgdGhhdCB5b3UgY2FuIGRpc3BsYXkgdGhyb3VnaG91dCB5b3VyIHdlYnNpdGUuIFlvdSBjb3VsZCBtYWtlIGEgc2ltcGxlIEZBUSBvciBUZXN0aW1vbmlhbHMgZmVhdHVyZSB3aXRoIHRoaXMgbW9kdWxlLiBUaGUgd2ViIGRldmVsb3BlciBkZWZpbmVzIGZpZWxkcyB0byBjb25zdHJhaW4gd2hhdCBkYXRhIHRoZSBjbGllbnQgY2FuIGVudGVyLiBBIG51bWJlciBvZiBmaWVsZCB0eXBlcyBjYW4gYmUgc3BlY2lmaWVkIC0gdGV4dCBpbnB1dCwgY2hlY2tib3gsIHRleHQgYXJlYSwgc2VsZWN0IGRhdGUsIHVwbG9hZCBmaWxlLCBzZWxlY3QgZmlsZSwgZHJvcGRvd24gLSBhbmQgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgY2FuIGJlIHNldCBmb3IgZWFjaCB0eXBlLCBmb3IgZXhhbXBsZSwgaW5wdXQgZmllbGQgc2l6ZSwgbWF4IGxlbmd0aCwgV1lTSVdZRyBlZGl0b3IsIHBvc3NpYmxlIGRyb3AgZG93biB2YWx1ZXMsIHBvc3NpYmxlIGZpbGUgZXh0ZW5zaW9ucywgZGlyZWN0b3J5IHBhdGhzIGZvciBmaWxlIHNlbGVjdGlvbnMsIGRhdGUgZm9ybWF0cywgZXRjLi48L3A+Cgk8cD5BbiBpbXBvcnRhbnQgbm90ZSBvZiB3YXJuaW5nIC0gVGhpcyBpcyBub3QgYSBjb250ZW50IGNvbnN0cnVjdGlvbiBraXQsIHN1Y2ggYXMgaW4gRHJ1cGFsLiBJdCBpcyBtZWFudCBmb3Igc21hbGwgbGlzdGluZ3MsIG5vdCB0byBzdG9yZSB0aG91c2FuZHMgb2YgcmVjb3Jkcy4gVGhpcyBpcyBiZWNhdXNlIG9mIHRoZSBkYXRhYmFzZSBtb2RlbCB1c2VkIChFQVYpLiBBbHNvLCBlYWNoIGJpdCBvZiBkYXRhIHlvdSBlbnRlciBpcyBzdG9yZWQgYXMgVEVYVCBkYXRhIHR5cGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBpdCBpcyB2YXJjaGFyLCBib29sZWFuLCB0aW1lc3RhbXAsIGV0Yy4gVGhpcyBpcyBhIHJlc3RyaWN0aW9uIG9mIGEgc2hvcnQgZGV2ZWxvcG1lbnQgdGltZSBmcmFtZS48L3A+JzsKJGxhbmdbJ2hlbHBfdXNhZ2UnXSA9ICc8aDM+VXNhZ2U8L2gzPgkJCQoJPHA+WW91IGNhbiBjb25maWd1cmUgeyRtb2R1bGVfbmFtZX0gaGVyZTogQ29udGVudCA+IHskbW9kdWxlX25hbWV9PC9wPgoJPHA+UGxhY2UgdGhpcyB0YWcgaW4geW91ciBwYWdlOiB7eyRtb2R1bGVfbmFtZX19PC9wPic7CiRsYW5nWydoZWxwX3VzYWdlX29wdGlvbnMnXSA9ICdBZnRlciBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgdGhlIG5leHQgdGhpbmcgdG8gZG8gaXMgc2V0IHRoZSBvcHRpb25zLiAgCQkJCQoJPG9sPgkJCQkJCgkJPGxpPlRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlIGluIHRoZSBtZW51IGNoYW5nZSB0aGUgJnF1b3Q7TW9kdWxlIEZyaWVuZGx5IE5hbWUmcXVvdDsuPC9saT4KCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBpdGVtIHRhYiBjaGFuZ2UgdGhlICZxdW90O0l0ZW0gUGx1cmFsJnF1b3Q7LjwvbGk+Cgk8L29sPic7CiRsYW5nWydoZWxwX3VzYWdlX2ZpZWxkZGVmcyddID0gJ05leHQgLSBzZXQgdGhlIEZpZWxkIERlZmluaXRpb25zLiAKCTxvbD4KCQk8bGk+Q2hvb3NlIGZyb20gJnF1b3Q7VGV4dCBJbnB1dCZxdW90OywgJnF1b3Q7Q2hlY2tib3gmcXVvdDssICZxdW90O1RleHQgQXJlYSZxdW90OywgJnF1b3Q7U2VsZWN0IERhdGUmcXVvdDssICZxdW90O1VwbG9hZCBGaWxlJnF1b3Q7LCAmcXVvdDtTZWxlY3QgRmlsZSZxdW90OyAmYW1wOyAmcXVvdDtEcm9wZG93biZxdW90Oy48L2xpPgoJCTxsaT5Gb3IgZWFjaCBmaWVsZCBkZWZpbml0aW9uLCB5b3UgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgaW4gdGhlICZxdW90O2V4dHJhJnF1b3Q7IGZpZWxkLiBTZWUgdGhlICZxdW90O0ZpZWxkIERlZmluaXRpb25zJnF1b3Q7IHRhYiBmb3IgYSBsaXN0LjwvbGk+CgkJPGxpPkVhY2ggaXRlbSBpbiBlYWNoIGxpc3QgaGFzIHRocmVlIGRlZmF1bHQgZmllbGRzLiBBbGwgRmllbGQgRGVmaW5pdGlvbnMgc2V0IGhlcmUgYXJlIGFkZGl0aW9uYWwgdG8gdGhlbS48L2xpPgoJPC9vbD4nOwokbGFuZ1snaGVscF91c2FnZV9jYXRlZ29yaWVzJ10gPSAnVGhlcmUgaXMgYSBzaW5nbGUgY2F0ZWdvcnkgYnkgZGVmYXVsdCBjYWxsZWQgJnF1b3Q7R2VuZXJhbCZxdW90Oy4gVGhpcyBjYW4gYmUgcmVuYW1lZCBhbmQgYWRkaXRpb25hbCBDYXRlZ29yaWVzIGNhbiBiZSBhZGRlZC4nOwokbGFuZ1snaGVscF91c2FnZV9pdGVtcyddID0gJ05vdyB3ZSBtb3ZlIG9uIHRvIHRoZSBpdGVtIGxpc3QgaXRzZWxmLiBJbiB0aGlzIGV4YW1wbGUgaXQgc2F5cyAmcXVvdDtBZGQgQm94JnF1b3Q7LCB0aGlzIHdhcyByZW5hbWVkIGluIHRoZSAmcXVvdDtPcHRpb25zJnF1b3Q7IHRhYi4gCgk8b2w+CgkJPGxpPlRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgZGVmYXVsdCAmcXVvdDtUaXRsZSZxdW90OyBmaWVsZC48L2xpPgoJCTxsaT5UaGUgJnF1b3Q7Q2F0ZWdvcnkmcXVvdDsgZHJvcGRvd24gaXMgYWxzbyBhIGRlZmF1bHQgZmllbGQsIGFuZCBpZiB1bmNoYW5nZWQsIHdpbGwgYmUgc2V0IHRvICZxdW90O0dlbmVyYWwmcXVvdDsuPC9saT4KCQk8bGk+VGhlIHRoaXJkIGRlZmF1bHQgZmllbGQgaXMgdGhlIGNoZWNrYm94IGNhbGxlZCAmcXVvdDtBY3RpdmUmcXVvdDsuIFRoaXMgYWxsb3dzIHlvdSB0byB0b2dnbGUgYSBsaXN0IGVudHJ5IHdpdGhvdXQgZGVsZXRpbmcgaXQuPC9saT4KCTwvb2w+JzsKJGxhbmdbJ2hlbHBfcGVybWlzc2lvbnMnXSA9ICc8aDM+UGVybWlzc2lvbnM8L2gzPgoJPHA+WW91IGNhbiBzcGVjaWZ5IHRoZSBmb2xsb3dpbmcgcGVybWlzc2lvbnMgdW5kZXIgVXNlcnMgJmFtcDsgR3JvdXBzID4gR3JvdXAgUGVybWlzc2lvbnM8L3A+Cgk8dWw+CgkJPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgSXRlbXM8L2xpPgoJCTxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IENhdGVnb3JpZXM8L2xpPgoJCTxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IE9wdGlvbnM8L2xpPgoJPC91bD4KCTxwPlRvIGFsbG93IG5vbi1hZG1pbiB1c2VycyB0byB1cGxvYWQgZmlsZXMsIHBsZWFzZSBnbyB0byBFeHRlbnNpb25zID4gR0JGaWxlUGlja2VyIGFuZCB0aWNrIHRoYXQgZmlyc3QgY2hlY2tib3ggJnF1b3Q7U2hvdyBmaWxlbWFuYWdlbWVudCBvcHRpb25zJnF1b3Q7LjwvcD4nOwokbGFuZ1snaGVscF9maWVsZGRlZnMnXSA9ICc8aDM+RmllbGQgRGVmaW5pdGlvbnM8L2gzPgoJPHA+VGhlIGZpcnN0IHRoaW5nIHlvdSBzaG91bGQgY29uZmlndXJlIGFyZSB5b3VyIGZpZWxkIGRlZmluaXRpb25zLiA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IEZpZWxkIGRlZmluaXRpb25zIGNhbiBvbmx5IGJlIGRlbGV0ZWQgd2hlbiB0aGV5JiMwMzk7cmUgbm90IGluIHVzZSBpbiBvcmRlciB0byBhdm9pZCBkYXRhIGxvc3MuPC9wPgoJPHA+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGluIHRoZSAmcXVvdDtleHRyYSZxdW90OyBmaWVsZC48L3A+Cgk8dWw+CgkJPGxpPgoJCQk8cD5JbnN0cnVjdGlvbjogCgkJCTxjb2RlPnNpemVbMjBdPC9jb2RlPjxiciAvPgoJCQlQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjxiciAvPgoJCQlBcHBsaWNhYmxlIHRvOiBUZXh0IElucHV0LCBTZWxlY3QgRGF0ZTwvcD4gICAgCgkJPC9saT4KCQk8bGk+CgkJCTxwPkluc3RydWN0aW9uOiAKCQkJPGNvZGU+bWF4X2xlbmd0aFsyMF0KCQkJPC9jb2RlPjxiciAvPgoJCQlQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjxiciAvPgoJCQlBcHBsaWNhYmxlIHRvOiBUZXh0IElucHV0LCBUZXh0IEFyZWEsIFNlbGVjdCBEYXRlPC9wPgoJCTwvbGk+CgkJPGxpPgoJCQk8cD5JbnN0cnVjdGlvbjogCgkJCTxjb2RlPnd5c2l3eWdbMV0KCQkJPC9jb2RlPjxiciAvPgoJCQlQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KCQkJQXBwbGljYWJsZSB0bzogVGV4dCBBcmVhPC9wPgoJCTwvbGk+CgkJPGxpPgoJCQk8cD5JbnN0cnVjdGlvbjogCgkJCTxjb2RlPm9wdGlvbnNbYXBwbGU9QXBwbGUsYmFuYW5hPUJhbmFuYV0KCQkJPC9jb2RlPjxiciAvPgoJCQlQb3NzaWJsZSB2YWx1ZToga2V5PXZhbHVlLC4uLjxiciAvPgoJCQlBcHBsaWNhYmxlIHRvOiBEcm9wZG93bjwvcD4KCQk8L2xpPgogICAgICA8bGk+CiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5hbGxvd1twZGYsZ2lmLHBuZyxqcGVnLGpwZ10KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGV4dGVuc2lvbiwuLi4gKGtlZXAgbG93ZXJjYXNlKTxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlLCBTZWxlY3QgRmlsZQogICAgICA8L3A+ICAgIAogICAgICA8L2xpPiAgICAKICAgICAgPGxpPiAgICAgICAgCiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGlyZWN0b3J5IHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvIAogICAgICAgIDxjb2RlPiRjb25maWdbJiMwMzk7dXBsb2Fkc191cmwmIzAzOTtdCiAgICAgICAgPC9jb2RlPi4gTm8gc2xhc2ggYXQgdGhlIGVuZC4gPGNvZGU+eyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfTwvY29kZT4gd2lsbCBiZSByZXBsYWNlZC48YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUKICAgICAgPC9wPiAgICAKICAgICAgPC9saT4gICAgCiAgICAgIDxsaT4gICAgICAgIAogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBwcmVmaXgsLi4uPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+ICAgIAogICAgICA8bGk+ICAgICAgICAKICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPmRhdGVmb3JtYXRbZGQvbW0veXldCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEYXRlIGZvcm1hdCB1c2VkIGJ5IHRoZSBqUXVlcnkgZGF0ZXBpY2tlci4gVHJ5IGdvb2dsaW5nICYjMDM5O2pxdWVyeSBmb3JtYXREYXRlJiMwMzk7PGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogU2VsZWN0IERhdGUKICAgICAgPC9wPiAgICAKICAgICAgPC9saT4KCSAgPGxpPiAgICAgICAgCiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5maWxlYnJvd3NlclsxXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPgoJCTxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBmaWxlYnJvd3NlciBtb2RlIGluc3RlYWQgb2YgZGVmYXVsdCBkcm9wZG93biBtb2RlCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+CiAgICA8L3VsPgogICAgPHA+WW91IGNhbiBzcGVjaWZ5IG11bHRpcGxlIGluc3RydWN0aW9ucyBzZXBhcmF0ZWQgYnkgYSBzZW1pY29sb24gKAogICAgICA8Y29kZT47CiAgICAgIDwvY29kZT4pLCBmb3IgZXhhbXBsZToKICAgIDwvcD4KICAgIDxwPgogICAgICA8Y29kZT5hbGxvd1twZGZdO2RpclsvZG9jcy9wZGZdPC9jb2RlPgogICAgPC9wPgogICAgCgk8aDM+RmllbGQgRGVmaW5pdGlvbnMgYnkgdHlwZTwvaDM+CiAgICAgICAgCiAgICA8dWw+CiAgICAgICAgPGxpPlRleHQgSW5wdXQ6IDxjb2RlPnNpemVbMjBdO21heF9sZW5ndGhbMjBdPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPkNoZWNrYm94OiA8Y29kZT4tPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPlRleHQgQXJlYTogPGNvZGU+bWF4X2xlbmd0aFsyMF07d3lzaXd5Z1sxXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5TZWxlY3QgRGF0ZTogPGNvZGU+c2l6ZVsyMF07bWF4X2xlbmd0aFsyMF07ZGF0ZWZvcm1hdFtkZC9tbS95eV08L2NvZGU+PC9saT4KICAgICAgICA8bGk+VXBsb2FkIEZpbGU6IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddO2RpclsvcGF0aC90by9kaXJdO2V4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5TZWxlY3QgRmlsZTogPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ107ZGlyWy9wYXRoL3RvL2Rpcl07ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dO2ZpbGVicm93c2VyWzFdPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPkRyb3Bkb3duOiA8Y29kZT5vcHRpb25zW2FwcGxlPUFwcGxlLGJhbmFuYT1CYW5hbmFdPC9jb2RlPjwvbGk+CiAgICA8L3VsPic7CiRsYW5nWydoZWxwX2NhdGVnb3JpZXMnXSA9ICc8aDM+Q2F0ZWdvcmllczwvaDM+Cgk8cD5NdWx0aSBsZXZlbCBjYXRlZ29yaWVzIGFyZSBzdXBwb3J0ZWQuPC9wPic7CiRsYW5nWydoZWxwX3RlbXBsYXRlcyddID0gJzxoMz5UZW1wbGF0ZXM8L2gzPgoJPHA+SWYgeW91IGFyZSBub3Qgc3VyZSB3aGF0IHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlIHRvIHVzZSBpbiB5b3VyIHRlbXBsYXRlcywgdHJ5IHRoZSBkZWJ1ZyB0ZW1wbGF0ZTo8L3A+Cgk8cD57eyRtb2R1bGVfbmFtZX0gc3VtbWFyeXRlbXBsYXRlPSYjMDM5O2RlYnVnJiMwMzk7fTwvcD4KCTxwPllvdSBjYW4gYWNjZXNzIGFueSBmaWVsZCBkaXJlY3RseSB3aGVuIGxvb3BpbmcgdGhyb3VnaCBpdGVtcyB1c2luZyBpdHMgYWxpYXMsIGZvciBleGFtcGxlLCB0byBpZiB5b3UgY3JlYXRlZCBhIGZpZWxkIGRlZmluaXRpb24gd2l0aCBhbiBhbGlhcyAmcXVvdDtwb3NpdGlvbiZxdW90OywgeW91IGNhbiBkbzo8L3A+JzsKJGxhbmdbJ2hlbHBfdGVtcGxhdGVzX2NhdGVnb3JpZXMnXSA9ICc8cD5CZXNpZGVzLCB5b3UgY2FuIGxvb3AgdGhyb3VnaCBjYXRlZ29yaWVzIGluIHRoZSBzdW1tYXJ5IHRlbXBsYXRlIGp1c3QgYXMgd2VsbCBhcyBsb29waW5nIHRocm91Z2ggaXRlbXM6PC9wPic7CiRsYW5nWydoZWxwX2R1cGxpY2F0aW5nJ10gPSAnPGgzPkR1cGxpY2F0aW5nIHRoaXMgbW9kdWxlPC9oMz4KCTxwPlRoaXMgbW9kdWxlIHdhcyBtYWRlIHRvIGJlIGVhc2lseSBkdXBsaWNhdGVkLiBUbyBkdXBsaWNhdGUgdGhpcyBtb2R1bGUsIGZvbGxvdyB0aGVzZSBzdGVwcyBCRUZPUkUgaW5zdGFsbGluZyB0aGUgbW9kdWxlOjwvcD4KCTxvbD4gICAgCgkJPGxpPlJlbmFtZSB0aGUgZGlyZWN0b3J5ICZxdW90OzxiPkxpc3RJdDwvYj4mcXVvdDs8L2xpPiAgICAKCQk8bGk+UmVuYW1lICZxdW90O2NsYXNzIDxiPkxpc3RJdDwvYj4gZXh0ZW5kcyBDTVNNb2R1bGUmcXVvdDsgaW5zaWRlIExpc3RJdC5tb2R1bGUucGhwPC9saT4gICAgCgkJPGxpPlJlbmFtZSAmcXVvdDs8Yj5MaXN0SXQ8L2I+Lm1vZHVsZS5waHAmcXVvdDs8L2xpPgoJPC9vbD4KCTxwPk1ha2Ugc3VyZSB5b3UgZm9sbG93IHRoZSBDTVNNUyBtb2R1bGUgbmFtaW5nIGNvbnZlbnRpb25zLCBhLXogd2l0aCBubyBwdW5jdHVhdGlvbiBjaGFyYWN0ZXJzIG9yIHNwYWNlcyB0byBiZSBzYWZlIDopPC9wPgoJPHA+WW91IGNhbiBhbHdheXMgY2hhbmdlIHRoZSBtb2R1bGUgZnJpZW5kbHkgbmFtZSBvbmNlIGluc3RhbGxlZCB1bmRlciAmcXVvdDtPcHRpb25zJnF1b3Q7IChDb250ZW50ID4geyRtb2R1bGVfbmFtZX0pLiBUbyBjaGFuZ2UgdGhlIGljb24sIHJlcGxhY2UgL21vZHVsZXMveyRtb2R1bGVfbmFtZX0vaW1hZ2VzL2ljb24uZ2lmLjwvcD4nOwokbGFuZ1snaGVscF9hYm91dCddID0gJzxoMz5BYm91dDwvaDM+Cgk8cD5PcmlnaW4gb2YgdGhpcyBtb2R1bGUgY29tZXMgZnJvbSA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2xpc3RpdCIgdGFyZ2V0PSJfYmxhbmsiPkxpc3RJdCBNb2R1bGU8L2E+IGRldmVsb3BlZCBieSBCZW4gTWFsZW4uPGJyIC8+QXMgdGhlcmUgd2VyZSBubyBwbGFucyBvbiBmdXJ0aGVyIGRldmVsb3BtZW50IG9mIHRoZSBtb2R1bGUgc29tZSBwZW9wbGUgZGVjaWRlZCB0byBmb3JrIHRoZSBtb2R1bGUgYW5kIGNvbnRpbnVlIHdpdGggZGV2ZWxvcG1lbnQuPGJyIC8+CglJZiB5b3UgZmluZCBhbnkgYnVncyBwbGVhc2UgZmVlbCBmcmVlIHRvIHN1Ym1pdCBhIGJ1ZyByZXBvcnQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9idWcvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4gb3IgZm9yIGFueSBnb29kIGlkZWFzIGNvbnNpZGVyIHN1Ym1pdGluZyBhIGZlYXR1cmUgcmVxdWVzdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2ZlYXR1cmVfcmVxdWVzdC9saXN0LzEwMTUiIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPi4gPGJyIC8+CglQbGVhc2Uga2VlcCBpbiBtaW5kIHRoYXQgZGV2ZWxvcGVycyBkbyBoYXZlIHRoZWlyIGRhaWx5IGpvYnMgd2hpY2ggbWVhbnMgdGhhdCBmZWF0dXJlIHJlcXVlc3RzIGFyZSBjb25zaWRlcmVkIGFuZCBkb25lIGFzIHRpbWUgYWxsb3dzLiBJZiB5b3UgbmVlZCBhIGZlYXR1cmUgcmVhbGx5IGJhZGx5IGNvbnNpZGVyIGNvbnRhY3Rpbmcgb25lIG9mIHRoZSBkZXZlbG9wZXJzIGZvciBhIHNwb25zb3JlZCBkZXZlbG9wbWVudC4KCTwvcD4KCTxoMz5UZWFtPC9oMz4KCTx1bD4KCQk8bGk+Sm9uYXRoYW4gU2NobWlkIChGb2FseSopIGhpQGpvbmF0aGFuc2NobWlkLmRlIDxiciAvPnd3dy5qb25hdGhhbnNjaG1pZC5kZTwvbGk+CgkJPGxpPkdvcmFuIElsaWMgKHVuaXF1MykgZy5pbGljQGktYXJ0cy5ldSA8YnIgLz53d3cuaWNoLW1hY2gtZGFzLmF0PC9saT4KCQk8bGk+Um9iZXJ0IENhbXBiZWxsIChjYWxndXkxMDAwKSBjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnICA8YnIgLz53d3cuY2FsZ3V5MTAwMC5jb208L2xpPgoJCTxsaT5MdWthcyBCbGF0dGVyIChub2NrZW5mZWxsKSBub2NrZW5mZWxsQGdtYWlsLmNvbSA8YnIgLz53d3cuYmxhdHRlcnRlY2guY2g8L2xpPgoJCTxsaT5Bcm5vdWQgKGFybm91ZCkgYXJub3VkQHVwc2VydmljZS5ubCA8YnIgLz53d3cudXBzZXJ2aWNlLm5sPC9saT4KCQk8bGk+V2F5bmUgT05laWwgKHdpc2hib25lKSB3YXluZUB0ZWFtd2lzaGJvbmUuY29tIDxiciAvPnd3dy50ZWFtd2lzaGJvbmUuY29tPC9saT4KCTwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYWN0aW9uJ10gPSAnCU92ZXJyaWRlIHRoZSBkZWZhdWx0IGFjdGlvbi4gUG9zc2libGUgdmFsdWVzIGFyZToKCTx1bD4KCQk8bGk+JnF1b3Q7ZGVmYXVsdCZxdW90OyAtIGRpc3BsYXlzIHRoZSBzdW1tYXJ5IHZpZXcuPC9saT4KCQk8bGk+JnF1b3Q7ZGV0YWlsJnF1b3Q7IC0gZGlzcGxheXMgYSBzcGVjaWZpZWQgZW50cnkgaW4gZGV0YWlsIG1vZGUuPC9saT4KCQk8bGk+JnF1b3Q7c2VhcmNoJnF1b3Q7IC0gZGlzcGxheXMgdGhlIHNlYXJjaCBmb3JtLjwvbGk+CgkJPGxpPiZxdW90O2ZpbHRlciZxdW90OyAtIGRpc3BsYXlzIHRoZSBmaWx0ZXIgZm9ybS4gUGFyYW1ldGVyIDxlbT5maWx0ZXI8L2VtPiBpcyByZXF1aXJlZC48L2xpPgoJPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9zaG93YWxsJ10gPSAnU2hvdyBhbGwgaXRlbXMsIGlycmVzcGVjdGl2ZSBvZiBlbmQgZGF0ZS4nOwokbGFuZ1snaGVscF9wYXJhbV9jYXRlZ29yeSddID0gJ1NwZWNpZnkgYW4gYWxpYXMgb3IgY29tbWEgc2VwYXJhdGVkIGFsaWFzZXMgb2YgdGhlIGNhdGVnb3J5L2NhdGVnb3JpZXMgZGlzcGxheWVkIGl0ZW1zIG11c3QgYmUgYSBtZW1iZXIgb2YuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZXhjbHVkZV9jYXRlZ29yeSddID0gJ1NwZWNpZnkgYW4gYWxpYXMgb3IgY29tbWEgc2VwYXJhdGVkIGFsaWFzZXMgb2YgdGhlIGNhdGVnb3J5L2NhdGVnb3JpZXMgZGlzcGxheWVkIGl0ZW1zIG11c24mIzAzOTt0IGJlIGEgbWVtYmVyIG9mLic7CiRsYW5nWydoZWxwX3BhcmFtX3N1YmNhdGVnb3J5J10gPSAnSWYgcGFyYW1ldGVyICYjMDM5O2NhdGVnb3J5JiMwMzk7IGlzIHNwZWNpZmllZCwgdGhpcyBwYXJhbWV0ZXIgc2V0IHRvIDxlbT50cnVlPC9lbT4gd2lsbCBtYWtlIGFsbG93YW5jZSBmb3Igc3ViY2F0ZWdvcmllcyYjMDM5OyBpdGVtcy4gSXQgaXMgc2V0IHRvIGZhbHNlIGJ5IGRlZmF1bHQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdUaGUgZGV0YWlsIHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdUaGUgc3VtbWFyeSB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNodGVtcGxhdGUnXSA9ICdUaGUgc2VhcmNoIHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9vcmRlcmJ5J10gPSAnWW91IGNhbiBvcmRlciBieSBhbnkgb2YgdGhlIGZvbGxvd2luZyBjb2x1bW5zOiBpdGVtX2lkLCBpdGVtX3RpdGxlLCBpdGVtX3Bvc2l0aW9uLCBjYXRlZ29yeV9pZCwgY2F0ZWdvcnlfbmFtZSwgY2F0ZWdvcnlfcG9zaXRpb24sIGNhdGVnb3J5X2hpZXJhcmNoeS48YnIgLz4KCTx1bD4KCQk8bGk+Rm9yIGV4YW1wbGU6PGJyIC8+CgkJb3JkZXJieT0mIzAzOTtjYXRlZ29yeV9uYW1lLCBpdGVtX3RpdGxlJiMwMzk7PC9saT4KCQk8bGk+WW91IGNhbiBhbHNvIHNwZWNpZnkgYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcgZm9yIGFueSBjb2x1bW4sIGZvciBleGFtcGxlOjxiciAvPgoJCW9yZGVyYnk9JiMwMzk7Y2F0ZWdvcnlfbmFtZXxhc2MsIGl0ZW1fdGl0bGV8ZGVzYyYjMDM5OzwvbGk+Cgk8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzdXBwbGllZCBhbGwgbWF0Y2hpbmcgaXRlbXMgd2lsbCBiZSBkaXNwbGF5ZWQuICBJZiBpdCBpcywgYW5kIHRoZXJlIGFyZSBtb3JlIGl0ZW1zIGF2YWlsYWJsZSB0aGFuIHNwZWNpZmllZCBpbiB0aGUgcGFyYW1ldGVyLCB0ZXh0IGFuZCBsaW5rcyB3aWxsIGJlIHN1cHBsaWVkIHRvIGFsbG93IHNjcm9sbGluZyB0aHJvdWdoIHRoZSByZXN1bHRzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3RhcnQnXSA9ICdTdGFydCBhdCB0aGUgbnRoIGl0ZW0gLS0gbGVhdmluZyBlbXB0eSB3aWxsIHN0YXJ0IGF0IHRoZSBmaXJzdCBpdGVtLic7CiRsYW5nWydoZWxwX3BhcmFtX251bWJlciddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKSAtLSBsZWF2aW5nIGVtcHR5IHdpbGwgc2hvdyBhbGwgaXRlbXMuIFRoaXMgaXMgYSBzeW5vbnltIGZvciB0aGUgcGFnZWxpbWl0IHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnUGFnZSB0byBkaXNwbGF5IGl0ZW0gZGV0YWlscyBpbi4gTXVzdCBiZSBhIHBhZ2UgYWxpYXMuIFVzZWQgdG8gYWxsb3cgZGV0YWlscyB0byBiZSBkaXNwbGF5ZWQgaW4gYSBkaWZmZXJlbnQgcGFnZSB0aGFuIHN1bW1hcnkuJzsKJGxhbmdbJ2hlbHBfcGFyYW1faXRlbSddID0gJ1RoaXMgcGFyYW1ldGVyIGlzIG9ubHkgYXBwbGljYWJsZSB0byB0aGUgZGV0YWlsIHZpZXcuIEl0IGFsbG93cyBzcGVjaWZ5aW5nIHdoaWNoIGl0ZW0gdG8gZGlzcGxheSBpbiBkZXRhaWwgbW9kZS4gTXVzdCBiZSBhbiBpdGVtIGFsaWFzLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaCddID0gJ1NlYXJjaCBhbGwgZmllbGRzLiBVc2VzIGZ1bGx0ZXh0IHNlYXJjaC4nOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2hfJ10gPSAnU2VhcmNoIGEgcGFydGljdWxhciBmaWVsZC4gWW91IGNhbiB1c2UgJiMwMzk7dGl0bGUmIzAzOTsgb3IgdGhlIGFsaWFzIG9mIGEgZmllbGQgZGVmaW5pdGlvbiwgZS5nLiBzZWFyY2hfdGl0bGUuIFdpbGwgYmUgaWdub3JlZCB3aGVuIHBhcmFtZXRlciAmIzAzOTtzZWFyY2gmIzAzOTsgaXMgc2V0LCBidXQgbXVsdGlwbGUgc2VhcmNoXyogcGFyYW1zIGNhbiBiZSBjb21iaW5lZC4nOwokbGFuZ1snaGVscF9wYXJhbV9maWx0ZXInXSA9ICdSZXF1aXJlZCBmb3IgYWN0aW9uIDxlbT5maWx0ZXI8L2VtPi4gU3BlY2lmeSB0aGUgZmllbGRzIHdob3NlIHZhbHVlcyBzaG91bGQgYmUgb2ZmZXJlZCBhcyBmaWx0ZXIgb3B0aW9ucyBieSBsaXN0aW5nIHRoZSBmaWVsZCYjMDM5O3MgYWxpYXNlcyBjb21tYSBzZXBhcmF0ZWQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fcmV0dXJucGFnZSddID0gJ1VzZWQgZm9yIGZpbHRlciBvciBzZWFyY2ggbW9kZSBvbmx5LiBQYWdlIHRvIGRpc3BsYXkgc2VhcmNoIHJlc3VsdHMgcmVzcGVjdGl2bHkgZmlsdGVyZWQgaXRlbXMgaW4uIE11c3QgYmUgYSBwYWdlIGFsaWFzLiBVc2VkIHRvIGFsbG93IHN1bW1hcnkgdG8gYmUgZGlzcGxheWVkIGluIGEgZGlmZmVyZW50IHBhZ2UgdGhhbiBmaWx0ZXIgLyBzZWFyY2ggbWFzay4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNzAzNDQ5NzkuMTMyOTI2MDIzMi4xMzI5MjYwMjMyLjEzMjkyNjAyMzIuMSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMjkyNjAyMzIuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2l0ZW0nXSA9ICdJdGVtJzsKJGxhbmdbJ2l0ZW1zJ10gPSAnSXRlbXMnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ0ZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1sndGVtcGxhdGVzJ10gPSAnVGVtcGxhdGVzJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvcnknOwokbGFuZ1snY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOwokbGFuZ1snb3B0aW9uJ10gPSAnT3B0aW9uJzsKJGxhbmdbJ29wdGlvbnMnXSA9ICdPcHRpb25zJzsKJGxhbmdbJ2JhY2snXSA9ICdHbyBvbmUgcGFnZSBiYWNrJzsKJGxhbmdbJ2l0ZW1fdGl0bGUnXSA9ICdUaXRsZSc7CiRsYW5nWydwcm9tcHRfaXRlbV90aXRsZSddID0gJ0l0ZW0gdGl0bGUnOwokbGFuZ1snYWN0aXZlJ10gPSAnQWN0aXZlJzsKJGxhbmdbJ3RpbWVfY29udHJvbCddID0gJ1VzZSB0aW1lIGNvbnRyb2wnOwokbGFuZ1snc3RhcnRfdGltZSddID0gJ1N0YXJ0IHRpbWUnOwokbGFuZ1snZW5kX3RpbWUnXSA9ICdFbmQgdGltZSc7CiRsYW5nWydpdGVtX3RpdGxlX2VtcHR5J10gPSAnSXRlbSB0aXRsZSBpcyBlbXB0eSc7CiRsYW5nWydyZXF1aXJlZF9maWVsZF9lbXB0eSddID0gJ1JlcXVpcmVkIGZpZWxkIGlzIGVtcHR5JzsKJGxhbmdbJ3Rvb19sb25nJ10gPSAnRmllbGQgdmFsdWUgZXhjZWVkcyBtYXggbGVuZ3RoJzsKJGxhbmdbJ2FwcHJvdmUnXSA9ICdTZXQgU3RhdHVzIHRvICYjMDM5O0FjdGl2ZSYjMDM5Oyc7CiRsYW5nWydyZXZlcnQnXSA9ICdTZXQgU3RhdHVzIHRvICYjMDM5O0luYWN0aXZlJiMwMzk7JzsKJGxhbmdbJ3N1Ym1pdF9vcmRlciddID0gJ1NhdmUgb3JkZXInOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkICVzJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlbXVsdGlwbGUnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIGFsbCBvZiB0aGVzZSAlcz8nOwokbGFuZ1snc2VsZWN0X2FsbCddID0gJ1NlbGVjdCBhbGwnOwokbGFuZ1snZXJyb3Jfc3RhcnRncmVhdGVyZW5kJ10gPSAnU3RhcnQgZGF0ZSBpcyBncmVhdGVyIHRoYW4gZW5kIGRhdGUuJzsKJGxhbmdbJ2l0ZW1fYWxpYXNfZXhpc3RzJ10gPSAnSXRlbSBhbGlhcyBhbHJlYWR5IGV4aXN0cy4gQWxpYXMgbXVzdCBiZSB1bmlxdWUuJzsKJGxhbmdbJ3JldHVybl91cmwnXSA9ICdSZXR1cm4nOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAnRWRpdCBGaWVsZCBEZWZpbml0aW9uJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ2ZpZWxkZGVmX2hlbHAnXSA9ICdIZWxwZnVsIHRpcCc7CiRsYW5nWydmaWVsZGRlZl90eXBlJ10gPSAnVHlwZSc7CiRsYW5nWydmaWVsZGRlZl9tYXhfbGVuZ3RoJ10gPSAnTWF4aW11bSBsZW5ndGgnOwokbGFuZ1snZmllbGRkZWZfcmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydleHRyYSddID0gJ0V4dHJhJzsKJGxhbmdbJ3RleHRib3gnXSA9ICdUZXh0IElucHV0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0IEFyZWEnOwokbGFuZ1snc2VsZWN0X2RhdGUnXSA9ICdTZWxlY3QgRGF0ZSc7CiRsYW5nWyd1cGxvYWRfZmlsZSddID0gJ1VwbG9hZCBGaWxlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snc2VsZWN0X2RlZmF1bHQnXSA9ICctLSBTZWxlY3QgLS0nOwokbGFuZ1snc2VsZWN0X2ZpbGUnXSA9ICdTZWxlY3QgRmlsZSc7CiRsYW5nWydmaWVsZGRlZl9uYW1lX2VtcHR5J10gPSAnRmllbGQgZGVmaW5pdGlvbiBuYW1lIGlzIGVtcHR5JzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZXhpc3RzJ10gPSAnRmllbGQgZGVmaW5pdGlvbiBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ2ZpZWxkZGVmX2FsaWFzX2V4aXN0cyddID0gJ0ZpZWxkIGRlZmluaXRpb24gYWxpYXMgYWxyZWFkeSBleGlzdHMuIEFsaWFzIG11c3QgYmUgdW5pcXVlLic7CiRsYW5nWydpbnZhbGlkJ10gPSAnRmllbGQgdmFsdWUgaXMgaW52YWxpZCc7CiRsYW5nWydzdGF0dXNfcmVxdWlyZWQnXSA9ICdTZXQgc3RhdHVzIHRvICYjMDM5O3JlcXVpcmVkJiMwMzk7JzsKJGxhbmdbJ3N0YXR1c19vcHRpb25hbCddID0gJ1NldCBzdGF0dXMgdG8gJiMwMzk7b3B0aW9uYWwmIzAzOTsnOwokbGFuZ1snZWRpdF9jYXRlZ29yeSddID0gJ0VkaXQgQ2F0ZWdvcnknOwokbGFuZ1snY2F0ZWdvcnlfbmFtZSddID0gJ0NhdGVnb3J5IG5hbWUnOwokbGFuZ1snY2F0ZWdvcnlfbmFtZV9lbXB0eSddID0gJ0NhdGVnb3J5IG5hbWUgaXMgZW1wdHknOwokbGFuZ1snY2F0ZWdvcnlfYWxpYXNfZXhpc3RzJ10gPSAnQ2F0ZWdvcnkgYWxpYXMgYWxyZWFkeSBleGlzdHMuIEFsaWFzIG11c3QgYmUgdW5pcXVlLic7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGUnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZXMnXSA9ICdTdW1tYXJ5IFRlbXBsYXRlcyc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZSddID0gJ0RldGFpbCBUZW1wbGF0ZSc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhaWwgVGVtcGxhdGVzJzsKJGxhbmdbJ2VkaXR0ZW1wbGF0ZSddID0gJ0VkaXQgVGVtcGxhdGUnOwokbGFuZ1sndGVtcGxhdGVfbmFtZSddID0gJ1RlbXBsYXRlIG5hbWUnOwokbGFuZ1sndGVtcGxhdGVfbmFtZV9lbXB0eSddID0gJ1RlbXBsYXRlIG5hbWUgaXMgZW1wdHknOwokbGFuZ1snbW9kdWxlX29wdGlvbnMnXSA9ICdNb2R1bGUgT3B0aW9ucyc7CiRsYW5nWyd1cmxfb3B0aW9ucyddID0gJ1VSTCBPcHRpb25zJzsKJGxhbmdbJ3Byb21wdF9mcmllbmRseW5hbWUnXSA9ICdNb2R1bGUgZnJpZW5kbHkgbmFtZSc7CiRsYW5nWydwcm9tcHRfaXRlbV9zaW5ndWxhciddID0gJ0l0ZW0gc2luZ3VsYXInOwokbGFuZ1sncHJvbXB0X2l0ZW1fcGx1cmFsJ10gPSAnSXRlbSBwbHVyYWwnOwokbGFuZ1sncHJvbXB0X3VybF9wcmVmaXgnXSA9ICdVUkwgUHJlZml4JzsKJGxhbmdbJ3Byb21wdF9kaXNwbGF5X2lubGluZSddID0gJ0Rpc3BsYXkgZGV0YWlscyBpbmxpbmUnOwokbGFuZ1sncHJvbXB0X2l0ZW1fY29scyddID0gJ1Nob3cgdGhpcyBmaWVsZHMgaW4gaXRlbSBvdmVydmlldyc7CiRsYW5nWydjaGFuZ2Vzc2F2ZWQnXSA9ICdZb3VyIGNoYW5nZXMgaGF2ZSBiZWVuIHN1Y2Nlc3NmdWxseSBzYXZlZC4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGU/JzsKJGxhbmdbJ3VwJ10gPSAnVXAnOwokbGFuZ1snZG93biddID0gJ0Rvd24nOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ25vc3VjaGlkJ10gPSAnTm8gc3VjaCBJRCc7CiRsYW5nWydkZWxldGVkJ10gPSAnVGhlIGl0ZW0ocykgaGF2ZSBiZWVuIHN1Y2Nlc3NmdWxseSBkZWxldGVkLic7CiRsYW5nWydhZGQnXSA9ICdBZGQgJXMnOwokbGFuZ1snYWxpYXMnXSA9ICdBbGlhcyc7CiRsYW5nWydhbGlhc19pbnZhbGlkJ10gPSAnQWxpYXMgaXMgaW52YWxpZC4gSXQgbXVzdCBiZSBhIHZhbGlkIFBIUCB2YXJpYWJsZSBuYW1lJzsKJGxhbmdbJ3NlYXJjaCddID0gJ1NlYXJjaCc7CiRsYW5nWydzZWFyY2hmb3InXSA9ICdTZWFyY2ggZm9yJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTGlzdEl0IGFsbG93cyB5b3UgdG8gY3JlYXRlIGxpc3RzIHRoYXQgeW91IGNhbiBkaXNwbGF5IHRocm91Z2hvdXQgeW91ciB3ZWJzaXRlLic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJyBoYXMgc3VjY2Vzc2Z1bGx5IGJlZW4gaW5zdGFsbGVkJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICcgaGFzIHN1Y2Nlc3NmdWxseSBiZWVuIHVuaW5zdGFsbGVkJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJyc7CiRsYW5nWydoZWxwJ10gPSAnPHNjcmlwdCB0eXBlPSZxdW90O3RleHQvamF2YXNjcmlwdCZxdW90OyBsYW5ndWFnZT0mcXVvdDtqYXZhc2NyaXB0JnF1b3Q7IHNyYz0mcXVvdDsvbW9kdWxlcy8vanMvbHl0ZWJveC5qcyZxdW90Oz48L3NjcmlwdD4NCjxsaW5rIHJlbD0mcXVvdDtzdHlsZXNoZWV0JnF1b3Q7IGhyZWY9JnF1b3Q7L21vZHVsZXMvL2Nzcy9seXRlYm94LmNzcyZxdW90OyB0eXBlPSZxdW90O3RleHQvY3NzJnF1b3Q7IG1lZGlhPSZxdW90O3NjcmVlbiZxdW90OyAvPg0KDQo8ZGl2IGlkPSZxdW90O3BhZ2VfdGFicyZxdW90Oz4gICAgIA0KICA8ZGl2IGlkPSZxdW90O2dlbmVyYWwmcXVvdDs+DQogICAgR2VuZXJhbCBJbmZvICAgDQogIDwvZGl2PiAgICAgDQogIDxkaXYgaWQ9JnF1b3Q7dXNhZ2UmcXVvdDs+DQogICAgVXNhZ2UgICANCiAgPC9kaXY+ICAgICANCiAgPGRpdiBpZD0mcXVvdDtwZXJtaXNzaW9ucyZxdW90Oz4NCiAgICBQZXJtaXNzaW9ucyAgIA0KICA8L2Rpdj4gICAgIA0KICA8ZGl2IGlkPSZxdW90O2ZpZWxkJnF1b3Q7Pg0KICAgIEZpZWxkIERlZmluaXRpb25zICAgDQogIDwvZGl2PiAgICAgDQogIDxkaXYgaWQ9JnF1b3Q7Y2F0ZWdvcmllcyZxdW90Oz4NCiAgICBDYXRlZ29yaWVzICAgDQogIDwvZGl2PiAgICAgDQogIDxkaXYgaWQ9JnF1b3Q7dGVtcGxhdGVzJnF1b3Q7Pg0KICAgIFRlbXBsYXRlcyAgIA0KICA8L2Rpdj4gICAgIA0KICA8ZGl2IGlkPSZxdW90O2R1cGxpY2F0aW5nJnF1b3Q7Pg0KICAgIER1cGxpY2F0aW5nIHRoaXMgbW9kdWxlICAgDQogIDwvZGl2Pg0KPC9kaXY+ICAgDQo8ZGl2IGNsYXNzPSZxdW90O2NsZWFyYiZxdW90Oz4gIA0KPC9kaXY+DQo8ZGl2IGlkPSZxdW90O3BhZ2VfY29udGVudCZxdW90Oz4gIA0KICA8ZGl2IGlkPSZxdW90O2dlbmVyYWxfYyZxdW90Oz4JPGgzPkdlbmVyYWwgSW5mbzwvaDM+CQkNCiAgICA8cD5TaW1wbHkgcHV0LCBMaXN0SXQgYWxsb3dzIHlvdSB0byBjcmVhdGUgbGlzdHMgdGhhdCB5b3UgY2FuIGRpc3BsYXkgdGhyb3VnaG91dCB5b3VyIHdlYnNpdGUuIFlvdSBjb3VsZCBtYWtlIGEgc2ltcGxlIEZBUSBvciBUZXN0aW1vbmlhbHMgZmVhdHVyZSB3aXRoIHRoaXMgbW9kdWxlLiBUaGUgd2ViIGRldmVsb3BlciBkZWZpbmVzIGZpZWxkcyB0byBjb25zdHJhaW4gd2hhdCBkYXRhIHRoZSBjbGllbnQgY2FuIGVudGVyLiBBIG51bWJlciBvZiBmaWVsZCB0eXBlcyBjYW4gYmUgc3BlY2lmaWVkIC0gdGV4dCBpbnB1dCwgY2hlY2tib3gsIHRleHQgYXJlYSwgc2VsZWN0IGRhdGUsIHVwbG9hZCBmaWxlLCBzZWxlY3QgZmlsZSwgZHJvcGRvd24gLSBhbmQgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgY2FuIGJlIHNldCBmb3IgZWFjaCB0eXBlLCBmb3IgZXhhbXBsZSwgaW5wdXQgZmllbGQgc2l6ZSwgbWF4IGxlbmd0aCwgV1lTSVdZRyBlZGl0b3IsIHBvc3NpYmxlIGRyb3AgZG93biB2YWx1ZXMsIHBvc3NpYmxlIGZpbGUgZXh0ZW5zaW9ucywgZGlyZWN0b3J5IHBhdGhzIGZvciBmaWxlIHNlbGVjdGlvbnMsIGRhdGUgZm9ybWF0cywgZXRjLg0KICAgIDwvcD4NCiAgICA8cD5BbiBpbXBvcnRhbnQgbm90ZSBvZiB3YXJuaW5nIC0gVGhpcyBpcyBub3QgYSBjb250ZW50IGNvbnN0cnVjdGlvbiBraXQsIHN1Y2ggYXMgaW4gRHJ1cGFsLiBJdCBpcyBtZWFudCBmb3Igc21hbGwgbGlzdGluZ3MsIG5vdCB0byBzdG9yZSB0aG91c2FuZHMgb2YgcmVjb3Jkcy4gVGhpcyBpcyBiZWNhdXNlIG9mIHRoZSBkYXRhYmFzZSBtb2RlbCB1c2VkIChFQVYpLiBBbHNvLCBlYWNoIGJpdCBvZiBkYXRhIHlvdSBlbnRlciBpcyBzdG9yZWQgYXMgVEVYVCBkYXRhIHR5cGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBpdCBpcyB2YXJjaGFyLCBib29sZWFuLCB0aW1lc3RhbXAsIGV0Yy4gVGhpcyBpcyBhIHJlc3RyaWN0aW9uIG9mIGEgc2hvcnQgZGV2ZWxvcG1lbnQgdGltZSBmcmFtZS4NCiAgICA8L3A+CQ0KICA8L2Rpdj4JDQogIDxkaXYgaWQ9JnF1b3Q7dXNhZ2VfYyZxdW90Oz4JCQ0KICAgIDxoMz5Vc2FnZTwvaDM+CQkJDQogICAgICA8cD5Zb3UgY2FuIGNvbmZpZ3VyZSAgaGVyZTogQ29udGVudCA+IA0KICAgICAgPC9wPgkJCQ0KICAgIDxwPlBsYWNlIHRoaXMgdGFnIGluIHlvdXIgcGFnZTo8YnIgLz4JDQogICAge30NCiAgICA8L3A+CQkNCiAgICA8ZGl2PgkJCQ0KICAgICAgPGRpdiBzdHlsZT0mcXVvdDtmbG9hdDpsZWZ0OyB3aWR0aDoyMTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IG1hcmdpbi1ib3R0b206MjBweDsmcXVvdDs+CQkJDQogICAgICAgIDxhIHRpdGxlPSJTZXR0aW5nIHRoZSBNb2R1bGUgT3B0aW9ucyIgcmVsPSJseXRlYm94W10iIGhyZWY9Ii9tb2R1bGVzLy9pbWFnZXMvc2NyZWVuc2hvdDEuanBnIj4NCiAgICAgICAgICA8aW1nIHNyYz0mcXVvdDsvbW9kdWxlcy8vaW1hZ2VzL3RodW1iX3NjcmVlbnNob3QxLmpwZyZxdW90OyBhbHQ9JnF1b3Q7U2V0dGluZyB0aGUgTW9kdWxlIE9wdGlvbnMmcXVvdDsgLz48L2E+DQogICAgICA8L2Rpdj4JCQ0KICAgICAgPGRpdiBzdHlsZT0mcXVvdDtmbG9hdDpsZWZ0OyZxdW90Oz4NCiAgICAgICAgQWZ0ZXIgaW5zdGFsbGluZyB0aGUgbW9kdWxlIHRoZSBuZXh0IHRoaW5nIHRvIGRvIGlzIHNldCB0aGUgb3B0aW9ucy4gIAkJCQkNCiAgICAgICAgPG9sPgkJCQkJDQogICAgICAgICAgPGxpPlRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlIGluIHRoZSBtZW51IGNoYW5nZSB0aGUgJiMwMzk7TW9kdWxlIEZyaWVuZGx5IE5hbWUmIzAzOTsuDQogICAgICAgICAgPC9saT4JCQkJCQ0KICAgICAgICAgIDxsaT5UbyBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGl0ZW0gdGFiIGNoYW5nZSB0aGUgJiMwMzk7SXRlbSBQbHVyYWwmIzAzOTsuDQogICAgICAgICAgPC9saT4JCQkJDQogICAgICAgIDwvb2w+CQkNCiAgICAgIDwvZGl2Pg0KICAgICAgPGJyIHN0eWxlPSZxdW90O2NsZWFyOmJvdGg7JnF1b3Q7IC8+CQkNCiAgICA8L2Rpdj4JCQ0KICAgIDxkaXY+DQogICAgICA8ZGl2IHN0eWxlPSZxdW90O2Zsb2F0OmxlZnQ7IHdpZHRoOjIxMHB4OyBtYXJnaW4tcmlnaHQ6MTBweDsgbWFyZ2luLWJvdHRvbToyMHB4OyZxdW90Oz4NCiAgICAgICAgPGEgdGl0bGU9IlNldHRpbmcgdGhlIEZpZWxkIERlZmluaXRpb25zIiByZWw9Imx5dGVib3hbXSIgaHJlZj0iL21vZHVsZXMvL2ltYWdlcy9BZGRfRmllbGREZWZfVGFiOC5wbmciPg0KICAgICAgICAgIDxpbWcgc3JjPSZxdW90Oy9tb2R1bGVzLy9pbWFnZXMvdGh1bWJfQWRkX0ZpZWxkRGVmX1RhYjgucG5nJnF1b3Q7IGFsdD0mcXVvdDtTZXR0aW5nIHRoZSBGaWVsZCBEZWZpbml0aW9ucyZxdW90OyAvPjwvYT4NCiAgICAgIDwvZGl2Pg0KICAgICAgPGRpdiBzdHlsZT0mcXVvdDtmbG9hdDpsZWZ0OyZxdW90Oz4NCiAgICAgICAgTmV4dCAtIHNldCB0aGUgRmllbGQgRGVmaW5pdGlvbnMuIA0KICAgICAgICA8b2w+DQogICAgICAgICAgPGxpPkNob29zZSBmcm9tICYjMDM5O1RleHQgSW5wdXQmIzAzOTssICYjMDM5O0NoZWNrYm94JiMwMzk7LCAmIzAzOTtUZXh0IEFyZWEmIzAzOTssICYjMDM5O1NlbGVjdCBEYXRlJiMwMzk7LCAmIzAzOTtVcGxvYWQgRmlsZSYjMDM5OywgJiMwMzk7U2VsZWN0IEZpbGUmIzAzOTsgJmFtcDsgJiMwMzk7RHJvcGRvd24mIzAzOTsuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgICA8bGk+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGluIHRoZSAmIzAzOTtleHRyYSYjMDM5OyBmaWVsZC4gU2VlIHRoZSAmIzAzOTtGaWVsZCBEZWZpbml0aW9ucyYjMDM5OyB0YWIgZm9yIGEgbGlzdC4NCiAgICAgICAgICA8L2xpPg0KICAgICAgICAgIDxsaT5FYWNoIGl0ZW0gaW4gZWFjaCBsaXN0IGhhcyB0aHJlZSBkZWZhdWx0IGZpZWxkcy4gQWxsIEZpZWxkIERlZmluaXRpb25zIHNldCBoZXJlIGFyZSBhZGRpdGlvbmFsIHRvIHRoZW0uDQogICAgICAgICAgPC9saT4NCiAgICAgICAgPC9vbD4NCiAgICAgIDwvZGl2PjxiciBzdHlsZT0mcXVvdDtjbGVhcjpib3RoOyZxdW90OyAvPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICA8ZGl2IHN0eWxlPSZxdW90O2Zsb2F0OmxlZnQ7IHdpZHRoOjIxMHB4OyBtYXJnaW4tcmlnaHQ6MTBweDsgbWFyZ2luLWJvdHRvbToyMHB4OyZxdW90Oz4NCiAgICAgICAgPGEgdGl0bGU9IlNldHRpbmcgdGhlIGxpc3QgY2F0ZWdvcmllcyIgcmVsPSJseXRlYm94W10iIGhyZWY9Ii9tb2R1bGVzLy9pbWFnZXMvQ2F0ZWdvcmllc19UYWI4LnBuZyI+DQogICAgICAgICAgPGltZyBzcmM9JnF1b3Q7L21vZHVsZXMvL2ltYWdlcy90aHVtYl9DYXRlZ29yaWVzX1RhYjgucG5nJnF1b3Q7IGFsdD0mcXVvdDtTZXR0aW5nIHRoZSBsaXN0IGNhdGVnb3JpZXMmcXVvdDsgLz48L2E+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgc3R5bGU9JnF1b3Q7ZmxvYXQ6bGVmdDsmcXVvdDs+DQogICAgICAgIFRoZXJlIGlzIGEgc2luZ2xlIGNhdGVnb3J5IGJ5IGRlZmF1bHQgY2FsbGVkICYjMDM5O0dlbmVyYWwmIzAzOTsuIFRoaXMgY2FuIGJlIHJlbmFtZWQgYW5kIGFkZGl0aW9uYWwgQ2F0ZWdvcmllcyBjYW4gYmUgYWRkZWQuIA0KICAgICAgPC9kaXY+DQogICAgICA8YnIgc3R5bGU9JnF1b3Q7Y2xlYXI6Ym90aDsmcXVvdDsgLz4NCiAgICA8L2Rpdj4NCiAgICA8ZGl2Pg0KICAgICAgPGRpdiBzdHlsZT0mcXVvdDtmbG9hdDpsZWZ0OyB3aWR0aDoyMTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IG1hcmdpbi1ib3R0b206MjBweDsmcXVvdDs+DQogICAgICAgIDxhIHRpdGxlPSJBZGRpbmcgTGlzdCBJdGVtcyIgcmVsPSJseXRlYm94W10iIGhyZWY9Ii9tb2R1bGVzLy9pbWFnZXMvQWRkX0l0ZW1fVGFiOC5wbmciPg0KICAgICAgICAgIDxpbWcgc3JjPSZxdW90Oy9tb2R1bGVzLy9pbWFnZXMvdGh1bWJfQWRkX0l0ZW1fVGFiOC5wbmcmcXVvdDsgYWx0PSZxdW90O0FkZGluZyBMaXN0IEl0ZW1zJnF1b3Q7IC8+PC9hPg0KICAgICAgPC9kaXY+DQogICAgICA8ZGl2IHN0eWxlPSZxdW90O2Zsb2F0OmxlZnQ7JnF1b3Q7Pg0KICAgICAgICBOb3cgd2UgbW92ZSBvbiB0byB0aGUgSXRlbSBsaXN0IGl0c2VsZi4gSW4gdGhpcyBleGFtcGxlIGl0IHNheXMgJiMwMzk7QWRkIEJveCYjMDM5OywgdGhpcyB3YXMgcmVuYW1lZCBpbiB0aGUgJiMwMzk7T3B0aW9ucyYjMDM5OyB0YWIuIA0KICAgICAgICA8b2w+DQogICAgICAgICAgPGxpPlRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgZGVmYXVsdCAmIzAzOTtUaXRsZSYjMDM5OyBmaWVsZC4NCiAgICAgICAgICA8L2xpPg0KICAgICAgICAgIDxsaT5UaGUgJiMwMzk7Q2F0ZWdvcnkmIzAzOTsgZHJvcGRvd24gaXMgYWxzbyBhIGRlZmF1bHQgZmllbGQsIGFuZCBpZiB1bmNoYW5nZWQsIHdpbGwgYmUgc2V0IHRvICYjMDM5O0dlbmVyYWwmIzAzOTsuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgICA8bGk+VGhlIHRoaXJkIGRlZmF1bHQgZmllbGQgaXMgdGhlIGNoZWNrYm94IGNhbGxlZCAmIzAzOTtBY3RpdmUmIzAzOTsuIFRoaXMgYWxsb3dzIHlvdSB0byB0b2dnbGUgYSBsaXN0IGVudHJ5IHdpdGhvdXQgZGVsZXRpbmcgaXQuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgPC9vbD4NCiAgICAgIDwvZGl2PjxiciBzdHlsZT0mcXVvdDtjbGVhcjpib3RoOyZxdW90OyAvPg0KICAgIDwvZGl2Pg0KICAgIDxkaXYgc3R5bGU9JnF1b3Q7Y2xlYXI6Ym90aDsmcXVvdDsgLz4NCiAgICA8L2Rpdj4NCiAgPC9kaXY+DQogIDxkaXYgaWQ9JnF1b3Q7cGVybWlzc2lvbnNfYyZxdW90Oz48aDM+UGVybWlzc2lvbnM8L2gzPg0KICAgIDxwPllvdSBjYW4gc3BlY2lmeSB0aGUgZm9sbG93aW5nIHBlcm1pc3Npb25zIHVuZGVyIFVzZXJzICZhbXA7IEdyb3VwcyA+IEdyb3VwIFBlcm1pc3Npb25zDQogICAgPC9wPg0KICAgIDx1bD4NCiAgICAgIDxsaT46IE1vZGlmeSBJdGVtcw0KICAgICAgPC9saT4NCiAgICAgIDxsaT46IE1vZGlmeSBDYXRlZ29yaWVzDQogICAgICA8L2xpPg0KICAgICAgPGxpPjogTW9kaWZ5IE9wdGlvbnMNCiAgICAgIDwvbGk+DQogICAgPC91bD4NCgk8cD5UbyBhbGxvdyBub24tYWRtaW4gdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBwbGVhc2UgZ28gdG8gRXh0ZW5zaW9ucyA+IEdCRmlsZVBpY2tlciBhbmQgdGljayB0aGF0IGZpcnN0IGNoZWNrYm94ICZxdW90O1Nob3cgZmlsZW1hbmFnZW1lbnQgb3B0aW9ucyZxdW90Oy48L3A+DQogIDwvZGl2Pg0KICA8ZGl2IGlkPSZxdW90O2ZpZWxkX2MmcXVvdDs+PGgzPkZpZWxkIERlZmluaXRpb25zPC9oMz4NCiAgICA8cD5UaGUgZmlyc3QgdGhpbmcgeW91IHNob3VsZCBjb25maWd1cmUgYXJlIHlvdXIgZmllbGQgZGVmaW5pdGlvbnMuDQogICAgPC9wPg0KICAgIDxwPkZvciBlYWNoIGZpZWxkIGRlZmluaXRpb24sIHlvdSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBpbiB0aGUgJnF1b3Q7ZXh0cmEmcXVvdDsgZmllbGQuDQogICAgPC9wPg0KICAgIDx1bD4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+c2l6ZVsyMF0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBUZXh0IElucHV0LCBTZWxlY3QgRGF0ZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPiAgICAgICAgDQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPm1heF9sZW5ndGhbMjBdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVGV4dCBJbnB1dCwgVGV4dCBBcmVhLCBTZWxlY3QgRGF0ZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPiAgICAgICAgDQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPnd5c2l3eWdbMV0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVGV4dCBBcmVhDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBrZXk9dmFsdWUsLi4uPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IERyb3Bkb3duDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+YWxsb3dbcGRmLGdpZixwbmcsanBlZyxqcGddDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IGV4dGVuc2lvbiwuLi4gKGtlZXAgbG93ZXJjYXNlKTxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEaXJlY3RvcnkgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gDQogICAgICAgIDxjb2RlPiRjb25maWdbJiMwMzk7dXBsb2Fkc19wYXRoJiMwMzk7XQ0KICAgICAgICA8L2NvZGU+LiBObyBzbGFzaCBhdCB0aGUgZW5kLiA8Y29kZT57JGl0ZW1faWR9IGFuZCB7JGl0ZW1fYWxpYXN9PC9jb2RlPiB3aWxsIGJlIHJlcGxhY2VkLjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5leGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX10NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogcHJlZml4LC4uLjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5kYXRlZm9ybWF0W2RkL21tL3l5XQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEYXRlIGZvcm1hdCB1c2VkIGJ5IHRoZSBqUXVlcnkgZGF0ZXBpY2tlci4gVHJ5IGdvb2dsaW5nICYjMDM5O2pxdWVyeSBmb3JtYXREYXRlJiMwMzk7PGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFNlbGVjdCBEYXRlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4NCgkgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5maWxlYnJvd3NlclsxXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPg0KCQk8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gZmlsZWJyb3dzZXIgbW9kZSBpbnN0ZWFkIG9mIGRlZmF1bHQgZHJvcGRvd24gbW9kZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+DQogICAgPC91bD4NCiAgICA8cD5Zb3UgY2FuIHNwZWNpZnkgbXVsdGlwbGUgaW5zdHJ1Y3Rpb25zIHNlcGFyYXRlZCBieSBhIHNlbWljb2xvbiAoDQogICAgICA8Y29kZT47DQogICAgICA8L2NvZGU+KSwgZm9yIGV4YW1wbGU6DQogICAgPC9wPg0KICAgIDxwPg0KICAgICAgPGNvZGU+YWxsb3dbcGRmXTtkaXJbL2RvY3MvcGRmXQ0KICAgICAgPC9jb2RlPg0KICAgIDwvcD4NCiAgICANCiAgICA8cD4NCiAgICAgICAgPGgzPkZpZWxkIERlZmluaXRpb25zIGJ5IHR5cGU8L2gzPg0KICAgIDwvcD4NCiAgICAgICAgDQogICAgPHVsPg0KICAgICAgICA8bGk+VGV4dCBJbnB1dDogPGNvZGU+c2l6ZVsyMF07bWF4X2xlbmd0aFsyMF08L2NvZGU+PC9saT4NCiAgICAgICAgPGxpPkNoZWNrYm94OiA8Y29kZT4tPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5UZXh0IEFyZWE6IDxjb2RlPm1heF9sZW5ndGhbMjBdO3d5c2l3eWdbMV08L2NvZGU+PC9saT4NCiAgICAgICAgPGxpPlNlbGVjdCBEYXRlOiA8Y29kZT5zaXplWzIwXTttYXhfbGVuZ3RoWzIwXTtkYXRlZm9ybWF0W2RkL21tL3l5XTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+VXBsb2FkIEZpbGU6IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddO2RpclsvcGF0aC90by9kaXJdO2V4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+U2VsZWN0IEZpbGU6IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddO2RpclsvcGF0aC90by9kaXJdO2V4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTtmaWxlYnJvd3NlclsxXTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+RHJvcGRvd246IDxjb2RlPm9wdGlvbnNbYXBwbGU9QXBwbGUsYmFuYW5hPUJhbmFuYV08L2NvZGU+PC9saT4NCiAgICA8L3VsPg0KICAgIA0KICA8L2Rpdj4NCiAgPGRpdiBpZD0mcXVvdDtjYXRlZ29yaWVzX2MmcXVvdDs+DQogICAgPGgzPkNhdGVnb3JpZXM8L2gzPg0KICAgIDxwPk9ubHkgc2luZ2xlIGxldmVsIGNhdGVnb3JpZXMgYXJlIHN1cHBvcnRlZCBhdCB0aGlzIHRpbWUuDQogICAgPC9wPg0KICA8L2Rpdj4NCiAgPGRpdiBpZD0mcXVvdDt0ZW1wbGF0ZXNfYyZxdW90Oz4NCiAgICA8aDM+VGVtcGxhdGVzPC9oMz4NCiAgICA8cD5JZiB5b3UgYXJlIG5vdCBzdXJlIHdoYXQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGUgdG8gdXNlIGluIHlvdXIgdGVtcGxhdGVzLCB0cnkgdGhlIGRlYnVnIHRlbXBsYXRlOg0KICAgIDwvcD4NCiAgICA8cD57IHN1bW1hcnl0ZW1wbGF0ZT0mIzAzOTtkZWJ1ZyYjMDM5O30NCiAgICA8L3A+DQogICAgPHA+WW91IGNhbiBhY2Nlc3MgYW55IGZpZWxkIGRpcmVjdGx5IHdoZW4gbG9vcGluZyB0aHJvdWdoIGl0ZW1zIHVzaW5nIGl0cyBhbGlhcywgZm9yIGV4YW1wbGUsIHRvIGlmIHlvdSBjcmVhdGVkIGEgZmllbGQgZGVmaW5pdGlvbiB3aXRoIGFuIGFsaWFzICZxdW90O3Bvc2l0aW9uJnF1b3Q7LCB5b3UgY2FuIGRvOg0KICAgIDwvcD4NCjxwcmU+DQp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWl0ZW19DQogICAgeyRpdGVtLT5maWVsZGRlZnMucG9zaXRpb24udmFsdWV8Y21zX2VzY2FwZX08YnIgLz4NCnsvZm9yZWFjaH0NCjwvcHJlPg0KICAgIDxwPkJlc2lkZXMsIHlvdSBjYW4gbG9vcCB0aHJvdWdoIGNhdGVnb3JpZXMgaW4gdGhlIHN1bW1hcnkgdGVtcGxhdGUganVzdCBhcyB3ZWxsIGFzIGxvb3BpbmcgdGhyb3VnaCBpdGVtczo8L3A+DQo8cHJlPg0Ke2ZvcmVhY2ggZnJvbT0kY2F0ZWdvcmllcyBpdGVtPWNhdGVnb3J5fQ0KICAgIHskY2F0ZWdvcnktPm5hbWV9PGJyIC8+DQoJeyRjYXRlZ29yeS0+YWxpYXN9PGJyIC8+DQoJeyRjYXRlZ29yeS0+aWR9PGJyIC8+DQp7L2ZvcmVhY2h9DQo8L3ByZT4NCiAgPC9kaXY+DQogIDxkaXYgaWQ9JnF1b3Q7ZHVwbGljYXRpbmdfYyZxdW90Oz4NCiAgICA8aDM+RHVwbGljYXRpbmcgdGhpcyBtb2R1bGU8L2gzPg0KICAgIDxwPlRoaXMgbW9kdWxlIHdhcyBtYWRlIHRvIGJlIGVhc2lseSBkdXBsaWNhdGVkLg0KICAgIDwvcD5UbyBkdXBsaWNhdGUgdGhpcyBtb2R1bGUsIGZvbGxvdyB0aGVzZSBzdGVwcyBCRUZPUkUgaW5zdGFsbGluZyB0aGUgbW9kdWxlOg0KICAgIDwvcD4NCiAgICA8b2w+ICAgIA0KICAgICAgPGxpPlJlbmFtZSB0aGUgZGlyZWN0b3J5ICZxdW90OzxiPkxpc3RJdDwvYj4mcXVvdDsNCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPlJlbmFtZSAmcXVvdDtjbGFzcyA8Yj5MaXN0SXQ8L2I+IGV4dGVuZHMgQ01TTW9kdWxlJnF1b3Q7IGluc2lkZSBMaXN0SXQubW9kdWxlLnBocA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+UmVuYW1lICZxdW90OzxiPkxpc3RJdDwvYj4ubW9kdWxlLnBocCZxdW90Ow0KICAgICAgPC9saT4NCiAgICA8L29sPg0KICAgIDxwPk1ha2Ugc3VyZSB5b3UgZm9sbG93IHRoZSBDTVNNUyBtb2R1bGUgbmFtaW5nIGNvbnZlbnRpb25zLCBhLXogd2l0aCBubyBwdW5jdHVhdGlvbiBjaGFyYWN0ZXJzIG9yIHNwYWNlcyB0byBiZSBzYWZlIDopDQogICAgPC9wPg0KICAgIDxwPllvdSBjYW4gYWx3YXlzIGNoYW5nZSB0aGUgbW9kdWxlIGZyaWVuZGx5IG5hbWUgb25jZSBpbnN0YWxsZWQgdW5kZXIgJnF1b3Q7T3B0aW9ucyZxdW90OyAoQ29udGVudCA+ICkuIFRvIGNoYW5nZSB0aGUgaWNvbiwgcmVwbGFjZSAvbW9kdWxlcy8vaW1hZ2VzL2ljb24uZ2lmLg0KICAgIDwvcD4NCiAgPC9kaXY+DQo8L2Rpdj4nOwokbGFuZ1snaGVscF9wYXJhbV9hY3Rpb24nXSA9ICdPdmVycmlkZSB0aGUgZGVmYXVsdCBhY3Rpb24uIFBvc3NpYmxlIHZhbHVlcyBhcmU6DQo8dWw+DQo8bGk+JnF1b3Q7ZGVmYXVsdCZxdW90OyAtIHRvIGRpc3BsYXkgdGhlIHN1bW1hcnkgdmlldy48L2xpPg0KPGxpPiZxdW90O2RldGFpbCZxdW90OyAtIHRvIGRpc3BsYXkgYSBzcGVjaWZpZWQgZW50cnkgaW4gZGV0YWlsIG1vZGUuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2FsbCddID0gJ1Nob3cgYWxsIGl0ZW1zLCBpcnJlc3BlY3RpdmUgb2YgZW5kIGRhdGUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IHRoZSBjYXRlZ29yeSBhbGlhcyB0byBkaXNwbGF5IGl0ZW1zIG9ubHkgZnJvbSB0aGlzIGNhdGVnb3J5Lic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVGhlIGRldGFpbCB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnVGhlIHN1bW1hcnkgdGVtcGxhdGUgeW91IHdpc2ggdG8gdXNlJzsKJGxhbmdbJ2hlbHBfcGFyYW1fb3JkZXJieSddID0gJ1lvdSBjYW4gb3JkZXIgYnkgYW55IG9mIHRoZSBmb2xsb3dpbmcgY29sdW1uczogaXRlbV9pZCwgaXRlbV90aXRsZSwgaXRlbV9wb3NpdGlvbiwgY2F0ZWdvcnlfaWQsIGNhdGVnb3J5X25hbWUsIGNhdGVnb3J5X3Bvc2l0aW9uLjxiciAvPg0KPHVsPg0KPGxpPkZvciBleGFtcGxlOjxiciAvPg0Kb3JkZXJieT0mIzAzOTtjYXRlZ29yeV9uYW1lLCBpdGVtX3RpdGxlJiMwMzk7PC9saT4NCjxsaT5Zb3UgY2FuIGFsc28gc3BlY2lmeSBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBmb3IgYW55IGNvbHVtbiwgZm9yIGV4YW1wbGU6PGJyIC8+DQpvcmRlcmJ5PSYjMDM5O2NhdGVnb3J5X25hbWV8YXNjLCBpdGVtX3RpdGxlfGRlc2MmIzAzOTs8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHBhZ2UnXSA9ICdQYWdlIHRvIGRpc3BsYXkgaXRlbSBkZXRhaWxzIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBkZXRhaWxzIHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gc3VtbWFyeS4nOwokbGFuZ1snaGVscF9wYXJhbV9pdGVtJ10gPSAnVGhpcyBwYXJhbWV0ZXIgaXMgb25seSBhcHBsaWNhYmxlIHRvIHRoZSBkZXRhaWwgdmlldy4gSXQgYWxsb3dzIHNwZWNpZnlpbmcgd2hpY2ggaXRlbSB0byBkaXNwbGF5IGluIGRldGFpbCBtb2RlLiBNdXN0IGJlIGFuIGl0ZW0gYWxpYXMuJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTUzNjg0OTExNS0xMzA3OTgzNDk1MjEwJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuOTAwNDA1NDc1LjEzMTUzNDQ1NDYuMTMxNTM0NDU0Ni4xMzE1MzQ0NTQ2LjEnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMzE1MzQ0NTQ2LjEuMS51dG1jc3I9KGRpcmVjdCl8dXRtY2NuPShkaXJlY3QpfHV0bWNtZD0obm9uZSknOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEzMTUzNDQ1NDYnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludmFsaWRfY2hhcmFjdGVycyddID0gJ0thcmFrdGVycywgem9hbHM6ICVzIHppam4gbmlldCB0b2VnZXN0YWFuIGluIGhldCB2ZWxkOiAlcyc7CiRsYW5nWydpdGVtJ10gPSAnSXRlbSAnOwokbGFuZ1snaXRlbXMnXSA9ICdJdGVtcyAnOwokbGFuZ1snZmllbGRkZWYnXSA9ICdWZWxkZGVmaW5pdGllJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ1ZlbGRkZWZpbml0aWVzJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnU2phYmxvb24nOwokbGFuZ1sndGVtcGxhdGVzJ10gPSAnU2phYmxvbmVuJzsKJGxhbmdbJ2NhdGVnb3J5J10gPSAnQ2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdDYXRlZ29yaSZldW1sO24nOwokbGFuZ1snb3B0aW9uJ10gPSAnT3B0aWUnOwokbGFuZ1snb3B0aW9ucyddID0gJ09wdGllcyc7CiRsYW5nWydiYWNrJ10gPSAnR2EgZWVuIHBhZ2luYSB0ZXJ1Zyc7CiRsYW5nWydpdGVtX3RpdGxlJ10gPSAnVGl0ZWwnOwokbGFuZ1sncHJvbXB0X2l0ZW1fdGl0bGUnXSA9ICdJdGVtIHRpdGVsJzsKJGxhbmdbJ2FjdGl2ZSddID0gJ0FjdGllZic7CiRsYW5nWydjcmVhdGVfdGltZSddID0gJ0RhdHVtIGFhbmdlbWFha3QnOwokbGFuZ1sndGltZV9jb250cm9sJ10gPSAnR2VicnVpayB0aWpkc2JlaGVlcic7CiRsYW5nWydzdGFydF90aW1lJ10gPSAnU3RhcnR0aWpkJzsKJGxhbmdbJ2VuZF90aW1lJ10gPSAnRWluZHRpamQnOwokbGFuZ1snaXRlbV90aXRsZV9lbXB0eSddID0gJ0l0ZW0gdGl0ZWwgaXMgbGVlZyc7CiRsYW5nWydyZXF1aXJlZF9maWVsZF9lbXB0eSddID0gJ1ZlcnBsaWNodCB2ZWxkIGlzIGxlZWcnOwokbGFuZ1sndG9vX2xvbmcnXSA9ICdWZWxkd2FhcmRlIG92ZXJzY2hyaWpkdCBtYXhpbWFhbCB0b2VnZXN0YW5lIGxlbmd0ZSc7CiRsYW5nWydhcHByb3ZlJ10gPSAnWmV0IFN0YXR1cyBvcCAmIzAzOTtBY3RpZWYmIzAzOTsnOwokbGFuZ1sncmV2ZXJ0J10gPSAnWmV0IFN0YXR1cyBvcCAmIzAzOTtJbmFjdGllZiYjMDM5Oyc7CiRsYW5nWydzdWJtaXRfb3JkZXInXSA9ICdTbGEgdm9sZ29yZGUgb3AnOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnVmVyd2lqZGVyIGdlc2VsZWN0ZWVyZGUgJXMnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVtdWx0aXBsZSddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBhbGxlIGRlemUgJXMgd2lsdCB2ZXJ3aWpkZXJlbj8nOwokbGFuZ1snc2VsZWN0X2FsbCddID0gJ1NlbGVjdGVlciBhbGxlcyc7CiRsYW5nWydlcnJvcl9zdGFydGdyZWF0ZXJlbmQnXSA9ICdTdGFydGRhdHVtIGlzIGxhdGVyIGRhbiBkZSBlaW5kZGF0dW0uJzsKJGxhbmdbJ2l0ZW1fYWxpYXNfZXhpc3RzJ10gPSAnQWxpYXMgdm9vciBkaXQgaXRlbSBiZXN0YWF0IGFsIHJlZWRzLiBFZW4gYWxpYXMgbW9ldCB1bmllayB6aWpuLic7CiRsYW5nWydyZXR1cm5fdXJsJ10gPSAnVGVydWcnOwokbGFuZ1sncGF0aGNvbnRhaW5zdmFycyddID0gJ0RpdCB2ZWxkIGthbiB3b3JkZW4gYmV3ZXJrdCBuYWRhdCB1IGVlcnN0IGRlemUgJXMgaGVlZnQgb3BnZXNsYWdlbic7CiRsYW5nWydlZGl0ZmllbGRkZWYnXSA9ICdCZXdlcmsgdmVsZGRlZmluaXRpZSc7CiRsYW5nWydmaWVsZGRlZl9uYW1lJ10gPSAnTmFhbSc7CiRsYW5nWydmaWVsZGRlZl9oZWxwJ10gPSAnSGFuZGlnZSB0aXAnOwokbGFuZ1snZmllbGRkZWZfdHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ2ZpZWxkZGVmX2RlcHMnXSA9ICdNb2R1bGUgQWZoYW5rZWxpamtoZWRlbic7CiRsYW5nWydmaWVsZGRlZl9kZXBzX21pc3NpbmcnXSA9ICdPbmUgb3IgbW9yZSBtb2R1bGUgZGVwZW5kZW5jaWVzIG1pc3NpbmcsIHBsZWFzZSBpbnN0YWxsIGFsbCByZXF1aXJlZCBtb2R1bGVzIGluIG9yZGVyIHRvIHN0YXJ0IHVzaW5nIHRoaXMgZmllbGQuJzsKJGxhbmdbJ2ZpZWxkZGVmX3NjYW4nXSA9ICdTY2FuIEZpZWxkIERlZmluaXRpb25zJzsKJGxhbmdbJ2ZpZWxkZGVmX3NjYW5uZWQnXSA9ICdGaWVsZCBEZWZpbml0aW9ucyBzY2FubmVkJzsKJGxhbmdbJ2ZpZWxkZGVmX3R5cGVfbm90c2V0J10gPSAnRmllbGQgRGVmaW5pdGlvbnMgdHlwZSBpcyBub3Qgc2V0JzsKJGxhbmdbJ2ZpZWxkZGVmX2ZyaWVuZGx5dHlwZSddID0gJ0ZyaWVuZGx5IFR5cGUnOwokbGFuZ1snZmllbGRkZWZfb3JpZ2luYXRvciddID0gJ09yaWdpbmF0b3InOwokbGFuZ1snZmllbGRkZWZfbWF4X2xlbmd0aCddID0gJ01heGltYWxlIGxlbmd0ZSc7CiRsYW5nWydmaWVsZGRlZl9yZXF1aXJlZCddID0gJ1ZlcnBsaWNodCc7CiRsYW5nWydyZWdpc3RlcmVkX2ZpZWxkZGVmcyddID0gJ1JlZ2lzdGVyZWQgRmllbGQgRGVmaW5pdGlvbnMnOwokbGFuZ1snZmllbGRkZWZfbmFtZV9lbXB0eSddID0gJ05hYW0gdmFuIGRlIHZlbGRkZWZlbml0aWUgaXMgbmlldCBvcGdlZ2V2ZW4nOwokbGFuZ1snZmllbGRkZWZfbmFtZV9leGlzdHMnXSA9ICdOYWFtIHZhbiBkZSB2ZWxkZGVmaW5pdGllIGJlc3RhYXQgYWwnOwokbGFuZ1snZmllbGRkZWZfYWxpYXNfZXhpc3RzJ10gPSAnQWxpYXMgdm9vciBkZXplIHZlbGRkZWZlbml0aWUgYmVzdGFhdCBhbCByZWVkcy4gRWVuIGFsaWFzIG1vZXQgdW5pZWsgemlqbi4nOwokbGFuZ1snaW52YWxpZCddID0gJ1ZlbGR3YWFyZGUgaXMgb25nZWxkaWcnOwokbGFuZ1snc3RhdHVzX3JlcXVpcmVkJ10gPSAnWmV0IHN0YXR1cyBvcCAmIzAzOTt2ZXJwbGljaHQmIzAzOTsnOwokbGFuZ1snc3RhdHVzX29wdGlvbmFsJ10gPSAnWmV0IHN0YXR1cyBvcCAmIzAzOTtvcHRpb25lZWwmIzAzOTsnOwokbGFuZ1snaXNfZGVmYXVsdCddID0gJ0lzIGluZ2VzdGVsZCBhbHMgJiMwMzk7c3RhbmRhYXJkJiMwMzk7JzsKJGxhbmdbJ3N0YXR1c19kZWZhdWx0J10gPSAnSW5zdGVsbGVuIGFscyAmIzAzOTtzdGFuZGFhcmQmIzAzOTsnOwokbGFuZ1snaGVscHRleHRfdGl0bGUnXSA9ICdNb2dlbGlqa2UgdmVsZGRlZmluaXRpZSBpbnN0cnVjdGllcyB2b29yIGV4dHJhIHZlbGQ6JzsKJGxhbmdbJ2ZpZWxkZGVmX1RleHRJbnB1dCddID0gJ1Rla3N0aW52b2VyJzsKJGxhbmdbJ2ZpZWxkZGVmX0NoZWNrYm94J10gPSAnVmlua3Zha2plJzsKJGxhbmdbJ2ZpZWxkZGVmX1RleHRBcmVhJ10gPSAnVGVrc3RydWltdGUnOwokbGFuZ1snZmllbGRkZWZfU2VsZWN0RGF0ZSddID0gJ1NlbGVjdGVlciBEYXR1bSc7CiRsYW5nWydmaWVsZGRlZl9HQkZpbGVQaWNrZXInXSA9ICdHQkZpbGVQaWNrZXIgVXBsb2FkIEZpbGUnOwokbGFuZ1snZmllbGRkZWZfR0JGaWxlUGlja2VyX2ZpbGVicm93c2VyJ10gPSAnRW5hYmxlIEZpbGVicm93c2VyJzsKJGxhbmdbJ2ZpZWxkZGVmX0dCRmlsZVBpY2tlcl9pbWFnZSddID0gJ0V4cGVjdGVkIHRvIGJlIGltYWdlJzsKJGxhbmdbJ2ZpZWxkZGVmX0dCRmlsZVBpY2tlcl9jcmVhdGVfZGlycyddID0gJ0FsbG93IGRpcmVjdG9yeSBjcmVhdGlvbic7CiRsYW5nWydmaWVsZGRlZl9HQkZpbGVQaWNrZXJfZGVsZXRlJ10gPSAnVmVyd2lqZGVyZW4gdG9lc3RhYW4nOwokbGFuZ1snZmllbGRkZWZfR0JGaWxlUGlja2VyX3Nob3dfc3ViZGlycyddID0gJ0FsbG93IHN1YiBkaXJlY3Rvcmllcyc7CiRsYW5nWydmaWVsZGRlZl9Ecm9wZG93biddID0gJ0Ryb3Bkb3duICc7CiRsYW5nWydmaWVsZGRlZl9HYWxsZXJ5RHJvcGRvd24nXSA9ICdHYWxsZXJ5IERyb3Bkb3duICc7CiRsYW5nWydmaWVsZGRlZl9Db250ZW50UGFnZXMnXSA9ICdDb250ZW50IFBhZ2luYSYjMDM5O3MnOwokbGFuZ1snZmllbGRkZWZfU2VsZWN0RmlsZSddID0gJ1NlbGVjdGVlciBiZXN0YW5kJzsKJGxhbmdbJ2ZpZWxkc2V0X3N0YXJ0J10gPSAnU3RhcnQgVmVsZGdyb2VwJzsKJGxhbmdbJ2ZpZWxkc2V0X2VuZCddID0gJ0VpbmQgVmVsZGdyb2VwJzsKJGxhbmdbJ2ZpZWxkZGVmX2FsbG93X2hlbHAnXSA9ICdTcGVjaWZ5IGEgY29tbWEgc2VwcmF0ZWQgbGlzdCBvZiBmaWxlIGV4dGVuc2lvbnMgdGhhdCBhcmUgYWxsb3dlZC4gRm9yIGV4YW1wbGU6IHBkZixnaWYsanBlZyxqcGcgKGtlZXAgbG93ZXJjYXNlKSc7CiRsYW5nWydmaWVsZGRlZl9kaXJfaGVscCddID0gJ0RpcmVjdG9yeSBwYXRoIHRoYXQgd2lsbCBiZSBhcHBlbmRlZCB0byAkY29uZmlnWyYjMDM5O3VwbG9hZHNfdXJsJiMwMzk7XSAuIE5vIHNsYXNoIGF0IHRoZSBlbmQuIHskaXRlbV9pZH0gYW5kIHskaXRlbV9hbGlhc30gd2lsbCBiZSByZXBsYWNlZC4nOwokbGFuZ1snZmllbGRkZWZfZXhjbHVkZV9wcmVmaXhfaGVscCddID0gJ1NwZWNpZnkgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgcHJlZml4ZXMgdG8gZXhjbHVkZSBmaWxlcyB0aGF0IHN0YXJ0cyB3aXRoIHRoZSBzZXQgcHJlZml4LiBGb3IgZXhhbXBsZTogdGh1bWJfLCBmb29fJzsKJGxhbmdbJ2ZpZWxkZGVmX2Ryb3Bkb3duX2hlbHAnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIEZvciBleGFtcGxlOiBCYW5hbmE9YmFuYW5hJzsKJGxhbmdbJ2ZpZWxkZGVmX3NpemVfaGVscCddID0gJ1NwZWNpZnkgc2l6ZSBvZiBpbnB1dCBmaWVsZC4gRm9yIGV4YW1wbGU6IDIwJzsKJGxhbmdbJ2ZpZWxkZGVmX21heF9sZW5naHRfaGVscCddID0gJ1NwZWNpZnkgbWF4aW11bSBsZW5naHQgb2YgdGhlIGZpZWxkLiBGb3IgZXhhbXBsZTogMjU1JzsKJGxhbmdbJ2ZpZWxkZGVmX2RhdGVfZm9ybWF0X2hlbHAnXSA9ICdTcGVjaWZ5IGRhdGUgZm9ybWF0IHVzZWQgYnkgalF1ZXJ5IERhdGVwaWNrZXIuIFRyeSBnb29nbGluZyAmIzAzOTtqcXVlcnkgZm9ybWF0RGF0ZSYjMDM5Oy4gRm9yIGV4YW1wbGU6IGRkL21tL3l5JzsKJGxhbmdbJ2ZpZWxkZGVmX3d5c2l3eWdfaGVscCddID0gJ0lmIGNoZWNrZWQsIGEgV1lTSVdZRyBFZGl0b3Igd2lsbCBiZSBlbmFibGVkIGZvciB0aGlzIGZpZWxkLic7CiRsYW5nWydmaWVsZGRlZl9HQkZQX2ZpbGVicm93c2VyX2hlbHAnXSA9ICdCeSBkZWZhdWx0IGEgZHJvcGRvd24gd2lsbCBiZSB1c2VkLiBFbmFibCBmaWxlYnJvd3NlciBpZiB1c2VyIG1heSBicm93c2UgdGhlIGZpbGVzLic7CiRsYW5nWydmaWVsZGRlZl9HQkZQX21lZGlhX3R5cGVfaGVscCddID0gJ0FsbG93cyB5b3UgdG8gc3BlY2lmeSBpbWFnZXMgYXMgbWVkaWEgdHlwZSB0byBiZSBkaXNwbGF5ZWQuIEJ5IGRlZmF1bHQgYWxsIGZpbGVzIHdpbGwgYmUgc2hvd24uJzsKJGxhbmdbJ2ZpZWxkZGVmX0dCRlBfZGVsZXRlX2hlbHAnXSA9ICdJZiBlbmFibGVkIHlvdSBjYW4gZ3JhbnQgZGVsZXRpbmcgZmlsZXMgb3IgZGlyZWN0b3JpZXMgZm9yIHRoaXMgZmllbGQgZXZlbiB0byB1c2VycyB3aXRob3V0IGFwcm9wcmlhdGUgcGVybWlzc2lvbi4nOwokbGFuZ1snZmllbGRkZWZfR0JGUF9jcmVhdGVfZGlyc19oZWxwJ10gPSAnSWYgZW5hYmxlZCB5b3UgY2FuIGdyYW50IGNyZWF0aW9uIG9mIGRpcmVjdG9yaWVzIGZvciB0aGlzIGZpZWxkIGV2ZW4gdG8gdXNlcnMgd2l0aG91dCBhcHJvcHJpYXRlIHBlcm1pc3Npb24uJzsKJGxhbmdbJ2ZpZWxkZGVmX0dCRlBfc2hvd19zdWJkaXJzX2hlbHAnXSA9ICdJZiBlbmFibGVkIHVzZXIgbWF5IGJyb3dzZSBzdWJkaXJlY3Rvcmllcy4nOwokbGFuZ1sndXBsb2FkX2ZpbGVfaGVscHRleHQnXSA9ICc8dWw+DQogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogZXh0ZW5zaW9uIChrZWVwIGxvd2VyY2FzZSk8L2xpPg0KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXTwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IERpcmVjdG9yeSBwYXRoIHRoYXQgd2lsbCBiZSBhcHBlbmRlZCB0byAkY29uZmlnWyYjMDM5O3VwbG9hZHNfdXJsJiMwMzk7XSAuIE5vIHNsYXNoIGF0IHRoZSBlbmQuIHskaXRlbV9pZH0gYW5kIHskaXRlbV9hbGlhc30gd2lsbCBiZSByZXBsYWNlZC48L2xpPg0KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5leGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX108L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBwcmVmaXg8L2xpPg0KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5maWxlYnJvd3NlclsxXTwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIGZpbGVicm93c2VyIG1vZGUgaW5zdGVhZCBvZiBkZWZhdWx0IGRyb3Bkb3duIG1vZGU8L2xpPg0KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5pbWFnZVsxXTwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIHNob3cgdGh1bWJuYWlsIGltYWdlIGluc3RlYWQgb2YgaW5wdXQgZmllbGQuPC9saT4NCiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+Y3JlYXRlX2RpcnNbMV08L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPg0KICAgICAgICBOb3RlOiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyBjcmVhdGluZyBuZXcgZGlyZWN0b3J5LiAoRGVwZW5kcyBvbiB1c2VyIG9yIGdyb3VwIGFzIHdlbGwgYXMgR0JGaWxlUGlja2VyIHBlcm1pc3Npb24pPC9saT4NCiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+ZGVsZXRlWzFdPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4NCiAgICAgICAgTm90ZTogU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgZGVsZXRpbmcgZmlsZXMuIChEZXBlbmRzIG9uIHVzZXIgb3IgZ3JvdXAgYXMgd2VsbCBhcyBHQkZpbGVQaWNrZXIgcGVybWlzc2lvbik8L2xpPiANCiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+c2hvd19zdWJkaXJzWzFdPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4NCiAgICAgICAgTm90ZTogU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgdmlld2luZyBvZiBzdWJkaXJlY3Rvcmllcy4gKERlcGVuZHMgb24gdXNlciBvciBncm91cCBhcyB3ZWxsIGFzIEdCRmlsZVBpY2tlciBwZXJtaXNzaW9uKTwvbGk+ICAgICAgICAgICAgICAgICAgICAgICAgIA0KPC91bD4nOwokbGFuZ1sncmVvcmRlcl9jYXRlZ29yaWVzJ10gPSAnSGVyc2NoaWsgQ2F0ZWdvcmllJmV1bWw7bic7CiRsYW5nWydlZGl0X2NhdGVnb3J5J10gPSAnQmV3ZXJrIGNhdGVnb3JpZSc7CiRsYW5nWydjYXRlZ29yeV9uYW1lJ10gPSAnTmFhbSBjYXRlZ29yaWUnOwokbGFuZ1snY2F0ZWdvcnlfZGVzY3JpcHRpb24nXSA9ICdCZXNjaHJpanZpbmcgY2F0ZWdvcmllJzsKJGxhbmdbJ2NhdGVnb3J5X25hbWVfZW1wdHknXSA9ICdOYWFtIHZhbiBkZSBjYXRlZ29yaWUgaXMgbGVlZyBnZWxhdGVuJzsKJGxhbmdbJ2NhdGVnb3J5X2FsaWFzX2V4aXN0cyddID0gJ0RlIGNhdGVnb3JpZSBiZXN0YWF0IGFsLiBFZW4gYWxpYXMgbW9ldCB1bmllayB6aWpuLic7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGUnXSA9ICdTYW1lbnZhdHRpbmdzc2phYmxvb24nOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJ1NhbWVudmF0dGluZ3NzamFibG9uZW4nOwokbGFuZ1snZGV0YWlsdGVtcGxhdGUnXSA9ICdEZXRhaWxzamFibG9vbic7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZXMnXSA9ICdEZXRhaWxzamFibG9uZW4nOwokbGFuZ1snc2VhcmNodGVtcGxhdGUnXSA9ICdab2VrIFNqYWJsb29uJzsKJGxhbmdbJ3NlYXJjaHRlbXBsYXRlcyddID0gJ1pvZWsgU2phYmxvbmVuJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlJ10gPSAnRmlsdGVyIFNqYWJsb29uJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlcyddID0gJ0ZpbHRlciBTamFibG9uZW4nOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAnQmV3ZXJrIHNqYWJsb29uJzsKJGxhbmdbJ3RlbXBsYXRlX25hbWUnXSA9ICdOYWFtIHNqYWJsb29uJzsKJGxhbmdbJ3RlbXBsYXRlX25hbWVfZW1wdHknXSA9ICdOYWFtIHZhbiBoZXQgc2phYmxvb24gaXMgbGVlZ2dlbGF0ZW4nOwokbGFuZ1sndGVtcGxhdGVfY29udGVudF9lbXB0eSddID0gJ1NqYWJsb29uIGluaG91ZCBpcyBsZWVnJzsKJGxhbmdbJ2RlZmF1bHRfdGVtcGxhdGVzJ10gPSAnU3RhbmRhYXJkIHNqYWJsb25lbic7CiRsYW5nWydtb2R1bGVfb3B0aW9ucyddID0gJ01vZHVsZSBvcHRpZXMnOwokbGFuZ1sndXJsX29wdGlvbnMnXSA9ICdVUkwgb3B0aWVzJzsKJGxhbmdbJ3Byb21wdF9mcmllbmRseW5hbWUnXSA9ICdWcmllbmRlbGlqa2UgbmFhbSBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2FkbWluc2VjdGlvbiddID0gJ01vZHVsZSBBZG1pbiBTZWN0aWUnOwokbGFuZ1sncHJvbXB0X2l0ZW1fc2luZ3VsYXInXSA9ICdFbmtlbHZvdWRpZyBpdGVtJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3BsdXJhbCddID0gJ01lZXJ2b3VkaWcgaXRlbSc7CiRsYW5nWydwcm9tcHRfdXJsX3ByZWZpeCddID0gJ1VSTCBQcmVmaXggJzsKJGxhbmdbJ3Byb21wdF9kaXNwbGF5X2lubGluZSddID0gJ0dlZWYgZGV0YWlscyBpbmxpbmUgd2Vlcic7CiRsYW5nWydwcm9tcHRfaXRlbV9jb2xzJ10gPSAnR2VlZiBkaXQgdmVsZCB3ZWVyIGluIGhldCBpdGVtb3ZlcnppY2h0JzsKJGxhbmdbJ3Byb21wdF9pdGVtc19wZXJfcGFnZSddID0gJ0Rpc3BsYXkgaXRlbXMgcGVyIHBhZ2UnOwokbGFuZ1sncHJvbXB0X2NyZWF0ZV9kYXRlJ10gPSAnRGlzcGxheSBpdGVtIGNyZWF0ZWQgZGF0ZSBpbiBJdGVtIGVkaXQgbW9kZT8nOwokbGFuZ1sndGV4dF9zb3J0b3JkZXInXSA9ICdTdGFuZGFhcmQgYmFja2VuZCBpdGVtcyB2b2xnb3JkZSc7CiRsYW5nWydhc2NlbmRpbmcnXSA9ICdBZmxvcGVuZCc7CiRsYW5nWydkZXNjZW5kaW5nJ10gPSAnT3Bsb3BlbmQnOwokbGFuZ1snb3B0aW9uc19ub3RpY2UnXSA9ICdOYSBoZXQgd2lqemlnZW4gdmFuIGRlIG5hYW0gb2YgZGUgQWRtaW4gc2VjdGllIHZhbiBkZSBtb2R1bGUga2FuIGhldCBub2RpZyB6aWpuIG9tIGRlIHdlYnNpdGUtYnVmZmVyIHRlIHdpc3NlbiBvbSBkZSB3aWp6aWdpbmdlbiB6aWNodGJhYXIgdGUgbWFrZW4uJzsKJGxhbmdbJ25vdGljZSddID0gJ09wbWVya2luZyc7CiRsYW5nWydpbnN0YW5jZXMnXSA9ICdJbnN0YW50aWVzJzsKJGxhbmdbJ2luc3RhbGxlZF9pbnN0YW5jZXNfd2FybmluZyddID0gJ0JlbG93IGlzIGEgbGlzdCBvZiBkdXBsaWNhdGVkIG1vZHVsZSBpbnN0YW5jZXMuPGJyIC8+TWFrZSBzdXJlIHRvIGJhY2t1cCB5b3VyIHNpdGUgKERhdGFic2UgYW5kIEZpbGVzKSBiZWZvcmUgJnF1b3Q7dXBkYXRlJnF1b3Q7IGFjdGlvbic7CiRsYW5nWydpbnN0YWxsZWRfaW5zdGFuY2VzJ10gPSAnR2UmaXVtbDtuc3RhbGxlZXJkZSBpbnN0YW50aWVzJzsKJGxhbmdbJ2luc3RhbmNlX25hbWUnXSA9ICdJbnN0YW50aWUgbmFhbSc7CiRsYW5nWydpbnN0YW5jZV9mcmllbmRseW5hbWUnXSA9ICdWcmllbmRlbGlqa2UgbmFhbSc7CiRsYW5nWydpbnN0YW5jZV9zbWFydHknXSA9ICdTbWFydHkgdGFnICc7CiRsYW5nWydpbnN0YW5jZV92ZXJzaW9uJ10gPSAnVmVyc2llJzsKJGxhbmdbJ2luc3RhbmNlX3VwZ3JhZGUnXSA9ICdCaWp3ZXJrZW4nOwokbGFuZ1snaW5zdGFuY2VfdXB0b2RhdGUnXSA9ICdVcC10by1kYXRlJzsKJGxhbmdbJ2luc3RhbmNlX21vZHVsZXVwZ3JhZGVkJ10gPSAnTW9kdWxlIGJpamdld2Vya3QnOwokbGFuZ1snZHVwbGljYXRlX2luc3RhbmNlJ10gPSAnRHVwbGljZWVyIG1vZHVsZSc7CiRsYW5nWydkdXBsaWNhdGVfZGVzY3JpcHRpb24nXSA9ICcgY2FuIGJlIGVhc2lseSBkdXBsaWNhdGVkIHRvIG11bHRpcGxlIG1vZHVsZSBpbnN0YW5jZXMgd2l0aCBkdXBsaWNhdGUgYnV0dG9uLjxiciAvPiBJbnN0YWxsIG5ld2x5IGNvcGllZCBtb2R1bGUgZnJvbSAmcXVvdDtFeHRlbnNpb25zICZyYXF1bzsgTW9kdWxlcyZxdW90Oy4nOwokbGFuZ1snY29weV90aXRsZSddID0gJ0R1YmJlbGUgbW9kdWxlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1ZlcnplbmRlbic7CiRsYW5nWydkZWZhdWx0J10gPSAnU3RhbmRhYXJkJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXJlbic7CiRsYW5nWydzYXZlX2NyZWF0ZSddID0gJ09wc2xhYW4gJmFtcDsgQWFubWFrZW4nOwokbGFuZ1sncmVzZXQnXSA9ICdIZXJzdGVsIHN0YW5kYWFyZCc7CiRsYW5nWydkdXBsaWNhdGUnXSA9ICdEdWJiZWwnOwokbGFuZ1snY2hhbmdlc3NhdmVkJ10gPSAnVXcgd2lqemlnaW5nZW4gemlqbiBzdWNjZXN2b2wgb3BnZXNsYWdlbi4nOwokbGFuZ1snY2hhbmdlc3NhdmVkX2NyZWF0ZSddID0gJ1lvdXIgcHJldmlvdXMgaXRlbSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgc2F2ZWQuIENyZWF0ZSBuZXcgaXRlbT8nOwokbGFuZ1sndGVtcGxhdGVyZXN0b3JlZCddID0gJ1N0YW5kYWFyZCBzamFibG9vbiBpcyBoZXJzdGVsZC4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkaXQgd2lsdCB2ZXJ3aWpkZXJlbj8nOwokbGFuZ1sndXAnXSA9ICdPcCc7CiRsYW5nWydkb3duJ10gPSAnTmVlcic7CiRsYW5nWydlZGl0J10gPSAnV2lqemlnJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1ZlcndpamRlcic7CiRsYW5nWydub3N1Y2hpZCddID0gJ0dlZW4gZ2VsZGlnIElEJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdEZSBpdGVtKHMpIHppam4gc3VjY2Vzdm9sIG9wZ2VzbGFnZW4uJzsKJGxhbmdbJ2FkZCddID0gJ1RvZXZvZWdlbiAlcyc7CiRsYW5nWydhbGlhcyddID0gJ0FsaWFzICc7CiRsYW5nWydhbGlhc19pbnZhbGlkJ10gPSAnQWxpYXMgaXMgb25nZWxkaWcuIEhldCBtb2V0IGVlbiBuYWFtIHppam4gZGllIGdlbGRpZyBpcyBhbHMgUEhQIHZhcmlhYmVsZSc7CiRsYW5nWydzZWFyY2gnXSA9ICdab2VrJzsKJGxhbmdbJ3NlYXJjaGZvciddID0gJ1pvZWsgbmFhcic7CiRsYW5nWydzZWFyY2hyZXN1bHRzZm9yJ10gPSAnWm9layByZXN1bHRhdGVuIHZvb3IuLi4nOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwgJzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCAnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+ICc7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+ICc7CiRsYW5nWydtb2R1bGVfbmFtZSddID0gJ01vZHVsZSBuYWFtJzsKJGxhbmdbJ21vZHVsZV9uYW1lX2VtcHR5J10gPSAnTW9kdWxlIG5hYW0gaXMgbGVlZyc7CiRsYW5nWydtb2R1bGVfbmFtZV9pbnZhbGlkJ10gPSAnTW9kdWxlbmFhbSBiZXZhdCBuaWV0IHRvZWdlc3RhbmUga2FyYWt0ZXJzJzsKJGxhbmdbJ21vZHVsZWNvcGllZCddID0gJ01vZHVsZSBzdWNjZXN2b2wgZ2Vrb3BpZWVyZCc7CiRsYW5nWydzZWxlY3Rfb25lJ10gPSAnS2llcyAmZWFjdXRlOyZlYWN1dGU7bic7CiRsYW5nWydzaXplJ10gPSAnQWZtZXRpbmcnOwokbGFuZ1snbWF4X2xlbmdodCddID0gJ01heCBMZW5ndGUnOwokbGFuZ1snd3lzaXd5ZyddID0gJ1d5c2l3eWcnOwokbGFuZ1snZGF0ZV9mb3JtYXQnXSA9ICdEYXR1bSBPcGJvdXcnOwokbGFuZ1snZGlyJ10gPSAnRGlyZWN0b3J5ICc7CiRsYW5nWydhbGxvd2VkJ10gPSAnVG9lZ2VzdGFhbic7CiRsYW5nWydleGNsdWRlX3ByZWZpeCddID0gJ05lZ2VlciBwcmVmaXgnOwokbGFuZ1snaW1hZ2UnXSA9ICdBZmJlZWxkaW5nJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcmVuJzsKJGxhbmdbJ2ZpbHRlcnByb21wdCddID0gJ0ZpbHRlciAlcyAnOwokbGFuZ1sncGFyYW1fZmlsdGVyX21pc3NpbmcnXSA9ICdQYXJhbWV0ZXIgPGVtPmZpbHRlcjwvZW0+IGlzIHZlcmVpc3QgaW4gZGUgZmlsdGVybW9kdXMuJzsKJGxhbmdbJ2FsbCddID0gJ0FsbGVzJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnTGlzdEl0IHN0YWF0IHRvZSBvbSBsaWpzdGVuIGFhbiB0ZSBtYWtlbiBkaWUgdSBrdW50IHdlZXJnZXZlbiBvcCB1dyB3ZWJzaXRlJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnIGlzIHN1Y2Nlc3ZvbCBnZSZpdW1sO25zdGFsbGVlcmQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJyBpcyBzdWNjZXN2b2wgZ2VkZSZpdW1sO25zdGFsbGVlcmQnOwokbGFuZ1snZ2VuZXJhbCddID0gJ0FsZ2VtZWVuJzsKJGxhbmdbJ3VzYWdlJ10gPSAnR2VicnVpayc7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1JlY2h0ZW4nOwokbGFuZ1snZHVwbGljYXRpbmcnXSA9ICdEdXBsaWNlcmVuIHZhbiBkZXplIG1vZHVsZSc7CiRsYW5nWydhYm91dCddID0gJ092ZXInOwokbGFuZ1snaGVscF9nZW5lcmFsJ10gPSAnPGgzPkFsZ2VtZW5lIGluZm9ybWF0aWU8L2gzPgkJDQoJPHA+U2ltcGx5IHB1dCwgTGlzdEl0IGFsbG93cyB5b3UgdG8gY3JlYXRlIGxpc3RzIHRoYXQgeW91IGNhbiBkaXNwbGF5IHRocm91Z2hvdXQgeW91ciB3ZWJzaXRlLiBZb3UgY291bGQgbWFrZSBhIHNpbXBsZSBGQVEgb3IgVGVzdGltb25pYWxzIGZlYXR1cmUgd2l0aCB0aGlzIG1vZHVsZS4gVGhlIHdlYiBkZXZlbG9wZXIgZGVmaW5lcyBmaWVsZHMgdG8gY29uc3RyYWluIHdoYXQgZGF0YSB0aGUgY2xpZW50IGNhbiBlbnRlci4gQSBudW1iZXIgb2YgZmllbGQgdHlwZXMgY2FuIGJlIHNwZWNpZmllZCAtIHRleHQgaW5wdXQsIGNoZWNrYm94LCB0ZXh0IGFyZWEsIHNlbGVjdCBkYXRlLCB1cGxvYWQgZmlsZSwgc2VsZWN0IGZpbGUsIGRyb3Bkb3duIC0gYW5kIGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBzZXQgZm9yIGVhY2ggdHlwZSwgZm9yIGV4YW1wbGUsIGlucHV0IGZpZWxkIHNpemUsIG1heCBsZW5ndGgsIFdZU0lXWUcgZWRpdG9yLCBwb3NzaWJsZSBkcm9wIGRvd24gdmFsdWVzLCBwb3NzaWJsZSBmaWxlIGV4dGVuc2lvbnMsIGRpcmVjdG9yeSBwYXRocyBmb3IgZmlsZSBzZWxlY3Rpb25zLCBkYXRlIGZvcm1hdHMsIGV0Yy4uPC9wPg0KCTxwPkFuIGltcG9ydGFudCBub3RlIG9mIHdhcm5pbmcgLSBUaGlzIGlzIG5vdCBhIGNvbnRlbnQgY29uc3RydWN0aW9uIGtpdCwgc3VjaCBhcyBpbiBEcnVwYWwuIEl0IGlzIG1lYW50IGZvciBzbWFsbCBsaXN0aW5ncywgbm90IHRvIHN0b3JlIHRob3VzYW5kcyBvZiByZWNvcmRzLiBUaGlzIGlzIGJlY2F1c2Ugb2YgdGhlIGRhdGFiYXNlIG1vZGVsIHVzZWQgKEVBVikuIEFsc28sIGVhY2ggYml0IG9mIGRhdGEgeW91IGVudGVyIGlzIHN0b3JlZCBhcyBURVhUIGRhdGEgdHlwZSwgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIGl0IGlzIHZhcmNoYXIsIGJvb2xlYW4sIHRpbWVzdGFtcCwgZXRjLiBUaGlzIGlzIGEgcmVzdHJpY3Rpb24gb2YgYSBzaG9ydCBkZXZlbG9wbWVudCB0aW1lIGZyYW1lLjwvcD4nOwokbGFuZ1snaGVscF91c2FnZSddID0gJzxoMz5HZWJydWlrPC9oMz4JCQkNCgk8cD5Zb3UgY2FuIGNvbmZpZ3VyZSB7JG1vZHVsZV9uYW1lfSBoZXJlOiBDb250ZW50ID4geyRtb2R1bGVfbmFtZX08L3A+DQoJPHA+UGxhY2UgdGhpcyB0YWcgaW4geW91ciBwYWdlOiB7eyRtb2R1bGVfbmFtZX19PC9wPic7CiRsYW5nWydoZWxwX3VzYWdlX29wdGlvbnMnXSA9ICdBZnRlciBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgdGhlIG5leHQgdGhpbmcgdG8gZG8gaXMgc2V0IHRoZSBvcHRpb25zLiAgCQkJCQ0KCTxvbD4JCQkJCQ0KCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgaW4gdGhlIG1lbnUgY2hhbmdlIHRoZSAmcXVvdDtNb2R1bGUgRnJpZW5kbHkgTmFtZSZxdW90Oy48L2xpPg0KCQk8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBpdGVtIHRhYiBjaGFuZ2UgdGhlICZxdW90O0l0ZW0gUGx1cmFsJnF1b3Q7LjwvbGk+DQoJPC9vbD4gJzsKJGxhbmdbJ2hlbHBfdXNhZ2VfZmllbGRkZWZzJ10gPSAnTmV4dCAtIHNldCB0aGUgRmllbGQgRGVmaW5pdGlvbnMuDQoJPG9sPg0KCQk8bGk+Q2hvb3NlIGZyb20gJnF1b3Q7VGV4dCBJbnB1dCZxdW90OywgJnF1b3Q7Q2hlY2tib3gmcXVvdDssICZxdW90O1RleHQgQXJlYSZxdW90OywgJnF1b3Q7U2VsZWN0IERhdGUmcXVvdDssICZxdW90O1VwbG9hZCBGaWxlJnF1b3Q7LCAmcXVvdDtTZWxlY3QgRmlsZSZxdW90OyAmYW1wOyAmcXVvdDtEcm9wZG93biZxdW90Oy48L2xpPg0KCQk8bGk+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGluIHRoZSAmcXVvdDtleHRyYSZxdW90OyBmaWVsZC4gU2VlIHRoZSAmcXVvdDtGaWVsZCBEZWZpbml0aW9ucyZxdW90OyB0YWIgZm9yIGEgbGlzdC48L2xpPg0KCQk8bGk+RWFjaCBpdGVtIGluIGVhY2ggbGlzdCBoYXMgdGhyZWUgZGVmYXVsdCBmaWVsZHMuIEFsbCBGaWVsZCBEZWZpbml0aW9ucyBzZXQgaGVyZSBhcmUgYWRkaXRpb25hbCB0byB0aGVtLjwvbGk+DQoJPC9vbD4nOwokbGFuZ1snaGVscF91c2FnZV9jYXRlZ29yaWVzJ10gPSAnRXIgaXMgc3RhbmRhYXJkIGVlbiBjYXRlZ29yaWUgYWFud2V6aWcgJiMwMzk7QWxnZW1lZW4mIzAzOTsuIERlemUga2FuIGV2ZW50dWVlbCB3b3JkZW4gaGVybm9lbWQgZW4gYW5kZXJlIGNhdGVnb3JpZSZldW1sO24ga3VubmVuIHdvcmRlbiB0b2VnZXZvZWdkLic7CiRsYW5nWydoZWxwX3VzYWdlX2l0ZW1zJ10gPSAnTm93IHdlIG1vdmUgb24gdG8gdGhlIGl0ZW0gbGlzdCBpdHNlbGYuIEluIHRoaXMgZXhhbXBsZSBpdCBzYXlzICZxdW90O0FkZCBCb3gmcXVvdDssIHRoaXMgd2FzIHJlbmFtZWQgaW4gdGhlICZxdW90O09wdGlvbnMmcXVvdDsgdGFiLiANCgk8b2w+DQoJCTxsaT5UaGUgZmlyc3QgZmllbGQgaXMgdGhlIGRlZmF1bHQgJnF1b3Q7VGl0bGUmcXVvdDsgZmllbGQuPC9saT4NCgkJPGxpPlRoZSAmcXVvdDtDYXRlZ29yeSZxdW90OyBkcm9wZG93biBpcyBhbHNvIGEgZGVmYXVsdCBmaWVsZCwgYW5kIGlmIHVuY2hhbmdlZCwgd2lsbCBiZSBzZXQgdG8gJnF1b3Q7R2VuZXJhbCZxdW90Oy48L2xpPg0KCQk8bGk+VGhlIHRoaXJkIGRlZmF1bHQgZmllbGQgaXMgdGhlIGNoZWNrYm94IGNhbGxlZCAmcXVvdDtBY3RpdmUmcXVvdDsuIFRoaXMgYWxsb3dzIHlvdSB0byB0b2dnbGUgYSBsaXN0IGVudHJ5IHdpdGhvdXQgZGVsZXRpbmcgaXQuPC9saT4NCgk8L29sPiAnOwokbGFuZ1snaGVscF9wZXJtaXNzaW9ucyddID0gJzxoMz5QZXJtaXNzaW9uczwvaDM+IA0KCTxwPllvdSBjYW4gc3BlY2lmeSB0aGUgZm9sbG93aW5nIHBlcm1pc3Npb25zIHVuZGVyIFVzZXJzICZhbXA7IEdyb3VwcyA+IEdyb3VwIFBlcm1pc3Npb25zPC9wPg0KCTx1bD4NCgkJPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgSXRlbXM8L2xpPg0KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBDYXRlZ29yaWVzPC9saT4NCgkJPGxpPnskbW9kdWxlX25hbWV9OiBNb2RpZnkgT3B0aW9uczwvbGk+DQoJPC91bD4NCgk8cD5UbyBhbGxvdyBub24tYWRtaW4gdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBwbGVhc2UgZ28gdG8gRXh0ZW5zaW9ucyA+IEdCRmlsZVBpY2tlciBhbmQgdGljayB0aGF0IGZpcnN0IGNoZWNrYm94ICZxdW90O1Nob3cgZmlsZW1hbmFnZW1lbnQgb3B0aW9ucyZxdW90Oy48L3A+JzsKJGxhbmdbJ2hlbHBfZmllbGRkZWZzJ10gPSAnPGgzPkZpZWxkIERlZmluaXRpb25zPC9oMz4gDQoJPHA+VGhlIGZpcnN0IHRoaW5nIHlvdSBzaG91bGQgY29uZmlndXJlIGFyZSB5b3VyIGZpZWxkIGRlZmluaXRpb25zLiA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IEZpZWxkIGRlZmluaXRpb25zIGNhbiBvbmx5IGJlIGRlbGV0ZWQgd2hlbiB0aGV5JiMwMzk7cmUgbm90IGluIHVzZSBpbiBvcmRlciB0byBhdm9pZCBkYXRhIGxvc3MuPC9wPg0KCTxwPkZvciBlYWNoIGZpZWxkIGRlZmluaXRpb24sIHlvdSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBpbiB0aGUgJnF1b3Q7ZXh0cmEmcXVvdDsgZmllbGQuPC9wPg0KCTx1bD4NCgkJPGxpPg0KCQkJPHA+SW5zdHJ1Y3Rpb246IA0KCQkJPGNvZGU+c2l6ZVsyMF08L2NvZGU+PGJyIC8+DQoJCQlQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjxiciAvPg0KCQkJQXBwbGljYWJsZSB0bzogVGV4dCBJbnB1dCwgU2VsZWN0IERhdGU8L3A+ICAgIA0KCQk8L2xpPg0KCQk8bGk+DQoJCQk8cD5JbnN0cnVjdGlvbjogDQoJCQk8Y29kZT5tYXhfbGVuZ3RoWzIwXQ0KCQkJPC9jb2RlPjxiciAvPg0KCQkJUG9zc2libGUgdmFsdWU6IGludGVnZXI8YnIgLz4NCgkJCUFwcGxpY2FibGUgdG86IFRleHQgSW5wdXQsIFRleHQgQXJlYSwgU2VsZWN0IERhdGU8L3A+DQoJCTwvbGk+DQoJCTxsaT4NCgkJCTxwPkluc3RydWN0aW9uOiANCgkJCTxjb2RlPnd5c2l3eWdbMV0NCgkJCTwvY29kZT48YnIgLz4NCgkJCVBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPg0KCQkJQXBwbGljYWJsZSB0bzogVGV4dCBBcmVhPC9wPg0KCQk8L2xpPg0KCQk8bGk+DQoJCQk8cD5JbnN0cnVjdGlvbjogDQoJCQk8Y29kZT5vcHRpb25zW2FwcGxlPUFwcGxlLGJhbmFuYT1CYW5hbmFdDQoJCQk8L2NvZGU+PGJyIC8+DQoJCQlQb3NzaWJsZSB2YWx1ZToga2V5PXZhbHVlLC4uLjxiciAvPg0KCQkJQXBwbGljYWJsZSB0bzogRHJvcGRvd248L3A+DQoJCTwvbGk+DQogICAgICA8bGk+DQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPmFsbG93W3BkZixnaWYscG5nLGpwZWcsanBnXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBleHRlbnNpb24sLi4uIChrZWVwIGxvd2VyY2FzZSk8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+ZGlyWy9wYXRoL3RvL2Rpcl0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGlyZWN0b3J5IHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvIA0KICAgICAgICA8Y29kZT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfdXJsJiMwMzk7XQ0KICAgICAgICA8L2NvZGU+LiBObyBzbGFzaCBhdCB0aGUgZW5kLiA8Y29kZT57JGl0ZW1faWR9IGFuZCB7JGl0ZW1fYWxpYXN9PC9jb2RlPiB3aWxsIGJlIHJlcGxhY2VkLjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5leGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX10NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogcHJlZml4LC4uLjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5kYXRlZm9ybWF0W2RkL21tL3l5XQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEYXRlIGZvcm1hdCB1c2VkIGJ5IHRoZSBqUXVlcnkgZGF0ZXBpY2tlci4gVHJ5IGdvb2dsaW5nICYjMDM5O2pxdWVyeSBmb3JtYXREYXRlJiMwMzk7PGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFNlbGVjdCBEYXRlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4NCgkgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5maWxlYnJvd3NlclsxXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPg0KCQk8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gZmlsZWJyb3dzZXIgbW9kZSBpbnN0ZWFkIG9mIGRlZmF1bHQgZHJvcGRvd24gbW9kZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+DQogICAgICA8bGk+DQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPmltYWdlWzFdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+DQogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBzaG93IHRodW1ibmFpbCBpbWFnZSBpbnN0ZWFkIG9mIGlucHV0IGZpZWxkLg0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+DQogICAgICA8bGk+DQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPmNyZWF0ZV9kaXJzWzFdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+DQogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyBjcmVhdGluZyBvZiBuZXcgZGlyZWNvdGlyZXMuDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gDQogICAgICA8bGk+DQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPmRlbGV0ZVsxXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPg0KICAgICAgICA8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgZGVsZXRpbmcgZmlsZXMuDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4NCiAgICAgIDxsaT4NCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+c2hvd19zdWJkaXJzWzFdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+DQogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyB2aWV3aW5nIG9mIHN1YmRpcmVjdG9yaWVzLg0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+ICAgICAgICAgICAgICAgICAgICAgICANCiAgICA8L3VsPg0KICAgIDxwPllvdSBjYW4gc3BlY2lmeSBtdWx0aXBsZSBpbnN0cnVjdGlvbnMgc2VwYXJhdGVkIGJ5IGEgc2VtaWNvbG9uICgNCiAgICAgIDxjb2RlPjsNCiAgICAgIDwvY29kZT4pLCBmb3IgZXhhbXBsZToNCiAgICA8L3A+DQogICAgPHA+DQogICAgICA8Y29kZT5hbGxvd1twZGZdO2RpclsvZG9jcy9wZGZdPC9jb2RlPg0KICAgIDwvcD4NCiAgICANCgk8aDM+RmllbGQgRGVmaW5pdGlvbnMgYnkgdHlwZTwvaDM+DQogICAgICAgIA0KICAgIDx1bD4NCiAgICAgICAgPGxpPlRleHQgSW5wdXQ6IDxjb2RlPnNpemVbMjBdO21heF9sZW5ndGhbMjBdPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5DaGVja2JveDogPGNvZGU+LTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+VGV4dCBBcmVhOiA8Y29kZT5tYXhfbGVuZ3RoWzIwXTt3eXNpd3lnWzFdPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5TZWxlY3QgRGF0ZTogPGNvZGU+c2l6ZVsyMF07bWF4X2xlbmd0aFsyMF07ZGF0ZWZvcm1hdFtkZC9tbS95eV08L2NvZGU+PC9saT4NCiAgICAgICAgPGxpPlVwbG9hZCBGaWxlOiA8Y29kZT5hbGxvd1twZGYsZ2lmLGpwZWcsanBnXTtkaXJbL3BhdGgvdG8vZGlyXTtleGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX107ZmlsZWJyb3dzZXJbMV07aW1hZ2VbMV07PC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5TZWxlY3QgRmlsZTogPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ107ZGlyWy9wYXRoL3RvL2Rpcl07ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5Ecm9wZG93bjogPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+Q29udGVudCBQYWdlczogPGNvZGU+LTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+RmllbGRzZXQgU3RhcnQ6IDxjb2RlPi08L2NvZGU+PC9saT4NCiAgICAgICAgPGxpPkZpZWxkc2V0IEVuZDogPGNvZGU+LTwvY29kZT48L2xpPg0KICAgIDwvdWw+JzsKJGxhbmdbJ2hlbHBfY2F0ZWdvcmllcyddID0gJzxoMz5DYXRlZ29yaWVzPC9oMz4NCgk8cD5NdWx0aSBsZXZlbCBjYXRlZ29yaWVzIGFyZSBzdXBwb3J0ZWQuPC9wPic7CiRsYW5nWydoZWxwX3RlbXBsYXRlcyddID0gJzxoMz5UZW1wbGF0ZXM8L2gzPg0KCTxwPklmIHlvdSBhcmUgbm90IHN1cmUgd2hhdCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZSB0byB1c2UgaW4geW91ciB0ZW1wbGF0ZXMsIHRyeSB0aGUgZGVidWcgdGVtcGxhdGU6PC9wPg0KCTxwPnt7JG1vZHVsZV9uYW1lfSBzdW1tYXJ5dGVtcGxhdGU9JiMwMzk7ZGVidWcmIzAzOTt9PC9wPg0KCTxwPllvdSBjYW4gYWNjZXNzIGFueSBmaWVsZCBkaXJlY3RseSB3aGVuIGxvb3BpbmcgdGhyb3VnaCBpdGVtcyB1c2luZyBpdHMgYWxpYXMsIGZvciBleGFtcGxlLCB0byBpZiB5b3UgY3JlYXRlZCBhIGZpZWxkIGRlZmluaXRpb24gd2l0aCBhbiBhbGlhcyAmcXVvdDtwb3NpdGlvbiZxdW90OywgeW91IGNhbiBkbzo8L3A+JzsKJGxhbmdbJ2hlbHBfdGVtcGxhdGVzX2NhdGVnb3JpZXMnXSA9ICc8cD5CZXNpZGVzLCB5b3UgY2FuIGxvb3AgdGhyb3VnaCBjYXRlZ29yaWVzIGluIHRoZSBzdW1tYXJ5IHRlbXBsYXRlIGp1c3QgYXMgd2VsbCBhcyBsb29waW5nIHRocm91Z2ggaXRlbXM6PC9wPiAnOwokbGFuZ1snaGVscF9kdXBsaWNhdGluZyddID0gJzxoMz5EdXBsaWNhdGluZyB0aGlzIG1vZHVsZTwvaDM+DQoJPHA+VGhpcyBtb2R1bGUgd2FzIG1hZGUgdG8gYmUgZWFzaWx5IGR1cGxpY2F0ZWQuIFRvIGR1cGxpY2F0ZSB0aGlzIG1vZHVsZSwgZm9sbG93IHRoZXNlIHN0ZXBzIEJFRk9SRSBpbnN0YWxsaW5nIHRoZSBtb2R1bGU6PC9wPg0KCTxvbD4gICAgDQoJCTxsaT5SZW5hbWUgdGhlIGRpcmVjdG9yeSAmcXVvdDs8Yj5MaXN0SXQ8L2I+JnF1b3Q7PC9saT4gICAgDQoJCTxsaT5SZW5hbWUgJnF1b3Q7Y2xhc3MgPGI+TGlzdEl0PC9iPiBleHRlbmRzIENNU01vZHVsZSZxdW90OyBpbnNpZGUgTGlzdEl0Lm1vZHVsZS5waHA8L2xpPiAgICANCgkJPGxpPlJlbmFtZSAmcXVvdDs8Yj5MaXN0SXQ8L2I+Lm1vZHVsZS5waHAmcXVvdDs8L2xpPg0KCTwvb2w+DQoJPHA+TWFrZSBzdXJlIHlvdSBmb2xsb3cgdGhlIENNU01TIG1vZHVsZSBuYW1pbmcgY29udmVudGlvbnMsIGEteiB3aXRoIG5vIHB1bmN0dWF0aW9uIGNoYXJhY3RlcnMgb3Igc3BhY2VzIHRvIGJlIHNhZmUgOik8L3A+DQoJPHA+WW91IGNhbiBhbHdheXMgY2hhbmdlIHRoZSBtb2R1bGUgZnJpZW5kbHkgbmFtZSBvbmNlIGluc3RhbGxlZCB1bmRlciAmcXVvdDtPcHRpb25zJnF1b3Q7IChDb250ZW50ID4geyRtb2R1bGVfbmFtZX0pLiBUbyBjaGFuZ2UgdGhlIGljb24sIHJlcGxhY2UgL21vZHVsZXMveyRtb2R1bGVfbmFtZX0vaW1hZ2VzL2ljb24uZ2lmLjwvcD4nOwokbGFuZ1snaGVscF9hYm91dCddID0gJzxoMz5BYm91dDwvaDM+IA0KCTxwPk9yaWdpbiBvZiB0aGlzIG1vZHVsZSBjb21lcyBmcm9tIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvbGlzdGl0IiB0YXJnZXQ9Il9ibGFuayI+TGlzdEl0IE1vZHVsZTwvYT4gZGV2ZWxvcGVkIGJ5IEJlbiBNYWxlbi48YnIgLz5BcyB0aGVyZSB3ZXJlIG5vIHBsYW5zIG9uIGZ1cnRoZXIgZGV2ZWxvcG1lbnQgb2YgdGhlIG1vZHVsZSBzb21lIHBlb3BsZSBkZWNpZGVkIHRvIGZvcmsgdGhlIG1vZHVsZSBhbmQgY29udGludWUgd2l0aCBkZXZlbG9wbWVudC48YnIgLz4NCglJZiB5b3UgZmluZCBhbnkgYnVncyBwbGVhc2UgZmVlbCBmcmVlIHRvIHN1Ym1pdCBhIGJ1ZyByZXBvcnQgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9idWcvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4gb3IgZm9yIGFueSBnb29kIGlkZWFzIGNvbnNpZGVyIHN1Ym1pdGluZyBhIGZlYXR1cmUgcmVxdWVzdCA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2ZlYXR1cmVfcmVxdWVzdC9saXN0LzEwMTUiIHRhcmdldD0iX2JsYW5rIj5oZXJlPC9hPi4gPGJyIC8+DQoJUGxlYXNlIGtlZXAgaW4gbWluZCB0aGF0IGRldmVsb3BlcnMgZG8gaGF2ZSB0aGVpciBkYWlseSBqb2JzIHdoaWNoIG1lYW5zIHRoYXQgZmVhdHVyZSByZXF1ZXN0cyBhcmUgY29uc2lkZXJlZCBhbmQgZG9uZSBhcyB0aW1lIGFsbG93cy4gSWYgeW91IG5lZWQgYSBmZWF0dXJlIHJlYWxseSBiYWRseSBjb25zaWRlciBjb250YWN0aW5nIG9uZSBvZiB0aGUgZGV2ZWxvcGVycyBmb3IgYSBzcG9uc29yZWQgZGV2ZWxvcG1lbnQuDQoJPC9wPg0KCTxoMz5UZWFtPC9oMz4NCgk8dWw+DQoJCTxsaT5Kb25hdGhhbiBTY2htaWQgKEZvYWx5KikgaGlAam9uYXRoYW5zY2htaWQuZGUgPGJyIC8+d3d3LmpvbmF0aGFuc2NobWlkLmRlPC9saT4NCgkJPGxpPkdvcmFuIElsaWMgKHVuaXF1MykgZy5pbGljQGktYXJ0cy5ldSA8YnIgLz53d3cuaWNoLW1hY2gtZGFzLmF0PC9saT4NCgkJPGxpPlJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMCkgY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyAgPGJyIC8+d3d3LmNhbGd1eTEwMDAuY29tPC9saT4NCgkJPGxpPkx1a2FzIEJsYXR0ZXIgKG5vY2tlbmZlbGwpIG5vY2tlbmZlbGxAZ21haWwuY29tIDxiciAvPnd3dy5ibGF0dGVydGVjaC5jaDwvbGk+DQoJCTxsaT5Bcm5vdWQgKGFybm91ZCkgYXJub3VkQHVwc2VydmljZS5ubCA8YnIgLz53d3cudXBzZXJ2aWNlLm5sPC9saT4NCgkJPGxpPldheW5lIE9OZWlsICh3aXNoYm9uZSkgd2F5bmVAdGVhbXdpc2hib25lLmNvbSA8YnIgLz53d3cudGVhbXdpc2hib25lLmNvbTwvbGk+DQoJCTxsaT5UYXBpbyBMJm91bWw7eXR5eSAoU3Rpa2tpKSB0YXBzYUBibGFja21pbGsuZmk8L2xpPg0KCTwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fYWN0aW9uJ10gPSAnCU92ZXJyaWRlIHRoZSBkZWZhdWx0IGFjdGlvbi4gUG9zc2libGUgdmFsdWVzIGFyZToNCgk8dWw+DQoJCTxsaT4mYW1wO3F1b3Q7ZGVmYXVsdCZhbXA7cXVvdDsgLSBkaXNwbGF5cyB0aGUgc3VtbWFyeSB2aWV3LjwvbGk+DQoJCTxsaT4mYW1wO3F1b3Q7ZGV0YWlsJmFtcDtxdW90OyAtIGRpc3BsYXlzIGEgc3BlY2lmaWVkIGVudHJ5IGluIGRldGFpbCBtb2RlLjwvbGk+DQoJCTxsaT4mYW1wO3F1b3Q7c2VhcmNoJmFtcDtxdW90OyAtIGRpc3BsYXlzIHRoZSBzZWFyY2ggZm9ybS48L2xpPg0KCQk8bGk+JmFtcDtxdW90O2ZpbHRlciZhbXA7cXVvdDsgLSBkaXNwbGF5cyB0aGUgZmlsdGVyIGZvcm0uIFBhcmFtZXRlciA8ZW0+ZmlsdGVyPC9lbT4gaXMgcmVxdWlyZWQuPC9saT4NCgk8L3VsPiAnOwokbGFuZ1snaGVscF9wYXJhbV9zaG93YWxsJ10gPSAnR2VlZiBhbGxlIGl0ZW1zIHdlZXIsIG9uYWZoYW5rZWxpamsgdmFuIGRlIGVpbmRkYXR1bS4nOwokbGFuZ1snaGVscF9wYXJhbV9jYXRlZ29yeSddID0gJ0dlZWYgZWVuIGxpanN0IG9wLCB2YW4ga29tbWFnZXNjaGVpZGVuIHdhYXJkZW4gdmFuIGNhdGVnb3JpZWFsaWFzKHNlbikgem9kYXQgZXIgYWxsZWVuIGl0ZW1zIHdvcmRlbiB3ZWVyZ2VnZXZlbiB2YW4gZGUgb3BnZWdldmVuIGNhdGVnb3JpZSgmZXVtbDtuKS4nOwokbGFuZ1snaGVscF9wYXJhbV9leGNsdWRlX2NhdGVnb3J5J10gPSAnR2VlZiBlZW4gbGlqc3Qgb3AsIHZhbiBrb21tYWdlc2NoZWlkZW4gd2FhcmRlbiB2YW4gY2F0ZWdvcmllYWxpYXMoc2VuKSB6b2RhdCBlciBnZWVuIGl0ZW1zIHdvcmRlbiB3ZWVyZ2VnZXZlbiB2YW4gZGUgb3BnZWdldmVuIGNhdGVnb3JpZSgmZXVtbDtuKS4nOwokbGFuZ1snaGVscF9wYXJhbV9zdWJjYXRlZ29yeSddID0gJ0FscyB1IGVlbiBjYXRlZ29yaWUgaGVlZnQgb3BnZWdldmVuLCBkYW4ga3VudCB1IGRpdCBvb2sgb3BnZWdldmVuIG1ldCBkZSB3YWFyZGUgJiMwMzk7dHJ1ZSYjMDM5Oy4gQWxzIGRhdCBnZWJldXJkIHp1bGxlbiBvb2sgaXRlbXMgdWl0IHN1YmNhdGVnb3JpZSZldW1sO24gd29yZGVuIHdlZXJnZWdldmVuLiBTdGFuZGFhcmQgc3RhYXQgZGV6ZSBvcHRpZSBvcCAmIzAzOTtmYWxzZSYjMDM5Oy4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWx0ZW1wbGF0ZSddID0gJ0hldCBnZWRldGFpbGxlZXJkZSBzamFibG9vbiBkYXQgdSB3ZW5zdCB0ZSBnZWJydWlrZW4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnSGV0IHNhbWVudmF0dGluZ3NqYWxvb24gZGF0IHUgd2Vuc3QgdGUgZ2VicnVpa2VuLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaHRlbXBsYXRlJ10gPSAnSGV0IHpvZWtzamFibG9vbiBkYXQgdSB3ZW5zdCB0ZSBnZWJydWlrZW4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fb3JkZXJieSddID0gJ1lvdSBjYW4gb3JkZXIgYnkgYW55IG9mIHRoZSBmb2xsb3dpbmcgY29sdW1uczogaXRlbV9pZCwgaXRlbV90aXRsZSwgaXRlbV9wb3NpdGlvbiwgY2F0ZWdvcnlfaWQsIGNhdGVnb3J5X25hbWUsIGNhdGVnb3J5X3Bvc2l0aW9uLjxiciAvPg0KPHVsPg0KPGxpPkZvciBleGFtcGxlOjxiciAvPg0Kb3JkZXJieT0mIzAzOTtjYXRlZ29yeV9uYW1lLCBpdGVtX3RpdGxlJiMwMzk7PC9saT4NCjxsaT5Zb3UgY2FuIGFsc28gc3BlY2lmeSBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBmb3IgYW55IGNvbHVtbiwgZm9yIGV4YW1wbGU6PGJyIC8+DQpvcmRlcmJ5PSYjMDM5O2NhdGVnb3J5X25hbWV8YXNjLCBpdGVtX3RpdGxlfGRlc2MmIzAzOTs8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ01heGltdW0gYWFudGFsIGl0ZW1zIG9tIHdlZXIgdGUgZ2V2ZW4gKHBlciBwYWdpbmEpLiAgQWxzIGRlemUgcGFyYW1ldGVyIG5pZXQgd29yZHQgaW5nZXNsb3RlbiwgZGFuIHp1bGxlbiBhbGxlIG92ZXJlZW5rb21zdGlnZSBpdGVtcyB3b3JkZW4gd2VlcmdlZ2V2ZW4uICBBbHMgaGV0IHpvIGlzIGRhdCBlciBtZWVyIGl0ZW1zIGJlc2NoaWtiYWFyIHppam4sIGRhbiBvcGdlZ2V2ZW4gbWV0IGRlemUgcGFyYW1ldGVyLCBkYW4genVsbGVuIHRla3N0IGVuIGxpbmtzIHdvcmRlbiBpbmdldm9lZ2QgZGllIGhldCBtb2dlbGlqayBtYWtlbiB0ZSBibGFkZXJlbiBkb29yIGRlIHJlc3VsdGF0ZW4nOwokbGFuZ1snaGVscF9wYXJhbV9zdGFydCddID0gJ0JlZ2luIGJpaiBoZXQgJiMwMzk7em92ZWVsc3RlJiMwMzk7IGl0ZW0gLS0gYWxzIHUgZGl0IG5pZXQgb3BnZWVmdCwgZGFuIHdvcmR0IGVyIGdlc3RhcnQgYmlqIGhldCBlZXJzdGUgaXRlbS4nOwokbGFuZ1snaGVscF9wYXJhbV9udW1iZXInXSA9ICdNYXhpbXVtIGFhbnRhbCBpdGVtcyBvbSB3ZWVyIHRlIGdldmVuIChwZXIgcGFnaW5hKSAtLSBpbmRpZW4gdSBkaXQgbmlldCBvcGdlZWZ0LCBkYW4genVsbGVuIGFsbGUgaXRlbXMgd29yZGVuIHdlZXJnZWdldmVuLiBEaXQgaXMgZWVuIHN5bm9uaWVtIHZvb3IgZGUgcGFnZWxpbWl0IHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnUGFnaW5hIG9tIGl0ZW1kZXRhaWxzIHdlZXIgdGUgZ2V2ZW4uIERpdCBtb2V0IGVlbiBwYWdpbmEtYWxpYXMgemlqbi4gR2VicnVpa3Qgb20gZGV0YWlscyB3ZWVyIHRlIGdldmVuIG9wIGVlbiBhbmRlcmUgcGFnaW5hIGRhbiBkZSBzYW1lbnZhdHRpbmdzcGFnaW5hLic7CiRsYW5nWydoZWxwX3BhcmFtX2l0ZW0nXSA9ICdEZXplIHBhcmFtZXRlciBpcyBhbGxlZW4gdmFuIHRvZXBhc3NpbmcgaW4gZGUgZGV0YWlsd2VlcmdhdmUuIEhldCBzdGFhdCB0b2Ugb20gZWVuIGl0ZW0gb3AgdGUgZ2V2ZW4gZGllIHdvcmR0IHdlZXJnZWdldmVuIGluIGRlIGRldGFpbHdlZXJnYXZlLiBEaXQgbW9ldCBlZW4gaXRlbWFsaWFzIHppam4uJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoXyddID0gJ1NlYXJjaCBhIHBhcnRpY3VsYXIgZmllbGQuIFlvdSBjYW4gdXNlICYjMDM5O3RpdGxlJiMwMzk7IG9yIHRoZSBhbGlhcyBvZiBhIGZpZWxkIGRlZmluaXRpb24sIGUuZy4gc2VhcmNoX3RpdGxlLiBXaWxsIGJlIGlnbm9yZWQgd2hlbiBwYXJhbWV0ZXIgJiMwMzk7c2VhcmNoJiMwMzk7IGlzIHNldCwgYnV0IG11bHRpcGxlIHNlYXJjaF8qIHBhcmFtcyBjYW4gYmUgY29tYmluZWQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZmlsdGVyJ10gPSAnUmVxdWlyZWQgZm9yIGFjdGlvbiA8ZW0+ZmlsdGVyPC9lbT4uIFNwZWNpZnkgdGhlIGZpZWxkcyB3aG9zZSB2YWx1ZXMgc2hvdWxkIGJlIG9mZmVyZWQgYXMgZmlsdGVyIG9wdGlvbnMgYnkgbGlzdGluZyB0aGUgZmllbGQmIzAzOTtzIGFsaWFzZXMgY29tbWEgc2VwYXJhdGVkLic7CiRsYW5nWydoZWxwX3BhcmFtX3JldHVybnBhZ2UnXSA9ICdVc2VkIGZvciBmaWx0ZXIgb3Igc2VhcmNoIG1vZGUgb25seS4gUGFnZSB0byBkaXNwbGF5IHNlYXJjaCByZXN1bHRzIHJlc3BlY3Rpdmx5IGZpbHRlcmVkIGl0ZW1zIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBzdW1tYXJ5IHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gZmlsdGVyIC8gc2VhcmNoIG1hc2suICc7CiRsYW5nWydoZWxwX3BhcmFtX2RlYnVnJ10gPSAnRW5hYmxlcyBkZWJ1ZyBtb2RlLCBwcmludGluZyBvdXQgYWxsIHRoZSBvYmplY3RzLCBhcnJheXMsIHZhcmlhYmxlcyBhdmFpbGFibGUgZm9yIGN1cnJlbnQgYWN0aW9uLic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE2MjI5MzQ1OTkuMTM0ODE2Mzk1OS4xMzQ4MTYzOTU5LjEzNDgxNjM5NTkuMSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTM0ODE2Mzk1OS4xLjEudXRtY2NuPShkaXJlY3QpfHV0bWNzcj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2l0ZW0nXSA9ICfQl9Cw0L/QuNGB0YwnOwokbGFuZ1snaXRlbXMnXSA9ICfQl9Cw0L/QuNGB0LgnOwokbGFuZ1snZmllbGRkZWYnXSA9ICfQntC/0YDQtdC00LXQu9C10L3QuNC1INC/0L7Qu9GPJzsKJGxhbmdbJ2ZpZWxkZGVmcyddID0gJ9Ce0L/RgNC10LTQtdC70LXQvdC40Y8g0L/QvtC70LXQuSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSc7CiRsYW5nWyd0ZW1wbGF0ZXMnXSA9ICfQqNCw0LHQu9C+0L3Riyc7CiRsYW5nWydjYXRlZ29yeSddID0gJ9Ca0LDRgtC10LPQvtGA0LjRjyc7CiRsYW5nWydjYXRlZ29yaWVzJ10gPSAn0JrQsNGC0LXQs9C+0YDQuNC4JzsKJGxhbmdbJ29wdGlvbiddID0gJ9Ce0L/RhtC40Y8nOwokbGFuZ1snb3B0aW9ucyddID0gJ9Cd0LDRgdGC0YDQvtC50LrQuCc7CiRsYW5nWydiYWNrJ10gPSAnR28gb25lIHBhZ2UgYmFjayc7CiRsYW5nWydpdGVtX3RpdGxlJ10gPSAn0JfQsNCz0L7Qu9C+0LLQvtC6JzsKJGxhbmdbJ3Byb21wdF9pdGVtX3RpdGxlJ10gPSAn0JfQsNCz0L7Qu9C+0LLQvtC6INC30LDQv9C40YHQuCc7CiRsYW5nWydhY3RpdmUnXSA9ICfQkNC60YLQuNCy0L3Ri9C5JzsKJGxhbmdbJ3RpbWVfY29udHJvbCddID0gJ1VzZSB0aW1lIGNvbnRyb2wnOwokbGFuZ1snc3RhcnRfdGltZSddID0gJ1N0YXJ0IHRpbWUnOwokbGFuZ1snZW5kX3RpbWUnXSA9ICdFbmQgdGltZSc7CiRsYW5nWydpdGVtX3RpdGxlX2VtcHR5J10gPSAn0JfQsNCz0L7Qu9C+0LLQvtC6INC30LDQv9C40YHQuCDQv9GD0YHRgtC+0LknOwokbGFuZ1sncmVxdWlyZWRfZmllbGRfZW1wdHknXSA9ICfQntCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0LTQu9GPINC30LDQv9C+0LvQvdC10L3QuNGPINC/0L7Qu9C1INC/0YPRgdGC0L7QtSc7CiRsYW5nWyd0b29fbG9uZyddID0gJ0ZpZWxkIHZhbHVlIGV4Y2VlZHMgbWF4IGxlbmd0aCc7CiRsYW5nWydhcHByb3ZlJ10gPSAnU2V0IFN0YXR1cyB0byBcJ0FjdGl2ZVwnJzsKJGxhbmdbJ3JldmVydCddID0gJ1NldCBTdGF0dXMgdG8gXCdJbmFjdGl2ZVwnJzsKJGxhbmdbJ3N1Ym1pdF9vcmRlciddID0gJ9Ch0L7RhdGA0LDQvdC40YLRjCDQv9C+0YDRj9C00L7Quic7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICfQo9C00LDQu9C40YLRjCDQstGL0LHRgNCw0L3Ri9C1ICIlcyInOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVtdWx0aXBsZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgYWxsIG9mIHRoZXNlICVzPyc7CiRsYW5nWydzZWxlY3RfYWxsJ10gPSAn0JLRi9Cx0YDQsNGC0Ywg0LLRgdGRJzsKJGxhbmdbJ2Vycm9yX3N0YXJ0Z3JlYXRlcmVuZCddID0gJ1N0YXJ0IGRhdGUgaXMgZ3JlYXRlciB0aGFuIGVuZCBkYXRlLic7CiRsYW5nWydpdGVtX2FsaWFzX2V4aXN0cyddID0gJ0l0ZW0gYWxpYXMgYWxyZWFkeSBleGlzdHMuIEFsaWFzIG11c3QgYmUgdW5pcXVlLic7CiRsYW5nWydyZXR1cm5fdXJsJ10gPSAnUmV0dXJuJzsKJGxhbmdbJ3BhdGhjb250YWluc3ZhcnMnXSA9ICdUaGlzIGZpZWxkIGNhbiBiZSBlZGl0ZWQgYWZ0ZXIgZmlyc3Qgc2F2aW5nIHRoaXMgJXMnOwokbGFuZ1snZWRpdGZpZWxkZGVmJ10gPSAn0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0L7Qv9GA0LXQtNC10LvQtdC90LjQtSDQv9C+0LvRjyc7CiRsYW5nWydmaWVsZGRlZl9uYW1lJ10gPSAn0JjQvNGPJzsKJGxhbmdbJ2ZpZWxkZGVmX2hlbHAnXSA9ICfQn9C+0LTRgdC60LDQt9C60LAnOwokbGFuZ1snZmllbGRkZWZfdHlwZSddID0gJ9Ci0LjQvyc7CiRsYW5nWydmaWVsZGRlZl9tYXhfbGVuZ3RoJ10gPSAn0JzQsNC60YHQuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAnOwokbGFuZ1snZmllbGRkZWZfcmVxdWlyZWQnXSA9ICfQntCx0Y/Qt9Cw0YLQtdC70YzQvdC+JzsKJGxhbmdbJ2V4dHJhJ10gPSAn0K3QutGB0YLRgNCwJzsKJGxhbmdbJ3RleHRib3gnXSA9ICfQotC10LrRgdGC0L7QstC+0LUg0L/QvtC70LUgKNGB0YLRgNC+0LrQsCknOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ9Ci0LXQutGB0YLQvtCy0L7QtSDQv9C+0LvQtSAo0YLQtdC60YHRgiknOwokbGFuZ1snc2VsZWN0X2RhdGUnXSA9ICfQktGL0LHQvtGAINC00LDRgtGLJzsKJGxhbmdbJ3VwbG9hZF9maWxlJ10gPSAn0JfQsNCz0YDRg9C30LrQsCDRhNCw0LnQu9CwJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAn0JLRi9C/0LDQtNCw0Y7RidC40Lkg0YHQv9C40YHQvtC6JzsKJGxhbmdbJ3NlbGVjdF9maWxlJ10gPSAn0JLRi9Cx0L7RgCDRhNCw0LnQu9CwJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZW1wdHknXSA9ICdGaWVsZCBkZWZpbml0aW9uIG5hbWUgaXMgZW1wdHknOwokbGFuZ1snZmllbGRkZWZfbmFtZV9leGlzdHMnXSA9ICdGaWVsZCBkZWZpbml0aW9uIG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZmllbGRkZWZfYWxpYXNfZXhpc3RzJ10gPSAnRmllbGQgZGVmaW5pdGlvbiBhbGlhcyBhbHJlYWR5IGV4aXN0cy4gQWxpYXMgbXVzdCBiZSB1bmlxdWUuJzsKJGxhbmdbJ2ludmFsaWQnXSA9ICdGaWVsZCB2YWx1ZSBpcyBpbnZhbGlkJzsKJGxhbmdbJ3N0YXR1c19yZXF1aXJlZCddID0gJ1NldCBzdGF0dXMgdG8gXCdyZXF1aXJlZFwnJzsKJGxhbmdbJ3N0YXR1c19vcHRpb25hbCddID0gJ1NldCBzdGF0dXMgdG8gXCdvcHRpb25hbFwnJzsKJGxhbmdbJ2VkaXRfY2F0ZWdvcnknXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQutCw0YLQtdCz0L7RgNC40Y4nOwokbGFuZ1snY2F0ZWdvcnlfbmFtZSddID0gJ9CY0LzRjyDQutCw0YLQtdCz0L7RgNC40LgnOwokbGFuZ1snY2F0ZWdvcnlfZGVzY3JpcHRpb24nXSA9ICfQntC/0LjRgdCw0L3QuNC1INC60LDRgtC10LPQvtGA0LjQuCc7CiRsYW5nWydjYXRlZ29yeV9uYW1lX2VtcHR5J10gPSAn0JjQvNGPINC60LDRgtC10LPQvtGA0LjQuCDQv9GD0YHRgtC+0LUnOwokbGFuZ1snY2F0ZWdvcnlfYWxpYXNfZXhpc3RzJ10gPSAnQ2F0ZWdvcnkgYWxpYXMgYWxyZWFkeSBleGlzdHMuIEFsaWFzIG11c3QgYmUgdW5pcXVlLic7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGUnXSA9ICfQqNCw0LHQu9C+0L0g0LLRi9Cy0L7QtNCwINGB0L/QuNGB0LrQsCc7CiRsYW5nWydzdW1tYXJ5dGVtcGxhdGVzJ10gPSAn0KjQsNCx0LvQvtC90Ysg0LLRi9Cy0L7QtNCwINGB0L/QuNGB0LrQsCc7CiRsYW5nWydkZXRhaWx0ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSDQstGL0LLQvtC00LAg0L/QvtC00YDQvtCx0L3QvtGB0YLQtdC5JzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlcyddID0gJ9Co0LDQsdC70L7QvdGLINCy0YvQstC+0LTQsCDQv9C+0LTRgNC+0LHQvdC+0YHRgtC10LknOwokbGFuZ1snZWRpdHRlbXBsYXRlJ10gPSAn0KDQtdC00LDQutGC0LjRgNC+0LLQsNGC0Ywg0YjQsNCx0LvQvtC9JzsKJGxhbmdbJ3RlbXBsYXRlX25hbWUnXSA9ICfQmNC80Y8g0YjQsNCx0LvQvtC90LAnOwokbGFuZ1sndGVtcGxhdGVfbmFtZV9lbXB0eSddID0gJ9CY0LzRjyDRiNCw0LHQu9C+0L3QsCDQv9GD0YHRgtC+0LUnOwokbGFuZ1snbW9kdWxlX29wdGlvbnMnXSA9ICfQndCw0YHRgtGA0L7QudC60Lgg0LzQvtC00YPQu9GPJzsKJGxhbmdbJ3VybF9vcHRpb25zJ10gPSAn0J3QsNGB0YLRgNC+0LnQutC4INGB0YHRi9C70L7Quic7CiRsYW5nWydwcm9tcHRfZnJpZW5kbHluYW1lJ10gPSAn0JTRgNGD0LbQtdGB0YLQstC10L3QvdC+0LUg0LjQvNGPINC80L7QtNGD0LvRjyc7CiRsYW5nWydwcm9tcHRfaXRlbV9zaW5ndWxhciddID0gJ9CV0LTQuNC90LjRh9C90LDRjyDQt9Cw0L/QuNGB0YwnOwokbGFuZ1sncHJvbXB0X2l0ZW1fcGx1cmFsJ10gPSAn0JzQvdC+0LbQtdGB0YLQstC10L3QvdGL0LUg0LfQsNC/0LjRgdC4JzsKJGxhbmdbJ3Byb21wdF91cmxfcHJlZml4J10gPSAn0J/RgNC10YTQuNC60YEg0LTQu9GPINGB0YHRi9C70LrQuCc7CiRsYW5nWydwcm9tcHRfZGlzcGxheV9pbmxpbmUnXSA9ICfQn9C+0LrQsNC30YvQstCw0YLRjCDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4IGlubGluZSc7CiRsYW5nWydwcm9tcHRfaXRlbV9jb2xzJ10gPSAnU2hvdyB0aGlzIGZpZWxkcyBpbiBpdGVtIG92ZXJ2aWV3JzsKJGxhbmdbJ2NoYW5nZXNzYXZlZCddID0gJ9CS0LDRiNC4INC40LfQvNC10L3QtdC90LjRjyDQsdGL0LvQuCDRg9GB0L/QtdGI0L3QviDRgdC+0YXRgNCw0L3QtdC90YsuJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICfQktGLINGD0LLQtdGA0LXQvdGLINCyINGC0L7QvCwg0YfRgtC+INGF0L7RgtC40YLQtSDRjdGC0L4g0YPQtNCw0LvQuNGC0Yw/JzsKJGxhbmdbJ3VwJ10gPSAn0JLQstC10YDRhSc7CiRsYW5nWydkb3duJ10gPSAn0JLQvdC40LcnOwokbGFuZ1snZWRpdCddID0gJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ9Cj0LTQsNC70LjRgtGMJzsKJGxhbmdbJ25vc3VjaGlkJ10gPSAnTm8gc3VjaCBJRCc7CiRsYW5nWydkZWxldGVkJ10gPSAn0JfQsNC/0LjRgdGMKNC4KSDQsdGL0LvQsCDRg9GB0L/QtdGI0L3QviDRg9C00LDQu9C10L3QsC4nOwokbGFuZ1snYWRkJ10gPSAn0JTQvtCx0LDQstC40YLRjCAlcyc7CiRsYW5nWydhbGlhcyddID0gJ9CQ0LvQuNCw0YEnOwokbGFuZ1snYWxpYXNfaW52YWxpZCddID0gJ0FsaWFzIGlzIGludmFsaWQuIEl0IG11c3QgYmUgYSB2YWxpZCBQSFAgdmFyaWFibGUgbmFtZSc7CiRsYW5nWydzZWFyY2gnXSA9ICfQn9C+0LjRgdC6JzsKJGxhbmdbJ3NlYXJjaGZvciddID0gJ9Cf0L7QuNGB0Log0LTQu9GPJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZSddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0xpc3RJdCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4nOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICcgaGFzIHN1Y2Nlc3NmdWxseSBiZWVuIGluc3RhbGxlZCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiB1bmluc3RhbGxlZCc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8cD5WZXJzaW9uIDEuMTwvcD48dWw+PGxpPk11bGl0bGV2ZWwgQ2F0ZWdvcmllczwvbGk+PGxpPlN1bW1hcnkgUGFnaW5hdGlvbjwvbGk+PGxpPk11bHRpcGxlIENhdGVnb3JpZXMgZm9yIHBhcmFtZXRlciBjYXRlZ29yeTwvbGk+PGxpPkNNU01TIDEuMTAgcmVhZHk8L2xpPjxsaT5CYWNrZW5kIHRhYmxlIHNlYXJjaDwvbGk+PGxpPkV4Y2x1ZGUgQ2F0ZWdvcnkgcGFyYW1ldGVyPC9saT48L3VsPic7CiRsYW5nWydoZWxwJ10gPSAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIGxhbmd1YWdlPSJqYXZhc2NyaXB0IiBzcmM9Ii9tb2R1bGVzLy9qcy9seXRlYm94LmpzIj48L3NjcmlwdD4NCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL21vZHVsZXMvL2Nzcy9seXRlYm94LmNzcyIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iIC8+DQoNCjxkaXYgaWQ9InBhZ2VfdGFicyI+ICAgICANCiAgPGRpdiBpZD0iZ2VuZXJhbCI+DQogICAg0JPQu9Cw0LLQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8gICANCiAgPC9kaXY+ICAgICANCiAgPGRpdiBpZD0idXNhZ2UiPg0KICAgINCf0YDQuNC80LXQvdC10L3QuNC1ICAgDQogIDwvZGl2PiAgICAgDQogIDxkaXYgaWQ9InBlcm1pc3Npb25zIj4NCiAgICDQn9GA0LDQstCwINC00L7RgdGC0YPQv9CwDQogIDwvZGl2PiAgICAgDQogIDxkaXYgaWQ9ImZpZWxkIj4NCiAgICDQntC/0YDQtdC00LXQu9C10L3QuNGPINC/0L7Qu9C10LkgIA0KICA8L2Rpdj4gICAgIA0KICA8ZGl2IGlkPSJjYXRlZ29yaWVzIj4NCiAgICDQmtCw0YLQtdCz0L7RgNC40LgNCiAgPC9kaXY+ICAgICANCiAgPGRpdiBpZD0idGVtcGxhdGVzIj4NCiAgICDQqNCw0LHQu9C+0L3Riw0KICA8L2Rpdj4gICAgIA0KICA8ZGl2IGlkPSJkdXBsaWNhdGluZyI+DQogICAgRHVwbGljYXRpbmcgdGhpcyBtb2R1bGUgICANCiAgPC9kaXY+DQogIDxkaXYgaWQ9ImFib3V0Ij4NCiAgICDQniDQvNC+0LTRg9C70LUNCiAgPC9kaXY+ICANCjwvZGl2PiAgIA0KPGRpdiBjbGFzcz0iY2xlYXJiIj4gIA0KPC9kaXY+DQo8ZGl2IGlkPSJwYWdlX2NvbnRlbnQiPiAgDQogIDxkaXYgaWQ9ImdlbmVyYWxfYyI+CTxoMz5HZW5lcmFsIEluZm88L2gzPgkJDQogICAgPHA+U2ltcGx5IHB1dCwgTGlzdEl0IGFsbG93cyB5b3UgdG8gY3JlYXRlIGxpc3RzIHRoYXQgeW91IGNhbiBkaXNwbGF5IHRocm91Z2hvdXQgeW91ciB3ZWJzaXRlLiBZb3UgY291bGQgbWFrZSBhIHNpbXBsZSBGQVEgb3IgVGVzdGltb25pYWxzIGZlYXR1cmUgd2l0aCB0aGlzIG1vZHVsZS4gVGhlIHdlYiBkZXZlbG9wZXIgZGVmaW5lcyBmaWVsZHMgdG8gY29uc3RyYWluIHdoYXQgZGF0YSB0aGUgY2xpZW50IGNhbiBlbnRlci4gQSBudW1iZXIgb2YgZmllbGQgdHlwZXMgY2FuIGJlIHNwZWNpZmllZCAtIHRleHQgaW5wdXQsIGNoZWNrYm94LCB0ZXh0IGFyZWEsIHNlbGVjdCBkYXRlLCB1cGxvYWQgZmlsZSwgc2VsZWN0IGZpbGUsIGRyb3Bkb3duIC0gYW5kIGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBzZXQgZm9yIGVhY2ggdHlwZSwgZm9yIGV4YW1wbGUsIGlucHV0IGZpZWxkIHNpemUsIG1heCBsZW5ndGgsIFdZU0lXWUcgZWRpdG9yLCBwb3NzaWJsZSBkcm9wIGRvd24gdmFsdWVzLCBwb3NzaWJsZSBmaWxlIGV4dGVuc2lvbnMsIGRpcmVjdG9yeSBwYXRocyBmb3IgZmlsZSBzZWxlY3Rpb25zLCBkYXRlIGZvcm1hdHMsIGV0Yy4NCiAgICA8L3A+DQogICAgPHA+QW4gaW1wb3J0YW50IG5vdGUgb2Ygd2FybmluZyAtIFRoaXMgaXMgbm90IGEgY29udGVudCBjb25zdHJ1Y3Rpb24ga2l0LCBzdWNoIGFzIGluIERydXBhbC4gSXQgaXMgbWVhbnQgZm9yIHNtYWxsIGxpc3RpbmdzLCBub3QgdG8gc3RvcmUgdGhvdXNhbmRzIG9mIHJlY29yZHMuIFRoaXMgaXMgYmVjYXVzZSBvZiB0aGUgZGF0YWJhc2UgbW9kZWwgdXNlZCAoRUFWKS4gQWxzbywgZWFjaCBiaXQgb2YgZGF0YSB5b3UgZW50ZXIgaXMgc3RvcmVkIGFzIFRFWFQgZGF0YSB0eXBlLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgaXQgaXMgdmFyY2hhciwgYm9vbGVhbiwgdGltZXN0YW1wLCBldGMuIFRoaXMgaXMgYSByZXN0cmljdGlvbiBvZiBhIHNob3J0IGRldmVsb3BtZW50IHRpbWUgZnJhbWUuDQogICAgPC9wPgkNCiAgPC9kaXY+CQ0KICA8ZGl2IGlkPSJ1c2FnZV9jIj4JCQ0KICAgIDxoMz5Vc2FnZTwvaDM+CQkJDQogICAgICA8cD5Zb3UgY2FuIGNvbmZpZ3VyZSAgaGVyZTogQ29udGVudCA+IA0KICAgICAgPC9wPgkJCQ0KICAgIDxwPlBsYWNlIHRoaXMgdGFnIGluIHlvdXIgcGFnZTo8YnIgLz4JDQogICAge30NCiAgICA8L3A+CQkNCiAgICA8ZGl2PgkJCQ0KICAgICAgPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsgd2lkdGg6MjEwcHg7IG1hcmdpbi1yaWdodDoxMHB4OyBtYXJnaW4tYm90dG9tOjIwcHg7Ij4JCQkNCiAgICAgICAgPGEgdGl0bGU9IlNldHRpbmcgdGhlIE1vZHVsZSBPcHRpb25zIiByZWw9Imx5dGVib3hbXSIgaHJlZj0iL21vZHVsZXMvL2ltYWdlcy9zY3JlZW5zaG90MS5qcGciPg0KICAgICAgICAgIDxpbWcgc3JjPSIvbW9kdWxlcy8vaW1hZ2VzL3RodW1iX3NjcmVlbnNob3QxLmpwZyIgYWx0PSJTZXR0aW5nIHRoZSBNb2R1bGUgT3B0aW9ucyIgLz48L2E+DQogICAgICA8L2Rpdj4JCQ0KICAgICAgPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsiPg0KICAgICAgICBBZnRlciBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgdGhlIG5leHQgdGhpbmcgdG8gZG8gaXMgc2V0IHRoZSBvcHRpb25zLiAgCQkJCQ0KICAgICAgICA8b2w+CQkJCQkNCiAgICAgICAgICA8bGk+VG8gY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgaW4gdGhlIG1lbnUgY2hhbmdlIHRoZSBcJ01vZHVsZSBGcmllbmRseSBOYW1lXCcuDQogICAgICAgICAgPC9saT4JCQkJCQ0KICAgICAgICAgIDxsaT5UbyBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGl0ZW0gdGFiIGNoYW5nZSB0aGUgXCdJdGVtIFBsdXJhbFwnLg0KICAgICAgICAgIDwvbGk+CQkJCQ0KICAgICAgICA8L29sPgkJDQogICAgICA8L2Rpdj4NCiAgICAgIDxiciBzdHlsZT0iY2xlYXI6Ym90aDsiIC8+CQkNCiAgICA8L2Rpdj4JCQ0KICAgIDxkaXY+DQogICAgICA8ZGl2IHN0eWxlPSJmbG9hdDpsZWZ0OyB3aWR0aDoyMTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IG1hcmdpbi1ib3R0b206MjBweDsiPg0KICAgICAgICA8YSB0aXRsZT0iU2V0dGluZyB0aGUgRmllbGQgRGVmaW5pdGlvbnMiIHJlbD0ibHl0ZWJveFtdIiBocmVmPSIvbW9kdWxlcy8vaW1hZ2VzL0FkZF9GaWVsZERlZl9UYWI4LnBuZyI+DQogICAgICAgICAgPGltZyBzcmM9Ii9tb2R1bGVzLy9pbWFnZXMvdGh1bWJfQWRkX0ZpZWxkRGVmX1RhYjgucG5nIiBhbHQ9IlNldHRpbmcgdGhlIEZpZWxkIERlZmluaXRpb25zIiAvPjwvYT4NCiAgICAgIDwvZGl2Pg0KICAgICAgPGRpdiBzdHlsZT0iZmxvYXQ6bGVmdDsiPg0KICAgICAgICBOZXh0IC0gc2V0IHRoZSBGaWVsZCBEZWZpbml0aW9ucy4gDQogICAgICAgIDxvbD4NCiAgICAgICAgICA8bGk+Q2hvb3NlIGZyb20gXCdUZXh0IElucHV0XCcsIFwnQ2hlY2tib3hcJywgXCdUZXh0IEFyZWFcJywgXCdTZWxlY3QgRGF0ZVwnLCBcJ1VwbG9hZCBGaWxlXCcsIFwnU2VsZWN0IEZpbGVcJyAmIFwnRHJvcGRvd25cJy4NCiAgICAgICAgICA8L2xpPg0KICAgICAgICAgIDxsaT5Gb3IgZWFjaCBmaWVsZCBkZWZpbml0aW9uLCB5b3UgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgaW4gdGhlIFwnZXh0cmFcJyBmaWVsZC4gU2VlIHRoZSBcJ0ZpZWxkIERlZmluaXRpb25zXCcgdGFiIGZvciBhIGxpc3QuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgICA8bGk+RWFjaCBpdGVtIGluIGVhY2ggbGlzdCBoYXMgdGhyZWUgZGVmYXVsdCBmaWVsZHMuIEFsbCBGaWVsZCBEZWZpbml0aW9ucyBzZXQgaGVyZSBhcmUgYWRkaXRpb25hbCB0byB0aGVtLg0KICAgICAgICAgIDwvbGk+DQogICAgICAgIDwvb2w+DQogICAgICA8L2Rpdj48YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICA8ZGl2IHN0eWxlPSJmbG9hdDpsZWZ0OyB3aWR0aDoyMTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IG1hcmdpbi1ib3R0b206MjBweDsiPg0KICAgICAgICA8YSB0aXRsZT0iU2V0dGluZyB0aGUgbGlzdCBjYXRlZ29yaWVzIiByZWw9Imx5dGVib3hbXSIgaHJlZj0iL21vZHVsZXMvL2ltYWdlcy9DYXRlZ29yaWVzX1RhYjgucG5nIj4NCiAgICAgICAgICA8aW1nIHNyYz0iL21vZHVsZXMvL2ltYWdlcy90aHVtYl9DYXRlZ29yaWVzX1RhYjgucG5nIiBhbHQ9IlNldHRpbmcgdGhlIGxpc3QgY2F0ZWdvcmllcyIgLz48L2E+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7Ij4NCiAgICAgICAgVGhlcmUgaXMgYSBzaW5nbGUgY2F0ZWdvcnkgYnkgZGVmYXVsdCBjYWxsZWQgXCdHZW5lcmFsXCcuIFRoaXMgY2FuIGJlIHJlbmFtZWQgYW5kIGFkZGl0aW9uYWwgQ2F0ZWdvcmllcyBjYW4gYmUgYWRkZWQuIA0KICAgICAgPC9kaXY+DQogICAgICA8YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPg0KICAgIDwvZGl2Pg0KICAgIDxkaXY+DQogICAgICA8ZGl2IHN0eWxlPSJmbG9hdDpsZWZ0OyB3aWR0aDoyMTBweDsgbWFyZ2luLXJpZ2h0OjEwcHg7IG1hcmdpbi1ib3R0b206MjBweDsiPg0KICAgICAgICA8YSB0aXRsZT0iQWRkaW5nIExpc3QgSXRlbXMiIHJlbD0ibHl0ZWJveFtdIiBocmVmPSIvbW9kdWxlcy8vaW1hZ2VzL0FkZF9JdGVtX1RhYjgucG5nIj4NCiAgICAgICAgICA8aW1nIHNyYz0iL21vZHVsZXMvL2ltYWdlcy90aHVtYl9BZGRfSXRlbV9UYWI4LnBuZyIgYWx0PSJBZGRpbmcgTGlzdCBJdGVtcyIgLz48L2E+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXYgc3R5bGU9ImZsb2F0OmxlZnQ7Ij4NCiAgICAgICAgTm93IHdlIG1vdmUgb24gdG8gdGhlIEl0ZW0gbGlzdCBpdHNlbGYuIEluIHRoaXMgZXhhbXBsZSBpdCBzYXlzIFwnQWRkIEJveFwnLCB0aGlzIHdhcyByZW5hbWVkIGluIHRoZSBcJ09wdGlvbnNcJyB0YWIuIA0KICAgICAgICA8b2w+DQogICAgICAgICAgPGxpPlRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgZGVmYXVsdCBcJ1RpdGxlXCcgZmllbGQuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgICA8bGk+VGhlIFwnQ2F0ZWdvcnlcJyBkcm9wZG93biBpcyBhbHNvIGEgZGVmYXVsdCBmaWVsZCwgYW5kIGlmIHVuY2hhbmdlZCwgd2lsbCBiZSBzZXQgdG8gXCdHZW5lcmFsXCcuDQogICAgICAgICAgPC9saT4NCiAgICAgICAgICA8bGk+VGhlIHRoaXJkIGRlZmF1bHQgZmllbGQgaXMgdGhlIGNoZWNrYm94IGNhbGxlZCBcJ0FjdGl2ZVwnLiBUaGlzIGFsbG93cyB5b3UgdG8gdG9nZ2xlIGEgbGlzdCBlbnRyeSB3aXRob3V0IGRlbGV0aW5nIGl0Lg0KICAgICAgICAgIDwvbGk+DQogICAgICAgIDwvb2w+DQogICAgICA8L2Rpdj48YnIgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPg0KICAgIDwvZGl2Pg0KICAgIDxkaXYgc3R5bGU9ImNsZWFyOmJvdGg7IiAvPg0KICAgIDwvZGl2Pg0KICA8L2Rpdj4NCiAgPGRpdiBpZD0icGVybWlzc2lvbnNfYyI+PGgzPlBlcm1pc3Npb25zPC9oMz4NCiAgICA8cD5Zb3UgY2FuIHNwZWNpZnkgdGhlIGZvbGxvd2luZyBwZXJtaXNzaW9ucyB1bmRlciBVc2VycyAmIEdyb3VwcyA+IEdyb3VwIFBlcm1pc3Npb25zDQogICAgPC9wPg0KICAgIDx1bD4NCiAgICAgIDxsaT46IE1vZGlmeSBJdGVtcw0KICAgICAgPC9saT4NCiAgICAgIDxsaT46IE1vZGlmeSBDYXRlZ29yaWVzDQogICAgICA8L2xpPg0KICAgICAgPGxpPjogTW9kaWZ5IE9wdGlvbnMNCiAgICAgIDwvbGk+DQogICAgPC91bD4NCgk8cD5UbyBhbGxvdyBub24tYWRtaW4gdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBwbGVhc2UgZ28gdG8gRXh0ZW5zaW9ucyA+IEdCRmlsZVBpY2tlciBhbmQgdGljayB0aGF0IGZpcnN0IGNoZWNrYm94ICJTaG93IGZpbGVtYW5hZ2VtZW50IG9wdGlvbnMiLjwvcD4NCiAgPC9kaXY+DQogIDxkaXYgaWQ9ImZpZWxkX2MiPjxoMz5GaWVsZCBEZWZpbml0aW9uczwvaDM+DQogICAgPHA+VGhlIGZpcnN0IHRoaW5nIHlvdSBzaG91bGQgY29uZmlndXJlIGFyZSB5b3VyIGZpZWxkIGRlZmluaXRpb25zLg0KICAgIDwvcD4NCiAgICA8cD5Gb3IgZWFjaCBmaWVsZCBkZWZpbml0aW9uLCB5b3UgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgaW4gdGhlICJleHRyYSIgZmllbGQuDQogICAgPC9wPg0KICAgIDx1bD4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+c2l6ZVsyMF0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBUZXh0IElucHV0LCBTZWxlY3QgRGF0ZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPiAgICAgICAgDQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPm1heF9sZW5ndGhbMjBdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVGV4dCBJbnB1dCwgVGV4dCBBcmVhLCBTZWxlY3QgRGF0ZQ0KICAgICAgPC9wPiAgICANCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPiAgICAgICAgDQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPnd5c2l3eWdbMV0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVGV4dCBBcmVhDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBrZXk9dmFsdWUsLi4uPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IERyb3Bkb3duDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+YWxsb3dbcGRmLGdpZixwbmcsanBlZyxqcGddDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IGV4dGVuc2lvbiwuLi4gKGtlZXAgbG93ZXJjYXNlKTxiciAvPg0KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT4gICAgICAgIA0KICAgICAgPHA+SW5zdHJ1Y3Rpb246IA0KICAgICAgICA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXQ0KICAgICAgICA8L2NvZGU+PGJyIC8+DQogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEaXJlY3RvcnkgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gDQogICAgICAgIDxjb2RlPiRjb25maWdbXCd1cGxvYWRzX3BhdGhcJ10NCiAgICAgICAgPC9jb2RlPi4gTm8gc2xhc2ggYXQgdGhlIGVuZC4gPGNvZGU+eyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfTwvY29kZT4gd2lsbCBiZSByZXBsYWNlZC48YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IHByZWZpeCwuLi48YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4gICAgDQogICAgICA8bGk+ICAgICAgICANCiAgICAgIDxwPkluc3RydWN0aW9uOiANCiAgICAgICAgPGNvZGU+ZGF0ZWZvcm1hdFtkZC9tbS95eV0NCiAgICAgICAgPC9jb2RlPjxiciAvPg0KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGF0ZSBmb3JtYXQgdXNlZCBieSB0aGUgalF1ZXJ5IGRhdGVwaWNrZXIuIFRyeSBnb29nbGluZyBcJ2pxdWVyeSBmb3JtYXREYXRlXCc8YnIgLz4NCiAgICAgICAgQXBwbGljYWJsZSB0bzogU2VsZWN0IERhdGUNCiAgICAgIDwvcD4gICAgDQogICAgICA8L2xpPg0KCSAgPGxpPiAgICAgICAgDQogICAgICA8cD5JbnN0cnVjdGlvbjogDQogICAgICAgIDxjb2RlPmZpbGVicm93c2VyWzFdDQogICAgICAgIDwvY29kZT48YnIgLz4NCiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+DQogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlPGJyIC8+DQoJCTxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBmaWxlYnJvd3NlciBtb2RlIGluc3RlYWQgb2YgZGVmYXVsdCBkcm9wZG93biBtb2RlDQogICAgICA8L3A+ICAgIA0KICAgICAgPC9saT4NCiAgICA8L3VsPg0KICAgIDxwPllvdSBjYW4gc3BlY2lmeSBtdWx0aXBsZSBpbnN0cnVjdGlvbnMgc2VwYXJhdGVkIGJ5IGEgc2VtaWNvbG9uICgNCiAgICAgIDxjb2RlPjsNCiAgICAgIDwvY29kZT4pLCBmb3IgZXhhbXBsZToNCiAgICA8L3A+DQogICAgPHA+DQogICAgICA8Y29kZT5hbGxvd1twZGZdO2RpclsvZG9jcy9wZGZdDQogICAgICA8L2NvZGU+DQogICAgPC9wPg0KICAgIA0KICAgIDxwPg0KICAgICAgICA8aDM+RmllbGQgRGVmaW5pdGlvbnMgYnkgdHlwZTwvaDM+DQogICAgPC9wPg0KICAgICAgICANCiAgICA8dWw+DQogICAgICAgIDxsaT5UZXh0IElucHV0OiA8Y29kZT5zaXplWzIwXTttYXhfbGVuZ3RoWzIwXTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+Q2hlY2tib3g6IDxjb2RlPi08L2NvZGU+PC9saT4NCiAgICAgICAgPGxpPlRleHQgQXJlYTogPGNvZGU+bWF4X2xlbmd0aFsyMF07d3lzaXd5Z1sxXTwvY29kZT48L2xpPg0KICAgICAgICA8bGk+U2VsZWN0IERhdGU6IDxjb2RlPnNpemVbMjBdO21heF9sZW5ndGhbMjBdO2RhdGVmb3JtYXRbZGQvbW0veXldPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5VcGxvYWQgRmlsZTogPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ107ZGlyWy9wYXRoL3RvL2Rpcl07ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5TZWxlY3QgRmlsZTogPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ107ZGlyWy9wYXRoL3RvL2Rpcl07ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dO2ZpbGVicm93c2VyWzFdPC9jb2RlPjwvbGk+DQogICAgICAgIDxsaT5Ecm9wZG93bjogPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXTwvY29kZT48L2xpPg0KICAgIDwvdWw+DQogICAgDQogIDwvZGl2Pg0KICA8ZGl2IGlkPSJjYXRlZ29yaWVzX2MiPg0KICAgIDxoMz5DYXRlZ29yaWVzPC9oMz4NCiAgICA8cD5NdWx0aSBsZXZlbCBjYXRlZ29yaWVzIGFyZSBzdXBwb3J0ZWQuDQogICAgPC9wPg0KICA8L2Rpdj4NCiAgPGRpdiBpZD0idGVtcGxhdGVzX2MiPg0KICAgIDxoMz5UZW1wbGF0ZXM8L2gzPg0KICAgIDxwPklmIHlvdSBhcmUgbm90IHN1cmUgd2hhdCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZSB0byB1c2UgaW4geW91ciB0ZW1wbGF0ZXMsIHRyeSB0aGUgZGVidWcgdGVtcGxhdGU6DQogICAgPC9wPg0KICAgIDxwPnsgc3VtbWFyeXRlbXBsYXRlPVwnZGVidWdcJ30NCiAgICA8L3A+DQogICAgPHA+WW91IGNhbiBhY2Nlc3MgYW55IGZpZWxkIGRpcmVjdGx5IHdoZW4gbG9vcGluZyB0aHJvdWdoIGl0ZW1zIHVzaW5nIGl0cyBhbGlhcywgZm9yIGV4YW1wbGUsIHRvIGlmIHlvdSBjcmVhdGVkIGEgZmllbGQgZGVmaW5pdGlvbiB3aXRoIGFuIGFsaWFzICJwb3NpdGlvbiIsIHlvdSBjYW4gZG86DQogICAgPC9wPg0KPHByZSBjbGFzcz0iY29kZSI+DQo8Y29kZT4NCntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09aXRlbX0NCiAgICB7JGl0ZW0tPmZpZWxkZGVmcy5wb3NpdGlvbi52YWx1ZXxjbXNfZXNjYXBlfTxiciAvPg0Key9mb3JlYWNofQ0KPC9jb2RlPg0KPC9wcmU+DQogICAgPHA+QmVzaWRlcywgeW91IGNhbiBsb29wIHRocm91Z2ggY2F0ZWdvcmllcyBpbiB0aGUgc3VtbWFyeSB0ZW1wbGF0ZSBqdXN0IGFzIHdlbGwgYXMgbG9vcGluZyB0aHJvdWdoIGl0ZW1zOjwvcD4NCjxwcmUgY2xhc3M9ImNvZGUiPg0KPGNvZGU+DQp7Zm9yZWFjaCBmcm9tPSRjYXRlZ29yaWVzIGl0ZW09Y2F0ZWdvcnl9DQogICAgeyRjYXRlZ29yeS0+bmFtZX08YnIgLz4NCgl7JGNhdGVnb3J5LT5hbGlhc308YnIgLz4NCgl7JGNhdGVnb3J5LT5pZH08YnIgLz4NCnsvZm9yZWFjaH0NCjwvY29kZT4NCjwvcHJlPg0KICA8L2Rpdj4NCiAgPGRpdiBpZD0iZHVwbGljYXRpbmdfYyI+DQogICAgPGgzPkR1cGxpY2F0aW5nIHRoaXMgbW9kdWxlPC9oMz4NCiAgICA8cD5UaGlzIG1vZHVsZSB3YXMgbWFkZSB0byBiZSBlYXNpbHkgZHVwbGljYXRlZC4NCiAgICA8L3A+VG8gZHVwbGljYXRlIHRoaXMgbW9kdWxlLCBmb2xsb3cgdGhlc2Ugc3RlcHMgQkVGT1JFIGluc3RhbGxpbmcgdGhlIG1vZHVsZToNCiAgICA8L3A+DQogICAgPG9sPiAgICANCiAgICAgIDxsaT5SZW5hbWUgdGhlIGRpcmVjdG9yeSAiPGI+TGlzdEl0PC9iPiINCiAgICAgIDwvbGk+ICAgIA0KICAgICAgPGxpPlJlbmFtZSAiY2xhc3MgPGI+TGlzdEl0PC9iPiBleHRlbmRzIENNU01vZHVsZSIgaW5zaWRlIExpc3RJdC5tb2R1bGUucGhwDQogICAgICA8L2xpPiAgICANCiAgICAgIDxsaT5SZW5hbWUgIjxiPkxpc3RJdDwvYj4ubW9kdWxlLnBocCINCiAgICAgIDwvbGk+DQogICAgPC9vbD4NCiAgICA8cD5NYWtlIHN1cmUgeW91IGZvbGxvdyB0aGUgQ01TTVMgbW9kdWxlIG5hbWluZyBjb252ZW50aW9ucywgYS16IHdpdGggbm8gcHVuY3R1YXRpb24gY2hhcmFjdGVycyBvciBzcGFjZXMgdG8gYmUgc2FmZSA6KQ0KICAgIDwvcD4NCiAgICA8cD5Zb3UgY2FuIGFsd2F5cyBjaGFuZ2UgdGhlIG1vZHVsZSBmcmllbmRseSBuYW1lIG9uY2UgaW5zdGFsbGVkIHVuZGVyICJPcHRpb25zIiAoQ29udGVudCA+ICkuIFRvIGNoYW5nZSB0aGUgaWNvbiwgcmVwbGFjZSAvbW9kdWxlcy8vaW1hZ2VzL2ljb24uZ2lmLg0KICAgIDwvcD4NCiAgPC9kaXY+DQogIDxkaXYgaWQ9ImFib3V0X2MiPg0KICAgIDxoMz5BYm91dDwvaDM+DQogICAgPHA+T3JpZ2luIG9mIHRoaXMgbW9kdWxlIGNvbWVzIGZyb20gPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9saXN0aXQiIHRhcmdldD0iX2JsYW5rIj5MaXN0SXQgTW9kdWxlPC9hPiBkZXZlbG9wZWQgYnkgQmVuIE1hbGVuLjxiciAvPkFzIHRoZXJlIHdlcmUgbm8gcGxhbnMgb24gZnVydGhlciBkZXZlbG9wZW1lbnQgb2YgdGhlIE1vZHVsZSBzb21lIHBlb3BsZSBkZWNpZGVkIHRvIEZvcmsgdGhlIG1vZHVsZSBhbmQgY29udGludWUgd2l0aCBkZXZlbG9wZW1lbnQuPGJyIC8+DQogICAgSWYgeW91IGZpbmQgYW55IEJ1Z3MgcGxlYXNlIGZlZWwgZnJlZSB0byBzdWJtaXQgYSBCdWcgcmVwb3J0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvYnVnL2xpc3QvMTAxNSIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+IG9yIGZvciBhbnkgZ29vZCBpZGVhcyBjb25zaWRlciBzdWJtaXRpbmcgYSBGZWF0dXJlIHJlcXVlc3QgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9mZWF0dXJlX3JlcXVlc3QvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uIDxiciAvPg0KICAgIFBsZWFzZSBrZWVwIGluIG1pbmQgdGhhdCBEZXZlbG9wZXJzIGRvIGhhdmUgdGhlaXIgRGFpbHkgSm9icywgd2hpY2ggbWVhbnMgdGhhdCBGZWF0dXJlIHJlcXVlc3RzIGFyZSBiZWluZyBjb25zaWRlcmVkIGFuZCBkb25lIGFzIHRpbWUgYWxsb3dzLiBJZiB5b3UgbmVlZCBhIEZlYXR1cmUgcmVhbHkgYmFkIHRoZW4gY29uc2lkZXIgQ29udGFjdGluZyBvbmUgb2YgRGV2ZWxvcGVycyBmb3IgYSBTcG9uc29yZWQgRGV2ZWxvcGVtZW50Lg0KICAgIDwvcD4NCiAgICA8cD48c3Ryb25nPlRlYW08L3N0cm9uZz48L3A+DQogICAgPHVsPg0KICAgICAgPGxpPkpvbmF0aGFuIFNjaG1pZCAoRm9hbHkqKSBoaUBqb25hdGhhbnNjaG1pZC5kZSA8YnIgLz53d3cuam9uYXRoYW5zY2htaWQuZGU8L2xpPg0KICAgICAgPGxpPkx1a2FzIEJsYXR0ZXIgKG5vY2tlbmZlbGwpIG5vY2tlbmZlbGxAZ21haWwuY29tIDxiciAvPnd3dy5ibGF0dGVydGVjaC5jaDwvbGk+DQogICAgICA8bGk+QXJub3VkIChhcm5vdWQpIGFybm91ZEB1cHNlcnZpY2UubmwgPGJyIC8+d3d3LnVwc2VydmljZS5ubDwvbGk+DQogICAgICA8bGk+R29yYW4gSWxpYyAodW5pcXUzKSBnLmlsaWNAaS1hcnRzLmV1IDxiciAvPnd3dy5pY2gtbWFjaC1kYXMuYXQ8L2xpPg0KICAgIDwvdWw+ICANCiAgPC9kaXY+ICANCjwvZGl2Pic7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJ092ZXJyaWRlIHRoZSBkZWZhdWx0IGFjdGlvbi4gUG9zc2libGUgdmFsdWVzIGFyZToNCjx1bD4NCjxsaT4iZGVmYXVsdCIgLSB0byBkaXNwbGF5IHRoZSBzdW1tYXJ5IHZpZXcuPC9saT4NCjxsaT4iZGV0YWlsIiAtIHRvIGRpc3BsYXkgYSBzcGVjaWZpZWQgZW50cnkgaW4gZGV0YWlsIG1vZGUuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2FsbCddID0gJ1Nob3cgYWxsIGl0ZW1zLCBpcnJlc3BlY3RpdmUgb2YgZW5kIGRhdGUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IHRoZSBjYXRlZ29yeSBhbGlhcyBvciBjb21tYSBzZXBhcmF0ZWQgY2F0ZWdvcnkgYWxpYXNlcyB0byBkaXNwbGF5IGl0ZW1zIG9ubHkgZnJvbSBzcGVjaWZpZWQgY2F0ZWdvcnkuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZXhjbHVkZV9jYXRlZ29yeSddID0gJ1NwZWNpZnkgdGhlIGNhdGVnb3J5IGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBjYXRlZ29yeSBhbGlhc2VzIHRvIGV4Y2x1ZGUgaXRlbXMgb25seSBmcm9tIHNwZWNpZmllZCBjYXRlZ29yeS4nOwokbGFuZ1snaGVscF9wYXJhbV9zdWJjYXRlZ29yeSddID0gJ0lmIHlvdSBoYXZlIHNwZWNpZmllZCBhIENhdGVnb3J5IHlvdSBjYW4gYWxzbyBzcGVjaWZ5IHdpdGggPGVtPnRydWU8L2VtPiBpZiBpdGVtcyBmcm9tIFN1YmNhdGVnb3JpZXMgc2hvdWxkIGJlIGRpc3BsYXllZC4gSXQgaXMgc2V0IHRvIGZhbHNlIGJ5IGRlZmF1bHQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlsdGVtcGxhdGUnXSA9ICdUaGUgZGV0YWlsIHRlbXBsYXRlIHlvdSB3aXNoIHRvIHVzZS4nOwokbGFuZ1snaGVscF9wYXJhbV9zdW1tYXJ5dGVtcGxhdGUnXSA9ICdUaGUgc3VtbWFyeSB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UnOwokbGFuZ1snaGVscF9wYXJhbV9vcmRlcmJ5J10gPSAnWW91IGNhbiBvcmRlciBieSBhbnkgb2YgdGhlIGZvbGxvd2luZyBjb2x1bW5zOiBpdGVtX2lkLCBpdGVtX3RpdGxlLCBpdGVtX3Bvc2l0aW9uLCBjYXRlZ29yeV9pZCwgY2F0ZWdvcnlfbmFtZSwgY2F0ZWdvcnlfcG9zaXRpb24sIGNhdGVnb3J5X2hpZXJhcmNoeS48YnIgLz4NCjx1bD4NCjxsaT5Gb3IgZXhhbXBsZTo8YnIgLz4NCm9yZGVyYnk9XCdjYXRlZ29yeV9uYW1lLCBpdGVtX3RpdGxlXCc8L2xpPg0KPGxpPllvdSBjYW4gYWxzbyBzcGVjaWZ5IGFzY2VuZGluZyBvciBkZXNjZW5kaW5nIGZvciBhbnkgY29sdW1uLCBmb3IgZXhhbXBsZTo8YnIgLz4NCm9yZGVyYnk9XCdjYXRlZ29yeV9uYW1lfGFzYywgaXRlbV90aXRsZXxkZXNjXCc8L2xpPg0KPC91bD4NCic7CiRsYW5nWydoZWxwX3BhcmFtX3BhZ2VsaW1pdCddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKS4gIElmIHRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzdXBwbGllZCBhbGwgbWF0Y2hpbmcgaXRlbXMgd2lsbCBiZSBkaXNwbGF5ZWQuICBJZiBpdCBpcywgYW5kIHRoZXJlIGFyZSBtb3JlIGl0ZW1zIGF2YWlsYWJsZSB0aGFuIHNwZWNpZmllZCBpbiB0aGUgcGFyYW1ldGVyLCB0ZXh0IGFuZCBsaW5rcyB3aWxsIGJlIHN1cHBsaWVkIHRvIGFsbG93IHNjcm9sbGluZyB0aHJvdWdoIHRoZSByZXN1bHRzJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3RhcnQnXSA9ICdTdGFydCBhdCB0aGUgbnRoIGl0ZW0gLS0gbGVhdmluZyBlbXB0eSB3aWxsIHN0YXJ0IGF0IHRoZSBmaXJzdCBpdGVtLic7CiRsYW5nWydoZWxwX3BhcmFtX251bWJlciddID0gJ01heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgKHBlciBwYWdlKSAtLSBsZWF2aW5nIGVtcHR5IHdpbGwgc2hvdyBhbGwgaXRlbXMuIFRoaXMgaXMgYSBzeW5vbnltIGZvciB0aGUgcGFnZWxpbWl0IHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9wYXJhbV9kZXRhaWxwYWdlJ10gPSAnUGFnZSB0byBkaXNwbGF5IGl0ZW0gZGV0YWlscyBpbi4gTXVzdCBiZSBhIHBhZ2UgYWxpYXMuIFVzZWQgdG8gYWxsb3cgZGV0YWlscyB0byBiZSBkaXNwbGF5ZWQgaW4gYSBkaWZmZXJlbnQgcGFnZSB0aGFuIHN1bW1hcnkuJzsKJGxhbmdbJ2hlbHBfcGFyYW1faXRlbSddID0gJ1RoaXMgcGFyYW1ldGVyIGlzIG9ubHkgYXBwbGljYWJsZSB0byB0aGUgZGV0YWlsIHZpZXcuIEl0IGFsbG93cyBzcGVjaWZ5aW5nIHdoaWNoIGl0ZW0gdG8gZGlzcGxheSBpbiBkZXRhaWwgbW9kZS4gTXVzdCBiZSBhbiBpdGVtIGFsaWFzLic7CiRsYW5nWydxY2EnXSA9ICdQMC0xNjE3MDUwODUxLTEzMTc4MTA4Mzg2MDEnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4yMTE1MDc1NjAuMTMxOTQ0Njk1Ny4xMzE5NDQ2OTU3LjEzMTk0NDY5NTcuMSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzMTk0NDY5NTcuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sr_YU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ludmFsaWRfY2hhcmFjdGVycyddID0gJ1puYWtvdmkga2FvOiAlcyBuaXN1IGRvenZvbGplbmkgemEgdG8gcG9samU6ICVzJzsKJGxhbmdbJ2l0ZW0nXSA9ICdBcnRpa2FsJzsKJGxhbmdbJ2l0ZW1zJ10gPSAnQXJ0aWtsaSc7CiRsYW5nWydmaWVsZGRlZiddID0gJ0RlZmluaWNpamEgcG9samEnOwokbGFuZ1snZmllbGRkZWZzJ10gPSAnRGVmaW5pY2lqZSBwb2xqYSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb24nOwokbGFuZ1sndGVtcGxhdGVzJ10gPSAnJlNjYXJvbjthYmxvbmknOwokbGFuZ1snY2F0ZWdvcnknXSA9ICdLYXRlZ29yaWphJzsKJGxhbmdbJ2NhdGVnb3JpZXMnXSA9ICdLYXRlZ29yaWplJzsKJGxhbmdbJ29wdGlvbiddID0gJ09wY2lqYSc7CiRsYW5nWydvcHRpb25zJ10gPSAnT3BjaWplJzsKJGxhbmdbJ2JhY2snXSA9ICdKZWRudSBzdHJhbiBuYXphZCc7CiRsYW5nWydpdGVtX3RpdGxlJ10gPSAnTmFzbG92JzsKJGxhbmdbJ3Byb21wdF9pdGVtX3RpdGxlJ10gPSAnTmFzbG92IEFydGlrbGEnOwokbGFuZ1snYWN0aXZlJ10gPSAnQWt0aXZubyc7CiRsYW5nWyd0aW1lX2NvbnRyb2wnXSA9ICdLb3Jpc3RpdGUga29udHJvbHUgdnJlbWVuYSc7CiRsYW5nWydzdGFydF90aW1lJ10gPSAnRGF0dW0gcG/EjWV0a2EnOwokbGFuZ1snZW5kX3RpbWUnXSA9ICdEYXR1bSBrcmFqYSc7CiRsYW5nWydpdGVtX3RpdGxlX2VtcHR5J10gPSAnTmFzbG92IGFydGlrbGEgamUgcHJhemFuJzsKJGxhbmdbJ3JlcXVpcmVkX2ZpZWxkX2VtcHR5J10gPSAnT2JhdmV6bm8gcG9samUgamUgcHJhem5vJzsKJGxhbmdbJ3Rvb19sb25nJ10gPSAnVnJlZG5vc3QgcG9samEgcHJlbGF6aSBtYWtzaW1hbG51IGR1xb5pbnUnOwokbGFuZ1snYXBwcm92ZSddID0gJ1Bvc3Rhdmkgc3RhdHVzIG5hICZxdW90O0FrdGl2YW4mcXVvdDsnOwokbGFuZ1sncmV2ZXJ0J10gPSAnUG9zdGF2aSBzdGF0dXMgbmEgJiMwMzk7RGVrYXRpdmlyYW4mIzAzOTsnOwokbGFuZ1snc3VibWl0X29yZGVyJ10gPSAnU2HEjXV2YWogcmVkb3NsZWQnOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnSXpicmkmc2Nhcm9uO2kgaXphYnJhbmEgJXMnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVtdWx0aXBsZSddID0gJ0RhIGxpIHN0ZSBzaWd1cm5pIGRhIMW+ZWxpdGUgZGEgaXpicmkmc2Nhcm9uO2V0ZSAlcz8nOwokbGFuZ1snc2VsZWN0X2FsbCddID0gJ0l6YWJlcmkgc3ZlJzsKJGxhbmdbJ2Vycm9yX3N0YXJ0Z3JlYXRlcmVuZCddID0gJ0RhdHVtIHBvxI1ldGthIGplIHZlxIdlIG9kIGtyYWpuamVnIGRhdHVtYS4nOwokbGFuZ1snaXRlbV9hbGlhc19leGlzdHMnXSA9ICdBbGlhcyBhcnRpa2xhIHBvc3RvamkuIEFsaWFzIG1vcmEgYml0aSBqZWRpbnN0dmVuLic7CiRsYW5nWydyZXR1cm5fdXJsJ10gPSAnTmF6YWQnOwokbGFuZ1sncGF0aGNvbnRhaW5zdmFycyddID0gJ092byBwb2xqZSBtb8W+ZSBzZSBpem1lbml0aSBuYWtvbiDEjXV2YW5qYSBvdm9nICVzJzsKJGxhbmdbJ2VkaXRmaWVsZGRlZiddID0gJ0l6bWVuaSBkZWZpbmljaWp1IHBvbGphJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWUnXSA9ICdJbWUnOwokbGFuZ1snZmllbGRkZWZfaGVscCddID0gJ0tvcmlzdGFuIHNhdmV0JzsKJGxhbmdbJ2ZpZWxkZGVmX3R5cGUnXSA9ICdUaXAnOwokbGFuZ1snZmllbGRkZWZfbWF4X2xlbmd0aCddID0gJ01ha3NpbWFsbmEgZHXFvmluYSc7CiRsYW5nWydmaWVsZGRlZl9yZXF1aXJlZCddID0gJ09iYXZlem5vJzsKJGxhbmdbJ2V4dHJhJ10gPSAnRG9kYXRubyc7CiRsYW5nWyd0ZXh0Ym94J10gPSAnVGVrc3QgcG9samUnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdQb2xqZSB6YSBwb3R2cmR1JzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnWm9uYSB0ZWtzdGEnOwokbGFuZ1snc2VsZWN0X2RhdGUnXSA9ICdJemJvciBEYXR1bWEnOwokbGFuZ1sndXBsb2FkX2ZpbGUnXSA9ICdVcGxvYWQgZGF0b3Rla2UnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG92bic7CiRsYW5nWydnYWxsZXJ5J10gPSAnRHJvcGRvdm4gR2FsZXJpamUnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aXNlbGVjdCc7CiRsYW5nWydoaWVyYXJjaHknXSA9ICdTdHJhbmljZSc7CiRsYW5nWydzZWxlY3RfZmlsZSddID0gJ0l6Ym9yIGRhdG90ZWtlJzsKJGxhbmdbJ2ZpZWxkc2V0X3N0YXJ0J10gPSAnRmllbGRzZXQgcG/EjWV0YWsnOwokbGFuZ1snZmllbGRzZXRfZW5kJ10gPSAnRmllbGRzZXQga3Jhaic7CiRsYW5nWydmaWVsZGRlZl9uYW1lX2VtcHR5J10gPSAnSW1lIHBvbGphIGRlZmluaWNpamUgamUgcHJhem5vJzsKJGxhbmdbJ2ZpZWxkZGVmX25hbWVfZXhpc3RzJ10gPSAnSW1lIHBvbGphIGRlZmluaWNpamUgcG9zdG9qaSc7CiRsYW5nWydmaWVsZGRlZl9hbGlhc19leGlzdHMnXSA9ICdBbGlzIHBvbGphIGRlZmluaWNqZSBwb3N0b2ppLiBBbGlhcyBtb3JhIGJpdGkgamVkaW5zdHZlbi4nOwokbGFuZ1snaW52YWxpZCddID0gJ1ZyZWRub3N0IHBvbGphIGplIG5ldmHFvmXEhyc7CiRsYW5nWydzdGF0dXNfcmVxdWlyZWQnXSA9ICdQb3N0YXZpIHN0YXR1cyBuYSAmIzAzOTtwb3RyZWJhbiYjMDM5Oyc7CiRsYW5nWydzdGF0dXNfb3B0aW9uYWwnXSA9ICdQb3N0YXZpIHN0YXR1cyBuYSAmIzAzOTtvcGNpb25hbGFuJiMwMzk7JzsKJGxhbmdbJ2lzX2RlZmF1bHQnXSA9ICdQb2RlJnNjYXJvbjtlbiBuYSAmIzAzOTtQb2RyYXp1bWV2YW4mIzAzOTsnOwokbGFuZ1snc3RhdHVzX2RlZmF1bHQnXSA9ICdQb3N0YXZsamVuIG5hICYjMDM5O1BvZHJhenVtZXZhbiYjMDM5Oyc7CiRsYW5nWydoZWxwdGV4dF90aXRsZSddID0gJ1VwdXN0dm8gemEgbW9ndcSHZSBkZWZpbmljaWplIHBvbGphOic7CiRsYW5nWydnYWxsZXJ5X2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPk5vIGV4dHJhIGluc3RydWN0aW9uczwvbGk+CjwvdWw+JzsKJGxhbmdbJ3RleHRib3hfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+c2l6ZVsyMF08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPm1heF9sZW5naHRbMjBdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPC9saT4KPC91bD4nOwokbGFuZ1snY2hlY2tib3hfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+Tm8gZXh0cmEgaW5zdHJ1Y3Rpb248L2xpPgo8L3VsPic7CiRsYW5nWyd0ZXh0YXJlYV9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5tYXhfbGVuZ2h0WzIwXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+d3lzaXd5Z1sxXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8L2xpPgo8L3VsPic7CiRsYW5nWydzZWxlY3RfZGF0ZV9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5zaXplWzIwXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogaW50ZWdlcjwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+bWF4X2xlbmdodFsyMF08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGludGVnZXI8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmRhdGVmb3JtYXRbZGQvbW0veXldPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEYXRlIGZvcm1hdCB1c2VkIGJ5IHRoZSBqUXVlcnkgZGF0ZXBpY2tlci4gVHJ5IGdvb2dsaW5nICYjMDM5O2pxdWVyeSBmb3JtYXREYXRlJiMwMzk7PC9saT4KPC91bD4nOwokbGFuZ1sndXBsb2FkX2ZpbGVfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+YWxsb3dbcGRmLGdpZixqcGVnLGpwZ108L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IGV4dGVuc2lvbiAoa2VlcCBsb3dlcmNhc2UpPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5kaXJbL3BhdGgvdG8vZGlyXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGlyZWN0b3J5IHBhdGggdGhhdCB3aWxsIGJlIGFwcGVuZGVkIHRvICRjb25maWdbJiMwMzk7dXBsb2Fkc191cmwmIzAzOTtdIC4gTm8gc2xhc2ggYXQgdGhlIGVuZC4geyRpdGVtX2lkfSBhbmQgeyRpdGVtX2FsaWFzfSB3aWxsIGJlIHJlcGxhY2VkLjwvbGk+CiAgICA8bGk+PHN0cm9uZz5JbnN0cnVjdGlvbjo8L3N0cm9uZz4gPGNvZGU+ZXhjbHVkZV9wcmVmaXhbdGh1bWJfLGZvb19dPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBwcmVmaXg8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmZpbGVicm93c2VyWzFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIGZpbGVicm93c2VyIG1vZGUgaW5zdGVhZCBvZiBkZWZhdWx0IGRyb3Bkb3duIG1vZGU8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmltYWdlWzFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAxfDB8dHJ1ZXxmYWxzZTxiciAvPgogICAgICAgIE5vdGU6IFNldHMgR0JGaWxlUGlja2VyIHRvIHNob3cgdGh1bWJuYWlsIGltYWdlIGluc3RlYWQgb2YgaW5wdXQgZmllbGQuPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5jcmVhdGVfZGlyc1sxXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBOb3RlOiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyBjcmVhdGluZyBuZXcgZGlyZWN0b3J5LiAoRGVwZW5kcyBvbiB1c2VyIG9yIGdyb3VwIGFzIHdlbGwgYXMgR0JGaWxlUGlja2VyIHBlcm1pc3Npb24pPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5kZWxldGVbMV08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgTm90ZTogU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgZGVsZXRpbmcgZmlsZXMuIChEZXBlbmRzIG9uIHVzZXIgb3IgZ3JvdXAgYXMgd2VsbCBhcyBHQkZpbGVQaWNrZXIgcGVybWlzc2lvbik8L2xpPiAKICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5zaG93X3N1YmRpcnNbMV08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgTm90ZTogU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgdmlld2luZyBvZiBzdWJkaXJlY3Rvcmllcy4gKERlcGVuZHMgb24gdXNlciBvciBncm91cCBhcyB3ZWxsIGFzIEdCRmlsZVBpY2tlciBwZXJtaXNzaW9uKTwvbGk+ICAgICAgICAgICAgICAgICAgICAgICAgIAo8L3VsPic7CiRsYW5nWydzZWxlY3RfZmlsZV9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5hbGxvd1twZGYsZ2lmLGpwZWcsanBnXTwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogZXh0ZW5zaW9uIChrZWVwIGxvd2VyY2FzZSk8L2xpPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPmRpclsvcGF0aC90by9kaXJdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBEaXJlY3RvcnkgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gJGNvbmZpZ1smIzAzOTt1cGxvYWRzX3VybCYjMDM5O10gLiBObyBzbGFzaCBhdCB0aGUgZW5kLiB7JGl0ZW1faWR9IGFuZCB7JGl0ZW1fYWxpYXN9IHdpbGwgYmUgcmVwbGFjZWQuPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5leGNsdWRlX3ByZWZpeFt0aHVtYl8sZm9vX108L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IHByZWZpeDwvbGk+CjwvdWw+JzsKJGxhbmdbJ2Ryb3Bkb3duX2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPjxzdHJvbmc+SW5zdHJ1Y3Rpb246PC9zdHJvbmc+IDxjb2RlPm9wdGlvbnNbYXBwbGU9QXBwbGUsYmFuYW5hPUJhbmFuYV08L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6ICBrZXk9dmFsdWU8L2xpPgo8L3VsPic7CiRsYW5nWydtdWx0aXNlbGVjdF9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5vcHRpb25zW2FwcGxlPUFwcGxlLGJhbmFuYT1CYW5hbmFdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiAga2V5PXZhbHVlPC9saT4KICAgIDxsaT48c3Ryb25nPkluc3RydWN0aW9uOjwvc3Ryb25nPiA8Y29kZT5zaXplWzVdPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBpbnRlZ2VyPC9saT4KPC91bD4nOwokbGFuZ1snZmllbGRzZXRfc3RhcnRfaGVscHRleHQnXSA9ICc8dWw+CiAgICA8bGk+Tm8gZXh0cmEgaW5zdHJ1Y3Rpb25zPC9saT4KPC91bD4nOwokbGFuZ1snZmllbGRzZXRfZW5kX2hlbHB0ZXh0J10gPSAnPHVsPgogICAgPGxpPk5vIGV4dHJhIGluc3RydWN0aW9uczwvbGk+CjwvdWw+JzsKJGxhbmdbJ2hpZXJhcmNoeV9oZWxwdGV4dCddID0gJzx1bD4KICAgIDxsaT5ObyBleHRyYSBpbnN0cnVjdGlvbnM8L2xpPgo8L3VsPic7CiRsYW5nWydyZW9yZGVyX2NhdGVnb3JpZXMnXSA9ICdQcm9tZW5pIHJlZG9zbGVkIEthdGVnb3JpamEnOwokbGFuZ1snZWRpdF9jYXRlZ29yeSddID0gJ0l6bWVuaSBLYXRlZ29yaWp1JzsKJGxhbmdbJ2NhdGVnb3J5X25hbWUnXSA9ICdJbWUgS2F0ZWdvcmlqZSc7CiRsYW5nWydjYXRlZ29yeV9kZXNjcmlwdGlvbiddID0gJ09waXMgS2F0ZWdvcmlqZSc7CiRsYW5nWydjYXRlZ29yeV9uYW1lX2VtcHR5J10gPSAnSW1lIEthdGVnb3JpamUgamUgcHJhem5vJzsKJGxhbmdbJ2NhdGVnb3J5X2FsaWFzX2V4aXN0cyddID0gJ0FsaWFzIEthdGVnb3JpamUgcG9zdG9qaS4gQWxpYXMgbW9yYSBiaXRpIGplZGluc3R2ZW4uJzsKJGxhbmdbJ3N1bW1hcnl0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb24gcHJlZ2xlZGEnOwokbGFuZ1snc3VtbWFyeXRlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsb25lIHByZWdsZWRhJzsKJGxhbmdbJ2RldGFpbHRlbXBsYXRlJ10gPSAnRGV0YWxqICZzY2Fyb247YWJsb24nOwokbGFuZ1snZGV0YWlsdGVtcGxhdGVzJ10gPSAnRGV0YWxqICZzY2Fyb247YWJsb25lJzsKJGxhbmdbJ3NlYXJjaHRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbiBwcmV0cmFnYSc7CiRsYW5nWydzZWFyY2h0ZW1wbGF0ZXMnXSA9ICcmU2Nhcm9uO2FibG9uZSBwcmV0cmFnYSc7CiRsYW5nWydmaWx0ZXJ0ZW1wbGF0ZSddID0gJ0ZpbHRlciAmc2Nhcm9uO2FibG9uJzsKJGxhbmdbJ2ZpbHRlcnRlbXBsYXRlcyddID0gJ0ZpbHRlciAmc2Nhcm9uO2FibG9uZSc7CiRsYW5nWydlZGl0dGVtcGxhdGUnXSA9ICdJem1lbmkgJnNjYXJvbjthYmxvbic7CiRsYW5nWyd0ZW1wbGF0ZV9uYW1lJ10gPSAnSW1lICZzY2Fyb247YWJsb25hJzsKJGxhbmdbJ3RlbXBsYXRlX25hbWVfZW1wdHknXSA9ICdJbWUgJnNjYXJvbjthYmxvbmEgamUgcHJhem5vJzsKJGxhbmdbJ3RlbXBsYXRlX2NvbnRlbnRfZW1wdHknXSA9ICdTYWRyxb5haiAmc2Nhcm9uO2FibG9uYSBqZSBwcmF6YW4nOwokbGFuZ1snZGVmYXVsdF90ZW1wbGF0ZXMnXSA9ICdQb2RyYXp1bWV2YW5pICZzY2Fyb247YWJsb25pJzsKJGxhbmdbJ21vZHVsZV9vcHRpb25zJ10gPSAnTW9kdWwgb3BjaWplJzsKJGxhbmdbJ3VybF9vcHRpb25zJ10gPSAnVVJMIG9wY2lqZSc7CiRsYW5nWydwcm9tcHRfZnJpZW5kbHluYW1lJ10gPSAnTW9kdWwgaW1lJzsKJGxhbmdbJ3Byb21wdF9hZG1pbnNlY3Rpb24nXSA9ICdNb2R1bCBhZG1pbiBzZWtjaWphJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3Npbmd1bGFyJ10gPSAnQXJ0aWthbCBqZWRuaW5hJzsKJGxhbmdbJ3Byb21wdF9pdGVtX3BsdXJhbCddID0gJ0FydGlrYWwgbW5vxb5pbmEnOwokbGFuZ1sncHJvbXB0X3VybF9wcmVmaXgnXSA9ICdVUkwgcHJlZmlrcyc7CiRsYW5nWydwcm9tcHRfZGlzcGxheV9pbmxpbmUnXSA9ICdQcmlrYXogZGV0YWxqYSBJbmxpbmUnOwokbGFuZ1sncHJvbXB0X2l0ZW1fY29scyddID0gJ1ByaWthxb5pIG92YSBwb2xqYSB1IHRhxI1raSBwcmVnbGVkYSc7CiRsYW5nWyd0ZXh0X3NvcnRvcmRlciddID0gJ1BvZHJhenVtZXZhbmkgcmVkb3NsZWQgc29ydGlyYW5qYSBhcnRpa2xhJzsKJGxhbmdbJ2FzY2VuZGluZyddID0gJ1Jhc3R1xIdpJzsKJGxhbmdbJ2Rlc2NlbmRpbmcnXSA9ICdPcGFkYWp1xIdpJzsKJGxhbmdbJ21haW4nXSA9ICdHbGF2bmknOwokbGFuZ1snY29udGVudCddID0gJ1NhZHLFvmFqJzsKJGxhbmdbJ2xheW91dCddID0gJ0l6Z2xlZCBzYWp0YSc7CiRsYW5nWyd1c2Vyc2dyb3VwcyddID0gJ0tvcmlzbmljaSBpIEtvcmlzbmnEjWtlIGdydXBlJzsKJGxhbmdbJ2V4dGVuc2lvbnMnXSA9ICdFa3N0ZW56aWplJzsKJGxhbmdbJ3NpdGVhZG1pbiddID0gJ0FkbWluaXN0cmFjaWphIHNhanRhJzsKJGxhbmdbJ215cHJlZnMnXSA9ICdQb2RlJnNjYXJvbjthdmFuamEnOwokbGFuZ1snZWNvbW1lcmNlJ10gPSAnRUNvbW1lcmNlJzsKJGxhbmdbJ25vdGljZSddID0gJ05vdGljZSc7CiRsYW5nWydpbnN0YW5jZXMnXSA9ICdJbnN0YW5jZSc7CiRsYW5nWydpbnN0YWxsZWRfaW5zdGFuY2VzX3dhcm5pbmcnXSA9ICdCZWxvdyBpcyBhIGxpc3Qgb2YgZHVwbGljYXRlZCBtb2R1bGUgaW5zdGFuY2VzLjxiciAvPk1ha2Ugc3VyZSB0byBiYWNrdXAgeW91ciBzaXRlIChEYXRhYnNlIGFuZCBGaWxlcykgYmVmb3JlICZxdW90O3VwZGF0ZSZxdW90OyBhY3Rpb24nOwokbGFuZ1snaW5zdGFsbGVkX2luc3RhbmNlcyddID0gJ0luc3RhbGlyYW5lIGluc3RhbmNlJzsKJGxhbmdbJ2luc3RhbmNlX25hbWUnXSA9ICdJbWUgaW5zdGFuY2UnOwokbGFuZ1snaW5zdGFuY2VfZnJpZW5kbHluYW1lJ10gPSAnSW1lJzsKJGxhbmdbJ2luc3RhbmNlX3NtYXJ0eSddID0gJ1NtYXJ0eSB0YWcnOwokbGFuZ1snaW5zdGFuY2VfdmVyc2lvbiddID0gJ1ZlcnppamEnOwokbGFuZ1snaW5zdGFuY2VfdXBncmFkZSddID0gJ05hZG9ncmFkbmphJzsKJGxhbmdbJ2luc3RhbmNlX3VwdG9kYXRlJ10gPSAnQWt0dWFsbm8nOwokbGFuZ1snaW5zdGFuY2VfbW9kdWxldXBncmFkZWQnXSA9ICdNb2R1bCBuYWRvZ3JhxJFlbic7CiRsYW5nWydkdXBsaWNhdGVfaW5zdGFuY2UnXSA9ICdEdXBsaXJhaiBtb2R1bCc7CiRsYW5nWydkdXBsaWNhdGVfZGVzY3JpcHRpb24nXSA9ICcgY2FuIGJlIGVhc2lseSBkdXBsaWNhdGVkIHRvIG11bHRpcGxlIG1vZHVsZSBpbnN0YW5jZXMgd2l0aCBkdXBsaWNhdGUgYnV0dG9uLjxiciAvPiBJbnN0YWxsIG5ld2x5IGNvcGllZCBtb2R1bGUgZnJvbSAmcXVvdDtFeHRlbnNpb25zICZyYXF1bzsgTW9kdWxlcyZxdW90Oy4nOwokbGFuZ1snY29weV90aXRsZSddID0gJ0R1cGxpcmFqIG1vZHVsJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1BvZG5lc2knOwokbGFuZ1snZGVmYXVsdCddID0gJ1BvZHJhenVtZXZhbmknOwokbGFuZ1snY2FuY2VsJ10gPSAnT3RrYcW+aSc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0dWogcG9kcmF6dW1ldmFuaSc7CiRsYW5nWydkdXBsaWNhdGUnXSA9ICdEdXBsaXJhaic7CiRsYW5nWydjaGFuZ2Vzc2F2ZWQnXSA9ICdWYSZzY2Fyb247ZSBpem1lbmUgc3UgdXNwZSZzY2Fyb247bm8gc2HEjXV2YW5lLic7CiRsYW5nWyd0ZW1wbGF0ZXJlc3RvcmVkJ10gPSAnUG9kcmF6dW1ldmFuaSAmc2Nhcm9uO2FibG9uIGplIG9ibm92bGplbi4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0RhIGxpIHN0ZSBzaWd1cm5pIGRhIMW+ZWxpdGUgZGEgaXpicmkmc2Nhcm9uO2V0ZT8nOwokbGFuZ1sndXAnXSA9ICdHb3JlJzsKJGxhbmdbJ2Rvd24nXSA9ICdEb2xlJzsKJGxhbmdbJ2VkaXQnXSA9ICdJem1lbmknOwokbGFuZ1snZGVsZXRlJ10gPSAnSXpicmkmc2Nhcm9uO2knOwokbGFuZ1snbm9zdWNoaWQnXSA9ICdJRCBuZSBwb3N0b2ppJzsKJGxhbmdbJ2RlbGV0ZWQnXSA9ICdBcnRpa2FsKGkpIGplIHVzcGUmc2Nhcm9uO25vIGl6YnJpc2FuLic7CiRsYW5nWydhZGQnXSA9ICdEb2RhaiAlcyc7CiRsYW5nWydhbGlhcyddID0gJ0FsaWFzJzsKJGxhbmdbJ2FsaWFzX2ludmFsaWQnXSA9ICdBbGlhcyBqZSBuZXZhxb5lxIdpLiBUbyBtb3JhIGJpdGkgdmFsaWRubyBQSFAgaW1lIHZhcmlhYmxlJzsKJGxhbmdbJ3NlYXJjaCddID0gJ1ByZXRyYcW+aSc7CiRsYW5nWydzZWFyY2hmb3InXSA9ICdQb3RyYcW+aSB6YSc7CiRsYW5nWydzZWFyY2hyZXN1bHRzZm9yJ10gPSAnVHJhxb5pIHJlenVsdGF0ZSB6YSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZSddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1snbW9kdWxlX25hbWUnXSA9ICdNb2R1bCBpbWUnOwokbGFuZ1snbW9kdWxlX25hbWVfZW1wdHknXSA9ICdNb2R1bCBpbWUgamUgcHJhem5vJzsKJGxhbmdbJ21vZHVsZV9uYW1lX2ludmFsaWQnXSA9ICdNb2R1bCBpbWUgc2FkcsW+aSBuZXZhxb5lxIdlIHpuYWtlJzsKJGxhbmdbJ21vZHVsZWNvcGllZCddID0gJ01vZHVsIHVzcGUmc2Nhcm9uO25vIGtvcGlyYW4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ2ZpbHRlcnByb21wdCddID0gJ0ZpbHRlciAlcyc7CiRsYW5nWydwYXJhbV9maWx0ZXJfbWlzc2luZyddID0gJ1BhcmFtZXRlciA8ZW0+ZmlsdGVyPC9lbT4gaXMgcmVxdWlyZWQgaW4gZmlsdGVyIG1vZGUuJzsKJGxhbmdbJ2FsbCddID0gJ1N2ZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0xpc3RJdCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBsaXN0cyB0aGF0IHlvdSBjYW4gZGlzcGxheSB0aHJvdWdob3V0IHlvdXIgd2Vic2l0ZS4nOwokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICcgaGFzIHN1Y2Nlc3NmdWxseSBiZWVuIGluc3RhbGxlZCc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiB1bmluc3RhbGxlZCc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8cD5WZXJzaW9uIDEuMTwvcD48dWw+PGxpPk11bGl0bGV2ZWwgQ2F0ZWdvcmllczwvbGk+PGxpPlN1bW1hcnkgUGFnaW5hdGlvbjwvbGk+PGxpPk11bHRpcGxlIENhdGVnb3JpZXMgZm9yIHBhcmFtZXRlciBjYXRlZ29yeTwvbGk+PGxpPkNNU01TIDEuMTAgcmVhZHk8L2xpPjxsaT5CYWNrZW5kIHRhYmxlIHNlYXJjaDwvbGk+PGxpPkV4Y2x1ZGUgQ2F0ZWdvcnkgcGFyYW1ldGVyPC9saT48L3VsPic7CiRsYW5nWydnZW5lcmFsJ10gPSAnT3Amc2Nhcm9uO3RpJzsKJGxhbmdbJ3VzYWdlJ10gPSAnVXBvdHJlYmEnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdEb3p2b2xlJzsKJGxhbmdbJ2R1cGxpY2F0aW5nJ10gPSAnRHVwbGljYXRpbmcgdGhpcyBtb2R1bGUnOwokbGFuZ1snYWJvdXQnXSA9ICdBYm91dCc7CiRsYW5nWydoZWxwX2dlbmVyYWwnXSA9ICc8aDM+R2VuZXJhbCBJbmZvPC9oMz4JCQoJPHA+U2ltcGx5IHB1dCwgTGlzdEl0IGFsbG93cyB5b3UgdG8gY3JlYXRlIGxpc3RzIHRoYXQgeW91IGNhbiBkaXNwbGF5IHRocm91Z2hvdXQgeW91ciB3ZWJzaXRlLiBZb3UgY291bGQgbWFrZSBhIHNpbXBsZSBGQVEgb3IgVGVzdGltb25pYWxzIGZlYXR1cmUgd2l0aCB0aGlzIG1vZHVsZS4gVGhlIHdlYiBkZXZlbG9wZXIgZGVmaW5lcyBmaWVsZHMgdG8gY29uc3RyYWluIHdoYXQgZGF0YSB0aGUgY2xpZW50IGNhbiBlbnRlci4gQSBudW1iZXIgb2YgZmllbGQgdHlwZXMgY2FuIGJlIHNwZWNpZmllZCAtIHRleHQgaW5wdXQsIGNoZWNrYm94LCB0ZXh0IGFyZWEsIHNlbGVjdCBkYXRlLCB1cGxvYWQgZmlsZSwgc2VsZWN0IGZpbGUsIGRyb3Bkb3duIC0gYW5kIGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGNhbiBiZSBzZXQgZm9yIGVhY2ggdHlwZSwgZm9yIGV4YW1wbGUsIGlucHV0IGZpZWxkIHNpemUsIG1heCBsZW5ndGgsIFdZU0lXWUcgZWRpdG9yLCBwb3NzaWJsZSBkcm9wIGRvd24gdmFsdWVzLCBwb3NzaWJsZSBmaWxlIGV4dGVuc2lvbnMsIGRpcmVjdG9yeSBwYXRocyBmb3IgZmlsZSBzZWxlY3Rpb25zLCBkYXRlIGZvcm1hdHMsIGV0Yy4uPC9wPgoJPHA+QW4gaW1wb3J0YW50IG5vdGUgb2Ygd2FybmluZyAtIFRoaXMgaXMgbm90IGEgY29udGVudCBjb25zdHJ1Y3Rpb24ga2l0LCBzdWNoIGFzIGluIERydXBhbC4gSXQgaXMgbWVhbnQgZm9yIHNtYWxsIGxpc3RpbmdzLCBub3QgdG8gc3RvcmUgdGhvdXNhbmRzIG9mIHJlY29yZHMuIFRoaXMgaXMgYmVjYXVzZSBvZiB0aGUgZGF0YWJhc2UgbW9kZWwgdXNlZCAoRUFWKS4gQWxzbywgZWFjaCBiaXQgb2YgZGF0YSB5b3UgZW50ZXIgaXMgc3RvcmVkIGFzIFRFWFQgZGF0YSB0eXBlLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgaXQgaXMgdmFyY2hhciwgYm9vbGVhbiwgdGltZXN0YW1wLCBldGMuIFRoaXMgaXMgYSByZXN0cmljdGlvbiBvZiBhIHNob3J0IGRldmVsb3BtZW50IHRpbWUgZnJhbWUuPC9wPic7CiRsYW5nWydoZWxwX3VzYWdlJ10gPSAnPGgzPlVzYWdlPC9oMz4JCQkKCTxwPllvdSBjYW4gY29uZmlndXJlIHskbW9kdWxlX25hbWV9IGhlcmU6IENvbnRlbnQgPiB7JG1vZHVsZV9uYW1lfTwvcD4KCTxwPlBsYWNlIHRoaXMgdGFnIGluIHlvdXIgcGFnZToge3skbW9kdWxlX25hbWV9fTwvcD4nOwokbGFuZ1snaGVscF91c2FnZV9vcHRpb25zJ10gPSAnQWZ0ZXIgaW5zdGFsbGluZyB0aGUgbW9kdWxlIHRoZSBuZXh0IHRoaW5nIHRvIGRvIGlzIHNldCB0aGUgb3B0aW9ucy4gIAkJCQkKCTxvbD4JCQkJCQoJCTxsaT5UbyBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIG1vZHVsZSBpbiB0aGUgbWVudSBjaGFuZ2UgdGhlICZxdW90O01vZHVsZSBGcmllbmRseSBOYW1lJnF1b3Q7LjwvbGk+CgkJPGxpPlRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgaXRlbSB0YWIgY2hhbmdlIHRoZSAmcXVvdDtJdGVtIFBsdXJhbCZxdW90Oy48L2xpPgoJPC9vbD4nOwokbGFuZ1snaGVscF91c2FnZV9maWVsZGRlZnMnXSA9ICdOZXh0IC0gc2V0IHRoZSBGaWVsZCBEZWZpbml0aW9ucy4gCgk8b2w+CgkJPGxpPkNob29zZSBmcm9tICZxdW90O1RleHQgSW5wdXQmcXVvdDssICZxdW90O0NoZWNrYm94JnF1b3Q7LCAmcXVvdDtUZXh0IEFyZWEmcXVvdDssICZxdW90O1NlbGVjdCBEYXRlJnF1b3Q7LCAmcXVvdDtVcGxvYWQgRmlsZSZxdW90OywgJnF1b3Q7U2VsZWN0IEZpbGUmcXVvdDsgJmFtcDsgJnF1b3Q7RHJvcGRvd24mcXVvdDsuPC9saT4KCQk8bGk+Rm9yIGVhY2ggZmllbGQgZGVmaW5pdGlvbiwgeW91IGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgaW5zdHJ1Y3Rpb25zIGluIHRoZSAmcXVvdDtleHRyYSZxdW90OyBmaWVsZC4gU2VlIHRoZSAmcXVvdDtGaWVsZCBEZWZpbml0aW9ucyZxdW90OyB0YWIgZm9yIGEgbGlzdC48L2xpPgoJCTxsaT5FYWNoIGl0ZW0gaW4gZWFjaCBsaXN0IGhhcyB0aHJlZSBkZWZhdWx0IGZpZWxkcy4gQWxsIEZpZWxkIERlZmluaXRpb25zIHNldCBoZXJlIGFyZSBhZGRpdGlvbmFsIHRvIHRoZW0uPC9saT4KCTwvb2w+JzsKJGxhbmdbJ2hlbHBfdXNhZ2VfY2F0ZWdvcmllcyddID0gJ1RoZXJlIGlzIGEgc2luZ2xlIGNhdGVnb3J5IGJ5IGRlZmF1bHQgY2FsbGVkICZxdW90O0dlbmVyYWwmcXVvdDsuIFRoaXMgY2FuIGJlIHJlbmFtZWQgYW5kIGFkZGl0aW9uYWwgQ2F0ZWdvcmllcyBjYW4gYmUgYWRkZWQuJzsKJGxhbmdbJ2hlbHBfdXNhZ2VfaXRlbXMnXSA9ICdOb3cgd2UgbW92ZSBvbiB0byB0aGUgaXRlbSBsaXN0IGl0c2VsZi4gSW4gdGhpcyBleGFtcGxlIGl0IHNheXMgJnF1b3Q7QWRkIEJveCZxdW90OywgdGhpcyB3YXMgcmVuYW1lZCBpbiB0aGUgJnF1b3Q7T3B0aW9ucyZxdW90OyB0YWIuIAoJPG9sPgoJCTxsaT5UaGUgZmlyc3QgZmllbGQgaXMgdGhlIGRlZmF1bHQgJnF1b3Q7VGl0bGUmcXVvdDsgZmllbGQuPC9saT4KCQk8bGk+VGhlICZxdW90O0NhdGVnb3J5JnF1b3Q7IGRyb3Bkb3duIGlzIGFsc28gYSBkZWZhdWx0IGZpZWxkLCBhbmQgaWYgdW5jaGFuZ2VkLCB3aWxsIGJlIHNldCB0byAmcXVvdDtHZW5lcmFsJnF1b3Q7LjwvbGk+CgkJPGxpPlRoZSB0aGlyZCBkZWZhdWx0IGZpZWxkIGlzIHRoZSBjaGVja2JveCBjYWxsZWQgJnF1b3Q7QWN0aXZlJnF1b3Q7LiBUaGlzIGFsbG93cyB5b3UgdG8gdG9nZ2xlIGEgbGlzdCBlbnRyeSB3aXRob3V0IGRlbGV0aW5nIGl0LjwvbGk+Cgk8L29sPic7CiRsYW5nWydoZWxwX3Blcm1pc3Npb25zJ10gPSAnPGgzPlBlcm1pc3Npb25zPC9oMz4KCTxwPllvdSBjYW4gc3BlY2lmeSB0aGUgZm9sbG93aW5nIHBlcm1pc3Npb25zIHVuZGVyIFVzZXJzICZhbXA7IEdyb3VwcyA+IEdyb3VwIFBlcm1pc3Npb25zPC9wPgoJPHVsPgoJCTxsaT57JG1vZHVsZV9uYW1lfTogTW9kaWZ5IEl0ZW1zPC9saT4KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBDYXRlZ29yaWVzPC9saT4KCQk8bGk+eyRtb2R1bGVfbmFtZX06IE1vZGlmeSBPcHRpb25zPC9saT4KCTwvdWw+Cgk8cD5UbyBhbGxvdyBub24tYWRtaW4gdXNlcnMgdG8gdXBsb2FkIGZpbGVzLCBwbGVhc2UgZ28gdG8gRXh0ZW5zaW9ucyA+IEdCRmlsZVBpY2tlciBhbmQgdGljayB0aGF0IGZpcnN0IGNoZWNrYm94ICZxdW90O1Nob3cgZmlsZW1hbmFnZW1lbnQgb3B0aW9ucyZxdW90Oy48L3A+JzsKJGxhbmdbJ2hlbHBfZmllbGRkZWZzJ10gPSAnPGgzPkZpZWxkIERlZmluaXRpb25zPC9oMz4KCTxwPlRoZSBmaXJzdCB0aGluZyB5b3Ugc2hvdWxkIGNvbmZpZ3VyZSBhcmUgeW91ciBmaWVsZCBkZWZpbml0aW9ucy4gPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBGaWVsZCBkZWZpbml0aW9ucyBjYW4gb25seSBiZSBkZWxldGVkIHdoZW4gdGhleSYjMDM5O3JlIG5vdCBpbiB1c2UgaW4gb3JkZXIgdG8gYXZvaWQgZGF0YSBsb3NzLjwvcD4KCTxwPkZvciBlYWNoIGZpZWxkIGRlZmluaXRpb24sIHlvdSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIGluc3RydWN0aW9ucyBpbiB0aGUgJnF1b3Q7ZXh0cmEmcXVvdDsgZmllbGQuPC9wPgoJPHVsPgoJCTxsaT4KCQkJPHA+SW5zdHJ1Y3Rpb246IAoJCQk8Y29kZT5zaXplWzIwXTwvY29kZT48YnIgLz4KCQkJUG9zc2libGUgdmFsdWU6IGludGVnZXI8YnIgLz4KCQkJQXBwbGljYWJsZSB0bzogVGV4dCBJbnB1dCwgU2VsZWN0IERhdGU8L3A+ICAgIAoJCTwvbGk+CgkJPGxpPgoJCQk8cD5JbnN0cnVjdGlvbjogCgkJCTxjb2RlPm1heF9sZW5ndGhbMjBdCgkJCTwvY29kZT48YnIgLz4KCQkJUG9zc2libGUgdmFsdWU6IGludGVnZXI8YnIgLz4KCQkJQXBwbGljYWJsZSB0bzogVGV4dCBJbnB1dCwgVGV4dCBBcmVhLCBTZWxlY3QgRGF0ZTwvcD4KCQk8L2xpPgoJCTxsaT4KCQkJPHA+SW5zdHJ1Y3Rpb246IAoJCQk8Y29kZT53eXNpd3lnWzFdCgkJCTwvY29kZT48YnIgLz4KCQkJUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CgkJCUFwcGxpY2FibGUgdG86IFRleHQgQXJlYTwvcD4KCQk8L2xpPgoJCTxsaT4KCQkJPHA+SW5zdHJ1Y3Rpb246IAoJCQk8Y29kZT5vcHRpb25zW2FwcGxlPUFwcGxlLGJhbmFuYT1CYW5hbmFdCgkJCTwvY29kZT48YnIgLz4KCQkJUG9zc2libGUgdmFsdWU6IGtleT12YWx1ZSwuLi48YnIgLz4KCQkJQXBwbGljYWJsZSB0bzogRHJvcGRvd248L3A+CgkJPC9saT4KICAgICAgPGxpPgogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+YWxsb3dbcGRmLGdpZixwbmcsanBlZyxqcGddCiAgICAgICAgPC9jb2RlPjxiciAvPgogICAgICAgIFBvc3NpYmxlIHZhbHVlOiBleHRlbnNpb24sLi4uIChrZWVwIGxvd2VyY2FzZSk8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZSwgU2VsZWN0IEZpbGUKICAgICAgPC9wPiAgICAKICAgICAgPC9saT4gICAgCiAgICAgIDxsaT4gICAgICAgIAogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+ZGlyWy9wYXRoL3RvL2Rpcl0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IERpcmVjdG9yeSBwYXRoIHRoYXQgd2lsbCBiZSBhcHBlbmRlZCB0byAKICAgICAgICA8Y29kZT4kY29uZmlnWyYjMDM5O3VwbG9hZHNfdXJsJiMwMzk7XQogICAgICAgIDwvY29kZT4uIE5vIHNsYXNoIGF0IHRoZSBlbmQuIDxjb2RlPnskaXRlbV9pZH0gYW5kIHskaXRlbV9hbGlhc308L2NvZGU+IHdpbGwgYmUgcmVwbGFjZWQuPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGUsIFNlbGVjdCBGaWxlCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+ICAgIAogICAgICA8bGk+ICAgICAgICAKICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPmV4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogcHJlZml4LC4uLjxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFVwbG9hZCBGaWxlLCBTZWxlY3QgRmlsZQogICAgICA8L3A+ICAgIAogICAgICA8L2xpPiAgICAKICAgICAgPGxpPiAgICAgICAgCiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5kYXRlZm9ybWF0W2RkL21tL3l5XQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogRGF0ZSBmb3JtYXQgdXNlZCBieSB0aGUgalF1ZXJ5IGRhdGVwaWNrZXIuIFRyeSBnb29nbGluZyAmIzAzOTtqcXVlcnkgZm9ybWF0RGF0ZSYjMDM5OzxiciAvPgogICAgICAgIEFwcGxpY2FibGUgdG86IFNlbGVjdCBEYXRlCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+CgkgIDxsaT4gICAgICAgIAogICAgICA8cD5JbnN0cnVjdGlvbjogCiAgICAgICAgPGNvZGU+ZmlsZWJyb3dzZXJbMV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGU8YnIgLz4KCQk8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gZmlsZWJyb3dzZXIgbW9kZSBpbnN0ZWFkIG9mIGRlZmF1bHQgZHJvcGRvd24gbW9kZQogICAgICA8L3A+ICAgIAogICAgICA8L2xpPgogICAgICA8bGk+CiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5pbWFnZVsxXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPgogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBzaG93IHRodW1ibmFpbCBpbWFnZSBpbnN0ZWFkIG9mIGlucHV0IGZpZWxkLgogICAgICA8L3A+ICAgIAogICAgICA8L2xpPgogICAgICA8bGk+CiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5jcmVhdGVfZGlyc1sxXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPgogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyBjcmVhdGluZyBvZiBuZXcgZGlyZWNvdGlyZXMuCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+IAogICAgICA8bGk+CiAgICAgIDxwPkluc3RydWN0aW9uOiAKICAgICAgICA8Y29kZT5kZWxldGVbMV0KICAgICAgICA8L2NvZGU+PGJyIC8+CiAgICAgICAgUG9zc2libGUgdmFsdWU6IDF8MHx0cnVlfGZhbHNlPGJyIC8+CiAgICAgICAgQXBwbGljYWJsZSB0bzogVXBsb2FkIEZpbGU8YnIgLz4KICAgICAgICA8Yj5Ob3RlOjwvYj4gU2V0cyBHQkZpbGVQaWNrZXIgdG8gYWxsb3cgZGVsZXRpbmcgZmlsZXMuCiAgICAgIDwvcD4gICAgCiAgICAgIDwvbGk+CiAgICAgIDxsaT4KICAgICAgPHA+SW5zdHJ1Y3Rpb246IAogICAgICAgIDxjb2RlPnNob3dfc3ViZGlyc1sxXQogICAgICAgIDwvY29kZT48YnIgLz4KICAgICAgICBQb3NzaWJsZSB2YWx1ZTogMXwwfHRydWV8ZmFsc2U8YnIgLz4KICAgICAgICBBcHBsaWNhYmxlIHRvOiBVcGxvYWQgRmlsZTxiciAvPgogICAgICAgIDxiPk5vdGU6PC9iPiBTZXRzIEdCRmlsZVBpY2tlciB0byBhbGxvdyB2aWV3aW5nIG9mIHN1YmRpcmVjdG9yaWVzLgogICAgICA8L3A+ICAgIAogICAgICA8L2xpPiAgICAgICAgICAgICAgICAgICAgICAgCiAgICA8L3VsPgogICAgPHA+WW91IGNhbiBzcGVjaWZ5IG11bHRpcGxlIGluc3RydWN0aW9ucyBzZXBhcmF0ZWQgYnkgYSBzZW1pY29sb24gKAogICAgICA8Y29kZT47CiAgICAgIDwvY29kZT4pLCBmb3IgZXhhbXBsZToKICAgIDwvcD4KICAgIDxwPgogICAgICA8Y29kZT5hbGxvd1twZGZdO2RpclsvZG9jcy9wZGZdPC9jb2RlPgogICAgPC9wPgogICAgCgk8aDM+RmllbGQgRGVmaW5pdGlvbnMgYnkgdHlwZTwvaDM+CiAgICAgICAgCiAgICA8dWw+CiAgICAgICAgPGxpPlRleHQgSW5wdXQ6IDxjb2RlPnNpemVbMjBdO21heF9sZW5ndGhbMjBdPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPkNoZWNrYm94OiA8Y29kZT4tPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPlRleHQgQXJlYTogPGNvZGU+bWF4X2xlbmd0aFsyMF07d3lzaXd5Z1sxXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5TZWxlY3QgRGF0ZTogPGNvZGU+c2l6ZVsyMF07bWF4X2xlbmd0aFsyMF07ZGF0ZWZvcm1hdFtkZC9tbS95eV08L2NvZGU+PC9saT4KICAgICAgICA8bGk+VXBsb2FkIEZpbGU6IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddO2RpclsvcGF0aC90by9kaXJdO2V4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTtmaWxlYnJvd3NlclsxXTtpbWFnZVsxXTs8L2NvZGU+PC9saT4KICAgICAgICA8bGk+U2VsZWN0IEZpbGU6IDxjb2RlPmFsbG93W3BkZixnaWYsanBlZyxqcGddO2RpclsvcGF0aC90by9kaXJdO2V4Y2x1ZGVfcHJlZml4W3RodW1iXyxmb29fXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5Ecm9wZG93bjogPGNvZGU+b3B0aW9uc1thcHBsZT1BcHBsZSxiYW5hbmE9QmFuYW5hXTwvY29kZT48L2xpPgogICAgICAgIDxsaT5Db250ZW50IFBhZ2VzOiA8Y29kZT4tPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPkZpZWxkc2V0IFN0YXJ0OiA8Y29kZT4tPC9jb2RlPjwvbGk+CiAgICAgICAgPGxpPkZpZWxkc2V0IEVuZDogPGNvZGU+LTwvY29kZT48L2xpPgogICAgPC91bD4nOwokbGFuZ1snaGVscF9jYXRlZ29yaWVzJ10gPSAnPGgzPkNhdGVnb3JpZXM8L2gzPgoJPHA+TXVsdGkgbGV2ZWwgY2F0ZWdvcmllcyBhcmUgc3VwcG9ydGVkLjwvcD4nOwokbGFuZ1snaGVscF90ZW1wbGF0ZXMnXSA9ICc8aDM+VGVtcGxhdGVzPC9oMz4KCTxwPklmIHlvdSBhcmUgbm90IHN1cmUgd2hhdCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZSB0byB1c2UgaW4geW91ciB0ZW1wbGF0ZXMsIHRyeSB0aGUgZGVidWcgdGVtcGxhdGU6PC9wPgoJPHA+e3skbW9kdWxlX25hbWV9IHN1bW1hcnl0ZW1wbGF0ZT0mIzAzOTtkZWJ1ZyYjMDM5O308L3A+Cgk8cD5Zb3UgY2FuIGFjY2VzcyBhbnkgZmllbGQgZGlyZWN0bHkgd2hlbiBsb29waW5nIHRocm91Z2ggaXRlbXMgdXNpbmcgaXRzIGFsaWFzLCBmb3IgZXhhbXBsZSwgdG8gaWYgeW91IGNyZWF0ZWQgYSBmaWVsZCBkZWZpbml0aW9uIHdpdGggYW4gYWxpYXMgJnF1b3Q7cG9zaXRpb24mcXVvdDssIHlvdSBjYW4gZG86PC9wPic7CiRsYW5nWydoZWxwX3RlbXBsYXRlc19jYXRlZ29yaWVzJ10gPSAnPHA+QmVzaWRlcywgeW91IGNhbiBsb29wIHRocm91Z2ggY2F0ZWdvcmllcyBpbiB0aGUgc3VtbWFyeSB0ZW1wbGF0ZSBqdXN0IGFzIHdlbGwgYXMgbG9vcGluZyB0aHJvdWdoIGl0ZW1zOjwvcD4nOwokbGFuZ1snaGVscF9kdXBsaWNhdGluZyddID0gJzxoMz5EdXBsaWNhdGluZyB0aGlzIG1vZHVsZTwvaDM+Cgk8cD5UaGlzIG1vZHVsZSB3YXMgbWFkZSB0byBiZSBlYXNpbHkgZHVwbGljYXRlZC4gVG8gZHVwbGljYXRlIHRoaXMgbW9kdWxlLCBmb2xsb3cgdGhlc2Ugc3RlcHMgQkVGT1JFIGluc3RhbGxpbmcgdGhlIG1vZHVsZTo8L3A+Cgk8b2w+ICAgIAoJCTxsaT5SZW5hbWUgdGhlIGRpcmVjdG9yeSAmcXVvdDs8Yj5MaXN0SXQ8L2I+JnF1b3Q7PC9saT4gICAgCgkJPGxpPlJlbmFtZSAmcXVvdDtjbGFzcyA8Yj5MaXN0SXQ8L2I+IGV4dGVuZHMgQ01TTW9kdWxlJnF1b3Q7IGluc2lkZSBMaXN0SXQubW9kdWxlLnBocDwvbGk+ICAgIAoJCTxsaT5SZW5hbWUgJnF1b3Q7PGI+TGlzdEl0PC9iPi5tb2R1bGUucGhwJnF1b3Q7PC9saT4KCTwvb2w+Cgk8cD5NYWtlIHN1cmUgeW91IGZvbGxvdyB0aGUgQ01TTVMgbW9kdWxlIG5hbWluZyBjb252ZW50aW9ucywgYS16IHdpdGggbm8gcHVuY3R1YXRpb24gY2hhcmFjdGVycyBvciBzcGFjZXMgdG8gYmUgc2FmZSA6KTwvcD4KCTxwPllvdSBjYW4gYWx3YXlzIGNoYW5nZSB0aGUgbW9kdWxlIGZyaWVuZGx5IG5hbWUgb25jZSBpbnN0YWxsZWQgdW5kZXIgJnF1b3Q7T3B0aW9ucyZxdW90OyAoQ29udGVudCA+IHskbW9kdWxlX25hbWV9KS4gVG8gY2hhbmdlIHRoZSBpY29uLCByZXBsYWNlIC9tb2R1bGVzL3skbW9kdWxlX25hbWV9L2ltYWdlcy9pY29uLmdpZi48L3A+JzsKJGxhbmdbJ2hlbHBfYWJvdXQnXSA9ICc8aDM+QWJvdXQ8L2gzPgoJPHA+T3JpZ2luIG9mIHRoaXMgbW9kdWxlIGNvbWVzIGZyb20gPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9saXN0aXQiIHRhcmdldD0iX2JsYW5rIj5MaXN0SXQgTW9kdWxlPC9hPiBkZXZlbG9wZWQgYnkgQmVuIE1hbGVuLjxiciAvPkFzIHRoZXJlIHdlcmUgbm8gcGxhbnMgb24gZnVydGhlciBkZXZlbG9wbWVudCBvZiB0aGUgbW9kdWxlIHNvbWUgcGVvcGxlIGRlY2lkZWQgdG8gZm9yayB0aGUgbW9kdWxlIGFuZCBjb250aW51ZSB3aXRoIGRldmVsb3BtZW50LjxiciAvPgoJSWYgeW91IGZpbmQgYW55IGJ1Z3MgcGxlYXNlIGZlZWwgZnJlZSB0byBzdWJtaXQgYSBidWcgcmVwb3J0IDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvYnVnL2xpc3QvMTAxNSIgdGFyZ2V0PSJfYmxhbmsiPmhlcmU8L2E+IG9yIGZvciBhbnkgZ29vZCBpZGVhcyBjb25zaWRlciBzdWJtaXRpbmcgYSBmZWF0dXJlIHJlcXVlc3QgPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9mZWF0dXJlX3JlcXVlc3QvbGlzdC8xMDE1IiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uIDxiciAvPgoJUGxlYXNlIGtlZXAgaW4gbWluZCB0aGF0IGRldmVsb3BlcnMgZG8gaGF2ZSB0aGVpciBkYWlseSBqb2JzIHdoaWNoIG1lYW5zIHRoYXQgZmVhdHVyZSByZXF1ZXN0cyBhcmUgY29uc2lkZXJlZCBhbmQgZG9uZSBhcyB0aW1lIGFsbG93cy4gSWYgeW91IG5lZWQgYSBmZWF0dXJlIHJlYWxseSBiYWRseSBjb25zaWRlciBjb250YWN0aW5nIG9uZSBvZiB0aGUgZGV2ZWxvcGVycyBmb3IgYSBzcG9uc29yZWQgZGV2ZWxvcG1lbnQuCgk8L3A+Cgk8aDM+VGVhbTwvaDM+Cgk8dWw+CgkJPGxpPkpvbmF0aGFuIFNjaG1pZCAoRm9hbHkqKSBoaUBqb25hdGhhbnNjaG1pZC5kZSA8YnIgLz53d3cuam9uYXRoYW5zY2htaWQuZGU8L2xpPgoJCTxsaT5Hb3JhbiBJbGljICh1bmlxdTMpIGcuaWxpY0BpLWFydHMuZXUgPGJyIC8+d3d3LmljaC1tYWNoLWRhcy5hdDwvbGk+CgkJPGxpPlJvYmVydCBDYW1wYmVsbCAoY2FsZ3V5MTAwMCkgY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyAgPGJyIC8+d3d3LmNhbGd1eTEwMDAuY29tPC9saT4KCQk8bGk+THVrYXMgQmxhdHRlciAobm9ja2VuZmVsbCkgbm9ja2VuZmVsbEBnbWFpbC5jb20gPGJyIC8+d3d3LmJsYXR0ZXJ0ZWNoLmNoPC9saT4KCQk8bGk+QXJub3VkIChhcm5vdWQpIGFybm91ZEB1cHNlcnZpY2UubmwgPGJyIC8+d3d3LnVwc2VydmljZS5ubDwvbGk+CgkJPGxpPldheW5lIE9OZWlsICh3aXNoYm9uZSkgd2F5bmVAdGVhbXdpc2hib25lLmNvbSA8YnIgLz53d3cudGVhbXdpc2hib25lLmNvbTwvbGk+CgkJPGxpPlRhcGlvIEwmb3VtbDt5dHl5IChTdGlra2kpIHRhcHNhQGJsYWNrbWlsay5maTwvbGk+Cgk8L3VsPic7CiRsYW5nWydoZWxwX3BhcmFtX2FjdGlvbiddID0gJwlPdmVycmlkZSB0aGUgZGVmYXVsdCBhY3Rpb24uIFBvc3NpYmxlIHZhbHVlcyBhcmU6Cgk8dWw+CgkJPGxpPiZxdW90O2RlZmF1bHQmcXVvdDsgLSBkaXNwbGF5cyB0aGUgc3VtbWFyeSB2aWV3LjwvbGk+CgkJPGxpPiZxdW90O2RldGFpbCZxdW90OyAtIGRpc3BsYXlzIGEgc3BlY2lmaWVkIGVudHJ5IGluIGRldGFpbCBtb2RlLjwvbGk+CgkJPGxpPiZxdW90O3NlYXJjaCZxdW90OyAtIGRpc3BsYXlzIHRoZSBzZWFyY2ggZm9ybS48L2xpPgoJCTxsaT4mcXVvdDtmaWx0ZXImcXVvdDsgLSBkaXNwbGF5cyB0aGUgZmlsdGVyIGZvcm0uIFBhcmFtZXRlciA8ZW0+ZmlsdGVyPC9lbT4gaXMgcmVxdWlyZWQuPC9saT4KCTwvdWw+JzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2hvd2FsbCddID0gJ1Nob3cgYWxsIGl0ZW1zLCBpcnJlc3BlY3RpdmUgb2YgZW5kIGRhdGUuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IGFuIGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBhbGlhc2VzIG9mIHRoZSBjYXRlZ29yeS9jYXRlZ29yaWVzIGRpc3BsYXllZCBpdGVtcyBtdXN0IGJlIGEgbWVtYmVyIG9mLic7CiRsYW5nWydoZWxwX3BhcmFtX2V4Y2x1ZGVfY2F0ZWdvcnknXSA9ICdTcGVjaWZ5IGFuIGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBhbGlhc2VzIG9mIHRoZSBjYXRlZ29yeS9jYXRlZ29yaWVzIGRpc3BsYXllZCBpdGVtcyBtdXNuJiMwMzk7dCBiZSBhIG1lbWJlciBvZi4nOwokbGFuZ1snaGVscF9wYXJhbV9zdWJjYXRlZ29yeSddID0gJ0lmIHBhcmFtZXRlciAmIzAzOTtjYXRlZ29yeSYjMDM5OyBpcyBzcGVjaWZpZWQsIHRoaXMgcGFyYW1ldGVyIHNldCB0byA8ZW0+dHJ1ZTwvZW0+IHdpbGwgbWFrZSBhbGxvd2FuY2UgZm9yIHN1YmNhdGVnb3JpZXMmIzAzOTsgaXRlbXMuIEl0IGlzIHNldCB0byBmYWxzZSBieSBkZWZhdWx0Lic7CiRsYW5nWydoZWxwX3BhcmFtX2RldGFpbHRlbXBsYXRlJ10gPSAnVGhlIGRldGFpbCB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc3VtbWFyeXRlbXBsYXRlJ10gPSAnVGhlIHN1bW1hcnkgdGVtcGxhdGUgeW91IHdpc2ggdG8gdXNlLic7CiRsYW5nWydoZWxwX3BhcmFtX3NlYXJjaHRlbXBsYXRlJ10gPSAnVGhlIHNlYXJjaCB0ZW1wbGF0ZSB5b3Ugd2lzaCB0byB1c2UuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fb3JkZXJieSddID0gJ1lvdSBjYW4gb3JkZXIgYnkgYW55IG9mIHRoZSBmb2xsb3dpbmcgY29sdW1uczogaXRlbV9pZCwgaXRlbV90aXRsZSwgaXRlbV9wb3NpdGlvbiwgY2F0ZWdvcnlfaWQsIGNhdGVnb3J5X25hbWUsIGNhdGVnb3J5X3Bvc2l0aW9uLCBjYXRlZ29yeV9oaWVyYXJjaHkuPGJyIC8+Cgk8dWw+CgkJPGxpPkZvciBleGFtcGxlOjxiciAvPgoJCW9yZGVyYnk9JiMwMzk7Y2F0ZWdvcnlfbmFtZSwgaXRlbV90aXRsZSYjMDM5OzwvbGk+CgkJPGxpPllvdSBjYW4gYWxzbyBzcGVjaWZ5IGFzY2VuZGluZyBvciBkZXNjZW5kaW5nIGZvciBhbnkgY29sdW1uLCBmb3IgZXhhbXBsZTo8YnIgLz4KCQlvcmRlcmJ5PSYjMDM5O2NhdGVnb3J5X25hbWV8YXNjLCBpdGVtX3RpdGxlfGRlc2MmIzAzOTs8L2xpPgoJPC91bD4nOwokbGFuZ1snaGVscF9wYXJhbV9wYWdlbGltaXQnXSA9ICdNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkaXNwbGF5IChwZXIgcGFnZSkuICBJZiB0aGlzIHBhcmFtZXRlciBpcyBub3Qgc3VwcGxpZWQgYWxsIG1hdGNoaW5nIGl0ZW1zIHdpbGwgYmUgZGlzcGxheWVkLiAgSWYgaXQgaXMsIGFuZCB0aGVyZSBhcmUgbW9yZSBpdGVtcyBhdmFpbGFibGUgdGhhbiBzcGVjaWZpZWQgaW4gdGhlIHBhcmFtZXRlciwgdGV4dCBhbmQgbGlua3Mgd2lsbCBiZSBzdXBwbGllZCB0byBhbGxvdyBzY3JvbGxpbmcgdGhyb3VnaCB0aGUgcmVzdWx0cyc7CiRsYW5nWydoZWxwX3BhcmFtX3N0YXJ0J10gPSAnU3RhcnQgYXQgdGhlIG50aCBpdGVtIC0tIGxlYXZpbmcgZW1wdHkgd2lsbCBzdGFydCBhdCB0aGUgZmlyc3QgaXRlbS4nOwokbGFuZ1snaGVscF9wYXJhbV9udW1iZXInXSA9ICdNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkaXNwbGF5IChwZXIgcGFnZSkgLS0gbGVhdmluZyBlbXB0eSB3aWxsIHNob3cgYWxsIGl0ZW1zLiBUaGlzIGlzIGEgc3lub255bSBmb3IgdGhlIHBhZ2VsaW1pdCBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZGV0YWlscGFnZSddID0gJ1BhZ2UgdG8gZGlzcGxheSBpdGVtIGRldGFpbHMgaW4uIE11c3QgYmUgYSBwYWdlIGFsaWFzLiBVc2VkIHRvIGFsbG93IGRldGFpbHMgdG8gYmUgZGlzcGxheWVkIGluIGEgZGlmZmVyZW50IHBhZ2UgdGhhbiBzdW1tYXJ5Lic7CiRsYW5nWydoZWxwX3BhcmFtX2l0ZW0nXSA9ICdUaGlzIHBhcmFtZXRlciBpcyBvbmx5IGFwcGxpY2FibGUgdG8gdGhlIGRldGFpbCB2aWV3LiBJdCBhbGxvd3Mgc3BlY2lmeWluZyB3aGljaCBpdGVtIHRvIGRpc3BsYXkgaW4gZGV0YWlsIG1vZGUuIE11c3QgYmUgYW4gaXRlbSBhbGlhcy4nOwokbGFuZ1snaGVscF9wYXJhbV9zZWFyY2gnXSA9ICdTZWFyY2ggYWxsIGZpZWxkcy4gVXNlcyBmdWxsdGV4dCBzZWFyY2guJzsKJGxhbmdbJ2hlbHBfcGFyYW1fc2VhcmNoXyddID0gJ1NlYXJjaCBhIHBhcnRpY3VsYXIgZmllbGQuIFlvdSBjYW4gdXNlICYjMDM5O3RpdGxlJiMwMzk7IG9yIHRoZSBhbGlhcyBvZiBhIGZpZWxkIGRlZmluaXRpb24sIGUuZy4gc2VhcmNoX3RpdGxlLiBXaWxsIGJlIGlnbm9yZWQgd2hlbiBwYXJhbWV0ZXIgJiMwMzk7c2VhcmNoJiMwMzk7IGlzIHNldCwgYnV0IG11bHRpcGxlIHNlYXJjaF8qIHBhcmFtcyBjYW4gYmUgY29tYmluZWQuJzsKJGxhbmdbJ2hlbHBfcGFyYW1fZmlsdGVyJ10gPSAnUmVxdWlyZWQgZm9yIGFjdGlvbiA8ZW0+ZmlsdGVyPC9lbT4uIFNwZWNpZnkgdGhlIGZpZWxkcyB3aG9zZSB2YWx1ZXMgc2hvdWxkIGJlIG9mZmVyZWQgYXMgZmlsdGVyIG9wdGlvbnMgYnkgbGlzdGluZyB0aGUgZmllbGQmIzAzOTtzIGFsaWFzZXMgY29tbWEgc2VwYXJhdGVkLic7CiRsYW5nWydoZWxwX3BhcmFtX3JldHVybnBhZ2UnXSA9ICdVc2VkIGZvciBmaWx0ZXIgb3Igc2VhcmNoIG1vZGUgb25seS4gUGFnZSB0byBkaXNwbGF5IHNlYXJjaCByZXN1bHRzIHJlc3BlY3Rpdmx5IGZpbHRlcmVkIGl0ZW1zIGluLiBNdXN0IGJlIGEgcGFnZSBhbGlhcy4gVXNlZCB0byBhbGxvdyBzdW1tYXJ5IHRvIGJlIGRpc3BsYXllZCBpbiBhIGRpZmZlcmVudCBwYWdlIHRoYW4gZmlsdGVyIC8gc2VhcmNoIG1hc2suJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE0NTg0NTA2NjQtMTI4NDU3MzA4NDkxOCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzNDM0NjQ2OTAuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjY4MzQyMTU5Ni4xMzQzNDY0NjkwLjEzNDM0NjQ2OTAuMTM0MzQ2Njg3OC4yJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Category.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQyQ2F0ZWdvcnkKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBdHRyaWJ1dGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJcHVibGljICRjYXRlZ29yeV9pZCA9IG51bGw7CglwdWJsaWMgJGFsaWFzID0gbnVsbDsJCglwdWJsaWMgJG5hbWUgPSAnJzsKCXB1YmxpYyAkZGVzY3JpcHRpb24gPSAnJzsKCXB1YmxpYyAkYWN0aXZlID0gMTsKCXB1YmxpYyAkcG9zaXRpb24gPSAxOwoJcHVibGljICRwYXJlbnRfaWQgPSAtMTsKCXB1YmxpYyAkaGllcmFyY2h5ID0gJyc7CglwdWJsaWMgJGlkX2hpZXJhcmNoeSA9ICcnOwoJcHVibGljICRoaWVyYXJjaHlfcGF0aCA9ICcnOwoJcHVibGljICRjcmVhdGVfZGF0ZSA9ICcnOwoJcHVibGljICRtb2RpZmllZF9kYXRlID0gJyc7CgkKCXB1YmxpYyAka2V5MSA9IG51bGw7CglwdWJsaWMgJGtleTIgPSBudWxsOwoJcHVibGljICRrZXkzID0gbnVsbDsJCgkKCXB1YmxpYyAkaXRlbXM7CglwdWJsaWMgJGNoaWxkcmVuOwoJc3RhdGljIHB1YmxpYyAkbWFuZGF0b3J5ID0gYXJyYXkoJ25hbWUnKTsKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgCgl7CgkJJHRoaXMtPml0ZW1zID0gYXJyYXkoKTsKCQkkdGhpcy0+Y2hpbGRyZW4gPSBhcnJheSgpOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gX190b1N0cmluZygpCgl7CgkJcmV0dXJuICIiOwoJfQkKCQp9IC8vIGVuZCBvZiBjbGFzcwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2CategoryOperations.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zCnsKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgVmFyaWFibGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQoJCglwdWJsaWMgc3RhdGljICRpZGVudGlmaWVycyA9IGFycmF5KCdjYXRlZ29yeV9pZCcsICdhbGlhcycsICdoaWVyYXJjaHknLCAnaWRfaGllcmFyY2h5JywgJ2hpZXJhcmNoeV9wYXRoJywgJ2tleTEnLCAna2V5MicsICdrZXkzJyk7CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgRGF0YWJhc2UgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCQoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBTYXZlKExpc3RJdDIgJiRtb2QsIExpc3RJdDJDYXRlZ29yeSAmJG9iaikKCXsKCQkvLyBDaGVjayBhZ2FpbnN0IG1hbmRhdG9yeSBsaXN0CgkJZm9yZWFjaChMaXN0SXQyQ2F0ZWdvcnk6OiRtYW5kYXRvcnkgYXMgJHJ1bGUpIHsKCQkKCQkJaWYoJG9iai0+JHJ1bGUgPT0gJycpCgkJCQlyZXR1cm47CgkJfQoJCQoJCS8vIEVuc3VyZSB0aGF0IHdlIGhhdmUgYWxpYXMKCQlpZiAoJG9iai0+YWxpYXMgPT0gJycpewoJCQoJCQkkb2JqLT5hbGlhcyA9IG11bmdlX3N0cmluZ190b191cmwoJG9iai0+bmFtZSwgdHJ1ZSk7CgkJfQoJCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQoJCS8vIEdldCBuZXcgcG9zaXRpb24KCQkkcXVlcnkgPSAnU0VMRUNUIG1heChwb3NpdGlvbikgKyAxIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBXSEVSRSBwYXJlbnRfaWQgPSA/JzsKCQkkcG9zaXRpb24gPSAkZGItPkdldE9uZSgkcXVlcnksIGFycmF5KCRvYmotPnBhcmVudF9pZCkpOwoJCQoJCWlmICgkcG9zaXRpb24gPT0gbnVsbCkKCQkJJHBvc2l0aW9uID0gMTsJCgkKCQkvLyBFeGlzdGluZwoJCWlmICgkb2JqLT5jYXRlZ29yeV9pZCA+IDApIHsKCQkKCQkJLy8gR2V0IG9sZCBkYXRhCgkJCSRxdWVyeSA9ICdTRUxFQ1QgcGFyZW50X2lkLCBwb3NpdGlvbiBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsKCQkJJG9sZF9kYXRhID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkb2JqLT5jYXRlZ29yeV9pZCkpOwkJCgkJCgkJCWlmKCRvYmotPnBhcmVudF9pZCAhPSAkb2xkX2RhdGFbJ3BhcmVudF9pZCddKSB7CgkJCQoJCSAgICAgIC8vIGhhdmUgdG8gdXBkYXRlIHBvc2l0aW9uIGluZGV4ZXMgb2Ygb2xkIHNpYmxpbmdzIGlmIGNoYW5naW5nIHBhcmVudHMuCgkJICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IAoJCQkJCVNFVCBwb3NpdGlvbiA9IHBvc2l0aW9uIC0gMSBXSEVSRSBwYXJlbnRfaWQgPSA/IEFORCBwb3NpdGlvbiA+ID8nOwoJCQkJCQoJCSAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRvbGRfZGF0YVsncGFyZW50X2lkJ10sICRvbGRfZGF0YVsncG9zaXRpb24nXSkpOwoJCQkgIAoJCSAgICB9IGVsc2UgewoJCQkKCQkJCSRwb3NpdGlvbiA9ICRvbGRfZGF0YVsncG9zaXRpb24nXTsKCQkJfQoJCgkJCSRxdWVyeSA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSAKCQkJCQlTRVQgY2F0ZWdvcnlfbmFtZSA9ID8sIGNhdGVnb3J5X2Rlc2NyaXB0aW9uID0gPywgY2F0ZWdvcnlfYWxpYXMgPSA/LCBwb3NpdGlvbiA9ID8sIHBhcmVudF9pZCA9ID8sIGFjdGl2ZSA9ID8sIG1vZGlmaWVkX2RhdGUgPSBOT1coKSBXSEVSRSBjYXRlZ29yeV9pZCA9ID8nOwoJCQkJCQoJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoCgkJCQkkb2JqLT5uYW1lLCAKCQkJCSRvYmotPmRlc2NyaXB0aW9uLCAKCQkJCSRvYmotPmFsaWFzLCAgCgkJCQkkcG9zaXRpb24sIAoJCQkJJG9iai0+cGFyZW50X2lkLAoJCQkJJG9iai0+YWN0aXZlLAoJCQkJJG9iai0+Y2F0ZWdvcnlfaWQKCQkJKSk7CgkJCQoJCQlpZiAoISRyZXN1bHQpCgkJCQlkaWUoJ0ZBVEFMIFNRTCBFUlJPUjogJyAuICRkYi0+RXJyb3JNc2coKSAuICc8YnIvPlFVRVJZOiAnIC4gJGRiLT5zcWwpOwoKCQkvLyBOZXcKCQl9IGVsc2UgewoJCQkKCQkJLy8gY2hlY2sgYWxpYXMgaXMgdW5pcXVlCgkJCSRxdWVyeSA9ICdTRUxFQ1QgQ09VTlQoYWxpYXMpIEFTIGFsaWFzIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBXSEVSRSBjYXRlZ29yeV9hbGlhcyBMSUtFICInLiRvYmotPmFsaWFzLiclIic7CgkJCSRkYnJlc3VsdCA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CgkJCQoJCQlpZigkZGJyZXN1bHQgPiAwKQoJCQkJJG9iai0+YWxpYXMgLj0gJ18nLigkZGJyZXN1bHQrMSk7CQkKCQkKCQkKCQkJJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgCgkJCQkJKGNhdGVnb3J5X25hbWUsIGNhdGVnb3J5X2Rlc2NyaXB0aW9uLCBjYXRlZ29yeV9hbGlhcywgcG9zaXRpb24sIHBhcmVudF9pZCwgYWN0aXZlLCBjcmVhdGVfZGF0ZSwgbW9kaWZpZWRfZGF0ZSkgCgkJCQkJVkFMVUVTICg/LCA/LCA/LCA/LCA/LCA/LCBOT1coKSwgTk9XKCkpJzsKCQkJCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgKCQkJCSRvYmotPm5hbWUsIAoJCQkJJG9iai0+ZGVzY3JpcHRpb24sIAoJCQkJJG9iai0+YWxpYXMsIAoJCQkJJHBvc2l0aW9uLCAKCQkJCSRvYmotPnBhcmVudF9pZCwKCQkJCSRvYmotPmFjdGl2ZQoJCQkJCgkJCSkpOwoJCQkKCQkJaWYgKCEkcmVzdWx0KQoJCQkJZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsKCgkJCS8vIHBvcHVsYXRlICRjYXRlZ29yeV9pZCBmb3IgbmV3bHkgaW5zZXJ0ZWQgY2F0ZWdvcnkKCQkJJG9iai0+Y2F0ZWdvcnlfaWQgPSAkZGItPkluc2VydF9JRCgpOwoJCX0KCgkJLy8gdXBkYXRlIGhpZXJhcmNoeQoJCXNlbGY6OlVwZGF0ZUhpZXJhcmNoeVBvc2l0aW9ucygkbW9kKTsJCQkJCgl9CgoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBEZWxldGUoTGlzdEl0MiAmJG1vZCwgTGlzdEl0MkNhdGVnb3J5ICYkb2JqKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJCgkJaWYgKCRvYmotPmNhdGVnb3J5X2lkID4gMCkgewoKCQkJLy8gR2V0IGRldGFpbHMKCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBwb3NpdGlvbiwgcGFyZW50X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBXSEVSRSBjYXRlZ29yeV9pZCA9ID8nOwoJCQkkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkb2JqLT5jYXRlZ29yeV9pZCkpOwoJCQkKCQkJLy8gRGV0ZWxldGUgY2F0ZWdvcnkKCQkJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsKCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJG9iai0+Y2F0ZWdvcnlfaWQpKTsKCQkJCgkJCS8vIERlbGV0ZSBmcm9tIGl0ZW1zCgkJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW1fY2F0ZWdvcmllcyBXSEVSRSBjYXRlZ29yeV9pZCA9ID8nOwoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb2JqLT5jYXRlZ29yeV9pZCkpOwkJCQoJCQkJCQkJCQkKCQkJLy8gVXBkYXRlIHBvc2l0aW9uIGZvciBzaWJsaW5ncwoJCQlpZigkcm93WydwYXJlbnRfaWQnXSA+IDApIHsKCQkJCgkJCQkkcXVlcnkgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgU0VUIHBvc2l0aW9uID0gcG9zaXRpb24gLSAxIFdIRVJFIHBhcmVudF9pZCA9ID8gQU5EIHBvc2l0aW9uID4gPyc7CgkJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcm93WydwYXJlbnRfaWQnXSwgJHJvd1sncG9zaXRpb24nXSkpOwkJCQkKCQkJfQoJCQllbHNlIHsJCQkKCQkJCgkJCQkkcXVlcnkgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnkgU0VUIHBvc2l0aW9uID0gcG9zaXRpb24gKyAxIFdIRVJFIHBhcmVudF9pZCA9ID8nOwoJCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJG9iai0+Y2F0ZWdvcnlfaWQpKTsJCQkKCQkJfQoJCQkKCQkJLy8gVXBkYXRlIHBhcmVudCBmb3IgY2hpbGRyZW4KCQkJJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IFNFVCBwYXJlbnRfaWQgPSA/IFdIRVJFIHBhcmVudF9pZCA9ID8nOwoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkcm93WydwYXJlbnRfaWQnXSwgJG9iai0+Y2F0ZWdvcnlfaWQpKTsJCQkKCQkJCgkJCXNlbGY6OlVwZGF0ZUhpZXJhcmNoeVBvc2l0aW9ucygkbW9kKTsKCQkJCgkJCXJldHVybiB0cnVlOwoJCX0KCgkJcmV0dXJuIEZBTFNFOwoJfQoKCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gTG9hZChMaXN0SXQyICYkbW9kLCBMaXN0SXQyQ2F0ZWdvcnkgJiRvYmopCgl7CQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHJvdyA9IGZhbHNlOwoJCgkJZm9yZWFjaChzZWxmOjokaWRlbnRpZmllcnMgYXMgJGlkZW50aWZpZXIpIHsKCQkKCQkJaWYoIWlzX251bGwoJG9iai0+JGlkZW50aWZpZXIpKSB7CgkJCQkJCQkKCQkJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICJfY2F0ZWdvcnkgCgkJCQkJCQkJCVdIRVJFICRpZGVudGlmaWVyID0gPyAKCQkJCQkJCQkJTElNSVQgMSI7CQkJCQkJCQkKCQkJCQkJCQkJCgkJCQkkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkb2JqLT4kaWRlbnRpZmllcikpOwoJCQkJCgkJCQlpZigkcm93KQoJCQkJCWJyZWFrOwoJCQl9CgkJfQoKCQlpZiAoJHJvdykgewoKCQkJJG9iai0+Y2F0ZWdvcnlfaWQgCQkJPSAkcm93WydjYXRlZ29yeV9pZCddOwoJCQkkb2JqLT5hbGlhcyAJCQkJPSAkcm93WydjYXRlZ29yeV9hbGlhcyddOwoJCQkkb2JqLT5uYW1lIAkJCQkJPSAkcm93WydjYXRlZ29yeV9uYW1lJ107CgkJCSRvYmotPmRlc2NyaXB0aW9uIAkJCT0gJHJvd1snY2F0ZWdvcnlfZGVzY3JpcHRpb24nXTsKCQkJJG9iai0+YWN0aXZlIAkJCQk9ICRyb3dbJ2FjdGl2ZSddOwoJCQkkb2JqLT5wb3NpdGlvbiAJCQkJPSAkcm93Wydwb3NpdGlvbiddOwoJCQkkb2JqLT5wYXJlbnRfaWQgCQkJPSAkcm93WydwYXJlbnRfaWQnXTsKCQkJJG9iai0+aGllcmFyY2h5IAkJCT0gJHJvd1snaGllcmFyY2h5J107CgkJCSRvYmotPmlkX2hpZXJhcmNoeSAJCQk9ICRyb3dbJ2lkX2hpZXJhcmNoeSddOwoJCQkkb2JqLT5oaWVyYXJjaHlfcGF0aAkJPSAkcm93WydoaWVyYXJjaHlfcGF0aCddOwoJCQkkb2JqLT5jcmVhdGVfZGF0ZSAJCQk9ICRyb3dbJ2NyZWF0ZV9kYXRlJ107CgkJCSRvYmotPm1vZGlmaWVkX2RhdGUgCQk9ICRyb3dbJ21vZGlmaWVkX2RhdGUnXTsKCQkJCgkJCSRvYmotPmtleTEJCSAJCQk9ICRyb3dbJ2tleTEnXTsKCQkJJG9iai0+a2V5MgkJIAkJCT0gJHJvd1sna2V5MyddOwoJCQkkb2JqLT5rZXkzCQkgCQkJPSAkcm93WydrZXkzJ107CQoJCQkKCQkJLy8gSXRlbXMgZm9yIHRoaXMgY2F0ZWdvcnkKCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBpdGVtX2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsKCQkJJG9iai0+aXRlbXMgPSAkZGItPkdldENvbCgkcXVlcnksIGFycmF5KCRvYmotPmNhdGVnb3J5X2lkKSk7CgoJCQkvLyBDaGlsZHJlbgoJCQkkcXVlcnkgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBXSEVSRSBwYXJlbnRfaWQgPSA/IEFORCBhY3RpdmUgPSAxJzsKCQkJJG9iai0+Y2hpbGRyZW4gPSAkZGItPkdldENvbCgkcXVlcnksIGFycmF5KCRvYmotPmNhdGVnb3J5X2lkKSk7CQkJCgkJCgkJCXJldHVybiB0cnVlOwoJCX0KCgkJcmV0dXJuIEZBTFNFOwoJfQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBVdGlsaXR5IG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkKCS8vIE5lZWRlZD8KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gR2V0Q2hpbGRyZW5zRm9yQ2F0ZWdvcnkoTGlzdEl0MiAmJG1vZCwgJGlkKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkKCQkkcXVlcnkgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBXSEVSRSBwYXJlbnRfaWQgPSA/JzsKCQkkY2F0ZWdvcmllcyA9ICRkYi0+R2V0Q29sKCRxdWVyeSwgYXJyYXkoJGlkKSk7CgoJCSRyZXN1bHQgPSBhcnJheSgpOwoJCWZvcmVhY2goJGNhdGVnb3JpZXMgYXMgJG9uZV9pZCkgewoJCQoJCQkkcmVzdWx0W10gPSAkbW9kLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2NhdGVnb3J5X2lkJywgJG9uZV9pZCk7CgkJfQoJCgkJcmV0dXJuICRyZXN1bHQ7Cgl9CgkKCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gR2V0Q2F0ZWdvcnlOYW1lRnJvbUlkKExpc3RJdDIgJiRtb2QsICRpZF9hcnJheSkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCgkJJHF1ZXJ5ID0gJ1NFTEVDVCBjYXRlZ29yeV9uYW1lIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSc7CgkJJHFwYXJtcyA9IGFycmF5KCk7CgkJJGNsYXVzZSA9IGFycmF5KCk7CgkJJHJlc3VsdCA9IGFycmF5KCk7CgkJCgkJZm9yZWFjaCgoYXJyYXkpJGlkX2FycmF5IGFzICRvbmVfaWQpIHsKCQkJJGNsYXVzZVtdID0gJ2NhdGVnb3J5X2lkID0gPyc7CgkJCSRxcGFybXNbXSA9ICRvbmVfaWQ7CgkJfQoJCQoJCSRxdWVyeSAuPSAnIFdIRVJFICcgLiBpbXBsb2RlKCcgT1IgJywgJGNsYXVzZSk7CgkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksICRxcGFybXMpOwoJCQoJCXdoaWxlKCRkYnIgJiYgISRkYnItPkVPRikgewoJCQkKCQkJJHJlc3VsdFtdID0gJGRici0+ZmllbGRzWydjYXRlZ29yeV9uYW1lJ107CgkJCSRkYnItPk1vdmVOZXh0KCk7CgkJfQoJCQoJCWlmKCRkYnIpIAoJCQkkZGJyLT5DbG9zZSgpOwkKCQkKCQlyZXR1cm4gJHJlc3VsdDsKCX0KCQoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBVcGRhdGVIaWVyYXJjaHlQb3NpdGlvbihMaXN0SXQyICYkbW9kLCAkaWQpCgl7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCgkJJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uID0gJyc7CgkJJGN1cnJlbnRfaWRfaGllcmFyY2h5X3Bvc2l0aW9uID0gJyc7CgkJJGN1cnJlbnRfaGllcmFyY2h5X3BhdGggPSAnJzsKCQkkY3VycmVudF9wYXJlbnRfaWQgPSAkaWQ7CgoJCXdoaWxlICgkY3VycmVudF9wYXJlbnRfaWQgPiAtMSkKCQl7CgkJCSRxdWVyeSA9ICdTRUxFQ1QgcG9zaXRpb24sIHBhcmVudF9pZCwgY2F0ZWdvcnlfYWxpYXMgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IFdIRVJFIGNhdGVnb3J5X2lkID0gPyc7CgkJCSRyb3cgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRjdXJyZW50X3BhcmVudF9pZCkpOwoJCQlpZiAoJHJvdykgewoJCQkKCQkJCSRjdXJyZW50X2hpZXJhcmNoeV9wb3NpdGlvbiA9IHN0cl9wYWQoJHJvd1sncG9zaXRpb24nXSwgNSwgJzAnLCBTVFJfUEFEX0xFRlQpIC4gJy4nIC4gJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uOwoJCQkJJGN1cnJlbnRfaWRfaGllcmFyY2h5X3Bvc2l0aW9uID0gJGN1cnJlbnRfcGFyZW50X2lkIC4gJy4nIC4gJGN1cnJlbnRfaWRfaGllcmFyY2h5X3Bvc2l0aW9uOwoJCQkJJGN1cnJlbnRfaGllcmFyY2h5X3BhdGggPSAkcm93WydjYXRlZ29yeV9hbGlhcyddIC4gJy8nIC4gJGN1cnJlbnRfaGllcmFyY2h5X3BhdGg7CgkJCQkkY3VycmVudF9wYXJlbnRfaWQgPSAkcm93WydwYXJlbnRfaWQnXTsKCQkJfQoJCQllbHNlIHsKCQkJCgkJCQkkY3VycmVudF9wYXJlbnRfaWQgPSAtMTsKCQkJfQoJCX0KCgkJaWYgKHN0cmxlbigkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24pID4gMCkgewoJCQoJCQkkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24gPSBzdWJzdHIoJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uLCAwLCBzdHJsZW4oJGN1cnJlbnRfaGllcmFyY2h5X3Bvc2l0aW9uKSAtIDEpOwoJCX0KCQkKCQlpZiAoc3RybGVuKCRjdXJyZW50X2lkX2hpZXJhcmNoeV9wb3NpdGlvbikgPiAwKSB7CgkJCgkJCSRjdXJyZW50X2lkX2hpZXJhcmNoeV9wb3NpdGlvbiA9IHN1YnN0cigkY3VycmVudF9pZF9oaWVyYXJjaHlfcG9zaXRpb24sIDAsIHN0cmxlbigkY3VycmVudF9pZF9oaWVyYXJjaHlfcG9zaXRpb24pIC0gMSk7CgkJfQoJCQoJCWlmIChzdHJsZW4oJGN1cnJlbnRfaGllcmFyY2h5X3BhdGgpID4gMCkgewoJCQoJCQkkY3VycmVudF9oaWVyYXJjaHlfcGF0aCA9IHN1YnN0cigkY3VycmVudF9oaWVyYXJjaHlfcGF0aCwgMCwgc3RybGVuKCRjdXJyZW50X2hpZXJhcmNoeV9wYXRoKSAtIDEpOwoJCX0KCgkJJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IFNFVCBoaWVyYXJjaHkgPSA/LCBpZF9oaWVyYXJjaHkgPSA/LCBoaWVyYXJjaHlfcGF0aCA9ID8gV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsKCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkY3VycmVudF9oaWVyYXJjaHlfcG9zaXRpb24sICRjdXJyZW50X2lkX2hpZXJhcmNoeV9wb3NpdGlvbiwgJGN1cnJlbnRfaGllcmFyY2h5X3BhdGgsICRpZCkpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBVcGRhdGVIaWVyYXJjaHlQb3NpdGlvbnMoTGlzdEl0MiAmJG1vZCkKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoKCQkkcXVlcnkgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSc7CgkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwoKCQl3aGlsZSAoJGRiciAmJiAhJGRici0+RU9GKSB7CgkJCgkJCXNlbGY6OlVwZGF0ZUhpZXJhcmNoeVBvc2l0aW9uKCRtb2QsICRkYnItPmZpZWxkc1snY2F0ZWdvcnlfaWQnXSk7CgkJCSRkYnItPk1vdmVOZXh0KCk7CgkJfQoJCQoJCWlmKCRkYnIpIAoJCQkkZGJyLT5DbG9zZSgpOwoJfQkKCQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2CategoryQuery.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQyQ2F0ZWdvcnlRdWVyeSBleHRlbmRzIExpc3RJdDJRdWVyeQp7CgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIEF0dHJpYnV0ZXMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCglwcml2YXRlIHN0YXRpYyAkb3JkZXJieV9tYXAgPSBhcnJheSgKCQkvLyBjYXRlZ29yeQoJCSdjYXRlZ29yeV9pZCcgPT4gJ2NhdGVnb3J5X2lkJywgJ25hbWUnID0+ICdjYXRlZ29yeV9uYW1lJywgJ2FsaWFzJyA9PiAnY2F0ZWdvcnlfbmFtZScsICdoaWVyYXJjaHknID0+ICdoaWVyYXJjaHknLCAncG9zaXRpb24nID0+ICdwb3NpdGlvbicsCgkJJ2NyZWF0ZV9kYXRlJyA9PiAnY3JlYXRlX2RhdGUnLCAnbW9kaWZpZWRfZGF0ZScgPT4gJ21vZGlmaWVkX2RhdGUnLCAnaGllcmFyY2h5X3BhdGgnID0+ICdoaWVyYXJjaHlfcGF0aCcsICdpZF9oaWVyYXJjaHknID0+ICdpZF9oaWVyYXJjaHknLAoJCS8vIGZ1bmN0aW9ucwoJCSdyYW5kJz0+J1JBTkQoKScJCgkpOwoJCgkvL3ByaXZhdGUgc3RhdGljICRfYWxsb3dlZF9wYXJhbXMgPSBhcnJheSgpOyAvLyBUT0RPCQoJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIE1hZ2ljIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCQoJCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoTGlzdEl0MiAmJG1vZCwgJiRwYXJhbXMpCgl7CgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkcGFyYW1zKTsKCX0KCQkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgUXVlcnkgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCglwcml2YXRlIGZ1bmN0aW9uIF9hcHBlbmRfaW50ZXJuYWwoKQoJewoJCWlmKGlzc2V0KCR0aGlzLT5xdWVyeSkpCgkJCXJldHVybjsKCQkJCgkJJGRiID0gJHRoaXMtPkdldERiKCk7CgkJJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgpOwoJCSRwYXJhbXMgPSAkdGhpcy0+R2V0UGFyYW1zKCk7CQoKCQkvKioKCQkgKiBPUkRFUiBCWQoJCSAqLwoJCWlmKGlzc2V0KCRwYXJhbXNbJ29yZGVyYnknXSkpIHsKCgkJCWxpc3QoJG9yZGVyX2NvbHMsICRjdXN0b21fY29scykgPSBzZWxmOjpleHBsb2RlX29yZGVyYnkoJHBhcmFtc1snb3JkZXJieSddLCBzZWxmOjokb3JkZXJieV9tYXApOyAvLyA8LSBCaXQgYnJva2VuLCB3YXNuJ3QgbWVudCBmb3IgY2F0ZWdvcnkgYWN0aW9uLCBzZWNvbmQgYXJyYXkgdG90YWxseSB1bm5lY2NlcnkuCgkJCQoJCQlpZihjb3VudCgkb3JkZXJfY29scykpIHsKCQkJCgkJCQlmb3JlYWNoKCRvcmRlcl9jb2xzIGFzICRvbmUpIHsKCQkJCQoJCQkJCSR0aGlzLT5BcHBlbmRUbyhwYXJlbnQ6OlZBUlRZUEVfT1JERVJCWSwgJG9uZSk7CgkJCQl9CgkJCX0KCQl9Cgl9CgkJCglwcm90ZWN0ZWQgZnVuY3Rpb24gX3F1ZXJ5KCkKCXsKCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCQkkbW9kID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCk7CgkJJHBhcmFtcyA9ICR0aGlzLT5HZXRQYXJhbXMoKTsKCQkKCQkkb3JkZXJfY29scyA9IGFycmF5KCk7CgkJJGN1c3RvbV9jb2xzID0gYXJyYXkoKTsKCQkkdGhpcy0+X2FwcGVuZF9pbnRlcm5hbCgpOwkJCgoJCS8vIEluaXQgcXVlcnkKCQkkdGhpcy0+cXVlcnkgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBCICc7CgoJCS8vIE1lcmdlIGV2ZXJ5dGhpbmcgdG8gb25lIHF1ZXJ5CgkJaWYoY291bnQoJHRoaXMtPmpvaW5zKSkKCQkJJHRoaXMtPnF1ZXJ5IC49IGltcGxvZGUoJyAnLCAkdGhpcy0+am9pbnMpOwoJCQoJCWlmKGNvdW50KCR0aGlzLT53aGVyZSkpCgkJCSR0aGlzLT5xdWVyeSAuPSAnIFdIRVJFICcgLiBpbXBsb2RlKCcgQU5EICcsICR0aGlzLT53aGVyZSk7CgkJCQoJCSR0aGlzLT5xdWVyeSAuPSAnIEdST1VQIEJZIEIuY2F0ZWdvcnlfaWQgJzsJCQkKCgkJaWYoY291bnQoJHRoaXMtPm9yZGVyYnkpKSB7CgkJCgkJCSR0aGlzLT5xdWVyeSAuPSAnIE9SREVSIEJZICcgLiBpbXBsb2RlKCcsICcsICR0aGlzLT5vcmRlcmJ5KTsKCQl9IGVsc2UgewoJCQoJCQkkdGhpcy0+cXVlcnkgLj0gJyBPUkRFUiBCWSBoaWVyYXJjaHkgJyAuICRtb2QtPkdldFByZWZlcmVuY2UoJ3NvcnRvcmRlcicpOwoJCX0JCQkKCQkJCgkJJHRoaXMtPnJlc3VsdHNldCA9ICRkYi0+RXhlY3V0ZSgkdGhpcy0+cXVlcnksICR0aGlzLT5xcGFyYW1zKTsKCX0JCgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQ2xhc3MgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJCgkKCXN0YXRpYyBwcml2YXRlIGZ1bmN0aW9uIGV4cGxvZGVfb3JkZXJieSgkcGFyYW0sICR2YWxpZF9jb2xzKXsKCQoJCSRvcmRlcl9jb2xzID0gYXJyYXkoKTsKCQkkY3VzdG9tX2NvbHMgPSBhcnJheSgpOwoJCSRpbmRleCA9IDA7CgkJCgkJZm9yZWFjaChleHBsb2RlKCcsJywgJHBhcmFtKSBhcyAkY29sKSB7CgkJCgkJCSRjb2wgPSB0cmltKCRjb2wpOwoJCQkkY29sX3BhcnRzID0gZXhwbG9kZSgnfCcsICRjb2wpOwoJCgkJCS8vIGNvbHVtbiBuYW1lCgkJCSRjb2xfbmFtZSA9ICRjb2xfcGFydHNbMF07CgkJCSRjb2xfb3JkZXIgPSAnQVNDJzsKCQoJCQkvLyBvcmRlciBjb2x1bW4gYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcKCQkJaWYoaXNzZXQoJGNvbF9wYXJ0c1sxXSkpIHsKCQkJCQoJCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX3BhcnRzWzFdLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX3BhcnRzWzFdIDogJ0FTQycpOwoJCQl9CgkKCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX29yZGVyLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX29yZGVyIDogJ0FTQycpOwoJCgkJCWlmKGlzc2V0KCR2YWxpZF9jb2xzWyRjb2xfbmFtZV0pKSB7CgkJCQoJCQkJJG9yZGVyX2NvbHNbJGluZGV4XSA9ICR2YWxpZF9jb2xzWyRjb2xfbmFtZV0gLiAnICcgLiAkY29sX29yZGVyOwoJCQl9IAoJCQllbHNlaWYgKHN0YXJ0c3dpdGgoJGNvbF9uYW1lLCAnY3VzdG9tXycpKSB7CgkJCQkKCQkJCSRjdXN0b21fbmFtZSA9IHN1YnN0cigkY29sX25hbWUsIDcpOwoJCQkJJG9iaiA9IG5ldyBzdGRDbGFzczsKCQkJCSRvYmotPm5hbWUgPSAkY3VzdG9tX25hbWU7CgkJCQkkb2JqLT5vcmRlciA9ICRjb2xfb3JkZXI7CgkJCQkKCQkJCSRjdXN0b21fY29sc1skaW5kZXhdID0gJG9iajsKCQkJfQoJCQkKCQkJJGluZGV4Kys7CgkJfQoJCQkKCQlyZXR1cm4gYXJyYXkoJG9yZGVyX2NvbHMsICRjdXN0b21fY29scyk7Cgl9CQkKCQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4J]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Config.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQyQ29uZmlnIGltcGxlbWVudHMgQXJyYXlBY2Nlc3MKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBdHRyaWJ1dGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQogCglzdGF0aWMgcHJpdmF0ZSAkX2FsbG93ZWQgPSBhcnJheSgnbW9kdWxlX2FsaWFzJyk7Cglwcml2YXRlICRfZGF0YSA9IGFycmF5KCk7Cglwcml2YXRlICRfbW9kX2luc3RhbmNlOwoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgTWFnaWMgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJCgkKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChMaXN0SXQyICYkbW9kKSAKCXsKCQkkdGhpcy0+X21vZF9pbnN0YW5jZSA9ICRtb2Q7IC8vIDwtIE1heSBiZSBtZW1vcnkgaGVhdmUsIGRvIHNvbWUgdGVzdGluZy4uLgoJCgkJJGxpc3RpdDJfY29uZmlnID0gYXJyYXkoKTsKCQkkZm4gPSBjbXNfam9pbl9wYXRoKCRtb2QtPkdldE1vZHVsZVBhdGgoKSwgTElTVElUMl9DT05GSUdfRklMRSk7CgkJaWYoaXNfcmVhZGFibGUoJGZuKSkgewoJCQoJCQlpbmNsdWRlKCRmbik7CgkJCWlmKGlzc2V0KCRsaXN0aXQyX2NvbmZpZykpIHsKCQkJCgkJCQlmb3JlYWNoKCRsaXN0aXQyX2NvbmZpZyBhcyAka2V5ID0+ICR2YWx1ZSkgewoJCQkKCQkJCQkkdGhpcy0+b2Zmc2V0U2V0KCRrZXksICR2YWx1ZSk7CgkJCQl9CgkJCX0KCQl9Cgl9CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBcnJheSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0RXhpc3RzKCRrZXkpCgl7CQkKCQlpZihpc3NldChzZWxmOjokX2FsbG93ZWRbJGtleV0pKQoJCQlyZXR1cm4gdHJ1ZTsKCQoJCXJldHVybiBmYWxzZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0R2V0KCRrZXkpCgl7CQoJCS8vIENoZWNrIGZpbGUgdmFsdWVzCgkJaWYoaXNzZXQoJHRoaXMtPl9kYXRhWyRrZXldKSkgCgkJCXJldHVybiAkdGhpcy0+X2RhdGFbJGtleV07CgkJCgkJLy8gQ2hlY2sgcHJlLWRlZmluZWQgdmFsdWVzCgkJc3dpdGNoKCRrZXkpIHsKCQkKCQkJY2FzZSAnbW9kdWxlX2FsaWFzJzoKCQkJCXJldHVybiBzdHJ0b2xvd2VyKCR0aGlzLT5fbW9kX2luc3RhbmNlLT5HZXROYW1lKCkpOwoKCQkJZGVmYXVsdDoKCQkJCXJldHVybiBudWxsOwoJCX0KCX0KCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0U2V0KCRrZXksJHZhbHVlKQoJewoJCWlmKGluX2FycmF5KCRrZXksIHNlbGY6OiRfYWxsb3dlZCkpCgkJCSR0aGlzLT5fZGF0YVska2V5XSA9ICR2YWx1ZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0VW5zZXQoJGtleSkKCXsKCQl0cmlnZ2VyX2Vycm9yKCdVbnNldHRpbmcgTGlzdEl0MiBjb25maWcgdmFyaWFibGUgJy4ka2V5LicgaXMgaW52YWxpZCcsIEVfVVNFUl9FUlJPUik7Cgl9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2CsvIterator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoqCiAqIHNvdXJjZTogaHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9mdW5jdGlvbi5mZ2V0Y3N2LnBocCM1NzgwMgogKiAKICogPT4gY2FuIGltcG9ydCBhIGNzdiBmaWxlIGFuZCBpdGVyYXRlIG92ZXIgdGhlIGl0ZW1zCiAqID0+IGFsbG93cyB0byBzcGVjaWZ5IHRoZSBzZXBhcmF0b3IgYW5kIHRoZSBlbmNsb3N1cmUKICogCiAqIFJlcXVpcmVzIGF0IGxlYXN0IFBIUCA0LjMKICogCiAqIEhvd1RvIHVzZSBleGFtcGxlOgoJJGNzdkl0ZXJhdG9yID0gbmV3IENzdkl0ZXJhdG9yKCcvcGF0aC90by9maWxlJywgdHJ1ZSwgJ3wnLCAnIicpOwoJd2hpbGUgKCRjc3ZJdGVyYXRvci0+bmV4dCgpKSB7CgkJcHJpbnRfcigkY3N2SXRlcmF0b3ItPmN1cnJlbnQoKSk7Cgl9CiAqIAogKiBAYXV0aG9yIE1PIG1vcnRhbm9uIGF0IGdtYWlsIGRvdCBjb20sIDE0LU9jdC0yMDA1IDA4OjA1CiAqIEBhdXRob3IgVEsgVG9iaWFzIEtsdWdlLCBodHRwOi8vZW5hcmlvbi5uZXQKICogCiAqIEB2ZXJzaW9uIDEuMSAtIDIwMDYtMDQtMjIgYnkgVEsKICogCQktIGJhY2twb3J0IHRvIFBIUCA0CiAqIAkJLSBhZGRlZCB1c2FnZSBvZiBlbmNsb3N1cmUKICogCQktIGFkZGVkIHN1cHBvcnQgb2YgaGVhZGVycyAKICogQHZlcnNpb24gMS4wIC0gMjAwNS0xMC0xNCBieSBNTwogKiAKICovCgpjbGFzcyBMaXN0SXQyQ3N2SXRlcmF0b3IKewogICB2YXIgJFJPV19TSVpFID0gNDA5NjsKICAgLyoqCiAgICAgKiBUaGUgcG9pbnRlciB0byB0aGUgY3ZzIGZpbGUuCiAgICAgKiBAdmFyIHJlc291cmNlCiAgICAgKiBAYWNjZXNzIHByaXZhdGUKICAgICAqLwogICB2YXIgJGZpbGVQb2ludGVyID0gbnVsbDsKICAgLyoqCiAgICAgKiBUaGUgY3VycmVudCBlbGVtZW50LCB3aGljaCB3aWxsCiAgICAgKiBiZSByZXR1cm5lZCBvbiBlYWNoIGl0ZXJhdGlvbi4KICAgICAqIEB2YXIgYXJyYXkKICAgICAqIEBhY2Nlc3MgcHJpdmF0ZQogICAgICovCiAgIHZhciAkY3VycmVudEVsZW1lbnQgPSBudWxsOwogICAvKioKICAgICAqIFRoZSByb3cgY291bnRlci4KICAgICAqIEB2YXIgaW50CiAgICAgKiBAYWNjZXNzIHByaXZhdGUKICAgICAqLwogICB2YXIgJHJvd0NvdW50ZXIgPSBudWxsOwogICAvKioKICAgICAqIFRoZSBkZWxpbWl0ZXIgZm9yIHRoZSBjc3YgZmlsZS4KICAgICAqIEB2YXIgc3RyCiAgICAgKiBAYWNjZXNzIHByaXZhdGUKICAgICAqLwogICB2YXIgJGRlbGltaXRlciA9IG51bGw7CiAgIC8qKgogICAgICogVGhlIGVuY2xvc3VyZSBmb3IgdGhlIGNzdiBmaWxlLgogICAgICogQHZhciBzdHIKICAgICAqIEBhY2Nlc3MgcHJpdmF0ZQogICAgICovCiAgIHZhciAkZW5jbG9zdXJlID0gJyInOwogICAvKioKICAgICAqIFNwZWNpZmllcyBpZiBoZWFkZXJzIHNob3VsZCBiZSByZWFkIGFuZCB1c2VkLgogICAgICogQHZhciBib29sCiAgICAgKiBAYWNjZXNzIHByaXZhdGUKICAgICAqLwogICB2YXIgJHdpdGhIZWFkZXJzID0gZmFsc2U7CiAgIC8qKgogICAgKiBDb250YWlucyB0aGUgaGVhZGVycyBpZiBoZWFkZXJzIGFyZSB1c2VkLgogICAgKiBAdmFyIGFycmF5CiAgICAqIEBhY2Nlc3MgcHJpdmF0ZQogICAgKi8KICAgdmFyICRoZWFkZXIgPSBhcnJheSgpOwoKCiAgIC8qKgogICAgICogVGhpcyBpcyB0aGUgY29uc3RydWN0b3IuSXQgdHJ5IHRvIG9wZW4gdGhlIGNzdiBmaWxlLlRoZSBtZXRob2QgdGhyb3dzIGFuIGV4Y2VwdGlvbgogICAgICogb24gZmFpbHVyZS4KICAgICAqCiAgICAgKiBAYWNjZXNzIHB1YmxpYwogICAgICogQHBhcmFtIHN0ciAkZmlsZSBUaGUgY3N2IGZpbGUuCiAgICAgKiBAcGFyYW0gYm9vbCAkd2l0aEhlYWRlcnMgU3BlY2lmeSBpZiBmaWxlIGNvbnRhaW5zIGhlYWRlciBhbmQgc2hvdWxkIGJlIHVzZWQuCiAgICAgKiBAcGFyYW0gc3RyICRkZWxpbWl0ZXIgVGhlIGRlbGltaXRlci4KICAgICAqIEBwYXJhbSBzdHIgJGVuY2xvc3VyZSBUaGUgZW5jbG9zdXJlLgogICAgICoKICAgICAqIEB0aHJvd3MgRXhjZXB0aW9uCiAgICAgKi8KICAgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGZpbGUsICR3aXRoSGVhZGVycyA9IHRydWUsICRkZWxpbWl0ZXI9JywnLCAkZW5jbG9zdXJlPSciJykKICAgewogICAgICAgJHRoaXMtPmZpbGVQb2ludGVyID0gQGZvcGVuKCRmaWxlLCAncicpOwogICAgICAgaWYgKCR0aGlzLT5maWxlUG9pbnRlciA9PT0gZmFsc2UpIHsKICAgICAgIAkJZGllKCdUaGUgZmlsZSAiJy4kZmlsZS4nIiBjYW5ub3QgYmUgcmVhZC4nKTsKICAgICAgIH0KICAgICAgICR0aGlzLT5kZWxpbWl0ZXIgPSAkZGVsaW1pdGVyOwogICAgICAgJHRoaXMtPmVuY2xvc3VyZSA9ICRlbmNsb3N1cmU7CiAgICAgICAkdGhpcy0+d2l0aEhlYWRlcnMgPSAkd2l0aEhlYWRlcnM7CiAgIH0KCiAgIC8qKgogICAgICogVGhpcyBtZXRob2QgcmVzZXRzIHRoZSBmaWxlIHBvaW50ZXIuCiAgICAgKgogICAgICogQGFjY2VzcyBwdWJsaWMKICAgICAqLwogICBmdW5jdGlvbiByZXdpbmQoKSB7CiAgICAgICAkdGhpcy0+cm93Q291bnRlciA9IDA7CiAgICAgICByZXdpbmQoJHRoaXMtPmZpbGVQb2ludGVyKTsKICAgfQoKICAgLyoqCiAgICAgKiBUaGlzIG1ldGhvZCByZXR1cm5zIHRoZSBjdXJyZW50IGNzdiByb3cgYXMgYSAyIGRpbWVuc2lvbmFsIGFycmF5CiAgICAgKgogICAgICogQGFjY2VzcyBwdWJsaWMKICAgICAqIEByZXR1cm4gYXJyYXkgVGhlIGN1cnJlbnQgY3N2IHJvdyBhcyBhIDIgZGltZW5zaW9uYWwgYXJyYXkKICAgICAqLwogICBmdW5jdGlvbiBjdXJyZW50KCkgewoJICAgaWYgKCR0aGlzLT53aXRoSGVhZGVycyAmJiAkdGhpcy0+cm93Q291bnRlciA9PSAwKSB7ICAgCQogICAgICAgCQkkdGhpcy0+aGVhZGVyID0gJHRoaXMtPmN1cnJlbnRFbGVtZW50OwogICAgICAgCQkkdGhpcy0+bmV4dCgpOwoJICAgfQkgICAKCiAgICAgICAvLyBjaGVjayBmb3IgaW52YWxpZCBjdXJyZW50RWxlbWVudAogICAgICAgaWYgKCFpc19hcnJheSgkdGhpcy0+Y3VycmVudEVsZW1lbnQpKSB7CiAgICAgICAJCXZhcl9kdW1wKCR0aGlzLT5jdXJyZW50RWxlbWVudCk7CiAgICAgICAJCXJldHVybiAkdGhpcy0+Y3VycmVudEVsZW1lbnQ7CiAgICAgICB9CgoJICAgLy8gaGFuZGxlIGhlYWRlcnMgICAgICAgCiAgICAgICBpZiAoJHRoaXMtPndpdGhIZWFkZXJzKSB7CiAgICAgICAJCS8vIGFwcGx5IGhlYWRlcnMgdG8gY3VycmVudEVsZW1lbnQKCQkJJHRtcCA9IGFycmF5KCk7ICAgICAgIAkJCiAgICAgICAJCQogICAgICAgCQlmb3JlYWNoICgkdGhpcy0+Y3VycmVudEVsZW1lbnQgYXMgJGkgPT4gJHZhbHVlKSB7CiAgICAgICAJCQkvLyAkdG1wWyRpXSA9ICR2YWx1ZTsgLy8gdW5jb21tZW50IHRoaXMgbGluZSB0byB1c2UgaW5kaWNlcyBhcyBhcnJheSBrZXlzCgkJCQlpZihpc3NldCgkdGhpcy0+aGVhZGVyWyRpXSkpCgkJCQkJJHRtcFskdGhpcy0+aGVhZGVyWyRpXV0gPSAkdmFsdWU7CiAgICAgICAJCX0KICAgICAgIAkJJHRoaXMtPmN1cnJlbnRFbGVtZW50ID0gJHRtcDsKICAgICAgIH0KICAgICAgICR0aGlzLT5yb3dDb3VudGVyKys7CiAgICAgICByZXR1cm4gJHRoaXMtPmN1cnJlbnRFbGVtZW50OwogICB9ICAKICAgCiAgIC8qKgogICAgICogVGhpcyBtZXRob2QgcmV0dXJucyB0aGUgY3VycmVudCByb3cgbnVtYmVyLgogICAgICoKICAgICAqIEBhY2Nlc3MgcHVibGljCiAgICAgKiBAcmV0dXJuIGludCBUaGUgY3VycmVudCByb3cgbnVtYmVyCiAgICAgKi8KICAgZnVuY3Rpb24ga2V5KCkgewogICAgICAgcmV0dXJuICR0aGlzLT5yb3dDb3VudGVyOwogICB9CgogICAvKipSYQogICAgICogVGhpcyBtZXRob2QgY2hlY2tzIGlmIHRoZSBlbmQgb2YgZmlsZSBpcyByZWFjaGVkLgogICAgICoKICAgICAqIEBhY2Nlc3MgcHVibGljCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4gUmV0dXJucyB0cnVlIG9uIEVPRiByZWFjaGVkLCBmYWxzZSBvdGhlcndpc2UuCiAgICAgKi8KICAgZnVuY3Rpb24gbmV4dCgpIHsKICAgICAgICR0aGlzLT5jdXJyZW50RWxlbWVudCA9IEBmZ2V0Y3N2KCR0aGlzLT5maWxlUG9pbnRlciwgJHRoaXMtPlJPV19TSVpFLCAkdGhpcy0+ZGVsaW1pdGVyLCAkdGhpcy0+ZW5jbG9zdXJlKTsKICAgICAgIC8vIGVvZiBpcyByZWFjaGVkIDw9PiByZXN1bHQgb2YgZmdldGNzdiBpcyBmYWxzZSAKICAgICAgIHJldHVybiAkdGhpcy0+Y3VycmVudEVsZW1lbnQgIT09IEZBTFNFOwogICB9CgogICAvKioKICAgICAqIFRoaXMgbWV0aG9kIGNoZWNrcyBpZiB0aGUgbmV4dCByb3cgaXMgYSB2YWxpZCByb3cuCiAgICAgKgogICAgICogQGFjY2VzcyBwdWJsaWMKICAgICAqIEByZXR1cm4gYm9vbGVhbiBJZiB0aGUgbmV4dCByb3cgaXMgYSB2YWxpZCByb3cuCiAgICAgKi8KICAgZnVuY3Rpb24gdmFsaWQoKSB7CiAgICAgICBpZiAoISR0aGlzLT5uZXh0KCkpIHsKICAgICAgICAgICAkdGhpcy0+dGVhckRyb3AoKTsKICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICB9CiAgICAgICByZXR1cm4gdHJ1ZTsKICAgfQogICAKICAgLyoqCiAgICAqIFRoaXMgbWV0aG9kIGNsb3NlcyBhbGwgb3BlbiBmaWxlcyBhbmQgc2h1dHMgdGhpcyBvYmplY3QgZG93bi4KICAgICogCiAgICAqIEBhY2Nlc3MgcHVibGljCiAgICAqIEByZXR1cm4gdm9pZCBubyByZXN1bHQKICAgICovCiAgIGZ1bmN0aW9uIHRlYXJEb3duKCkgewogICAJICAgZmNsb3NlKCR0aGlzLT5maWxlUG9pbnRlcik7CiAgIH0KfQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Duplicator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKY2xhc3MgTGlzdEl0MkR1cGxpY2F0b3IgewoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQ29uc3RhbnRzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkKCWNvbnN0IE1PRF9QUkVGSVggPSAnTGlzdEl0Mic7Cgljb25zdCBQTEFDRUhPTERFUiA9ICc3MTEyOTgzMjE3OTUzNzRjMWM0NWFkNzIwMjViMWI3OCc7CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBdHRyaWJ1dGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJcHJpdmF0ZSAkc3JjOwoJcHJpdmF0ZSAkZHN0OwoJcHJpdmF0ZSAkbW9kbmFtZTsKCXByaXZhdGUgc3RhdGljICRfaW52YWxpZCA9IGFycmF5KCcuJywgJy4uJyk7CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQkKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kbmFtZSA9IHNlbGY6OlBMQUNFSE9MREVSKSAKCXsKCQkkdGhpcy0+bW9kbmFtZSA9IHNlbGY6Ok1PRF9QUkVGSVggLiAkbW9kbmFtZTsKCQkkdGhpcy0+c3JjID0gZGlybmFtZShkaXJuYW1lKF9fRklMRV9fKSkgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJ2R1cGxpY2F0ZSc7CgkJJHRoaXMtPmRzdCA9IGRpcm5hbWUoZGlybmFtZShkaXJuYW1lKF9fRklMRV9fKSkpIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICR0aGlzLT5tb2RuYW1lOwoJfQoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgU2V0L0dldAoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJCgkKCXB1YmxpYyBmdW5jdGlvbiBTZXRNb2R1bGUoJG5hbWUpCgl7CgkJJHRoaXMtPm1vZG5hbWUgPSAkbmFtZTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIFNldFNvdXJjZSgkbmFtZSkKCXsKCQkkdGhpcy0+c3JjID0gJG5hbWU7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIFNldERlc3RpbmF0aW9uKCRuYW1lKQoJewoJCSR0aGlzLT5kc3QgPSAkbmFtZTsKCX0JCgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgUnVubmVyCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkKCXB1YmxpYyBmdW5jdGlvbiBSdW4oKQoJewoJCSR0aGlzLT5Db3B5UmVjdXJzaXZlKCR0aGlzLT5zcmMsICR0aGlzLT5kc3QpOwoJCSR0aGlzLT5SZW5hbWUoKTsKCQkkdGhpcy0+Rml4TW9kdWxlZmlsZSgpOwoJCQoJCXJldHVybiAkdGhpcy0+bW9kbmFtZTsKCX0KCQkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgRmlsZSBoYW5kbGluZyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCglwcml2YXRlIGZpbmFsIGZ1bmN0aW9uIENvcHlSZWN1cnNpdmUoJHNyYywgJGRzdCkgCgl7CgkJJGRpciA9IG9wZW5kaXIoJHNyYyk7IC8vIDwtIFRocm93IGV4Y2VwdGlvbiBvbiBmYWlsdXJlPwoJCUBta2RpcigkZHN0KTsgLy8gPC0gVGhyb3cgZXhjZXB0aW9uIG9uIGZhaWx1cmU/CgkJCgkJd2hpbGUoZmFsc2UgIT09ICggJGZpbGUgPSByZWFkZGlyKCRkaXIpKSApIHsKCQkKCQkJaWYgKGluX2FycmF5KCRmaWxlLCBzZWxmOjokX2ludmFsaWQpKSBjb250aW51ZTsgLy8gPC0gU2tpcCBzdHVmZiB3ZSBuZXZlciBhbGxvdyB0byBjb3B5CgoJCQlpZiAoIGlzX2Rpcigkc3JjIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRmaWxlKSApIHsgCgkJCQkkdGhpcy0+Q29weVJlY3Vyc2l2ZSgkc3JjIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRmaWxlLCAkZHN0IC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRmaWxlKTsgCgkJCX0gCgkJCWVsc2UgeyAKCQkJCUBjb3B5KCRzcmMgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGUsICRkc3QgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGUpOyAvLyA8LSBUaHJvdyBleGNlcHRpb24gb24gZmFpbHVyZT8KCQkJfSAKCQl9IAoJCQoJCWNsb3NlZGlyKCRkaXIpOyAKCX0KCQoJcHJpdmF0ZSBmaW5hbCBmdW5jdGlvbiBSZW5hbWUoKSAKCXsKCQlAcmVuYW1lKCR0aGlzLT5kc3QgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gc2VsZjo6UExBQ0VIT0xERVIsIAoJCQkkdGhpcy0+ZHN0IC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICR0aGlzLT5tb2RuYW1lIC4nLm1vZHVsZS5waHAnKTsgLy8gPC0gVGhyb3cgZXhjZXB0aW9uIG9uIGZhaWx1cmU/Cgl9CgkKCXByaXZhdGUgZmluYWwgZnVuY3Rpb24gRml4TW9kdWxlZmlsZSgpIAoJewoJCSRmaWxlbmFtZSA9ICR0aGlzLT5kc3QgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJHRoaXMtPm1vZG5hbWUgLicubW9kdWxlLnBocCc7CgoJCS8vIFJlcGxhY2VtZW50cwoJCSRfY29udGVudHMgPSBmaWxlX2dldF9jb250ZW50cygkZmlsZW5hbWUpOyAvLyA8LSBUaHJvdyBleGNlcHRpb24gb24gZmFpbHVyZT8KCQkkX2NvbnRlbnRzID0gc3RyX3JlcGxhY2Uoc2VsZjo6UExBQ0VIT0xERVIsICR0aGlzLT5tb2RuYW1lLCAkX2NvbnRlbnRzKTsKCQoJCS8vIFdyaXRlIGZpbGUKCQkkZmggPSBAZm9wZW4oJGZpbGVuYW1lLCAndycpOwoJCWZ3cml0ZSgkZmgsICRfY29udGVudHMpOyAvLyA8LSBUaHJvdyBleGNlcHRpb24gb24gZmFpbHVyZT8KCQlmY2xvc2UoJGZoKTsJCgl9CQoJCn0gLy8gZW5kIG9mIGNsYXNz]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Exception.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKY2xhc3MgTGlzdEl0MkV4Y2VwdGlvbiBleHRlbmRzIEV4Y2VwdGlvbiB7fQoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2FielddefArray.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKY2xhc3MgTGlzdEl0MkZpZWxkZGVmQXJyYXkgZXh0ZW5kcyBBcnJheU9iamVjdAp7IAogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRhcnJheSkgCgl7CiAgICAgICAgZm9yZWFjaCgkYXJyYXkgYXMgJGtleSA9PiAkdmFsdWUpIHsKCQkKICAgICAgICAgICAgJHRoaXMtPm9mZnNldFNldCgka2V5LCAkdmFsdWUpOwogICAgICAgIH0JCgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBvZmZzZXRTZXQoJGtleSwgJHZhbHVlKQoJewoJCWlmKCEkdmFsdWUgaW5zdGFuY2VvZiBMaXN0SXQyRmllbGRkZWZCYXNlKQoJCQlkaWUoJ05vdCBhbiBMaXN0SXQyIEZpZWxkZGVmIE9iamVjdCcpOyAvLyA8LSBQdXQgbWVudGlvbiB0byBhZG1pbiBsb2cgaW5zdGVhZCBvZiBraWxsaW5nIHNjcmlwdCBhbmQgaWdub3JlIHZhbHVlLgoJCQkKCQlwYXJlbnQ6Om9mZnNldFNldCgka2V5LCAkdmFsdWUpOwoJfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBvZmZzZXRFeGlzdHMoJG9mZnNldCkgCgl7CgkJaWYocGFyZW50OjpvZmZzZXRFeGlzdHMoJG9mZnNldCkpCgkJCXJldHVybiB0cnVlOwoJCQkKCQlmb3JlYWNoKCR0aGlzIGFzICRmaWVsZCkgewoJCQoJCQlpZihpc19vYmplY3QoJGZpZWxkKSkKCQkJCWlmKCRmaWVsZC0+R2V0QWxpYXMoKSA9PSAkb2Zmc2V0KQoJCQkJCXJldHVybiB0cnVlOwoJCX0KCQkKCQlyZXR1cm4gRkFMU0U7CiAgICB9CgkKICAgIHB1YmxpYyBmdW5jdGlvbiBvZmZzZXRHZXQoJG9mZnNldCkgCgl7CgkJaWYocGFyZW50OjpvZmZzZXRFeGlzdHMoJG9mZnNldCkpCgkJCXJldHVybiBwYXJlbnQ6Om9mZnNldEdldCgkb2Zmc2V0KTsKCQkJCgkJZm9yZWFjaCgkdGhpcyBhcyAkZmllbGQpIHsKCQkKCQkJaWYoaXNfb2JqZWN0KCRmaWVsZCkpCgkJCQlpZigkZmllbGQtPkdldEFsaWFzKCkgPT0gJG9mZnNldCkKCQkJCQlyZXR1cm4gcGFyZW50OjpvZmZzZXRHZXQoJGZpZWxkLT5HZXRJZCgpKTsKCQl9CgkJCgkJcmV0dXJuIG51bGw7CiAgICB9CgkKCXB1YmxpYyBmdW5jdGlvbiBfX3RvU3RyaW5nKCkKCXsKCQlyZXR1cm4gIkFycmF5IjsKCX0KCQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2FielddefBase.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQovKioNCiAqIExpc3RJdDIgRmllbGRkZWYgQmFzZQ0KICoNCiAqIEBwYWNrYWdlIExpc3RJdDINCiAqIEBhdXRob3IgVGFwaW8gTPZ5dHR5DQogKiBAc2luY2UgMS4zDQogKi8NCmFic3RyYWN0IGNsYXNzIExpc3RJdDJGaWVsZGRlZkJhc2UgaW1wbGVtZW50cyBBcnJheUFjY2Vzcw0Kew0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIENvbnN0YW50cw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkNCgljb25zdCBUWVBFX1NUUklORyAJPSAic3RyaW5nIjsNCgljb25zdCBUWVBFX0FSUkFZIAk9ICJhcnJheSI7DQoJY29uc3QgVFlQRV9PQkpFQ1QgCT0gIm9iamVjdCI7DQoNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJIyBWYXJpYWJsZXMNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQ0KDQoJcHJpdmF0ZSAkaWQ7DQoJcHJpdmF0ZSAkbmFtZTsNCglwcml2YXRlICRhbGlhczsNCglwcml2YXRlICRkZXNjcmlwdGlvbjsNCglwcml2YXRlICR0eXBlOw0KCXByaXZhdGUgJGZyaWVuZGx5dHlwZTsNCglwcml2YXRlICR2YWx1ZTsNCglwcml2YXRlICRvcmlnaW5hdG9yOw0KCXByaXZhdGUgJGFjdGl2ZTsNCglwcml2YXRlICRkaXNhYmxlZDsNCglwcml2YXRlICRwYXRoOw0KCXByaXZhdGUgJHBvc2l0aW9uOw0KCXByaXZhdGUgJHJlcXVpcmVkOw0KCXByaXZhdGUgJG9wdGlvbnM7DQoJcHJpdmF0ZSAkY2FsbGVyOw0KCXByaXZhdGUgJGl0ZW1faWQ7DQoJDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSMgTWFnaWMgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JDQoJDQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbywgJGNhbGxlcl9vYmplY3QgPSBudWxsKSB7DQoJDQoJCSR0aGlzLT5pZCA9IC0xOw0KCQkkdGhpcy0+bmFtZSA9ICcnOw0KCQkkdGhpcy0+YWxpYXMgPSAnJzsNCgkJJHRoaXMtPmRlc2NyaXB0aW9uID0gJyc7DQoJCSR0aGlzLT50eXBlID0gJGRiX2luZm8tPnR5cGU7DQoJCSR0aGlzLT5vcmlnaW5hdG9yID0gJGRiX2luZm8tPm9yaWdpbmF0b3I7DQoJCSR0aGlzLT5hY3RpdmUgPSAkZGJfaW5mby0+YWN0aXZlOw0KCQkkdGhpcy0+ZGlzYWJsZWQgPSAkZGJfaW5mby0+ZGlzYWJsZWQ7DQoJCSR0aGlzLT5wYXRoID0gJGRiX2luZm8tPnBhdGg7CQkNCgkJJHRoaXMtPmZyaWVuZGx5dHlwZSA9ICRkYl9pbmZvLT50eXBlOw0KCQkkdGhpcy0+dmFsdWUgPSBuZXcgTGlzdEl0MkZpZWxkZGVmVmFsdWU7DQoJCSR0aGlzLT5wb3NpdGlvbiA9IC0xOw0KCQkkdGhpcy0+cmVxdWlyZWQgPSBmYWxzZTsNCgkJJHRoaXMtPm9wdGlvbnMgPSBudWxsOw0KCQkkdGhpcy0+Y2FsbGVyID0gbnVsbDsNCgkJJHRoaXMtPml0ZW1faWQgPSAtMTsNCgkJDQoJCWlmKCRjYWxsZXJfb2JqZWN0IGluc3RhbmNlb2YgQ01TTW9kdWxlKSB7DQoJCQ0KCQkJJHRoaXMtPmNhbGxlciA9ICRjYWxsZXJfb2JqZWN0LT5HZXROYW1lKCk7DQoJCX0NCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpDQoJew0KCQlyZXR1cm4gJHRoaXMtPl9vdmVyd3JpdGVfY29uc3RhbnRzKCRrZXkpOwkNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIF9fdG9TdHJpbmcoKQ0KCXsNCgkJcmV0dXJuIChzdHJpbmcpJHRoaXMtPnZhbHVlOw0KCX0NCgkNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJIyBBcnJheSBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJDQoNCiAgICBwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0R2V0KCRvZmZzZXQpIA0KCXsJCQkNCgkJcmV0dXJuICR0aGlzLT5fb3ZlcndyaXRlX2NvbnN0YW50cygkb2Zmc2V0KTsNCiAgICB9DQoNCiAgICBwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0U2V0KCRvZmZzZXQsICR2YWx1ZSkge30NCiAgICBwdWJsaWMgZnVuY3Rpb24gb2Zmc2V0RXhpc3RzKCRvZmZzZXQpIHt9DQogICAgcHVibGljIGZ1bmN0aW9uIG9mZnNldFVuc2V0KCRvZmZzZXQpIHt9DQoJDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSMgUHJpdmF0ZSBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJDQoNCglwcml2YXRlIGZ1bmN0aW9uIF9vdmVyd3JpdGVfY29uc3RhbnRzKCRrZXkpDQoJew0KCQlzd2l0Y2goJGtleSkgew0KCQkNCgkJCWNhc2UgJ25hbWUnOg0KCQkJCXJldHVybiAkdGhpcy0+R2V0TmFtZSgpOw0KCQkJCQ0KCQkJY2FzZSAndmFsdWUnOg0KCQkJCXJldHVybiAkdGhpcy0+R2V0VmFsdWUoc2VsZjo6VFlQRV9TVFJJTkcpOw0KCQkJCQkJCQkNCgkJCWNhc2UgJ3R5cGUnOg0KCQkJCXJldHVybiAkdGhpcy0+R2V0VHlwZSgpOw0KCQkJCQ0KCQkJY2FzZSAnYWxpYXMnOg0KCQkJCXJldHVybiAkdGhpcy0+R2V0QWxpYXMoKTsJDQoNCgkJCWRlZmF1bHQ6DQoJCQkJcmV0dXJuIG51bGw7DQoJCX0JDQoJfQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIGdldC9zZXQgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCQ0KCQ0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBHZXRJZCgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5pZDsNCgl9DQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gU2V0SWQoJHZhbHVlKSB7DQoJDQoJCSR0aGlzLT5pZCA9ICR2YWx1ZTsNCgl9CQ0KCQ0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBHZXROYW1lKCkgew0KCQ0KCQlyZXR1cm4gJHRoaXMtPm5hbWU7DQoJfQ0KDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIFNldE5hbWUoJHZhbHVlKSB7DQoJDQoJCSR0aGlzLT5uYW1lID0gJHZhbHVlOw0KCX0NCg0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBHZXRBbGlhcygpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5hbGlhczsNCgl9DQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gU2V0QWxpYXMoJHZhbHVlKSB7DQoJDQoJCSR0aGlzLT5hbGlhcyA9ICR2YWx1ZTsNCgl9CQ0KCQ0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBHZXREZXNjKCkgew0KCQ0KCQlyZXR1cm4gJHRoaXMtPmRlc2NyaXB0aW9uOw0KCX0NCg0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBTZXREZXNjKCR2YWx1ZSkgew0KCQ0KCQkkdGhpcy0+ZGVzY3JpcHRpb24gPSAkdmFsdWU7DQoJfQkJDQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldFR5cGUoKSB7DQoJDQoJCXJldHVybiAkdGhpcy0+dHlwZTsNCgl9DQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldEZyaWVuZGx5VHlwZSgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5mcmllbmRseXR5cGU7DQoJfQ0KDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIFNldEZyaWVuZGx5VHlwZSgkdmFsdWUpIHsNCgkNCgkJJHRoaXMtPmZyaWVuZGx5dHlwZSA9ICR2YWx1ZTsNCgl9DQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gSGFzVmFsdWUoKQ0KCXsNCgkJaWYoJHRoaXMtPkdldFZhbHVlKHNlbGY6OlRZUEVfU1RSSU5HKSAhPT0gJycpDQoJCQlyZXR1cm4gdHJ1ZTsNCgkJDQoJCXJldHVybiBmYWxzZTsNCgl9DQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldFZhbHVlKCR0eXBlID0gc2VsZjo6VFlQRV9PQkpFQ1QpIHsNCgkNCgkJJHR5cGUgPSBzdHJ0b2xvd2VyKCR0eXBlKTsNCgkNCgkJc3dpdGNoKCR0eXBlKSB7DQoJCQljYXNlIHNlbGY6OlRZUEVfU1RSSU5HOg0KCQkJCXJldHVybiAoc3RyaW5nKSR0aGlzLT52YWx1ZTsNCgkJCQ0KCQkJY2FzZSBzZWxmOjpUWVBFX0FSUkFZOg0KCQkJCXJldHVybiAoYXJyYXkpJHRoaXMtPnZhbHVlOw0KCQkJDQoJCQlkZWZhdWx0Og0KCQkJCXJldHVybiAkdGhpcy0+dmFsdWU7DQoJCX0NCgl9DQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gU2V0VmFsdWUoJHZhbHVlKSB7DQoJCQkJDQoJCSR0aGlzLT52YWx1ZSA9IG5ldyBMaXN0SXQyRmllbGRkZWZWYWx1ZSgkdmFsdWUpOw0KCX0NCgkNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gR2V0T3JpZ2luYXRvcigpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5vcmlnaW5hdG9yOw0KCX0NCg0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBJc0FjdGl2ZSgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5hY3RpdmUgPyB0cnVlIDogZmFsc2U7DQoJfQkNCgkNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gSXNEaXNhYmxlZCgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5kaXNhYmxlZCA/IHRydWUgOiBmYWxzZTsNCgl9CQkNCgkNCgkvLyBOZWVkZWQ/DQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldEFjdGl2ZSgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5hY3RpdmU7DQoJfQ0KDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldFBvc2l0aW9uKCkgew0KCQ0KCQlyZXR1cm4gJHRoaXMtPnBvc2l0aW9uOw0KCX0NCg0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBTZXRQb3NpdGlvbigkdmFsdWUpIHsNCgkNCgkJJHRoaXMtPnBvc2l0aW9uID0gJHZhbHVlOw0KCX0JDQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gR2V0UGF0aCgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5wYXRoOw0KCX0NCgkNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gR2V0VVJMUGF0aCgpIHsNCgkNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkNCgkJJHVybCA9IHN1YnN0cigkdGhpcy0+R2V0UGF0aCgpLCBzdHJsZW4oJGNvbmZpZ1sncm9vdF9wYXRoJ10pKTsNCgkJJHVybCA9IHN0cl9yZXBsYWNlKERJUkVDVE9SWV9TRVBBUkFUT1IsICcvJywgJHVybCk7DQoJCSR1cmwgPSAkY29uZmlnWydyb290X3VybCddIC4gJHVybDsNCgkJDQoJCXJldHVybiAkdXJsOw0KCX0JDQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gSXNSZXF1aXJlZCgpIHsNCgkNCgkJcmV0dXJuICR0aGlzLT5yZXF1aXJlZCA/IHRydWUgOiBmYWxzZTsNCgl9DQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldFJlcXVpcmVkKCkgew0KCQ0KCQlyZXR1cm4gJHRoaXMtPnJlcXVpcmVkOw0KCX0NCg0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBTZXRSZXF1aXJlZCgkdmFsdWUpIHsNCgkNCgkJJHRoaXMtPnJlcXVpcmVkID0gJHZhbHVlOw0KCX0JDQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gR2V0SXRlbUlkKCkgew0KCQ0KCQlyZXR1cm4gJHRoaXMtPml0ZW1faWQ7DQoJfQ0KDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIFNldEl0ZW1JZCgkdmFsdWUpIHsNCgkNCgkJJHRoaXMtPml0ZW1faWQgPSAkdmFsdWU7DQoJfQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIE9wdGlvbiBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJDQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIEdldE9wdGlvblZhbHVlKCRrZXksICRkZWZhdWx0ID0gJycpDQoJew0KCQlyZXR1cm4gaXNzZXQoJHRoaXMtPm9wdGlvbnNbJGtleV0pID8gJHRoaXMtPm9wdGlvbnNbJGtleV0gOiAkZGVmYXVsdDsNCgl9DQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIFNldE9wdGlvblZhbHVlKCRrZXksICR2YWx1ZSkNCgl7DQoJCS8vIFNob3VsZCB3ZSBpbml0IGFycmF5IG9yIG5vdD8NCgkJJHRoaXMtPm9wdGlvbnNbJGtleV0gPSAkdmFsdWU7DQoJfQkNCgkNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gTG9hZE9wdGlvblZhbHVlcygkbW9kdWxlX2FsaWFzLCAkZm9yY2VfZGIgPSBmYWxzZSkNCgl7DQoJCWlmKGlzX2FycmF5KCR0aGlzLT5vcHRpb25zKSAmJiAhJGZvcmNlX2RiKSANCgkJCXJldHVybiAkdGhpcy0+b3B0aW9uczsNCgkNCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsNCgkJJHRoaXMtPm9wdGlvbnMgPSBhcnJheSgpOw0KCQkNCgkJJHF1ZXJ5ID0gJ1NFTEVDVCBuYW1lLCB2YWx1ZSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kdWxlX2FsaWFzIC4gJ19maWVsZGRlZl9vcHRzIFdIRVJFIGZpZWxkZGVmX2lkID0gPyc7DQoJCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkdGhpcy0+R2V0SWQoKSkpOw0KCQkNCgkJd2hpbGUoJGRiciAmJiAkcm93ID0gJGRici0+RmV0Y2hSb3coKSkgew0KCQkNCgkJCSR0aGlzLT5TZXRPcHRpb25WYWx1ZSgkcm93WyduYW1lJ10sICRyb3dbJ3ZhbHVlJ10pOw0KCQl9DQoJDQoJCXJldHVybiAkdGhpcy0+b3B0aW9uczsJCQkNCgl9DQoNCglwdWJsaWMgZmluYWwgZnVuY3Rpb24gU2F2ZU9wdGlvblZhbHVlcygkbW9kdWxlX2FsaWFzKQ0KCXsNCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsNCgkJDQoJCS8vIERyb3AgYWxsIG9wdGlvbnMNCgkJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kdWxlX2FsaWFzIC4gJ19maWVsZGRlZl9vcHRzIFdIRVJFIGZpZWxkZGVmX2lkID0gPyc7DQoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkdGhpcy0+R2V0SWQoKSkpOwkJDQoJCQ0KCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7DQoJCQ0KCQkvLyBNYWtlIHF1ZXJ5IGFuZCBpbnNlcnQgbmV3IHZhbHVlcwkNCgkJZm9yZWFjaCgkdGhpcy0+b3B0aW9ucyBhcyAka2V5PT4kdmFsdWUpIHsNCgkJDQogICAgICAgICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2R1bGVfYWxpYXMgLiAnX2ZpZWxkZGVmX29wdHMgKGZpZWxkZGVmX2lkLCBuYW1lLCB2YWx1ZSkgVkFMVUVTICg/LCA/LCA/KSc7DQogICAgICAgICAgICAkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHRoaXMtPkdldElkKCksICRrZXksICR2YWx1ZSkpOw0KCQkJDQoJCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7DQoJCX0NCgkJDQoJCXJldHVybiB0cnVlOw0KCX0JCQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIE92ZXJ3cml0ZSBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkNCg0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gR2V0TW9kdWxlRGVwcygpDQoJew0KCQlyZXR1cm4gbnVsbDsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQ0KCXsNCgkJcmV0dXJuIG51bGw7DQoJfQkNCgkNCglwdWJsaWMgZnVuY3Rpb24gSXNVbmlxdWUoKQ0KCXsNCgkJcmV0dXJuIEZBTFNFOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gUmVuZGVyRm9yQWRtaW5MaXN0aW5nKCRpZCwgJHJldHVybmlkKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5HZXRWYWx1ZShzZWxmOjpUWVBFX1NUUklORyk7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBSZW5kZXJGb3JFZGl0KCRpZCwgJHJldHVybmlkKQ0KCXsNCgkJJGZuID0gJHRoaXMtPkdldFBhdGgoKSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnYWRtaW4uJyAuICR0aGlzLT5HZXRUeXBlKCkgLiAnLnRwbCc7DQoJCWlmKGlzX3JlYWRhYmxlKCRmbikpIHsNCg0KCQkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOw0KCQkJDQoJCQkvLyRzbWFydHktPmFzc2lnbignZmllbGRkZWYnLCAkdGhpcyk7DQoJCQkkc21hcnR5LT5hc3NpZ24oJ2FjdGlvbmlkJywgJGlkKTsNCgkJCSRzbWFydHktPmFzc2lnbigncmV0dXJuaWQnLCAkcmV0dXJuaWQpOw0KCQkNCgkJCXJldHVybiAkc21hcnR5LT5mZXRjaCgkZm4pOw0KCQl9DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBSZW5kZXJJbnB1dCgkaWQsICRyZXR1cm5pZCkNCgl7CQkNCgkJJGZuID0gJHRoaXMtPkdldFBhdGgoKSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnaW5wdXQuJyAuICR0aGlzLT5HZXRUeXBlKCkgLiAnLnRwbCc7DQoJCWlmKGlzX3JlYWRhYmxlKCRmbikpIHsNCgkNCgkJCSRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsNCgkJCQ0KCQkJJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsICRpZCk7DQoJCQkkc21hcnR5LT5hc3NpZ24oJ3JldHVybmlkJywgJHJldHVybmlkKTsJDQoJDQoJCQlyZXR1cm4gJHNtYXJ0eS0+ZmV0Y2goJGZuKTsNCgkJfQ0KCX0JDQoJDQoJcHVibGljIGZ1bmN0aW9uIFZhbGlkYXRlKCYkZXJyb3JzKSANCgl7DQoJCWlmKCR0aGlzLT5HZXRWYWx1ZShzZWxmOjpUWVBFX1NUUklORykgPT0gJycgJiYgJHRoaXMtPklzUmVxdWlyZWQoKSkgew0KCQ0KCQkJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ3JlcXVpcmVkX2ZpZWxkX2VtcHR5JykgLiAnICgnIC4gJHRoaXMtPkdldE5hbWUoKSAuICcpJzsNCgkJfQ0KCX0NCg0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIE1vZHVsZSBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCQ0KCXB1YmxpYyBmaW5hbCBmdW5jdGlvbiBHZXRNb2R1bGVJbnN0YW5jZSgkY2FsbGVyID0gZmFsc2UpDQoJew0KCQkkbW9kdWxlID0gJHRoaXMtPm9yaWdpbmF0b3I7DQoJDQoJCWlmKCRjYWxsZXIgJiYgIWlzX251bGwoJHRoaXMtPmNhbGxlcikpDQoJCQkkbW9kdWxlID0gJHRoaXMtPmNhbGxlcjsNCg0KCQlyZXR1cm4gY21zbXMoKS0+R2V0TW9kdWxlSW5zdGFuY2UoJG1vZHVsZSk7DQoJfQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIExhbmcgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JDQoJDQoJcHVibGljIGZpbmFsIGZ1bmN0aW9uIE1vZExhbmcoKQ0KCXsNCgkJJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgpOw0KCQlpZighaXNfb2JqZWN0KCRtb2QpKSANCgkJCXRocm93IG5ldyBMaXN0SXQyRXhjZXB0aW9uKCdDb3VsZCBub3QgcmV0cml2ZSBtb2R1bGUgaW5zdGFuY2UgZnJvbSBvcmlnaW5hdG9yIScpOyAvLyA8LSBTZW5kIG93biBtaXNzaW5nIGxhbmcgc3RyaW5nIGluc3RlYWQgb2YgZmFpbHVyZT8NCgkJDQoJCSRtb2QtPkxvYWRMYW5nTWV0aG9kcygpOw0KDQoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOw0KCQlhcnJheV91bnNoaWZ0KCRhcmdzLCcnKTsNCg0KCQkkYXJnc1swXSA9ICYkbW9kOw0KCQkNCgkJcmV0dXJuIGNhbGxfdXNlcl9mdW5jX2FycmF5KCdjbXNfbW9kdWxlX0xhbmcnLCAkYXJncyk7DQoJfQ0KCQ0KfSAvLyBlbmQgb2YgY2xhc3MNCg0KLyoqDQogKiBMaXN0SXQyIEZpZWxkZGVmIHZhbHVlDQogKg0KICogQHBhY2thZ2UgTGlzdEl0Mg0KICogQGF1dGhvciBUYXBpbyBM9nl0dHkNCiAqIEBzaW5jZSAxLjMuMQ0KICovDQpjbGFzcyBMaXN0SXQyRmllbGRkZWZWYWx1ZSBleHRlbmRzIEFycmF5T2JqZWN0DQp7IA0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIE1hZ2ljIG1ldGhvZHMNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIA0KDQogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRhcnJheSA9IGFycmF5KCkpIA0KCXsNCiAgICAgICAgZm9yZWFjaCgoYXJyYXkpJGFycmF5IGFzICRrZXkgPT4gJHZhbHVlKSB7DQoJCQ0KICAgICAgICAgICAgJHRoaXMtPm9mZnNldFNldCgka2V5LCAkdmFsdWUpOw0KICAgICAgICB9DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBfX3RvU3RyaW5nKCkNCgl7DQoJCXJldHVybiAoc3RyaW5nKWltcGxvZGUoTElTVElUMl9WQUxVRV9TRVBBUkFUT1IsIChhcnJheSkkdGhpcyk7DQoJfQ0KCQ0KfSAvLyBlbmQgb2YgY2xhc3MNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2FielddefOperations.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCmNsYXNzIExpc3RJdDJGaWVsZGRlZk9wZXJhdGlvbnMNCnsNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJIyBDb25zdGFudHMNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJDQoJY29uc3QgRklFTERERUZfUFJFRklYID0gJ2xpc3RpdDJmZCc7DQoNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJIyBBdHRyaWJ1dGVzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkNCgkNCglwcml2YXRlIHN0YXRpYyAkX2ZpZWxkZGVmczsNCgkNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJIyBNYWdpYyBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSANCg0KCXByaXZhdGUgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7fQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIFNjYW5uaW5nIG1ldGhvZHMNCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIA0KDQoJc3RhdGljIHB1YmxpYyBmaW5hbCBmdW5jdGlvbiBTY2FuTW9kdWxlcygpDQoJew0KCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7DQoJCQ0KCQkkZmllbGRkZWZzID0gc2VsZjo6TG9hZERhdGFiYXNlSW5mbyh0cnVlLCB0cnVlKTsNCgkJJGluc3RhbGxlZF9tb2R1bGVzID0gTW9kdWxlT3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCktPkdldEluc3RhbGxlZE1vZHVsZXMoKTsNCgkJDQoJCS8vIE1ha2Ugc3VyZSBMaXN0SXQyIGlzIHNjYW5uZWQgZmlyc3QNCgkJYXJyYXlfdW5zaGlmdCgkaW5zdGFsbGVkX21vZHVsZXMsIExJU1RJVDIpOw0KCQkkaW5zdGFsbGVkX21vZHVsZXMgPSBhcnJheV91bmlxdWUoJGluc3RhbGxlZF9tb2R1bGVzKTsNCgkJCQ0KCQkvLyBTY2FuIG1vZHVsZXMgZm9yIGZpZWxkZGVmcw0KCQkkc2Nhbm5lZF9maWVsZGRlZnMgPSBhcnJheSgpOwkJDQoJCWZvcmVhY2goJGluc3RhbGxlZF9tb2R1bGVzIGFzICRtb2RfbmFtZSkgew0KDQoJCQkkcmVzID0gYXJyYXkoKTsNCgkJCSRtb2RfZGlyID0gY21zX2pvaW5fcGF0aCgkY29uZmlnWydyb290X3BhdGgnXSwgJ21vZHVsZXMnLCAkbW9kX25hbWUpOwkJDQoJCQlzZWxmOjpTY2FuRGlyRm9yRmllbGRkZWZzKCRtb2RfZGlyLCAkcmVzKTsNCgkJCSRzY2FubmVkX2ZpZWxkZGVmc1skbW9kX25hbWVdID0gJHJlczsNCgkJfQkJDQoJCQ0KCQkvLyBSZWdpc3RlciBmaWVsZGRlZnMNCgkJZm9yZWFjaCgkc2Nhbm5lZF9maWVsZGRlZnMgYXMgJG1vZF9uYW1lPT4kbW9kX2RlZnMpIHsNCgkJDQoJCQlmb3JlYWNoKCRtb2RfZGVmcyBhcyAkdHlwZT0+JHBhdGgpIHsNCg0KCQkJCSRkaXNhYmxlZCA9IGZhbHNlOw0KCQkJDQoJCQkJLy8gQ2hlY2sgaWYgRmllbGRkZWYgaXMgbW92ZWQsIHVucmVnaXN0ZXIgaW4gdGhhdCBjYXNlLg0KCQkJCWlmKGlzc2V0KCRmaWVsZGRlZnNbJHR5cGVdKSAmJiAkcGF0aCAhPSAkZmllbGRkZWZzWyR0eXBlXS0+cGF0aCkgew0KCQkJCQ0KCQkJCQlzZWxmOjpVbnJlZ2lzdGVyKCR0eXBlKTsNCgkJCQkJdW5zZXQoJGZpZWxkZGVmc1skdHlwZV0pOwkJCQkJDQoJCQkJfQkJDQoJCQkNCgkJCQkvLyBDaGVjayBpZiBmaWVsZGRlZiBzaG91bGQgYmUgdG90YWxseSBkaXNhYmxlZCwgc2tpcCB3aG9sZSBjaGVjayBpZiBQSFAgdmVyc2lvbiBkb3Nlbid0IG1lZXQgcmVxdWlyZW1lbnRzLg0KCQkJCWlmICh2ZXJzaW9uX2NvbXBhcmUoUEhQX1ZFUlNJT04sICc1LjMuMCcpID49IDApIHsNCgkJCQkJDQoJCQkJCXJlcXVpcmVfb25jZSgkcGF0aCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiBzZWxmOjpGaWxlbmFtZUZyb21UeXBlKCR0eXBlKSk7DQoJCQkJCSRjbGFzcyA9IHNlbGY6OkNsYXNzbmFtZUZyb21UeXBlKCR0eXBlKTsNCgkJCQkJJG1vZHVsZV9kZXBzID0gQGV2YWwoInJldHVybiAkY2xhc3M6OkdldE1vZHVsZURlcHMoKTsiKTsgLy8gPC0gRXZhbCByZXF1aXJlZCBmb3Igbm90IHRvIGNyYXNoIHN5c3RlbSB3aXRoIFBIUCA1LjIueA0KCQkJCQkNCgkJCQkJaWYoaXNfYXJyYXkoJG1vZHVsZV9kZXBzKSkgew0KCQkJCQkNCgkJCQkJCWZvcmVhY2goKGFycmF5KSRtb2R1bGVfZGVwcyBhcyAkbW9kdWxlPT4kdmVyc2lvbikgew0KCQkJCQkJDQoJCQkJCQkJJG9iaiA9IGNtc21zKCktPkdldE1vZHVsZUluc3RhbmNlKCRtb2R1bGUsICR2ZXJzaW9uKTsgLy8gPC0gV2h5IGkgYW0gZ2V0dGluZyBub3QgaW5zdGFsbGVkIG1vZHVsZXMgYXQgdGhpcyBwb2ludD8gQ29yZSBidWc/DQoJCQkJCQkJaWYoIWlzX29iamVjdCgkb2JqKSB8fCAhaW5fYXJyYXkoJG1vZHVsZSwgJGluc3RhbGxlZF9tb2R1bGVzKSkgew0KCQkJCQkJCQkNCgkJCQkJCQkJc2VsZjo6U2V0RGlzYWJsZWRTdGF0dXMoJHR5cGUsIHRydWUpOw0KCQkJCQkJCQkkZGlzYWJsZWQgPSB0cnVlOw0KCQkJCQkJCQlicmVhazsgLy8gPC0gSWYgb25lIGRlcGVuZGVuY3kgZmFpbHMsIGFsbCBvZiBlbSBmYWlsLg0KCQkJCQkJCQkNCgkJCQkJCQl9IGVsc2VpZihpc3NldCgkZmllbGRkZWZzWyR0eXBlXSkgJiYgJGZpZWxkZGVmc1skdHlwZV0tPmRpc2FibGVkKSB7DQoJCQkJCQkJDQoJCQkJCQkJCXNlbGY6OlNldERpc2FibGVkU3RhdHVzKCR0eXBlLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJCQ0KCQkJCS8vIEZpZWxkZGVmIG5vdCBpbiBkYXRhYmFzZSwgcmVnaXN0ZXIgaXQuDQoJCQkJaWYoIWlzc2V0KCRmaWVsZGRlZnNbJHR5cGVdKSkgew0KCQkJCQkJCQkJCQ0KCQkJCQlzZWxmOjpSZWdpc3RlcigkbW9kX25hbWUsICR0eXBlLCAkcGF0aCwgJGRpc2FibGVkKTsNCgkJCQl9DQoJCQkJZWxzZSB7DQoJCQkJCQ0KCQkJCQl1bnNldCgkZmllbGRkZWZzWyR0eXBlXSk7DQoJCQkJfQkJCQkNCgkJCX0NCgkJfQ0KCQkJDQoJCS8vIFVucmVnaXN0ZXIgZmllbGRkZWZzDQoJCWZvcmVhY2goJGZpZWxkZGVmcyBhcyAkb25lZGVmKSB7DQoJCQ0KCQkJaWYoIWlzX3JlYWRhYmxlKCRvbmVkZWYtPnBhdGggLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gc2VsZjo6RmlsZW5hbWVGcm9tVHlwZSgkb25lZGVmLT50eXBlKSkgfHwgDQoJCQkJIWluX2FycmF5KCRvbmVkZWYtPm9yaWdpbmF0b3IsICRpbnN0YWxsZWRfbW9kdWxlcykpIHsNCgkJCQkNCgkJCQlzZWxmOjpVbnJlZ2lzdGVyKCRvbmVkZWYtPnR5cGUpOw0KCQkJfQ0KCQl9CQkNCgl9DQoJDQoJc3RhdGljIHByaXZhdGUgZmluYWwgZnVuY3Rpb24gU2NhbkRpckZvckZpZWxkZGVmcygkc3JjLCAmJHJlcykNCgl7DQoJCSRpbnZhbGlkID0gIGFycmF5KCcuJywgJy4uJyk7DQoJCSRkaXIgPSBvcGVuZGlyKCRzcmMpOyAvLyA8LSBUaHJvdyBleGNlcHRpb24gb24gZmFpbHVyZT8NCg0KCQl3aGlsZShmYWxzZSAhPT0gKCRmaWxlID0gcmVhZGRpcigkZGlyKSkpIHsNCgkJDQoJCQlpZiAoaW5fYXJyYXkoJGZpbGUsICRpbnZhbGlkKSkgY29udGludWU7IC8vIDwtIFNraXAgc3R1ZmYgd2UgbmV2ZXIgYWxsb3cgdG8gY29weQ0KDQoJCQlpZiAoaXNfZGlyKCRzcmMgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGUpKSB7IA0KCQ0KCQkJCXNlbGY6OlNjYW5EaXJGb3JGaWVsZGRlZnMoJHNyYyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZSwgJHJlcyk7IA0KCQkJfSANCgkJCWVsc2UgeyANCgkJCQkNCgkJCQlpZihzdGFydHN3aXRoKCRmaWxlLCBzZWxmOjpGSUVMRERFRl9QUkVGSVggLiAnLicpICYmIGVuZHN3aXRoKCRmaWxlLCAnLnBocCcpKSB7DQoJCQkJDQoJCQkJCSRmbiA9ICRzcmMgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGU7DQoJCQkJCWlmKGlzX3JlYWRhYmxlKCRmbikpIHsNCgkJCQkNCgkJCQkJCSRmaWxlID0gZXhwbG9kZSgnLicsICRmaWxlKTsNCgkJCQkJCSRyZXNbJGZpbGVbMV1dID0gJHNyYzsNCgkJCQkJfQkJCQkJDQoJCQkJfQ0KCQkJfSANCgkJfSANCgkJDQoJCWNsb3NlZGlyKCRkaXIpOyAJCQ0KCX0NCgkNCglzdGF0aWMgcHJpdmF0ZSBmaW5hbCBmdW5jdGlvbiBGaWxlbmFtZUZyb21UeXBlKCR0eXBlKQ0KCXsNCgkJcmV0dXJuIHNlbGY6OkZJRUxEREVGX1BSRUZJWCAuICcuJyAuICR0eXBlIC4gJy5waHAnOw0KCX0NCgkNCglzdGF0aWMgcHJpdmF0ZSBmaW5hbCBmdW5jdGlvbiBDbGFzc25hbWVGcm9tVHlwZSgkdHlwZSkNCgl7DQoJCXJldHVybiBzZWxmOjpGSUVMRERFRl9QUkVGSVggLiAnXycgLiAkdHlwZTsNCgl9CQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIExvYWQgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCQkNCgkNCglzdGF0aWMgZmluYWwgcHJpdmF0ZSBmdW5jdGlvbiBMb2FkRGF0YWJhc2VJbmZvKCRmb3JjZV9kYiA9IGZhbHNlLCAkbG9hZF9hbGwgPSBmYWxzZSkNCgl7DQoJCWlmKGlzX2FycmF5KHNlbGY6OiRfZmllbGRkZWZzKSAmJiAhJGZvcmNlX2RiKSANCgkJCXJldHVybiBzZWxmOjokX2ZpZWxkZGVmczsNCgkJDQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCXNlbGY6OiRfZmllbGRkZWZzID0gYXJyYXkoKTsNCgkNCgkJJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfbGlzdGl0Ml9maWVsZGRlZnMiOwkNCgkJaWYoISRsb2FkX2FsbCkNCgkJCSRxdWVyeSAuPSAiIFdIRVJFIGFjdGl2ZSA9IDEgQU5EIGRpc2FibGVkID0gMCI7DQoJCSRxdWVyeSAuPSAiIE9SREVSIEJZIHR5cGUiOw0KCQkNCgkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOw0KDQoJCXdoaWxlICgkZGJyICYmICRyb3cgPSAkZGJyLT5GZXRjaFJvdygpKSB7DQoJCQ0KCQkJJG9iaiA9IG5ldyBzdGRDbGFzcygpOw0KCQkNCgkJCSRvYmotPnR5cGUgPSAkcm93Wyd0eXBlJ107DQoJCQkkb2JqLT5vcmlnaW5hdG9yID0gJHJvd1snb3JpZ2luYXRvciddOw0KCQkJJG9iai0+YWN0aXZlID0gJHJvd1snYWN0aXZlJ10gPyB0cnVlIDogZmFsc2U7DQoJCQkkb2JqLT5kaXNhYmxlZCA9ICRyb3dbJ2Rpc2FibGVkJ10gPyB0cnVlIDogZmFsc2U7DQoJCQkkb2JqLT5wYXRoID0gJHJvd1sncGF0aCddOw0KCQkNCgkJCXNlbGY6OiRfZmllbGRkZWZzWyRyb3dbJ3R5cGUnXV0gPSAkb2JqOw0KCQl9DQoJDQoJCXJldHVybiBzZWxmOjokX2ZpZWxkZGVmczsJDQoJfQ0KDQoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBMb2FkRmllbGRkZWZCeVR5cGUoJHR5cGUsICRtb2QgPSBudWxsKQ0KCXsNCgkJJGZpZWxkZGVmcyA9IHNlbGY6OkxvYWREYXRhYmFzZUluZm8oKTsNCgkJDQoJCWlmKGlzc2V0KCRmaWVsZGRlZnNbJHR5cGVdKSkgew0KCQkNCgkJCWlmKCFjbXNfdXRpbHM6Om1vZHVsZV9hdmFpbGFibGUoJGZpZWxkZGVmc1skdHlwZV0tPm9yaWdpbmF0b3IpKQ0KCQkJCXJldHVybiBmYWxzZTsJCQ0KCQkNCgkJCSRmbiA9ICRmaWVsZGRlZnNbJHR5cGVdLT5wYXRoIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuIHNlbGY6OkZpbGVuYW1lRnJvbVR5cGUoJHR5cGUpOw0KCQkJaWYoaXNfcmVhZGFibGUoJGZuKSkgew0KCQkJDQoJCQkJcmVxdWlyZV9vbmNlKCRmbik7DQoJCQkJJGNsYXNzID0gc2VsZjo6Q2xhc3NuYW1lRnJvbVR5cGUoJHR5cGUpOw0KCQkJCSRvYmogPSBuZXcgJGNsYXNzKCRmaWVsZGRlZnNbJHR5cGVdLCAkbW9kKTsNCgkJCQkNCgkJCQlyZXR1cm4gJG9iajsNCgkJCX0NCgkJfQ0KCQkNCgkJcmV0dXJuIGZhbHNlOw0KCX0NCg0KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gR2V0RmllbGRkZWZUeXBlcygpDQoJew0KCQkkZmllbGRkZWZzID0gc2VsZjo6TG9hZERhdGFiYXNlSW5mbygpOw0KCQkNCgkJJHJlc3VsdCA9IGFycmF5KCk7DQoJCWZvcmVhY2goJGZpZWxkZGVmcyBhcyAkb25lZGVmKSB7DQoJCQ0KCQkJLy9pZighY21zX3V0aWxzOjptb2R1bGVfYXZhaWxhYmxlKCRvbmVkZWYtPm9yaWdpbmF0b3IpKQ0KCQkJCS8vY29udGludWU7CQkNCgkJDQoJCQkkb2JqID0gc2VsZjo6TG9hZEZpZWxkZGVmQnlUeXBlKCRvbmVkZWYtPnR5cGUpOw0KCQkJaWYoaXNfb2JqZWN0KCRvYmopKSB7DQoJCQkJDQoJCQkJJHJlc3VsdFskb2JqLT5HZXRGcmllbmRseXR5cGUoKV0gPSAkb2JqLT5HZXRUeXBlKCk7DQoJCQl9DQoJCX0NCgkJDQoJCWtzb3J0KCRyZXN1bHQpOw0KCQkNCgkJcmV0dXJuICRyZXN1bHQ7DQoJfQ0KCQ0KCXN0YXRpYyBmaW5hbCBmdW5jdGlvbiBHZXRSZWdpc3RlcmVkRmllbGRkZWZzKCRmb3JjZV9kYiA9IGZhbHNlLCAkbG9hZF9hbGwgPSBmYWxzZSkNCgl7DQoJCSRmaWVsZGRlZnMgPSBzZWxmOjpMb2FkRGF0YWJhc2VJbmZvKCRmb3JjZV9kYiwgJGxvYWRfYWxsKTsNCgkJDQoJCSRyZXN1bHQgPSBhcnJheSgpOw0KCQlmb3JlYWNoKCRmaWVsZGRlZnMgYXMgJG9uZWRlZikgew0KCQkNCgkJCS8vaWYoIWNtc191dGlsczo6bW9kdWxlX2F2YWlsYWJsZSgkb25lZGVmLT5vcmlnaW5hdG9yKSkNCgkJCQkvL2NvbnRpbnVlOw0KCQkNCgkJCSRvYmogPSBzZWxmOjpMb2FkRmllbGRkZWZCeVR5cGUoJG9uZWRlZi0+dHlwZSk7DQoJCQlpZihpc19vYmplY3QoJG9iaikpIHsNCgkJCQkNCgkJCQkkcmVzdWx0WyRvYmotPkdldEZyaWVuZGx5dHlwZSgpXSA9ICRvYmo7DQoJCQl9DQoJCX0NCgkJCQ0KCQlyZXR1cm4gJHJlc3VsdDsJDQoJfQ0KDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSMgTW9kdWxlIGhlbHAgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCQ0KCQ0KCXN0YXRpYyBmaW5hbCBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkNCgl7DQoJCSRmaWVsZGRlZnMgPSBzZWxmOjpMb2FkRGF0YWJhc2VJbmZvKCk7DQoJCQ0KCQkkc3RyaW5nID0gJyc7DQoJCWZvcmVhY2goJGZpZWxkZGVmcyBhcyAkb25lZGVmKSB7DQoJCQ0KCQkJJG9iaiA9IHNlbGY6OkxvYWRGaWVsZGRlZkJ5VHlwZSgkb25lZGVmLT50eXBlKTsNCgkJCWlmKGlzX29iamVjdCgkb2JqKSkgew0KCQkJCQ0KCQkJCSRmaWVsZF9oZWFkZXJfaHRtbCA9ICRvYmotPkdldEhlYWRlckhUTUwoKTsNCgkJCQkNCgkJCQlpZighaXNfbnVsbCgkZmllbGRfaGVhZGVyX2h0bWwpKQ0KCQkJCQkkc3RyaW5nIC49ICRmaWVsZF9oZWFkZXJfaHRtbDsNCgkJCQkJDQoJCQkJdW5zZXQoJG9iaik7DQoJCQl9DQoJCX0NCgkJCQ0KCQlyZXR1cm4gJHN0cmluZzsJDQoJfQ0KCQ0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkjIFRvZ2dsZSBtZXRob2RzDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJDQoJDQoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBUb2dnbGVBY3RpdmUoJHR5cGUpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQ0KCQkkcXVlcnkgID0gJ1NFTEVDVCBhY3RpdmUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9saXN0aXQyX2ZpZWxkZGVmcyBXSEVSRSB0eXBlPT8nOw0KCQkkYWN0aXZlID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LCBhcnJheSgkdHlwZSkpOw0KCQkJDQoJCSRhY3RpdmUgPSAkYWN0aXZlID8gZmFsc2UgOiB0cnVlOw0KCQ0KCQlzZWxmOjpTZXRBY3RpdmVTdGF0dXMoJHR5cGUsICRhY3RpdmUpOw0KCQkNCgkJcmV0dXJuICRhY3RpdmU7DQoJCQ0KCX0NCgkNCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIFNldEFjdGl2ZVN0YXR1cygkdHlwZSwgJHN0YXR1cykNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQkkcXVlcnkgID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9saXN0aXQyX2ZpZWxkZGVmcyBTRVQgYWN0aXZlPT8gV0hFUkUgdHlwZT0/JzsNCgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRzdGF0dXMsICR0eXBlKSk7DQoJCQ0KCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7DQoJCQ0KCX0NCg0KCS8vIE5vdCB1c2VkIGN1cnJlbnRseSBhbnl3aGVyZQ0KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gVG9nZ2xlRGlzYWJsZWQoJHR5cGUpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQ0KCQkkcXVlcnkgID0gJ1NFTEVDVCBkaXNhYmxlZCBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfZmllbGRkZWZzIFdIRVJFIHR5cGU9Pyc7DQoJCSRhY3RpdmUgPSAkZGItPkdldE9uZSgkcXVlcnksIGFycmF5KCR0eXBlKSk7DQoJCQkNCgkJJGFjdGl2ZSA9ICRhY3RpdmUgPyBmYWxzZSA6IHRydWU7DQoJDQoJCXNlbGY6OlNldERpc2FibGVkU3RhdHVzKCR0eXBlLCAkYWN0aXZlKTsNCgkJDQoJCXJldHVybiAkYWN0aXZlOw0KCQkNCgl9DQoJDQoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBTZXREaXNhYmxlZFN0YXR1cygkdHlwZSwgJHN0YXR1cykNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoJCQ0KCQkkcXVlcnkgID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9saXN0aXQyX2ZpZWxkZGVmcyBTRVQgZGlzYWJsZWQ9PyBXSEVSRSB0eXBlPT8nOw0KCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHN0YXR1cywgJHR5cGUpKTsNCgkJDQoJCWlmICghJHJlc3VsdCkgZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsNCgkJDQoJfQkJDQoJDQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSMgUmVnaXN0ZXIgbWV0aG9kcw0KCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCQkNCg0KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gUmVnaXN0ZXIoJG9yaWdpbmF0b3IsICR0eXBlLCAkcGF0aCwgJGRpc2FibGVkID0gMCwgJGFjdGl2ZSA9IDEpDQoJew0KCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOw0KCQkNCgkJJHF1ZXJ5ICA9ICdTRUxFQ1Qgb3JpZ2luYXRvciBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfZmllbGRkZWZzIFdIRVJFIHR5cGU9Pyc7DQoJCSRleGlzdHMgPSAkZGItPkdldE9uZSgkcXVlcnksIGFycmF5KCR0eXBlKSk7DQoJCQ0KCQlpZigkZXhpc3RzKQ0KCQkJcmV0dXJuIGZhbHNlOw0KCQkJCQ0KCQkkcXVlcnkgID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfZmllbGRkZWZzICh0eXBlLCBvcmlnaW5hdG9yLCBwYXRoLCBhY3RpdmUsIGRpc2FibGVkKSBWQUxVRVMgKD8sPyw/LD8sPyknOw0KCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHR5cGUsICRvcmlnaW5hdG9yLCAkcGF0aCwgJGFjdGl2ZSwgJGRpc2FibGVkKSk7DQoJCQ0KCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7DQoJCQ0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoJDQoJLy8gTWFrZSBicnV0ZSBmb3JjZSB0byB3aXBlIGl0IGZyb20gbW9kdWxlcw0KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gVW5yZWdpc3RlcigkdHlwZSkNCgl7DQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7DQoNCgkJJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfZmllbGRkZWZzIFdIRVJFIHR5cGUgPSA/JzsNCgkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCR0eXBlKSk7DQoJCQ0KCQlpZiAoISRyZXN1bHQpIGRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7DQoJCQ0KCQlyZXR1cm4gdHJ1ZTsJCQ0KCX0NCgkNCn0gLy8gZW5kIG9mIGNsYXNzDQoNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2HierarchyManager.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQySGllcmFyY2h5TWFuYWdlciB7CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAoKCXByaXZhdGUgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7fQoJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIEhpZXJhcmNoeSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkKCglzdGF0aWMgcHVibGljIGZpbmFsIGZ1bmN0aW9uICZGaWxsTm9kZVdpdGhDaGlsZChMaXN0SXQyICYkbW9kLCAkaWQsICRyZXR1cm5pZCwgJiRub2RlLCAmJG5vZGVsaXN0LCAmJGNvdW50LCAmJHByZXZkZXB0aCwgJG9yaWdkZXB0aCwgJiRwYXJhbXMpIAoJewkKCQkvLyBHcmFwIGN1cnJlbnQgaWRfaGllcmFyY2h5CgkJJGN1cnJlbnRfcGF0aCA9IGNtc191dGlsczo6Z2V0X2FwcF9kYXRhKCdsaXN0aXQyX2lkX2hpZXJhcmNoeScpOwoJCQoJCSRub2RlLT5kZXB0aCA9IGNvdW50KGV4cGxvZGUoJy4nLCAkbm9kZS0+aGllcmFyY2h5KSk7CgkJJG5vZGUtPnByZXZkZXB0aCA9ICRwcmV2ZGVwdGggLSAoJG9yaWdkZXB0aCAtIDEpOwoJCWlmICgkbm9kZS0+cHJldmRlcHRoID09IDApICRub2RlLT5wcmV2ZGVwdGggPSAxOwkKCQkkcHJldmRlcHRoID0gJG5vZGUtPmRlcHRoICsgKCRvcmlnZGVwdGggLSAxKTsKCQkKCQkkbGlua3BhcmFtcyA9IGFycmF5KCk7CgkJJGxpbmtwYXJhbXNbJ2NhdGVnb3J5J10gCQk9ICRub2RlLT5hbGlhczsJCQoJCSRsaW5rcGFyYW1zWydpZF9oaWVyYXJjaHknXSAJPSAkbm9kZS0+aWRfaGllcmFyY2h5OwoJCQoJCSRsaW5rcGFyYW1zID0gYXJyYXlfbWVyZ2UoJGxpbmtwYXJhbXMsICRwYXJhbXMpOwoJCQoJCSRub2RlLT51cmwgPSAkbW9kLT5DcmVhdGVQcmV0dHlMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICcnLCAkbGlua3BhcmFtcywgJycsIHRydWUsIGZhbHNlKTsKCQkkbm9kZS0+aW5kZXggPSAkY291bnQ7CgkJJG5vZGUtPm1lbnV0ZXh0ID0gJG5vZGUtPm5hbWU7IC8vIEFsaWFzIGZvciBuYW1lLCBtYWtlIGNvbXBhdGliaWxpdHkgd2l0aCBNZW51TWFuYWdlciBwb3NzaWJsZQoJCSRub2RlLT5wYXJlbnQgPSBmYWxzZTsJCgkJJGNvdW50Kys7CgkgCgkJaWYgKCRub2RlLT5pZF9oaWVyYXJjaHkgPT0gJGN1cnJlbnRfcGF0aCkgewoJCQkKCQkJJG5vZGUtPmN1cnJlbnQgPSB0cnVlOwoJCQkKCQl9IGVsc2UgewoJCSAgCgkJCSRub2RlLT5jdXJyZW50ID0gZmFsc2U7CgkJCQkKCQkJaWYgKHN0cnN0cigkY3VycmVudF9wYXRoLCAkbm9kZS0+aWRfaGllcmFyY2h5KSA9PSAkbm9kZS0+aWRfaGllcmFyY2h5KSB7CgkJCQkJCgkJCQkkbm9kZS0+cGFyZW50ID0gdHJ1ZTsKCQkJfQoJCX0JCQoJCQoJCSRub2RlbGlzdFtdID0gJG5vZGU7CgoJCXJldHVybiAkbm9kZTsKCX0KCQoJc3RhdGljIHB1YmxpYyBmaW5hbCBmdW5jdGlvbiAmRmlsbE5vZGVXaXRoSXRlbShMaXN0SXQyICYkbW9kLCAkaWQsICRyZXR1cm5pZCwgJiRub2RlLCAmJGl0ZW0sICYkbm9kZWxpc3QsICYkY291bnQsICYkcHJldmRlcHRoLCAkb3JpZ2RlcHRoLCAmJHBhcmFtcykgCgl7CQkKCQkvLyBHcmFwIGN1cnJlbnQgaXRlbQoJCSRjdXJyZW50X2l0ZW0gPSBjbXNfdXRpbHM6OmdldF9hcHBfZGF0YSgnbGlzdGl0Ml9pdGVtJyk7CgkKCQkkaXRlbS0+ZGVwdGggPSAkbm9kZS0+ZGVwdGggKyAxOwoJCSRpdGVtLT5wcmV2ZGVwdGggPSAkcHJldmRlcHRoIC0gKCRvcmlnZGVwdGggLSAxKTsKCQlpZiAoJGl0ZW0tPnByZXZkZXB0aCA9PSAwKSAkaXRlbS0+cHJldmRlcHRoID0gMTsJCgkJJHByZXZkZXB0aCA9ICRpdGVtLT5kZXB0aCArICgkb3JpZ2RlcHRoIC0gMSk7CgkKCQkkbGlua3BhcmFtcyA9IGFycmF5KCk7CgkJJGxpbmtwYXJhbXNbJ2l0ZW0nXSAJCQk9ICRpdGVtLT5hbGlhczsKCQkkbGlua3BhcmFtc1snY2F0ZWdvcnknXSAJCT0gJG5vZGUtPmFsaWFzOwkJCgkJJGxpbmtwYXJhbXNbJ2lkX2hpZXJhcmNoeSddIAk9ICRub2RlLT5pZF9oaWVyYXJjaHk7CgoJCSRpdGVtLT51cmwgPSAkbW9kLT5DcmVhdGVQcmV0dHlMaW5rKCRpZCwgJ2RldGFpbCcsICRyZXR1cm5pZCwgJycsICRsaW5rcGFyYW1zLCAnJywgdHJ1ZSwgZmFsc2UpOwoJCSRpdGVtLT5pbmRleCA9ICRjb3VudDsJCQoJCSRpdGVtLT5tZW51dGV4dCA9ICRpdGVtLT50aXRsZTsgLy8gQWxpYXMgZm9yIG5hbWUsIG1ha2UgY29tcGF0aWJpbGl0eSB3aXRoIE1lbnVNYW5hZ2VyIHBvc3NpYmxlCgkJJGl0ZW0tPnBhcmVudCA9IGZhbHNlOwkKCQkkY291bnQrKzsJCgoJCSRpdGVtLT5jdXJyZW50ID0gKCRpdGVtLT5hbGlhcyA9PSAkY3VycmVudF9pdGVtKSA/IHRydWUgOiBmYWxzZTsKCQkJCgkJJG5vZGVsaXN0W10gPSAkaXRlbTsKCQkKCQlyZXR1cm4gJGl0ZW07Cgl9CQoKCXN0YXRpYyBwdWJsaWMgZmluYWwgZnVuY3Rpb24gR2V0Q2hpbGROb2RlcyhMaXN0SXQyICYkbW9kLCAkaWQsICRyZXR1cm5pZCwgJiRpZF9saXN0LCAmJG5vZGVsaXN0LCAmJGNvdW50LCAmJHByZXZkZXB0aCwgJG9yaWdkZXB0aCwgJiRwYXJhbXMsICYkc2hvd3BhcmVudHMpIAoJewkKCQlpZiAoIWVtcHR5KCRpZF9saXN0KSkgewoJCQoJCQlmb3JlYWNoKCRpZF9saXN0IGFzICRvbmVfaWQpIHsKCgkJCQkkb25lY2hpbGQgPSAkbW9kLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2NhdGVnb3J5X2lkJywgJG9uZV9pZCk7CgkJCQoJCQkJaWYoIWlzX29iamVjdCgkb25lY2hpbGQpKQoJCQkJCWNvbnRpbnVlOwoJCQkJCQkKCQkJCS8vIEZpbGwgY2F0ZWdvcmllcwoJCQkJJG5ld25vZGUgPSBzZWxmOjpGaWxsTm9kZVdpdGhDaGlsZCgkbW9kLCAkaWQsICRyZXR1cm5pZCwgJG9uZWNoaWxkLCAkbm9kZWxpc3QsICRjb3VudCwgJHByZXZkZXB0aCwgJG9yaWdkZXB0aCwgJHBhcmFtcyk7CQkJCQkKCQkKCQkJCWlmICghKGlzc2V0KCRwYXJhbXNbJ251bWJlcl9vZl9sZXZlbHMnXSkgJiYgJG5ld25vZGUtPmRlcHRoID4gKCRwYXJhbXNbJ251bWJlcl9vZl9sZXZlbHMnXSkgLSAoJG9yaWdkZXB0aCkpICYmIAoJCQkJCQkoIWlzc2V0KCRwYXJhbXNbJ2NvbGxhcHNlJ10pIHx8IChjb3VudCgkc2hvd3BhcmVudHMpID4gMCAmJiBpbl9hcnJheSgkbmV3bm9kZS0+aWRfaGllcmFyY2h5LCAkc2hvd3BhcmVudHMpKSkpIHsKCQkJCQoJCQkJCXNlbGY6OkdldENoaWxkTm9kZXMoJG1vZCwgJGlkLCAkcmV0dXJuaWQsICRuZXdub2RlLT5jaGlsZHJlbiwgJG5vZGVsaXN0LCAkY291bnQsICRwcmV2ZGVwdGgsICRvcmlnZGVwdGgsICRwYXJhbXMsICRzaG93cGFyZW50cyk7CgkJCQkJCgkJCQkJLy8gRmlsbCBpdGVtcyBmb3IgY2F0ZWdvcnkKCQkJCQlpZighZW1wdHkoJG5ld25vZGUtPml0ZW1zKSAmJiBpc3NldCgkcGFyYW1zWydzaG93X2l0ZW1zJ10pKSB7CgkJCQkJCgkJCQkJCWZvcmVhY2goJG5ld25vZGUtPml0ZW1zIGFzICRpdGVtX2lkKSB7CgkJCQkJCQkKCQkJCQkJCSRpdGVtID0gJG1vZC0+TG9hZEl0ZW1CeUlkZW50aWZpZXIoJ2l0ZW1faWQnLCAkaXRlbV9pZCwgRkFMU0UpOwoJCQkJCQkJc2VsZjo6RmlsbE5vZGVXaXRoSXRlbSgkbW9kLCAkaWQsICRyZXR1cm5pZCwgJG5ld25vZGUsICRpdGVtLCAkbm9kZWxpc3QsICRjb3VudCwgJHByZXZkZXB0aCwgJG9yaWdkZXB0aCwgJHBhcmFtcyk7CQkJCQkJCgkJCQkJCX0KCQkJCQl9CQkJCQkKCQkJCX0KCQkJfQoJCX0KCX0gIAoJCn0gLy8gZW5kIG9mIGNsYXNz]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Item.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQySXRlbQp7CgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIEF0dHJpYnV0ZXMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCglwdWJsaWMgJGl0ZW1faWQgPSBudWxsOwoJcHVibGljICRhbGlhcyA9IG51bGw7CgkvL3B1YmxpYyAkY2F0ZWdvcnlfaWQgPSAtMTsKCXB1YmxpYyAkdGl0bGUgPSAnJzsKCXB1YmxpYyAkcG9zaXRpb24gPSAtMTsKCXB1YmxpYyAkYWN0aXZlID0gMTsKCXB1YmxpYyAkY3JlYXRlX3RpbWUgPSAnJzsKCXB1YmxpYyAkbW9kaWZpZWRfdGltZSA9ICcnOwoJcHVibGljICRzdGFydF90aW1lID0gJyc7CglwdWJsaWMgJGVuZF90aW1lID0gJyc7CgkKCXB1YmxpYyAka2V5MSA9IG51bGw7CglwdWJsaWMgJGtleTIgPSBudWxsOwoJcHVibGljICRrZXkzID0gbnVsbDsKCglwdWJsaWMgJGNhdGVnb3JpZXM7CglwdWJsaWMgJGZpZWxkZGVmczsKCXN0YXRpYyBwdWJsaWMgJG1hbmRhdG9yeSA9IGFycmF5KCd0aXRsZScpOwoJCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgCgl7CgkJJHRoaXMtPmZpZWxkZGVmcyA9IG5ldyBMaXN0SXQyRmllbGRkZWZBcnJheShhcnJheSgpKTsKCQkkdGhpcy0+Y2F0ZWdvcmllcyA9IGFycmF5KCk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBfX2dldCgka2V5KQoJewoJCWlmKGlzc2V0KCR0aGlzLT5maWVsZGRlZnNbJGtleV0pKSB7CgkJCgkJCXJldHVybiAkdGhpcy0+ZmllbGRkZWZzWyRrZXldLT5HZXRWYWx1ZSgpOwoJCX0KCX0KCQoJcHVibGljIGZ1bmN0aW9uIF9fc2V0KCRrZXksICR2YWx1ZSkKCXsKCQlpZihpc3NldCgkdGhpcy0+ZmllbGRkZWZzWyRrZXldKSkgewoJCQoJCQkkdGhpcy0+ZmllbGRkZWZzWyRrZXldLT5TZXRWYWx1ZSgkdmFsdWUpOwoJCX0KCQllbHNlIHsKCQkKCQkJJHRoaXMtPiRrZXkgPSAkdmFsdWU7CgkJfQoJfQkKCglwdWJsaWMgZnVuY3Rpb24gX190b1N0cmluZygpCgl7CgkJcmV0dXJuICIiOwoJfQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBVdGlsaXR5IG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkKCXB1YmxpYyBmdW5jdGlvbiBTZXRQcm9wZXJ0eVZhbHVlKCRwcm9wZXJ0eSwgJHZhbHVlKQoJewoJCWlmKHByb3BlcnR5X2V4aXN0cygkdGhpcywgJHByb3BlcnR5KSkgeyAgLy8gPC0gRm9yIGludGVybmFsIHByb3BlcnRpZXMKCQkKCQkJaWYoaXNfYXJyYXkoJHZhbHVlKSkgewoJCQkJJHRoaXMtPiRwcm9wZXJ0eSA9ICR2YWx1ZVswXTsKCQkJfQoJCQllbHNlIHsKCQkJCSR0aGlzLT4kcHJvcGVydHkgPSAkdmFsdWU7IAoJCQl9CgkJfSAKCQllbHNlaWYoaXNzZXQoJHRoaXMtPmZpZWxkZGVmc1skcHJvcGVydHldKSkgeyAvLyA8LSBGb3IgZmllbGQgZGVmaW5pdGlvbnMKCQkKCQkJJHRoaXMtPiRwcm9wZXJ0eSA9IChhcnJheSkkdmFsdWU7CgkJfQoJCWVsc2UgeyAvLyBBbnl0aGluZyBlbHNlLgoJCQoJCQkkdGhpcy0+JHByb3BlcnR5ID0gJHZhbHVlOyAKCQl9Cgl9CgkKfSAvLyBlbmQgb2YgY2xhc3MKCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2ItemOperations.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQySXRlbU9wZXJhdGlvbnMKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBWYXJpYWJsZXMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkKCXB1YmxpYyBzdGF0aWMgJGlkZW50aWZpZXJzID0gYXJyYXkoJ2l0ZW1faWQnLCAnYWxpYXMnLCAna2V5MScsICdrZXkyJywgJ2tleTMnKTsKCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIE1hZ2ljIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCQoJCglwcml2YXRlIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkge30KCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBEYXRhYmFzZSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQoJCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIFNhdmUoTGlzdEl0MiAmJG1vZCwgTGlzdEl0Mkl0ZW0gJiRvYmopCgl7CgkJRXZlbnRzOjpTZW5kRXZlbnQoJG1vZC0+R2V0TmFtZSgpLCAnUHJlSXRlbVNhdmUnLCBhcnJheSgnaXRlbV9vYmplY3QnID0+ICYkb2JqKSk7CgoJCS8vIENoZWNrIGFnYWluc3QgbWFuZGF0b3J5IGxpc3QKCQlmb3JlYWNoKExpc3RJdDJJdGVtOjokbWFuZGF0b3J5IGFzICRydWxlKSB7CgkJCgkJCWlmKCRvYmotPiRydWxlID09ICcnKQoJCQkJcmV0dXJuOwoJCX0KCQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkKCQkvLyR0aW1lID0gJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpOwoKCQkkc3FsX3N0YXJ0X3RpbWUgPSAkb2JqLT5zdGFydF90aW1lID8gZGF0ZSgnWS1tLWQnLCBzdHJ0b3RpbWUoJG9iai0+c3RhcnRfdGltZSkpIDogTlVMTDsKCQkkc3FsX2VuZF90aW1lID0gJG9iai0+ZW5kX3RpbWUgPyBkYXRlKCdZLW0tZCcsIHN0cnRvdGltZSgkb2JqLT5lbmRfdGltZSkpIDogTlVMTDsJCQoJCQoJCS8vIEVuc3VyZSB0aGF0IHdlIGhhdmUgYWxpYXMKCQlpZiAoJG9iai0+YWxpYXMgPT0gJycpewoJCQoJCQkkb2JqLT5hbGlhcyA9IG11bmdlX3N0cmluZ190b191cmwoJG9iai0+dGl0bGUsIHRydWUpOwoJCX0KCQkJCgkJLy8gRXhpc3RpbmcgaXRlbQkKCQlpZiAoJG9iai0+aXRlbV9pZCA+IDApIHsKCQkKCQkJLy8gdXBkYXRlIGl0ZW0KCQkJJHF1ZXJ5ICA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIAoJCQkJCVNFVCB0aXRsZSA9ID8sIGFsaWFzID0gPywgYWN0aXZlID0gPywgc3RhcnRfdGltZSA9ID8sIGVuZF90aW1lID0gPywgbW9kaWZpZWRfdGltZSA9IE5PVygpLCBrZXkxID0gPywga2V5MiA9ID8sIGtleTMgPSA/IAoJCQkJCVdIRVJFIGl0ZW1faWQgPSA/JzsKCQkJCQkJCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgKCQkJCSRvYmotPnRpdGxlLAoJCQkJJG9iai0+YWxpYXMsCgkJCQkvLyRvYmotPmNhdGVnb3J5X2lkLAoJCQkJJG9iai0+YWN0aXZlLAoJCQkJJHNxbF9zdGFydF90aW1lLAoJCQkJJHNxbF9lbmRfdGltZSwKCQkJCSRvYmotPmtleTEsCgkJCQkkb2JqLT5rZXkyLAoJCQkJJG9iai0+a2V5MywJCQoJCQkJJG9iai0+aXRlbV9pZAoJCQkpKTsKCQkJCgkJCWlmICghJHJlc3VsdCkKCQkJCWRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CQkKCQkKCQkvLyBOZXcgaXRlbQoJCX0gZWxzZSB7CgoJCQkvLyBmaW5kIHBvc2l0aW9uIGJlZm9yZSBpbnNlcnRpbmcgbmV3IGl0ZW0KCQkJJHF1ZXJ5ID0gJ1NFTEVDVCBNQVgocG9zaXRpb24pICsgMSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbSc7CgkJCSRwb3NpdGlvbiA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CgoJCQlpZiAoJHBvc2l0aW9uID09IG51bGwpCgkJCQkkcG9zaXRpb24gPSAxOwoJCQkKCQkJLy8gY2hlY2sgYWxpYXMgaXMgdW5pcXVlCgkJCSRxdWVyeSA9ICdTRUxFQ1QgQ09VTlQoYWxpYXMpIGFzIGFsaWFzIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIFdIRVJFIGFsaWFzIExJS0UgIicuJG9iai0+YWxpYXMuJyUiJzsKCQkJJGRicmVzdWx0ID0gJGRiLT5HZXRPbmUoJHF1ZXJ5KTsKCQkJCgkJCWlmKCRkYnJlc3VsdCA+IDApCgkJCQkkb2JqLT5hbGlhcyAuPSAnXycuKCRkYnJlc3VsdCsxKTsJCgkJCQoJCQkvLyBpbnNlcnQgaXRlbQoJCQkkcXVlcnkgID0gJ0lOU0VSVCBJTlRPICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbSAKCQkJCQkodGl0bGUsIGFsaWFzLCBwb3NpdGlvbiwgYWN0aXZlLCBjcmVhdGVfdGltZSwgbW9kaWZpZWRfdGltZSwgc3RhcnRfdGltZSwgZW5kX3RpbWUsIGtleTEsIGtleTIsIGtleTMpIAoJCQkJCVZBTFVFUyAoPywgPywgPywgPywgTk9XKCksIE5PVygpLCA/LCA/LCA/LCA/LCA/KSc7CgkJCQkJCgkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgKCQkJCSRvYmotPnRpdGxlLAoJCQkJJG9iai0+YWxpYXMsCgkJCQkvLyRvYmotPmNhdGVnb3J5X2lkLAoJCQkJJHBvc2l0aW9uLAoJCQkJJG9iai0+YWN0aXZlLAoJCQkJJHNxbF9zdGFydF90aW1lLAoJCQkJJHNxbF9lbmRfdGltZSwKCQkJCSRvYmotPmtleTEsCgkJCQkkb2JqLT5rZXkyLAoJCQkJJG9iai0+a2V5MwoJCQkpKTsKCQkJCgkJCWlmICghJHJlc3VsdCkKCQkJCWRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CgoJCQkvLyBwb3B1bGF0ZSAkaXRlbV9pZCBmb3IgbmV3bHkgaW5zZXJ0ZWQgaXRlbQoJCQkkb2JqLT5pdGVtX2lkID0gJGRiLT5JbnNlcnRfSUQoKTsJCQoJCX0KCQkKCQkvLyBVcGRhdGUgY2F0ZWdvcmllcwoJCSRxdWVyeSAgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgV0hFUkUgaXRlbV9pZCA9ID8nOwoJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb2JqLT5pdGVtX2lkKSk7CgoJCSRxdWVyeSAgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgKGl0ZW1faWQsIGNhdGVnb3J5X2lkKSBWQUxVRVMgKD8sPyknOwoJCQoJCWlmKGNvdW50KCRvYmotPmNhdGVnb3JpZXMpKSB7CgkJCgkJCWZvcmVhY2ggKCRvYmotPmNhdGVnb3JpZXMgYXMgJGNhdGVnb3J5X2lkKSB7CQkKCQkKCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb2JqLT5pdGVtX2lkLCAkY2F0ZWdvcnlfaWQpKTsKCgkJCQlpZiAoISRyZXN1bHQpCgkJCQkJZGllKCdGQVRBTCBTUUwgRVJST1I6ICcgLiAkZGItPkVycm9yTXNnKCkgLiAnPGJyLz5RVUVSWTogJyAuICRkYi0+c3FsKTsKCQkJfQoJCX0KCQkKCQkvLyBJbml0IHNlYXJjaAoJCSRzZWFyY2ggPSBjbXNtcygpLT5HZXRNb2R1bGVJbnN0YW5jZSgnU2VhcmNoJyk7CgkJaWYgKGlzX29iamVjdCgkc2VhcmNoKSkKCQkJJHNlYXJjaHRleHQgPSAkb2JqLT50aXRsZTsKCQkJCQkKCQkvLyBoYW5kbGUgaW5zZXJ0aW5nIGN1c3RvbSBmaWVsZHMgaW50byBkYXRhYmFzZQoJCWlmKGNvdW50KCRvYmotPmZpZWxkZGVmcykpIHsKCQkKCQkJZm9yZWFjaCAoJG9iai0+ZmllbGRkZWZzIGFzICRmaWVsZCkgewoJCQkJCgkJCQkkcXVlcnkgID0gJ0RFTEVURSBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGR2YWwgV0hFUkUgaXRlbV9pZCA9ID8gQU5EIGZpZWxkZGVmX2lkID0gPyc7CgkJCQkkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJG9iai0+aXRlbV9pZCwgJGZpZWxkLT5HZXRJZCgpKSk7CgkJCQkKCQkJCWlmICghJHJlc3VsdCkKCQkJCQlkaWUoJ0ZBVEFMIFNRTCBFUlJPUjogJyAuICRkYi0+RXJyb3JNc2coKSAuICc8YnIvPlFVRVJZOiAnIC4gJGRiLT5zcWwpOwoJCQkKCQkJCSRxdWVyeSAgPSAnSU5TRVJUIElOVE8gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCAoaXRlbV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlX2luZGV4LCB2YWx1ZSkgVkFMVUVTICg/LD8sPyw/KSc7CgkJCQkkaW5kZXggPSAwOwoJCQkJCgkJCQlmb3JlYWNoKCRmaWVsZC0+R2V0VmFsdWUoKSBhcyAkb25lX3ZhbCkgewoJCQkJCgkJCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRvYmotPml0ZW1faWQsICRmaWVsZC0+R2V0SWQoKSwgJGluZGV4LCAkb25lX3ZhbCkpOwoKCQkJCQlpZiAoISRyZXN1bHQpCgkJCQkJCWRpZSgnRkFUQUwgU1FMIEVSUk9SOiAnIC4gJGRiLT5FcnJvck1zZygpIC4gJzxici8+UVVFUlk6ICcgLiAkZGItPnNxbCk7CgoJCQkJCS8vIFBhcnQgb2Ygc2VhcmNoIHJlaW5kZXhpbmcKCQkJCQlpZihpc19vYmplY3QoJHNlYXJjaCkpCgkJCQkJCSRzZWFyY2h0ZXh0IC49ICRmaWVsZC0+R2V0VmFsdWUoInN0cmluZyIpLicgJzsKCQkJCQkJCgkJCQkJJGluZGV4Kys7CQkJCQkJCgkJCQl9CgkJCX0KCQl9CgkJCgkJLy8gUmVpbmRleCBzZWFyY2gKCQlpZihpc19vYmplY3QoJHNlYXJjaCkpCgkJCSRzZWFyY2gtPkFkZFdvcmRzKCRtb2QtPkdldE5hbWUoKSwgJG9iai0+aXRlbV9pZCwgJ3RpdGxlJywgJHNlYXJjaHRleHQpOwkJCgkJCgkJRXZlbnRzOjpTZW5kRXZlbnQoJG1vZC0+R2V0TmFtZSgpLCAnUG9zdEl0ZW1TYXZlJywgYXJyYXkoJ2l0ZW1fb2JqZWN0JyA9PiAmJG9iaikpOwoJCQoJfQoKCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlKExpc3RJdDIgJiRtb2QsIExpc3RJdDJJdGVtICYkb2JqKQoJewoJCUV2ZW50czo6U2VuZEV2ZW50KCRtb2QtPkdldE5hbWUoKSwgJ1ByZUl0ZW1EZWxldGUnLCBhcnJheSgnaXRlbV9vYmplY3QnID0+ICYkb2JqKSk7CQoJCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkKCQlpZiAoJG9iai0+aXRlbV9pZCA+IDApIHsKCgkJCS8vIGdldCBkZXRhaWxzCgkJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfaXRlbSBXSEVSRSBpdGVtX2lkID0gPyc7CgkJCSRyb3cgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRvYmotPml0ZW1faWQpKTsKCQkJCgkJCS8vIGRlbGV0ZSBpdGVtCgkJCSRxdWVyeSA9ICdERUxFVEUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0gV0hFUkUgaXRlbV9pZCA9ID8nOwoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb2JqLT5pdGVtX2lkKSk7CgkJCQoJCQkvLyBEZWxldGUgZnJvbSBpdGVtcwoJCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgV0hFUkUgaXRlbV9pZCA9ID8nOwoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkb2JqLT5pdGVtX2lkKSk7CQkJCQoJCQkKCQkJLy8gZGVsZXRlIGZpZWxkIHZhbHVlcwoJCQkkcXVlcnkgPSAnREVMRVRFIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCBXSEVSRSBpdGVtX2lkID0gPyc7CgkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRvYmotPml0ZW1faWQpKTsKCQkJCgkJCS8vIGNsZWFuIHVwIHNvcnQgb3JkZXIKCQkJJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0gU0VUIHBvc2l0aW9uID0gKHBvc2l0aW9uIC0gMSkgV0hFUkUgcG9zaXRpb24gPiA/JzsKCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJHJvd1sncG9zaXRpb24nXSkpOwoJCQkKCQkJRXZlbnRzOjpTZW5kRXZlbnQoJG1vZC0+R2V0TmFtZSgpLCAnUG9zdEl0ZW1EZWxldGUnLCBhcnJheSgnaXRlbV9vYmplY3QnID0+ICYkb2JqKSk7CgkJCQoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgoJCXJldHVybiBGQUxTRTsKCX0KCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIExvYWQoTGlzdEl0MiAmJG1vZCwgTGlzdEl0Mkl0ZW0gJiRvYmopCgl7CgkJRXZlbnRzOjpTZW5kRXZlbnQoJG1vZC0+R2V0TmFtZSgpLCAnUHJlSXRlbUxvYWQnLCBhcnJheSgnaXRlbV9vYmplY3QnID0+ICYkb2JqKSk7CQoJCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkkcm93ID0gZmFsc2U7CgkKCQlmb3JlYWNoKHNlbGY6OiRpZGVudGlmaWVycyBhcyAkaWRlbnRpZmllcikgewoJCQoJCQlpZighaXNfbnVsbCgkb2JqLT4kaWRlbnRpZmllcikpIHsKCQkJCQkJCQkKCQkJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICJfaXRlbQoJCQkJCQkJCQlXSEVSRSAkaWRlbnRpZmllciA9ID8gCgkJCQkJCQkJCUxJTUlUIDEiOwkJCQkJCQkJCQoJCQkJCQkJCQkKCQkJCSRyb3cgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRvYmotPiRpZGVudGlmaWVyKSk7CgkJCQkKCQkJCWlmKCRyb3cpCgkJCQkJYnJlYWs7CgkJCX0KCQl9CgoJCWlmICgkcm93KSB7CgoJCQkvLyBJdGVtIHRhYmxlCgkJCSRvYmotPml0ZW1faWQgICAgICAgIAkJPSAkcm93WydpdGVtX2lkJ107CgkJCSRvYmotPnRpdGxlICAgICAgICAJCQk9ICRyb3dbJ3RpdGxlJ107CgkJCSRvYmotPmFsaWFzCQkgCQkJPSAkcm93WydhbGlhcyddOwoJCQkkb2JqLT5wb3NpdGlvbiAgICAgICAJCT0gJHJvd1sncG9zaXRpb24nXTsJCQkKCQkJJG9iai0+YWN0aXZlICAgICAgIAkJCT0gJHJvd1snYWN0aXZlJ107CgkJCSRvYmotPmNyZWF0ZV90aW1lICAJCQk9ICRyb3dbJ2NyZWF0ZV90aW1lJ107CgkJCSRvYmotPm1vZGlmaWVkX3RpbWUgIAkJPSAkcm93Wydtb2RpZmllZF90aW1lJ107CgkJCSRvYmotPnN0YXJ0X3RpbWUgICAJCQk9ICRyb3dbJ3N0YXJ0X3RpbWUnXTsKCQkJJG9iai0+ZW5kX3RpbWUgICAgIAkJCT0gJHJvd1snZW5kX3RpbWUnXTsKCQkJCgkJCSRvYmotPmtleTEJCSAJCQk9ICRyb3dbJ2tleTEnXTsKCQkJJG9iai0+a2V5MgkJIAkJCT0gJHJvd1sna2V5MyddOwoJCQkkb2JqLT5rZXkzCQkgCQkJPSAkcm93WydrZXkzJ107CgkJCS8vJG9iai0+Y2F0ZWdvcnlfaWQgCQkJPSAkcm93WydjYXRlZ29yeV9pZCddOwoKCQkJLy8gQ2F0ZWdvcmllcwoJCQkkcXVlcnkgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgV0hFUkUgaXRlbV9pZCA9ID8nOwoJCQkkb2JqLT5jYXRlZ29yaWVzID0gJGRiLT5HZXRDb2woJHF1ZXJ5LCBhcnJheSgkb2JqLT5pdGVtX2lkKSk7CQkJCgoJCQkvLyBGaWVsZHMKCQkJaWYoY291bnQoJG9iai0+ZmllbGRkZWZzKSkgewoJCQkKCQkJCWZvcmVhY2ggKChhcnJheSkkb2JqLT5maWVsZGRlZnMgYXMgJGZpZWxkKSB7CgkJCQkKCQkJCQkkZmllbGQtPlNldEl0ZW1JZCgkb2JqLT5pdGVtX2lkKTsKCQoJCQkJCSRxdWVyeSA9ICJTRUxFQ1QgdmFsdWVfaW5kZXgsIHZhbHVlLCBkYXRhIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfIiAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gIl9maWVsZHZhbCBXSEVSRSBmaWVsZGRlZl9pZCA9ID8gQU5EIGl0ZW1faWQgPSA/IjsKCQkJCQkkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGZpZWxkLT5HZXRJZCgpLCAkb2JqLT5pdGVtX2lkKSk7CgkJCQkKCQkJCQkkaW5wdXRfYXJyID0gYXJyYXkoKTsKCQkJCQl3aGlsZSgkZGJyICYmICEkZGJyLT5FT0YpIHsKCQkJCQkKCQkJCQkJaWYoIWlzX251bGwoJGRici0+ZmllbGRzWydkYXRhJ10pKSB7CgkJCQkJCQoJCQkJCQkJJGZpZWxkLT5TZXRWYWx1ZSh1bnNlcmlhbGl6ZSgkZGJyLT5maWVsZHNbJ2RhdGEnXSkpOwoJCQkJCQkJY29udGludWUgMjsKCQkJCQkJfQoJCQkJCQoJCQkJCQkkaW5wdXRfYXJyWyRkYnItPmZpZWxkc1sndmFsdWVfaW5kZXgnXV0gPSAkZGJyLT5maWVsZHNbJ3ZhbHVlJ107CgkJCQkJCSRkYnItPk1vdmVOZXh0KCk7CgkJCQkJfQoJCQkJCQoJCQkJCWlmKCRkYnIpIAoJCQkJCQkkZGJyLT5DbG9zZSgpOwkJCQoJCQkJCQkKCQkJCQkkZmllbGQtPlNldFZhbHVlKCRpbnB1dF9hcnIpOyAvLyA8LSBBbHdheXMgc2V0IGFycmF5LCByZWdhcmRsZXNzIG9mIGNvbnRlbnRzLCBjaGVjayBpZiB0aGlzIGNhbiBmYWlsLgoJCQkJfQoJCQl9CgkJCgkJCUV2ZW50czo6U2VuZEV2ZW50KCRtb2QtPkdldE5hbWUoKSwgJ1Bvc3RJdGVtTG9hZCcsIGFycmF5KCdpdGVtX29iamVjdCcgPT4gJiRvYmopKTsKCQkKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQlyZXR1cm4gRkFMU0U7Cgl9CQoJCn0gLy8gZW5kIG9mIGNsYXNzCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2ItemQuery.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBMaXN0SXQySXRlbVF1ZXJ5IGV4dGVuZHMgTGlzdEl0MlF1ZXJ5CnsKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQXR0cmlidXRlcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKCXByaXZhdGUgc3RhdGljICRvcmRlcmJ5X21hcCA9IGFycmF5KAoJCS8vIGl0ZW1zCgkJJ2l0ZW1faWQnID0+ICdBLml0ZW1faWQnLCAnaXRlbV90aXRsZScgPT4gJ0EudGl0bGUnLCAnaXRlbV9wb3NpdGlvbicgPT4gJ0EucG9zaXRpb24nLCAnaXRlbV9jcmVhdGVkJyA9PiAnQS5jcmVhdGVfdGltZScsCgkJLy8gY2F0ZWdvcnkKCQknY2F0ZWdvcnlfaWQnID0+ICdCLmNhdGVnb3J5X2lkJywgJ2NhdGVnb3J5X25hbWUnID0+ICdCLmNhdGVnb3J5X25hbWUnLCAnY2F0ZWdvcnlfaGllcmFyY2h5JyA9PiAnQi5oaWVyYXJjaHknLCAnY2F0ZWdvcnlfcG9zaXRpb24nID0+ICdCLnBvc2l0aW9uJywgLy8gPC0gTm90IG5lY2NlcnkgdmFsaWQsIGlmIEpPSU4gdG8gY2F0ZWdvcnkgdGFibGUgaXMgbm90IG1hZGUsIGNoZWNrIHRoaXMuCgkJLy8gZnVuY3Rpb25zCgkJJ3JhbmQnPT4nUkFORCgpJwoJKTsJCgkKCS8vcHJvdGVjdGVkIHN0YXRpYyAkX2FsbG93ZWRfcGFyYW1zID0gYXJyYXkoJ29yZGVyYnknLCAnY2F0ZWdvcnknLCAnZXhjbHVkZV9jYXRlZ29yeScsICdzZWFyY2gnLCAnJywgJycsICcnLCAnJywgJycsICcnKTsKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNYWdpYyBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQkKCQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KExpc3RJdDIgJiRtb2QsICYkcGFyYW1zKQoJewoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJHBhcmFtcyk7Cgl9CgkJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIFF1ZXJ5IG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkKCXByaXZhdGUgZnVuY3Rpb24gX2FwcGVuZF9pbnRlcm5hbCgpCgl7CgkJaWYoaXNzZXQoJHRoaXMtPnF1ZXJ5KSkKCQkJcmV0dXJuOwoJCQkKCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCQkkbW9kID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCk7CgkJJHBhcmFtcyA9ICR0aGlzLT5HZXRQYXJhbXMoKTsJCQkKCQkJCgkJLyoKCQkgKiBPUkRFUiBCWQoJCSAqLwoJCWlmKGlzc2V0KCRwYXJhbXNbJ29yZGVyYnknXSkpIHsKCgkJCWxpc3QoJG9yZGVyX2NvbHMsICRjdXN0b21fY29scykgPSBzZWxmOjpleHBsb2RlX29yZGVyYnkoJHBhcmFtc1snb3JkZXJieSddLCBzZWxmOjokb3JkZXJieV9tYXApOyAvLyA8LSBBbHdheXMgcmV0dXJuaW5nIHR3byBhcnJheXMKCQkJCgkJCS8vIEhhbmRsZSBjdXN0b21fKiBvcmRlcmJ5IHN0dWZmCgkJCWlmKCFlbXB0eSgkY3VzdG9tX2NvbHMpKSB7CgoJCQkJZm9yZWFjaCgkY3VzdG9tX2NvbHMgYXMgJGluZGV4PT4kb2JqKSB7CgkJCQkKCQkJCQkkb25lZGVmID0gJG1vZC0+R2V0RmllbGREZWZCeUFsaWFzKCRvYmotPm5hbWUpOwoJCQkJCWlmKCRvbmVkZWYpIHsKCQkJCQkKCQkJCQkJJGFzID0gJ1ZBTCcgLiAkb25lZGVmLT5HZXRJZCgpOwoJCQkJCQkkdGhpcy0+QXBwZW5kVG8ocGFyZW50OjpWQVJUWVBFX0pPSU5TLCAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfJy4kbW9kLT5fR2V0TW9kdWxlQWxpYXMoKS4nX2ZpZWxkdmFsICcuJGFzLicgT04gQS5pdGVtX2lkID0gJy4kYXMuJy5pdGVtX2lkJyk7IAkJCQkJCQkKCQkJCQkJJHRoaXMtPkFwcGVuZFRvKHBhcmVudDo6VkFSVFlQRV9XSEVSRSwgJGFzLicuZmllbGRkZWZfaWQgPSAnLiRkYi0+cXN0cigkb25lZGVmLT5HZXRJZCgpKSk7CQkJCQkJCQkKCQkJCQkJJG9yZGVyX2NvbHNbJGluZGV4XSA9ICRhcy4nLnZhbHVlICcuJG9iai0+b3JkZXI7CgkJCQkJfQoJCQkJfQoJCQkJCgkJCQlrc29ydCgkb3JkZXJfY29scyk7CgkJCX0KCQkJCgkJCWlmKGNvdW50KCRvcmRlcl9jb2xzKSkgewoJCQkKCQkJCWZvcmVhY2goJG9yZGVyX2NvbHMgYXMgJG9uZSkgewoJCQkJCgkJCQkJJHRoaXMtPkFwcGVuZFRvKHBhcmVudDo6VkFSVFlQRV9PUkRFUkJZLCAkb25lKTsKCQkJCX0KCQkJfQoKCQl9IC8vIGVuZCBvZiBvcmRlcmJ5OwoKCQkvKgoJCSAqIElOQ0xVREUgSVRFTVMKCQkgKi8JCQkJCQoJCWlmKGlzc2V0KCRwYXJhbXNbJ2luY2x1ZGVfaXRlbXMnXSkgfHwgaXNzZXQoJHBhcmFtc1snZXhjbHVkZV9pdGVtcyddKSkgewoJCQoJCQlpZihpc3NldCgkcGFyYW1zWydpbmNsdWRlX2l0ZW1zJ10pKSB7CgkJCQoJCQkJJGFycmF5ID0gZXhwbG9kZSgnLCcsICRwYXJhbXNbJ2luY2x1ZGVfaXRlbXMnXSk7CgkJCQkkc3RyID0gIigiOwoJCQl9CgkJCQoJCQlpZihpc3NldCgkcGFyYW1zWydleGNsdWRlX2l0ZW1zJ10pKSB7CgkJCQoJCQkJJGFycmF5ID0gZXhwbG9kZSgnLCcsICRwYXJhbXNbJ2V4Y2x1ZGVfaXRlbXMnXSk7CgkJCQkkc3RyID0gIk5PVCAoIjsKCQkJfQoJCQkKCQkJJGNvdW50ID0gMDsJCQkKCQkJZm9yZWFjaCAoJGFycmF5IGFzICRhbGlhcykgeyAgCgoJCQkJaWYgKCRjb3VudCA+IDApCgkJCQkJJHN0ciAuPSAnIE9SICc7CgkJCQkJCQoJCQkJJHN0ciAuPSAgaXNfbnVtZXJpYygkYWxpYXMpID8gIiBBLml0ZW1faWQgPSAnIiAuICRhbGlhcyAuICInIiA6ICIgQS5hbGlhcyA9ICciIC4gJGFsaWFzIC4gIiciOwoJCQkJJGNvdW50Kys7CgkJCX0KCQkJJHN0ciAuPSAnKSc7CgkJCQoJCQkkdGhpcy0+QXBwZW5kVG8ocGFyZW50OjpWQVJUWVBFX1dIRVJFLCAkc3RyKTsKCgkJfSAvLyBlbmQgb2YgaW5jbHVkZSBpdGVtczsJCQoJCQoJCS8qCgkJICogQ0FURUdPUlkKCQkgKi8JCQkJCQoJCWlmKGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5J10pIHx8IGlzc2V0KCRwYXJhbXNbJ2V4Y2x1ZGVfY2F0ZWdvcnknXSkpIHsKCQkKCQkJaWYoaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkpIHsKCQkJCgkJCQkkYXJyYXkgPSBleHBsb2RlKCcsJywgJHBhcmFtc1snY2F0ZWdvcnknXSk7CgkJCQkkc3RyID0gIigiOwoJCQl9CgkJCQoJCQlpZihpc3NldCgkcGFyYW1zWydleGNsdWRlX2NhdGVnb3J5J10pKSB7CgkJCQoJCQkJJGFycmF5ID0gZXhwbG9kZSgnLCcsICRwYXJhbXNbJ2V4Y2x1ZGVfY2F0ZWdvcnknXSk7CgkJCQkkc3RyID0gIk5PVCAoIjsKCQkJfQoJCQkKCQkJJGNvdW50ID0gMDsKCQkJZm9yZWFjaCAoJGFycmF5IGFzICRjYXQpIHsgCgoJCQkJaWYgKCRjb3VudCA+IDApCgkJCQkJJHN0ciAuPSAnIE9SICc7CgkJCQkJCQoJCQkJJHN0ciAuPSAiIEIuY2F0ZWdvcnlfYWxpYXMgPSAnIiAuICRjYXQgLiAiJyI7CgkJCQkKCQkJCWlmIChpc3NldCgkcGFyYW1zWydzdWJjYXRlZ29yeSddKSAmJiAkcGFyYW1zWydzdWJjYXRlZ29yeSddKSB7CgkJCQkJCgkJCQkJJHF1ZXJ5ID0gIlNFTEVDVCBjYXRlZ29yeV9pZCBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICJfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfYWxpYXMgPSA/IjsKCQkJCQkkc3ViY2F0ID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LCBhcnJheSgkY2F0KSk7CgkJCQkJJHN0ciAuPSAiIE9SIEIucGFyZW50X2lkID0gJyIgLiAkc3ViY2F0IC4gIiciOwoJCQkJfQkKCQkJCQoJCQkJJGNvdW50Kys7CgkJCX0KCQkJJHN0ciAuPSAnKSc7CgkJCQoJCQkkdGhpcy0+QXBwZW5kVG8ocGFyZW50OjpWQVJUWVBFX1dIRVJFLCAkc3RyKTsKCgkJfSAvLyBlbmQgb2YgY2F0ZWdvcnk7CgkJCQoJCS8qCgkJICogU0VBUkNICgkJICovCQkJCQkJCQoJCWlmKGlzc2V0KCRwYXJhbXNbJ3NlYXJjaCddKSl7CQkKCgkJCSRzdHIgPSAkcGFyYW1zWydzZWFyY2gnXTsKCgkJCWlmKCFlbXB0eSgkc3RyKSkgewoKCQkJCSR0aGlzLT5BcHBlbmRUbyhwYXJlbnQ6OlZBUlRZUEVfV0hFUkUsICcoQS50aXRsZSBMSUtFID8gT1IgQS5pdGVtX2lkIElOIChTRUxFQ1QgQy5pdGVtX2lkIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCBDIFdIRVJFIEMudmFsdWUgTElLRSA/KSknKTsKCQkJCSR0aGlzLT5BcHBlbmRUbyhwYXJlbnQ6OlZBUlRZUEVfUVBBUkFNUywgJyUnLnRyaW0oJHN0cikuJyUnKTsKCQkJCSR0aGlzLT5BcHBlbmRUbyhwYXJlbnQ6OlZBUlRZUEVfUVBBUkFNUywgJyUnLnRyaW0oJHN0cikuJyUnKTsKCQkJfQoJCQkKCQl9IC8vIGVuZCBvZiBzZWFyY2gKCQkJCQoJCS8qCgkJICogU0VBUkNIXyoKCQkgKi8JCgkJJHNlYXJjaF9jbGF1c2UgPSAiQS5pdGVtX2lkIElOIAoJCQkJCQkJKFNFTEVDVCBDLml0ZW1faWQgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV8iIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAiX2ZpZWxkdmFsIEMsICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkbW9kLT5fR2V0TW9kdWxlQWxpYXMoKSAuICJfZmllbGRkZWYgRAoJCQkJCQkJCQlXSEVSRSBDLmZpZWxkZGVmX2lkID0gRC5maWVsZGRlZl9pZCAKCQkJCQkJCQkJQU5EIEQuYWxpYXMgPSA/IjsJCQkJCQkJCQkKCQkJCQkKCQkkZmllbGRkZWZzID0gJG1vZC0+R2V0RmllbGREZWZzKCk7CgkJZm9yZWFjaCgkZmllbGRkZWZzIGFzICRmaWVsZGRlZikgewoJCQoJCQlpZighZW1wdHkoJHBhcmFtc1snc2VhcmNoXycuJGZpZWxkZGVmLT5HZXRBbGlhcygpXSkpIHsKCQkJCgkJCQkkdGhpc3BhcmFtID0gJHBhcmFtc1snc2VhcmNoXycuJGZpZWxkZGVmLT5HZXRBbGlhcygpXTsKCQkJCSR0aGlzLT5BcHBlbmRUbyhwYXJlbnQ6OlZBUlRZUEVfUVBBUkFNUywgJGZpZWxkZGVmLT5HZXRBbGlhcygpKTsKCQkJCQoJCQkJJHRoaXNvciA9IGFycmF5KCk7CgkJCQlmb3JlYWNoKChhcnJheSkkdGhpc3BhcmFtIGFzICR0aGlzdmFsdWUpIHsKCQkJCQoJCQkJCSR0aGlzb3JbXSA9ICdDLnZhbHVlID0gPyc7CgkJCQkJJHRoaXMtPkFwcGVuZFRvKHBhcmVudDo6VkFSVFlQRV9RUEFSQU1TLCAkdGhpc3ZhbHVlKTsKCQkJCX0KCQkJCQoJCQkJJHRoaXMtPkFwcGVuZFRvKHBhcmVudDo6VkFSVFlQRV9XSEVSRSwgJHNlYXJjaF9jbGF1c2UgLiAiIEFORCAiIC4gaW1wbG9kZSgiIE9SICIsICR0aGlzb3IpIC4gIikiKTsJCgkJCX0KCQl9CQkKCQkKCQkvKgoJCSAqIFRJTUUgQ09OVFJPTAoJCSAqLwkKCQlpZighaXNzZXQoJHBhcmFtc1snc2hvd2FsbCddKSkKCQkJJHRoaXMtPkFwcGVuZFRvKHBhcmVudDo6VkFSVFlQRV9XSEVSRSwgJyhzdGFydF90aW1lIElTIE5VTEwgT1IgVElNRVNUQU1QRElGRihEQVksIENVUkRBVEUoKSwgc3RhcnRfdGltZSkgPD0gMCkgQU5EIChlbmRfdGltZSBJUyBOVUxMIE9SIFRJTUVTVEFNUERJRkYoREFZLCBlbmRfdGltZSwgQ1VSREFURSgpKSA8PSAwKScpOwoJCQoJfQoJCglwcm90ZWN0ZWQgZnVuY3Rpb24gX3F1ZXJ5KCkKCXsKCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCQkkbW9kID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCk7CgkJJHBhcmFtcyA9ICR0aGlzLT5HZXRQYXJhbXMoKTsKCQkJCgkJJG9yZGVyX2NvbHMgPSBhcnJheSgpOwoJCSRjdXN0b21fY29scyA9IGFycmF5KCk7CgkJJHRoaXMtPl9hcHBlbmRfaW50ZXJuYWwoKTsKCQkJCQkKCQkvLyBJbml0IHF1ZXJ5CgkJJHRoaXMtPnF1ZXJ5ID0gJ1NFTEVDVCBBLml0ZW1faWQgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJG1vZC0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0gQSAKCQkJCQlMRUZUIEpPSU4gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMgSUIgCgkJCQkJT04gQS5pdGVtX2lkID0gSUIuaXRlbV9pZCAKCQkJCQlMRUZUIEpPSU4gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICRtb2QtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBCIAoJCQkJCU9OIElCLmNhdGVnb3J5X2lkID0gQi5jYXRlZ29yeV9pZCAnOwoJCQkJCQkKCQkvLyBNZXJnZSBldmVyeXRoaW5nIHRvIG9uZSBxdWVyeQoJCWlmKGNvdW50KCR0aGlzLT5qb2lucykpCgkJCSR0aGlzLT5xdWVyeSAuPSBpbXBsb2RlKCcgJywgJHRoaXMtPmpvaW5zKTsKCQkKCQlpZihjb3VudCgkdGhpcy0+d2hlcmUpKQoJCQkkdGhpcy0+cXVlcnkgLj0gJyBXSEVSRSAnIC4gaW1wbG9kZSgnIEFORCAnLCAkdGhpcy0+d2hlcmUpOwoKCQkkdGhpcy0+cXVlcnkgLj0gJyBHUk9VUCBCWSBBLml0ZW1faWQgJzsJCQkKCQkJCgkJaWYoY291bnQoJHRoaXMtPm9yZGVyYnkpKSB7CgkJCgkJCSR0aGlzLT5xdWVyeSAuPSAnIE9SREVSIEJZICcgLiBpbXBsb2RlKCcsICcsICR0aGlzLT5vcmRlcmJ5KTsKCQl9IGVsc2UgewoJCQoJCQkkdGhpcy0+cXVlcnkgLj0gJyBPUkRFUiBCWSBBLnBvc2l0aW9uICcgLiAkbW9kLT5HZXRQcmVmZXJlbmNlKCdzb3J0b3JkZXInKTsKCQl9CgkJCQoJCS8vIEluaXQgcGFyYW1zIG5lY2Vzc2FyeSB0byBleGVjdXRpb24KCQkkcGFnZWNvdW50ID0gLTE7CgkJJHN0YXJ0ZWxlbWVudCA9IDA7CgkJJHBhZ2VudW1iZXIgPSAkdGhpcy0+R2V0UGFnZU51bWJlcigpOwoJCSRwYWdlbGltaXQgPSAkdGhpcy0+R2V0UGFnZUxpbWl0KCk7CgkJJHN0YXJ0ZWxlbWVudCA9ICgkcGFnZW51bWJlci0xKSAqICRwYWdlbGltaXQ7CgkJCgkJJHJlcyA9ICRkYi0+R2V0QXJyYXkoJHRoaXMtPnF1ZXJ5LCAkdGhpcy0+cXBhcmFtcyk7CQoJCSR0aGlzLT50b3RhbGNvdW50ID0gY291bnQoJHJlcyk7CgkJCQoJCWlmKGlzc2V0KCRwYXJhbXNbJ3N0YXJ0J10pKSB7CgoJCQkkdGhpcy0+dG90YWxjb3VudCAtPSAoaW50KSRwYXJhbXNbJ3N0YXJ0J107CgkJCSRzdGFydGVsZW1lbnQgPSAkc3RhcnRlbGVtZW50ICsgKGludCkkcGFyYW1zWydzdGFydCddOwoJCX0KCgkJJHRoaXMtPnBhZ2Vjb3VudCA9IChpbnQpKCR0aGlzLT50b3RhbGNvdW50IC8gJHBhZ2VsaW1pdCk7CgkJaWYoKCR0aGlzLT50b3RhbGNvdW50ICUgJHBhZ2VsaW1pdCkgIT0gMCkgJHRoaXMtPnBhZ2Vjb3VudCsrOwoKCQkkdGhpcy0+cmVzdWx0c2V0ID0gJGRiLT5TZWxlY3RMaW1pdCgkdGhpcy0+cXVlcnksICRwYWdlbGltaXQsICRzdGFydGVsZW1lbnQsICR0aGlzLT5xcGFyYW1zKTsKCX0JCgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQ2xhc3MgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJCgkKCXN0YXRpYyBwcml2YXRlIGZ1bmN0aW9uIGV4cGxvZGVfb3JkZXJieSgkcGFyYW0sICR2YWxpZF9jb2xzKXsKCQoJCSRvcmRlcl9jb2xzID0gYXJyYXkoKTsKCQkkY3VzdG9tX2NvbHMgPSBhcnJheSgpOwoJCSRpbmRleCA9IDA7CgkJCgkJZm9yZWFjaChleHBsb2RlKCcsJywgJHBhcmFtKSBhcyAkY29sKSB7CgkJCgkJCSRjb2wgPSB0cmltKCRjb2wpOwoJCQkkY29sX3BhcnRzID0gZXhwbG9kZSgnfCcsICRjb2wpOwoJCgkJCS8vIGNvbHVtbiBuYW1lCgkJCSRjb2xfbmFtZSA9ICRjb2xfcGFydHNbMF07CgkJCSRjb2xfb3JkZXIgPSAnQVNDJzsKCQoJCQkvLyBvcmRlciBjb2x1bW4gYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcKCQkJaWYoaXNzZXQoJGNvbF9wYXJ0c1sxXSkpIHsKCQkJCQoJCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX3BhcnRzWzFdLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX3BhcnRzWzFdIDogJ0FTQycpOwoJCQl9CgkKCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX29yZGVyLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX29yZGVyIDogJ0FTQycpOwoJCgkJCWlmKGlzc2V0KCR2YWxpZF9jb2xzWyRjb2xfbmFtZV0pKSB7CgkJCQoJCQkJJG9yZGVyX2NvbHNbJGluZGV4XSA9ICR2YWxpZF9jb2xzWyRjb2xfbmFtZV0gLiAnICcgLiAkY29sX29yZGVyOwoJCQl9IAoJCQllbHNlaWYgKHN0YXJ0c3dpdGgoJGNvbF9uYW1lLCAnY3VzdG9tXycpKSB7CgkJCQkKCQkJCSRjdXN0b21fbmFtZSA9IHN1YnN0cigkY29sX25hbWUsIDcpOwoJCQkJJG9iaiA9IG5ldyBzdGRDbGFzczsKCQkJCSRvYmotPm5hbWUgPSAkY3VzdG9tX25hbWU7CgkJCQkkb2JqLT5vcmRlciA9ICRjb2xfb3JkZXI7CgkJCQkKCQkJCSRjdXN0b21fY29sc1skaW5kZXhdID0gJG9iajsKCQkJfQoJCQkKCQkJJGluZGV4Kys7CgkJfQoJCQkKCQlyZXR1cm4gYXJyYXkoJG9yZGVyX2NvbHMsICRjdXN0b21fY29scyk7Cgl9CQkKCQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4J]]></data>
	</file>
	<file>
	  <filename>/lib/class.ListIt2Query.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgphYnN0cmFjdCBjbGFzcyBMaXN0SXQyUXVlcnkKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBDb25zdGFudHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCQoJY29uc3QgVkFSVFlQRV9KT0lOUyAJPSAnam9pbnMnOwoJY29uc3QgVkFSVFlQRV9XSEVSRSAJPSAnd2hlcmUnOwoJY29uc3QgVkFSVFlQRV9PUkRFUkJZIAk9ICdvcmRlcmJ5JzsKCWNvbnN0IFZBUlRZUEVfUVBBUkFNUyAJPSAncXBhcmFtcyc7CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBdHRyaWJ1dGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJcHJpdmF0ZSAkX3BhcmFtczsKCXByaXZhdGUgJF9pbnN0YW5jZTsKCXByaXZhdGUgJF9kYjsKCglwcm90ZWN0ZWQgJGpvaW5zOwoJcHJvdGVjdGVkICR3aGVyZTsKCXByb3RlY3RlZCAkb3JkZXJieTsKCXByb3RlY3RlZCAkcXBhcmFtczsKCglwcm90ZWN0ZWQgJHF1ZXJ5OyAvLyBOb3Qgc2V0CQoJcHJvdGVjdGVkICRyZXN1bHRzZXQ7IC8vIE5vdCBzZXQKCXByb3RlY3RlZCAkdG90YWxjb3VudDsgLy8gTm90IHNldAoJcHJvdGVjdGVkICRwYWdlY291bnQ7IC8vIE5vdCBzZXQKCQoJLy9wcm90ZWN0ZWQgc3RhdGljICRfYWxsb3dlZF9wYXJhbXMgPSBhcnJheSgpOwkKCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIE1hZ2ljIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCQoJCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoTGlzdEl0MiAmJG1vZCwgJiRwYXJhbXMpCgl7CgkJJHRoaXMtPl9kYiAJCQk9IGNtc21zKCktPkdldERiKCk7CQoJCSR0aGlzLT5faW5zdGFuY2UgCT0gJG1vZDsKCQkkdGhpcy0+X3BhcmFtcyAJCT0gJHBhcmFtczsKCQkKCQkkdGhpcy0+am9pbnMgCQk9IGFycmF5KCk7CgkJJHRoaXMtPndoZXJlIAkJPSBhcnJheSgpOwoJCSR0aGlzLT5vcmRlcmJ5IAkJPSBhcnJheSgpOwoJCSR0aGlzLT5xcGFyYW1zIAkJPSBhcnJheSgpOwoJfQoJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIEFic3RyYWN0IG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkKCWFic3RyYWN0IHByb3RlY3RlZCBmdW5jdGlvbiBfcXVlcnkoKTsKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBVdGlsaXR5IG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCgkJCglwcm90ZWN0ZWQgZnVuY3Rpb24gR2V0RGIoKQoJewoJCXJldHVybiAkdGhpcy0+X2RiOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gR2V0TW9kdWxlSW5zdGFuY2UoKQoJewoJCXJldHVybiAkdGhpcy0+X2luc3RhbmNlOwoJfQkKCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhcmFtcygpCgl7CgkJcmV0dXJuICR0aGlzLT5fcGFyYW1zOwoJfQkKCQoJcHVibGljIGZ1bmN0aW9uIFNldFBhcmFtKCRrZXksICR2YWx1ZSkKCXsKCQkkdGhpcy0+X3BhcmFtc1ska2V5XSA9ICR2YWx1ZTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhcmFtKCRrZXkpCgl7CgkJcmV0dXJuIGlzc2V0KCR0aGlzLT5fcGFyYW1zWyRrZXldKSA/ICR0aGlzLT5fcGFyYW1zWyRrZXldIDogbnVsbDsKCX0KCQkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgRGF0YWJhc2UgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCQoJcHVibGljIGZ1bmN0aW9uIEFwcGVuZFRvKCR2YXIsICR2YWx1ZSkKCXsKCQkkdmFyID0gc3RydG9sb3dlcigkdmFyKTsKCQkkdmFsdWUgPSAoc3RyaW5nKSR2YWx1ZTsKCQoJCXN3aXRjaCgkdmFyKSB7CgkJCgkJCWNhc2Ugc2VsZjo6VkFSVFlQRV9KT0lOUzoKCQkJCSR0aGlzLT5qb2luc1tdID0gJHZhbHVlOwoJCQkJYnJlYWs7CgkJCQkKCQkJY2FzZSBzZWxmOjpWQVJUWVBFX1dIRVJFOgoJCQkJJHRoaXMtPndoZXJlW10gPSAkdmFsdWU7CgkJCQlicmVhazsKCgkJCWNhc2Ugc2VsZjo6VkFSVFlQRV9PUkRFUkJZOgoJCQkJJHRoaXMtPm9yZGVyYnlbXSA9ICR2YWx1ZTsKCQkJCWJyZWFrOwoKCQkJY2FzZSBzZWxmOjpWQVJUWVBFX1FQQVJBTVM6CgkJCQkkdGhpcy0+cXBhcmFtc1tdID0gJHZhbHVlOwoJCQkJYnJlYWs7CQkJCQoJCQoJCQlkZWZhdWx0OgoJCQkJdGhyb3cgbmV3IExpc3RJdDJFeGNlcHRpb24oJ0F0dGVtcHQgdG8gc2V0IHVuaWRlbnRpZmllZCBWQVJUWVBFLicpOwoJCX0KCQkKCQlyZXR1cm4gdHJ1ZTsKCX0KCglwdWJsaWMgZnVuY3Rpb24gRXhlY3V0ZSgkZm9yY2VfZXhlY3V0ZSA9IGZhbHNlKQoJewoJCWlmKCFpc3NldCgkdGhpcy0+cmVzdWx0c2V0KSB8fCAkZm9yY2VfZXhlY3V0ZSkKCQkJJHRoaXMtPl9xdWVyeSgpOwoJCQkKCQlyZXR1cm4gJHRoaXMtPnJlc3VsdHNldDsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIFRvdGFsQ291bnQoKQoJewoJCWlmKGlzc2V0KCR0aGlzLT50b3RhbGNvdW50KSkKCQkJcmV0dXJuICR0aGlzLT50b3RhbGNvdW50OwoJCQkKCQlyZXR1cm4gbnVsbDsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhZ2VDb3VudCgpCgl7CgkJaWYoaXNzZXQoJHRoaXMtPnBhZ2Vjb3VudCkpCgkJCXJldHVybiAkdGhpcy0+cGFnZWNvdW50OwoJCQkKCQlyZXR1cm4gbnVsbDsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIEdldFBhZ2VMaW1pdCgpCgl7CgkJaWYoaXNzZXQoJHRoaXMtPl9wYXJhbXNbJ3BhZ2VsaW1pdCddKSkgCgkJCXJldHVybiAoaW50KSR0aGlzLT5fcGFyYW1zWydwYWdlbGltaXQnXTsKCQkJCgkJcmV0dXJuIDEwMDAwMDsJCgl9CQoJCglwdWJsaWMgZnVuY3Rpb24gR2V0UGFnZU51bWJlcigpCgl7CgkJaWYoaXNzZXQoJHRoaXMtPl9wYXJhbXNbJ3BhZ2VudW1iZXInXSkpIAoJCQlyZXR1cm4gKGludCkkdGhpcy0+X3BhcmFtc1sncGFnZW51bWJlciddOwoJCQkKCQlpZihpc3NldCgkdGhpcy0+X3BhcmFtc1sncGFnZSddKSkgCgkJCXJldHVybiAoaW50KSR0aGlzLT5fcGFyYW1zWydwYWdlJ107CQkJCgkJCQoJCXJldHVybiAxOwkKCX0JCgp9IC8vIGVuZCBvZiBjbGFzcwoKPz4J]]></data>
	</file>
	<file>
	  <filename>/lib/class.listit2_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKY2xhc3MgbGlzdGl0Ml91dGlscyB7CgoJcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgoJc3RhdGljIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiAmYXJyYXlfdG9fb2JqZWN0KCRhcnJheSkKCXsKCQkkb2JqID0gbmV3IFN0ZENsYXNzOwoJCWZvcmVhY2goJGFycmF5IGFzICRrZXk9PiR2YWx1ZSkgewoJCQoJCQkkb2JqLT4ka2V5ID0gJHZhbHVlOwoJCX0KCQkKCQlyZXR1cm4gJG9iajsKCX0KCSAgCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIGNsZWFuX3BhcmFtcygmJHBhcmFtcywgJGxpc3QsICRhY2Nlc3NsaXN0ID0gZmFsc2UpIAoJewoJCgkJZm9yZWFjaCgkcGFyYW1zIGFzICRrZXk9PiR2YWx1ZSkgewoJCQoJCQlpZigkYWNjZXNzbGlzdCkgewoKCQkJCWlmKCFpbl9hcnJheSgka2V5LCAoYXJyYXkpJGxpc3QpKSB7CgkJCQkKCQkJCQl1bnNldCgkcGFyYW1zWyRrZXldKTsJCgkJCQl9CQkJCgkJCQoJCQl9IGVsc2UgewoJCQoJCQkJaWYoaW5fYXJyYXkoJGtleSwgKGFycmF5KSRsaXN0KSkgewoJCQkJCgkJCQkJdW5zZXQoJHBhcmFtc1ska2V5XSk7CQoJCQkJfQoJCQkKCQkJfQoJCX0JCgl9CgkKCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gaW5pdF92YXIoJHN0cmluZywgJHBhcmFtcywgJGRlZmF1bHQgPSAnJykgCgl7CgkJJHZhciA9ICRkZWZhdWx0OwoKCQlpZihpc3NldCgkcGFyYW1zWyRzdHJpbmddKSkKCQkJJHZhciA9ICRwYXJhbXNbJHN0cmluZ107CgkJCQkJCQoJCXJldHVybiAkdmFyOwoJfQkKCQoJLyoqCgkgKiBHZW5lcmF0ZSBhbGlhcwoJICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgc3RyaW5nIHRoYXQgdGhlIGFsaWFzIHdpbGwgYmUgZ2VuZXJhdGVkIGZyb20KCSAqIEByZXR1cm4gc3RyaW5nIFJldHVybnMgdGhlIGFsaWFzCgkgKi8KCXN0YXRpYyBmaW5hbCBwdWJsaWMgZnVuY3Rpb24gZ2VuZXJhdGVfYWxpYXMoJG5hbWUpCgl7CgkJaWYgKCFpc19zdHJpbmcoJG5hbWUpKQoJCQlyZXR1cm47CgkKCQkkYWxpYXMgPSAkbmFtZTsKCQoJCS8vIHJlcGxhY2UgbXVsdGlwbGUgc3BhY2VzIHdpdGggc2luZ2xlIHVuZGVyc2NvcmUKCQkkYWxpYXMgPSBwcmVnX3JlcGxhY2UoJy8gKy8nLCAnXycsICRhbGlhcyk7CgkKCQkvLyBsZWF2ZSBhbHBoYWJldGljIGNoYXJhY3RlcnMgYW5kIHVuc2NvcmVzLAoJCS8vIHJlcGxhY2UgZXZlcnl0aGluZyBlbHNlIHdpdGggYW4gdW5kZXJzY29yZQoJCSRhbGlhcyA9IHByZWdfcmVwbGFjZSgnL1teYS16QS1aX10vJywgJ18nLCAkYWxpYXMpOwoJCgkJLy8gcmVwbGFjZSBtdWx0aXBsZSB1bmRlcnNjb3JlcyB3aXRoIHNpbmdsZSB1bmRlcnNjb3JlCgkJJGFsaWFzID0gcHJlZ19yZXBsYWNlKCcvXysvJywgJ18nLCAkYWxpYXMpOwoJCgkJLy8gY29udmVydCB0byBsb3dlcmNhc2UKCQkkYWxpYXMgPSBzdHJ0b2xvd2VyKCRhbGlhcyk7CgkKCQkvLyByZW1vdmUgdW5kZXJzY29yZSBmcm9tIHN0YXJ0IGFuZCBlbmQKCQkkYWxpYXMgPSB0cmltKCRhbGlhcywgJ18nKTsKCQoJCXJldHVybiAkYWxpYXM7Cgl9CQoJCgkvKioKCSAqIElzIHZhbGlkIGFsaWFzCgkgKiBAcGFyYW0gc3RyaW5nICRhbGlhcwoJICogQHJldHVybiBib29sIFJldHVybnMgdHJ1ZSBpZiBzdHJpbmcgaW4gcXVlc3Rpb24gaXMgYSB2YWxpZCBhbGlhcywgb3IKCSAqIGZhbHNlIG90aGVyd2lzZQoJICovCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIGlzX3ZhbGlkX2FsaWFzKCRhbGlhcykKCXsKCQlpZiAoIWlzX3N0cmluZygkYWxpYXMpKQoJCQlyZXR1cm47CgkKCQkvLyBjaGVjayBhbGlhcwoJCS8vIGh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vbGFuZ3VhZ2UudmFyaWFibGVzLmJhc2ljcy5waHAKCQlpZiAocHJlZ19tYXRjaCgnL15bYS16QS1aX1x4N2YtXHhmZl1bYS16QS1aMC05X1x4N2YtXHhmZl0qJC8nLCAkYWxpYXMpKSB7CgkJCXJldHVybiB0cnVlOwoJCX0gZWxzZSB7CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9CgoJLyoqCgkgKiBIYXMgUHJlZml4CgkgKiBAcGFyYW0gc3RyaW5nICRzdHJpbmcgVGhlIHN0cmluZyBpbiBxdWVzdGlvbgoJICogQHBhcmFtIGFycmF5ICRwcmVmaXggQXJyYXkgb2YgcHJlZml4ZXMgdG8gbWF0Y2ggYWdhaW5zdAoJICogQHJldHVybiBib29sIFJldHVybnMgdHJ1ZSBpZiBwcmVmaXggaXMgZm91bmQsIG9yIGZhbHNlIG90aGVyd2lzZQoJICovCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIGhhc19wcmVmaXgoJHN0cmluZywgJHByZWZpeGVzKQoJewoJCWlmICghaXNfc3RyaW5nKCRzdHJpbmcpKQoJCQlyZXR1cm47CgkJaWYgKCFpc19hcnJheSgkcHJlZml4ZXMpKQoJCQlyZXR1cm47CgkKCQlmb3JlYWNoICgkcHJlZml4ZXMgYXMgJHByZWZpeCkKCQl7CgkJCWlmIChzdHJwb3MoJHN0cmluZywgJHByZWZpeCkgPT09IDApCgkJCXsKCQkJCXJldHVybiB0cnVlOwoJCQl9CgkJfQoJCgkJcmV0dXJuIGZhbHNlOwoJfQoJCglzdGF0aWMgZmluYWwgcHVibGljIGZ1bmN0aW9uIGV4cGxvZGVfb3JkZXJieSgkcGFyYW0sICR2YWxpZF9jb2xzKXsKCQoJCSRvcmRlcl9jb2xzID0gYXJyYXkoKTsKCQkkY3VzdG9tX2NvbHMgPSBhcnJheSgpOwoJCSRpbmRleCA9IDA7CgkJCgkJZm9yZWFjaChleHBsb2RlKCcsJywgJHBhcmFtKSBhcyAkY29sKSB7CgkJCgkJCSRjb2wgPSB0cmltKCRjb2wpOwoJCQkkY29sX3BhcnRzID0gZXhwbG9kZSgnfCcsICRjb2wpOwoJCgkJCS8vIGNvbHVtbiBuYW1lCgkJCSRjb2xfbmFtZSA9ICRjb2xfcGFydHNbMF07CgkJCSRjb2xfb3JkZXIgPSAnQVNDJzsKCQoJCQkvLyBvcmRlciBjb2x1bW4gYXNjZW5kaW5nIG9yIGRlc2NlbmRpbmcKCQkJaWYoaXNzZXQoJGNvbF9wYXJ0c1sxXSkpIHsKCQkJCQoJCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX3BhcnRzWzFdLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX3BhcnRzWzFdIDogJ0FTQycpOwoJCQl9CgkKCQkJJGNvbF9vcmRlciA9IChpbl9hcnJheSgkY29sX29yZGVyLCBhcnJheSgnQVNDJywgJ0RFU0MnKSkgPyAkY29sX29yZGVyIDogJ0FTQycpOwoJCgkJCWlmKGlzc2V0KCR2YWxpZF9jb2xzWyRjb2xfbmFtZV0pKSB7CgkJCQoJCQkJJG9yZGVyX2NvbHNbJGluZGV4XSA9ICR2YWxpZF9jb2xzWyRjb2xfbmFtZV0gLiAnICcgLiAkY29sX29yZGVyOwoJCQl9IAoJCQllbHNlaWYgKHN0YXJ0c3dpdGgoJGNvbF9uYW1lLCAnY3VzdG9tXycpKSB7CgkJCQkKCQkJCSRjdXN0b21fbmFtZSA9IHN1YnN0cigkY29sX25hbWUsIDcpOwoJCQkJJG9iaiA9IG5ldyBzdGRDbGFzczsKCQkJCSRvYmotPm5hbWUgPSAkY3VzdG9tX25hbWU7CgkJCQkkb2JqLT5vcmRlciA9ICRjb2xfb3JkZXI7CgkJCQkKCQkJCSRjdXN0b21fY29sc1skaW5kZXhdID0gJG9iajsKCQkJfQoJCQkKCQkJJGluZGV4Kys7CgkJfQoJCQkKCQlyZXR1cm4gYXJyYXkoJG9yZGVyX2NvbHMsICRjdXN0b21fY29scyk7Cgl9CQoJCn0gLy8gZW5kIG9mIGNsYXNz]]></data>
	</file>
	<file>
	  <filename>/lib/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/css/listit2-globals.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogQmFja2VuZCAqLwpkaXYubGlzdGl0Mi1hZG1pbi13cmFwcGVyIGF7CgoJb3V0bGluZTogbm9uZTsKfQoKLyogYWpheCBsb2FkZXJzICovCi5hamF4LWxvYWRlci10eXBlLTE2IHsKCgl3aWR0aDogMTZweDsKCWhlaWdodDogMTZweDsKCWJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvanF1ZXJ5dWkvdWktYW5pbV9iYXNpY18xNngxNi5naWYpIG5vLXJlcGVhdDsKfQoKLmFqYXgtbG9hZGVyLXR5cGUtd2lkZSB7CgoJbWFyZ2luLXRvcDogMTVweDsKCXdpZHRoOiAxMjhweDsKCWhlaWdodDogMTVweDsKCWJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvbW9kdWxldWkvYWpheC1sb2FkZXItd2lkZS5naWYpIG5vLXJlcGVhdDsKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/Checkbox/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/Checkbox/input.Checkbox.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21maWVsZFt7JGZpZWxkZGVmLT5HZXRJZCgpfV0iIHZhbHVlPSIwIiAvPgoJCTxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21maWVsZFt7JGZpZWxkZGVmLT5HZXRJZCgpfV0iIHZhbHVlPSIxIntpZiAkZmllbGRkZWYtPkdldFZhbHVlKCJzdHJpbmciKX0gY2hlY2tlZD0iY2hlY2tlZCJ7L2lmfSAvPgkJCgk8L3A+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Checkbox/listit2fd.Checkbox.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfQ2hlY2tib3ggZXh0ZW5kcyBMaXN0SXQyRmllbGRkZWZCYXNlDQp7DQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbywgJGNhbGxlcl9vYmplY3QpIA0KCXsJDQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJGRiX2luZm8sICRjYWxsZXJfb2JqZWN0KTsNCgkJDQoJCSR0aGlzLT5TZXRGcmllbmRseVR5cGUoJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmXycuJHRoaXMtPkdldFR5cGUoKSkpOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gVmFsaWRhdGUoJiRlcnJvcnMpIA0KCXsNCgkJaWYoJHRoaXMtPkdldFZhbHVlKCJzdHJpbmciKSA9PSAwICYmICR0aGlzLT5Jc1JlcXVpcmVkKCkpIHsNCgkNCgkJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCdyZXF1aXJlZF9maWVsZF9lbXB0eScpIC4gJyAoJyAuICR0aGlzLT5HZXROYW1lKCkgLiAnKSc7DQoJCX0NCgl9DQoNCglwdWJsaWMgZnVuY3Rpb24gUmVuZGVyRm9yQWRtaW5MaXN0aW5nKCRpZCwgJHJldHVybmlkKQ0KCXsNCgkNCgkJJG91dHB1dCA9ICc8ZGl2IGNsYXNzPSJpbml0LWFqYXgtdG9nZ2xlIj4nOw0KCQ0KCQkkYWRtaW50aGVtZSA9IGNtc21zKCktPmdldF92YXJpYWJsZSgnYWRtaW50aGVtZScpOwkNCgkJJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSh0cnVlKTsNCgkNCgkJaWYgKCR0aGlzLT5HZXRWYWx1ZSgic3RyaW5nIikpIHsNCg0KCQkJJG91dHB1dCAuPSAkbW9kLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX3RvZ2dsZWZpZWxkZGVmdmFsdWUnLCAkcmV0dXJuaWQsICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS90cnVlLmdpZicsICcnLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KA0KCQkJCSdmaWVsZGRlZl9pZCcgPT4gJHRoaXMtPkdldElkKCksDQoJCQkJJ2l0ZW1faWQnID0+ICR0aGlzLT5HZXRJdGVtSWQoKSwNCgkJCQkndmFsdWUnID0+IDANCgkJCSkpOwkJDQoJCX0gDQoJCWVsc2Ugew0KCQkNCgkJCSRvdXRwdXQgLj0gJG1vZC0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl90b2dnbGVmaWVsZGRlZnZhbHVlJywgJHJldHVybmlkLCAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZmFsc2UuZ2lmJywgJycsICcnLCAnJywgJ3N5c3RlbWljb24nKSwgYXJyYXkoDQoJCQkJJ2ZpZWxkZGVmX2lkJyA9PiAkdGhpcy0+R2V0SWQoKSwNCgkJCQknaXRlbV9pZCcgPT4gJHRoaXMtPkdldEl0ZW1JZCgpLA0KCQkJCSd2YWx1ZScgPT4gMQ0KCQkJKSk7CQ0KCQl9CQ0KCQkNCgkJJG91dHB1dCAuPSAnPC9kaXY+JzsNCgkJDQoJCXJldHVybiAkb3V0cHV0Ow0KCX0JDQoJDQp9IC8vIGVuZCBvZiBjbGFzcw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/CheckboxGroup/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/CheckboxGroup/admin.CheckboxGroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnb3B0aW9ucycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbXVsdGlvcHRpb25zX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtvcHRpb25zXSI+eyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKX08L3RleHRhcmVhPgogICAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CQogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdzZXBhcmF0b3InKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX3NlcGFyYXRvcl9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbc2VwYXJhdG9yXSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdzZXBhcmF0b3InKX0iIC8+CiAgICA8L3A+CQo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CQogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdjb2x1bW5zJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgCXskdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2luZm8uZ2lmJyl9PGVtPiB7JGZpZWxkZGVmLT5Nb2RMYW5nKCdmaWVsZGRlZl9jb2x1bW5zX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtjb2x1bW5zXSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdjb2x1bW5zJywgMSl9IiAvPgogICAgPC9wPgkKPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/CheckboxGroup/input.CheckboxGroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij4KCQl7aWYgJGZpZWxkZGVmLT5HZXREZXNjKCl9KHskZmllbGRkZWYtPkdldERlc2MoKX0pPGJyIC8+ey9pZn0KCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbWZpZWxkW3skZmllbGRkZWYtPkdldElkKCl9XSIgdmFsdWU9IiIgLz4KCQl7aHRtbF9jaGVja2JveGVzIG5hbWU9ImAkYWN0aW9uaWRgY3VzdG9tZmllbGRbYCRmaWVsZGRlZi0+R2V0SWQoKWBdIiBvcHRpb25zPSRmaWVsZGRlZi0+R2V0T3B0aW9ucygpIHNlbGVjdGVkPSRmaWVsZGRlZi0+R2V0VmFsdWUoImFycmF5Iikgc2VwYXJhdG9yPSRmaWVsZGRlZi0+U2VwYXJhdG9yKCkgYXNzaWduPSdsaTJib3hlcyd9CgkJe21hdGggZXF1YXRpb249J3gveScgeD0kbGkyYm94ZXN8Y291bnQgeT0kZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdjb2x1bW5zJywgMSkgYXNzaWduPSdjb3VudGVyJ30KCgkJPHVsIGNsYXNzPSJsaXN0aXQyLWNvbHVtbi1saXN0Ij4KCQl7Zm9yZWFjaCBmcm9tPSRsaTJib3hlcyBpdGVtPSdib3gnfQoJCQl7aWYgJGJveEBmaXJzdH08bGk+e2Vsc2VpZiAkYm94QGluZGV4ICUgJGNvdW50ZXJ8Y2VpbCA9PSAwfTwvbGk+PGxpPnsvaWZ9CQkKCQkJeyRib3h9CgkJCXtpZiAkYm94QGxhc3R9PC9saT57L2lmfQoJCXsvZm9yZWFjaH0KCQk8L3VsPgoJPC9kaXY+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/CheckboxGroup/listit2fd.CheckboxGroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfQ2hlY2tib3hHcm91cCBleHRlbmRzIExpc3RJdDJGaWVsZGRlZkJhc2UNCnsNCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJiRkYl9pbmZvKSANCgl7CQ0KCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRkYl9pbmZvKTsNCgkJDQoJCSR0aGlzLT5TZXRGcmllbmRseVR5cGUoJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmXycuJHRoaXMtPkdldFR5cGUoKSkpOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gR2V0T3B0aW9ucygpDQoJew0KCQkkb3B0aW9ucyA9ICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnb3B0aW9ucycpOw0KCQkkbGlzdCA9IGV4cGxvZGUoIlxuIiwgJG9wdGlvbnMpOw0KCQkNCgkJJG9wdGlvbnMgPSBhcnJheSgpOw0KCQlmb3JlYWNoKCRsaXN0IGFzICRvcHRpb24pIHsNCgkJDQoJCQkkb3B0aW9uID0gZXhwbG9kZSgiPSIsICRvcHRpb24sIDIpOw0KCQkJaWYoY291bnQoJG9wdGlvbikgPiAxKSB7DQoJCQkJJG9wdGlvbnNbdHJpbSgkb3B0aW9uWzFdKV0gPSB0cmltKCRvcHRpb25bMF0pOw0KCQkJfSBlbHNlIHsNCgkJCQkkb3B0aW9uc1t0cmltKCRvcHRpb25bMF0pXSA9IHRyaW0oJG9wdGlvblswXSk7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gJG9wdGlvbnM7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBTZXBhcmF0b3IoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnc2VwYXJhdG9yJyk7CQ0KCX0JDQoJCQ0KfSAvLyBlbmQgb2YgY2xhc3MNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/ContentPages/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/ContentPages/admin.ContentPages.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnc3VidHlwZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfc3VidHlwZV9oZWxwJyl9PC9lbT48YnIgLz4KCQl7aHRtbF9vcHRpb25zIG5hbWU9ImAkYWN0aW9uaWRgY3VzdG9tX2lucHV0W3N1YnR5cGVdIiBvcHRpb25zPSRmaWVsZGRlZi0+U3ViVHlwZXMoKSBzZWxlY3RlZD0kZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdzdWJ0eXBlJywgJ0Ryb3Bkb3duJyl9Cgk8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4JCgk8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ3NlcGFyYXRvcicpfTo8L3A+Cgk8cCBjbGFzcz0icGFnZWlucHV0Ij4KCQl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfc2VwYXJhdG9yX2hlbHAnKX08L2VtPjxiciAvPgoJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtzZXBhcmF0b3JdIiB2YWx1ZT0ieyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ3NlcGFyYXRvcicpfSIgLz4KCTwvcD4JCjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4JCgk8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ2NvbHVtbnMnKX06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX2NvbHVtbnNfaGVscCcpfTwvZW0+PGJyIC8+CgkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W2NvbHVtbnNdIiB2YWx1ZT0ieyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ2NvbHVtbnMnLCAxKX0iIC8+Cgk8L3A+CQo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ3Nob3dhbGwnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX3Nob3dhbGxfaGVscCcpfTwvZW0+PGJyIC8+CgkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbc2hvd2FsbF0iIHZhbHVlPSIwIiAvPgoJCTxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbc2hvd2FsbF0iIHZhbHVlPSIxIntpZiAkZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdzaG93YWxsJyl9Y2hlY2tlZD0iY2hlY2tlZCJ7L2lmfSAvPgoJPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/ContentPages/input.ContentPages.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJeyRmaWVsZGRlZi0+R2V0SW5wdXQoJGFjdGlvbmlkKX0KCTwvcD4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/ContentPages/listit2fd.ContentPages.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfQ29udGVudFBhZ2VzIGV4dGVuZHMgTGlzdEl0MkZpZWxkZGVmQmFzZQ0Kew0KCXByaXZhdGUgJF9saTI7DQoNCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJiRkYl9pbmZvKSANCgl7CQ0KCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRkYl9pbmZvKTsNCgkJDQoJCSR0aGlzLT5TZXRGcmllbmRseVR5cGUoJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmXycuJHRoaXMtPkdldFR5cGUoKSkpOw0KCQkNCgkJJHRoaXMtPl9saTIgPSBjbXNtcygpLT5HZXRNb2R1bGVJbnN0YW5jZShMSVNUSVQyKTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIFJlbmRlcklucHV0KCRpZCwgJHJldHVybmlkKQ0KCXsNCgkJJHR5cGUgPSAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ3N1YnR5cGUnLCAnRHJvcGRvd24nKTsNCgkJJG9iaiA9IExpc3RJdDJGaWVsZGRlZk9wZXJhdGlvbnM6OkxvYWRGaWVsZGRlZkJ5VHlwZSgkdHlwZSk7DQoJCQ0KCQlpZihpc19vYmplY3QoJG9iaikpDQoJCQlyZXR1cm4gJG9iai0+UmVuZGVySW5wdXQoJGlkLCAkcmV0dXJuaWQpOw0KCQkJDQoJCXJldHVybiBmYWxzZTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIFJlbmRlckZvckFkbWluTGlzdGluZygpDQoJew0KCQkkbWFuYWdlciA9IGNtc21zKCktPkdldEhpZXJhcmNoeU1hbmFnZXIoKTsNCgkJJGlkX2xpc3QgPSAkdGhpcy0+R2V0VmFsdWUocGFyZW50OjpUWVBFX0FSUkFZKTsNCgkJJHVzZV9uYW1lID0gZ2V0X3NpdGVfcHJlZmVyZW5jZSgnbGlzdGNvbnRlbnRfc2hvd3RpdGxlJyx0cnVlKTsNCgkJDQoJCSRvdXRwdXQgPSBhcnJheSgpOw0KCQlmb3JlYWNoKCRpZF9saXN0IGFzICRvbmVpZCkgew0KCQkNCgkJCSRub2RlID0gJG1hbmFnZXItPmZpbmRfYnlfdGFnKCdpZCcsICRvbmVpZCk7DQoJCQkNCgkJCWlmKCRub2RlKSB7DQoJCQkJJGNvbnRlbnQgPSAkbm9kZS0+Z2V0Q29udGVudChGQUxTRSwgRkFMU0UsIEZBTFNFKTsNCgkJCQ0KCQkJCWlmKCRjb250ZW50KSB7DQoJCQkJCQ0KCQkJCQkkdHh0ID0gJHVzZV9uYW1lID8gJGNvbnRlbnQtPk5hbWUoKSA6ICRjb250ZW50LT5NZW51VGV4dCgpOw0KCQkJCQkkb3V0cHV0W10gPSAkdHh0Ow0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkNCgkJcmV0dXJuIGltcGxvZGUoJywgJywgJG91dHB1dCk7DQoJfQkNCgkNCglwdWJsaWMgZnVuY3Rpb24gR2V0T3B0aW9ucygpDQoJew0KCQkkY29udGVudG9wcyA9IGNtc21zKCktPkdldENvbnRlbnRPcGVyYXRpb25zKCk7DQoJCQkJDQoJCSRyZXN1bHQgPSBhcnJheSgpOw0KCQkkdXNlcmlkID0gZ2V0X3VzZXJpZCgpOw0KCQkkdHlwZSA9ICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnc3VidHlwZScsICdEcm9wZG93bicpOw0KCQkkc2hvd19hbGwgPSAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ3Nob3dhbGwnKSA/IHRydWUgOiBmYWxzZTsJCQ0KCQkkdXNlX25hbWUgPSBnZXRfc2l0ZV9wcmVmZXJlbmNlKCdsaXN0Y29udGVudF9zaG93dGl0bGUnLHRydWUpOw0KCQkkYWxsY29udGVudCA9ICRjb250ZW50b3BzLT5HZXRBbGxDb250ZW50KGZhbHNlKTsNCgkJDQoJCWlmICgkYWxsY29udGVudCAhPT0gRkFMU0UgJiYgY291bnQoJGFsbGNvbnRlbnQpID4gMCkgew0KCQkgIA0KCQkJaWYoJHR5cGUgPT0gJ0Ryb3Bkb3duJyB8fCAkdHlwZSA9PSAnUmFkaW9Hcm91cCcpDQoJCQkJJHJlc3VsdFstMV0gPSBsYW5nKCdub25lJyk7DQoJCQkgIA0KCQkJZm9yZWFjaCAoJGFsbGNvbnRlbnQgYXMgJG9uZSkgew0KCQkJDQoJCQkJLy8gQ2hlY2sgaWYgb2JqZWN0IGlzIHZhbGlkDQoJCQkJaWYoIWlzX29iamVjdCgkb25lKSkgDQoJCQkJCWNvbnRpbnVlOw0KCQkJCQkNCgkJCQkvLyBJZiBpdCBkb2Vzbid0IGhhdmUgYSB2YWxpZCBsaW5rLi4uDQoJCQkJLy8gZG9uJ3QgaW5jbHVkZSBpdC4NCgkJCQlpZighJG9uZS0+SGFzVXNhYmxlTGluaygpKQ0KCQkJCQljb250aW51ZTsNCgkJCQkJDQoJCQkJLy8gSWYgd2UgaGF2ZSBhIHZhbGlkIHVzZXJpZC4uLiBvbmx5IGluY2x1ZGUgcGFnZXMgd2hlcmUgdGhpcyB1c2VyDQoJCQkJLy8gaGFzIHdyaXRlIGFjY2Vzcy4uLiBvciBpcyBhbiBhZG1pbiB1c2VyLi4uIG9yIGhhcyBhcHByb3ByaWF0ZSBwZXJtaXNzaW9uLg0KCQkJCWlmKCEkc2hvd19hbGwgJiYgIWNoZWNrX3Blcm1pc3Npb24oJHVzZXJpZCwnTWFuYWdlIEFsbCBDb250ZW50JykgJiYgIWNoZWNrX2F1dGhvcnNoaXAoJHVzZXJpZCwgJG9uZS0+SWQoKSkpDQoJCQkJCWNvbnRpbnVlOw0KCQkJCQkJCQkNCgkJCQkvLyBEb24ndCBpbmNsdWRlIGNvbnRlbnQgdHlwZXMgdGhhdCBkbyBub3Qgd2FudCBjaGlsZHJlbiBlaXRoZXIuLi4NCgkJCQlpZiAoISRvbmUtPldhbnRzQ2hpbGRyZW4oKSkgDQoJCQkJCWNvbnRpbnVlOw0KCQkJCQ0KCQkJCS8vIEVsc2UgYXBwZW5kIHRvIGFycmF5Lg0KCQkJCSR0eHQgPSAkdXNlX25hbWUgPyAkb25lLT5OYW1lKCkgOiAkb25lLT5NZW51VGV4dCgpOw0KCQkJCSRyZXN1bHRbJG9uZS0+SWQoKV0gPSAkb25lLT5IaWVyYXJjaHkoKSAuICcuIC0gJyAuICR0eHQ7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gJHJlc3VsdDsNCgl9DQoNCglwdWJsaWMgZnVuY3Rpb24gU3ViVHlwZXMoKQ0KCXsNCiAgICAgICAgcmV0dXJuIGFycmF5KA0KICAgICAgICAgICAgJ0Ryb3Bkb3duJyA9PiAkdGhpcy0+X2xpMi0+TW9kTGFuZygnZmllbGRkZWZfRHJvcGRvd24nKSwNCiAgICAgICAgICAgICdNdWx0aVNlbGVjdCcgPT4gJHRoaXMtPl9saTItPk1vZExhbmcoJ2ZpZWxkZGVmX011bHRpU2VsZWN0JyksDQogICAgICAgICAgICAnUmFkaW9Hcm91cCcgPT4gJHRoaXMtPl9saTItPk1vZExhbmcoJ2ZpZWxkZGVmX1JhZGlvR3JvdXAnKSwNCiAgICAgICAgICAgICdDaGVja2JveEdyb3VwJyA9PiAkdGhpcy0+X2xpMi0+TW9kTGFuZygnZmllbGRkZWZfQ2hlY2tib3hHcm91cCcpDQogICAgICAgICk7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBTZXBhcmF0b3IoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnc2VwYXJhdG9yJyk7CQ0KCX0JDQoNCn0gLy8gZW5kIG9mIGNsYXNzDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Dropdown/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/Dropdown/admin.Dropdown.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnb3B0aW9ucycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbXVsdGlvcHRpb25zX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtvcHRpb25zXSI+eyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKX08L3RleHRhcmVhPgogICAgPC9wPgo8L2Rpdj4KCg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Dropdown/input.Dropdown.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJe2h0bWxfb3B0aW9ucyBuYW1lPSJgJGFjdGlvbmlkYGN1c3RvbWZpZWxkW2AkZmllbGRkZWYtPkdldElkKClgXSIgb3B0aW9ucz0kZmllbGRkZWYtPkdldE9wdGlvbnMoKSBzZWxlY3RlZD0kZmllbGRkZWYtPkdldFZhbHVlKCl9Cgk8L3A+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Dropdown/listit2fd.Dropdown.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfRHJvcGRvd24gZXh0ZW5kcyBMaXN0SXQyRmllbGRkZWZCYXNlDQp7DQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbykgDQoJewkNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkZGJfaW5mbyk7DQoJCQ0KCQkkdGhpcy0+U2V0RnJpZW5kbHlUeXBlKCR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl8nLiR0aGlzLT5HZXRUeXBlKCkpKTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIEdldE9wdGlvbnMoKQ0KCXsNCgkJJG9wdGlvbnMgPSAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKTsNCgkJJGxpc3QgPSBleHBsb2RlKCJcbiIsICRvcHRpb25zKTsNCgkJDQoJCSRvcHRpb25zID0gYXJyYXkoKTsNCgkJZm9yZWFjaCgkbGlzdCBhcyAkb3B0aW9uKSB7DQoJCQ0KCQkJJG9wdGlvbiA9IGV4cGxvZGUoIj0iLCAkb3B0aW9uLCAyKTsNCgkJCWlmKGNvdW50KCRvcHRpb24pID4gMSkgew0KCQkJCSRvcHRpb25zW3RyaW0oJG9wdGlvblsxXSldID0gdHJpbSgkb3B0aW9uWzBdKTsNCgkJCX0gZWxzZSB7DQoJCQkJJG9wdGlvbnNbdHJpbSgkb3B0aW9uWzBdKV0gPSB0cmltKCRvcHRpb25bMF0pOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICRvcHRpb25zOw0KCX0NCgkNCn0gLy8gZW5kIG9mIGNsYXNzDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/MultiSelect/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/MultiSelect/admin.MultiSelect.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnb3B0aW9ucycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbXVsdGlvcHRpb25zX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtvcHRpb25zXSI+eyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKX08L3RleHRhcmVhPgogICAgPC9wPgo8L2Rpdj4KCg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/MultiSelect/input.MultiSelect.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21maWVsZFt7JGZpZWxkZGVmLT5HZXRJZCgpfV0iIHZhbHVlPSIiIC8+CgkJPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbWZpZWxkW3skZmllbGRkZWYtPkdldElkKCl9XVtdIiBzaXplPSI1IiBtdWx0aXBsZT0ibXVsdGlwbGUiPgoJCQl7Zm9yZWFjaCBmcm9tPSRmaWVsZGRlZi0+R2V0T3B0aW9ucygpIGtleT12YWx1ZSBpdGVtPWtleX0KCQkJCTxvcHRpb24gdmFsdWU9InskdmFsdWV9IntpZiBpbl9hcnJheSgkdmFsdWUsICRmaWVsZGRlZi0+R2V0VmFsdWUoImFycmF5IikpfSBzZWxlY3RlZD0ic2VsZWN0ZWQiey9pZn0+eyRrZXl9PC9vcHRpb24+CgkJCXsvZm9yZWFjaH0KCQk8L3NlbGVjdD4JCQoJPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/MultiSelect/listit2fd.MultiSelect.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfTXVsdGlTZWxlY3QgZXh0ZW5kcyBMaXN0SXQyRmllbGRkZWZCYXNlDQp7DQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbykgDQoJewkNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkZGJfaW5mbyk7DQoJCQ0KCQkkdGhpcy0+U2V0RnJpZW5kbHlUeXBlKCR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl8nLiR0aGlzLT5HZXRUeXBlKCkpKTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIEdldE9wdGlvbnMoKQ0KCXsNCgkJJG9wdGlvbnMgPSAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKTsNCgkJJGxpc3QgPSBleHBsb2RlKCJcbiIsICRvcHRpb25zKTsNCgkJDQoJCSRvcHRpb25zID0gYXJyYXkoKTsNCgkJZm9yZWFjaCgkbGlzdCBhcyAkb3B0aW9uKSB7DQoJCQ0KCQkJJG9wdGlvbiA9IGV4cGxvZGUoIj0iLCAkb3B0aW9uLCAyKTsNCgkJCWlmKGNvdW50KCRvcHRpb24pID4gMSkgew0KCQkJCSRvcHRpb25zW3RyaW0oJG9wdGlvblsxXSldID0gdHJpbSgkb3B0aW9uWzBdKTsNCgkJCX0gZWxzZSB7DQoJCQkJJG9wdGlvbnNbdHJpbSgkb3B0aW9uWzBdKV0gPSB0cmltKCRvcHRpb25bMF0pOw0KCQkJfQ0KCQl9DQoNCgkJcmV0dXJuICRvcHRpb25zOw0KCX0NCgkJDQp9IC8vIGVuZCBvZiBjbGFzcw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/RadioGroup/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/RadioGroup/admin.RadioGroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnb3B0aW9ucycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbXVsdGlvcHRpb25zX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTx0ZXh0YXJlYSBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtvcHRpb25zXSI+eyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ29wdGlvbnMnKX08L3RleHRhcmVhPgogICAgPC9wPgo8L2Rpdj4KCQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgkKICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnc2VwYXJhdG9yJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgCXskdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2luZm8uZ2lmJyl9PGVtPiB7JGZpZWxkZGVmLT5Nb2RMYW5nKCdmaWVsZGRlZl9zZXBhcmF0b3JfaGVscCcpfTwvZW0+PGJyIC8+CiAgICAJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W3NlcGFyYXRvcl0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnc2VwYXJhdG9yJyl9IiAvPgogICAgPC9wPgkKPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgkKICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnY29sdW1ucycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfY29sdW1uc19oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbY29sdW1uc10iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnY29sdW1ucycsIDEpfSIgLz4KICAgIDwvcD4JCjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/RadioGroup/input.RadioGroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij4KCQl7aWYgJGZpZWxkZGVmLT5HZXREZXNjKCl9KHskZmllbGRkZWYtPkdldERlc2MoKX0pPGJyIC8+ey9pZn0KCQl7aHRtbF9yYWRpb3MgbmFtZT0iYCRhY3Rpb25pZGBjdXN0b21maWVsZFtgJGZpZWxkZGVmLT5HZXRJZCgpYF0iIG9wdGlvbnM9JGZpZWxkZGVmLT5HZXRPcHRpb25zKCkgc2VsZWN0ZWQ9JGZpZWxkZGVmLT5HZXRWYWx1ZSgpIHNlcGFyYXRvcj0kZmllbGRkZWYtPlNlcGFyYXRvcigpIGFzc2lnbj0nbGkyYm94ZXMnfQoJCXttYXRoIGVxdWF0aW9uPSd4L3knIHg9JGxpMmJveGVzfGNvdW50IHk9JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnY29sdW1ucycsIDEpIGFzc2lnbj0nY291bnRlcid9CgoJCTx1bCBjbGFzcz0ibGlzdGl0Mi1jb2x1bW4tbGlzdCI+CgkJe2ZvcmVhY2ggZnJvbT0kbGkyYm94ZXMgaXRlbT0nYm94J30KCQkJe2lmICRib3hAZmlyc3R9PGxpPntlbHNlaWYgJGJveEBpbmRleCAlICRjb3VudGVyfGNlaWwgPT0gMH08L2xpPjxsaT57L2lmfQkJCgkJCXskYm94fQoJCQl7aWYgJGJveEBsYXN0fTwvbGk+ey9pZn0KCQl7L2ZvcmVhY2h9CgkJPC91bD4JCQoJPC9kaXY+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/RadioGroup/listit2fd.RadioGroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfUmFkaW9Hcm91cCBleHRlbmRzIExpc3RJdDJGaWVsZGRlZkJhc2UNCnsNCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJiRkYl9pbmZvKSANCgl7CQ0KCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRkYl9pbmZvKTsNCgkJDQoJCSR0aGlzLT5TZXRGcmllbmRseVR5cGUoJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmXycuJHRoaXMtPkdldFR5cGUoKSkpOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gR2V0T3B0aW9ucygpDQoJew0KCQkkb3B0aW9ucyA9ICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnb3B0aW9ucycpOw0KCQkkbGlzdCA9IGV4cGxvZGUoIlxuIiwgJG9wdGlvbnMpOw0KCQkNCgkJJG9wdGlvbnMgPSBhcnJheSgpOw0KCQlmb3JlYWNoKCRsaXN0IGFzICRvcHRpb24pIHsNCgkJDQoJCQkkb3B0aW9uID0gZXhwbG9kZSgiPSIsICRvcHRpb24sIDIpOw0KCQkJaWYoY291bnQoJG9wdGlvbikgPiAxKSB7DQoJCQkJJG9wdGlvbnNbdHJpbSgkb3B0aW9uWzFdKV0gPSB0cmltKCRvcHRpb25bMF0pOw0KCQkJfSBlbHNlIHsNCgkJCQkkb3B0aW9uc1t0cmltKCRvcHRpb25bMF0pXSA9IHRyaW0oJG9wdGlvblswXSk7DQoJCQl9DQoJCX0NCg0KCQlyZXR1cm4gJG9wdGlvbnM7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBTZXBhcmF0b3IoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnc2VwYXJhdG9yJyk7CQ0KCX0NCgkNCn0gLy8gZW5kIG9mIGNsYXNzDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/admin.SelectDateTime.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnc2l6ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfc2l6ZV9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbc2l6ZV0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnc2l6ZScsIDIwKX0iIC8+CiAgICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnbWF4X2xlbmdodCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbWF4X2xlbmdodF9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbbWF4X2xlbmdodF0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnbWF4X2xlbmdodCcsIDI1NSl9IiAvPgogICAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ2Zvcm1hdF90eXBlJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgCXskdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2luZm8uZ2lmJyl9PGVtPiB7JGZpZWxkZGVmLT5Nb2RMYW5nKCdmaWVsZGRlZl9mb3JtYXRfdHlwZV9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAl7aHRtbF9vcHRpb25zIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W2Zvcm1hdF90eXBlXSIgb3B0aW9ucz0kZmllbGRkZWYtPkZvcm1hdFR5cGVzKCkgc2VsZWN0ZWQ9JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnZm9ybWF0X3R5cGUnLCAwKX0KICAgIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdkYXRlX2Zvcm1hdCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfZGF0ZV9mb3JtYXRfaGVscCcpfTwvZW0+PGJyIC8+CiAgICAJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W2RhdGVfZm9ybWF0XSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdkYXRlX2Zvcm1hdCcsICdkZC1tbS15eScpfSIgLz4KICAgIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCd0aW1lX2Zvcm1hdCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfdGltZV9mb3JtYXRfaGVscCcpfTwvZW0+PGJyIC8+CiAgICAJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W3RpbWVfZm9ybWF0XSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCd0aW1lX2Zvcm1hdCcsICdISDptbScpfSIgLz4KICAgIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdzaG93X3NlY29uZHMnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX3Nob3dfc2Vjb25kc19oZWxwJyl9PC9lbT48YnIgLz4KCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtzaG93X3NlY29uZHNdIiB2YWx1ZT0iMCIgLz4KCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W3Nob3dfc2Vjb25kc10iIHZhbHVlPSIxIntpZiAkZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdzaG93X3NlY29uZHMnKX1jaGVja2VkPSJjaGVja2VkInsvaWZ9IC8+Cgk8L3A+CjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/input.SelectDateTime.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tZmllbGRbeyRmaWVsZGRlZi0+R2V0SWQoKX1dIiBpZD0ieyRhY3Rpb25pZH1jdXN0b21maWVsZFt7JGZpZWxkZGVmLT5HZXRJZCgpfV0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRWYWx1ZSgpfSIgc2l6ZT0ieyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ3NpemUnKX0iIC8+Cgk8L3A+CgkKCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkgewoJCSQoIiN7JGFjdGlvbmlkfWN1c3RvbWZpZWxkXFxcW3skZmllbGRkZWYtPkdldElkKCl9XFxcXSIpCgkJe2lmICRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ2Zvcm1hdF90eXBlJykgPT0gMX0geyogRGF0ZSBGb3JtYXQgKn0KCQkuZGF0ZXBpY2tlcih7CgkJCWRhdGVGb3JtYXQ6ICJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnZGF0ZV9mb3JtYXQnKX0iCgkJfSk7CQkKCQl7ZWxzZWlmICRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ2Zvcm1hdF90eXBlJykgPT0gMn0geyogVGltZSBGb3JtYXQgKn0KCQkudGltZXBpY2tlcih7CgkJCXRpbWVGb3JtYXQ6ICJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgndGltZV9mb3JtYXQnKX0iLAoJCQl7aWYgJGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnc2hvd19zZWNvbmRzJyl9c2hvd1NlY29uZDogdHJ1ZSx7L2lmfQoJCQlob3VyR3JpZDogNCwKCQkJbWludXRlR3JpZDogMTAsCgkJCXNlY29uZEdyaWQ6IDEwCQkJCgkJfSk7CgkJe2Vsc2V9IHsqIENvbWJpbmVkICp9CgkJLmRhdGV0aW1lcGlja2VyKHsKCQkJZGF0ZUZvcm1hdDogInskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdkYXRlX2Zvcm1hdCcpfSIsCgkJCXRpbWVGb3JtYXQ6ICJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgndGltZV9mb3JtYXQnKX0iLAoJCQl7aWYgJGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnc2hvd19zZWNvbmRzJyl9c2hvd1NlY29uZDogdHJ1ZSx7L2lmfQoJCQlob3VyR3JpZDogNCwKCQkJbWludXRlR3JpZDogMTAsCgkJCXNlY29uZEdyaWQ6IDEwCgkJfSk7CQkKCQl7L2lmfQoJfSk7Cgk8L3NjcmlwdD4KCQo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/jqeury-ui-timepicker-addon.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogY3NzIGZvciB0aW1lcGlja2VyICovCi51aS10aW1lcGlja2VyLWRpdiAudWktd2lkZ2V0LWhlYWRlciB7IG1hcmdpbi1ib3R0b206IDhweDsgfQoudWktdGltZXBpY2tlci1kaXYgZGwgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9Ci51aS10aW1lcGlja2VyLWRpdiBkbCBkdCB7IGhlaWdodDogMjVweDsgbWFyZ2luLWJvdHRvbTogLTI1cHg7IH0KLnVpLXRpbWVwaWNrZXItZGl2IGRsIGRkIHsgbWFyZ2luOiAwIDEwcHggMTBweCA2NXB4OyB9Ci51aS10aW1lcGlja2VyLWRpdiB0ZCB7IGZvbnQtc2l6ZTogOTAlOyB9Ci51aS10cGlja2VyLWdyaWQtbGFiZWwgeyBiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6IG5vbmU7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgfQoKLnVpLXRpbWVwaWNrZXItcnRseyBkaXJlY3Rpb246IHJ0bDsgfQoudWktdGltZXBpY2tlci1ydGwgZGwgeyB0ZXh0LWFsaWduOiByaWdodDsgfQoudWktdGltZXBpY2tlci1ydGwgZGwgZGQgeyBtYXJnaW46IDAgNjVweCAxMHB4IDEwcHg7IH0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/jquery-ui-timepicker-addon.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICogalF1ZXJ5IHRpbWVwaWNrZXIgYWRkb24KICogQnk6IFRyZW50IFJpY2hhcmRzb24gW2h0dHA6Ly90cmVudHJpY2hhcmRzb24uY29tXQogKiBWZXJzaW9uIDEuMS4xCiAqIExhc3QgTW9kaWZpZWQ6IDExLzA3LzIwMTIKICoKICogQ29weXJpZ2h0IDIwMTIgVHJlbnQgUmljaGFyZHNvbgogKiBZb3UgbWF5IHVzZSB0aGlzIHByb2plY3QgdW5kZXIgTUlUIG9yIEdQTCBsaWNlbnNlcy4KICogaHR0cDovL3RyZW50cmljaGFyZHNvbi5jb20vSW1wcm9tcHR1L0dQTC1MSUNFTlNFLnR4dAogKiBodHRwOi8vdHJlbnRyaWNoYXJkc29uLmNvbS9JbXByb21wdHUvTUlULUxJQ0VOU0UudHh0CiAqLwoKLypqc2xpbnQgZXZpbDogdHJ1ZSwgd2hpdGU6IGZhbHNlLCB1bmRlZjogZmFsc2UsIG5vbWVuOiBmYWxzZSAqLwoKKGZ1bmN0aW9uKCQpIHsKCgkvKgoJKiBMZXRzIG5vdCByZWRlZmluZSB0aW1lcGlja2VyLCBQcmV2ZW50ICJVbmNhdWdodCBSYW5nZUVycm9yOiBNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNlZWRlZCIKCSovCgkkLnVpLnRpbWVwaWNrZXIgPSAkLnVpLnRpbWVwaWNrZXIgfHwge307CglpZiAoJC51aS50aW1lcGlja2VyLnZlcnNpb24pIHsKCQlyZXR1cm47Cgl9CgoJLyoKCSogRXh0ZW5kIGpRdWVyeVVJLCBnZXQgaXQgc3RhcnRlZCB3aXRoIG91ciB2ZXJzaW9uIG51bWJlcgoJKi8KCSQuZXh0ZW5kKCQudWksIHsKCQl0aW1lcGlja2VyOiB7CgkJCXZlcnNpb246ICIxLjEuMSIKCQl9Cgl9KTsKCgkvKiAKCSogVGltZXBpY2tlciBtYW5hZ2VyLgoJKiBVc2UgdGhlIHNpbmdsZXRvbiBpbnN0YW5jZSBvZiB0aGlzIGNsYXNzLCAkLnRpbWVwaWNrZXIsIHRvIGludGVyYWN0IHdpdGggdGhlIHRpbWUgcGlja2VyLgoJKiBTZXR0aW5ncyBmb3IgKGdyb3VwcyBvZikgdGltZSBwaWNrZXJzIGFyZSBtYWludGFpbmVkIGluIGFuIGluc3RhbmNlIG9iamVjdCwKCSogYWxsb3dpbmcgbXVsdGlwbGUgZGlmZmVyZW50IHNldHRpbmdzIG9uIHRoZSBzYW1lIHBhZ2UuCgkqLwoJZnVuY3Rpb24gVGltZXBpY2tlcigpIHsKCQl0aGlzLnJlZ2lvbmFsID0gW107IC8vIEF2YWlsYWJsZSByZWdpb25hbCBzZXR0aW5ncywgaW5kZXhlZCBieSBsYW5ndWFnZSBjb2RlCgkJdGhpcy5yZWdpb25hbFsnJ10gPSB7IC8vIERlZmF1bHQgcmVnaW9uYWwgc2V0dGluZ3MKCQkJY3VycmVudFRleHQ6ICdOb3cnLAoJCQljbG9zZVRleHQ6ICdEb25lJywKCQkJYW1OYW1lczogWydBTScsICdBJ10sCgkJCXBtTmFtZXM6IFsnUE0nLCAnUCddLAoJCQl0aW1lRm9ybWF0OiAnSEg6bW0nLAoJCQl0aW1lU3VmZml4OiAnJywKCQkJdGltZU9ubHlUaXRsZTogJ0Nob29zZSBUaW1lJywKCQkJdGltZVRleHQ6ICdUaW1lJywKCQkJaG91clRleHQ6ICdIb3VyJywKCQkJbWludXRlVGV4dDogJ01pbnV0ZScsCgkJCXNlY29uZFRleHQ6ICdTZWNvbmQnLAoJCQltaWxsaXNlY1RleHQ6ICdNaWxsaXNlY29uZCcsCgkJCXRpbWV6b25lVGV4dDogJ1RpbWUgWm9uZScsCgkJCWlzUlRMOiBmYWxzZQoJCX07CgkJdGhpcy5fZGVmYXVsdHMgPSB7IC8vIEdsb2JhbCBkZWZhdWx0cyBmb3IgYWxsIHRoZSBkYXRldGltZSBwaWNrZXIgaW5zdGFuY2VzCgkJCXNob3dCdXR0b25QYW5lbDogdHJ1ZSwKCQkJdGltZU9ubHk6IGZhbHNlLAoJCQlzaG93SG91cjogdHJ1ZSwKCQkJc2hvd01pbnV0ZTogdHJ1ZSwKCQkJc2hvd1NlY29uZDogZmFsc2UsCgkJCXNob3dNaWxsaXNlYzogZmFsc2UsCgkJCXNob3dUaW1lem9uZTogZmFsc2UsCgkJCXNob3dUaW1lOiB0cnVlLAoJCQlzdGVwSG91cjogMSwKCQkJc3RlcE1pbnV0ZTogMSwKCQkJc3RlcFNlY29uZDogMSwKCQkJc3RlcE1pbGxpc2VjOiAxLAoJCQlob3VyOiAwLAoJCQltaW51dGU6IDAsCgkJCXNlY29uZDogMCwKCQkJbWlsbGlzZWM6IDAsCgkJCXRpbWV6b25lOiBudWxsLAoJCQl1c2VMb2NhbFRpbWV6b25lOiBmYWxzZSwKCQkJZGVmYXVsdFRpbWV6b25lOiAiKzAwMDAiLAoJCQlob3VyTWluOiAwLAoJCQltaW51dGVNaW46IDAsCgkJCXNlY29uZE1pbjogMCwKCQkJbWlsbGlzZWNNaW46IDAsCgkJCWhvdXJNYXg6IDIzLAoJCQltaW51dGVNYXg6IDU5LAoJCQlzZWNvbmRNYXg6IDU5LAoJCQltaWxsaXNlY01heDogOTk5LAoJCQltaW5EYXRlVGltZTogbnVsbCwKCQkJbWF4RGF0ZVRpbWU6IG51bGwsCgkJCW9uU2VsZWN0OiBudWxsLAoJCQlob3VyR3JpZDogMCwKCQkJbWludXRlR3JpZDogMCwKCQkJc2Vjb25kR3JpZDogMCwKCQkJbWlsbGlzZWNHcmlkOiAwLAoJCQlhbHdheXNTZXRUaW1lOiB0cnVlLAoJCQlzZXBhcmF0b3I6ICcgJywKCQkJYWx0RmllbGRUaW1lT25seTogdHJ1ZSwKCQkJYWx0VGltZUZvcm1hdDogbnVsbCwKCQkJYWx0U2VwYXJhdG9yOiBudWxsLAoJCQlhbHRUaW1lU3VmZml4OiBudWxsLAoJCQlwaWNrZXJUaW1lRm9ybWF0OiBudWxsLAoJCQlwaWNrZXJUaW1lU3VmZml4OiBudWxsLAoJCQlzaG93VGltZXBpY2tlcjogdHJ1ZSwKCQkJdGltZXpvbmVJc284NjAxOiBmYWxzZSwKCQkJdGltZXpvbmVMaXN0OiBudWxsLAoJCQlhZGRTbGlkZXJBY2Nlc3M6IGZhbHNlLAoJCQlzbGlkZXJBY2Nlc3NBcmdzOiBudWxsLAoJCQljb250cm9sVHlwZTogJ3NsaWRlcicsCgkJCWRlZmF1bHRWYWx1ZTogbnVsbCwKCQkJcGFyc2U6ICdzdHJpY3QnCgkJfTsKCQkkLmV4dGVuZCh0aGlzLl9kZWZhdWx0cywgdGhpcy5yZWdpb25hbFsnJ10pOwoJfQoKCSQuZXh0ZW5kKFRpbWVwaWNrZXIucHJvdG90eXBlLCB7CgkJJGlucHV0OiBudWxsLAoJCSRhbHRJbnB1dDogbnVsbCwKCQkkdGltZU9iajogbnVsbCwKCQlpbnN0OiBudWxsLAoJCWhvdXJfc2xpZGVyOiBudWxsLAoJCW1pbnV0ZV9zbGlkZXI6IG51bGwsCgkJc2Vjb25kX3NsaWRlcjogbnVsbCwKCQltaWxsaXNlY19zbGlkZXI6IG51bGwsCgkJdGltZXpvbmVfc2VsZWN0OiBudWxsLAoJCWhvdXI6IDAsCgkJbWludXRlOiAwLAoJCXNlY29uZDogMCwKCQltaWxsaXNlYzogMCwKCQl0aW1lem9uZTogbnVsbCwKCQlkZWZhdWx0VGltZXpvbmU6ICIrMDAwMCIsCgkJaG91ck1pbk9yaWdpbmFsOiBudWxsLAoJCW1pbnV0ZU1pbk9yaWdpbmFsOiBudWxsLAoJCXNlY29uZE1pbk9yaWdpbmFsOiBudWxsLAoJCW1pbGxpc2VjTWluT3JpZ2luYWw6IG51bGwsCgkJaG91ck1heE9yaWdpbmFsOiBudWxsLAoJCW1pbnV0ZU1heE9yaWdpbmFsOiBudWxsLAoJCXNlY29uZE1heE9yaWdpbmFsOiBudWxsLAoJCW1pbGxpc2VjTWF4T3JpZ2luYWw6IG51bGwsCgkJYW1wbTogJycsCgkJZm9ybWF0dGVkRGF0ZTogJycsCgkJZm9ybWF0dGVkVGltZTogJycsCgkJZm9ybWF0dGVkRGF0ZVRpbWU6ICcnLAoJCXRpbWV6b25lTGlzdDogbnVsbCwKCQl1bml0czogWydob3VyJywnbWludXRlJywnc2Vjb25kJywnbWlsbGlzZWMnXSwKCQljb250cm9sOiBudWxsLAoKCQkvKiAKCQkqIE92ZXJyaWRlIHRoZSBkZWZhdWx0IHNldHRpbmdzIGZvciBhbGwgaW5zdGFuY2VzIG9mIHRoZSB0aW1lIHBpY2tlci4KCQkqIEBwYXJhbSAgc2V0dGluZ3MgIG9iamVjdCAtIHRoZSBuZXcgc2V0dGluZ3MgdG8gdXNlIGFzIGRlZmF1bHRzIChhbm9ueW1vdXMgb2JqZWN0KQoJCSogQHJldHVybiB0aGUgbWFuYWdlciBvYmplY3QKCQkqLwoJCXNldERlZmF1bHRzOiBmdW5jdGlvbihzZXR0aW5ncykgewoJCQlleHRlbmRSZW1vdmUodGhpcy5fZGVmYXVsdHMsIHNldHRpbmdzIHx8IHt9KTsKCQkJcmV0dXJuIHRoaXM7CgkJfSwKCgkJLyoKCQkqIENyZWF0ZSBhIG5ldyBUaW1lcGlja2VyIGluc3RhbmNlCgkJKi8KCQlfbmV3SW5zdDogZnVuY3Rpb24oJGlucHV0LCBvKSB7CgkJCXZhciB0cF9pbnN0ID0gbmV3IFRpbWVwaWNrZXIoKSwKCQkJCWlubGluZVNldHRpbmdzID0ge30sCiAgICAgICAgICAgICAgICBmbnMgPSB7fSwKCQkgICAgICAgIG92ZXJyaWRlcywgaTsKCgkJCWZvciAodmFyIGF0dHJOYW1lIGluIHRoaXMuX2RlZmF1bHRzKSB7CgkJCQlpZih0aGlzLl9kZWZhdWx0cy5oYXNPd25Qcm9wZXJ0eShhdHRyTmFtZSkpewoJCQkJCXZhciBhdHRyVmFsdWUgPSAkaW5wdXQuYXR0cigndGltZTonICsgYXR0ck5hbWUpOwoJCQkJCWlmIChhdHRyVmFsdWUpIHsKCQkJCQkJdHJ5IHsKCQkJCQkJCWlubGluZVNldHRpbmdzW2F0dHJOYW1lXSA9IGV2YWwoYXR0clZhbHVlKTsKCQkJCQkJfSBjYXRjaCAoZXJyKSB7CgkJCQkJCQlpbmxpbmVTZXR0aW5nc1thdHRyTmFtZV0gPSBhdHRyVmFsdWU7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCX0KCQkgICAgb3ZlcnJpZGVzID0gewoJCSAgICAgICAgYmVmb3JlU2hvdzogZnVuY3Rpb24gKGlucHV0LCBkcF9pbnN0KSB7CgkJICAgICAgICAgICAgaWYgKCQuaXNGdW5jdGlvbih0cF9pbnN0Ll9kZWZhdWx0cy5ldm50cy5iZWZvcmVTaG93KSkgewoJCSAgICAgICAgICAgICAgICByZXR1cm4gdHBfaW5zdC5fZGVmYXVsdHMuZXZudHMuYmVmb3JlU2hvdy5jYWxsKCRpbnB1dFswXSwgaW5wdXQsIGRwX2luc3QsIHRwX2luc3QpOwoJCSAgICAgICAgICAgIH0KCQkgICAgICAgIH0sCgkJICAgICAgICBvbkNoYW5nZU1vbnRoWWVhcjogZnVuY3Rpb24gKHllYXIsIG1vbnRoLCBkcF9pbnN0KSB7CgkJICAgICAgICAgICAgLy8gVXBkYXRlIHRoZSB0aW1lIGFzIHdlbGwgOiB0aGlzIHByZXZlbnRzIHRoZSB0aW1lIGZyb20gZGlzYXBwZWFyaW5nIGZyb20gdGhlICRpbnB1dCBmaWVsZC4KCQkgICAgICAgICAgICB0cF9pbnN0Ll91cGRhdGVEYXRlVGltZShkcF9pbnN0KTsKCQkgICAgICAgICAgICBpZiAoJC5pc0Z1bmN0aW9uKHRwX2luc3QuX2RlZmF1bHRzLmV2bnRzLm9uQ2hhbmdlTW9udGhZZWFyKSkgewoJCSAgICAgICAgICAgICAgICB0cF9pbnN0Ll9kZWZhdWx0cy5ldm50cy5vbkNoYW5nZU1vbnRoWWVhci5jYWxsKCRpbnB1dFswXSwgeWVhciwgbW9udGgsIGRwX2luc3QsIHRwX2luc3QpOwoJCSAgICAgICAgICAgIH0KCQkgICAgICAgIH0sCgkJICAgICAgICBvbkNsb3NlOiBmdW5jdGlvbiAoZGF0ZVRleHQsIGRwX2luc3QpIHsKCQkgICAgICAgICAgICBpZiAodHBfaW5zdC50aW1lRGVmaW5lZCA9PT0gdHJ1ZSAmJiAkaW5wdXQudmFsKCkgIT09ICcnKSB7CgkJICAgICAgICAgICAgICAgIHRwX2luc3QuX3VwZGF0ZURhdGVUaW1lKGRwX2luc3QpOwoJCSAgICAgICAgICAgIH0KCQkgICAgICAgICAgICBpZiAoJC5pc0Z1bmN0aW9uKHRwX2luc3QuX2RlZmF1bHRzLmV2bnRzLm9uQ2xvc2UpKSB7CgkJICAgICAgICAgICAgICAgIHRwX2luc3QuX2RlZmF1bHRzLmV2bnRzLm9uQ2xvc2UuY2FsbCgkaW5wdXRbMF0sIGRhdGVUZXh0LCBkcF9pbnN0LCB0cF9pbnN0KTsKCQkgICAgICAgICAgICB9CgkJICAgICAgICB9CgkJICAgIH07CgkJICAgIGZvciAoaSBpbiBvdmVycmlkZXMpIHsKCQkgICAgICAgIGlmIChvdmVycmlkZXMuaGFzT3duUHJvcGVydHkoaSkpIHsKCQkgICAgICAgICAgICBmbnNbaV0gPSBvW2ldIHx8IG51bGw7CgkJICAgICAgICB9CgkJICAgIH0KCQkgICAgdHBfaW5zdC5fZGVmYXVsdHMgPSAkLmV4dGVuZCh7fSwgdGhpcy5fZGVmYXVsdHMsIGlubGluZVNldHRpbmdzLCBvLCBvdmVycmlkZXMsIHsKCQkgICAgICAgIGV2bnRzOmZucywKCQkgICAgICAgIHRpbWVwaWNrZXI6IHRwX2luc3QgLy8gYWRkIHRpbWVwaWNrZXIgYXMgYSBwcm9wZXJ0eSBvZiBkYXRlcGlja2VyOiAkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAndGltZXBpY2tlcicpOwoJCSAgICB9KTsKCQkJdHBfaW5zdC5hbU5hbWVzID0gJC5tYXAodHBfaW5zdC5fZGVmYXVsdHMuYW1OYW1lcywgZnVuY3Rpb24odmFsKSB7CgkJCQlyZXR1cm4gdmFsLnRvVXBwZXJDYXNlKCk7CgkJCX0pOwoJCQl0cF9pbnN0LnBtTmFtZXMgPSAkLm1hcCh0cF9pbnN0Ll9kZWZhdWx0cy5wbU5hbWVzLCBmdW5jdGlvbih2YWwpIHsKCQkJCXJldHVybiB2YWwudG9VcHBlckNhc2UoKTsKCQkJfSk7CgoJCQkvLyBjb250cm9sVHlwZSBpcyBzdHJpbmcgLSBrZXkgdG8gb3VyIHRoaXMuX2NvbnRyb2xzCgkJCWlmKHR5cGVvZih0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZSkgPT09ICdzdHJpbmcnKXsKCQkJCWlmKCQuZm5bdHBfaW5zdC5fZGVmYXVsdHMuY29udHJvbFR5cGVdID09PSB1bmRlZmluZWQpewoJCQkJCXRwX2luc3QuX2RlZmF1bHRzLmNvbnRyb2xUeXBlID0gJ3NlbGVjdCc7CgkJCQl9CgkJCQl0cF9pbnN0LmNvbnRyb2wgPSB0cF9pbnN0Ll9jb250cm9sc1t0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZV07CgkJCX0KCQkJLy8gY29udHJvbFR5cGUgaXMgYW4gb2JqZWN0IGFuZCBtdXN0IGltcGxlbWVudCBjcmVhdGUsIG9wdGlvbnMsIHZhbHVlIG1ldGhvZHMKCQkJZWxzZXsgCgkJCQl0cF9pbnN0LmNvbnRyb2wgPSB0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZTsKCQkJfQoKCQkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lTGlzdCA9PT0gbnVsbCkgewoJCQkJdmFyIHRpbWV6b25lTGlzdCA9IFsnLTEyMDAnLCAnLTExMDAnLCAnLTEwMDAnLCAnLTA5MzAnLCAnLTA5MDAnLCAnLTA4MDAnLCAnLTA3MDAnLCAnLTA2MDAnLCAnLTA1MDAnLCAnLTA0MzAnLCAnLTA0MDAnLCAnLTAzMzAnLCAnLTAzMDAnLCAnLTAyMDAnLCAnLTAxMDAnLCAnKzAwMDAnLCAKCQkJCQkJCQkJJyswMTAwJywgJyswMjAwJywgJyswMzAwJywgJyswMzMwJywgJyswNDAwJywgJyswNDMwJywgJyswNTAwJywgJyswNTMwJywgJyswNTQ1JywgJyswNjAwJywgJyswNjMwJywgJyswNzAwJywgJyswODAwJywgJyswODQ1JywgJyswOTAwJywgJyswOTMwJywgCgkJCQkJCQkJCScrMTAwMCcsICcrMTAzMCcsICcrMTEwMCcsICcrMTEzMCcsICcrMTIwMCcsICcrMTI0NScsICcrMTMwMCcsICcrMTQwMCddOwoKCQkJCWlmICh0cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUlzbzg2MDEpIHsKCQkJCQl0aW1lem9uZUxpc3QgPSAkLm1hcCh0aW1lem9uZUxpc3QsIGZ1bmN0aW9uKHZhbCkgewoJCQkJCQlyZXR1cm4gdmFsID09ICcrMDAwMCcgPyAnWicgOiAodmFsLnN1YnN0cmluZygwLCAzKSArICc6JyArIHZhbC5zdWJzdHJpbmcoMykpOwoJCQkJCX0pOwoJCQkJfQoJCQkJdHBfaW5zdC5fZGVmYXVsdHMudGltZXpvbmVMaXN0ID0gdGltZXpvbmVMaXN0OwoJCQl9CgoJCQl0cF9pbnN0LnRpbWV6b25lID0gdHBfaW5zdC5fZGVmYXVsdHMudGltZXpvbmU7CgkJCXRwX2luc3QuaG91ciA9IHRwX2luc3QuX2RlZmF1bHRzLmhvdXI7CgkJCXRwX2luc3QubWludXRlID0gdHBfaW5zdC5fZGVmYXVsdHMubWludXRlOwoJCQl0cF9pbnN0LnNlY29uZCA9IHRwX2luc3QuX2RlZmF1bHRzLnNlY29uZDsKCQkJdHBfaW5zdC5taWxsaXNlYyA9IHRwX2luc3QuX2RlZmF1bHRzLm1pbGxpc2VjOwoJCQl0cF9pbnN0LmFtcG0gPSAnJzsKCQkJdHBfaW5zdC4kaW5wdXQgPSAkaW5wdXQ7CgoJCQlpZiAoby5hbHRGaWVsZCkgewoJCQkJdHBfaW5zdC4kYWx0SW5wdXQgPSAkKG8uYWx0RmllbGQpLmNzcyh7CgkJCQkJY3Vyc29yOiAncG9pbnRlcicKCQkJCX0pLmZvY3VzKGZ1bmN0aW9uKCkgewoJCQkJCSRpbnB1dC50cmlnZ2VyKCJmb2N1cyIpOwoJCQkJfSk7CgkJCX0KCgkJCWlmICh0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlID09PSAwIHx8IHRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGVUaW1lID09PSAwKSB7CgkJCQl0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlID0gbmV3IERhdGUoKTsKCQkJfQoJCQlpZiAodHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSA9PT0gMCB8fCB0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZSA9PT0gMCkgewoJCQkJdHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSA9IG5ldyBEYXRlKCk7CgkJCX0KCgkJCS8vIGRhdGVwaWNrZXIgbmVlZHMgbWluRGF0ZS9tYXhEYXRlLCB0aW1lcGlja2VyIG5lZWRzIG1pbkRhdGVUaW1lL21heERhdGVUaW1lLi4KCQkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGUgIT09IHVuZGVmaW5lZCAmJiB0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlIGluc3RhbmNlb2YgRGF0ZSkgewoJCQkJdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUgPSBuZXcgRGF0ZSh0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlLmdldFRpbWUoKSk7CgkJCX0KCQkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGVUaW1lICE9PSB1bmRlZmluZWQgJiYgdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUgaW5zdGFuY2VvZiBEYXRlKSB7CgkJCQl0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlID0gbmV3IERhdGUodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUuZ2V0VGltZSgpKTsKCQkJfQoJCQlpZiAodHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZSAhPT0gdW5kZWZpbmVkICYmIHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUgaW5zdGFuY2VvZiBEYXRlKSB7CgkJCQl0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZSA9IG5ldyBEYXRlKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUuZ2V0VGltZSgpKTsKCQkJfQoJCQlpZiAodHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWUgIT09IHVuZGVmaW5lZCAmJiB0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZSBpbnN0YW5jZW9mIERhdGUpIHsKCQkJCXRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUgPSBuZXcgRGF0ZSh0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZS5nZXRUaW1lKCkpOwoJCQl9CgkJCXRwX2luc3QuJGlucHV0LmJpbmQoJ2ZvY3VzJywgZnVuY3Rpb24oKSB7CgkJCQl0cF9pbnN0Ll9vbkZvY3VzKCk7CgkJCX0pOwoKCQkJcmV0dXJuIHRwX2luc3Q7CgkJfSwKCgkJLyoKCQkqIGFkZCBvdXIgc2xpZGVycyB0byB0aGUgY2FsZW5kYXIKCQkqLwoJCV9hZGRUaW1lUGlja2VyOiBmdW5jdGlvbihkcF9pbnN0KSB7CgkJCXZhciBjdXJyRFQgPSAodGhpcy4kYWx0SW5wdXQgJiYgdGhpcy5fZGVmYXVsdHMuYWx0RmllbGRUaW1lT25seSkgPyB0aGlzLiRpbnB1dC52YWwoKSArICcgJyArIHRoaXMuJGFsdElucHV0LnZhbCgpIDogdGhpcy4kaW5wdXQudmFsKCk7CgoJCQl0aGlzLnRpbWVEZWZpbmVkID0gdGhpcy5fcGFyc2VUaW1lKGN1cnJEVCk7CgkJCXRoaXMuX2xpbWl0TWluTWF4RGF0ZVRpbWUoZHBfaW5zdCwgZmFsc2UpOwoJCQl0aGlzLl9pbmplY3RUaW1lUGlja2VyKCk7CgkJfSwKCgkJLyoKCQkqIHBhcnNlIHRoZSB0aW1lIHN0cmluZyBmcm9tIGlucHV0IHZhbHVlIG9yIF9zZXRUaW1lCgkJKi8KCQlfcGFyc2VUaW1lOiBmdW5jdGlvbih0aW1lU3RyaW5nLCB3aXRoRGF0ZSkgewoJCQlpZiAoIXRoaXMuaW5zdCkgewoJCQkJdGhpcy5pbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KHRoaXMuJGlucHV0WzBdKTsKCQkJfQoKCQkJaWYgKHdpdGhEYXRlIHx8ICF0aGlzLl9kZWZhdWx0cy50aW1lT25seSkgewoJCQkJdmFyIGRwX2RhdGVGb3JtYXQgPSAkLmRhdGVwaWNrZXIuX2dldCh0aGlzLmluc3QsICdkYXRlRm9ybWF0Jyk7CgkJCQl0cnkgewoJCQkJCXZhciBwYXJzZVJlcyA9IHBhcnNlRGF0ZVRpbWVJbnRlcm5hbChkcF9kYXRlRm9ybWF0LCB0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0LCB0aW1lU3RyaW5nLCAkLmRhdGVwaWNrZXIuX2dldEZvcm1hdENvbmZpZyh0aGlzLmluc3QpLCB0aGlzLl9kZWZhdWx0cyk7CgkJCQkJaWYgKCFwYXJzZVJlcy50aW1lT2JqKSB7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgkJCQkJJC5leHRlbmQodGhpcywgcGFyc2VSZXMudGltZU9iaik7CgkJCQl9IGNhdGNoIChlcnIpIHsKCQkJCQkkLmRhdGVwaWNrZXIubG9nKCJFcnJvciBwYXJzaW5nIHRoZSBkYXRlL3RpbWUgc3RyaW5nOiAiICsgZXJyICsKCQkJCQkJCQkJIlxuZGF0ZS90aW1lIHN0cmluZyA9ICIgKyB0aW1lU3RyaW5nICsKCQkJCQkJCQkJIlxudGltZUZvcm1hdCA9ICIgKyB0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0ICsKCQkJCQkJCQkJIlxuZGF0ZUZvcm1hdCA9ICIgKyBkcF9kYXRlRm9ybWF0KTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCQlyZXR1cm4gdHJ1ZTsKCQkJfSBlbHNlIHsKCQkJCXZhciB0aW1lT2JqID0gJC5kYXRlcGlja2VyLnBhcnNlVGltZSh0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0LCB0aW1lU3RyaW5nLCB0aGlzLl9kZWZhdWx0cyk7CgkJCQlpZiAoIXRpbWVPYmopIHsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCQkkLmV4dGVuZCh0aGlzLCB0aW1lT2JqKTsKCQkJCXJldHVybiB0cnVlOwoJCQl9CgkJfSwKCgkJLyoKCQkqIGdlbmVyYXRlIGFuZCBpbmplY3QgaHRtbCBmb3IgdGltZXBpY2tlciBpbnRvIHVpIGRhdGVwaWNrZXIKCQkqLwoJCV9pbmplY3RUaW1lUGlja2VyOiBmdW5jdGlvbigpIHsKCQkJdmFyICRkcCA9IHRoaXMuaW5zdC5kcERpdiwKCQkJCW8gPSB0aGlzLmluc3Quc2V0dGluZ3MsCgkJCQl0cF9pbnN0ID0gdGhpcywKCQkJCWxpdGVtID0gJycsCgkJCQl1aXRlbSA9ICcnLAoJCQkJbWF4ID0ge30sCgkJCQlncmlkU2l6ZSA9IHt9LAoJCQkJc2l6ZSA9IG51bGw7CgoJCQkvLyBQcmV2ZW50IGRpc3BsYXlpbmcgdHdpY2UKCQkJaWYgKCRkcC5maW5kKCJkaXYudWktdGltZXBpY2tlci1kaXYiKS5sZW5ndGggPT09IDAgJiYgby5zaG93VGltZXBpY2tlcikgewoJCQkJdmFyIG5vRGlzcGxheSA9ICcgc3R5bGU9ImRpc3BsYXk6bm9uZTsiJywKCQkJCQlodG1sID0gJzxkaXYgY2xhc3M9InVpLXRpbWVwaWNrZXItZGl2JysgKG8uaXNSVEw/ICcgdWktdGltZXBpY2tlci1ydGwnIDogJycpICsnIj48ZGw+JyArICc8ZHQgY2xhc3M9InVpX3RwaWNrZXJfdGltZV9sYWJlbCInICsgKChvLnNob3dUaW1lKSA/ICcnIDogbm9EaXNwbGF5KSArICc+JyArIG8udGltZVRleHQgKyAnPC9kdD4nICsgCgkJCQkJCQkJJzxkZCBjbGFzcz0idWlfdHBpY2tlcl90aW1lIicgKyAoKG8uc2hvd1RpbWUpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2RkPic7CgoJCQkJLy8gQ3JlYXRlIHRoZSBtYXJrdXAKCQkJCWZvcih2YXIgaT0wLGw9dGhpcy51bml0cy5sZW5ndGg7IGk8bDsgaSsrKXsKCQkJCQlsaXRlbSA9IHRoaXMudW5pdHNbaV07CgkJCQkJdWl0ZW0gPSBsaXRlbS5zdWJzdHIoMCwxKS50b1VwcGVyQ2FzZSgpICsgbGl0ZW0uc3Vic3RyKDEpOwoJCQkJCS8vIEFkZGVkIGJ5IFBldGVyIE1lZGVpcm9zOgoJCQkJCS8vIC0gRmlndXJlIG91dCB3aGF0IHRoZSBob3VyL21pbnV0ZS9zZWNvbmQgbWF4IHNob3VsZCBiZSBiYXNlZCBvbiB0aGUgc3RlcCB2YWx1ZXMuCgkJCQkJLy8gLSBFeGFtcGxlOiBpZiBzdGVwTWludXRlIGlzIDE1LCB0aGVuIG1pbk1heCBpcyA0NS4KCQkJCQltYXhbbGl0ZW1dID0gcGFyc2VJbnQoKG9bbGl0ZW0rJ01heCddIC0gKChvW2xpdGVtKydNYXgnXSAtIG9bbGl0ZW0rJ01pbiddKSAlIG9bJ3N0ZXAnK3VpdGVtXSkpLCAxMCk7CgkJCQkJZ3JpZFNpemVbbGl0ZW1dID0gMDsKCgkJCQkJaHRtbCArPSAnPGR0IGNsYXNzPSJ1aV90cGlja2VyXycrIGxpdGVtICsnX2xhYmVsIicgKyAoKG9bJ3Nob3cnK3VpdGVtXSkgPyAnJyA6IG5vRGlzcGxheSkgKyAnPicgKyBvW2xpdGVtICsnVGV4dCddICsgJzwvZHQ+JyArIAoJCQkJCQkJCSc8ZGQgY2xhc3M9InVpX3RwaWNrZXJfJysgbGl0ZW0gKyciPjxkaXYgY2xhc3M9InVpX3RwaWNrZXJfJysgbGl0ZW0gKydfc2xpZGVyIicgKyAoKG9bJ3Nob3cnK3VpdGVtXSkgPyAnJyA6IG5vRGlzcGxheSkgKyAnPjwvZGl2Pic7CgoJCQkJCWlmIChvWydzaG93Jyt1aXRlbV0gJiYgb1tsaXRlbSsnR3JpZCddID4gMCkgewoJCQkJCQlodG1sICs9ICc8ZGl2IHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDFweCI+PHRhYmxlIGNsYXNzPSJ1aS10cGlja2VyLWdyaWQtbGFiZWwiPjx0cj4nOwoKCQkJCQkJaWYobGl0ZW0gPT0gJ2hvdXInKXsKCQkJCQkJCWZvciAodmFyIGggPSBvW2xpdGVtKydNaW4nXTsgaCA8PSBtYXhbbGl0ZW1dOyBoICs9IHBhcnNlSW50KG9bbGl0ZW0rJ0dyaWQnXSwgMTApKSB7CgkJCQkJCQkJZ3JpZFNpemVbbGl0ZW1dKys7CgkJCQkJCQkJdmFyIHRtcGggPSAkLmRhdGVwaWNrZXIuZm9ybWF0VGltZSh1c2VBbXBtKG8ucGlja2VyVGltZUZvcm1hdCB8fCBvLnRpbWVGb3JtYXQpPyAnaGh0JzonSEgnLCB7aG91cjpofSwgbyk7CQkJCQkJCQkJCgkJCQkJCQkJaHRtbCArPSAnPHRkIGRhdGEtZm9yPSInK2xpdGVtKyciPicgKyB0bXBoICsgJzwvdGQ+JzsKCQkJCQkJCX0KCQkJCQkJfQoJCQkJCQllbHNlewoJCQkJCQkJZm9yICh2YXIgbSA9IG9bbGl0ZW0rJ01pbiddOyBtIDw9IG1heFtsaXRlbV07IG0gKz0gcGFyc2VJbnQob1tsaXRlbSsnR3JpZCddLCAxMCkpIHsKCQkJCQkJCQlncmlkU2l6ZVtsaXRlbV0rKzsKCQkJCQkJCQlodG1sICs9ICc8dGQgZGF0YS1mb3I9IicrbGl0ZW0rJyI+JyArICgobSA8IDEwKSA/ICcwJyA6ICcnKSArIG0gKyAnPC90ZD4nOwoJCQkJCQkJfQoJCQkJCQl9CgoJCQkJCQlodG1sICs9ICc8L3RyPjwvdGFibGU+PC9kaXY+JzsKCQkJCQl9CgkJCQkJaHRtbCArPSAnPC9kZD4nOwoJCQkJfQoJCQkJCgkJCQkvLyBUaW1lem9uZQoJCQkJaHRtbCArPSAnPGR0IGNsYXNzPSJ1aV90cGlja2VyX3RpbWV6b25lX2xhYmVsIicgKyAoKG8uc2hvd1RpbWV6b25lKSA/ICcnIDogbm9EaXNwbGF5KSArICc+JyArIG8udGltZXpvbmVUZXh0ICsgJzwvZHQ+JzsKCQkJCWh0bWwgKz0gJzxkZCBjbGFzcz0idWlfdHBpY2tlcl90aW1lem9uZSIgJyArICgoby5zaG93VGltZXpvbmUpID8gJycgOiBub0Rpc3BsYXkpICsgJz48L2RkPic7CgoJCQkJLy8gQ3JlYXRlIHRoZSBlbGVtZW50cyBmcm9tIHN0cmluZwoJCQkJaHRtbCArPSAnPC9kbD48L2Rpdj4nOwoJCQkJdmFyICR0cCA9ICQoaHRtbCk7CgoJCQkJLy8gaWYgd2Ugb25seSB3YW50IHRpbWUgcGlja2VyLi4uCgkJCQlpZiAoby50aW1lT25seSA9PT0gdHJ1ZSkgewoJCQkJCSR0cC5wcmVwZW5kKCc8ZGl2IGNsYXNzPSJ1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItYWxsIj4nICsgJzxkaXYgY2xhc3M9InVpLWRhdGVwaWNrZXItdGl0bGUiPicgKyBvLnRpbWVPbmx5VGl0bGUgKyAnPC9kaXY+JyArICc8L2Rpdj4nKTsKCQkJCQkkZHAuZmluZCgnLnVpLWRhdGVwaWNrZXItaGVhZGVyLCAudWktZGF0ZXBpY2tlci1jYWxlbmRhcicpLmhpZGUoKTsKCQkJCX0KCQkJCQoJCQkJLy8gYWRkIHNsaWRlcnMsIGFkanVzdCBncmlkcywgYWRkIGV2ZW50cwoJCQkJZm9yKHZhciBpPTAsbD10cF9pbnN0LnVuaXRzLmxlbmd0aDsgaTxsOyBpKyspewoJCQkJCWxpdGVtID0gdHBfaW5zdC51bml0c1tpXTsKCQkJCQl1aXRlbSA9IGxpdGVtLnN1YnN0cigwLDEpLnRvVXBwZXJDYXNlKCkgKyBsaXRlbS5zdWJzdHIoMSk7CgkJCQkJCgkJCQkJLy8gYWRkIHRoZSBzbGlkZXIKCQkJCQl0cF9pbnN0W2xpdGVtKydfc2xpZGVyJ10gPSB0cF9pbnN0LmNvbnRyb2wuY3JlYXRlKHRwX2luc3QsICR0cC5maW5kKCcudWlfdHBpY2tlcl8nK2xpdGVtKydfc2xpZGVyJyksIGxpdGVtLCB0cF9pbnN0W2xpdGVtXSwgb1tsaXRlbSsnTWluJ10sIG1heFtsaXRlbV0sIG9bJ3N0ZXAnK3VpdGVtXSk7CgoJCQkJCS8vIGFkanVzdCB0aGUgZ3JpZCBhbmQgYWRkIGNsaWNrIGV2ZW50CgkJCQkJaWYgKG9bJ3Nob3cnK3VpdGVtXSAmJiBvW2xpdGVtKydHcmlkJ10gPiAwKSB7CgkJCQkJCXNpemUgPSAxMDAgKiBncmlkU2l6ZVtsaXRlbV0gKiBvW2xpdGVtKydHcmlkJ10gLyAobWF4W2xpdGVtXSAtIG9bbGl0ZW0rJ01pbiddKTsKCQkJCQkJJHRwLmZpbmQoJy51aV90cGlja2VyXycrbGl0ZW0rJyB0YWJsZScpLmNzcyh7CgkJCQkJCQl3aWR0aDogc2l6ZSArICIlIiwKCQkJCQkJCW1hcmdpbkxlZnQ6IG8uaXNSVEw/ICcwJyA6ICgoc2l6ZSAvICgtMiAqIGdyaWRTaXplW2xpdGVtXSkpICsgIiUiKSwKCQkJCQkJCW1hcmdpblJpZ2h0OiBvLmlzUlRMPyAoKHNpemUgLyAoLTIgKiBncmlkU2l6ZVtsaXRlbV0pKSArICIlIikgOiAnMCcsCgkJCQkJCQlib3JkZXJDb2xsYXBzZTogJ2NvbGxhcHNlJwoJCQkJCQl9KS5maW5kKCJ0ZCIpLmNsaWNrKGZ1bmN0aW9uKGUpewoJCQkJCQkJCXZhciAkdCA9ICQodGhpcyksCgkJCQkJCQkJCWggPSAkdC5odG1sKCksCgkJCQkJCQkJCW4gPSBwYXJzZUludChoLnJlcGxhY2UoL1teMC05XS9nKSwxMCksCgkJCQkJCQkJCWFwID0gaC5yZXBsYWNlKC9bXmFwbV0vaWcpLAoJCQkJCQkJCQlmID0gJHQuZGF0YSgnZm9yJyk7IC8vIGxvc2VzIHNjb3BlLCBzbyB3ZSB1c2UgZGF0YS1mb3IKCgkJCQkJCQkJaWYoZiA9PSAnaG91cicpewoJCQkJCQkJCQlpZihhcC5pbmRleE9mKCdwJykgIT09IC0xICYmIG4gPCAxMil7CgkJCQkJCQkJCQluICs9IDEyOwoJCQkJCQkJCQl9CgkJCQkJCQkJCWVsc2V7CgkJCQkJCQkJCQlpZihhcC5pbmRleE9mKCdhJykgIT09IC0xICYmIG4gPT09IDEyKXsKCQkJCQkJCQkJCQluID0gMDsKCQkJCQkJCQkJCX0KCQkJCQkJCQkJfQoJCQkJCQkJCX0KCQkJCQkJCQkKCQkJCQkJCQl0cF9pbnN0LmNvbnRyb2wudmFsdWUodHBfaW5zdCwgdHBfaW5zdFtmKydfc2xpZGVyJ10sIGxpdGVtLCBuKTsKCgkJCQkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7CgkJCQkJCQkJdHBfaW5zdC5fb25TZWxlY3RIYW5kbGVyKCk7CgkJCQkJCQl9KQoJCQkJCQkuY3NzKHsKCQkJCQkJCQljdXJzb3I6ICdwb2ludGVyJywKCQkJCQkJCQl3aWR0aDogKDEwMCAvIGdyaWRTaXplW2xpdGVtXSkgKyAnJScsCgkJCQkJCQkJdGV4dEFsaWduOiAnY2VudGVyJywKCQkJCQkJCQlvdmVyZmxvdzogJ2hpZGRlbicKCQkJCQkJCX0pOwoJCQkJCX0gLy8gZW5kIGlmIGdyaWQgPiAwCgkJCQl9IC8vIGVuZCBmb3IgbG9vcAoKCQkJCS8vIEFkZCB0aW1lem9uZSBvcHRpb25zCgkJCQl0aGlzLnRpbWV6b25lX3NlbGVjdCA9ICR0cC5maW5kKCcudWlfdHBpY2tlcl90aW1lem9uZScpLmFwcGVuZCgnPHNlbGVjdD48L3NlbGVjdD4nKS5maW5kKCJzZWxlY3QiKTsKCQkJCSQuZm4uYXBwZW5kLmFwcGx5KHRoaXMudGltZXpvbmVfc2VsZWN0LAoJCQkJJC5tYXAoby50aW1lem9uZUxpc3QsIGZ1bmN0aW9uKHZhbCwgaWR4KSB7CgkJCQkJcmV0dXJuICQoIjxvcHRpb24gLz4iKS52YWwodHlwZW9mIHZhbCA9PSAib2JqZWN0IiA/IHZhbC52YWx1ZSA6IHZhbCkudGV4dCh0eXBlb2YgdmFsID09ICJvYmplY3QiID8gdmFsLmxhYmVsIDogdmFsKTsKCQkJCX0pKTsKCQkJCWlmICh0eXBlb2YodGhpcy50aW1lem9uZSkgIT0gInVuZGVmaW5lZCIgJiYgdGhpcy50aW1lem9uZSAhPT0gbnVsbCAmJiB0aGlzLnRpbWV6b25lICE9PSAiIikgewoJCQkJCXZhciBsb2NhbF9kYXRlID0gbmV3IERhdGUodGhpcy5pbnN0LnNlbGVjdGVkWWVhciwgdGhpcy5pbnN0LnNlbGVjdGVkTW9udGgsIHRoaXMuaW5zdC5zZWxlY3RlZERheSwgMTIpOwoJCQkJCXZhciBsb2NhbF90aW1lem9uZSA9ICQudGltZXBpY2tlci50aW1lWm9uZU9mZnNldFN0cmluZyhsb2NhbF9kYXRlKTsKCQkJCQlpZiAobG9jYWxfdGltZXpvbmUgPT0gdGhpcy50aW1lem9uZSkgewoJCQkJCQlzZWxlY3RMb2NhbFRpbWVab25lKHRwX2luc3QpOwoJCQkJCX0gZWxzZSB7CgkJCQkJCXRoaXMudGltZXpvbmVfc2VsZWN0LnZhbCh0aGlzLnRpbWV6b25lKTsKCQkJCQl9CgkJCQl9IGVsc2UgewoJCQkJCWlmICh0eXBlb2YodGhpcy5ob3VyKSAhPSAidW5kZWZpbmVkIiAmJiB0aGlzLmhvdXIgIT09IG51bGwgJiYgdGhpcy5ob3VyICE9PSAiIikgewoJCQkJCQl0aGlzLnRpbWV6b25lX3NlbGVjdC52YWwoby5kZWZhdWx0VGltZXpvbmUpOwoJCQkJCX0gZWxzZSB7CgkJCQkJCXNlbGVjdExvY2FsVGltZVpvbmUodHBfaW5zdCk7CgkJCQkJfQoJCQkJfQoJCQkJdGhpcy50aW1lem9uZV9zZWxlY3QuY2hhbmdlKGZ1bmN0aW9uKCkgewoJCQkJCXRwX2luc3QuX2RlZmF1bHRzLnVzZUxvY2FsVGltZXpvbmUgPSBmYWxzZTsKCQkJCQl0cF9pbnN0Ll9vblRpbWVDaGFuZ2UoKTsKCQkJCX0pOwoJCQkJLy8gRW5kIHRpbWV6b25lIG9wdGlvbnMKCQkJCQoJCQkJLy8gaW5qZWN0IHRpbWVwaWNrZXIgaW50byBkYXRlcGlja2VyCgkJCQl2YXIgJGJ1dHRvblBhbmVsID0gJGRwLmZpbmQoJy51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUnKTsKCQkJCWlmICgkYnV0dG9uUGFuZWwubGVuZ3RoKSB7CgkJCQkJJGJ1dHRvblBhbmVsLmJlZm9yZSgkdHApOwoJCQkJfSBlbHNlIHsKCQkJCQkkZHAuYXBwZW5kKCR0cCk7CgkJCQl9CgoJCQkJdGhpcy4kdGltZU9iaiA9ICR0cC5maW5kKCcudWlfdHBpY2tlcl90aW1lJyk7CgoJCQkJaWYgKHRoaXMuaW5zdCAhPT0gbnVsbCkgewoJCQkJCXZhciB0aW1lRGVmaW5lZCA9IHRoaXMudGltZURlZmluZWQ7CgkJCQkJdGhpcy5fb25UaW1lQ2hhbmdlKCk7CgkJCQkJdGhpcy50aW1lRGVmaW5lZCA9IHRpbWVEZWZpbmVkOwoJCQkJfQoKCQkJCS8vIHNsaWRlQWNjZXNzIGludGVncmF0aW9uOiBodHRwOi8vdHJlbnRyaWNoYXJkc29uLmNvbS8yMDExLzExLzExL2pxdWVyeS11aS1zbGlkZXJzLWFuZC10b3VjaC1hY2Nlc3NpYmlsaXR5LwoJCQkJaWYgKHRoaXMuX2RlZmF1bHRzLmFkZFNsaWRlckFjY2VzcykgewoJCQkJCXZhciBzbGlkZXJBY2Nlc3NBcmdzID0gdGhpcy5fZGVmYXVsdHMuc2xpZGVyQWNjZXNzQXJncywKCQkJCQkJcnRsID0gdGhpcy5fZGVmYXVsdHMuaXNSVEw7CgkJCQkJc2xpZGVyQWNjZXNzQXJncy5pc1JUTCA9IHJ0bDsKCQkJCQkJCgkJCQkJc2V0VGltZW91dChmdW5jdGlvbigpIHsgLy8gZml4IGZvciBpbmxpbmUgbW9kZQoJCQkJCQlpZiAoJHRwLmZpbmQoJy51aS1zbGlkZXItYWNjZXNzJykubGVuZ3RoID09PSAwKSB7CgkJCQkJCQkkdHAuZmluZCgnLnVpLXNsaWRlcjp2aXNpYmxlJykuc2xpZGVyQWNjZXNzKHNsaWRlckFjY2Vzc0FyZ3MpOwoKCQkJCQkJCS8vIGZpeCBhbnkgZ3JpZHMgc2luY2Ugc2xpZGVycyBhcmUgc2hvcnRlcgoJCQkJCQkJdmFyIHNsaWRlckFjY2Vzc1dpZHRoID0gJHRwLmZpbmQoJy51aS1zbGlkZXItYWNjZXNzOmVxKDApJykub3V0ZXJXaWR0aCh0cnVlKTsKCQkJCQkJCWlmIChzbGlkZXJBY2Nlc3NXaWR0aCkgewoJCQkJCQkJCSR0cC5maW5kKCd0YWJsZTp2aXNpYmxlJykuZWFjaChmdW5jdGlvbigpIHsKCQkJCQkJCQkJdmFyICRnID0gJCh0aGlzKSwKCQkJCQkJCQkJCW9sZFdpZHRoID0gJGcub3V0ZXJXaWR0aCgpLAoJCQkJCQkJCQkJb2xkTWFyZ2luTGVmdCA9ICRnLmNzcyhydGw/ICdtYXJnaW5SaWdodCc6J21hcmdpbkxlZnQnKS50b1N0cmluZygpLnJlcGxhY2UoJyUnLCAnJyksCgkJCQkJCQkJCQluZXdXaWR0aCA9IG9sZFdpZHRoIC0gc2xpZGVyQWNjZXNzV2lkdGgsCgkJCQkJCQkJCQluZXdNYXJnaW5MZWZ0ID0gKChvbGRNYXJnaW5MZWZ0ICogbmV3V2lkdGgpIC8gb2xkV2lkdGgpICsgJyUnLAoJCQkJCQkJCQkJY3NzID0geyB3aWR0aDogbmV3V2lkdGgsIG1hcmdpblJpZ2h0OiAwLCBtYXJnaW5MZWZ0OiAwIH07CgkJCQkJCQkJCWNzc1tydGw/ICdtYXJnaW5SaWdodCc6J21hcmdpbkxlZnQnXSA9IG5ld01hcmdpbkxlZnQ7CgkJCQkJCQkJCSRnLmNzcyhjc3MpOwoJCQkJCQkJCX0pOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfSwgMTApOwoJCQkJfQoJCQkJLy8gZW5kIHNsaWRlQWNjZXNzIGludGVncmF0aW9uCgoJCQl9CgkJfSwKCgkJLyoKCQkqIFRoaXMgZnVuY3Rpb24gdHJpZXMgdG8gbGltaXQgdGhlIGFiaWxpdHkgdG8gZ28gb3V0c2lkZSB0aGUKCQkqIG1pbi9tYXggZGF0ZSByYW5nZQoJCSovCgkJX2xpbWl0TWluTWF4RGF0ZVRpbWU6IGZ1bmN0aW9uKGRwX2luc3QsIGFkanVzdFNsaWRlcnMpIHsKCQkJdmFyIG8gPSB0aGlzLl9kZWZhdWx0cywKCQkJCWRwX2RhdGUgPSBuZXcgRGF0ZShkcF9pbnN0LnNlbGVjdGVkWWVhciwgZHBfaW5zdC5zZWxlY3RlZE1vbnRoLCBkcF9pbnN0LnNlbGVjdGVkRGF5KTsKCgkJCWlmICghdGhpcy5fZGVmYXVsdHMuc2hvd1RpbWVwaWNrZXIpIHsKCQkJCXJldHVybjsKCQkJfSAvLyBObyB0aW1lIHNvIG5vdGhpbmcgdG8gY2hlY2sgaGVyZQoKCQkJaWYgKCQuZGF0ZXBpY2tlci5fZ2V0KGRwX2luc3QsICdtaW5EYXRlVGltZScpICE9PSBudWxsICYmICQuZGF0ZXBpY2tlci5fZ2V0KGRwX2luc3QsICdtaW5EYXRlVGltZScpICE9PSB1bmRlZmluZWQgJiYgZHBfZGF0ZSkgewoJCQkJdmFyIG1pbkRhdGVUaW1lID0gJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21pbkRhdGVUaW1lJyksCgkJCQkJbWluRGF0ZVRpbWVEYXRlID0gbmV3IERhdGUobWluRGF0ZVRpbWUuZ2V0RnVsbFllYXIoKSwgbWluRGF0ZVRpbWUuZ2V0TW9udGgoKSwgbWluRGF0ZVRpbWUuZ2V0RGF0ZSgpLCAwLCAwLCAwLCAwKTsKCgkJCQlpZiAodGhpcy5ob3VyTWluT3JpZ2luYWwgPT09IG51bGwgfHwgdGhpcy5taW51dGVNaW5PcmlnaW5hbCA9PT0gbnVsbCB8fCB0aGlzLnNlY29uZE1pbk9yaWdpbmFsID09PSBudWxsIHx8IHRoaXMubWlsbGlzZWNNaW5PcmlnaW5hbCA9PT0gbnVsbCkgewoJCQkJCXRoaXMuaG91ck1pbk9yaWdpbmFsID0gby5ob3VyTWluOwoJCQkJCXRoaXMubWludXRlTWluT3JpZ2luYWwgPSBvLm1pbnV0ZU1pbjsKCQkJCQl0aGlzLnNlY29uZE1pbk9yaWdpbmFsID0gby5zZWNvbmRNaW47CgkJCQkJdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsID0gby5taWxsaXNlY01pbjsKCQkJCX0KCgkJCQlpZiAoZHBfaW5zdC5zZXR0aW5ncy50aW1lT25seSB8fCBtaW5EYXRlVGltZURhdGUuZ2V0VGltZSgpID09IGRwX2RhdGUuZ2V0VGltZSgpKSB7CgkJCQkJdGhpcy5fZGVmYXVsdHMuaG91ck1pbiA9IG1pbkRhdGVUaW1lLmdldEhvdXJzKCk7CgkJCQkJaWYgKHRoaXMuaG91ciA8PSB0aGlzLl9kZWZhdWx0cy5ob3VyTWluKSB7CgkJCQkJCXRoaXMuaG91ciA9IHRoaXMuX2RlZmF1bHRzLmhvdXJNaW47CgkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbiA9IG1pbkRhdGVUaW1lLmdldE1pbnV0ZXMoKTsKCQkJCQkJaWYgKHRoaXMubWludXRlIDw9IHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbikgewoJCQkJCQkJdGhpcy5taW51dGUgPSB0aGlzLl9kZWZhdWx0cy5taW51dGVNaW47CgkJCQkJCQl0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4gPSBtaW5EYXRlVGltZS5nZXRTZWNvbmRzKCk7CgkJCQkJCQlpZiAodGhpcy5zZWNvbmQgPD0gdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluKSB7CgkJCQkJCQkJdGhpcy5zZWNvbmQgPSB0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW47CgkJCQkJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW4gPSBtaW5EYXRlVGltZS5nZXRNaWxsaXNlY29uZHMoKTsKCQkJCQkJCX0gZWxzZSB7CgkJCQkJCQkJaWYgKHRoaXMubWlsbGlzZWMgPCB0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbikgewoJCQkJCQkJCQl0aGlzLm1pbGxpc2VjID0gdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW47CgkJCQkJCQkJfQoJCQkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluID0gdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsOwoJCQkJCQkJfQoJCQkJCQl9IGVsc2UgewoJCQkJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluID0gdGhpcy5zZWNvbmRNaW5PcmlnaW5hbDsKCQkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluID0gdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsOwoJCQkJCQl9CgkJCQkJfSBlbHNlIHsKCQkJCQkJdGhpcy5fZGVmYXVsdHMubWludXRlTWluID0gdGhpcy5taW51dGVNaW5PcmlnaW5hbDsKCQkJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluID0gdGhpcy5zZWNvbmRNaW5PcmlnaW5hbDsKCQkJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW4gPSB0aGlzLm1pbGxpc2VjTWluT3JpZ2luYWw7CgkJCQkJfQoJCQkJfSBlbHNlIHsKCQkJCQl0aGlzLl9kZWZhdWx0cy5ob3VyTWluID0gdGhpcy5ob3VyTWluT3JpZ2luYWw7CgkJCQkJdGhpcy5fZGVmYXVsdHMubWludXRlTWluID0gdGhpcy5taW51dGVNaW5PcmlnaW5hbDsKCQkJCQl0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4gPSB0aGlzLnNlY29uZE1pbk9yaWdpbmFsOwoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluID0gdGhpcy5taWxsaXNlY01pbk9yaWdpbmFsOwoJCQkJfQoJCQl9CgoJCQlpZiAoJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21heERhdGVUaW1lJykgIT09IG51bGwgJiYgJC5kYXRlcGlja2VyLl9nZXQoZHBfaW5zdCwgJ21heERhdGVUaW1lJykgIT09IHVuZGVmaW5lZCAmJiBkcF9kYXRlKSB7CgkJCQl2YXIgbWF4RGF0ZVRpbWUgPSAkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAnbWF4RGF0ZVRpbWUnKSwKCQkJCQltYXhEYXRlVGltZURhdGUgPSBuZXcgRGF0ZShtYXhEYXRlVGltZS5nZXRGdWxsWWVhcigpLCBtYXhEYXRlVGltZS5nZXRNb250aCgpLCBtYXhEYXRlVGltZS5nZXREYXRlKCksIDAsIDAsIDAsIDApOwoKCQkJCWlmICh0aGlzLmhvdXJNYXhPcmlnaW5hbCA9PT0gbnVsbCB8fCB0aGlzLm1pbnV0ZU1heE9yaWdpbmFsID09PSBudWxsIHx8IHRoaXMuc2Vjb25kTWF4T3JpZ2luYWwgPT09IG51bGwpIHsKCQkJCQl0aGlzLmhvdXJNYXhPcmlnaW5hbCA9IG8uaG91ck1heDsKCQkJCQl0aGlzLm1pbnV0ZU1heE9yaWdpbmFsID0gby5taW51dGVNYXg7CgkJCQkJdGhpcy5zZWNvbmRNYXhPcmlnaW5hbCA9IG8uc2Vjb25kTWF4OwoJCQkJCXRoaXMubWlsbGlzZWNNYXhPcmlnaW5hbCA9IG8ubWlsbGlzZWNNYXg7CgkJCQl9CgoJCQkJaWYgKGRwX2luc3Quc2V0dGluZ3MudGltZU9ubHkgfHwgbWF4RGF0ZVRpbWVEYXRlLmdldFRpbWUoKSA9PSBkcF9kYXRlLmdldFRpbWUoKSkgewoJCQkJCXRoaXMuX2RlZmF1bHRzLmhvdXJNYXggPSBtYXhEYXRlVGltZS5nZXRIb3VycygpOwoJCQkJCWlmICh0aGlzLmhvdXIgPj0gdGhpcy5fZGVmYXVsdHMuaG91ck1heCkgewoJCQkJCQl0aGlzLmhvdXIgPSB0aGlzLl9kZWZhdWx0cy5ob3VyTWF4OwoJCQkJCQl0aGlzLl9kZWZhdWx0cy5taW51dGVNYXggPSBtYXhEYXRlVGltZS5nZXRNaW51dGVzKCk7CgkJCQkJCWlmICh0aGlzLm1pbnV0ZSA+PSB0aGlzLl9kZWZhdWx0cy5taW51dGVNYXgpIHsKCQkJCQkJCXRoaXMubWludXRlID0gdGhpcy5fZGVmYXVsdHMubWludXRlTWF4OwoJCQkJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4ID0gbWF4RGF0ZVRpbWUuZ2V0U2Vjb25kcygpOwoJCQkJCQl9IGVsc2UgaWYgKHRoaXMuc2Vjb25kID49IHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heCkgewoJCQkJCQkJdGhpcy5zZWNvbmQgPSB0aGlzLl9kZWZhdWx0cy5zZWNvbmRNYXg7CgkJCQkJCQl0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCA9IG1heERhdGVUaW1lLmdldE1pbGxpc2Vjb25kcygpOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJaWYgKHRoaXMubWlsbGlzZWMgPiB0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCkgewoJCQkJCQkJCXRoaXMubWlsbGlzZWMgPSB0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heDsKCQkJCQkJCX0KCQkJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4ID0gdGhpcy5taWxsaXNlY01heE9yaWdpbmFsOwoJCQkJCQl9CgkJCQkJfSBlbHNlIHsKCQkJCQkJdGhpcy5fZGVmYXVsdHMubWludXRlTWF4ID0gdGhpcy5taW51dGVNYXhPcmlnaW5hbDsKCQkJCQkJdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4ID0gdGhpcy5zZWNvbmRNYXhPcmlnaW5hbDsKCQkJCQkJdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNYXggPSB0aGlzLm1pbGxpc2VjTWF4T3JpZ2luYWw7CgkJCQkJfQoJCQkJfSBlbHNlIHsKCQkJCQl0aGlzLl9kZWZhdWx0cy5ob3VyTWF4ID0gdGhpcy5ob3VyTWF4T3JpZ2luYWw7CgkJCQkJdGhpcy5fZGVmYXVsdHMubWludXRlTWF4ID0gdGhpcy5taW51dGVNYXhPcmlnaW5hbDsKCQkJCQl0aGlzLl9kZWZhdWx0cy5zZWNvbmRNYXggPSB0aGlzLnNlY29uZE1heE9yaWdpbmFsOwoJCQkJCXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4ID0gdGhpcy5taWxsaXNlY01heE9yaWdpbmFsOwoJCQkJfQoJCQl9CgoJCQlpZiAoYWRqdXN0U2xpZGVycyAhPT0gdW5kZWZpbmVkICYmIGFkanVzdFNsaWRlcnMgPT09IHRydWUpIHsKCQkJCXZhciBob3VyTWF4ID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLmhvdXJNYXggLSAoKHRoaXMuX2RlZmF1bHRzLmhvdXJNYXggLSB0aGlzLl9kZWZhdWx0cy5ob3VyTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBIb3VyKSksIDEwKSwKCQkJCQltaW5NYXggPSBwYXJzZUludCgodGhpcy5fZGVmYXVsdHMubWludXRlTWF4IC0gKCh0aGlzLl9kZWZhdWx0cy5taW51dGVNYXggLSB0aGlzLl9kZWZhdWx0cy5taW51dGVNaW4pICUgdGhpcy5fZGVmYXVsdHMuc3RlcE1pbnV0ZSkpLCAxMCksCgkJCQkJc2VjTWF4ID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heCAtICgodGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4IC0gdGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBTZWNvbmQpKSwgMTApLAoJCQkJCW1pbGxpc2VjTWF4ID0gcGFyc2VJbnQoKHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4IC0gKCh0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCAtIHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluKSAlIHRoaXMuX2RlZmF1bHRzLnN0ZXBNaWxsaXNlYykpLCAxMCk7CgoJCQkJaWYgKHRoaXMuaG91cl9zbGlkZXIpIHsKCQkJCQl0aGlzLmNvbnRyb2wub3B0aW9ucyh0aGlzLCB0aGlzLmhvdXJfc2xpZGVyLCAnaG91cicsIHsgbWluOiB0aGlzLl9kZWZhdWx0cy5ob3VyTWluLCBtYXg6IGhvdXJNYXggfSk7CgkJCQkJdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsIHRoaXMuaG91cl9zbGlkZXIsICdob3VyJywgdGhpcy5ob3VyKTsKCQkJCX0KCQkJCWlmICh0aGlzLm1pbnV0ZV9zbGlkZXIpIHsKCQkJCQl0aGlzLmNvbnRyb2wub3B0aW9ucyh0aGlzLCB0aGlzLm1pbnV0ZV9zbGlkZXIsICdtaW51dGUnLCB7IG1pbjogdGhpcy5fZGVmYXVsdHMubWludXRlTWluLCBtYXg6IG1pbk1heCB9KTsKCQkJCQl0aGlzLmNvbnRyb2wudmFsdWUodGhpcywgdGhpcy5taW51dGVfc2xpZGVyLCAnbWludXRlJywgdGhpcy5taW51dGUpOwoJCQkJfQoJCQkJaWYgKHRoaXMuc2Vjb25kX3NsaWRlcikgewoJCQkJCXRoaXMuY29udHJvbC5vcHRpb25zKHRoaXMsIHRoaXMuc2Vjb25kX3NsaWRlciwgJ3NlY29uZCcsIHsgbWluOiB0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4sIG1heDogc2VjTWF4IH0pOwoJCQkJCXRoaXMuY29udHJvbC52YWx1ZSh0aGlzLCB0aGlzLnNlY29uZF9zbGlkZXIsICdzZWNvbmQnLCB0aGlzLnNlY29uZCk7CgkJCQl9CgkJCQlpZiAodGhpcy5taWxsaXNlY19zbGlkZXIpIHsKCQkJCQl0aGlzLmNvbnRyb2wub3B0aW9ucyh0aGlzLCB0aGlzLm1pbGxpc2VjX3NsaWRlciwgJ21pbGxpc2VjJywgeyBtaW46IHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluLCBtYXg6IG1pbGxpc2VjTWF4IH0pOwoJCQkJCXRoaXMuY29udHJvbC52YWx1ZSh0aGlzLCB0aGlzLm1pbGxpc2VjX3NsaWRlciwgJ21pbGxpc2VjJywgdGhpcy5taWxsaXNlYyk7CgkJCQl9CgkJCX0KCgkJfSwKCgkJLyoKCQkqIHdoZW4gYSBzbGlkZXIgbW92ZXMsIHNldCB0aGUgaW50ZXJuYWwgdGltZS4uLgoJCSogb24gdGltZSBjaGFuZ2UgaXMgYWxzbyBjYWxsZWQgd2hlbiB0aGUgdGltZSBpcyB1cGRhdGVkIGluIHRoZSB0ZXh0IGZpZWxkCgkJKi8KCQlfb25UaW1lQ2hhbmdlOiBmdW5jdGlvbigpIHsKCQkJdmFyIGhvdXIgPSAodGhpcy5ob3VyX3NsaWRlcikgPyB0aGlzLmNvbnRyb2wudmFsdWUodGhpcywgdGhpcy5ob3VyX3NsaWRlciwgJ2hvdXInKSA6IGZhbHNlLAoJCQkJbWludXRlID0gKHRoaXMubWludXRlX3NsaWRlcikgPyB0aGlzLmNvbnRyb2wudmFsdWUodGhpcywgdGhpcy5taW51dGVfc2xpZGVyLCAnbWludXRlJykgOiBmYWxzZSwKCQkJCXNlY29uZCA9ICh0aGlzLnNlY29uZF9zbGlkZXIpID8gdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsIHRoaXMuc2Vjb25kX3NsaWRlciwgJ3NlY29uZCcpIDogZmFsc2UsCgkJCQltaWxsaXNlYyA9ICh0aGlzLm1pbGxpc2VjX3NsaWRlcikgPyB0aGlzLmNvbnRyb2wudmFsdWUodGhpcywgdGhpcy5taWxsaXNlY19zbGlkZXIsICdtaWxsaXNlYycpIDogZmFsc2UsCgkJCQl0aW1lem9uZSA9ICh0aGlzLnRpbWV6b25lX3NlbGVjdCkgPyB0aGlzLnRpbWV6b25lX3NlbGVjdC52YWwoKSA6IGZhbHNlLAoJCQkJbyA9IHRoaXMuX2RlZmF1bHRzLAoJCQkJcGlja2VyVGltZUZvcm1hdCA9IG8ucGlja2VyVGltZUZvcm1hdCB8fCBvLnRpbWVGb3JtYXQsCgkJCQlwaWNrZXJUaW1lU3VmZml4ID0gby5waWNrZXJUaW1lU3VmZml4IHx8IG8udGltZVN1ZmZpeDsKCgkJCWlmICh0eXBlb2YoaG91cikgPT0gJ29iamVjdCcpIHsKCQkJCWhvdXIgPSBmYWxzZTsKCQkJfQoJCQlpZiAodHlwZW9mKG1pbnV0ZSkgPT0gJ29iamVjdCcpIHsKCQkJCW1pbnV0ZSA9IGZhbHNlOwoJCQl9CgkJCWlmICh0eXBlb2Yoc2Vjb25kKSA9PSAnb2JqZWN0JykgewoJCQkJc2Vjb25kID0gZmFsc2U7CgkJCX0KCQkJaWYgKHR5cGVvZihtaWxsaXNlYykgPT0gJ29iamVjdCcpIHsKCQkJCW1pbGxpc2VjID0gZmFsc2U7CgkJCX0KCQkJaWYgKHR5cGVvZih0aW1lem9uZSkgPT0gJ29iamVjdCcpIHsKCQkJCXRpbWV6b25lID0gZmFsc2U7CgkJCX0KCgkJCWlmIChob3VyICE9PSBmYWxzZSkgewoJCQkJaG91ciA9IHBhcnNlSW50KGhvdXIsIDEwKTsKCQkJfQoJCQlpZiAobWludXRlICE9PSBmYWxzZSkgewoJCQkJbWludXRlID0gcGFyc2VJbnQobWludXRlLCAxMCk7CgkJCX0KCQkJaWYgKHNlY29uZCAhPT0gZmFsc2UpIHsKCQkJCXNlY29uZCA9IHBhcnNlSW50KHNlY29uZCwgMTApOwoJCQl9CgkJCWlmIChtaWxsaXNlYyAhPT0gZmFsc2UpIHsKCQkJCW1pbGxpc2VjID0gcGFyc2VJbnQobWlsbGlzZWMsIDEwKTsKCQkJfQoKCQkJdmFyIGFtcG0gPSBvW2hvdXIgPCAxMiA/ICdhbU5hbWVzJyA6ICdwbU5hbWVzJ11bMF07CgoJCQkvLyBJZiB0aGUgdXBkYXRlIHdhcyBkb25lIGluIHRoZSBpbnB1dCBmaWVsZCwgdGhlIGlucHV0IGZpZWxkIHNob3VsZCBub3QgYmUgdXBkYXRlZC4KCQkJLy8gSWYgdGhlIHVwZGF0ZSB3YXMgZG9uZSB1c2luZyB0aGUgc2xpZGVycywgdXBkYXRlIHRoZSBpbnB1dCBmaWVsZC4KCQkJdmFyIGhhc0NoYW5nZWQgPSAoaG91ciAhPSB0aGlzLmhvdXIgfHwgbWludXRlICE9IHRoaXMubWludXRlIHx8IHNlY29uZCAhPSB0aGlzLnNlY29uZCB8fCBtaWxsaXNlYyAhPSB0aGlzLm1pbGxpc2VjIAoJCQkJCQkJCXx8ICh0aGlzLmFtcG0ubGVuZ3RoID4gMCAmJiAoaG91ciA8IDEyKSAhPSAoJC5pbkFycmF5KHRoaXMuYW1wbS50b1VwcGVyQ2FzZSgpLCB0aGlzLmFtTmFtZXMpICE9PSAtMSkpIAoJCQkJCQkJCXx8ICgodGhpcy50aW1lem9uZSA9PT0gbnVsbCAmJiB0aW1lem9uZSAhPSB0aGlzLmRlZmF1bHRUaW1lem9uZSkgfHwgKHRoaXMudGltZXpvbmUgIT09IG51bGwgJiYgdGltZXpvbmUgIT0gdGhpcy50aW1lem9uZSkpKTsKCgkJCWlmIChoYXNDaGFuZ2VkKSB7CgoJCQkJaWYgKGhvdXIgIT09IGZhbHNlKSB7CgkJCQkJdGhpcy5ob3VyID0gaG91cjsKCQkJCX0KCQkJCWlmIChtaW51dGUgIT09IGZhbHNlKSB7CgkJCQkJdGhpcy5taW51dGUgPSBtaW51dGU7CgkJCQl9CgkJCQlpZiAoc2Vjb25kICE9PSBmYWxzZSkgewoJCQkJCXRoaXMuc2Vjb25kID0gc2Vjb25kOwoJCQkJfQoJCQkJaWYgKG1pbGxpc2VjICE9PSBmYWxzZSkgewoJCQkJCXRoaXMubWlsbGlzZWMgPSBtaWxsaXNlYzsKCQkJCX0KCQkJCWlmICh0aW1lem9uZSAhPT0gZmFsc2UpIHsKCQkJCQl0aGlzLnRpbWV6b25lID0gdGltZXpvbmU7CgkJCQl9CgoJCQkJaWYgKCF0aGlzLmluc3QpIHsKCQkJCQl0aGlzLmluc3QgPSAkLmRhdGVwaWNrZXIuX2dldEluc3QodGhpcy4kaW5wdXRbMF0pOwoJCQkJfQoKCQkJCXRoaXMuX2xpbWl0TWluTWF4RGF0ZVRpbWUodGhpcy5pbnN0LCB0cnVlKTsKCQkJfQoJCQlpZiAodXNlQW1wbShvLnRpbWVGb3JtYXQpKSB7CgkJCQl0aGlzLmFtcG0gPSBhbXBtOwoJCQl9CgoJCQkvLyBVcGRhdGVzIHRoZSB0aW1lIHdpdGhpbiB0aGUgdGltZXBpY2tlcgoJCQl0aGlzLmZvcm1hdHRlZFRpbWUgPSAkLmRhdGVwaWNrZXIuZm9ybWF0VGltZShvLnRpbWVGb3JtYXQsIHRoaXMsIG8pOwoJCQlpZiAodGhpcy4kdGltZU9iaikgewoJCQkJaWYocGlja2VyVGltZUZvcm1hdCA9PT0gby50aW1lRm9ybWF0KXsKCQkJCQl0aGlzLiR0aW1lT2JqLnRleHQodGhpcy5mb3JtYXR0ZWRUaW1lICsgcGlja2VyVGltZVN1ZmZpeCk7CgkJCQl9CgkJCQllbHNlewoJCQkJCXRoaXMuJHRpbWVPYmoudGV4dCgkLmRhdGVwaWNrZXIuZm9ybWF0VGltZShwaWNrZXJUaW1lRm9ybWF0LCB0aGlzLCBvKSArIHBpY2tlclRpbWVTdWZmaXgpOwoJCQkJfQoJCQl9CgoJCQl0aGlzLnRpbWVEZWZpbmVkID0gdHJ1ZTsKCQkJaWYgKGhhc0NoYW5nZWQpIHsKCQkJCXRoaXMuX3VwZGF0ZURhdGVUaW1lKCk7CgkJCX0KCQl9LAoKCQkvKgoJCSogY2FsbCBjdXN0b20gb25TZWxlY3QuCgkJKiBiaW5kIHRvIHNsaWRlcnMgc2xpZGVzdG9wLCBhbmQgZ3JpZCBjbGljay4KCQkqLwoJCV9vblNlbGVjdEhhbmRsZXI6IGZ1bmN0aW9uKCkgewoJCQl2YXIgb25TZWxlY3QgPSB0aGlzLl9kZWZhdWx0cy5vblNlbGVjdCB8fCB0aGlzLmluc3Quc2V0dGluZ3Mub25TZWxlY3Q7CgkJCXZhciBpbnB1dEVsID0gdGhpcy4kaW5wdXQgPyB0aGlzLiRpbnB1dFswXSA6IG51bGw7CgkJCWlmIChvblNlbGVjdCAmJiBpbnB1dEVsKSB7CgkJCQlvblNlbGVjdC5hcHBseShpbnB1dEVsLCBbdGhpcy5mb3JtYXR0ZWREYXRlVGltZSwgdGhpc10pOwoJCQl9CgkJfSwKCgkJLyoKCQkqIHVwZGF0ZSBvdXIgaW5wdXQgd2l0aCB0aGUgbmV3IGRhdGUgdGltZS4uCgkJKi8KCQlfdXBkYXRlRGF0ZVRpbWU6IGZ1bmN0aW9uKGRwX2luc3QpIHsKCQkJZHBfaW5zdCA9IHRoaXMuaW5zdCB8fCBkcF9pbnN0OwoJCQl2YXIgZHQgPSAkLmRhdGVwaWNrZXIuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGRwX2luc3Quc2VsZWN0ZWRZZWFyLCBkcF9pbnN0LnNlbGVjdGVkTW9udGgsIGRwX2luc3Quc2VsZWN0ZWREYXkpKSwKCQkJCWRhdGVGbXQgPSAkLmRhdGVwaWNrZXIuX2dldChkcF9pbnN0LCAnZGF0ZUZvcm1hdCcpLAoJCQkJZm9ybWF0Q2ZnID0gJC5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcoZHBfaW5zdCksCgkJCQl0aW1lQXZhaWxhYmxlID0gZHQgIT09IG51bGwgJiYgdGhpcy50aW1lRGVmaW5lZDsKCQkJdGhpcy5mb3JtYXR0ZWREYXRlID0gJC5kYXRlcGlja2VyLmZvcm1hdERhdGUoZGF0ZUZtdCwgKGR0ID09PSBudWxsID8gbmV3IERhdGUoKSA6IGR0KSwgZm9ybWF0Q2ZnKTsKCQkJdmFyIGZvcm1hdHRlZERhdGVUaW1lID0gdGhpcy5mb3JtYXR0ZWREYXRlOwoKCQkJLyoKCQkJKiByZW1vdmUgZm9sbG93aW5nIGxpbmVzIHRvIGZvcmNlIGV2ZXJ5IGNoYW5nZXMgaW4gZGF0ZSBwaWNrZXIgdG8gY2hhbmdlIHRoZSBpbnB1dCB2YWx1ZQoJCQkqIEJ1ZyBkZXNjcmlwdGlvbnM6IHdoZW4gYW4gaW5wdXQgZmllbGQgaGFzIGEgZGVmYXVsdCB2YWx1ZSwgYW5kIGNsaWNrIG9uIHRoZSBmaWVsZCB0byBwb3AgdXAgdGhlIGRhdGUgcGlja2VyLiAKCQkJKiBJZiB0aGUgdXNlciBtYW51YWxseSBlbXB0eSB0aGUgdmFsdWUgaW4gdGhlIGlucHV0IGZpZWxkLCB0aGUgZGF0ZSBwaWNrZXIgd2lsbCBuZXZlciBjaGFuZ2Ugc2VsZWN0ZWQgdmFsdWUuCgkJCSovCgkJCS8vaWYgKGRwX2luc3QubGFzdFZhbCAhPT0gdW5kZWZpbmVkICYmIChkcF9pbnN0Lmxhc3RWYWwubGVuZ3RoID4gMCAmJiB0aGlzLiRpbnB1dC52YWwoKS5sZW5ndGggPT09IDApKSB7CgkJCS8vCXJldHVybjsKCQkJLy99CgoJCQlpZiAodGhpcy5fZGVmYXVsdHMudGltZU9ubHkgPT09IHRydWUpIHsKCQkJCWZvcm1hdHRlZERhdGVUaW1lID0gdGhpcy5mb3JtYXR0ZWRUaW1lOwoJCQl9IGVsc2UgaWYgKHRoaXMuX2RlZmF1bHRzLnRpbWVPbmx5ICE9PSB0cnVlICYmICh0aGlzLl9kZWZhdWx0cy5hbHdheXNTZXRUaW1lIHx8IHRpbWVBdmFpbGFibGUpKSB7CgkJCQlmb3JtYXR0ZWREYXRlVGltZSArPSB0aGlzLl9kZWZhdWx0cy5zZXBhcmF0b3IgKyB0aGlzLmZvcm1hdHRlZFRpbWUgKyB0aGlzLl9kZWZhdWx0cy50aW1lU3VmZml4OwoJCQl9CgoJCQl0aGlzLmZvcm1hdHRlZERhdGVUaW1lID0gZm9ybWF0dGVkRGF0ZVRpbWU7CgoJCQlpZiAoIXRoaXMuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyKSB7CgkJCQl0aGlzLiRpbnB1dC52YWwodGhpcy5mb3JtYXR0ZWREYXRlKTsKCQkJfSBlbHNlIGlmICh0aGlzLiRhbHRJbnB1dCAmJiB0aGlzLl9kZWZhdWx0cy5hbHRGaWVsZFRpbWVPbmx5ID09PSB0cnVlKSB7CgkJCQl0aGlzLiRhbHRJbnB1dC52YWwodGhpcy5mb3JtYXR0ZWRUaW1lKTsKCQkJCXRoaXMuJGlucHV0LnZhbCh0aGlzLmZvcm1hdHRlZERhdGUpOwoJCQl9IGVsc2UgaWYgKHRoaXMuJGFsdElucHV0KSB7CgkJCQl0aGlzLiRpbnB1dC52YWwoZm9ybWF0dGVkRGF0ZVRpbWUpOwoJCQkJdmFyIGFsdEZvcm1hdHRlZERhdGVUaW1lID0gJycsCgkJCQkJYWx0U2VwYXJhdG9yID0gdGhpcy5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yID8gdGhpcy5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yIDogdGhpcy5fZGVmYXVsdHMuc2VwYXJhdG9yLAoJCQkJCWFsdFRpbWVTdWZmaXggPSB0aGlzLl9kZWZhdWx0cy5hbHRUaW1lU3VmZml4ID8gdGhpcy5fZGVmYXVsdHMuYWx0VGltZVN1ZmZpeCA6IHRoaXMuX2RlZmF1bHRzLnRpbWVTdWZmaXg7CgoJCQkJaWYgKHRoaXMuX2RlZmF1bHRzLmFsdEZvcm1hdCkgYWx0Rm9ybWF0dGVkRGF0ZVRpbWUgPSAkLmRhdGVwaWNrZXIuZm9ybWF0RGF0ZSh0aGlzLl9kZWZhdWx0cy5hbHRGb3JtYXQsIChkdCA9PT0gbnVsbCA/IG5ldyBEYXRlKCkgOiBkdCksIGZvcm1hdENmZyk7CgkJCQllbHNlIGFsdEZvcm1hdHRlZERhdGVUaW1lID0gdGhpcy5mb3JtYXR0ZWREYXRlOwoJCQkJaWYgKGFsdEZvcm1hdHRlZERhdGVUaW1lKSBhbHRGb3JtYXR0ZWREYXRlVGltZSArPSBhbHRTZXBhcmF0b3I7CgkJCQlpZiAodGhpcy5fZGVmYXVsdHMuYWx0VGltZUZvcm1hdCkgYWx0Rm9ybWF0dGVkRGF0ZVRpbWUgKz0gJC5kYXRlcGlja2VyLmZvcm1hdFRpbWUodGhpcy5fZGVmYXVsdHMuYWx0VGltZUZvcm1hdCwgdGhpcywgdGhpcy5fZGVmYXVsdHMpICsgYWx0VGltZVN1ZmZpeDsKCQkJCWVsc2UgYWx0Rm9ybWF0dGVkRGF0ZVRpbWUgKz0gdGhpcy5mb3JtYXR0ZWRUaW1lICsgYWx0VGltZVN1ZmZpeDsKCQkJCXRoaXMuJGFsdElucHV0LnZhbChhbHRGb3JtYXR0ZWREYXRlVGltZSk7CgkJCX0gZWxzZSB7CgkJCQl0aGlzLiRpbnB1dC52YWwoZm9ybWF0dGVkRGF0ZVRpbWUpOwoJCQl9CgoJCQl0aGlzLiRpbnB1dC50cmlnZ2VyKCJjaGFuZ2UiKTsKCQl9LAoKCQlfb25Gb2N1czogZnVuY3Rpb24oKSB7CgkJCWlmICghdGhpcy4kaW5wdXQudmFsKCkgJiYgdGhpcy5fZGVmYXVsdHMuZGVmYXVsdFZhbHVlKSB7CgkJCQl0aGlzLiRpbnB1dC52YWwodGhpcy5fZGVmYXVsdHMuZGVmYXVsdFZhbHVlKTsKCQkJCXZhciBpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KHRoaXMuJGlucHV0LmdldCgwKSksCgkJCQkJdHBfaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgkJCQlpZiAodHBfaW5zdCkgewoJCQkJCWlmICh0cF9pbnN0Ll9kZWZhdWx0cy50aW1lT25seSAmJiAoaW5zdC5pbnB1dC52YWwoKSAhPSBpbnN0Lmxhc3RWYWwpKSB7CgkJCQkJCXRyeSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7CgkJCQkJCX0gY2F0Y2ggKGVycikgewoJCQkJCQkJJC5kYXRlcGlja2VyLmxvZyhlcnIpOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgkJfSwKCgkJLyoKCQkqIFNtYWxsIGFic3RyYWN0aW9uIHRvIGNvbnRyb2wgdHlwZXMKCQkqIFdlIGNhbiBhZGQgbW9yZSwganVzdCBiZSBzdXJlIHRvIGZvbGxvdyB0aGUgcGF0dGVybjogY3JlYXRlLCBvcHRpb25zLCB2YWx1ZQoJCSovCgkJX2NvbnRyb2xzOiB7CgkJCS8vIHNsaWRlciBtZXRob2RzCgkJCXNsaWRlcjogewoJCQkJY3JlYXRlOiBmdW5jdGlvbih0cF9pbnN0LCBvYmosIHVuaXQsIHZhbCwgbWluLCBtYXgsIHN0ZXApewoJCQkJCXZhciBydGwgPSB0cF9pbnN0Ll9kZWZhdWx0cy5pc1JUTDsgLy8gaWYgcnRsIGdvIC02MC0+MCBpbnN0ZWFkIG9mIDAtPjYwCgkJCQkJcmV0dXJuIG9iai5wcm9wKCdzbGlkZScsIG51bGwpLnNsaWRlcih7CgkJCQkJCW9yaWVudGF0aW9uOiAiaG9yaXpvbnRhbCIsCgkJCQkJCXZhbHVlOiBydGw/IHZhbCotMSA6IHZhbCwKCQkJCQkJbWluOiBydGw/IG1heCotMSA6IG1pbiwKCQkJCQkJbWF4OiBydGw/IG1pbiotMSA6IG1heCwKCQkJCQkJc3RlcDogc3RlcCwKCQkJCQkJc2xpZGU6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgewoJCQkJCQkJdHBfaW5zdC5jb250cm9sLnZhbHVlKHRwX2luc3QsICQodGhpcyksIHVuaXQsIHJ0bD8gdWkudmFsdWUqLTE6dWkudmFsdWUpOwoJCQkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7CgkJCQkJCX0sCgkJCQkJCXN0b3A6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgewoJCQkJCQkJdHBfaW5zdC5fb25TZWxlY3RIYW5kbGVyKCk7CgkJCQkJCX0KCQkJCQl9KTsJCgkJCQl9LAoJCQkJb3B0aW9uczogZnVuY3Rpb24odHBfaW5zdCwgb2JqLCB1bml0LCBvcHRzLCB2YWwpewoJCQkJCWlmKHRwX2luc3QuX2RlZmF1bHRzLmlzUlRMKXsKCQkJCQkJaWYodHlwZW9mKG9wdHMpID09ICdzdHJpbmcnKXsKCQkJCQkJCWlmKG9wdHMgPT0gJ21pbicgfHwgb3B0cyA9PSAnbWF4Jyl7CgkJCQkJCQkJaWYodmFsICE9PSB1bmRlZmluZWQpCgkJCQkJCQkJCXJldHVybiBvYmouc2xpZGVyKG9wdHMsIHZhbCotMSk7CgkJCQkJCQkJcmV0dXJuIE1hdGguYWJzKG9iai5zbGlkZXIob3B0cykpOwoJCQkJCQkJfQoJCQkJCQkJcmV0dXJuIG9iai5zbGlkZXIob3B0cyk7CgkJCQkJCX0KCQkJCQkJdmFyIG1pbiA9IG9wdHMubWluLCAKCQkJCQkJCW1heCA9IG9wdHMubWF4OwoJCQkJCQlvcHRzLm1pbiA9IG9wdHMubWF4ID0gbnVsbDsKCQkJCQkJaWYobWluICE9PSB1bmRlZmluZWQpCgkJCQkJCQlvcHRzLm1heCA9IG1pbiAqIC0xOwoJCQkJCQlpZihtYXggIT09IHVuZGVmaW5lZCkKCQkJCQkJCW9wdHMubWluID0gbWF4ICogLTE7CgkJCQkJCXJldHVybiBvYmouc2xpZGVyKG9wdHMpOwoJCQkJCX0KCQkJCQlpZih0eXBlb2Yob3B0cykgPT0gJ3N0cmluZycgJiYgdmFsICE9PSB1bmRlZmluZWQpCgkJCQkJCQlyZXR1cm4gb2JqLnNsaWRlcihvcHRzLCB2YWwpOwoJCQkJCXJldHVybiBvYmouc2xpZGVyKG9wdHMpOwoJCQkJfSwKCQkJCXZhbHVlOiBmdW5jdGlvbih0cF9pbnN0LCBvYmosIHVuaXQsIHZhbCl7CgkJCQkJaWYodHBfaW5zdC5fZGVmYXVsdHMuaXNSVEwpewoJCQkJCQlpZih2YWwgIT09IHVuZGVmaW5lZCkKCQkJCQkJCXJldHVybiBvYmouc2xpZGVyKCd2YWx1ZScsIHZhbCotMSk7CgkJCQkJCXJldHVybiBNYXRoLmFicyhvYmouc2xpZGVyKCd2YWx1ZScpKTsKCQkJCQl9CgkJCQkJaWYodmFsICE9PSB1bmRlZmluZWQpCgkJCQkJCXJldHVybiBvYmouc2xpZGVyKCd2YWx1ZScsIHZhbCk7CgkJCQkJcmV0dXJuIG9iai5zbGlkZXIoJ3ZhbHVlJyk7CgkJCQl9CgkJCX0sCgkJCS8vIHNlbGVjdCBtZXRob2RzCgkJCXNlbGVjdDogewoJCQkJY3JlYXRlOiBmdW5jdGlvbih0cF9pbnN0LCBvYmosIHVuaXQsIHZhbCwgbWluLCBtYXgsIHN0ZXApewoJCQkJCXZhciBzZWwgPSAnPHNlbGVjdCBjbGFzcz0idWktdGltZXBpY2tlci1zZWxlY3QiIGRhdGEtdW5pdD0iJysgdW5pdCArJyIgZGF0YS1taW49IicrIG1pbiArJyIgZGF0YS1tYXg9IicrIG1heCArJyIgZGF0YS1zdGVwPSInKyBzdGVwICsnIj4nLAoJCQkJCQl1bCA9IHRwX2luc3QuX2RlZmF1bHRzLnRpbWVGb3JtYXQuaW5kZXhPZigndCcpICE9PSAtMT8gJ3RvTG93ZXJDYXNlJzondG9VcHBlckNhc2UnLAoJCQkJCQltID0gMDsKCgkJCQkJZm9yKHZhciBpPW1pbjsgaTw9bWF4OyBpKz1zdGVwKXsJCQkJCQkKCQkJCQkJc2VsICs9ICc8b3B0aW9uIHZhbHVlPSInKyBpICsnIicrIChpPT12YWw/ICcgc2VsZWN0ZWQnOicnKSArJz4nOwoJCQkJCQlpZih1bml0ID09ICdob3VyJyAmJiB1c2VBbXBtKHRwX2luc3QuX2RlZmF1bHRzLnBpY2tlclRpbWVGb3JtYXQgfHwgdHBfaW5zdC5fZGVmYXVsdHMudGltZUZvcm1hdCkpCgkJCQkJCQlzZWwgKz0gJC5kYXRlcGlja2VyLmZvcm1hdFRpbWUoImhoIFRUIiwge2hvdXI6aX0sIHRwX2luc3QuX2RlZmF1bHRzKTsKCQkJCQkJZWxzZSBpZih1bml0ID09ICdtaWxsaXNlYycgfHwgaSA+PSAxMCkgc2VsICs9IGk7CgkJCQkJCWVsc2Ugc2VsICs9ICcwJysgaS50b1N0cmluZygpOwoJCQkJCQlzZWwgKz0gJzwvb3B0aW9uPic7CgkJCQkJfQoJCQkJCXNlbCArPSAnPC9zZWxlY3Q+JzsKCgkJCQkJb2JqLmNoaWxkcmVuKCdzZWxlY3QnKS5yZW1vdmUoKTsKCgkJCQkJJChzZWwpLmFwcGVuZFRvKG9iaikuY2hhbmdlKGZ1bmN0aW9uKGUpewoJCQkJCQl0cF9pbnN0Ll9vblRpbWVDaGFuZ2UoKTsKCQkJCQkJdHBfaW5zdC5fb25TZWxlY3RIYW5kbGVyKCk7CgkJCQkJfSk7CgoJCQkJCXJldHVybiBvYmo7CgkJCQl9LAoJCQkJb3B0aW9uczogZnVuY3Rpb24odHBfaW5zdCwgb2JqLCB1bml0LCBvcHRzLCB2YWwpewoJCQkJCXZhciBvID0ge30sCgkJCQkJCSR0ID0gb2JqLmNoaWxkcmVuKCdzZWxlY3QnKTsKCQkJCQlpZih0eXBlb2Yob3B0cykgPT0gJ3N0cmluZycpewoJCQkJCQlpZih2YWwgPT09IHVuZGVmaW5lZCkKCQkJCQkJCXJldHVybiAkdC5kYXRhKG9wdHMpOwoJCQkJCQlvW29wdHNdID0gdmFsOwkKCQkJCQl9CgkJCQkJZWxzZSBvID0gb3B0czsKCQkJCQlyZXR1cm4gdHBfaW5zdC5jb250cm9sLmNyZWF0ZSh0cF9pbnN0LCBvYmosICR0LmRhdGEoJ3VuaXQnKSwgJHQudmFsKCksIG8ubWluIHx8ICR0LmRhdGEoJ21pbicpLCBvLm1heCB8fCAkdC5kYXRhKCdtYXgnKSwgby5zdGVwIHx8ICR0LmRhdGEoJ3N0ZXAnKSk7CgkJCQl9LAoJCQkJdmFsdWU6IGZ1bmN0aW9uKHRwX2luc3QsIG9iaiwgdW5pdCwgdmFsKXsKCQkJCQl2YXIgJHQgPSBvYmouY2hpbGRyZW4oJ3NlbGVjdCcpOwoJCQkJCWlmKHZhbCAhPT0gdW5kZWZpbmVkKQoJCQkJCQlyZXR1cm4gJHQudmFsKHZhbCk7CgkJCQkJcmV0dXJuICR0LnZhbCgpOwoJCQkJfQoJCQl9CgkJfSAvLyBlbmQgX2NvbnRyb2xzCgoJfSk7CgoJJC5mbi5leHRlbmQoewoJCS8qCgkJKiBzaG9ydGhhbmQganVzdCB0byB1c2UgdGltZXBpY2tlci4uCgkJKi8KCQl0aW1lcGlja2VyOiBmdW5jdGlvbihvKSB7CgkJCW8gPSBvIHx8IHt9OwoJCQl2YXIgdG1wX2FyZ3MgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpOwoKCQkJaWYgKHR5cGVvZiBvID09ICdvYmplY3QnKSB7CgkJCQl0bXBfYXJnc1swXSA9ICQuZXh0ZW5kKG8sIHsKCQkJCQl0aW1lT25seTogdHJ1ZQoJCQkJfSk7CgkJCX0KCgkJCXJldHVybiAkKHRoaXMpLmVhY2goZnVuY3Rpb24oKSB7CgkJCQkkLmZuLmRhdGV0aW1lcGlja2VyLmFwcGx5KCQodGhpcyksIHRtcF9hcmdzKTsKCQkJfSk7CgkJfSwKCgkJLyoKCQkqIGV4dGVuZCB0aW1lcGlja2VyIHRvIGRhdGVwaWNrZXIKCQkqLwoJCWRhdGV0aW1lcGlja2VyOiBmdW5jdGlvbihvKSB7CgkJCW8gPSBvIHx8IHt9OwoJCQl2YXIgdG1wX2FyZ3MgPSBhcmd1bWVudHM7CgoJCQlpZiAodHlwZW9mKG8pID09ICdzdHJpbmcnKSB7CgkJCQlpZiAobyA9PSAnZ2V0RGF0ZScpIHsKCQkJCQlyZXR1cm4gJC5mbi5kYXRlcGlja2VyLmFwcGx5KCQodGhpc1swXSksIHRtcF9hcmdzKTsKCQkJCX0gZWxzZSB7CgkJCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKCQkJCQkJdmFyICR0ID0gJCh0aGlzKTsKCQkJCQkJJHQuZGF0ZXBpY2tlci5hcHBseSgkdCwgdG1wX2FyZ3MpOwoJCQkJCX0pOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpIHsKCQkJCQl2YXIgJHQgPSAkKHRoaXMpOwoJCQkJCSR0LmRhdGVwaWNrZXIoJC50aW1lcGlja2VyLl9uZXdJbnN0KCR0LCBvKS5fZGVmYXVsdHMpOwoJCQkJfSk7CgkJCX0KCQl9Cgl9KTsKCgkvKgoJKiBQdWJsaWMgVXRpbGl0eSB0byBwYXJzZSBkYXRlIGFuZCB0aW1lCgkqLwoJJC5kYXRlcGlja2VyLnBhcnNlRGF0ZVRpbWUgPSBmdW5jdGlvbihkYXRlRm9ybWF0LCB0aW1lRm9ybWF0LCBkYXRlVGltZVN0cmluZywgZGF0ZVNldHRpbmdzLCB0aW1lU2V0dGluZ3MpIHsKCQl2YXIgcGFyc2VSZXMgPSBwYXJzZURhdGVUaW1lSW50ZXJuYWwoZGF0ZUZvcm1hdCwgdGltZUZvcm1hdCwgZGF0ZVRpbWVTdHJpbmcsIGRhdGVTZXR0aW5ncywgdGltZVNldHRpbmdzKTsKCQlpZiAocGFyc2VSZXMudGltZU9iaikgewoJCQl2YXIgdCA9IHBhcnNlUmVzLnRpbWVPYmo7CgkJCXBhcnNlUmVzLmRhdGUuc2V0SG91cnModC5ob3VyLCB0Lm1pbnV0ZSwgdC5zZWNvbmQsIHQubWlsbGlzZWMpOwoJCX0KCgkJcmV0dXJuIHBhcnNlUmVzLmRhdGU7Cgl9OwoKCS8qCgkqIFB1YmxpYyB1dGlsaXR5IHRvIHBhcnNlIHRpbWUKCSovCgkkLmRhdGVwaWNrZXIucGFyc2VUaW1lID0gZnVuY3Rpb24odGltZUZvcm1hdCwgdGltZVN0cmluZywgb3B0aW9ucykgewkJCgkJdmFyIG8gPSBleHRlbmRSZW1vdmUoZXh0ZW5kUmVtb3ZlKHt9LCAkLnRpbWVwaWNrZXIuX2RlZmF1bHRzKSwgb3B0aW9ucyB8fCB7fSk7CgoJCS8vIFN0cmljdCBwYXJzZSByZXF1aXJlcyB0aGUgdGltZVN0cmluZyB0byBtYXRjaCB0aGUgdGltZUZvcm1hdCBleGFjdGx5CgkJdmFyIHN0cmljdFBhcnNlID0gZnVuY3Rpb24oZiwgcywgbyl7CgoJCQkvLyBwYXR0ZXJuIGZvciBzdGFuZGFyZCBhbmQgbG9jYWxpemVkIEFNL1BNIG1hcmtlcnMKCQkJdmFyIGdldFBhdHRlcm5BbXBtID0gZnVuY3Rpb24oYW1OYW1lcywgcG1OYW1lcykgewoJCQkJdmFyIG1hcmtlcnMgPSBbXTsKCQkJCWlmIChhbU5hbWVzKSB7CgkJCQkJJC5tZXJnZShtYXJrZXJzLCBhbU5hbWVzKTsKCQkJCX0KCQkJCWlmIChwbU5hbWVzKSB7CgkJCQkJJC5tZXJnZShtYXJrZXJzLCBwbU5hbWVzKTsKCQkJCX0KCQkJCW1hcmtlcnMgPSAkLm1hcChtYXJrZXJzLCBmdW5jdGlvbih2YWwpIHsKCQkJCQlyZXR1cm4gdmFsLnJlcGxhY2UoL1suKis/fCgpXFtcXXt9XFxdL2csICdcXCQmJyk7CgkJCQl9KTsKCQkJCXJldHVybiAnKCcgKyBtYXJrZXJzLmpvaW4oJ3wnKSArICcpPyc7CgkJCX07CgoJCQkvLyBmaWd1cmUgb3V0IHBvc2l0aW9uIG9mIHRpbWUgZWxlbWVudHMuLiBjYXVzZSBqcyBjYW50IGRvIG5hbWVkIGNhcHR1cmVzCgkJCXZhciBnZXRGb3JtYXRQb3NpdGlvbnMgPSBmdW5jdGlvbih0aW1lRm9ybWF0KSB7CgkJCQl2YXIgZmluZHMgPSB0aW1lRm9ybWF0LnRvTG93ZXJDYXNlKCkubWF0Y2goLyhoezEsMn18bXsxLDJ9fHN7MSwyfXxsezF9fHR7MSwyfXx6fCcuKj8nKS9nKSwKCQkJCQlvcmRlcnMgPSB7CgkJCQkJCWg6IC0xLAoJCQkJCQltOiAtMSwKCQkJCQkJczogLTEsCgkJCQkJCWw6IC0xLAoJCQkJCQl0OiAtMSwKCQkJCQkJejogLTEKCQkJCQl9OwoKCQkJCWlmIChmaW5kcykgewoJCQkJCWZvciAodmFyIGkgPSAwOyBpIDwgZmluZHMubGVuZ3RoOyBpKyspIHsKCQkJCQkJaWYgKG9yZGVyc1tmaW5kc1tpXS50b1N0cmluZygpLmNoYXJBdCgwKV0gPT0gLTEpIHsKCQkJCQkJCW9yZGVyc1tmaW5kc1tpXS50b1N0cmluZygpLmNoYXJBdCgwKV0gPSBpICsgMTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJCXJldHVybiBvcmRlcnM7CgkJCX07CgoJCQl2YXIgcmVnc3RyID0gJ14nICsgZi50b1N0cmluZygpCgkJCQkJLnJlcGxhY2UoLyhbaEhdezEsMn18bW0/fHNzP3xbdFRdezEsMn18W2x6XXwnLio/JykvZywgZnVuY3Rpb24gKG1hdGNoKSB7CgkJCQkJCQlzd2l0Y2ggKG1hdGNoLmNoYXJBdCgwKS50b0xvd2VyQ2FzZSgpKSB7CgkJCQkJCQkJY2FzZSAnaCc6IHJldHVybiAnKFxcZD9cXGQpJzsKCQkJCQkJCQljYXNlICdtJzogcmV0dXJuICcoXFxkP1xcZCknOwoJCQkJCQkJCWNhc2UgJ3MnOiByZXR1cm4gJyhcXGQ/XFxkKSc7CgkJCQkJCQkJY2FzZSAnbCc6IHJldHVybiAnKFxcZD9cXGQ/XFxkKSc7CgkJCQkJCQkJY2FzZSAneic6IHJldHVybiAnKHp8Wy0rXVxcZFxcZDo/XFxkXFxkfFxcUyspPyc7CgkJCQkJCQkJY2FzZSAndCc6IHJldHVybiBnZXRQYXR0ZXJuQW1wbShvLmFtTmFtZXMsIG8ucG1OYW1lcyk7CgkJCQkJCQkJZGVmYXVsdDogICAgLy8gbGl0ZXJhbCBlc2NhcGVkIGluIHF1b3RlcwoJCQkJCQkJCQlyZXR1cm4gJygnICsgbWF0Y2gucmVwbGFjZSgvXCcvZywgIiIpLnJlcGxhY2UoLyhcLnxcJHxcXnxcXHxcL3xcKHxcKXxcW3xcXXxcP3xcK3xcKikvZywgZnVuY3Rpb24gKG0pIHsgcmV0dXJuICJcXCIgKyBtOyB9KSArICcpPyc7CgkJCQkJCQl9CgkJCQkJCX0pCgkJCQkJLnJlcGxhY2UoL1xzL2csICdcXHM/JykgKwoJCQkJCW8udGltZVN1ZmZpeCArICckJywKCQkJCW9yZGVyID0gZ2V0Rm9ybWF0UG9zaXRpb25zKGYpLAoJCQkJYW1wbSA9ICcnLAoJCQkJdHJlZzsKCgkJCXRyZWcgPSBzLm1hdGNoKG5ldyBSZWdFeHAocmVnc3RyLCAnaScpKTsKCgkJCXZhciByZXNUaW1lID0gewoJCQkJaG91cjogMCwKCQkJCW1pbnV0ZTogMCwKCQkJCXNlY29uZDogMCwKCQkJCW1pbGxpc2VjOiAwCgkJCX07CgoJCQlpZiAodHJlZykgewoJCQkJaWYgKG9yZGVyLnQgIT09IC0xKSB7CgkJCQkJaWYgKHRyZWdbb3JkZXIudF0gPT09IHVuZGVmaW5lZCB8fCB0cmVnW29yZGVyLnRdLmxlbmd0aCA9PT0gMCkgewoJCQkJCQlhbXBtID0gJyc7CgkJCQkJCXJlc1RpbWUuYW1wbSA9ICcnOwoJCQkJCX0gZWxzZSB7CgkJCQkJCWFtcG0gPSAkLmluQXJyYXkodHJlZ1tvcmRlci50XS50b1VwcGVyQ2FzZSgpLCBvLmFtTmFtZXMpICE9PSAtMSA/ICdBTScgOiAnUE0nOwoJCQkJCQlyZXNUaW1lLmFtcG0gPSBvW2FtcG0gPT0gJ0FNJyA/ICdhbU5hbWVzJyA6ICdwbU5hbWVzJ11bMF07CgkJCQkJfQoJCQkJfQoKCQkJCWlmIChvcmRlci5oICE9PSAtMSkgewoJCQkJCWlmIChhbXBtID09ICdBTScgJiYgdHJlZ1tvcmRlci5oXSA9PSAnMTInKSB7CgkJCQkJCXJlc1RpbWUuaG91ciA9IDA7IC8vIDEyYW0gPSAwIGhvdXIKCQkJCQl9IGVsc2UgewoJCQkJCQlpZiAoYW1wbSA9PSAnUE0nICYmIHRyZWdbb3JkZXIuaF0gIT0gJzEyJykgewoJCQkJCQkJcmVzVGltZS5ob3VyID0gcGFyc2VJbnQodHJlZ1tvcmRlci5oXSwgMTApICsgMTI7IC8vIDEycG0gPSAxMiBob3VyLCBhbnkgb3RoZXIgcG0gPSBob3VyICsgMTIKCQkJCQkJfSBlbHNlIHsKCQkJCQkJCXJlc1RpbWUuaG91ciA9IE51bWJlcih0cmVnW29yZGVyLmhdKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCgkJCQlpZiAob3JkZXIubSAhPT0gLTEpIHsKCQkJCQlyZXNUaW1lLm1pbnV0ZSA9IE51bWJlcih0cmVnW29yZGVyLm1dKTsKCQkJCX0KCQkJCWlmIChvcmRlci5zICE9PSAtMSkgewoJCQkJCXJlc1RpbWUuc2Vjb25kID0gTnVtYmVyKHRyZWdbb3JkZXIuc10pOwoJCQkJfQoJCQkJaWYgKG9yZGVyLmwgIT09IC0xKSB7CgkJCQkJcmVzVGltZS5taWxsaXNlYyA9IE51bWJlcih0cmVnW29yZGVyLmxdKTsKCQkJCX0KCQkJCWlmIChvcmRlci56ICE9PSAtMSAmJiB0cmVnW29yZGVyLnpdICE9PSB1bmRlZmluZWQpIHsKCQkJCQl2YXIgdHogPSB0cmVnW29yZGVyLnpdLnRvVXBwZXJDYXNlKCk7CgkJCQkJc3dpdGNoICh0ei5sZW5ndGgpIHsKCQkJCQljYXNlIDE6CgkJCQkJCS8vIFoKCQkJCQkJdHogPSBvLnRpbWV6b25lSXNvODYwMSA/ICdaJyA6ICcrMDAwMCc7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgNToKCQkJCQkJLy8gK2hobW0KCQkJCQkJaWYgKG8udGltZXpvbmVJc284NjAxKSB7CgkJCQkJCQl0eiA9IHR6LnN1YnN0cmluZygxKSA9PSAnMDAwMCcgPyAnWicgOiB0ei5zdWJzdHJpbmcoMCwgMykgKyAnOicgKyB0ei5zdWJzdHJpbmcoMyk7CgkJCQkJCX0KCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSA2OgoJCQkJCQkvLyAraGg6bW0KCQkJCQkJaWYgKCFvLnRpbWV6b25lSXNvODYwMSkgewoJCQkJCQkJdHogPSB0eiA9PSAnWicgfHwgdHouc3Vic3RyaW5nKDEpID09ICcwMDowMCcgPyAnKzAwMDAnIDogdHoucmVwbGFjZSgvOi8sICcnKTsKCQkJCQkJfSBlbHNlIHsKCQkJCQkJCWlmICh0ei5zdWJzdHJpbmcoMSkgPT0gJzAwOjAwJykgewoJCQkJCQkJCXR6ID0gJ1onOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJCWJyZWFrOwoJCQkJCX0KCQkJCQlyZXNUaW1lLnRpbWV6b25lID0gdHo7CgkJCQl9CgoKCQkJCXJldHVybiByZXNUaW1lOwoJCQl9CgkJCXJldHVybiBmYWxzZTsKCQl9Oy8vIGVuZCBzdHJpY3RQYXJzZQoKCQkvLyBGaXJzdCB0cnkgSlMgRGF0ZSwgaWYgdGhhdCBmYWlscywgdXNlIHN0cmljdFBhcnNlCgkJdmFyIGxvb3NlUGFyc2UgPSBmdW5jdGlvbihmLHMsbyl7CgkJCXRyeXsKCQkJCXZhciBkID0gbmV3IERhdGUoJzIwMTItMDEtMDEgJysgcyk7CgkJCQlyZXR1cm4gewoJCQkJCWhvdXI6IGQuZ2V0SG91cnMoKSwKCQkJCQltaW51dGVzOiBkLmdldE1pbnV0ZXMoKSwKCQkJCQlzZWNvbmRzOiBkLmdldFNlY29uZHMoKSwKCQkJCQltaWxsaXNlYzogZC5nZXRNaWxsaXNlY29uZHMoKSwKCQkJCQl0aW1lem9uZTogJC50aW1lcGlja2VyLnRpbWVab25lT2Zmc2V0U3RyaW5nKGQpCgkJCQl9OwoJCQl9CgkJCWNhdGNoKGVycil7CgkJCQl0cnl7CgkJCQkJcmV0dXJuIHN0cmljdFBhcnNlKGYscyxvKTsKCQkJCX0KCQkJCWNhdGNoKGVycjIpewoJCQkJCSQuZGF0ZXBpY2tlci5sb2coIlVuYWJsZSB0byBwYXJzZSBcbnRpbWVTdHJpbmc6ICIrIHMgKyJcbnRpbWVGb3JtYXQ6ICIrIGYpOwoJCQkJfQkJCQkKCQkJfQoJCQlyZXR1cm4gZmFsc2U7CgkJfTsgLy8gZW5kIGxvb3NlUGFyc2UKCQkKCQlpZih0eXBlb2Ygby5wYXJzZSA9PT0gImZ1bmN0aW9uIil7CgkJCXJldHVybiBvLnBhcnNlKHRpbWVGb3JtYXQsIHRpbWVTdHJpbmcsIG8pCgkJfQoJCWlmKG8ucGFyc2UgPT09ICdsb29zZScpewoJCQlyZXR1cm4gbG9vc2VQYXJzZSh0aW1lRm9ybWF0LCB0aW1lU3RyaW5nLCBvKTsKCQl9CgkJcmV0dXJuIHN0cmljdFBhcnNlKHRpbWVGb3JtYXQsIHRpbWVTdHJpbmcsIG8pOwoJfTsKCgkvKgoJKiBQdWJsaWMgdXRpbGl0eSB0byBmb3JtYXQgdGhlIHRpbWUKCSogZm9ybWF0ID0gc3RyaW5nIGZvcm1hdCBvZiB0aGUgdGltZQoJKiB0aW1lID0gYSB7fSwgbm90IGEgRGF0ZSgpIGZvciB0aW1lem9uZXMKCSogb3B0aW9ucyA9IGVzc2VudGlhbGx5IHRoZSByZWdpb25hbFtdLi4gYW1OYW1lcywgcG1OYW1lcywgYW1wbQoJKi8KCSQuZGF0ZXBpY2tlci5mb3JtYXRUaW1lID0gZnVuY3Rpb24oZm9ybWF0LCB0aW1lLCBvcHRpb25zKSB7CgkJb3B0aW9ucyA9IG9wdGlvbnMgfHwge307CgkJb3B0aW9ucyA9ICQuZXh0ZW5kKHt9LCAkLnRpbWVwaWNrZXIuX2RlZmF1bHRzLCBvcHRpb25zKTsKCQl0aW1lID0gJC5leHRlbmQoewoJCQlob3VyOiAwLAoJCQltaW51dGU6IDAsCgkJCXNlY29uZDogMCwKCQkJbWlsbGlzZWM6IDAsCgkJCXRpbWV6b25lOiAnKzAwMDAnCgkJfSwgdGltZSk7CgoJCXZhciB0bXB0aW1lID0gZm9ybWF0LAoJCQlhbXBtTmFtZSA9IG9wdGlvbnMuYW1OYW1lc1swXSwKCQkJaG91ciA9IHBhcnNlSW50KHRpbWUuaG91ciwgMTApOwoKCQlpZiAoaG91ciA+IDExKSB7CgkJCWFtcG1OYW1lID0gb3B0aW9ucy5wbU5hbWVzWzBdOwoJCX0KCgkJdG1wdGltZSA9IHRtcHRpbWUucmVwbGFjZSgvKD86SEg/fGhoP3xtbT98c3M/fFt0VF17MSwyfXxbbHpdfCgnLio/J3wiLio/IikpL2csIGZ1bmN0aW9uKG1hdGNoKSB7CgkJc3dpdGNoIChtYXRjaCkgewoJCQljYXNlICdISCc6CgkJCQlyZXR1cm4gKCcwJyArIGhvdXIpLnNsaWNlKC0yKTsKCQkJY2FzZSAnSCc6CgkJCQlyZXR1cm4gaG91cjsKCQkJY2FzZSAnaGgnOgoJCQkJcmV0dXJuICgnMCcgKyBjb252ZXJ0MjR0bzEyKGhvdXIpKS5zbGljZSgtMik7CgkJCWNhc2UgJ2gnOgoJCQkJcmV0dXJuIGNvbnZlcnQyNHRvMTIoaG91cik7CgkJCWNhc2UgJ21tJzoKCQkJCXJldHVybiAoJzAnICsgdGltZS5taW51dGUpLnNsaWNlKC0yKTsKCQkJY2FzZSAnbSc6CgkJCQlyZXR1cm4gdGltZS5taW51dGU7CgkJCWNhc2UgJ3NzJzoKCQkJCXJldHVybiAoJzAnICsgdGltZS5zZWNvbmQpLnNsaWNlKC0yKTsKCQkJY2FzZSAncyc6CgkJCQlyZXR1cm4gdGltZS5zZWNvbmQ7CgkJCWNhc2UgJ2wnOgoJCQkJcmV0dXJuICgnMDAnICsgdGltZS5taWxsaXNlYykuc2xpY2UoLTMpOwoJCQljYXNlICd6JzoKCQkJCXJldHVybiB0aW1lLnRpbWV6b25lID09PSBudWxsPyBvcHRpb25zLmRlZmF1bHRUaW1lem9uZSA6IHRpbWUudGltZXpvbmU7CgkJCWNhc2UgJ1QnOiAKCQkJCXJldHVybiBhbXBtTmFtZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKTsKCQkJY2FzZSAnVFQnOiAKCQkJCXJldHVybiBhbXBtTmFtZS50b1VwcGVyQ2FzZSgpOwoJCQljYXNlICd0JzoKCQkJCXJldHVybiBhbXBtTmFtZS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKTsKCQkJY2FzZSAndHQnOgoJCQkJcmV0dXJuIGFtcG1OYW1lLnRvTG93ZXJDYXNlKCk7CgkJCWRlZmF1bHQ6CgkJCQlyZXR1cm4gbWF0Y2gucmVwbGFjZSgvXCcvZywgIiIpIHx8ICInIjsKCQkJfQoJCX0pOwoKCQl0bXB0aW1lID0gJC50cmltKHRtcHRpbWUpOwoJCXJldHVybiB0bXB0aW1lOwoJfTsKCgkvKgoJKiB0aGUgYmFkIGhhY2sgOi8gb3ZlcnJpZGUgZGF0ZXBpY2tlciBzbyBpdCBkb2VzbnQgY2xvc2Ugb24gc2VsZWN0CgkvLyBpbnNwaXJlZDogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMjUyNTEyL2pxdWVyeS1kYXRlcGlja2VyLXByZXZlbnQtY2xvc2luZy1waWNrZXItd2hlbi1jbGlja2luZy1hLWRhdGUvMTc2MjM3OCMxNzYyMzc4CgkqLwoJJC5kYXRlcGlja2VyLl9iYXNlX3NlbGVjdERhdGUgPSAkLmRhdGVwaWNrZXIuX3NlbGVjdERhdGU7CgkkLmRhdGVwaWNrZXIuX3NlbGVjdERhdGUgPSBmdW5jdGlvbihpZCwgZGF0ZVN0cikgewoJCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCgkKGlkKVswXSksCgkJCXRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsKCgkJaWYgKHRwX2luc3QpIHsKCQkJdHBfaW5zdC5fbGltaXRNaW5NYXhEYXRlVGltZShpbnN0LCB0cnVlKTsKCQkJaW5zdC5pbmxpbmUgPSBpbnN0LnN0YXlfb3BlbiA9IHRydWU7CgkJCS8vVGhpcyB3YXkgdGhlIG9uU2VsZWN0IGhhbmRsZXIgY2FsbGVkIGZyb20gY2FsZW5kYXJwaWNrZXIgZ2V0IHRoZSBmdWxsIGRhdGVUaW1lCgkJCXRoaXMuX2Jhc2Vfc2VsZWN0RGF0ZShpZCwgZGF0ZVN0cik7CgkJCWluc3QuaW5saW5lID0gaW5zdC5zdGF5X29wZW4gPSBmYWxzZTsKCQkJdGhpcy5fbm90aWZ5Q2hhbmdlKGluc3QpOwoJCQl0aGlzLl91cGRhdGVEYXRlcGlja2VyKGluc3QpOwoJCX0gZWxzZSB7CgkJCXRoaXMuX2Jhc2Vfc2VsZWN0RGF0ZShpZCwgZGF0ZVN0cik7CgkJfQoJfTsKCgkvKgoJKiBzZWNvbmQgYmFkIGhhY2sgOi8gb3ZlcnJpZGUgZGF0ZXBpY2tlciBzbyBpdCB0cmlnZ2VycyBhbiBldmVudCB3aGVuIGNoYW5naW5nIHRoZSBpbnB1dCBmaWVsZAoJKiBhbmQgZG9lcyBub3QgcmVkcmF3IHRoZSBkYXRlcGlja2VyIG9uIGV2ZXJ5IHNlbGVjdERhdGUgZXZlbnQKCSovCgkkLmRhdGVwaWNrZXIuX2Jhc2VfdXBkYXRlRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlcjsKCSQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlciA9IGZ1bmN0aW9uKGluc3QpIHsKCgkJLy8gZG9uJ3QgcG9wdXAgdGhlIGRhdGVwaWNrZXIgaWYgdGhlcmUgaXMgYW5vdGhlciBpbnN0YW5jZSBhbHJlYWR5IG9wZW5lZAoJCXZhciBpbnB1dCA9IGluc3QuaW5wdXRbMF07CgkJaWYgKCQuZGF0ZXBpY2tlci5fY3VySW5zdCAmJiAkLmRhdGVwaWNrZXIuX2N1ckluc3QgIT0gaW5zdCAmJiAkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nICYmICQuZGF0ZXBpY2tlci5fbGFzdElucHV0ICE9IGlucHV0KSB7CgkJCXJldHVybjsKCQl9CgoJCWlmICh0eXBlb2YoaW5zdC5zdGF5X29wZW4pICE9PSAnYm9vbGVhbicgfHwgaW5zdC5zdGF5X29wZW4gPT09IGZhbHNlKSB7CgoJCQl0aGlzLl9iYXNlX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7CgoJCQkvLyBSZWxvYWQgdGhlIHRpbWUgY29udHJvbCB3aGVuIGNoYW5naW5nIHNvbWV0aGluZyBpbiB0aGUgaW5wdXQgdGV4dCBmaWVsZC4KCQkJdmFyIHRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsKCQkJaWYgKHRwX2luc3QpIHsKCQkJCXRwX2luc3QuX2FkZFRpbWVQaWNrZXIoaW5zdCk7CgoJCQkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLnVzZUxvY2FsVGltZXpvbmUpIHsgLy9jaGVja3MgZGF5bGlnaHQgc2F2aW5nIHdpdGggdGhlIG5ldyBkYXRlLgoJCQkJCXZhciBkYXRlID0gbmV3IERhdGUoaW5zdC5zZWxlY3RlZFllYXIsIGluc3Quc2VsZWN0ZWRNb250aCwgaW5zdC5zZWxlY3RlZERheSwgMTIpOwoJCQkJCXNlbGVjdExvY2FsVGltZVpvbmUodHBfaW5zdCwgZGF0ZSk7CgkJCQkJdHBfaW5zdC5fb25UaW1lQ2hhbmdlKCk7CgkJCQl9CgkJCX0KCQl9Cgl9OwoKCS8qCgkqIHRoaXJkIGJhZCBoYWNrIDovIG92ZXJyaWRlIGRhdGVwaWNrZXIgc28gaXQgYWxsb3dzIHNwYWNlcyBhbmQgY29sb24gaW4gdGhlIGlucHV0IGZpZWxkCgkqLwoJJC5kYXRlcGlja2VyLl9iYXNlX2RvS2V5UHJlc3MgPSAkLmRhdGVwaWNrZXIuX2RvS2V5UHJlc3M7CgkkLmRhdGVwaWNrZXIuX2RvS2V5UHJlc3MgPSBmdW5jdGlvbihldmVudCkgewoJCXZhciBpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KGV2ZW50LnRhcmdldCksCgkJCXRwX2luc3QgPSAkLmRhdGVwaWNrZXIuX2dldChpbnN0LCAndGltZXBpY2tlcicpOwoKCQlpZiAodHBfaW5zdCkgewoJCQlpZiAoJC5kYXRlcGlja2VyLl9nZXQoaW5zdCwgJ2NvbnN0cmFpbklucHV0JykpIHsKCQkJCXZhciBhbXBtID0gdXNlQW1wbSh0cF9pbnN0Ll9kZWZhdWx0cy50aW1lRm9ybWF0KSwKCQkJCQlkYXRlQ2hhcnMgPSAkLmRhdGVwaWNrZXIuX3Bvc3NpYmxlQ2hhcnMoJC5kYXRlcGlja2VyLl9nZXQoaW5zdCwgJ2RhdGVGb3JtYXQnKSksCgkJCQkJZGF0ZXRpbWVDaGFycyA9IHRwX2luc3QuX2RlZmF1bHRzLnRpbWVGb3JtYXQudG9TdHJpbmcoKQoJCQkJCQkJCQkJCS5yZXBsYWNlKC9baG1zXS9nLCAnJykKCQkJCQkJCQkJCQkucmVwbGFjZSgvVFQvZywgYW1wbSA/ICdBUE0nIDogJycpCgkJCQkJCQkJCQkJLnJlcGxhY2UoL1R0L2csIGFtcG0gPyAnQWFQcE1tJyA6ICcnKQoJCQkJCQkJCQkJCS5yZXBsYWNlKC90VC9nLCBhbXBtID8gJ0FhUHBNbScgOiAnJykKCQkJCQkJCQkJCQkucmVwbGFjZSgvVC9nLCBhbXBtID8gJ0FQJyA6ICcnKQoJCQkJCQkJCQkJCS5yZXBsYWNlKC90dC9nLCBhbXBtID8gJ2FwbScgOiAnJykKCQkJCQkJCQkJCQkucmVwbGFjZSgvdC9nLCBhbXBtID8gJ2FwJyA6ICcnKSArIAoJCQkJCQkJCQkJCSIgIiArIHRwX2luc3QuX2RlZmF1bHRzLnNlcGFyYXRvciArIAoJCQkJCQkJCQkJCXRwX2luc3QuX2RlZmF1bHRzLnRpbWVTdWZmaXggKyAKCQkJCQkJCQkJCQkodHBfaW5zdC5fZGVmYXVsdHMuc2hvd1RpbWV6b25lID8gdHBfaW5zdC5fZGVmYXVsdHMudGltZXpvbmVMaXN0LmpvaW4oJycpIDogJycpICsgCgkJCQkJCQkJCQkJKHRwX2luc3QuX2RlZmF1bHRzLmFtTmFtZXMuam9pbignJykpICsgKHRwX2luc3QuX2RlZmF1bHRzLnBtTmFtZXMuam9pbignJykpICsgCgkJCQkJCQkJCQkJZGF0ZUNoYXJzLAoJCQkJCWNociA9IFN0cmluZy5mcm9tQ2hhckNvZGUoZXZlbnQuY2hhckNvZGUgPT09IHVuZGVmaW5lZCA/IGV2ZW50LmtleUNvZGUgOiBldmVudC5jaGFyQ29kZSk7CgkJCQlyZXR1cm4gZXZlbnQuY3RybEtleSB8fCAoY2hyIDwgJyAnIHx8ICFkYXRlQ2hhcnMgfHwgZGF0ZXRpbWVDaGFycy5pbmRleE9mKGNocikgPiAtMSk7CgkJCX0KCQl9CgoJCXJldHVybiAkLmRhdGVwaWNrZXIuX2Jhc2VfZG9LZXlQcmVzcyhldmVudCk7Cgl9OwoKCS8qCgkqIEZvdXJ0aCBiYWQgaGFjayA6LyBvdmVycmlkZSBfdXBkYXRlQWx0ZXJuYXRlIGZ1bmN0aW9uIHVzZWQgaW4gaW5saW5lIG1vZGUgdG8gaW5pdCBhbHRGaWVsZAoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV91cGRhdGVBbHRlcm5hdGUgPSAkLmRhdGVwaWNrZXIuX3VwZGF0ZUFsdGVybmF0ZTsKCS8qIFVwZGF0ZSBhbnkgYWx0ZXJuYXRlIGZpZWxkIHRvIHN5bmNocm9uaXNlIHdpdGggdGhlIG1haW4gZmllbGQuICovCgkkLmRhdGVwaWNrZXIuX3VwZGF0ZUFsdGVybmF0ZSA9IGZ1bmN0aW9uKGluc3QpIHsKCQl2YXIgdHBfaW5zdCA9IHRoaXMuX2dldChpbnN0LCAndGltZXBpY2tlcicpOwoJCWlmKHRwX2luc3QpewoJCQl2YXIgYWx0RmllbGQgPSB0cF9pbnN0Ll9kZWZhdWx0cy5hbHRGaWVsZDsKCQkJaWYgKGFsdEZpZWxkKSB7IC8vIHVwZGF0ZSBhbHRlcm5hdGUgZmllbGQgdG9vCgkJCQl2YXIgYWx0Rm9ybWF0ID0gdHBfaW5zdC5fZGVmYXVsdHMuYWx0Rm9ybWF0IHx8IHRwX2luc3QuX2RlZmF1bHRzLmRhdGVGb3JtYXQsCgkJCQkJZGF0ZSA9IHRoaXMuX2dldERhdGUoaW5zdCksCgkJCQkJZm9ybWF0Q2ZnID0gJC5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcoaW5zdCksCgkJCQkJYWx0Rm9ybWF0dGVkRGF0ZVRpbWUgPSAnJywgCgkJCQkJYWx0U2VwYXJhdG9yID0gdHBfaW5zdC5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yID8gdHBfaW5zdC5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yIDogdHBfaW5zdC5fZGVmYXVsdHMuc2VwYXJhdG9yLCAKCQkJCQlhbHRUaW1lU3VmZml4ID0gdHBfaW5zdC5fZGVmYXVsdHMuYWx0VGltZVN1ZmZpeCA/IHRwX2luc3QuX2RlZmF1bHRzLmFsdFRpbWVTdWZmaXggOiB0cF9pbnN0Ll9kZWZhdWx0cy50aW1lU3VmZml4LAoJCQkJCWFsdFRpbWVGb3JtYXQgPSB0cF9pbnN0Ll9kZWZhdWx0cy5hbHRUaW1lRm9ybWF0ICE9PSBudWxsID8gdHBfaW5zdC5fZGVmYXVsdHMuYWx0VGltZUZvcm1hdCA6IHRwX2luc3QuX2RlZmF1bHRzLnRpbWVGb3JtYXQ7CgkJCQkKCQkJCWFsdEZvcm1hdHRlZERhdGVUaW1lICs9ICQuZGF0ZXBpY2tlci5mb3JtYXRUaW1lKGFsdFRpbWVGb3JtYXQsIHRwX2luc3QsIHRwX2luc3QuX2RlZmF1bHRzKSArIGFsdFRpbWVTdWZmaXg7CgkJCQlpZighdHBfaW5zdC5fZGVmYXVsdHMudGltZU9ubHkgJiYgIXRwX2luc3QuX2RlZmF1bHRzLmFsdEZpZWxkVGltZU9ubHkpewoJCQkJCWlmKHRwX2luc3QuX2RlZmF1bHRzLmFsdEZvcm1hdCkKCQkJCQkJYWx0Rm9ybWF0dGVkRGF0ZVRpbWUgPSAkLmRhdGVwaWNrZXIuZm9ybWF0RGF0ZSh0cF9pbnN0Ll9kZWZhdWx0cy5hbHRGb3JtYXQsIChkYXRlID09PSBudWxsID8gbmV3IERhdGUoKSA6IGRhdGUpLCBmb3JtYXRDZmcpICsgYWx0U2VwYXJhdG9yICsgYWx0Rm9ybWF0dGVkRGF0ZVRpbWU7CgkJCQkJZWxzZSBhbHRGb3JtYXR0ZWREYXRlVGltZSA9IHRwX2luc3QuZm9ybWF0dGVkRGF0ZSArIGFsdFNlcGFyYXRvciArIGFsdEZvcm1hdHRlZERhdGVUaW1lOwoJCQkJfQoJCQkJJChhbHRGaWVsZCkudmFsKGFsdEZvcm1hdHRlZERhdGVUaW1lKTsKCQkJfQoJCX0KCQllbHNlewoJCQkkLmRhdGVwaWNrZXIuX2Jhc2VfdXBkYXRlQWx0ZXJuYXRlKGluc3QpOwoJCX0KCX07CgoJLyoKCSogT3ZlcnJpZGUga2V5IHVwIGV2ZW50IHRvIHN5bmMgbWFudWFsIGlucHV0IGNoYW5nZXMuCgkqLwoJJC5kYXRlcGlja2VyLl9iYXNlX2RvS2V5VXAgPSAkLmRhdGVwaWNrZXIuX2RvS2V5VXA7CgkkLmRhdGVwaWNrZXIuX2RvS2V5VXAgPSBmdW5jdGlvbihldmVudCkgewoJCXZhciBpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KGV2ZW50LnRhcmdldCksCgkJCXRwX2luc3QgPSAkLmRhdGVwaWNrZXIuX2dldChpbnN0LCAndGltZXBpY2tlcicpOwoKCQlpZiAodHBfaW5zdCkgewoJCQlpZiAodHBfaW5zdC5fZGVmYXVsdHMudGltZU9ubHkgJiYgKGluc3QuaW5wdXQudmFsKCkgIT0gaW5zdC5sYXN0VmFsKSkgewoJCQkJdHJ5IHsKCQkJCQkkLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7CgkJCQl9IGNhdGNoIChlcnIpIHsKCQkJCQkkLmRhdGVwaWNrZXIubG9nKGVycik7CgkJCQl9CgkJCX0KCQl9CgoJCXJldHVybiAkLmRhdGVwaWNrZXIuX2Jhc2VfZG9LZXlVcChldmVudCk7Cgl9OwoKCS8qCgkqIG92ZXJyaWRlICJUb2RheSIgYnV0dG9uIHRvIGFsc28gZ3JhYiB0aGUgdGltZS4KCSovCgkkLmRhdGVwaWNrZXIuX2Jhc2VfZ290b1RvZGF5ID0gJC5kYXRlcGlja2VyLl9nb3RvVG9kYXk7CgkkLmRhdGVwaWNrZXIuX2dvdG9Ub2RheSA9IGZ1bmN0aW9uKGlkKSB7CgkJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KCQoaWQpWzBdKSwKCQkJJGRwID0gaW5zdC5kcERpdjsKCQl0aGlzLl9iYXNlX2dvdG9Ub2RheShpZCk7CgkJdmFyIHRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsKCQlzZWxlY3RMb2NhbFRpbWVab25lKHRwX2luc3QpOwoJCXZhciBub3cgPSBuZXcgRGF0ZSgpOwoJCXRoaXMuX3NldFRpbWUoaW5zdCwgbm93KTsKCQkkKCcudWktZGF0ZXBpY2tlci10b2RheScsICRkcCkuY2xpY2soKTsKCX07CgoJLyoKCSogRGlzYWJsZSAmIGVuYWJsZSB0aGUgVGltZSBpbiB0aGUgZGF0ZXRpbWVwaWNrZXIKCSovCgkkLmRhdGVwaWNrZXIuX2Rpc2FibGVUaW1lcGlja2VyRGF0ZXBpY2tlciA9IGZ1bmN0aW9uKHRhcmdldCkgewoJCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCh0YXJnZXQpOwoJCWlmICghaW5zdCkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgdHBfaW5zdCA9IHRoaXMuX2dldChpbnN0LCAndGltZXBpY2tlcicpOwoJCSQodGFyZ2V0KS5kYXRlcGlja2VyKCdnZXREYXRlJyk7IC8vIEluaXQgc2VsZWN0ZWRbWWVhcnxNb250aHxEYXldCgkJaWYgKHRwX2luc3QpIHsKCQkJdHBfaW5zdC5fZGVmYXVsdHMuc2hvd1RpbWVwaWNrZXIgPSBmYWxzZTsKCQkJdHBfaW5zdC5fdXBkYXRlRGF0ZVRpbWUoaW5zdCk7CgkJfQoJfTsKCgkkLmRhdGVwaWNrZXIuX2VuYWJsZVRpbWVwaWNrZXJEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0KSB7CgkJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCk7CgkJaWYgKCFpbnN0KSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgkJJCh0YXJnZXQpLmRhdGVwaWNrZXIoJ2dldERhdGUnKTsgLy8gSW5pdCBzZWxlY3RlZFtZZWFyfE1vbnRofERheV0KCQlpZiAodHBfaW5zdCkgewoJCQl0cF9pbnN0Ll9kZWZhdWx0cy5zaG93VGltZXBpY2tlciA9IHRydWU7CgkJCXRwX2luc3QuX2FkZFRpbWVQaWNrZXIoaW5zdCk7IC8vIENvdWxkIGJlIGRpc2FibGVkIG9uIHBhZ2UgbG9hZAoJCQl0cF9pbnN0Ll91cGRhdGVEYXRlVGltZShpbnN0KTsKCQl9Cgl9OwoKCS8qCgkqIENyZWF0ZSBvdXIgb3duIHNldCB0aW1lIGZ1bmN0aW9uCgkqLwoJJC5kYXRlcGlja2VyLl9zZXRUaW1lID0gZnVuY3Rpb24oaW5zdCwgZGF0ZSkgewoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgkJaWYgKHRwX2luc3QpIHsKCQkJdmFyIGRlZmF1bHRzID0gdHBfaW5zdC5fZGVmYXVsdHM7CgoJCQkvLyBjYWxsaW5nIF9zZXRUaW1lIHdpdGggbm8gZGF0ZSBzZXRzIHRpbWUgdG8gZGVmYXVsdHMKCQkJdHBfaW5zdC5ob3VyID0gZGF0ZSA/IGRhdGUuZ2V0SG91cnMoKSA6IGRlZmF1bHRzLmhvdXI7CgkJCXRwX2luc3QubWludXRlID0gZGF0ZSA/IGRhdGUuZ2V0TWludXRlcygpIDogZGVmYXVsdHMubWludXRlOwoJCQl0cF9pbnN0LnNlY29uZCA9IGRhdGUgPyBkYXRlLmdldFNlY29uZHMoKSA6IGRlZmF1bHRzLnNlY29uZDsKCQkJdHBfaW5zdC5taWxsaXNlYyA9IGRhdGUgPyBkYXRlLmdldE1pbGxpc2Vjb25kcygpIDogZGVmYXVsdHMubWlsbGlzZWM7CgoJCQkvL2NoZWNrIGlmIHdpdGhpbiBtaW4vbWF4IHRpbWVzLi4gCgkJCXRwX2luc3QuX2xpbWl0TWluTWF4RGF0ZVRpbWUoaW5zdCwgdHJ1ZSk7CgoJCQl0cF9pbnN0Ll9vblRpbWVDaGFuZ2UoKTsKCQkJdHBfaW5zdC5fdXBkYXRlRGF0ZVRpbWUoaW5zdCk7CgkJfQoJfTsKCgkvKgoJKiBDcmVhdGUgbmV3IHB1YmxpYyBtZXRob2QgdG8gc2V0IG9ubHkgdGltZSwgY2FsbGFibGUgYXMgJCgpLmRhdGVwaWNrZXIoJ3NldFRpbWUnLCBkYXRlKQoJKi8KCSQuZGF0ZXBpY2tlci5fc2V0VGltZURhdGVwaWNrZXIgPSBmdW5jdGlvbih0YXJnZXQsIGRhdGUsIHdpdGhEYXRlKSB7CgkJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCk7CgkJaWYgKCFpbnN0KSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgoJCWlmICh0cF9pbnN0KSB7CgkJCXRoaXMuX3NldERhdGVGcm9tRmllbGQoaW5zdCk7CgkJCXZhciB0cF9kYXRlOwoJCQlpZiAoZGF0ZSkgewoJCQkJaWYgKHR5cGVvZiBkYXRlID09ICJzdHJpbmciKSB7CgkJCQkJdHBfaW5zdC5fcGFyc2VUaW1lKGRhdGUsIHdpdGhEYXRlKTsKCQkJCQl0cF9kYXRlID0gbmV3IERhdGUoKTsKCQkJCQl0cF9kYXRlLnNldEhvdXJzKHRwX2luc3QuaG91ciwgdHBfaW5zdC5taW51dGUsIHRwX2luc3Quc2Vjb25kLCB0cF9pbnN0Lm1pbGxpc2VjKTsKCQkJCX0gZWxzZSB7CgkJCQkJdHBfZGF0ZSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTsKCQkJCX0KCQkJCWlmICh0cF9kYXRlLnRvU3RyaW5nKCkgPT0gJ0ludmFsaWQgRGF0ZScpIHsKCQkJCQl0cF9kYXRlID0gdW5kZWZpbmVkOwoJCQkJfQoJCQkJdGhpcy5fc2V0VGltZShpbnN0LCB0cF9kYXRlKTsKCQkJfQoJCX0KCgl9OwoKCS8qCgkqIG92ZXJyaWRlIHNldERhdGUoKSB0byBhbGxvdyBzZXR0aW5nIHRpbWUgdG9vIHdpdGhpbiBEYXRlIG9iamVjdAoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV9zZXREYXRlRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlci5fc2V0RGF0ZURhdGVwaWNrZXI7CgkkLmRhdGVwaWNrZXIuX3NldERhdGVEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBkYXRlKSB7CgkJdmFyIGluc3QgPSB0aGlzLl9nZXRJbnN0KHRhcmdldCk7CgkJaWYgKCFpbnN0KSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciB0cF9kYXRlID0gKGRhdGUgaW5zdGFuY2VvZiBEYXRlKSA/IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKSA6IGRhdGU7CgoJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoaW5zdCk7CgkJdGhpcy5fYmFzZV9zZXREYXRlRGF0ZXBpY2tlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwoJCXRoaXMuX3NldFRpbWVEYXRlcGlja2VyKHRhcmdldCwgdHBfZGF0ZSwgdHJ1ZSk7Cgl9OwoKCS8qCgkqIG92ZXJyaWRlIGdldERhdGUoKSB0byBhbGxvdyBnZXR0aW5nIHRpbWUgdG9vIHdpdGhpbiBEYXRlIG9iamVjdAoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV9nZXREYXRlRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlci5fZ2V0RGF0ZURhdGVwaWNrZXI7CgkkLmRhdGVwaWNrZXIuX2dldERhdGVEYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBub0RlZmF1bHQpIHsKCQl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QodGFyZ2V0KTsKCQlpZiAoIWluc3QpIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIHRwX2luc3QgPSB0aGlzLl9nZXQoaW5zdCwgJ3RpbWVwaWNrZXInKTsKCgkJaWYgKHRwX2luc3QpIHsKCQkJLy8gaWYgaXQgaGFzbid0IHlldCBiZWVuIGRlZmluZWQsIGdyYWIgZnJvbSBmaWVsZAoJCQlpZihpbnN0Lmxhc3RWYWwgPT09IHVuZGVmaW5lZCl7CgkJCQl0aGlzLl9zZXREYXRlRnJvbUZpZWxkKGluc3QsIG5vRGVmYXVsdCk7CgkJCX0KCgkJCXZhciBkYXRlID0gdGhpcy5fZ2V0RGF0ZShpbnN0KTsKCQkJaWYgKGRhdGUgJiYgdHBfaW5zdC5fcGFyc2VUaW1lKCQodGFyZ2V0KS52YWwoKSwgdHBfaW5zdC50aW1lT25seSkpIHsKCQkJCWRhdGUuc2V0SG91cnModHBfaW5zdC5ob3VyLCB0cF9pbnN0Lm1pbnV0ZSwgdHBfaW5zdC5zZWNvbmQsIHRwX2luc3QubWlsbGlzZWMpOwoJCQl9CgkJCXJldHVybiBkYXRlOwoJCX0KCQlyZXR1cm4gdGhpcy5fYmFzZV9nZXREYXRlRGF0ZXBpY2tlcih0YXJnZXQsIG5vRGVmYXVsdCk7Cgl9OwoKCS8qCgkqIG92ZXJyaWRlIHBhcnNlRGF0ZSgpIGJlY2F1c2UgVUkgMS44LjE0IHRocm93cyBhbiBlcnJvciBhYm91dCAiRXh0cmEgY2hhcmFjdGVycyIKCSogQW4gb3B0aW9uIGluIGRhdGFwaWNrZXIgdG8gaWdub3JlIGV4dHJhIGZvcm1hdCBjaGFyYWN0ZXJzIHdvdWxkIGJlIG5pY2VyLgoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV9wYXJzZURhdGUgPSAkLmRhdGVwaWNrZXIucGFyc2VEYXRlOwoJJC5kYXRlcGlja2VyLnBhcnNlRGF0ZSA9IGZ1bmN0aW9uKGZvcm1hdCwgdmFsdWUsIHNldHRpbmdzKSB7CgkJdmFyIGRhdGU7CgkJdHJ5IHsKCQkJZGF0ZSA9IHRoaXMuX2Jhc2VfcGFyc2VEYXRlKGZvcm1hdCwgdmFsdWUsIHNldHRpbmdzKTsKCQl9IGNhdGNoIChlcnIpIHsKCQkJLy8gSGFjayEgIFRoZSBlcnJvciBtZXNzYWdlIGVuZHMgd2l0aCBhIGNvbG9uLCBhIHNwYWNlLCBhbmQKCQkJLy8gdGhlICJleHRyYSIgY2hhcmFjdGVycy4gIFdlIHJlbHkgb24gdGhhdCBpbnN0ZWFkIG9mCgkJCS8vIGF0dGVtcHRpbmcgdG8gcGVyZmVjdGx5IHJlcHJvZHVjZSB0aGUgcGFyc2luZyBhbGdvcml0aG0uCgkJCWRhdGUgPSB0aGlzLl9iYXNlX3BhcnNlRGF0ZShmb3JtYXQsIHZhbHVlLnN1YnN0cmluZygwLHZhbHVlLmxlbmd0aC0oZXJyLmxlbmd0aC1lcnIuaW5kZXhPZignOicpLTIpKSwgc2V0dGluZ3MpOwoJCQkkLmRhdGVwaWNrZXIubG9nKCJFcnJvciBwYXJzaW5nIHRoZSBkYXRlIHN0cmluZzogIiArIGVyciArICJcbmRhdGUgc3RyaW5nID0gIiArIHZhbHVlICsgIlxuZGF0ZSBmb3JtYXQgPSAiICsgZm9ybWF0KTsKCQl9CgkJcmV0dXJuIGRhdGU7Cgl9OwoKCS8qCgkqIG92ZXJyaWRlIGZvcm1hdERhdGUgdG8gc2V0IGRhdGUgd2l0aCB0aW1lIHRvIHRoZSBpbnB1dAoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV9mb3JtYXREYXRlID0gJC5kYXRlcGlja2VyLl9mb3JtYXREYXRlOwoJJC5kYXRlcGlja2VyLl9mb3JtYXREYXRlID0gZnVuY3Rpb24oaW5zdCwgZGF5LCBtb250aCwgeWVhcikgewoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgkJaWYgKHRwX2luc3QpIHsKCQkJdHBfaW5zdC5fdXBkYXRlRGF0ZVRpbWUoaW5zdCk7CgkJCXJldHVybiB0cF9pbnN0LiRpbnB1dC52YWwoKTsKCQl9CgkJcmV0dXJuIHRoaXMuX2Jhc2VfZm9ybWF0RGF0ZShpbnN0KTsKCX07CgoJLyoKCSogb3ZlcnJpZGUgb3B0aW9ucyBzZXR0ZXIgdG8gYWRkIHRpbWUgdG8gbWF4RGF0ZShUaW1lKSBhbmQgbWluRGF0ZShUaW1lKS4gTWF4RGF0ZQoJKi8KCSQuZGF0ZXBpY2tlci5fYmFzZV9vcHRpb25EYXRlcGlja2VyID0gJC5kYXRlcGlja2VyLl9vcHRpb25EYXRlcGlja2VyOwoJJC5kYXRlcGlja2VyLl9vcHRpb25EYXRlcGlja2VyID0gZnVuY3Rpb24odGFyZ2V0LCBuYW1lLCB2YWx1ZSkgewoJCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCh0YXJnZXQpLAoJICAgICAgICBuYW1lX2Nsb25lOwoJCWlmICghaW5zdCkgewoJCQlyZXR1cm4gbnVsbDsKCQl9CgoJCXZhciB0cF9pbnN0ID0gdGhpcy5fZ2V0KGluc3QsICd0aW1lcGlja2VyJyk7CgkJaWYgKHRwX2luc3QpIHsKCQkJdmFyIG1pbiA9IG51bGwsCgkJCQltYXggPSBudWxsLAoJCQkJb25zZWxlY3QgPSBudWxsLAoJCQkJb3ZlcnJpZGVzID0gdHBfaW5zdC5fZGVmYXVsdHMuZXZudHMsCgkJCQlmbnMgPSB7fSwKCQkJCXByb3A7CgkJICAgIGlmICh0eXBlb2YgbmFtZSA9PSAnc3RyaW5nJykgeyAvLyBpZiBtaW4vbWF4IHdhcyBzZXQgd2l0aCB0aGUgc3RyaW5nCgkJICAgICAgICBpZiAobmFtZSA9PT0gJ21pbkRhdGUnIHx8IG5hbWUgPT09ICdtaW5EYXRlVGltZScpIHsKCQkgICAgICAgICAgICBtaW4gPSB2YWx1ZTsKCQkgICAgICAgIH0gZWxzZSBpZiAobmFtZSA9PT0gJ21heERhdGUnIHx8IG5hbWUgPT09ICdtYXhEYXRlVGltZScpIHsKCQkgICAgICAgICAgICBtYXggPSB2YWx1ZTsKCQkgICAgICAgIH0gZWxzZSBpZiAobmFtZSA9PT0gJ29uU2VsZWN0JykgewoJCSAgICAgICAgICAgIG9uc2VsZWN0ID0gdmFsdWU7CgkJICAgICAgICB9IGVsc2UgaWYgKG92ZXJyaWRlcy5oYXNPd25Qcm9wZXJ0eShuYW1lKSkgewoJCSAgICAgICAgICAgIGlmICh0eXBlb2YgKHZhbHVlKSA9PT0gJ3VuZGVmaW5lZCcpIHsKCQkgICAgICAgICAgICAgICAgcmV0dXJuIG92ZXJyaWRlc1tuYW1lXTsKCQkgICAgICAgICAgICB9CgkJICAgICAgICAgICAgZm5zW25hbWVdID0gdmFsdWU7CgkJICAgICAgICAgICAgbmFtZV9jbG9uZSA9IHt9OyAvL2VtcHR5IHJlc3VsdHMgaW4gZXhpdGluZyBmdW5jdGlvbiBhZnRlciBvdmVycmlkZXMgdXBkYXRlZAoJCSAgICAgICAgfQoJCSAgICB9IGVsc2UgaWYgKHR5cGVvZiBuYW1lID09ICdvYmplY3QnKSB7IC8vaWYgbWluL21heCB3YXMgc2V0IHdpdGggdGhlIEpTT04KCQkgICAgICAgIGlmIChuYW1lLm1pbkRhdGUpIHsKCQkgICAgICAgICAgICBtaW4gPSBuYW1lLm1pbkRhdGU7CgkJICAgICAgICB9IGVsc2UgaWYgKG5hbWUubWluRGF0ZVRpbWUpIHsKCQkgICAgICAgICAgICBtaW4gPSBuYW1lLm1pbkRhdGVUaW1lOwoJCSAgICAgICAgfSBlbHNlIGlmIChuYW1lLm1heERhdGUpIHsKCQkgICAgICAgICAgICBtYXggPSBuYW1lLm1heERhdGU7CgkJICAgICAgICB9IGVsc2UgaWYgKG5hbWUubWF4RGF0ZVRpbWUpIHsKCQkgICAgICAgICAgICBtYXggPSBuYW1lLm1heERhdGVUaW1lOwoJCSAgICAgICAgfQoJCSAgICAgICAgZm9yIChwcm9wIGluIG92ZXJyaWRlcykgewoJCSAgICAgICAgICAgIGlmIChvdmVycmlkZXMuaGFzT3duUHJvcGVydHkocHJvcCkgJiYgbmFtZVtwcm9wXSkgewoJCSAgICAgICAgICAgICAgICBmbnNbcHJvcF0gPSBuYW1lW3Byb3BdOwoJCSAgICAgICAgICAgIH0KCQkgICAgICAgIH0KCQkgICAgfQoJCSAgICBmb3IgKHByb3AgaW4gZm5zKSB7CgkJICAgICAgICBpZiAoZm5zLmhhc093blByb3BlcnR5KHByb3ApKSB7CgkJICAgICAgICAgICAgb3ZlcnJpZGVzW3Byb3BdID0gZm5zW3Byb3BdOwoJCSAgICAgICAgICAgIGlmICghbmFtZV9jbG9uZSkgeyBuYW1lX2Nsb25lID0gJC5leHRlbmQoe30sIG5hbWUpO30KCQkgICAgICAgICAgICBkZWxldGUgbmFtZV9jbG9uZVtwcm9wXTsKCQkgICAgICAgIH0KCQkgICAgfQoJCSAgICBpZiAobmFtZV9jbG9uZSAmJiBpc0VtcHR5T2JqZWN0KG5hbWVfY2xvbmUpKSB7IHJldHVybjsgfQoJCSAgICBpZiAobWluKSB7IC8vaWYgbWluIHdhcyBzZXQKCQkgICAgICAgIGlmIChtaW4gPT09IDApIHsKCQkgICAgICAgICAgICBtaW4gPSBuZXcgRGF0ZSgpOwoJCSAgICAgICAgfSBlbHNlIHsKCQkgICAgICAgICAgICBtaW4gPSBuZXcgRGF0ZShtaW4pOwoJCSAgICAgICAgfQoJCSAgICAgICAgdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZSA9IG1pbjsKCQkgICAgICAgIHRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGVUaW1lID0gbWluOwoJCSAgICB9IGVsc2UgaWYgKG1heCkgeyAvL2lmIG1heCB3YXMgc2V0CgkJICAgICAgICBpZiAobWF4ID09PSAwKSB7CgkJICAgICAgICAgICAgbWF4ID0gbmV3IERhdGUoKTsKCQkgICAgICAgIH0gZWxzZSB7CgkJICAgICAgICAgICAgbWF4ID0gbmV3IERhdGUobWF4KTsKCQkgICAgICAgIH0KCQkgICAgICAgIHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUgPSBtYXg7CgkJICAgICAgICB0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZSA9IG1heDsKCQkgICAgfSBlbHNlIGlmIChvbnNlbGVjdCkgewoJCSAgICAgICAgdHBfaW5zdC5fZGVmYXVsdHMub25TZWxlY3QgPSBvbnNlbGVjdDsKCQkgICAgfQoJCX0KCQlpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkgewoJCQlyZXR1cm4gdGhpcy5fYmFzZV9vcHRpb25EYXRlcGlja2VyLmNhbGwoJC5kYXRlcGlja2VyLCB0YXJnZXQsIG5hbWUpOwoJCX0KCQlyZXR1cm4gdGhpcy5fYmFzZV9vcHRpb25EYXRlcGlja2VyLmNhbGwoJC5kYXRlcGlja2VyLCB0YXJnZXQsIG5hbWVfY2xvbmUgfHwgbmFtZSwgdmFsdWUpOwoJfTsKCS8qCgkqIGpRdWVyeSBpc0VtcHR5T2JqZWN0IGRvZXMgbm90IGNoZWNrIGhhc093blByb3BlcnR5IC0gaWYgc29tZW9uZSBoYXMgYWRkZWQgdG8gdGhlIG9iamVjdCBwcm90b3R5cGUsCgkqIGl0IHdpbGwgcmV0dXJuIGZhbHNlIGZvciBhbGwgb2JqZWN0cwoJKi8KCXZhciBpc0VtcHR5T2JqZWN0ID0gZnVuY3Rpb24ob2JqKSB7CgkJdmFyIHByb3A7CgkJZm9yIChwcm9wIGluIG9iaikgewoJCQlpZiAob2JqLmhhc093blByb3BlcnR5KG9iaikpIHsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCX0KCQlyZXR1cm4gdHJ1ZTsKCX07CgoJLyoKCSogalF1ZXJ5IGV4dGVuZCBub3cgaWdub3JlcyBudWxscyEKCSovCgl2YXIgZXh0ZW5kUmVtb3ZlID0gZnVuY3Rpb24odGFyZ2V0LCBwcm9wcykgewoJCSQuZXh0ZW5kKHRhcmdldCwgcHJvcHMpOwoJCWZvciAodmFyIG5hbWUgaW4gcHJvcHMpIHsKCQkJaWYgKHByb3BzW25hbWVdID09PSBudWxsIHx8IHByb3BzW25hbWVdID09PSB1bmRlZmluZWQpIHsKCQkJCXRhcmdldFtuYW1lXSA9IHByb3BzW25hbWVdOwoJCQl9CgkJfQoJCXJldHVybiB0YXJnZXQ7Cgl9OwoKCS8qCgkqIERldGVybWluZSBieSB0aGUgdGltZSBmb3JtYXQgaWYgc2hvdWxkIHVzZSBhbXBtCgkqIFJldHVybnMgdHJ1ZSBpZiBzaG91bGQgdXNlIGFtcG0sIGZhbHNlIGlmIG5vdAoJKi8KCXZhciB1c2VBbXBtID0gZnVuY3Rpb24odGltZUZvcm1hdCl7CgkJcmV0dXJuICh0aW1lRm9ybWF0LmluZGV4T2YoJ3QnKSAhPT0gLTEgJiYgdGltZUZvcm1hdC5pbmRleE9mKCdoJykgIT09IC0xKTsKCX07CgoJLyoKCSogQ29udmVydHMgMjQgaG91ciBmb3JtYXQgaW50byAxMiBob3VyCgkqIFJldHVybnMgMTIgaG91ciB3aXRob3V0IGxlYWRpbmcgMAoJKi8KCXZhciBjb252ZXJ0MjR0bzEyID0gZnVuY3Rpb24oaG91cikgewoJCWlmIChob3VyID4gMTIpIHsKCQkJaG91ciA9IGhvdXIgLSAxMjsKCQl9CgoJCWlmIChob3VyID09IDApIHsKCQkJaG91ciA9IDEyOwoJCX0KCgkJcmV0dXJuIFN0cmluZyhob3VyKTsKCX07CgoJLyoKCSogU3BsaXRzIGRhdGV0aW1lIHN0cmluZyBpbnRvIGRhdGUgYW5zIHRpbWUgc3Vic3RyaW5ncy4KCSogVGhyb3dzIGV4Y2VwdGlvbiB3aGVuIGRhdGUgY2FuJ3QgYmUgcGFyc2VkCgkqIFJldHVybnMgW2RhdGVTdHJpbmcsIHRpbWVTdHJpbmddCgkqLwoJdmFyIHNwbGl0RGF0ZVRpbWUgPSBmdW5jdGlvbihkYXRlRm9ybWF0LCBkYXRlVGltZVN0cmluZywgZGF0ZVNldHRpbmdzLCB0aW1lU2V0dGluZ3MpIHsKCQl0cnkgewoJCQkvLyBUaGUgaWRlYSBpcyB0byBnZXQgdGhlIG51bWJlciBzZXBhcmF0b3Igb2NjdXJhbmNlcyBpbiBkYXRldGltZSBhbmQgdGhlIHRpbWUgZm9ybWF0IHJlcXVlc3RlZCAoc2luY2UgdGltZSBoYXMgCgkJCS8vIGZld2VyIHVua25vd25zLCBtb3N0bHkgbnVtYmVycyBhbmQgYW0vcG0pLiBXZSB3aWxsIHVzZSB0aGUgdGltZSBwYXR0ZXJuIHRvIHNwbGl0LgoJCQl2YXIgc2VwYXJhdG9yID0gdGltZVNldHRpbmdzICYmIHRpbWVTZXR0aW5ncy5zZXBhcmF0b3IgPyB0aW1lU2V0dGluZ3Muc2VwYXJhdG9yIDogJC50aW1lcGlja2VyLl9kZWZhdWx0cy5zZXBhcmF0b3IsCgkJCQlmb3JtYXQgPSB0aW1lU2V0dGluZ3MgJiYgdGltZVNldHRpbmdzLnRpbWVGb3JtYXQgPyB0aW1lU2V0dGluZ3MudGltZUZvcm1hdCA6ICQudGltZXBpY2tlci5fZGVmYXVsdHMudGltZUZvcm1hdCwKCQkJCXRpbWVQYXJ0cyA9IGZvcm1hdC5zcGxpdChzZXBhcmF0b3IpLCAvLyBob3cgbWFueSBvY2N1cmFuY2VzIG9mIHNlcGFyYXRvciBtYXkgYmUgaW4gb3VyIGZvcm1hdD8KCQkJCXRpbWVQYXJ0c0xlbiA9IHRpbWVQYXJ0cy5sZW5ndGgsCgkJCQlhbGxQYXJ0cyA9IGRhdGVUaW1lU3RyaW5nLnNwbGl0KHNlcGFyYXRvciksCgkJCQlhbGxQYXJ0c0xlbiA9IGFsbFBhcnRzLmxlbmd0aDsKCgkJCWlmIChhbGxQYXJ0c0xlbiA+IDEpIHsKCQkJCXJldHVybiBbCgkJCQkJCWFsbFBhcnRzLnNwbGljZSgwLGFsbFBhcnRzTGVuLXRpbWVQYXJ0c0xlbikuam9pbihzZXBhcmF0b3IpLAoJCQkJCQlhbGxQYXJ0cy5zcGxpY2UoMCx0aW1lUGFydHNMZW4pLmpvaW4oc2VwYXJhdG9yKQoJCQkJCV07CgkJCX0KCgkJfSBjYXRjaCAoZXJyKSB7CgkJCSQuZGF0ZXBpY2tlci5sb2coJ0NvdWxkIG5vdCBzcGxpdCB0aGUgZGF0ZSBmcm9tIHRoZSB0aW1lLiBQbGVhc2UgY2hlY2sgdGhlIGZvbGxvd2luZyBkYXRldGltZXBpY2tlciBvcHRpb25zJyArCgkJCQkJIlxudGhyb3duIGVycm9yOiAiICsgZXJyICsKCQkJCQkiXG5kYXRlVGltZVN0cmluZyIgKyBkYXRlVGltZVN0cmluZyArCgkJCQkJIlxuZGF0ZUZvcm1hdCA9ICIgKyBkYXRlRm9ybWF0ICsKCQkJCQkiXG5zZXBhcmF0b3IgPSAiICsgdGltZVNldHRpbmdzLnNlcGFyYXRvciArCgkJCQkJIlxudGltZUZvcm1hdCA9ICIgKyB0aW1lU2V0dGluZ3MudGltZUZvcm1hdCk7CgoJCQlpZiAoZXJyLmluZGV4T2YoIjoiKSA+PSAwKSB7CgkJCQkvLyBIYWNrISAgVGhlIGVycm9yIG1lc3NhZ2UgZW5kcyB3aXRoIGEgY29sb24sIGEgc3BhY2UsIGFuZAoJCQkJLy8gdGhlICJleHRyYSIgY2hhcmFjdGVycy4gIFdlIHJlbHkgb24gdGhhdCBpbnN0ZWFkIG9mCgkJCQkvLyBhdHRlbXB0aW5nIHRvIHBlcmZlY3RseSByZXByb2R1Y2UgdGhlIHBhcnNpbmcgYWxnb3JpdGhtLgoJCQkJdmFyIGRhdGVTdHJpbmdMZW5ndGggPSBkYXRlVGltZVN0cmluZy5sZW5ndGggLSAoZXJyLmxlbmd0aCAtIGVyci5pbmRleE9mKCc6JykgLSAyKSwKCQkJCQl0aW1lU3RyaW5nID0gZGF0ZVRpbWVTdHJpbmcuc3Vic3RyaW5nKGRhdGVTdHJpbmdMZW5ndGgpOwoKCQkJCXJldHVybiBbJC50cmltKGRhdGVUaW1lU3RyaW5nLnN1YnN0cmluZygwLCBkYXRlU3RyaW5nTGVuZ3RoKSksICQudHJpbShkYXRlVGltZVN0cmluZy5zdWJzdHJpbmcoZGF0ZVN0cmluZ0xlbmd0aCkpXTsKCgkJCX0gZWxzZSB7CgkJCQl0aHJvdyBlcnI7CgkJCX0KCQl9CgkJcmV0dXJuIFtkYXRlVGltZVN0cmluZywgJyddOwoJfTsKCgkvKgoJKiBJbnRlcm5hbCBmdW5jdGlvbiB0byBwYXJzZSBkYXRldGltZSBpbnRlcnZhbAoJKiBSZXR1cm5zOiB7ZGF0ZTogRGF0ZSwgdGltZU9iajogT2JqZWN0fSwgd2hlcmUKCSogICBkYXRlIC0gcGFyc2VkIGRhdGUgd2l0aG91dCB0aW1lICh0eXBlIERhdGUpCgkqICAgdGltZU9iaiA9IHtob3VyOiAsIG1pbnV0ZTogLCBzZWNvbmQ6ICwgbWlsbGlzZWM6IH0gLSBwYXJzZWQgdGltZS4gT3B0aW9uYWwKCSovCgl2YXIgcGFyc2VEYXRlVGltZUludGVybmFsID0gZnVuY3Rpb24oZGF0ZUZvcm1hdCwgdGltZUZvcm1hdCwgZGF0ZVRpbWVTdHJpbmcsIGRhdGVTZXR0aW5ncywgdGltZVNldHRpbmdzKSB7CgkJdmFyIGRhdGU7CgkJdmFyIHNwbGl0UmVzID0gc3BsaXREYXRlVGltZShkYXRlRm9ybWF0LCBkYXRlVGltZVN0cmluZywgZGF0ZVNldHRpbmdzLCB0aW1lU2V0dGluZ3MpOwoJCWRhdGUgPSAkLmRhdGVwaWNrZXIuX2Jhc2VfcGFyc2VEYXRlKGRhdGVGb3JtYXQsIHNwbGl0UmVzWzBdLCBkYXRlU2V0dGluZ3MpOwoJCWlmIChzcGxpdFJlc1sxXSAhPT0gJycpIHsKCQkJdmFyIHRpbWVTdHJpbmcgPSBzcGxpdFJlc1sxXSwKCQkJCXBhcnNlZFRpbWUgPSAkLmRhdGVwaWNrZXIucGFyc2VUaW1lKHRpbWVGb3JtYXQsIHRpbWVTdHJpbmcsIHRpbWVTZXR0aW5ncyk7CgoJCQlpZiAocGFyc2VkVGltZSA9PT0gbnVsbCkgewoJCQkJdGhyb3cgJ1dyb25nIHRpbWUgZm9ybWF0JzsKCQkJfQoJCQlyZXR1cm4gewoJCQkJZGF0ZTogZGF0ZSwKCQkJCXRpbWVPYmo6IHBhcnNlZFRpbWUKCQkJfTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gewoJCQkJZGF0ZTogZGF0ZQoJCQl9OwoJCX0KCX07CgoJLyoKCSogSW50ZXJuYWwgZnVuY3Rpb24gdG8gc2V0IHRpbWV6b25lX3NlbGVjdCB0byB0aGUgbG9jYWwgdGltZXpvbmUKCSovCgl2YXIgc2VsZWN0TG9jYWxUaW1lWm9uZSA9IGZ1bmN0aW9uKHRwX2luc3QsIGRhdGUpIHsKCQlpZiAodHBfaW5zdCAmJiB0cF9pbnN0LnRpbWV6b25lX3NlbGVjdCkgewoJCQl0cF9pbnN0Ll9kZWZhdWx0cy51c2VMb2NhbFRpbWV6b25lID0gdHJ1ZTsKCQkJdmFyIG5vdyA9IHR5cGVvZiBkYXRlICE9PSAndW5kZWZpbmVkJyA/IGRhdGUgOiBuZXcgRGF0ZSgpOwoJCQl2YXIgdHpvZmZzZXQgPSAkLnRpbWVwaWNrZXIudGltZVpvbmVPZmZzZXRTdHJpbmcobm93KTsKCQkJaWYgKHRwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lSXNvODYwMSkgewoJCQkJdHpvZmZzZXQgPSB0em9mZnNldC5zdWJzdHJpbmcoMCwgMykgKyAnOicgKyB0em9mZnNldC5zdWJzdHJpbmcoMyk7CgkJCX0KCQkJdHBfaW5zdC50aW1lem9uZV9zZWxlY3QudmFsKHR6b2Zmc2V0KTsKCQl9Cgl9OwoKCS8qCgkqIENyZWF0ZSBhIFNpbmdsZXRvbiBJbnNhbmNlCgkqLwoJJC50aW1lcGlja2VyID0gbmV3IFRpbWVwaWNrZXIoKTsKCgkvKioKCSAqIEdldCB0aGUgdGltZXpvbmUgb2Zmc2V0IGFzIHN0cmluZyBmcm9tIGEgZGF0ZSBvYmplY3QgKGVnICcrMDUzMCcgZm9yIFVUQys1LjUpCgkgKiBAcGFyYW0gIGRhdGUKCSAqIEByZXR1cm4gc3RyaW5nCgkgKi8KCSQudGltZXBpY2tlci50aW1lWm9uZU9mZnNldFN0cmluZyA9IGZ1bmN0aW9uKGRhdGUpIHsKCQl2YXIgb2ZmID0gZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpICogLTEsCgkJCW1pbnV0ZXMgPSBvZmYgJSA2MCwKCQkJaG91cnMgPSAob2ZmIC0gbWludXRlcykgLyA2MDsKCQlyZXR1cm4gKG9mZiA+PSAwID8gJysnIDogJy0nKSArICgnMCcgKyAoaG91cnMgKiAxMDEpLnRvU3RyaW5nKCkpLnN1YnN0cigtMikgKyAoJzAnICsgKG1pbnV0ZXMgKiAxMDEpLnRvU3RyaW5nKCkpLnN1YnN0cigtMik7Cgl9OwoKCS8qKgoJICogQ2FsbHMgYHRpbWVwaWNrZXIoKWAgb24gdGhlIGBzdGFydFRpbWVgIGFuZCBgZW5kVGltZWAgZWxlbWVudHMsIGFuZCBjb25maWd1cmVzIHRoZW0gdG8KCSAqIGVuZm9yY2UgZGF0ZSByYW5nZSBsaW1pdHMuCgkgKiBuLmIuIFRoZSBpbnB1dCB2YWx1ZSBtdXN0IGJlIGNvcnJlY3RseSBmb3JtYXR0ZWQgKHJlZm9ybWF0dGluZyBpcyBub3Qgc3VwcG9ydGVkKQoJICogQHBhcmFtICBFbGVtZW50IHN0YXJ0VGltZQoJICogQHBhcmFtICBFbGVtZW50IGVuZFRpbWUKCSAqIEBwYXJhbSAgb2JqIG9wdGlvbnMgT3B0aW9ucyBmb3IgdGhlIHRpbWVwaWNrZXIoKSBjYWxsCgkgKiBAcmV0dXJuIGpRdWVyeQoJICovCgkkLnRpbWVwaWNrZXIudGltZVJhbmdlID0gZnVuY3Rpb24oc3RhcnRUaW1lLCBlbmRUaW1lLCBvcHRpb25zKSB7CgkJcmV0dXJuICQudGltZXBpY2tlci5oYW5kbGVSYW5nZSgndGltZXBpY2tlcicsIHN0YXJ0VGltZSwgZW5kVGltZSwgb3B0aW9ucyk7Cgl9OwoKCS8qKgoJICogQ2FsbHMgYGRhdGV0aW1lcGlja2VyYCBvbiB0aGUgYHN0YXJ0VGltZWAgYW5kIGBlbmRUaW1lYCBlbGVtZW50cywgYW5kIGNvbmZpZ3VyZXMgdGhlbSB0bwoJICogZW5mb3JjZSBkYXRlIHJhbmdlIGxpbWl0cy4KCSAqIEBwYXJhbSAgRWxlbWVudCBzdGFydFRpbWUKCSAqIEBwYXJhbSAgRWxlbWVudCBlbmRUaW1lCgkgKiBAcGFyYW0gIG9iaiBvcHRpb25zIE9wdGlvbnMgZm9yIHRoZSBgdGltZXBpY2tlcigpYCBjYWxsLiBBbHNvIHN1cHBvcnRzIGByZWZvcm1hdGAsCgkgKiAgIGEgYm9vbGVhbiB2YWx1ZSB0aGF0IGNhbiBiZSB1c2VkIHRvIHJlZm9ybWF0IHRoZSBpbnB1dCB2YWx1ZXMgdG8gdGhlIGBkYXRlRm9ybWF0YC4KCSAqIEBwYXJhbSAgc3RyaW5nIG1ldGhvZCBDYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSB0eXBlIG9mIHBpY2tlciB0byBiZSBhZGRlZAoJICogQHJldHVybiBqUXVlcnkKCSAqLwoJJC50aW1lcGlja2VyLmRhdGVUaW1lUmFuZ2UgPSBmdW5jdGlvbihzdGFydFRpbWUsIGVuZFRpbWUsIG9wdGlvbnMpIHsKCQkkLnRpbWVwaWNrZXIuZGF0ZVJhbmdlKHN0YXJ0VGltZSwgZW5kVGltZSwgb3B0aW9ucywgJ2RhdGV0aW1lcGlja2VyJyk7Cgl9OwoKCS8qKgoJICogQ2FsbHMgYG1ldGhvZGAgb24gdGhlIGBzdGFydFRpbWVgIGFuZCBgZW5kVGltZWAgZWxlbWVudHMsIGFuZCBjb25maWd1cmVzIHRoZW0gdG8KCSAqIGVuZm9yY2UgZGF0ZSByYW5nZSBsaW1pdHMuCgkgKiBAcGFyYW0gIEVsZW1lbnQgc3RhcnRUaW1lCgkgKiBAcGFyYW0gIEVsZW1lbnQgZW5kVGltZQoJICogQHBhcmFtICBvYmogb3B0aW9ucyBPcHRpb25zIGZvciB0aGUgYHRpbWVwaWNrZXIoKWAgY2FsbC4gQWxzbyBzdXBwb3J0cyBgcmVmb3JtYXRgLAoJICogICBhIGJvb2xlYW4gdmFsdWUgdGhhdCBjYW4gYmUgdXNlZCB0byByZWZvcm1hdCB0aGUgaW5wdXQgdmFsdWVzIHRvIHRoZSBgZGF0ZUZvcm1hdGAuCgkgKiBAcGFyYW0gIHN0cmluZyBtZXRob2QgQ2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgdHlwZSBvZiBwaWNrZXIgdG8gYmUgYWRkZWQKCSAqIEByZXR1cm4galF1ZXJ5CgkgKi8KCSQudGltZXBpY2tlci5kYXRlUmFuZ2UgPSBmdW5jdGlvbihzdGFydFRpbWUsIGVuZFRpbWUsIG9wdGlvbnMsIG1ldGhvZCkgewoJCW1ldGhvZCA9IG1ldGhvZCB8fCAnZGF0ZXBpY2tlcic7CgkJJC50aW1lcGlja2VyLmhhbmRsZVJhbmdlKG1ldGhvZCwgc3RhcnRUaW1lLCBlbmRUaW1lLCBvcHRpb25zKTsKCX07CgoJLyoqCgkgKiBDYWxscyBgbWV0aG9kYCBvbiB0aGUgYHN0YXJ0VGltZWAgYW5kIGBlbmRUaW1lYCBlbGVtZW50cywgYW5kIGNvbmZpZ3VyZXMgdGhlbSB0bwoJICogZW5mb3JjZSBkYXRlIHJhbmdlIGxpbWl0cy4KCSAqIEBwYXJhbSAgc3RyaW5nIG1ldGhvZCBDYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSB0eXBlIG9mIHBpY2tlciB0byBiZSBhZGRlZAoJICogQHBhcmFtICBFbGVtZW50IHN0YXJ0VGltZQoJICogQHBhcmFtICBFbGVtZW50IGVuZFRpbWUKCSAqIEBwYXJhbSAgb2JqIG9wdGlvbnMgT3B0aW9ucyBmb3IgdGhlIGB0aW1lcGlja2VyKClgIGNhbGwuIEFsc28gc3VwcG9ydHMgYHJlZm9ybWF0YCwKCSAqICAgYSBib29sZWFuIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgdG8gcmVmb3JtYXQgdGhlIGlucHV0IHZhbHVlcyB0byB0aGUgYGRhdGVGb3JtYXRgLgoJICogQHJldHVybiBqUXVlcnkKCSAqLwoJJC50aW1lcGlja2VyLmhhbmRsZVJhbmdlID0gZnVuY3Rpb24obWV0aG9kLCBzdGFydFRpbWUsIGVuZFRpbWUsIG9wdGlvbnMpIHsKCQkkLmZuW21ldGhvZF0uY2FsbChzdGFydFRpbWUsICQuZXh0ZW5kKHsKCQkJb25DbG9zZTogZnVuY3Rpb24oZGF0ZVRleHQsIGluc3QpIHsKCQkJCWNoZWNrRGF0ZXModGhpcywgZW5kVGltZSwgZGF0ZVRleHQpOwoJCQl9LAoJCQlvblNlbGVjdDogZnVuY3Rpb24oc2VsZWN0ZWREYXRlVGltZSkgewoJCQkJc2VsZWN0ZWQodGhpcywgZW5kVGltZSwgJ21pbkRhdGUnKTsKCQkJfQoJCX0sIG9wdGlvbnMsIG9wdGlvbnMuc3RhcnQpKTsKCQkkLmZuW21ldGhvZF0uY2FsbChlbmRUaW1lLCAkLmV4dGVuZCh7CgkJCW9uQ2xvc2U6IGZ1bmN0aW9uKGRhdGVUZXh0LCBpbnN0KSB7CgkJCQljaGVja0RhdGVzKHRoaXMsIHN0YXJ0VGltZSwgZGF0ZVRleHQpOwoJCQl9LAoJCQlvblNlbGVjdDogZnVuY3Rpb24oc2VsZWN0ZWREYXRlVGltZSkgewoJCQkJc2VsZWN0ZWQodGhpcywgc3RhcnRUaW1lLCAnbWF4RGF0ZScpOwoJCQl9CgkJfSwgb3B0aW9ucywgb3B0aW9ucy5lbmQpKTsKCQkvLyB0aW1lcGlja2VyIGRvZXNuJ3QgcHJvdmlkZSBhY2Nlc3MgdG8gaXRzICd0aW1lRm9ybWF0JyBvcHRpb24sIAoJCS8vIG5vciBjb3VsZCBJIGdldCBkYXRlcGlja2VyLmZvcm1hdFRpbWUoKSB0byBiZWhhdmUgd2l0aCB0aW1lcywgc28gSQoJCS8vIGhhdmUgZGlzYWJsZWQgcmVmb3JtYXR0aW5nIGZvciB0aW1lcGlja2VyCgkJaWYgKG1ldGhvZCAhPSAndGltZXBpY2tlcicgJiYgb3B0aW9ucy5yZWZvcm1hdCkgewoJCQkkKFtzdGFydFRpbWUsIGVuZFRpbWVdKS5lYWNoKGZ1bmN0aW9uKCkgewoJCQkJdmFyIGZvcm1hdCA9ICQodGhpcylbbWV0aG9kXS5jYWxsKCQodGhpcyksICdvcHRpb24nLCAnZGF0ZUZvcm1hdCcpLAoJCQkJCWRhdGUgPSBuZXcgRGF0ZSgkKHRoaXMpLnZhbCgpKTsKCQkJCWlmICgkKHRoaXMpLnZhbCgpICYmIGRhdGUpIHsKCQkJCQkkKHRoaXMpLnZhbCgkLmRhdGVwaWNrZXIuZm9ybWF0RGF0ZShmb3JtYXQsIGRhdGUpKTsKCQkJCX0KCQkJfSk7CgkJfQoJCWNoZWNrRGF0ZXMoc3RhcnRUaW1lLCBlbmRUaW1lLCBzdGFydFRpbWUudmFsKCkpOwoKCQlmdW5jdGlvbiBjaGVja0RhdGVzKGNoYW5nZWQsIG90aGVyLCBkYXRlVGV4dCkgewoJCQlpZiAob3RoZXIudmFsKCkgJiYgKG5ldyBEYXRlKHN0YXJ0VGltZS52YWwoKSkgPiBuZXcgRGF0ZShlbmRUaW1lLnZhbCgpKSkpIHsKCQkJCW90aGVyLnZhbChkYXRlVGV4dCk7CgkJCX0KCQl9CgkJc2VsZWN0ZWQoc3RhcnRUaW1lLCBlbmRUaW1lLCAnbWluRGF0ZScpOwoJCXNlbGVjdGVkKGVuZFRpbWUsIHN0YXJ0VGltZSwgJ21heERhdGUnKTsKCgkJZnVuY3Rpb24gc2VsZWN0ZWQoY2hhbmdlZCwgb3RoZXIsIG9wdGlvbikgewoJCQlpZiAoISQoY2hhbmdlZCkudmFsKCkpIHsKCQkJCXJldHVybjsKCQkJfQoJCQl2YXIgZGF0ZSA9ICQoY2hhbmdlZClbbWV0aG9kXS5jYWxsKCQoY2hhbmdlZCksICdnZXREYXRlJyk7CgkJCS8vIHRpbWVwaWNrZXIgZG9lc24ndCBpbXBsZW1lbnQgJ2dldERhdGUnIGFuZCByZXR1cm5zIGEgalF1ZXJ5CgkJCWlmIChkYXRlLmdldFRpbWUpIHsKCQkJCSQob3RoZXIpW21ldGhvZF0uY2FsbCgkKG90aGVyKSwgJ29wdGlvbicsIG9wdGlvbiwgZGF0ZSk7CgkJCX0KCQl9CgkJcmV0dXJuICQoW3N0YXJ0VGltZS5nZXQoMCksIGVuZFRpbWUuZ2V0KDApXSk7Cgl9OwoKCS8qCgkqIEtlZXAgdXAgd2l0aCB0aGUgdmVyc2lvbgoJKi8KCSQudGltZXBpY2tlci52ZXJzaW9uID0gIjEuMS4xIjsKCn0pKGpRdWVyeSk7]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectDateTime/listit2fd.SelectDateTime.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfU2VsZWN0RGF0ZVRpbWUgZXh0ZW5kcyBMaXN0SXQyRmllbGRkZWZCYXNlDQp7DQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbykgDQoJewkNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkZGJfaW5mbyk7DQoJCQ0KCQkkdGhpcy0+U2V0RnJpZW5kbHlUeXBlKCR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl8nLiR0aGlzLT5HZXRUeXBlKCkpKTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQ0KCXsNCiAgICAgICAgJHRtcGwgPSA8PDxFT1QNCjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhyZWY9InskdGhpcy0+R2V0VVJMUGF0aCgpfS9qcWV1cnktdWktdGltZXBpY2tlci1hZGRvbi5jc3MiIC8+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJ7JHRoaXMtPkdldFVSTFBhdGgoKX0vanF1ZXJ5LXVpLXRpbWVwaWNrZXItYWRkb24uanMiPjwvc2NyaXB0Pg0KRU9UOw0KCQlyZXR1cm4gJHRtcGw7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBWYWxpZGF0ZSgmJGVycm9ycykNCgl7DQoJCWlmIChzdHJsZW4oJHRoaXMtPkdldFZhbHVlKCJzdHJpbmciKSkgPiAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ21heF9sZW5naHQnKSkgew0KCQkNCgkJCSRlcnJvcnNbXSA9ICR0aGlzLT5Nb2RMYW5nKCd0b29fbG9uZycpIC4gJyAoJyAuICR0aGlzLT5HZXROYW1lKCkgLiAnKSc7DQoJCX0JCQ0KCQ0KCQlwYXJlbnQ6OlZhbGlkYXRlKCRlcnJvcnMpOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gRm9ybWF0VHlwZXMoKQ0KCXsNCgkJcmV0dXJuIGFycmF5KA0KCQkJMCA9PiAkdGhpcy0+TW9kTGFuZygnY29tYmluZWQnKSwNCgkJCTEgPT4gJHRoaXMtPk1vZExhbmcoJ2RhdGVfZm9ybWF0JyksDQoJCQkyID0+ICR0aGlzLT5Nb2RMYW5nKCd0aW1lX2Zvcm1hdCcpDQoJCQ0KCQkpOw0KCX0JDQoJCQ0KfSAvLyBlbmQgb2YgY2xhc3MNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectFile/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectFile/admin.SelectFile.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnYWxsb3dlZCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfYWxsb3dfaGVscCcpfTwvZW0+PGJyIC8+CgkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tX2lucHV0W2FsbG93ZWRdIiB2YWx1ZT0ieyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ2FsbG93ZWQnLCAncGRmLGdpZixqcGVnLGpwZycpfSIgLz4KCTwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdkaXInKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX2Rpcl9oZWxwJyl9PC9lbT48YnIgLz4KCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbZGlyXSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdkaXInLCdpbWFnZXMnKX0iIC8+Cgk8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnZXhjbHVkZV9wcmVmaXgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX2V4Y2x1ZGVfcHJlZml4X2hlbHAnKX08L2VtPjxiciAvPgoJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFtleGNsdWRlX3ByZWZpeF0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnZXhjbHVkZV9wcmVmaXgnKX0iIC8+Cgk8L3A+CjwvZGl2Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectFile/input.SelectFile.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJe2h0bWxfb3B0aW9ucyBuYW1lPSJgJGFjdGlvbmlkYGN1c3RvbWZpZWxkW2AkZmllbGRkZWYtPkdldElkKClgXSIgb3B0aW9ucz0kZmllbGRkZWYtPkdldEZpbGVzKCkgc2VsZWN0ZWQ9JGZpZWxkZGVmLT5HZXRWYWx1ZSgpfQoJPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/SelectFile/listit2fd.SelectFile.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfU2VsZWN0RmlsZSBleHRlbmRzIExpc3RJdDJGaWVsZGRlZkJhc2UNCnsNCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJiRkYl9pbmZvKSANCgl7CQ0KCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRkYl9pbmZvKTsNCgkJDQoJCSR0aGlzLT5TZXRGcmllbmRseVR5cGUoJHRoaXMtPk1vZExhbmcoJ2ZpZWxkZGVmXycuJHRoaXMtPkdldFR5cGUoKSkpOw0KCX0NCgkNCglwdWJsaWMgZnVuY3Rpb24gR2V0RmlsZXMoKQ0KCXsNCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkNCgkJJHBhdGggPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ2RpcicpKTsNCg0KCQlpZiAoIWlzX2RpcigkcGF0aCkpIHsNCgkJCUBta2RpcigkcGF0aCk7DQoJCX0NCg0KCQkkYWxsb3dlZCA9ICgkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ2FsbG93ZWQnKSAhPSAnJyA/IGV4cGxvZGUoJywnLCR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnYWxsb3dlZCcpKSA6IGFycmF5KA0KCQkJJ2pwZycsDQoJCQknZ2lmJywNCgkJCSdwbmcnDQoJCSkpOw0KDQoJCSRpbnZhbGlkID0gYXJyYXkoJy4nLCcuLicpOw0KCQkkZXhjbHVkZV9wcmVmaXggPSBleHBsb2RlKCcsJywgJHRoaXMtPkdldE9wdGlvblZhbHVlKCdleGNsdWRlX3ByZWZpeCcpKTsNCgkJDQoJCSRpbWFnZXMgPSBhcnJheSgpOw0KCQlpZiAoJGhhbmRsZSA9IG9wZW5kaXIoJHBhdGgpKSB7DQoJCQl3aGlsZSAoZmFsc2UgIT09ICgkZmlsZSA9IHJlYWRkaXIoJGhhbmRsZSkpKSB7DQoJCQkNCgkJCQlpZihpbl9hcnJheSgkZmlsZSwgJGludmFsaWQpKSBjb250aW51ZTsNCgkJCQkNCgkJCQlmb3JlYWNoKCRleGNsdWRlX3ByZWZpeCBhcyAkb25lKSB7DQoJCQkJDQoJCQkJCWlmKHN0YXJ0c3dpdGgoJGZpbGUsICRvbmUpICYmICFlbXB0eSgkb25lKSkgY29udGludWUgMjsNCgkJCQl9DQoJCQkJDQoJCQkJZm9yZWFjaCgkYWxsb3dlZCBhcyAkZXh0KSB7DQoJCQkJDQoJCQkJCWlmKGVuZHN3aXRoKCRmaWxlLCAkZXh0KSkgew0KCQkJCQkNCgkJCQkJCSRpbWFnZXNbJGZpbGVdID0gJGZpbGU7DQoJCQkJCX0NCgkJCQkNCgkJCQl9DQoJCQl9DQoNCgkJCWNsb3NlZGlyKCRoYW5kbGUpOw0KCQl9DQoNCgkJYXNvcnQoJGltYWdlcyk7DQoJCSRpbWFnZXMgPSBhcnJheV9tZXJnZShhcnJheSgnJz0+JHRoaXMtPk1vZExhbmcoJ3NlbGVjdF9vbmUnKSksICRpbWFnZXMpOw0KCQkJDQoJCXJldHVybiAkaW1hZ2VzOw0KCX0NCgkNCn0gLy8gZW5kIG9mIGNsYXNzDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Slider/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/Slider/admin.Slider.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnd2lkdGgnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX3dpZHRoX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFt3aWR0aF0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnd2lkdGgnLCAnMjAlJyl9IiAvPgogICAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ21pbl92YWx1ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbWluX3ZhbHVlX2hlbHAnKX08L2VtPjxiciAvPgogICAgCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWN1c3RvbV9pbnB1dFttaW5dIiB2YWx1ZT0ieyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ21pbicsIDApfSIgLz4KICAgIDwvcD4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGZpZWxkZGVmLT5Nb2RMYW5nKCdtYXhfdmFsdWUnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX21heF92YWx1ZV9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbbWF4XSIgdmFsdWU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdtYXgnLCAxMDApfSIgLz4KICAgIDwvcD4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Slider/input.Slider.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPGRpdiBjbGFzcz0icGFnZWlucHV0Ij4KCQl7aWYgJGZpZWxkZGVmLT5HZXREZXNjKCl9KHskZmllbGRkZWYtPkdldERlc2MoKX0pPGJyIC8+ey9pZn0KCQk8cD48ZW0+eyRmaWVsZGRlZi0+TW9kTGFuZygndmFsdWUnKX06IDwvZW0+PHNwYW4gaWQ9InskYWN0aW9uaWR9Y3VzdG9tZmllbGRbeyRmaWVsZGRlZi0+R2V0SWQoKX1dLXZpc2libGUtdmFsdWUiPnskZmllbGRkZWYtPkdldFZhbHVlKCl8ZGVmYXVsdDokZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdtaW4nKX08L3NwYW4+PC9wPgoJCTxkaXYgY2xhc3M9Imxpc3RpdDItc2xpZGVyLWNvbnRhaW5lciIgc3R5bGU9IndpZHRoOiB7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnd2lkdGgnKX0iPgoJCQk8ZGl2IGNsYXNzPSJsaXN0aXQyLXNsaWRlciIgaWQ9InskYWN0aW9uaWR9Y3VzdG9tZmllbGRbeyRmaWVsZGRlZi0+R2V0SWQoKX1dLXNsaWRlciI+PC9kaXY+CgkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tZmllbGRbeyRmaWVsZGRlZi0+R2V0SWQoKX1dIiBpZD0ieyRhY3Rpb25pZH1jdXN0b21maWVsZFt7JGZpZWxkZGVmLT5HZXRJZCgpfV0tdmFsdWUiIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRWYWx1ZSgpfGRlZmF1bHQ6JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnbWluJyl9IiAvPgoJCTwvZGl2PgoJPC9kaXY+CgkKCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkgewoJCSQoIiN7JGFjdGlvbmlkfWN1c3RvbWZpZWxkXFxcW3skZmllbGRkZWYtPkdldElkKCl9XFxcXS1zbGlkZXIiKQoJCS5zbGlkZXIoewogICAgICAgICAgICByYW5nZTogIm1pbiIsCiAgICAgICAgICAgIG1pbjogeyRmaWVsZGRlZi0+R2V0T3B0aW9uVmFsdWUoJ21pbicpfSwKICAgICAgICAgICAgbWF4OiB7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnbWF4Jyl9LAoJCQl2YWx1ZTogJCggIiN7JGFjdGlvbmlkfWN1c3RvbWZpZWxkXFxcW3skZmllbGRkZWYtPkdldElkKCl9XFxcXS12YWx1ZSIgKS52YWwoKSwKCQkJc2xpZGU6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgewoJCQkKCQkJCSQoICIjeyRhY3Rpb25pZH1jdXN0b21maWVsZFxcXFt7JGZpZWxkZGVmLT5HZXRJZCgpfVxcXF0tdmlzaWJsZS12YWx1ZSIgKS50ZXh0KCB1aS52YWx1ZSApOwoJCQkJJCggIiN7JGFjdGlvbmlkfWN1c3RvbWZpZWxkXFxcW3skZmllbGRkZWYtPkdldElkKCl9XFxcXS12YWx1ZSIgKS52YWwoIHVpLnZhbHVlICk7CgkJCX0JCQoJCX0pOwoJfSk7Cgk8L3NjcmlwdD4KCQo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Slider/listit2fd-slider.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Lmxpc3RpdDItc2xpZGVyLWNvbnRhaW5lciB7IHBhZGRpbmc6IDZweCAxMHB4IDZweCA2cHg7IH0NCi5saXN0aXQyLXNsaWRlci1jb250YWluZXIgPiBkaXYgeyB6LWluZGV4OiAxOyB9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/Slider/listit2fd.Slider.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfU2xpZGVyIGV4dGVuZHMgTGlzdEl0MkZpZWxkZGVmQmFzZQ0Kew0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgmJGRiX2luZm8pIA0KCXsJDQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJGRiX2luZm8pOw0KCQkNCgkJJHRoaXMtPlNldEZyaWVuZGx5VHlwZSgkdGhpcy0+TW9kTGFuZygnZmllbGRkZWZfJy4kdGhpcy0+R2V0VHlwZSgpKSk7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkNCgl7DQogICAgICAgICR0bXBsID0gPDw8RU9UDQo8bGluayB0eXBlPSJ0ZXh0L2NzcyIgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJ7JHRoaXMtPkdldFVSTFBhdGgoKX0vbGlzdGl0MmZkLXNsaWRlci5jc3MiIC8+DQpFT1Q7DQoJCXJldHVybiAkdG1wbDsNCgl9CQ0KCQkJDQp9IC8vIGVuZCBvZiBjbGFzcw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextArea/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextArea/admin.TextArea.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnbWF4X2xlbmdodCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbWF4X2xlbmdodF9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbbWF4X2xlbmdodF0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnbWF4X2xlbmdodCcsIDI1NSl9IiAvPgogICAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskZmllbGRkZWYtPk1vZExhbmcoJ3d5c2l3eWcnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAJeyR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnKX08ZW0+IHskZmllbGRkZWYtPk1vZExhbmcoJ2ZpZWxkZGVmX3d5c2l3eWdfaGVscCcpfTwvZW0+PGJyIC8+CgkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbd3lzaXd5Z10iIHZhbHVlPSIwIiAvPgoJCTxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbd3lzaXd5Z10iIHZhbHVlPSIxIntpZiAkZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCd3eXNpd3lnJyl9Y2hlY2tlZD0iY2hlY2tlZCJ7L2lmfSAvPgoJPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextArea/input.TextArea.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJeyRmaWVsZGRlZi0+R2V0SW5wdXQoJGFjdGlvbmlkKX0KCTwvcD4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextArea/listit2fd.TextArea.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfVGV4dEFyZWEgZXh0ZW5kcyBMaXN0SXQyRmllbGRkZWZCYXNlDQp7DQoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkZGJfaW5mbykgDQoJewkNCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkZGJfaW5mbyk7DQoJCQ0KCQkkdGhpcy0+U2V0RnJpZW5kbHlUeXBlKCR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl8nLiR0aGlzLT5HZXRUeXBlKCkpKTsNCgl9DQoJDQoJcHVibGljIGZ1bmN0aW9uIFZhbGlkYXRlKCYkZXJyb3JzKQ0KCXsNCgkJaWYgKHN0cmxlbigkdGhpcy0+R2V0VmFsdWUoInN0cmluZyIpKSA+ICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnbWF4X2xlbmdodCcsIDI1NSkgJiYgJHRoaXMtPkdldE9wdGlvblZhbHVlKCdtYXhfbGVuZ2h0JykpIHsNCgkJDQoJCQkkZXJyb3JzW10gPSAkdGhpcy0+TW9kTGFuZygndG9vX2xvbmcnKSAuICcgKCcgLiAkdGhpcy0+R2V0TmFtZSgpIC4gJyknOw0KCQl9CQkNCgkNCgkJcGFyZW50OjpWYWxpZGF0ZSgkZXJyb3JzKTsNCgl9DQoJCQ0KCXB1YmxpYyBmdW5jdGlvbiBHZXRJbnB1dCgkaWQpDQoJew0KCQkkbW9kID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCk7DQoJCQ0KCQlyZXR1cm4gJG1vZC0+Q3JlYXRlVGV4dEFyZWEoJHRoaXMtPkdldE9wdGlvblZhbHVlKCd3eXNpd3lnJyksICRpZCwgJHRoaXMtPkdldFZhbHVlKCJzdHJpbmciKSwgJ2N1c3RvbWZpZWxkWycuJHRoaXMtPkdldElkKCkuJ10nKTsNCgl9DQoJDQp9IC8vIGVuZCBvZiBjbGFzcw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextInput/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextInput/admin.TextInput.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnc2l6ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfc2l6ZV9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbc2l6ZV0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnc2l6ZScsIDIwKX0iIC8+CiAgICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+TW9kTGFuZygnbWF4X2xlbmdodCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIAl7JHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicpfTxlbT4geyRmaWVsZGRlZi0+TW9kTGFuZygnZmllbGRkZWZfbWF4X2xlbmdodF9oZWxwJyl9PC9lbT48YnIgLz4KICAgIAk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jdXN0b21faW5wdXRbbWF4X2xlbmdodF0iIHZhbHVlPSJ7JGZpZWxkZGVmLT5HZXRPcHRpb25WYWx1ZSgnbWF4X2xlbmdodCcsIDI1NSl9IiAvPgogICAgPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextInput/input.TextInput.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRmaWVsZGRlZi0+R2V0TmFtZSgpfXtpZiAkZmllbGRkZWYtPklzUmVxdWlyZWQoKX0qey9pZn06PC9wPgoJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CgkJe2lmICRmaWVsZGRlZi0+R2V0RGVzYygpfSh7JGZpZWxkZGVmLT5HZXREZXNjKCl9KTxiciAvPnsvaWZ9CgkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y3VzdG9tZmllbGRbeyRmaWVsZGRlZi0+R2V0SWQoKX1dIiB2YWx1ZT0ieyRmaWVsZGRlZi0+R2V0VmFsdWUoKX0iIHNpemU9InskZmllbGRkZWYtPkdldE9wdGlvblZhbHVlKCdzaXplJyl9IiAvPgoJPC9wPgo8L2Rpdj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/TextInput/listit2fd.TextInput.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgQ28tTWFpbnRhaW5lcjogU2ltb24gUmFkZm9yZCwgPHNpbW9uQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4NCiMgV2ViOiB3d3cuY29uY2VwdGZhY3RvcnkuY29tLmF1DQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIw0KIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPg0KIyBXZWI6IHd3dy5qb25hdGhhbnNjaG1pZC5kZQ0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgU29tZSB3YWNrb3Mgc3RhcnRlZCBkZXN0cm95aW5nIHN0dWZmIHNpbmNlIDIwMTI6IA0KIw0KIyBUYXBpbyBM9nl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+DQojIFdlYjogd3d3Lm9yYW5nZS1tZWRpYS5maQ0KIw0KIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+DQojIFdlYjogd3d3LmljaC1tYWNoLWRhcy5hdA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlDQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkNCiMgbmFtZXMgZm9yIGVhc2llciBjbGllbnQgbWFpbnRlbmFuY2UuDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBsaXN0aXQyZmRfVGV4dElucHV0IGV4dGVuZHMgTGlzdEl0MkZpZWxkZGVmQmFzZQ0Kew0KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgmJGRiX2luZm8pIA0KCXsJDQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJGRiX2luZm8pOw0KCQkNCgkJJHRoaXMtPlNldEZyaWVuZGx5VHlwZSgkdGhpcy0+TW9kTGFuZygnZmllbGRkZWZfJy4kdGhpcy0+R2V0VHlwZSgpKSk7DQoJfQ0KCQ0KCXB1YmxpYyBmdW5jdGlvbiBWYWxpZGF0ZSgmJGVycm9ycykNCgl7DQoJCWlmIChzdHJsZW4oJHRoaXMtPkdldFZhbHVlKCJzdHJpbmciKSkgPiAkdGhpcy0+R2V0T3B0aW9uVmFsdWUoJ21heF9sZW5naHQnLCAyNTUpICYmICR0aGlzLT5HZXRPcHRpb25WYWx1ZSgnbWF4X2xlbmdodCcpKSB7DQoJCQ0KCQkJJGVycm9yc1tdID0gJHRoaXMtPk1vZExhbmcoJ3Rvb19sb25nJykgLiAnICgnIC4gJHRoaXMtPkdldE5hbWUoKSAuICcpJzsNCgkJfQkJDQoJDQoJCXBhcmVudDo6VmFsaWRhdGUoJGVycm9ycyk7DQoJfQ0KCQ0KfSAvLyBlbmQgb2YgY2xhc3MNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/js/listit2-globals.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogRlVOQ1RJT05TCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCmZ1bmN0aW9uIHNob3dfbWVzc2FnZSh0ZXh0KSB7CgoJaWYodGV4dCAhPSAnJyl7CgkJdmFyIG1lc3NhZ2UgPSBqUXVlcnkoJzxkaXYgY2xhc3M9InBhZ2VtY29udGFpbmVyIj48cCBjbGFzcz0icGFnZW1lc3NhZ2UiPicgKyB0ZXh0ICsgJzwvcD48L2Rpdj4nKS5pbnNlcnRCZWZvcmUoJyNwYWdlX3RhYnMnKTsKCQl3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpeyBtZXNzYWdlLmhpZGUoKTsgfSwgOTAwMCk7Cgl9IAp9CgpmdW5jdGlvbiBpbml0QWpheCgpewoKCWpRdWVyeSgnLmluaXQtYWpheC10b2dnbGUnKS5jaGlsZHJlbigiYSIpLmFkZENsYXNzKCdhamF4LXRvZ2dsZScpOwoJalF1ZXJ5KCcuaW5pdC1hamF4LWRlbGV0ZScpLmNoaWxkcmVuKCJhIikuYWRkQ2xhc3MoJ2FqYXgtZGVsZXRlJyk7Cn0KCmZ1bmN0aW9uIGluaXRBamF4RXZlbnRzKCkgewoKCWpRdWVyeSgnLmFqYXgtdG9nZ2xlJykuY2xpY2soZnVuY3Rpb24gKGV2ZW50KSB7CgoJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CQkKCQlhamF4X3RvZ2dsZSgkKHRoaXMpKTsKCX0pOwoJCglqUXVlcnkoJy5hamF4LWRlbGV0ZScpLmNsaWNrKGZ1bmN0aW9uIChldmVudCkgewoKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCgkJaWYoY29uZmlybSgnQXJlIHlvdXIgc3VyZT8nKSkgewoJCgkJCWFqYXhfZGVsZXRlKCQodGhpcykpOwoJCX0KCX0pOwkJCn0KCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIEpRVUVSWSBJTklUIChSdW4gaW5pdGlhbCBzdHVmZiBoZXJlKQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgpqUXVlcnkoZnVuY3Rpb24oJCl7CgoJaW5pdEFqYXgoKTsKCWluaXRBamF4RXZlbnRzKCk7Cn0pOwoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogQUpBWCBMT0FESU5HIChPbmx5IGxvYWQgYWpheCBmdW5jdGlvbnMgaW4gaGVyZSkKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKLyoqCiogREVMRVRFIElURU0KKiBAIG9iaiA6IGpRdWVyeSBET00gb2JqZWN0CiovCmZ1bmN0aW9uIGFqYXhfZGVsZXRlKG9iaikgewoKCXZhciB1cmwgPSBvYmouYXR0cigiaHJlZiIpOwoJdXJsICs9ICImc2hvd3RlbXBsYXRlPWZhbHNlIjsKCQkKCWpRdWVyeS5hamF4KHsKCQl0eXBlOiAiR0VUIiwKCQl1cmw6IHVybCwKCQlhc3luYzogdHJ1ZSwKCQlkYXRhVHlwZTogImh0bWwiLAoJCWJlZm9yZVNlbmQ6IGZ1bmN0aW9uKCkgewoJCQoJCQlvYmouZW1wdHkoKS5hcHBlbmQoJzxkaXYgY2xhc3M9ImFqYXgtbG9hZGluZyBhamF4LWxvYWRlci10eXBlLTE2Ij48L2Rpdj4nKTsKCQl9LAoJCWVycm9yOiBmdW5jdGlvbihqcVhIUiwgdGV4dFN0YXR1cywgZXJyb3JUaHJvd24pIHsKCQkJCgkJCWFsZXJ0KCJTb3JyeS4gVGhlcmUgd2FzIGFuIExpc3RJdDIgQUpBWCBlcnJvcjogIiArIHRleHRTdGF0dXMpOwoJCX0sCQkJCgkJc3VjY2VzczogZnVuY3Rpb24oZGF0YSkgewoJCQkKCQkJc2hvd19tZXNzYWdlKGRhdGEpOwoJCX0sCgkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoJCQoJCQlvYmouY2xvc2VzdCgidHIiKS5mYWRlT3V0KDUwMCwgZnVuY3Rpb24oKSB7CgoJCQkJdmFyIHRhYmxlID0gJCh0aGlzKS5jbG9zZXN0KCJ0YWJsZSIpOwoJCQkJdmFyIHRvdGFscm93cyA9IHRhYmxlLmZpbmQoInRib2R5IHRyIikuc2l6ZSgpOwkJCQkJCgkJCQkKCQkJCSQodGhpcykucmVtb3ZlKCk7CgkJCQkKCQkJCXRhYmxlLmZpbmQoInRib2R5IHRyIikucmVtb3ZlQ2xhc3MoKTsKCQkJCXRhYmxlLmZpbmQoInRib2R5IHRyOm50aC1jaGlsZCgybisxKSIpLmFkZENsYXNzKCJyb3cxIik7CgkJCQl0YWJsZS5maW5kKCJ0Ym9keSB0cjpudGgtY2hpbGQoMm4pIikuYWRkQ2xhc3MoInJvdzIiKTsJCQkJCQoJCQkJCgkJCX0pOwoJCX0JCQoJCQoJfSk7Cgp9CgovKioKKiBUT0dHTEUgQUNUSVZFCiogQCBvYmogOiBqUXVlcnkgRE9NIG9iamVjdAoqLwpmdW5jdGlvbiBhamF4X3RvZ2dsZShvYmopIHsKCgl2YXIgdXJsID0gb2JqLmF0dHIoImhyZWYiKTsKCXVybCArPSAiJnNob3d0ZW1wbGF0ZT1mYWxzZSI7CgkJCglqUXVlcnkuYWpheCh7CgkJdHlwZTogIkdFVCIsCgkJdXJsOiB1cmwsCgkJYXN5bmM6IHRydWUsCgkJZGF0YVR5cGU6ICJqc29uIiwKCQliZWZvcmVTZW5kOiBmdW5jdGlvbigpIHsKCQkKCQkJb2JqLmVtcHR5KCkuYXBwZW5kKCc8ZGl2IGNsYXNzPSJhamF4LWxvYWRpbmcgYWpheC1sb2FkZXItdHlwZS0xNiI+PC9kaXY+Jyk7CgkJfSwKCQllcnJvcjogZnVuY3Rpb24oanFYSFIsIHRleHRTdGF0dXMsIGVycm9yVGhyb3duKSB7CgkJCQoJCQlhbGVydCgiU29ycnkuIFRoZXJlIHdhcyBhbiBMaXN0SXQyIEFKQVggZXJyb3I6ICIgKyB0ZXh0U3RhdHVzKTsKCQl9LAkJCQoJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpIHsKCQkJCgkJCW9iai5odG1sKGRhdGEuaW1hZ2UpOwkJCQkKCQkJb2JqLmF0dHIoImhyZWYiLCBkYXRhLmhyZWYpOwoJCX0sCgkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoJCQoJCQkkKHRoaXMsICIuYWpheC1sb2FkaW5nIikucmVtb3ZlKCk7CgkJfQkJCgkJCgl9KTsKfQ==]]></data>
	</file>
	<file>
	  <filename>/ListIt2.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEzDtnl0dHksIDx0YXBzYUBvcmFuZ2UtbWVkaWEuZmk+CiMgV2ViOiB3d3cub3JhbmdlLW1lZGlhLmZpCiMKIyBHb3JhbiBJbGljLCA8dW5pcXUzZUBnbWFpbC5jb20+CiMgV2ViOiB3d3cuaWNoLW1hY2gtZGFzLmF0CiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiBHTE9CQUwgREVGSU5FUwoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCiRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCmRlZmluZSgnTElTVElUMicsICdMaXN0SXQyJyk7CmRlZmluZSgnTElTVElUMl9WQUxVRV9TRVBBUkFUT1InLCAnLCcpOwpkZWZpbmUoJ0xJU1RJVDJfQ09ORklHX0ZJTEUnLCAnbGlzdGl0Ml9jb25maWcucGhwJyk7CmRlZmluZSgnTElTVElUMl9GUkFNRVdPUktfUEFUSCcsIGNtc19qb2luX3BhdGgoJGNvbmZpZ1sncm9vdF9wYXRoJ10sJ21vZHVsZXMnLExJU1RJVDIsJ2ZyYW1ld29yaycpKTsKZGVmaW5lKCdMSVNUSVQyX1RFTVBMQVRFX1BBVEgnLCBjbXNfam9pbl9wYXRoKExJU1RJVDJfRlJBTUVXT1JLX1BBVEgsJ3RlbXBsYXRlcycpKTsKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogTUFJTiBDTEFTUwoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCmNsYXNzIExpc3RJdDIgZXh0ZW5kcyBDTVNNb2R1bGUKewoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBBdHRyaWJ1dGVzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJcHVibGljICRwcmVmaXg7IC8vIDwtIE1vdmUgdG8gdmFyaWFibGVzCgkvL3B1YmxpYyAkYWxsb3dlZF9wYXJhbXM7IC8vIDwtIERlcHJlY2F0ZSB0aGlzIGF0IHNvbWUgcG9pbnQKCXB1YmxpYyAkdXNlX2hpbnRzOyAvLyA8LSBNb3ZlIHRvIHZhcmlhYmxlcwoJcHJpdmF0ZSAkY29uZmlnOwoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgTWFnaWMgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkJCgkKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpCgl7CQoJCXNwbF9hdXRvbG9hZF9yZWdpc3RlcihhcnJheSgmJHRoaXMsICdfYXV0b2xvYWRlcicpKTsKCQoJCSR0aGlzLT5jb25maWcgPSBuZXcgTGlzdEl0MkNvbmZpZygkdGhpcyk7CgkJJHRoaXMtPnByZWZpeCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1cmxfcHJlZml4JywgbXVuZ2Vfc3RyaW5nX3RvX3VybCgkdGhpcy0+R2V0TmFtZSgpLCB0cnVlKSk7CgkJLy8kdGhpcy0+YWxsb3dlZF9wYXJhbXMgPSBhcnJheSgpOwoJCQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoKTsJCgl9CgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgSW50ZXJuYWwgYXV0b2xvYWRlcgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCglwcml2YXRlIGZpbmFsIGZ1bmN0aW9uIF9hdXRvbG9hZGVyKCRjbGFzc25hbWUpCgl7CQoJCSRmbiA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkuIi9saWIvY2xhc3MueyRjbGFzc25hbWV9LnBocCI7CgkJaWYoZmlsZV9leGlzdHMoJGZuKSkgewoJCQoJCQlyZXF1aXJlX29uY2UoJGZuKTsKCQl9CQoJfQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBNb2R1bGUgYXBpIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0JCQoJCglwdWJsaWMgZnVuY3Rpb24gR2V0TmFtZSgpCgl7CgkJcmV0dXJuIExJU1RJVDI7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSgpCgl7CgkJcmV0dXJuIExJU1RJVDI7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIEdldFZlcnNpb24oKQoJewoJCXJldHVybiAnMS40LWJldGExJzsKCX0KCglwdWJsaWMgZnVuY3Rpb24gR2V0SGVscCgpCgl7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfbmFtZScsICR0aGlzLT5HZXROYW1lKCkpOwoJCSRzbWFydHktPmFzc2lnbigncGFyZW50X25hbWUnLCBwYXJlbnQ6OkdldE5hbWUoKSk7CgkJJHNtYXJ0eS0+YXNzaWduKCdtb2R1bGVfYWxpYXMnLCAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkpOwoJCSRzbWFydHktPmFzc2lnbigncm9vdHVybCcsICRjb25maWdbJ3Jvb3RfdXJsJ10pOwoKCQkkc21hcnR5LT5hc3NpZ24oJ21vZCcsICR0aGlzKTsKCgkJJHNtYXJ0eS0+YXNzaWduKCdkdXBsaWNhdGluZ190ZXh0Jywgc3RyX3JlcGxhY2UoJ3skbW9kdWxlX25hbWV9JywgJHRoaXMtPkdldE5hbWUoKSwgJHRoaXMtPk1vZExhbmcoJ2hlbHBfZHVwbGljYXRpbmcnKSkpOwoKCQlyZXR1cm4gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaGVscC50cGwnKTsKCX0JCgoJcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvcigpCgl7CgkJcmV0dXJuICdJRFQgTWVkaWEgVGVhbSc7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkKCXsKCQlyZXR1cm4gJ2hpQGktZG8tdGhpcy5jb20nOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKQoJewoJCXJldHVybiBAZmlsZV9nZXRfY29udGVudHMoZGlybmFtZShfX0ZJTEVfXykuJy9jaGFuZ2Vsb2cuaHRtbCcpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCgl7CgkJcmV0dXJuIGZhbHNlOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBIYXNBZG1pbigpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpCgl7CgkJcmV0dXJuICdleHRlbnNpb25zJzsKCX0KCglwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbigpCgl7CgkJcmV0dXJuICR0aGlzLT5Nb2RMYW5nKCdtb2RkZXNjcmlwdGlvbicpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKQoJewoJCXJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpOwoJfQoKCXB1YmxpYyBmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpCgl7CgkJcmV0dXJuICcxLjExJzsKCX0KCglwdWJsaWMgZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkKCXsKCQlyZXR1cm4gJHRoaXMtPk1vZExhbmcoJ3Bvc3RpbnN0YWxsJyk7Cgl9CgoJcHVibGljIGZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkKCXsKCQlyZXR1cm4gJHRoaXMtPk1vZExhbmcoJ3Bvc3R1bmluc3RhbGwnKTsKCX0KCQoJZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiggJGV2ZW50bmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5Nb2RMYW5nKCdldmVudGRlc2NfJyAuICRldmVudG5hbWUpOwoJfQoKCWZ1bmN0aW9uIEdldEV2ZW50SGVscCggJGV2ZW50bmFtZSApCgl7CgkJcmV0dXJuICR0aGlzLT5Nb2RMYW5nKCdldmVudGhlbHBfJyAuICRldmVudG5hbWUpOwoJfQkKCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0SGVhZGVySFRNTCgpCiAgICB7CgkJLy8gU1NMIGNoZWNrIChIb3BlZnVsbHkgY29yZSB3b3VsZCBkbyB0aGlzIHNvb24uLi4pCgkJJHVzZV9zc2wgPSBmYWxzZTsKCQlpZihpc3NldCgkX1NFUlZFUlsnSFRUUFMnXSkgJiYgJF9TRVJWRVJbJ0hUVFBTJ109PSdvbicpCgkJCSR1c2Vfc3NsID0gdHJ1ZTsJCgkKICAgICAgICAkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJGdsb2JhbHNfanMgPSAoJHVzZV9zc2w/JGNvbmZpZ1snc3NsX3VybCddOiRjb25maWdbJ3Jvb3RfdXJsJ10pLiAnL21vZHVsZXMvJy4gTElTVElUMiAuJy9saWIvanMvJzsKCQkkZ2xvYmFsc19jc3MgPSAoJHVzZV9zc2w/JGNvbmZpZ1snc3NsX3VybCddOiRjb25maWdbJ3Jvb3RfdXJsJ10pLiAnL21vZHVsZXMvJy4gTElTVElUMiAuJy9saWIvY3NzLyc7CQkKCiAgICAgICAgJHRtcGwgPSA8PDxFT1QKPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRnbG9iYWxzX2Nzc31saXN0aXQyLWdsb2JhbHMuY3NzIiAvPgkKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ieyRnbG9iYWxzX2pzfWxpc3RpdDItZ2xvYmFscy5qcyI+PC9zY3JpcHQ+CkVPVDsKICAgICAgICByZXR1cm4gJHRtcGw7CiAgICB9CQoKCXB1YmxpYyBmdW5jdGlvbiBEb0FjdGlvbigkbmFtZSwkaWQsJHBhcmFtcywkcmV0dXJuaWQ9JycpCgl7CgkJZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkKCQkkc21hcnR5LT5hc3NpZ25fYnlfcmVmKCdtb2QnLCAkdGhpcyk7CgkJJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb25pZCcsICRpZCk7CgkJJHNtYXJ0eS0+YXNzaWduKCdyZXR1cm5pZCcsICRyZXR1cm5pZCk7CgkJCgkJaWYoJENNU19BRE1JTl9QQUdFKSB7CgkJCgkJCSR0aGVtZU9iamVjdCA9IGNtc191dGlsczo6Z2V0X3RoZW1lX29iamVjdCgpOwoJCQkkc21hcnR5LT5hc3NpZ25fYnlfcmVmKCd0aGVtZU9iamVjdCcsICR0aGVtZU9iamVjdCk7CQkKCQl9CgkJCQkKCQlpZiAoJG5hbWUgIT0gJycpIHsKCQoJCQkkY29udGVudHMgPSAnJzsJCQoJCQkkbmFtZSA9IHByZWdfcmVwbGFjZSgnL1teQS1aYS16MC05XC1fK10vJywgJycsICRuYW1lKTsKCgkJCWlmKCRDTVNfQURNSU5fUEFHRSkKCQkJCSRjb250ZW50cyAuPSAnPGRpdiBjbGFzcz0ibGlzdGl0Mi1hZG1pbi13cmFwcGVyIj4nOwoJCQkKCQkJJGZpbGVuYW1lID0gJHRoaXMtPkdldE1vZHVsZVBhdGgoKSAuICcvYWN0aW9uLicgLiAkbmFtZSAuICcucGhwJzsKCQkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkpIHsKCQkJCQkJCgkJCQlvYl9zdGFydCgpOwkKCQkJCWluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJCSRjb250ZW50cyAuPSBvYl9nZXRfY29udGVudHMoKTsKCQkJCW9iX2VuZF9jbGVhbigpOwkKCQkJfQkJCQoJCQkJCgkJCWlmKCRDTVNfQURNSU5fUEFHRSkKCQkJCSRjb250ZW50cyAuPSAnPC9kaXY+JzsKCgkJCWVjaG8gJGNvbnRlbnRzOwkJCQoJCX0JCQoJfQoJCglmdW5jdGlvbiBVcGdyYWRlKCRvbGR2ZXJzaW9uLCAkbmV3dmVyc2lvbikKCXsKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJCgkJJHJlc3BvbnNlID0gRkFMU0U7CgkKCQkkZmlsZW5hbWUgPSAkdGhpcy0+R2V0TW9kdWxlUGF0aCgpIC4gJy9tZXRob2QudXBncmFkZS5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkJJHJlcyA9IGluY2x1ZGUoJGZpbGVuYW1lKTsKCQkJaWYoJHJlcyA9PSAxIHx8ICRyZXMgPT0gJycpICRyZXNwb25zZSA9IFRSVUU7CgkJfQoJCQoJCWlmKCRyZXNwb25zZSkgewoJCQoJCQkvLyBVcGdyYWRlIGNsb25lcyAoZXhlY3V0ZWQgYWx3YXlzIHdoZW4gbWFzdGVyIG1vZHVsZSB1cGdyYWRlIGlzIGNhbGxlZCkKCQkJJG1vZHVsZXMgPSAkdGhpcy0+TGlzdE1vZHVsZXMoKTsKCQkJZm9yZWFjaCgkbW9kdWxlcyBhcyAkbW9kdWxlKSB7CgkJCQoJCQkJJGR1cGxpY2F0b3IgPSBuZXcgTGlzdEl0MkR1cGxpY2F0b3IoKTsKCQkJCSRkdXBsaWNhdG9yLT5TZXRNb2R1bGUoJG1vZHVsZS0+bW9kdWxlX25hbWUpOwoJCQkJJGR1cGxpY2F0b3ItPlNldERlc3RpbmF0aW9uKGRpcm5hbWUoZGlybmFtZShfX0ZJTEVfXykpIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRtb2R1bGUtPm1vZHVsZV9uYW1lKTsKCQkJCSRkdXBsaWNhdG9yLT5SdW4oKTsKCQkJfQkKCQl9CgkKCQlyZXR1cm4gJHJlc3BvbnNlOwoJfQoKCWZ1bmN0aW9uIEluc3RhbGwoKQoJewoJCSRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKCQkkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkKCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQoJCSRmaWxlbmFtZSA9ICR0aGlzLT5HZXRNb2R1bGVQYXRoKCkgLiAnL21ldGhvZC5pbnN0YWxsLnBocCc7CgkJaWYgKEBpc19maWxlKCRmaWxlbmFtZSkpIHsKCQkJCgkJCSRyZXMgPSBpbmNsdWRlKCRmaWxlbmFtZSk7CgkJCWlmKCRyZXMgPT0gMSB8fCAkcmVzID09ICcnKSB7CgkJCQkkcmVzcG9uc2UgPSBGQUxTRTsKCQkJfSBlbHNlIHsKCQkJCSRyZXNwb25zZSA9ICRyZXM7CgkJCX0KCQl9CQoJCgkJcmV0dXJuICRyZXNwb25zZTsKCX0KCQoJZnVuY3Rpb24gVW5pbnN0YWxsKCkKCXsKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJCgkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCgkJJGZpbGVuYW1lID0gJHRoaXMtPkdldE1vZHVsZVBhdGgoKSAuICcvbWV0aG9kLnVuaW5zdGFsbC5waHAnOwoJCWlmIChAaXNfZmlsZSgkZmlsZW5hbWUpKSB7CgkJCQoJCQkkcmVzID0gaW5jbHVkZSgkZmlsZW5hbWUpOwoJCQlpZigkcmVzID09IDEgfHwgJHJlcyA9PSAnJykgewoJCQkJJHJlc3BvbnNlID0gRkFMU0U7CgkJCX0gZWxzZSB7CgkJCQkkcmVzcG9uc2UgPSAkcmVzOwoJCQl9CgkJfQkKCQoJCXJldHVybiAkcmVzcG9uc2U7Cgl9CQoKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgTWFuaXB1bGF0aW9uIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCgkKCXB1YmxpYyBmdW5jdGlvbiBNb2RMYW5nKCkKCXsKCQkkdGhpcy0+TG9hZExhbmdNZXRob2RzKCk7CgoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCWFycmF5X3Vuc2hpZnQoJGFyZ3MsJycpOwoJCSRhcmdzWzBdID0gJiR0aGlzOwoKCQlyZXR1cm4gY2FsbF91c2VyX2Z1bmNfYXJyYXkoJ2Ntc19tb2R1bGVfTGFuZycsICRhcmdzKTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIE1vZFByb2Nlc3NUZW1wbGF0ZSgkdHBsX25hbWUpCgl7CgkJJG9rID0gKHN0cnBvcygkdHBsX25hbWUsICcuLicpID09PSBmYWxzZSk7CgkJaWYgKCEkb2spIHJldHVybjsKCgkJJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwkKCQkkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkJJHJlc3VsdCA9ICcnOwoJCQoJCSRvbGRjYWNoZSA9ICRzbWFydHktPmNhY2hpbmc7CgkJJHNtYXJ0eS0+Y2FjaGluZyA9ICR0aGlzLT5jYW5fY2FjaGVfb3V0cHV0KCkgPyBTbWFydHk6OkNBQ0hJTkdfTElGRVRJTUVfQ1VSUkVOVCA6IFNtYXJ0eTo6Q0FDSElOR19PRkY7CgoJCSRmaWxlcyA9IGFycmF5KCk7CgkJJGZpbGVzW10gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3Jvb3RfcGF0aCddLCdtb2R1bGVfY3VzdG9tJywkdGhpcy0+R2V0TmFtZSgpLCd0ZW1wbGF0ZXMnLCR0cGxfbmFtZSk7CgkJJGZpbGVzW10gPSBjbXNfam9pbl9wYXRoKExJU1RJVDJfVEVNUExBVEVfUEFUSCwkdHBsX25hbWUpOwoKCQlmb3JlYWNoKCRmaWxlcyBhcyAkZmlsZSkgewoJCQoJCQlpZihpc19yZWFkYWJsZSgkZmlsZSkpIHsKCgkJCQkkcmVzdWx0ID0gJHNtYXJ0eS0+ZmV0Y2goJGZpbGUpOwoJCQkJYnJlYWs7CgkJCX0KCQl9CgkJCgkJJHNtYXJ0eS0+Y2FjaGluZyA9ICRvbGRjYWNoZTsKCgkJcmV0dXJuICRyZXN1bHQ7CQkKCX0KCglwdWJsaWMgZnVuY3Rpb24gTW9kR2V0VGVtcGxhdGVGcm9tRmlsZSgkdHBsX25hbWUpCgl7CgkJJG9rID0gKHN0cnBvcygkdHBsX25hbWUsICcuLicpID09PSBmYWxzZSk7CgkJaWYgKCEkb2spIHJldHVybjsKCgkJJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwoJCQoJCSR0ZW1wbGF0ZSA9IGNtc19qb2luX3BhdGgoTElTVElUMl9URU1QTEFURV9QQVRILCR0cGxfbmFtZS4nLnRwbCcpOwoJCQoJCWlmIChpc19yZWFkYWJsZSgkdGVtcGxhdGUpKSB7CgkJCXJldHVybiBAZmlsZV9nZXRfY29udGVudHMoJHRlbXBsYXRlKTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gbnVsbDsKCQl9Cgl9CQkKCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBJbnN0YW5jZSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkJCgoJLyoqCgkgKiBMaXN0IE1vZHVsZXMKCSAqIE5PVEU6IGxpc3RpdDJfdXRpbHM6OmFycmF5X3RvX29iamVjdCgpIG5vdCBjYWxsZWQgd2l0aCBwdXJwb3NlLgoJICogQGludGVybmFsCgkgKiBAcmV0dXJuIGFycmF5IG9mIG9iamVjdHMKCSAqLwkJCglmaW5hbCBwdWJsaWMgZnVuY3Rpb24gTGlzdE1vZHVsZXMoKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CQoJCQoJCSRlbnRyeWFycmF5ID0gYXJyYXkoKTsKCQoJCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX2xpc3RpdDJfaW5zdGFuY2VzIE9SREVSIEJZIG1vZHVsZV9pZCI7CQoJCSRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCgkJd2hpbGUgKCRkYnIgJiYgJHJvdyA9ICRkYnItPkZldGNoUm93KCkpIHsKCQkKCQkJJG9iaiA9IG5ldyBzdGRDbGFzcygpOwoJCQoJCQkkb2JqLT5tb2R1bGVfaWQgPSAkcm93Wydtb2R1bGVfaWQnXTsKCQkJJG9iai0+bW9kdWxlX25hbWUgPSAkcm93Wydtb2R1bGVfbmFtZSddOwoJCQoJCQkkZW50cnlhcnJheVskcm93Wydtb2R1bGVfaWQnXV0gPSAkb2JqOwoJCX0KCQoJCXJldHVybiAkZW50cnlhcnJheTsJCgl9CQoKCS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgkqIEZSQU1FV09SSyBTVEFSVFMKCSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQ3Jvc3MgbW9kdWxlIHN1cHBvcnQKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCQoJCgkvLyBDR0UgaGludCBzeXN0ZW0gc3VwcG9ydAkKCXB1YmxpYyBmdW5jdGlvbiBMb2FkTW9kdWxlSGludHMoJiRwYXJhbXMpCgl7CgkJJHRoaXMtPnVzZV9oaW50cyA9IGNtc191dGlsczo6Z2V0X2FwcF9kYXRhKCdfX01PRFVMRV9ISU5UX18nLiR0aGlzLT5HZXROYW1lKCkpOwkJCgkJaWYoY291bnQoJHRoaXMtPnVzZV9oaW50cykgPiAwKSB7CgkJCQoJCQlmb3JlYWNoKChhcnJheSkkdGhpcy0+dXNlX2hpbnRzIGFzICRrZXk9PiR2YWx1ZSkgewoJCQkKCQkJCWlmKGlzc2V0KCRwYXJhbXNbJGtleV0pKSBjb250aW51ZTsKCQkJCSRwYXJhbXNbJGtleV0gPSAkdmFsdWU7CgkJCX0KCQl9CQoJfQoJCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkjIFNlYXJjaCBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAoKCXB1YmxpYyBmdW5jdGlvbiBTZWFyY2hSZXN1bHQoJHJldHVybmlkLCAkaXRlbV9pZCwgJGF0dHIgPSAnJykKCXsKCQkkcmVzdWx0ID0gYXJyYXkoKTsKCgkJaWYgKCRhdHRyID09ICd0aXRsZScpCgkJewoJCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCQkkcm93ID0gJGRiLT5HZXRSb3coJ1NFTEVDVCBhbGlhcywgdGl0bGUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIFdIRVJFIGFjdGl2ZSA9IDEgQU5EIGl0ZW1faWQgPSA/JywgYXJyYXkoJGl0ZW1faWQpKTsKCgkJCWlmICgkcm93KQoJCQl7CgkJCQkvLzAgcG9zaXRpb24gaXMgdGhlIHByZWZpeCBkaXNwbGF5ZWQgaW4gdGhlIGxpc3QgcmVzdWx0cy4KCQkJCSRyZXN1bHRbMF0gPSAkdGhpcy0+R2V0RnJpZW5kbHlOYW1lKCk7CgoJCQkJLy8xIHBvc2l0aW9uIGlzIHRoZSB0aXRsZQoJCQkJJHJlc3VsdFsxXSA9ICRyb3dbJ3RpdGxlJ107CgoJCQkJLy8yIHBvc2l0aW9uIGlzIHRoZSBVUkwgdG8gdGhlIGl0ZW0uCgkJCQkkaW5saW5lID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc3BsYXlfaW5saW5lJywgMCkgPT0gMTsKCgkJCQkkZGV0YWlsdGVtcGxhdGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2RlZmF1bHRfZGV0YWlsX3RlbXBsYXRlJyk7CgkJCQkKCQkJCSRwYXJhbXMgPSBhcnJheSgnaXRlbScgPT4gJHJvd1snYWxpYXMnXSwgJ2RldGFpbHRlbXBsYXRlJyA9PiAkZGV0YWlsdGVtcGxhdGUpOwkJCQkKCQkJCSR0aGlzLT5Mb2FkTW9kdWxlSGludHMoJHBhcmFtcyk7CgoJCQkJJHJlc3VsdFsyXSA9ICR0aGlzLT5DcmVhdGVQcmV0dHlMaW5rKCdjbnRudDAxJywgJ2RldGFpbCcsICRyZXR1cm5pZCwgJycsICRwYXJhbXMsICcnLCB0cnVlLCAkaW5saW5lKTsKCQkJfQoJCX0KCgkJcmV0dXJuICRyZXN1bHQ7Cgl9CgkKICAgIGZ1bmN0aW9uIFNlYXJjaFJlaW5kZXgoJG1vZHVsZSkKICAgIHsKICAgIAkkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0gT1JERVIgQlkgaXRlbV9pZCc7CiAgICAJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgCXdoaWxlICgkcmVzdWx0ICYmICEkcmVzdWx0LT5FT0YpCiAgICAJewogICAgCQlpZiAoJHJlc3VsdC0+ZmllbGRzWydhY3RpdmUnXSA9PSAnMScpCiAgICAJCXsKICAgIAkJCSRtb2R1bGUtPkFkZFdvcmRzKCR0aGlzLT5HZXROYW1lKCksICRyZXN1bHQtPmZpZWxkc1snaXRlbV9pZCddLCAndGl0bGUnLCAkcmVzdWx0LT5maWVsZHNbJ3RpdGxlJ10sIE5VTEwpOwoJCQl9CgkJCSRyZXN1bHQtPk1vdmVOZXh0KCk7CgkJfQogICAgfQkJCgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBUZW1wbGF0ZSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAoJCglwdWJsaWMgZnVuY3Rpb24gR2V0RmlsZVRlbXBsYXRlc0J5VHlwZSgkdHlwZSkKCXsKCQkkcmVzdWx0ID0gYXJyYXkoKTsJCgkJCgkJaWYgKCRoYW5kbGUgPSBvcGVuZGlyKExJU1RJVDJfVEVNUExBVEVfUEFUSCkpIHsKCQkKCQkJd2hpbGUgKGZhbHNlICE9PSAoJGVudHJ5ID0gcmVhZGRpcigkaGFuZGxlKSkpIHsKCQkJCgkJCQlpZiAoJGVudHJ5ID09ICIuIiB8fCAkZW50cnkgPT0gIi4uIikgY29udGludWU7CgkJCQkKCQkJCWlmKHN0YXJ0c3dpdGgoJGVudHJ5LCAnZmVfJykpIHsKCQkJCgkJCQkJbGlzdCgkdHBsX3ByZWZpeCwgJHRwbF90eXBlLCAkdHBsX25hbWUpID0gZXhwbG9kZSgnXycsICRlbnRyeSwgMyk7CgkJCQkJaWYoJHRwbF90eXBlID09ICR0eXBlKSB7CgkJCQkJCgkJCQkJCSRzcGxpdF9maWxlID0gZXhwbG9kZSgnLicsICRlbnRyeSk7CgkJCQkJCSRzcGxpdF9uYW1lID0gZXhwbG9kZSgnLicsICR0cGxfbmFtZSk7CgkJCQkJCQoJCQkJCQkkcmVzdWx0WyRzcGxpdF9uYW1lWzBdXSA9ICRzcGxpdF9maWxlWzBdOwoJCQkJCX0KCQkJCX0KCQkJfQoJCQkKCQkJY2xvc2VkaXIoJGhhbmRsZSk7CgkJfQkJCgkKCQlrc29ydCgkcmVzdWx0KTsKCQoJCXJldHVybiAkcmVzdWx0OwoJCgl9CgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgRmllbGRkZWYgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJCgkKCS8vIEdldCBGaWVsZCBEZWZpbml0aW9ucwoJcHVibGljIGZ1bmN0aW9uIEdldEZpZWxkRGVmcygkaW5jbHVkZV9saXN0ID0gYXJyYXkoKSkKCXsJCQkKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwkKCQkKCQkkZmllbGRkZWZzID0gYXJyYXkoKTsKCQkkb3IgPSBhcnJheSgpOwoJCSRxcGFybXMgPSBhcnJheSgpOwoJCQoJCSRxdWVyeSA9ICJTRUxFQ1QgZmllbGRkZWZfaWQgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV8iIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gIl9maWVsZGRlZiI7CQoJCQoJCWlmKGNvdW50KCRpbmNsdWRlX2xpc3QpID4gMCkgewoJCQoJCQlmb3JlYWNoKCRpbmNsdWRlX2xpc3QgYXMgJGFsaWFzKSB7CgkJCQoJCQkJJG9yW10gPSAiYWxpYXMgPSA/IjsKCQkJCSRxcGFybXNbXSA9IHRyaW0oJGFsaWFzKTsKCQkJfQoJCQkKCQkJJHF1ZXJ5IC49ICIgV0hFUkUgIiAuIGltcGxvZGUoIiBPUiAiLCAkb3IpOwoJCX0KCQkKCQkkcXVlcnkgLj0gIiBHUk9VUCBCWSBmaWVsZGRlZl9pZCBPUkRFUiBCWSBwb3NpdGlvbiI7CgkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksICRxcGFybXMpOwoKCQl3aGlsZSAoJGRiciAmJiAkcm93ID0gJGRici0+RmV0Y2hSb3coKSkgewoJCQoJCQkkb2JqID0gJHRoaXMtPkdldEZpZWxkRGVmQnlJZCgkcm93WydmaWVsZGRlZl9pZCddKTsKCQkJaWYoaXNfb2JqZWN0KCRvYmopKSAKCQkJCSRmaWVsZGRlZnNbJHJvd1snZmllbGRkZWZfaWQnXV0gPSAkb2JqOwoJCX0KCQkJCgkJcmV0dXJuIG5ldyBMaXN0SXQyRmllbGRkZWZBcnJheSgkZmllbGRkZWZzKTsKCX0KCQoJcHVibGljIGZ1bmN0aW9uIEdldEZpZWxkRGVmQnlJZCgkZmllbGRkZWZfaWQpCgl7CQkJCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsJCgkJCgkJJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYgV0hFUkUgZmllbGRkZWZfaWQgPSA/JzsKCQkkcm93ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkZmllbGRkZWZfaWQpKTsKCgkJaWYoJHJvdykgewoJCQoJCQkkb2JqID0gTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6TG9hZEZpZWxkZGVmQnlUeXBlKCRyb3dbJ3R5cGUnXSwgJHRoaXMpOwoJCQlpZihpc19vYmplY3QoJG9iaikpIHsKCQkJCgkJCQkkb2JqLT5TZXRJZCgkcm93WydmaWVsZGRlZl9pZCddKTsKCQkJCSRvYmotPlNldE5hbWUoJHJvd1snbmFtZSddKTsKCQkJCSRvYmotPlNldEFsaWFzKCRyb3dbJ2FsaWFzJ10pOwoJCQkJJG9iai0+U2V0RGVzYygkcm93WydoZWxwJ10pOwoJCQkJJG9iai0+U2V0UG9zaXRpb24oJHJvd1sncG9zaXRpb24nXSk7CgkJCQkkb2JqLT5TZXRSZXF1aXJlZCgkcm93WydyZXF1aXJlZCddKTsKCQkJCSRvYmotPkxvYWRPcHRpb25WYWx1ZXMoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpKTsKCQkJCQoJCQkJcmV0dXJuICRvYmo7CgkJCX0KCQl9CgkJCQoJCXJldHVybiBmYWxzZTsKCX0JCgoJcHVibGljIGZ1bmN0aW9uIEdldEZpZWxkRGVmQnlBbGlhcygkYWxpYXMpCgl7CQkJCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsJCgkJCgkJJHF1ZXJ5ID0gIlNFTEVDVCBmaWVsZGRlZl9pZCBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlXyIgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAiX2ZpZWxkZGVmIFdIRVJFIGFsaWFzID0gPyI7CQoJCSRpZCA9ICRkYi0+R2V0T25lKCRxdWVyeSwgYXJyYXkoJGFsaWFzKSk7CgoJCWlmKCRpZCkgewoJCQoJCQkkb2JqID0gJHRoaXMtPkdldEZpZWxkRGVmQnlJZCgkaWQpOwoJCQlpZihpc19vYmplY3QoJG9iaikpIHsKCQkJCQkKCQkJCXJldHVybiAkb2JqOwoJCQl9CQkJCgkJfQoJCQkKCQlyZXR1cm4gZmFsc2U7Cgl9CQkKCQoJLy8gR2V0IEZpZWxkIGRlZmluaXRpb24gdmFsdWVzIGFzIERJU1RJTkNUCglwdWJsaWMgZnVuY3Rpb24gR2V0VmFsdWVzRm9yRmllbGREZWYoJGlkKQoJewkJCQoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkKCQkkZW50cnlhcnJheSA9IGFycmF5KCk7CgkKCQkkcXVlcnkgPSAiU0VMRUNUIERJU1RJTkNUIHZhbHVlIEZST00gIiAuIGNtc19kYl9wcmVmaXgoKSAuICJtb2R1bGVfIiAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICJfZmllbGR2YWwgV0hFUkUgZmllbGRkZWZfaWQgPSA/IEdST1VQIEJZIHZhbHVlIEFTQyI7CgkJJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRpZCkpOwoJCQoJCXdoaWxlKCRkYnIgJiYgJHJvdyA9ICRkYnItPkZldGNoUm93KCkpewoJCQoJCQkkZW50cnlhcnJheVtdID0gJHJvd1sndmFsdWUnXTsJCgkJfQoJCQkKCQlyZXR1cm4gJGVudHJ5YXJyYXk7Cgl9CgoJLy8gU2F2ZSBPcmRlciBvZiBmaWVsZCBkZWZpbml0aW9ucwoJcHVibGljIGZ1bmN0aW9uIFNhdmVGaWVsZERlZk9yZGVyKCRmaWVsZGRlZl9vcmRlcikKCXsKCQkkZGIgPSBjbXNtcygpLT5HZXREYigpOwoJCSRxdWVyeSA9ICdVUERBVEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWYgU0VUIHBvc2l0aW9uID0gPyBXSEVSRSBmaWVsZGRlZl9pZCA9ID8nOwoJCWZvcmVhY2goJGZpZWxkZGVmX29yZGVyIGFzICRrZXkgPT4gJGl0ZW0pewoJCQkkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgka2V5LCAkaXRlbSkpOwoJCX0KCQlyZXR1cm4gJHRoaXMtPk1vZExhbmcoJ2NoYW5nZXNzYXZlZCcpOwoJfQkKCQkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgSXRlbSBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkKCQoJcHVibGljIGZ1bmN0aW9uIFNhdmVJdGVtKExpc3RJdDJJdGVtICYkb2JqKQoJewoJCUxpc3RJdDJJdGVtT3BlcmF0aW9uczo6U2F2ZSgkdGhpcywgJG9iaik7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBJbml0aWF0ZUl0ZW0oJGxvYWRfZmllbGRzID0gYXJyYXkoKSkKCXsKCQkkb2JqID0gbmV3IExpc3RJdDJJdGVtOwoJCWlmKCRsb2FkX2ZpZWxkcyAhPT0gZmFsc2UpCgkJCSRvYmotPmZpZWxkZGVmcyA9ICR0aGlzLT5HZXRGaWVsZERlZnMoJGxvYWRfZmllbGRzKTsKCQkJCgkJcmV0dXJuICRvYmo7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBMb2FkSXRlbUJ5SWRlbnRpZmllcigkaWRlbnRpZmllciwgJHZhbHVlLCAkbG9hZF9maWVsZHMgPSBhcnJheSgpKQoJewkKCQlpZighaW5fYXJyYXkoJGlkZW50aWZpZXIsIExpc3RJdDJJdGVtT3BlcmF0aW9uczo6JGlkZW50aWZpZXJzKSkKCQkJdGhyb3cgbmV3IExpc3RJdDJFeGNlcHRpb24oIklsbGVnYWwgaWRlbnRpZmllcjogJGlkZW50aWZpZXIhIik7CgoJCSRvYmogPSAkdGhpcy0+SW5pdGlhdGVJdGVtKCRsb2FkX2ZpZWxkcyA9IGFycmF5KCkpOwoJCSRvYmotPiRpZGVudGlmaWVyID0gJHZhbHVlOwoJCQoJCUxpc3RJdDJJdGVtT3BlcmF0aW9uczo6TG9hZCgkdGhpcywgJG9iaik7CQkJCgkJCQoJCXJldHVybiAkb2JqOwoJfQoJCgkvLyBEZXByZWNhdGVkCglwdWJsaWMgZnVuY3Rpb24gTG9hZEl0ZW1CeUlkKCRpZCA9IGZhbHNlLCAkaW5jbHVkZV9saXN0ID0gYXJyYXkoKSkKCXsKCQkkb2JqID0gJHRoaXMtPkluaXRpYXRlSXRlbSgkaW5jbHVkZV9saXN0KTsKCQkkb2JqLT5pdGVtX2lkID0gJGlkOwoJCQoJCUxpc3RJdDJJdGVtT3BlcmF0aW9uczo6TG9hZCgkdGhpcywgJG9iaik7CQoKCQlyZXR1cm4gJG9iajsKCX0KCQoJLy8gRGVwcmVjYXRlZAoJcHVibGljIGZ1bmN0aW9uIExvYWRJdGVtQnlBbGlhcygkYWxpYXMsICRpbmNsdWRlX2xpc3QgPSBhcnJheSgpKQoJewoJCSRvYmogPSAkdGhpcy0+SW5pdGlhdGVJdGVtKCRpbmNsdWRlX2xpc3QpOwoJCSRvYmotPmFsaWFzID0gJGFsaWFzOwoJCQoJCUxpc3RJdDJJdGVtT3BlcmF0aW9uczo6TG9hZCgkdGhpcywgJG9iaik7CQoKCQlyZXR1cm4gJG9iajsKCX0JCgoJcHVibGljIGZ1bmN0aW9uIERlbGV0ZUl0ZW1CeUlkKCRpZCkKCXsKCQkkb2JqID0gJHRoaXMtPkxvYWRJdGVtQnlJZCgkaWQsIGZhbHNlKTsKCQlMaXN0SXQySXRlbU9wZXJhdGlvbnM6OkRlbGV0ZSgkdGhpcywgJG9iaik7Cgl9CQoJCgkvLyBNb3ZlIHRvIGhhbmRsZXIKCXB1YmxpYyBmdW5jdGlvbiBTYXZlSXRlbU9yZGVyKCRpdGVtX29yZGVyKQoJewoJCSRkYiA9IGNtc21zKCktPkdldERiKCk7CgkJJHF1ZXJ5ID0gJ1VQREFURSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtIFNFVCBwb3NpdGlvbiA9ID8gV0hFUkUgaXRlbV9pZCA9ID8nOwoJCWZvcmVhY2goJGl0ZW1fb3JkZXIgYXMgJGtleSA9PiAkaXRlbSl7CgkJCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRrZXksICRpdGVtKSk7CgkJfQoJCXJldHVybiAkdGhpcy0+TW9kTGFuZygnY2hhbmdlc3NhdmVkJyk7Cgl9CgkKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSMgQ2F0ZWdvcnkgbWV0aG9kcwoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLSAJCgkKCXB1YmxpYyBmdW5jdGlvbiBTYXZlQ2F0ZWdvcnkoTGlzdEl0MkNhdGVnb3J5ICYkb2JqKQoJewoJCUxpc3RJdDJDYXRlZ29yeU9wZXJhdGlvbnM6OlNhdmUoJHRoaXMsICRvYmopOwoJfQoJCglwdWJsaWMgZnVuY3Rpb24gSW5pdGlhdGVDYXRlZ29yeSgpCgl7CgkJcmV0dXJuIG5ldyBMaXN0SXQyQ2F0ZWdvcnk7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBMb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJGlkZW50aWZpZXIsICR2YWx1ZSkKCXsJCgkJaWYoIWluX2FycmF5KCRpZGVudGlmaWVyLCBMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zOjokaWRlbnRpZmllcnMpKQoJCQl0aHJvdyBuZXcgTGlzdEl0MkV4Y2VwdGlvbigiSWxsZWdhbCBpZGVudGlmaWVyOiAkaWRlbnRpZmllciEiKTsKCgkJJG9iaiA9ICR0aGlzLT5Jbml0aWF0ZUNhdGVnb3J5KCk7CgkJJG9iai0+JGlkZW50aWZpZXIgPSAkdmFsdWU7CgkJCgkJTGlzdEl0MkNhdGVnb3J5T3BlcmF0aW9uczo6TG9hZCgkdGhpcywgJG9iaik7CgkJCQoJCXJldHVybiAkb2JqOwoJfQkKCQoJcHVibGljIGZ1bmN0aW9uIERlbGV0ZUNhdGVnb3J5QnlJZCgkaWQpCgl7CgkJJG9iaiA9ICR0aGlzLT5Mb2FkQ2F0ZWdvcnlCeUlkZW50aWZpZXIoJ2NhdGVnb3J5X2lkJywgJGlkKTsKCQlMaXN0SXQyQ2F0ZWdvcnlPcGVyYXRpb25zOjpEZWxldGUoJHRoaXMsICRvYmopOwoJfQkJCgkKCXB1YmxpYyBmdW5jdGlvbiBTYXZlQ2F0ZWdvcnlPcmRlcigkY2F0ZWdvcnlfb3JkZXIpCgl7CgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkkcXVlcnkgPSAnVVBEQVRFICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5IFNFVCBwb3NpdGlvbiA9ID8gV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsKCQlmb3JlYWNoKCRjYXRlZ29yeV9vcmRlciBhcyAka2V5ID0+ICRpdGVtKXsKCQkJJGRiLT5FeGVjdXRlKCRxdWVyeSwgYXJyYXkoJGtleSwgJGl0ZW0pKTsKCQl9CgkJTGlzdEl0MkNhdGVnb3J5T3BlcmF0aW9uczo6VXBkYXRlSGllcmFyY2h5UG9zaXRpb25zKCR0aGlzKTsKCQlyZXR1cm4gJHRoaXMtPk1vZExhbmcoJ2NoYW5nZXNzYXZlZCcpOwoJfQoKCS8vIERlcHJlY2F0ZWQgLyBSZW1vdmVkCglwdWJsaWMgZnVuY3Rpb24gR2V0Q2F0ZWdvcmllc0Ryb3Bkb3duKCRudWxsID0gdHJ1ZSwkZXhjbHVkZXMgPSBudWxsKXsKCSAgaWYoICFpc19udWxsKCRleGNsdWRlcykgJiYgIWlzX2FycmF5KCRleGNsdWRlcykgKQoJICAgIHsKCSAgICAgICRleGNsdWRlcyA9IGFycmF5KCRleGNsdWRlcyk7CgkgICAgfQoJICBpZiggaXNfbnVsbCgkZXhjbHVkZXMpICkgJGV4Y2x1ZGVzID0gYXJyYXkoKTsKCgkJJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKCQkkcXVlcnkgPSAnU0VMRUNUIGhpZXJhcmNoeSwgY2F0ZWdvcnlfaWQsIGNhdGVnb3J5X25hbWUgRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeSBPUkRFUiBCWSBoaWVyYXJjaHkgQVNDJzsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQkkb3B0aW9ucyA9ICRudWxsID8gYXJyYXkoJy0tLSAnLmxhbmcoJ25vbmUnKS4nIC0tLScgPT4gJy0xJykgOiBhcnJheSgpOwoKCQkkY29udGVudG9wcyA9IGNtc21zKCktPkdldENvbnRlbnRPcGVyYXRpb25zKCk7CgkJd2hpbGUoJGRicmVzdWx0ICYmICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkpewoJCSAgaWYoIGluX2FycmF5KCRyb3dbJ2NhdGVnb3J5X2lkJ10sJGV4Y2x1ZGVzKSApIGNvbnRpbnVlOwoJCQkkcG9zaXRpb24gPSAkY29udGVudG9wcy0+Q3JlYXRlRnJpZW5kbHlIaWVyYXJjaHlQb3NpdGlvbigkcm93WydoaWVyYXJjaHknXSk7CgkJCSRvcHRpb25zWyRwb3NpdGlvbiAuICcuIC0gJyAuICRyb3dbJ2NhdGVnb3J5X25hbWUnXV0gPSAkcm93WydjYXRlZ29yeV9pZCddOwoJCX0KCQlyZXR1cm4gJG9wdGlvbnM7Cgl9CgoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBJbnRlcm5hbCBtZXRob2RzCgkjLS0tLS0tLS0tLS0tLS0tLS0tLS0tIAkJCgoJLyoqCgkgKiBHZXQgZmllbGQgdHlwZXMKCSAqIEByZXR1cm4gYXJyYXkgUmV0dXJucyBhbiBhcnJheSBvZiBmaWVsZCB0eXBlcwoJICovCglwdWJsaWMgZnVuY3Rpb24gX0dldE1vZHVsZUNvbmZpZygpCgl7CgkJaWYoY291bnQoZnVuY19udW1fYXJncygpKSkgewoJCQkKCQkJJGtleSA9IGZ1bmNfZ2V0X2FyZygwKTsKCQkJcmV0dXJuICR0aGlzLT5jb25maWdbJGtleV07CgkJfQoJCgkJcmV0dXJuICR0aGlzLT5jb25maWc7Cgl9CgkKCS8qKgoJICogR2V0IGZpZWxkIHR5cGVzCgkgKiBAcmV0dXJuIGFycmF5IFJldHVybnMgYW4gYXJyYXkgb2YgZmllbGQgdHlwZXMKCSAqLwoJcHVibGljIGZ1bmN0aW9uIF9HZXRNb2R1bGVBbGlhcygpCgl7CgkJcmV0dXJuICR0aGlzLT5fR2V0TW9kdWxlQ29uZmlnKCdtb2R1bGVfYWxpYXMnKTsKCX0KCQoJIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJIyBIZWxwIG1ldGhvZHMKCSMtLS0tLS0tLS0tLS0tLS0tLS0tLS0gCQoJCglwdWJsaWMgZnVuY3Rpb24gQ3JlYXRlQmFja0xpbmsoJHRhYikKCXsKCQkkc2VjdXJlcGFyYW0gPSBDTVNfU0VDVVJFX1BBUkFNX05BTUUgLiAnPScgLiAkX1NFU1NJT05bQ01TX1VTRVJfS0VZXTsKCQlyZXR1cm4gJzxhIGNsYXNzPSJwYWdlYmFjayIgaHJlZj0ibW9kdWxlaW50ZXJmYWNlLnBocD8nIC4gJHNlY3VyZXBhcmFtIC4nJm1vZHVsZT0nLiR0aGlzLT5HZXROYW1lKCkuJyZhbXA7bTFfYWN0aXZlX3RhYj0nLiR0YWIuJyI+Jy4kdGhpcy0+TW9kTGFuZygnYmFjaycpLic8L2E+JzsKCX0KCglmdW5jdGlvbiBDcmVhdGVQcmV0dHlMaW5rKCRpZCwgJGFjdGlvbiwgJHJldHVybmlkPScnLCAkY29udGVudHM9JycsICRwYXJhbXM9YXJyYXkoKSwgJHdhcm5fbWVzc2FnZT0nJywgJG9ubHlocmVmPWZhbHNlLCAkaW5saW5lPWZhbHNlLCAkYWRkdGV4dD0nJywgJHRhcmdldGNvbnRlbnRvbmx5PWZhbHNlLCAkcHJldHR5dXJsPScnKQoJewoJCXN3aXRjaCgkYWN0aW9uKSB7CgkKCQkJY2FzZSAnZGV0YWlsJzoKCQkJCgkJCQkkc3RyaW5nX2FycmF5ID0gYXJyYXkoKTsKCQkJCSRzdHJpbmdfYXJyYXlbXSA9ICR0aGlzLT5wcmVmaXg7CgkJCQkKCQkJCS8vIENhdGVnb3J5IC8gaGllcmFyY2hpYWwgc3R1ZmYKCQkJCWlmKCFpc3NldCgkdGhpcy0+dXNlX2hpbnRzWydjYXRlZ29yeSddKSAmJiBpc3NldCgkcGFyYW1zWydjYXRlZ29yeSddKSkgCgkJCQkJJHN0cmluZ19hcnJheVtdID0gJHBhcmFtc1snY2F0ZWdvcnknXTsJCQkJCQoJCQkJCgkJCQlpZighaXNzZXQoJHRoaXMtPnVzZV9oaW50c1snaWRfaGllcmFyY2h5J10pICYmIGlzc2V0KCRwYXJhbXNbJ2lkX2hpZXJhcmNoeSddKSkKCQkJCQkkc3RyaW5nX2FycmF5W10gPSAkcGFyYW1zWydpZF9oaWVyYXJjaHknXTsJCQkJCgkJCQkJCQoJCQkJJHN0cmluZ19hcnJheVtdID0gJHBhcmFtc1snaXRlbSddOwoJCQkJCgkJCQlpZighaXNzZXQoJHRoaXMtPnVzZV9oaW50c1sncmV0dXJuaWQnXSkpCgkJCQkJJHN0cmluZ19hcnJheVtdID0gJHJldHVybmlkOwoKCQkJCWlmKCFpc3NldCgkdGhpcy0+dXNlX2hpbnRzWydkZXRhaWx0ZW1wbGF0ZSddKSAmJiBpc3NldCgkcGFyYW1zWydkZXRhaWx0ZW1wbGF0ZSddKSkgCgkJCQkJJHN0cmluZ19hcnJheVtdID0gJHBhcmFtc1snZGV0YWlsdGVtcGxhdGUnXTsKCQkJCQoJCQkJJHByZXR0eXVybCA9IGltcGxvZGUoJy8nLCAkc3RyaW5nX2FycmF5KTsJCQkKCQkJCWJyZWFrOwoKCQkJY2FzZSAnZGVmYXVsdCc6CgkJCQoJCQkJJHN0cmluZ19hcnJheSA9IGFycmF5KCk7CgkJCQkkc3RyaW5nX2FycmF5W10gPSAkdGhpcy0+cHJlZml4OwkJCQoJCQkJCgkJCQkvLyBDYXRlZ29yeSAvIGhpZXJhcmNoaWFsIHN0dWZmCgkJCQlpZighaXNzZXQoJHRoaXMtPnVzZV9oaW50c1snY2F0ZWdvcnknXSkgJiYgaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkpIAoJCQkJCSRzdHJpbmdfYXJyYXlbXSA9ICRwYXJhbXNbJ2NhdGVnb3J5J107CQkJCQkKCQkJCQoJCQkJaWYoIWlzc2V0KCR0aGlzLT51c2VfaGludHNbJ2lkX2hpZXJhcmNoeSddKSAmJiBpc3NldCgkcGFyYW1zWydpZF9oaWVyYXJjaHknXSkpCgkJCQkJJHN0cmluZ19hcnJheVtdID0gJHBhcmFtc1snaWRfaGllcmFyY2h5J107CQkJCQoKCQkJCS8vIFBhZ2VsaW1pdCBzdHVmZiwgd29uJ3Qgd29yayB0b2dldGhlciB3aXRoIGhpZXJhcmNoeSBzdHVmZi4KCQkJCWlmKGlzc2V0KCRwYXJhbXNbJ3BhZ2VsaW1pdCddKSkgewoJCQkJCgkJCQkJJHN0cmluZ19hcnJheVtdID0gJ3BhZ2UnOwoJCQkJCSRzdHJpbmdfYXJyYXlbXSA9ICRwYXJhbXNbJ3BhZ2VudW1iZXInXTsKCQkJCQoJCQkJCWlmKCFpc3NldCgkdGhpcy0+dXNlX2hpbnRzWydwYWdlbGltaXQnXSkpIAoJCQkJCQkkc3RyaW5nX2FycmF5W10gPSAkcGFyYW1zWydwYWdlbGltaXQnXTsJCgkJCQl9CgkJCQkKCQkJCWlmKCFpc3NldCgkdGhpcy0+dXNlX2hpbnRzWydyZXR1cm5pZCddKSkKCQkJCQkkc3RyaW5nX2FycmF5W10gPSAkcmV0dXJuaWQ7CQoJCgkJCQlpZighaXNzZXQoJHRoaXMtPnVzZV9oaW50c1snZGV0YWlsdGVtcGxhdGUnXSkgJiYgaXNzZXQoJHBhcmFtc1snZGV0YWlsdGVtcGxhdGUnXSkpIAoJCQkJCSRzdHJpbmdfYXJyYXlbXSA9ICRwYXJhbXNbJ2RldGFpbHRlbXBsYXRlJ107CQkJCQkKCQkJCQkKCQkJCSRwcmV0dHl1cmwgPSBpbXBsb2RlKCcvJywgJHN0cmluZ19hcnJheSk7CQkJCgkJCQlicmVhazsJCQkKCQl9CgoJCXJldHVybiAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJGFjdGlvbiwkcmV0dXJuaWQsJGNvbnRlbnRzLCRwYXJhbXMsJHdhcm5fbWVzc2FnZSwkb25seWhyZWYsJGlubGluZSwkYWRkdGV4dCwkdGFyZ2V0Y29udGVudG9ubHksJHByZXR0eXVybCk7Cgl9CQoJCn0gLy8gZW5kIG9mIGNsYXNzCgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGF0YWJhc2UgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCi8vIGluc3RhbmNlIHRhYmxlcwokZmllbGRzID0gJwogICAgbW9kdWxlX2lkIEkgS0VZIEFVVE8sCiAgICBtb2R1bGVfbmFtZSBDKDE2MCkKJzsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfaW5zdGFuY2VzJywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKLy8gRmllbGRkZWYgdGFibGVzCiRmaWVsZHMgPSAnCgl0eXBlIEMoMjU1KSBLRVksCglvcmlnaW5hdG9yIEMoMjU1KSwKCXBhdGggQygyNTUpLAoJYWN0aXZlIEk0LAoJZGlzYWJsZWQgSTQKJzsKCiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX2xpc3RpdDJfZmllbGRkZWZzJywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEV2ZW50cwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDb3JlJywgJ01vZHVsZUluc3RhbGxlZCcsIGZhbHNlKTsKJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsICdNb2R1bGVVbmluc3RhbGxlZCcsIGZhbHNlKTsKJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsICdNb2R1bGVVcGdyYWRlZCcsIGZhbHNlKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmVmZXJlbmNlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfYXV0b3NjYW4nLCAwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X2F1dG9pbnN0YWxsJywgMSk7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU2NhbiBmaWVsZGRlZnMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6U2Nhbk1vZHVsZXMoKTsKCg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGF0YWJhc2UgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9saXN0aXQyX2luc3RhbmNlcycpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfbGlzdGl0Ml9maWVsZGRlZnMnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEV2ZW50cwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywgJ01vZHVsZUluc3RhbGxlZCcpOwokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywgJ01vZHVsZVVuaW5zdGFsbGVkJyk7CiR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCAnTW9kdWxlVXBncmFkZWQnKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmVmZXJlbmNlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgokdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCAnMS4yJykgPCAwICkgewoKCS8vIEluc3RhbmNlIHRhYmxlcwoJJGZpZWxkcyA9ICcKCQltb2R1bGVfaWQgSSBLRVkgQVVUTywKCQltb2R1bGVfbmFtZSBDKDE2MCkKCSc7CgoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfbGlzdGl0Ml9pbnN0YW5jZXMnLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJCn0gLy8gZW5kIG9mIDEuMSAtPiAxLjIgdXBncmFkZQoKaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzEuMycpIDwgMCApIHsKCgkvLyBGaWVsZGRlZiB0YWJsZXMKCSRmaWVsZHMgPSAnCgkJdHlwZSBDKDI1NSkgS0VZLAoJCW9yaWdpbmF0b3IgQygyNTUpLAoJCXBhdGggQygyNTUpLAoJCWFjdGl2ZSBJNCwKCQlkaXNhYmxlZCBJNAoJJzsKCgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9saXN0aXQyX2ZpZWxkZGVmcycsICRmaWVsZHMsICR0YWJvcHRhcnJheSk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkKCS8vIEV2ZW50cwoJJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsICdNb2R1bGVJbnN0YWxsZWQnLCBmYWxzZSk7CgkkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDb3JlJywgJ01vZHVsZVVuaW5zdGFsbGVkJywgZmFsc2UpOwoJJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsICdNb2R1bGVVcGdyYWRlZCcsIGZhbHNlKTsKCgkvLyBQcmVmZXJlbmNlcwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X2F1dG9zY2FuJywgMCk7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfYXV0b2luc3RhbGwnLCAxKTsKCQkKCS8vIENyZWF0ZSBpbnN0YW5jZSBmcm9tIG9yaWdpbmFsCgkkbW9kX25hbWUgPSAkdGhpcy0+R2V0TmFtZSgpIC4gJ09yaWdpbmFsJzsKCQoJJGR1cGxpY2F0b3IgPSBuZXcgTGlzdEl0MkR1cGxpY2F0b3IoKTsKCSRkdXBsaWNhdG9yLT5TZXRNb2R1bGUoJG1vZF9uYW1lKTsKCSRkdXBsaWNhdG9yLT5TZXREZXN0aW5hdGlvbihkaXJuYW1lKGRpcm5hbWUoX19GSUxFX18pKSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkbW9kX25hbWUpOwoJJGR1cGxpY2F0b3ItPlJ1bigpOwoJCgkvLyBGaXggZmlsZXMgZm9yIHRoaXMgc3Blc2lmaWMgdXBncmFkZQoJJGR1cGxpY2F0b3ItPlNldFNvdXJjZShkaXJuYW1lKF9fRklMRV9fKSAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAndXBncmFkZV9zdXBwb3J0JyAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAnMS4zJyk7CgkkZHVwbGljYXRvci0+UnVuKCk7CgkJCn0gLy8gZW5kIG9mIDEuMi4yIC0+IDEuMyB1cGdyYWRlCg==]]></data>
	</file>
	<file>
	  <filename>/tabcontent.admin_fielddefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBMb2FkIGZpZWxkZGVmcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokZmllbGRkZWZzID0gTGlzdEl0MkZpZWxkZGVmT3BlcmF0aW9uczo6R2V0UmVnaXN0ZXJlZEZpZWxkZGVmcyh0cnVlLCB0cnVlKTsKZm9yZWFjaCgkZmllbGRkZWZzIGFzICRvbmVkZWYpIHsKCglpZigkb25lZGVmLT5Jc0Rpc2FibGVkKCkpIHsKCQoJCSRvbmVkZWYtPmFjdGl2ZV9saW5rID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS93YXJuaW5nLmdpZicsICR0aGlzLT5Nb2RMYW5nKCdmaWVsZGRlZl9kZXBzX21pc3NpbmcnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpOwoJfQkKCWVsc2VpZigkb25lZGVmLT5Jc0FjdGl2ZSgpKSB7CgoJCSRvbmVkZWYtPmFjdGl2ZV9saW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fdG9nZ2xlZmllbGRkZWYnLCAkcmV0dXJuaWQsICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vdHJ1ZS5naWYnLCAnJywgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgKCQkJJ3R5cGUnID0+ICRvbmVkZWYtPkdldFR5cGUoKQoJCSkpOwkJCgl9IAkKCWVsc2UgewoJCgkJJG9uZWRlZi0+YWN0aXZlX2xpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZG1pbl90b2dnbGVmaWVsZGRlZicsICRyZXR1cm5pZCwgJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9mYWxzZS5naWYnLCAnJywgJycsICcnLCAnc3lzdGVtaWNvbicpLCBhcnJheSgKCQkJJ3R5cGUnID0+ICRvbmVkZWYtPkdldFR5cGUoKQoJCSkpOwkKCX0JCn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkZGVmcycsICRmaWVsZGRlZnMpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkbWluX3NjYW5maWVsZGRlZnMnLCAkcmV0dXJuaWQpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgICAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzY2FuJywJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc2Nhbl9maWVsZGRlZnMnLCAkdGhpcy0+TW9kTGFuZygnZmllbGRkZWZfc2NhbicpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2ZpZWxkZGVmc3RhYi50cGwnKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/tabcontent.admin_instancestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgokR0xPQkFMU1snQ01TX0ZPUkNFX01PRFVMRV9MT0FEJ10gPSAxOwokdGhlbWVPYmplY3QgPSBjbXNtcygpLT5nZXRfdmFyaWFibGUoJ2FkbWludGhlbWUnKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBMb2FkIG1vZHVsZXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJG1vZG9wcyA9IGNtc21zKCktPkdldE1vZHVsZU9wZXJhdGlvbnMoKTsKJGFsbG1vZHVsZXMgPSAkbW9kb3BzLT5HZXRBbGxNb2R1bGVOYW1lcygpOwppZiAoY291bnQoJGFsbG1vZHVsZXMpID4gMCkgewoKCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVzIE9SREVSIEJZIG1vZHVsZV9uYW1lIjsKCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCgl3aGlsZSAoJHJlc3VsdCAmJiAkcm93ID0gJHJlc3VsdC0+RmV0Y2hSb3coKSkgewoKCQkkZGJtWyRyb3dbJ21vZHVsZV9uYW1lJ11dWydTdGF0dXMnXSA9ICRyb3dbJ3N0YXR1cyddOwoJCSRkYm1bJHJvd1snbW9kdWxlX25hbWUnXV1bJ1ZlcnNpb24nXSA9ICRyb3dbJ3ZlcnNpb24nXTsKCQkkZGJtWyRyb3dbJ21vZHVsZV9uYW1lJ11dWydBY3RpdmUnXSA9ICgkcm93WydhY3RpdmUnXSA9PSAxP3RydWU6ZmFsc2UpOwoJfQp9CgokbW9kdWxlcyA9ICR0aGlzLT5MaXN0TW9kdWxlcygpOwpmb3JlYWNoKCRtb2R1bGVzIGFzICRtb2R1bGUpIHsKCgkkbW9kID0gJG1vZG9wcy0+Z2V0X21vZHVsZV9pbnN0YW5jZSgkbW9kdWxlLT5tb2R1bGVfbmFtZSwnJyx0cnVlKTsKCQoJaWYoaXNfb2JqZWN0KCRtb2QpKSB7CgkJCgkJJG1vZHVsZS0+ZnJpZW5kbHluYW1lID0gJG1vZC0+R2V0RnJpZW5kbHlOYW1lKCk7CgkJJG1vZHVsZS0+dmVyc2lvbiA9ICRkYm1bJG1vZHVsZS0+bW9kdWxlX25hbWVdWydWZXJzaW9uJ107CgoJCWlmICh2ZXJzaW9uX2NvbXBhcmUoJG1vZC0+R2V0VmVyc2lvbigpLCAkZGJtWyRtb2R1bGUtPm1vZHVsZV9uYW1lXVsnVmVyc2lvbiddKSA+IDApIHsKCgkJCSRtb2R1bGUtPnVwZ3JhZGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnYWRtaW5fdXBncmFkZW1vZHVsZScsICRyZXR1cm5pZCwgJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9mYWxzZS5naWYnLCAkdGhpcy0+TW9kTGFuZygnaW5zdGFuY2VfdXBncmFkZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksIGFycmF5KAoJCQkJJ21vZHVsZV9pZCcgPT4gJG1vZHVsZS0+bW9kdWxlX2lkCgkJCSkpOwkJCgkJfSAKCQllbHNlIHsKCQkKCQkJJG1vZHVsZS0+dXBncmFkZWxpbmsgPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3RydWUuZ2lmJywgJHRoaXMtPk1vZExhbmcoJ2luc3RhbmNlX3VwdG9kYXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKTsKCQl9Cgl9Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ21vZHVsZXMnLCAkbW9kdWxlcyk7Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fY29weW1vZHVsZScsICRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAgICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ2R1cGxpY2F0ZScsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdkdXBsaWNhdGUnLCAkdGhpcy0+TW9kTGFuZygnZHVwbGljYXRlJykpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaW5zdGFuY2VzdGFiLnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/tabcontent.admin_maintenancetab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU21hcnR5IHByb2Nlc3NpbmcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsICdhZG1pbl9kb21haW50ZW5hbmNlJywgJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdidXR0b25fZml4X2ZpZWxkZGVmcycsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdmaXhfZmllbGRkZWZzJywgJHRoaXMtPkxhbmcoJ3JlcGFpcicpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ21haW50ZW5hbmNldGFiLnRwbCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/tabcontent.admin_optionstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFNvbWUgd2Fja29zIHN0YXJ0ZWQgZGVzdHJveWluZyBzdHVmZiBzaW5jZSAyMDEyOiAKIwojIFRhcGlvIEz2eXR0eSwgPHRhcHNhQG9yYW5nZS1tZWRpYS5maT4KIyBXZWI6IHd3dy5vcmFuZ2UtbWVkaWEuZmkKIwojIEdvcmFuIElsaWMsIDx1bmlxdTNlQGdtYWlsLmNvbT4KIyBXZWI6IHd3dy5pY2gtbWFjaC1kYXMuYXQKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgTGlzdEl0IGlzIGEgQ01TIE1hZGUgU2ltcGxlIG1vZHVsZSB0aGF0IGVuYWJsZXMgdGhlIHdlYiBkZXZlbG9wZXIgdG8gY3JlYXRlCiMgbXVsdGlwbGUgbGlzdHMgdGhyb3VnaG91dCBhIHNpdGUuIEl0IGNhbiBiZSBkdXBsaWNhdGVkIGFuZCBnaXZlbiBmcmllbmRseQojIG5hbWVzIGZvciBlYXNpZXIgY2xpZW50IG1haW50ZW5hbmNlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoIWlzX29iamVjdChjbXNtcygpKSkgZXhpdDsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBJbml0IGl0ZW1zCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRhbGxvd19hdXRvc2NhbiA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19hdXRvc2NhbicsIDApOwokYWxsb3dfYXV0b2luc3RhbGwgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfYXV0b2luc3RhbGwnLCAwKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTbWFydHkgcHJvY2Vzc2luZwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnYWRtaW5fdXBkYXRlb3B0aW9ucycsICRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfYWxsb3dfYXV0b3NjYW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdhbGxvd19hdXRvc2NhbicsIDEsICRhbGxvd19hdXRvc2NhbiwgKCRhbGxvd19hdXRvc2NhbiA/ICdjaGVja2VkPSJjaGVja2VkIicgOiAnJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hbGxvd19hdXRvaW5zdGFsbCcsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2FsbG93X2F1dG9pbnN0YWxsJywgMSwgJGFsbG93X2F1dG9pbnN0YWxsLCAoJGFsbG93X2F1dG9pbnN0YWxsID8gJ2NoZWNrZWQ9ImNoZWNrZWQiJyA6ICcnKSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdvcHRpb250YWIudHBsJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/copymodule.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdjb3B5X3RpdGxlJyl9PC9oMz4KeyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiogeyRtb2QtPk1vZExhbmcoJ21vZHVsZV9uYW1lJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbW9kdWxlX25hbWV9PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fXskY2FuY2VsfTwvcD4KPC9kaXY+CnskZW5kZm9ybX0KCg==]]></data>
	</file>
	<file>
	  <filename>/templates/fielddefstab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/e2lmIGNvdW50KCRmaWVsZGRlZnMpID4gMH0KPGZpZWxkc2V0PgoJPGxlZ2VuZD57JG1vZC0+TW9kTGFuZygncmVnaXN0ZXJlZF9maWVsZGRlZnMnKX08L2xlZ2VuZD4KCTx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CiAgICAJPHRoZWFkPgogICAgICAgIAk8dHI+CiAgICAgICAgICAgIAk8dGg+eyRtb2QtPk1vZExhbmcoJ2ZpZWxkZGVmX3R5cGUnKX08L3RoPgogICAgICAgICAgICAJPHRoPnskbW9kLT5Nb2RMYW5nKCdmaWVsZGRlZl9mcmllbmRseXR5cGUnKX08L3RoPgogICAgICAgICAgICAJPHRoPnskbW9kLT5Nb2RMYW5nKCdmaWVsZGRlZl9vcmlnaW5hdG9yJyl9PC90aD4KICAgICAgICAgICAgCTx0aD57JG1vZC0+TW9kTGFuZygnZmllbGRkZWZfZGVwcycpfTwvdGg+CiAgICAgICAgICAgIAk8dGggY2xhc3M9InBhZ2VpY29uIj57JG1vZC0+TW9kTGFuZygnYWN0aXZlJyl9PC90aD4KICAgICAgICAJPC90cj4KICAgIAk8L3RoZWFkPgogICAgCTx0Ym9keT4KCXtmb3JlYWNoIGZyb209JGZpZWxkZGVmcyBpdGVtPSdlbnRyeScgbmFtZT0nZmllbGRkZWZzJ30KICAgIAkgICAgPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLHJvdzInIG5hbWU9J3N1bW1hcnknfSI+CiAgICAgICAgCSAgICA8dGQ+eyRlbnRyeS0+R2V0VHlwZSgpfTwvdGQ+CiAgICAgICAgCSAgICA8dGQ+eyRlbnRyeS0+R2V0RnJpZW5kbHlUeXBlKCl9PC90ZD4KICAgICAgICAgICAgCTx0ZD57JGVudHJ5LT5HZXRPcmlnaW5hdG9yKCl9PC90ZD4KCQkJCTx0ZD4KCQkJCXtpZiAhaXNfbnVsbCgkZW50cnktPkdldE1vZHVsZURlcHMoKSl9CgkJCQkJe2ZvcmVhY2ggZnJvbT0kZW50cnktPkdldE1vZHVsZURlcHMoKSBrZXk9J21vZHVsZScgaXRlbT0ndmVyc2lvbicgbmFtZT0nZGVwcyd9CgkJCQkJCXskbW9kdWxlfSAoeyR2ZXJzaW9ufSl7aWYgISRzbWFydHkuZm9yZWFjaC5kZXBzLmxhc3R9LHsvaWZ9CgkJCQkJey9mb3JlYWNofQkJCQkJCgkJCQl7ZWxzZX0KCQkJCQl7J25vbmUnfGxhbmd9CgkJCQl7L2lmfQoJCQkJPC90ZD4KICAgICAgICAgICAgCTx0ZCBjbGFzcz0iaW5pdC1hamF4LXRvZ2dsZSI+eyRlbnRyeS0+YWN0aXZlX2xpbmt9PC90ZD4KICAgICAgICAJPC90cj4KCXsvZm9yZWFjaH0KICAgIAk8L3Rib2R5PgoJPC90YWJsZT4KPC9maWVsZHNldD4Key9pZn0KeyRzdGFydGZvcm19CgogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KCQkJCXskc2Nhbn0KCQk8L3A+CiAgICA8L2Rpdj4KIAp7JGVuZGZvcm19]]></data>
	</file>
	<file>
	  <filename>/templates/help.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBzdHlsZT0iZmxvYXQ6cmlnaHQiPjxmb3JtIGFjdGlvbj0iaHR0cHM6Ly93d3cucGF5cGFsLmNvbS9jZ2ktYmluL3dlYnNjciIgbWV0aG9kPSJwb3N0Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iY21kIiB2YWx1ZT0iX3MteGNsaWNrIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iaG9zdGVkX2J1dHRvbl9pZCIgdmFsdWU9IjdUS0dZUlkzU1JQRVkiPgo8aW5wdXQgdHlwZT0iaW1hZ2UiIHNyYz0iaHR0cHM6Ly93d3cucGF5cGFsb2JqZWN0cy5jb20vZW5fVVMvaS9idG4vYnRuX2RvbmF0ZV9MRy5naWYiIGJvcmRlcj0iMCIgbmFtZT0ic3VibWl0IiBhbHQ9IlBheVBhbCAtIFRoZSBzYWZlciwgZWFzaWVyIHdheSB0byBwYXkgb25saW5lISI+CjxpbWcgYWx0PSIiIGJvcmRlcj0iMCIgc3JjPSJodHRwczovL3d3dy5wYXlwYWxvYmplY3RzLmNvbS9kZV9ERS9pL3Njci9waXhlbC5naWYiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiPgo8L2Zvcm0+PC9kaXY+Cgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Inskcm9vdHVybH0vbW9kdWxlcy97JHBhcmVudF9uYW1lfS9mcmFtZXdvcmsvY3NzL2NvbG9yYm94LmNzcyIgdHlwZT0idGV4dC9jc3MiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ZyYW1ld29yay9jc3MvYmFja2VuZC5jc3MiIHR5cGU9InRleHQvY3NzIiAvPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHNyYz0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ZyYW1ld29yay9qcy9qcXVlcnkuY29sb3Jib3guanMiPjwvc2NyaXB0Pgo8c2NyaXB0PgpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7bGRlbGltfQogICAgalF1ZXJ5KCcuY2JveCcpLmNvbG9yYm94KHtsZGVsaW19CiAgICAgICAgcmVsOidncm91cCcsCiAgICAgICAgaWZyYW1lOiB0cnVlLAogICAgICAgIGlubmVyV2lkdGg6IDgwMCwKICAgICAgICBpbm5lckhlaWdodDogNDUwLAogICAgICAgIG9wYWNpdHk6IDAuMgogICAge3JkZWxpbX0pOwp7cmRlbGltfSk7Cjwvc2NyaXB0Pgo8ZGl2IGlkPSJwYWdlX3RhYnMiPgogICAgPGRpdiBpZD0iZ2VuZXJhbCI+CiAgICAgICAgeyRtb2QtPk1vZExhbmcoJ2dlbmVyYWwnKX0KICAgIDwvZGl2PiAgICAKCTxkaXYgaWQ9ImR1cGxpY2F0aW5nIj4KCQl7JG1vZC0+TW9kTGFuZygnZHVwbGljYXRpbmcnKX0KCTwvZGl2PgoJPGRpdiBpZD0iZmllbGQiPgoJCXskbW9kLT5Nb2RMYW5nKCdmaWVsZGRlZnMnKX0KCTwvZGl2PgkKICAgIDxkaXYgaWQ9InVwZ3JhZGluZyI+CiAgICAgICAgeyRtb2QtPk1vZExhbmcoJ3VwZ3JhZGluZycpfQogICAgPC9kaXY+ICAJCgk8ZGl2IGlkPSJhYm91dCI+CgkJeyRtb2QtPk1vZExhbmcoJ2Fib3V0Jyl9Cgk8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CjxkaXYgaWQ9InBhZ2VfY29udGVudCI+CiAgICA8ZGl2IGlkPSJnZW5lcmFsX2MiPgogICAgICAgIDxpbWcgc3JjPSJ7JHJvb3R1cmx9L21vZHVsZXMveyRwYXJlbnRfbmFtZX0vaW1hZ2VzL2xpc3RpdC1leHRlbmRlZC1sb2dvLmpwZyIgYWx0PSJMaXN0SXRFeHRlbmRlZCBMb2dvIiAvPgogICAgICAgIHskbW9kLT5Nb2RMYW5nKCdoZWxwX2dlbmVyYWwnKX0KICAgIDwvZGl2PiAgICAKCTxkaXYgaWQ9ImR1cGxpY2F0aW5nX2MiPgoJCXskbW9kLT5Nb2RMYW5nKCdoZWxwX2R1cGxpY2F0aW5nJyl9Cgk8L2Rpdj4KCTxkaXYgaWQ9ImZpZWxkX2MiPgoJCXskbW9kLT5Nb2RMYW5nKCdoZWxwX2ZpZWxkZGVmcycpfQoJCTxhIHRpdGxlPSJDcmVhdGluZyBjdXN0b20gZmllbGQgZGVmaW5pdGlvbiIgY2xhc3M9ImNib3giIHJlbD0iZ3JvdXAiIGhyZWY9Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby81NTcyODEyNyI+CgkJCQk8aW1nIHNyYz0ieyRyb290dXJsfS9tb2R1bGVzL3skcGFyZW50X25hbWV9L2ltYWdlcy9zY3JlZW5zaG90cy9jdXN0b21fZmllbGRzX3RodW1iLmpwZyIgYWx0PSJDcmVhdGluZyBjdXN0b20gZmllbGQgZGVmaW5pdGlvbiIgLz4KCQk8L2E+CQkKCTwvZGl2PgogICAgPGRpdiBpZD0idXBncmFkaW5nX2MiPgogICAgICAgIHsqIHRoaXMgaXMgdGVtcG9yYXJ5IGZvciAxLjMgcmVsZWFzZSAqfQogICAgICAgIDxkaXYgY2xhc3M9InBhZ2V3YXJuaW5nIj57JG1vZC0+TW9kTGFuZygndXBncmFkZV93YXJuaW5nJyl9PC9kaXY+CiAgICAgICAgeyRtb2QtPk1vZExhbmcoJ2hlbHBfdXBncmFkaW5nJyl9ICAgICAgICAKICAgIDwvZGl2PiAJCQoJPGRpdiBpZD0iYWJvdXRfYyI+CgkJeyRtb2QtPk1vZExhbmcoJ2hlbHBfYWJvdXQnKX0KCTwvZGl2PiAgCjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/templates/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/templates/instancestab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/e2lmIGNvdW50KCRtb2R1bGVzKSA+IDB9CjxkaXYgY2xhc3M9InBhZ2V3YXJuaW5nIj4KCTxoMz57JG1vZC0+TW9kTGFuZygnbm90aWNlJyl9PC9oMz4KCTxwPnskbW9kLT5Nb2RMYW5nKCdpbnN0YWxsZWRfaW5zdGFuY2VzX3dhcm5pbmcnKX08L3A+CjwvZGl2Pgo8ZmllbGRzZXQ+Cgk8bGVnZW5kPnskbW9kLT5Nb2RMYW5nKCdpbnN0YWxsZWRfaW5zdGFuY2VzJyl9PC9sZWdlbmQ+Cgk8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogICAgCTx0aGVhZD4KICAgICAgICAJPHRyPgogICAgICAgICAgICAJPHRoPnskbW9kLT5Nb2RMYW5nKCdpbnN0YW5jZV9uYW1lJyl9PC90aD4KICAgICAgICAgICAgCTx0aD57JG1vZC0+TW9kTGFuZygnaW5zdGFuY2VfZnJpZW5kbHluYW1lJyl9PC90aD4KICAgICAgICAgICAgCTx0aD57JG1vZC0+TW9kTGFuZygnaW5zdGFuY2Vfc21hcnR5Jyl9PC90aD4KICAgICAgICAgICAgCTx0aD57JG1vZC0+TW9kTGFuZygnaW5zdGFuY2VfdmVyc2lvbicpfTwvdGg+CiAgICAgICAgICAgIAk8dGggY2xhc3M9InBhZ2VpY29uIj57JG1vZC0+TW9kTGFuZygnaW5zdGFuY2VfdXB0b2RhdGUnKX08L3RoPgogICAgICAgIAk8L3RyPgogICAgCTwvdGhlYWQ+CiAgICAJPHRib2R5PgoJe2ZvcmVhY2ggZnJvbT0kbW9kdWxlcyBpdGVtPSdlbnRyeSd9CiAgICAJICAgIDx0ciBjbGFzcz0ie2N5Y2xlIHZhbHVlcz0ncm93MSxyb3cyJyBuYW1lPSdzdW1tYXJ5J30iPgogICAgICAgIAkgICAgPHRkPnskZW50cnktPm1vZHVsZV9uYW1lfTwvdGQ+CiAgICAgICAgCSAgICA8dGQ+eyRlbnRyeS0+ZnJpZW5kbHluYW1lfTwvdGQ+CiAgICAgICAgCSAgICA8dGQ+e2xkZWxpbX17JGVudHJ5LT5tb2R1bGVfbmFtZX17cmRlbGltfTwvdGQ+CiAgICAgICAgICAgIAk8dGQ+eyRlbnRyeS0+dmVyc2lvbn08L3RkPgogICAgICAgICAgICAJPHRkPnskZW50cnktPnVwZ3JhZGVsaW5rfTwvdGQ+CiAgICAgICAgCTwvdHI+Cgl7L2ZvcmVhY2h9CiAgICAJPC90Ym9keT4KCTwvdGFibGU+CjwvZmllbGRzZXQ+CnsvaWZ9Cnskc3RhcnRmb3JtfQogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgoJCQkJeyRkdXBsaWNhdGV9CgkJPC9wPiAgIAp7JGVuZGZvcm19]]></data>
	</file>
	<file>
	  <filename>/templates/maintenancetab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/eyRzdGFydGZvcm19CjxmaWVsZHNldD4KCTxsZWdlbmQ+eyRtb2QtPk1vZExhbmcoJ2ZpZWxkZGVmcycpfTwvbGVnZW5kPgoKCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2ZpeF9maWVsZGRlZnMnKX06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskYnV0dG9uX2ZpeF9maWVsZGRlZnN9PC9wPgoJPC9kaXY+CQoJCjwvZmllbGRzZXQ+CnskZW5kZm9ybX0=]]></data>
	</file>
	<file>
	  <filename>/templates/optiontab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/eyRzdGFydGZvcm19CjxmaWVsZHNldD4KCTxsZWdlbmQ+eyRtb2QtPk1vZExhbmcoJ2ZpZWxkZGVmcycpfTwvbGVnZW5kPgoJCgk8ZGl2IGNsYXNzPSJwYWdld2FybmluZyI+CgkJPGgzPnskbW9kLT5Nb2RMYW5nKCdub3RpY2UnKX08L2gzPgoJCTxwPnskbW9kLT5Nb2RMYW5nKCdub3RpY2VfYWxsb3dfYXV0b3NjYW4nKX08L3A+Cgk8L2Rpdj4JCgkKICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TW9kTGFuZygncHJvbXB0X2FsbG93X2F1dG9zY2FuJyl9OjwvcD4KICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FsbG93X2F1dG9zY2FufTwvcD4KICAgIDwvZGl2PgogCjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+Cgk8bGVnZW5kPnskbW9kLT5Nb2RMYW5nKCdpbnN0YW5jZXMnKX08L2xlZ2VuZD4KCQogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5Nb2RMYW5nKCdwcm9tcHRfYWxsb3dfYXV0b2luc3RhbGwnKX06PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxsb3dfYXV0b2luc3RhbGx9PC9wPgogICAgPC9kaXY+CiAKPC9maWVsZHNldD4KCiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgoJCQl7JHN1Ym1pdH0KCQk8L3A+CiAgICA8L2Rpdj4KCnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/upgrade_support/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/upgrade_support/1.3/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/upgrade_support/1.3/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/upgrade_support/1.3/listit2_config.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxpc3RpdDJfY29uZmlnWydtb2R1bGVfYWxpYXMnXSA9ICdsaXN0aXQyJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/upgrade_support/1.3/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIEF1dGhvcjogQmVuIE1hbGVuLCA8YmVuQGNvbmNlcHRmYWN0b3J5LmNvbS5hdT4KIyBDby1NYWludGFpbmVyOiBTaW1vbiBSYWRmb3JkLCA8c2ltb25AY29uY2VwdGZhY3RvcnkuY29tLmF1PgojIFdlYjogd3d3LmNvbmNlcHRmYWN0b3J5LmNvbS5hdQojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBNYWludGFpbmVyIHNpbmNlIDIwMTE6IEpvbmF0aGFuIFNjaG1pZCwgPGhpQGpvbmF0aGFuc2NobWlkLmRlPgojIFdlYjogd3d3LmpvbmF0aGFuc2NobWlkLmRlCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIExpc3RJdCBpcyBhIENNUyBNYWRlIFNpbXBsZSBtb2R1bGUgdGhhdCBlbmFibGVzIHRoZSB3ZWIgZGV2ZWxvcGVyIHRvIGNyZWF0ZQojIG11bHRpcGxlIGxpc3RzIHRocm91Z2hvdXQgYSBzaXRlLiBJdCBjYW4gYmUgZHVwbGljYXRlZCBhbmQgZ2l2ZW4gZnJpZW5kbHkKIyBuYW1lcyBmb3IgZWFzaWVyIGNsaWVudCBtYWludGVuYW5jZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIE5PVEU6IERhdGFiYXNlIHN0dWZmIG5lZWRzIHRvIGJlIHVwZ3JhZGVkIGhlcmUsIGV2ZXJ5IHRpbWUgeW91IGNoYW5nZSBpdAoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKaWYgKCFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgRGF0YWJhc2UgdGFibGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCiRkYi0+RXhlY3V0ZSgnQUxURVIgVEFCTEUgJyAuIGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfZmllbGRkZWZfb3B0cyBNT0RJRlkgdmFsdWUgVEVYVCcpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkdmFsJywgJ2RhdGEgWCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQoKLy8gQ3JlYXRlIGl0ZW1fY2F0ZWdvcmllcyB0YWJsZQokZmllbGRzID0gJwoJaXRlbV9pZCBJIEtFWSBOT1QgbnVsbCwKCWNhdGVnb3J5X2lkIEkgS0VZIE5PVCBudWxsCic7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtX2NhdGVnb3JpZXMnLCAkZmllbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBVcGRhdGUgY2F0ZWdvcnkgdGFibGUKJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5JywgJ2hpZXJhcmNoeV9wYXRoIEMoMjU1KScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAnaWRfaGllcmFyY2h5IEMoMjU1KScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAnYWN0aXZlIEk0Jyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdjcmVhdGVfZGF0ZSBEVCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAnbW9kaWZpZWRfZGF0ZSBEVCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQoKJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2NhdGVnb3J5JywgJ2tleTEgQygyNTUpJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19jYXRlZ29yeScsICdrZXkyIEMoMjU1KScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+QWRkQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKSAuICdtb2R1bGVfJyAuICR0aGlzLT5fR2V0TW9kdWxlQWxpYXMoKSAuICdfY2F0ZWdvcnknLCAna2V5MyBDKDI1NSknKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKLy8gVXBkYXRlIGl0ZW0gdGFibGUKJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2l0ZW0nLCAnbW9kaWZpZWRfdGltZSBEVCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CQoJCiRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2tleTEgQygyNTUpJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2tleTIgQygyNTUpJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19pdGVtJywgJ2tleTMgQygyNTUpJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsJCgovLyBVcGRhdGUgZmllbGR2YWwgdGFibGUKJHNxbGFycmF5ID0gJGRpY3QtPkFkZENvbHVtblNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlXycgLiAkdGhpcy0+X0dldE1vZHVsZUFsaWFzKCkgLiAnX2ZpZWxkdmFsJywgJ3ZhbHVlX2luZGV4IEkgTk9UIG51bGwnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJGRiLT5FeGVjdXRlKCdBTFRFUiBUQUJMRSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV8nIC4gJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19maWVsZHZhbCBEUk9QIFBSSU1BUlkgS0VZLCBBREQgUFJJTUFSWSBLRVkoaXRlbV9pZCwgZmllbGRkZWZfaWQsIHZhbHVlX2luZGV4KScpOwoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFRlbXBsYXRlcwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tCQoKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9jYXRlZ29yeV9kZWZhdWx0LnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkgewoJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2NhdGVnb3J5X2RlZmF1bHQnLCAkdGVtcGxhdGUpOwoJJHRoaXMtPlNldFByZWZlcmVuY2UoJHRoaXMtPl9HZXRNb2R1bGVBbGlhcygpIC4gJ19kZWZhdWx0X2NhdGVnb3J5X3RlbXBsYXRlJywgJ2RlZmF1bHQnKTsKfQoKJGZuID0gY21zX2pvaW5fcGF0aChMSVNUSVQyX1RFTVBMQVRFX1BBVEgsICdmZV9jYXRlZ29yeV9oaWVyYXJjaHkudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CgkkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnY2F0ZWdvcnlfaGllcmFyY2h5JywgJHRlbXBsYXRlKTsKfQkKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBFdmVudHMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKJHRoaXMtPkNyZWF0ZUV2ZW50KCdQcmVSZW5kZXJBY3Rpb24nKTsKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUZW1wbGF0ZXMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLQkKCiR0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcyhwYXJlbnQ6OkdldE5hbWUoKSk7CmZvcmVhY2ggKCR0ZW1wbGF0ZXMgYXMgJHRwbF9uYW1lKSB7CgoJJHRwbF9jb250ZW50ID0gJHRoaXMtPkdldFRlbXBsYXRlKCR0cGxfbmFtZSwgcGFyZW50OjpHZXROYW1lKCkpOwkJCgkkdGhpcy0+U2V0VGVtcGxhdGUoJHRwbF9uYW1lLCAkdHBsX2NvbnRlbnQpOwp9Cg==]]></data>
	</file>
</module>
