<?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>ECB2</name>
	<version>1.99.4</version>
    <mincmsversion>2.0</mincmsversion>
	<help><![CDATA[CiAgICAgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Imh0dHBzOi8vbG9jYWxob3N0L21vZHVsZS1kZXYvbW9kdWxlcy9FQ0IyL2xpYi9jc3MvZWNiMl9hZG1pbi5jc3M/djEuOTkuNCI+CiAgICAgICAgICAgIDxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9sb2NhbGhvc3QvbW9kdWxlLWRldi9tb2R1bGVzL0VDQjIvbGliL2pzL2VjYjJfYWRtaW4uanM/djEuOTkuNCI+PC9zY3JpcHQ+CgoKPGRpdiBjbGFzcz0iY2xlYXIiPjwvZGl2PgoKPGRpdiBpZD0icGFnZV90YWJzIj4KICAgIDxkaXYgaWQ9ImVjYiI+CiAgICAgICAgRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MKICAgIDwvZGl2PgogICAgPGRpdiBpZD0iYWJvdXQiPgogICAgICAgIEFib3V0CiAgICA8L2Rpdj4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgoKPGRpdiBpZD0icGFnZV9jb250ZW50IiBjbGFzcz0iZWNiMi1oZWxwIj4KCiAgICA8ZGl2IGlkPSJlY2JfYyI+CiAgICAgICAgPGRpdiBjbGFzcz0iaGVscC10b2MiPgogICAgICAgICAgICA8aDMgY2xhc3M9ImJvcmRlci1ib3R0b20gbV90b3BfMTUgcF9ib3R0b21fNSI+RmllbGQgdHlwZXM8L2gzPgogICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPjxhIGNsYXNzPSJzbW9vdGgtc2Nyb2xsIiBocmVmPSIjdGV4dGlucHV0Ij50ZXh0aW5wdXQ8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiN0ZXh0YXJlYSI+dGV4dGFyZWE8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNkcm9wZG93biI+ZHJvcGRvd248L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNzb3J0YWJsZWxpc3QiPnNvcnRhYmxlbGlzdDwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2NoZWNrYm94Ij5jaGVja2JveDwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI3JhZGlvIj5yYWRpbzwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2NvbG9yX3BpY2tlciI+Y29sb3JfcGlja2VyPC9hPjwvdWw+ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPjxhIGNsYXNzPSJzbW9vdGgtc2Nyb2xsIiBocmVmPSIjZGF0ZV90aW1lX3BpY2tlciI+ZGF0ZV90aW1lX3BpY2tlcjwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2ZpbGVfc2VsZWN0b3IiPmZpbGVfc2VsZWN0b3I8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNwYWdlX3BpY2tlciI+cGFnZV9waWNrZXI8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNnYWxsZXJ5X3BpY2tlciI+Z2FsbGVyeV9waWNrZXI8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNtb2R1bGVfcGlja2VyIj5tb2R1bGVfcGlja2VyPC9hPjwvdWw+ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPjxhIGNsYXNzPSJzbW9vdGgtc2Nyb2xsIiBocmVmPSIjaGlkZGVuIj5oaWRkZW48L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNpbnB1dF9yZXBlYXRlciI+aW5wdXRfcmVwZWF0ZXI8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJib3JkZXItYm90dG9tIG1fdG9wXzI1IHBfYm90dG9tXzUiPkFkbWluIG9ubHkgZmllbGRzPC9oNT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNhZG1pbl9maWVsZHNldF9zdGFydCI+YWRtaW5fZmllbGRzZXRfc3RhcnQ8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNhZG1pbl9maWVsZHNldF9lbmQiPmFkbWluX2ZpZWxkc2V0X2VuZDwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2FkbWluX2hyIj5hZG1pbl9ocjwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2FkbWluX2ltYWdlIj5hZG1pbl9pbWFnZTwvYT48L3VsPiAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD48YSBjbGFzcz0ic21vb3RoLXNjcm9sbCIgaHJlZj0iI2FkbWluX2xpbmsiPmFkbWluX2xpbms8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNhZG1pbl9tb2R1bGVfbGluayI+YWRtaW5fbW9kdWxlX2xpbms8L2E+PC91bD4gICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiNhZG1pbl90ZXh0Ij5hZG1pbl90ZXh0PC9hPjwvdWw+ICAgCiAgICAgICAgICAgIAogICAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJoZWxwLWNvbnRlbnQiPgogICAgICAgICAgICA8cD5UaGUgRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MgMiAoRUNCMikgbW9kdWxlIHRvIGdpdmUgeW91IG1vcmUgcGFnZSBlZGl0aW5nIG9wdGlvbnMuIE1hbnkgYWRpdGlvbmFsIGNvbnRlbnQgYmxvY2sgdHlwZXMgYXJlIGF2YWlsYWJsZSB0byB1c2UgaW4gZWFjaCBwYWdlIHRlbXBsYXRlLiBlLmcuIGRyb3Bkb3duLCBjb2xvdXIgcGlja2VyLCBjaGVja2JveCwgcmFkaW8gYnV0dG9uLCBhbmQgbWFueSBtb3JlLjwvcD4KPGJyPgoKPGgzPlVzYWdlPC9oMz4KPHA+VXNlIHRoZSBDTVNNUyBjb3JlIDxiPntjb250ZW50X21vZHVsZX08L2I+IHRhZyB0byBhZGQgYWxsIEVDQjIgY29udGVudCBibG9ja3MgdG8gYW55IHBhZ2UgdGVtcGxhdGUuPC9wPgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb21lX2ZpZWxkX3R5cGUgYmxvY2s9J3NvbWUgbmFtZScgLi4ufTwvcHJlPgo8cD5UaGUgY29yZSBjb250ZW50X21vZHVsZSB0YWcgcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJzIGZvciBBTEwgb2YgdGhlIEVDQjIgY29udGVudCBibG9ja3M6PC9wPgo8dWw+CiAgICA8bGk+bW9kdWxlIChyZXF1aXJlZCkgLSAnRUNCMic8L2xpPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSBvbmUgb2YgRUNCMiBmaWVsZCB0eXBlcyBiZWxvdzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5sYWJlbCAob3B0aW9uYWwpIC0gQSBsYWJlbCBmb3IgdGhlIGNvbnRlbnQgYmxvY2sgZm9yIHVzZSB3aGVuIGVkaXRpbmcgdGhlIHBhZ2UuPC9saT4KICAgIDxsaT5yZXF1aXJlZCAob3B0aW9uYWwpIC0gQWxsb3dzIHNwZWNpZnlpbmcgdGhhdCB0aGUgY29udGVudCBibG9jayBtdXN0IGNvbnRhaW4gc29tZSB0ZXh0LjwvbGk+CiAgICA8bGk+dGFiIChvcHRpb25hbCkgLSBUaGUgZGVzaXJlZCB0YWIgdG8gZGlzcGxheSB0aGlzIGZpZWxkIG9uIGluIHRoZSBlZGl0IGZvcm0uPC9saT4KICAgIDxsaT5wcmlvcml0eSAob3B0aW9uYWwpIGludGVnZXIgLSBBbGxvd3Mgc3BlY2lmeWluZyBhbiBpbnRlZ2VyIHByaW9yaXR5IGZvciB0aGUgYmxvY2sgd2l0aGluIHRoZSB0YWIuPC9saT4KICAgIDxsaT5hc3NpZ24gKG9wdGlvbmFsKSBzdHJpbmcgLSBBc3NpZ24gdGhlIHJlc3VsdHMgdG8gYSBzbWFydHkgdmFyaWFibGUgd2l0aCB0aGF0IG5hbWUuPC9saT4KPC91bD4KCjxwPjxiPlNtYXJ0eSB0aXA8L2I+OiBwYXJhbWV0ZXIgdmFsdWVzIHRoYXQgYXJlIHNpbmdsZS13b3JkIHN0cmluZ3MgZG8gbm90IGhhdmUgdG8gYmUgcXVvdGVkIGUuZy4gZmllbGQ9Y2hlY2tib3ggaXMgdGhlIHNhbWUgYXMgZmllbGQ9J2NoZWNrYm94Jy48L3A+Cgo8YnI+PGJyPgogICAgICAgICAgICAKICAgICAgICAgICAgPGgyIGNsYXNzPSJib3JkZXItYm90dG9tIHBfYm90dG9tXzUgbV9ib3R0b21fMTUiPkZpZWxkIHR5cGVzPC9oMj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJ0ZXh0aW5wdXQiIGNsYXNzPSJtX2JvdHRvbV81Ij50ZXh0aW5wdXQ8L2gyPgogICAgICAgICAgICAKPHA+VGhlIHRleHRpbnB1dCBmaWVsZCBjcmVhdGVzIGEgc2ltcGxlIHRleHQgaW5wdXQsIGZvciBzdG9yaW5nIGEgc2luZ2xlIHN0cmluZy48L3A+Cgo8ZmllbGRzZXQ+CgogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJkZW1vX3RleHRpbnB1dDEiIHNpemU9IjU1IiBtYXhsZW5ndGg9IjU1IiB2YWx1ZT0iYSBzYW1wbGUgdGV4dGlucHV0Ii8+Cgo8L2ZpZWxkc2V0PgoKPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9dGV4dGlucHV0IGJsb2NrPSJ0ZXN0NSIgbGFiZWw9IlRleHQiIHNpemU9NTUgbWF4X2xlbmd0aD01NSBkZWZhdWx0PSJhIHNhbXBsZSB0ZXh0aW5wdXQifTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJzxiPnRleHRpbnB1dDwvYj4nLCBvciBhbGlhczogJzxiPmlucHV0PC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+c2l6ZSAob3B0aW9uYWwpIC0gc2V0cyB0aGUgd2lkdGggb2YgdGhlIGh0bWwgaW5wdXQuIE1heSBiZSBvdmVycmlkZGVuIGJ5IGNzcyAtIGRlZmF1bHQgMzA8L2xpPgogICAgPGxpPm1heF9sZW5ndGggKG9wdGlvbmFsKSAtIG1heGltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnMgLSBkZWZhdWx0IDI1NSA8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJ0ZXh0YXJlYSIgY2xhc3M9Im1fYm90dG9tXzUiPnRleHRhcmVhPC9oMj4KICAgICAgICAgICAgCjxwPlRoZSB0ZXh0YXJlYSBmaWVsZCBjcmVhdGVzIGVpdGhlciBhIHNpbXBsZSB0ZXh0YXJlYSBpbnB1dCwgZm9yIHBhcmFncmFwaHMgb2YgdGV4dCwgb3Igb3B0aW9uYWxseSBhIGZ1bGwgV1lTSVdZRyBlZGl0b3IgdG8gY3JlYXRlIGZvcm1hdHRlZCBodG1sLjwvcD4KCjxmaWVsZHNldD4KCiAgICAgICAgPHRleHRhcmVhIG5hbWU9ImRlbW9fdGV4dGFyZWExIiByb3dzPSIzIiBjb2xzPSIxMDAiPmEgc2FtcGxlIHRleHRhcmVhPC90ZXh0YXJlYT4KCjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9IkVDQjIiIGZpZWxkPSJ0ZXh0YXJlYSIgbGFiZWw9IlRleHRhcmVhIiBibG9jaz0idGVzdDYiIHJvd3M9MyBjb2xzPTEwMCBkZWZhdWx0PSJhIHNhbXBsZSB0ZXh0YXJlYSJ9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnPGI+dGV4dGFyZWE8L2I+Jywgb3IgYWxpYXM6ICc8Yj5lZGl0b3I8L2I+JyAoc2V0cyB3eXNpd3lnPXRydWUpPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnJvd3MgKG9wdGlvbmFsKSAtIHNldHMgdGhlIGhlaWdodCBvZiB0aGUgdGV4dGFyZWEuIE1heSBiZSBvdmVycmlkZGVuIGJ5IGNzcyAtIGRlZmF1bHQgMjA8L2xpPgogICAgPGxpPmNvbHMgKG9wdGlvbmFsKSAtIHNldHMgdGhlIHdpZHRoIG9mIHRoZSB0ZXh0YXJlYS4gTWF5IGJlIG92ZXJyaWRkZW4gYnkgY3NzIC0gZGVmYXVsdCA4MDwvbGk+CiAgICA8bGk+d3lzaXd5ZyAob3B0aW9uYWwpIC0gZW5hYmxlcyBhIHd5c2l3eWcgZWRpdG9yIG9uIHRoZSB0ZXh0YXJlYSAtIGRlZmF1bHQgZmFsc2U8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKCiAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9ImRyb3Bkb3duIiBjbGFzcz0ibV9ib3R0b21fNSI+ZHJvcGRvd248L2gyPgogICAgICAgICAgICAKPHA+Q3JlYXRlcyBhIGRyb3Bkb3duIChvciBzZWxlY3QpIHRoYXQgdGhlIGVkaXRvciBjYW4gY2hvb3NlIGZyb20gdGhlIHByb3ZpZGVkIG9wdGlvbnMuIFRoZSBkcm9wZG93biBvcHRpb25zIGNhbiBiZSBmcm9tIGE6IGNvbW1hIHNlcGFyYXRlZCBsaXN0ICh2YWx1ZXMpLCBtb2R1bGUgY2FsbCAobW9kKSwgVXNlciBEZWZpbmVkIFRhZyAodWR0KSwgb3IgYSBzbWFydHkgdGVtcGxhdGUgKHRlbXBsYXRlIC8gdWR0KS4gT25lIG9mIHRoZXNlIHBhcmFtZXRlcnMgbXVzdCBiZSB1c2VkICgqKS48L3A+Cgo8ZmllbGRzZXQ+CgoKICAgICAgICA8c2VsZWN0IGNsYXNzPSJjbXNfZHJvcGRvd24iIG5hbWU9ImRlbW9fZHJvcGRvd24xIj4KICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSIiIHNlbGVjdGVkPnNlbGVjdCBmcnVpdDwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImFwcGxlIiA+QXBwbGU8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJvcmFuZ2UiID5PcmFuZ2U8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJraXdpZnJ1aXQiID5LaXdpZnJ1aXQ8L29wdGlvbj4KICAgICAgICAKICAgICAgICA8L3NlbGVjdD4KCjwvZmllbGRzZXQ+CgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJzxiPmRyb3Bkb3duPC9iPicsIG9yIGFsaWFzOiAnPGI+c2VsZWN0PC9iPicsICc8Yj5kcm9wZG93bl9mcm9tX21vZHVsZTwvYj4nLCAnPGI+ZHJvcGRvd25fZnJvbV91ZHQ8L2I+JywgJzxiPmRyb3Bkb3duX2Zyb21fZ2JjPC9iPicsICc8Yj5kcm9wZG93bl9mcm9tX2N1c3RvbWdzPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+dmFsdWVzICgqKSAtIGNvbW1hIHNlcGFyYXRlZCBzdHJpbmcgb2YgJ1RleHQnIG9yICdUZXh0PXZhbHVlJy4gRXhhbXBsZTogJ0FwcGxlPWFwcGxlLE9yYW5nZT1vcmFuZ2UsR3JlZW49Z3JlZW4nPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGJsb2NrPXRlc3Q1IGZpZWxkPWRyb3Bkb3duMSB2YWx1ZXM9IkFwcGxlPWFwcGxlLE9yYW5nZT1vcmFuZ2UiIGZpcnN0X3ZhbHVlPSJzZWxlY3QgZnJ1aXQiIGxhYmVsPSJGcnVpdCJ9PC9wcmU+CiAgICA8L2xpPgogICAgPGxpPm1vZCAoKikgLSBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgYSBtb2R1bGUgdG8gY2FsbCB0byBnZXQgdGhlIG9wdGlvbiB2YWx1ZXMuIFRoZSBtb2R1bGUgY2FsbCBuZWVkcyB0byBlaXRoZXI6IHNldCBhbiBhcnJheSAkb3B0aW9ucyBvZiAndmFsdWUnID0+ICdUZXh0JyB3aXRoIHNjb3BlPWdsb2JhbCwgb3IgcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgJ1RleHQsLi4uJyBvciAnVGV4dD12YWx1ZSwuLi4nLiBBbnkgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIGFyZSBhbHNvIHBhc3NlZCBvbnRvIHRoZSBzcGVjaWZpZWQgbW9kdWxlLiBZb3UgbWF5IHdhbnQgdG8gaW5jbHVkZSAnYWN0aW9uJyBhbmQgJ3RlbXBsYXRlJyBwYXJhbWV0ZXJzLjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBibG9jaz1kcm9wZG93bjIgZmllbGQ9ZHJvcGRvd24gbW9kPUxJU0VQcm9qZWN0cyB0ZW1wbGF0ZV9zdW1tYXJ5PSJpdGVtX2Ryb3Bkb3duIiBwYWdlbGltaXQ9MiBsYWJlbD0iRHJvcGRvd24gLSBmcm9tIG1vZHVsZSJ9PC9wcmU+CiAgICA8L2xpPgogICAgPGxpPnVkdCAoKikgLSBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgYSBVc2VyIERlZmluZWQgVGFnIHRvIGNhbGwgdG8gZ2V0IHRoZSBvcHRpb24gdmFsdWVzLiBUaGUgVURUIHNob3VsZCBlaXRoZXIgcmV0dXJuIGFuIGFycmF5IG9mICdUZXh0JyA9PiAndmFsdWUnLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mICdUZXh0JyBvciAnVGV4dD12YWx1ZScuPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGJsb2NrPWRyb3Bkb3duMyBmaWVsZD1kcm9wZG93biB1ZHQ9J2VjYjJfdGVzdF91ZHRfb3B0aW9ucycgbGFiZWw9IkRyb3Bkb3duIC0gZnJvbSB1ZHQifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT50ZW1wbGF0ZSAoKikgLSAoYWxpYXM6ICc8Yj5nY2I8L2I+JykgLSBzcGVjaWZpZXMgdGhlIG5hbWUgb2YgYSBzbWFydHkgdGVtcGxhdGUgZnJvbSBEZXNpZ24gTWFuYWdlciB0byBjYWxsIHRvIGdldCB0aGUgb3B0aW9uIHZhbHVlcy4gVGhlIHRlbXBsYXRlIGNhbGwgbmVlZHMgdG8gZWl0aGVyOiBzZXQgYW4gYXJyYXkgJG9wdGlvbnMgb2YgJ3ZhbHVlJyA9PiAnVGV4dCcgd2l0aCBzY29wZT1nbG9iYWwsIG9yIHJldHVybiBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mICdUZXh0LC4uLicgb3IgJ1RleHQ9dmFsdWUsLi4uJy4gPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGJsb2NrPWRyb3Bkb3duNCBmaWVsZD1kcm9wZG93biB0ZW1wbGF0ZT0nRUNCMl90ZXN0X3RlbXBsYXRlX29wdGlvbnMnIGxhYmVsPSJEcm9wZG93biAtIGZyb20gdGVtcGxhdGUifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT5jdXN0b21nc19maWVsZCAoKikgLSBuYW1lIG9mIGN1c3RvbWdzX2ZpZWxkIHRvIHJldHJpZXZlICh3aXRoIHNwYWNlcywgbm90IHVuZGVyc2NvcmVzKSBlLmcuICdTZWN0aW9uIFN0eWxlcycuIFRoaXMgbmVlZHMgdG8gYmUgYSBDdXN0b21HUyAndGV4dGFyZWEnIGNvbnRhaW5pbmcgYSBzZXQgb2YgJ1RleHQnIG9yICdUZXh0PXZhbHVlJywgZWl0aGVyIG9uIHNlcGFyYXRlIGxpbmVzIG9yIHNlcGFyYXRlZCBieSBjb21tYXMuPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGJsb2NrPWRyb3Bkb3duMyBmaWVsZD1kcm9wZG93biBjdXN0b21nc19maWVsZD0nU2VjdGlvbiBTdHlsZXMnICBsYWJlbD0iRHJvcGRvd24gLSBmcm9tIEN1c3RvbUdTIn08L3ByZT4KICAgIDwvbGk+CiAgICA8bGk+Zmlyc3RfdmFsdWUgKG9wdGlvbmFsKSAtIHNldHMgYW4gdGV4dCBzdGluZyBmb3IgdGhlIGZpcnN0IGJsYW5rIHZhbHVlLCBlLmcuICctLS0gc2VsZWN0IG9uZSAtLS0nPC9saT4KICAgIDxsaT5mbGlwX3ZhbHVlcyAob3B0aW9uYWwpIC0gc3dhcHMgdGhlIGRyb3Bkb3ducyB2YWx1ZXMgPC0+IHRleHQ8L2xpPgogICAgPGxpPm11bHRpcGxlIChvcHRpb25hbCkgLSBhZGQgbXVsdGlwbGUgb3B0aW9uIHNlbGVjdCBzdXBwb3J0PC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBtdWx0aXBsZSBlbmFibGVkIG9ubHk8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KICAgIDxsaT5jb21wYWN0IChvcHRpb25hbCkgLSBkZWZhdWx0OmZhbHNlIC0gaWYgc2V0LCBmb3IgbXVsdGlwbGUgb25seSwgYSBzdW1tYXJ5IG9mIHRoZSBzZWxlY3RlZCBvcHRpb25zIGlzIGRpc3BsYXllZCBhbmQgdGhlIGZ1bGwgc2VsZWN0IGlzIHNob3duL2hpZGRlbiB3aGVuICdlZGl0L2hpZGUnIGlzIGNsaWNrZWQ8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CjwvdWw+Cjxicj4KPHA+U2FtcGxlIHRlbXBsYXRlIGZvciAnbW9kJyBwYXJhbWV0ZXIgZm9yIGEgTElTRSBJbnN0YW5jZSBzdW1tYXJ5IHRlbXBsYXRlLiBTaW1pbGFyIGNhbiBhbHNvIGJlIHVzZWQgd2l0aCB0aGUgJ3RlbXBsYXRlJyBwYXJhbWV0ZXIuPC9wPgo8cHJlPgp7KiBpdGVtX2Ryb3Bkb3duIC0gTElTRSBTdW1tYXJ5IHRlbXBsYXRlIGZvciBFQ0IyIGRyb3Bkb3duIG9yIHNvcnRhYmxlbGlzdCAqfQp7KiBFSVRIRVIgc2V0IHRoZSB2YXIgJG9wdGlvbnMgJiBzY29wZT1nbG9iYWwgKGltcG9ydGFudCEpICp9Cnskb3B0aW9ucz1bXX0Ke2ZvcmVhY2ggJGl0ZW1zIGFzICRpdGVtfQp7JG9wdGlvbnNbJGl0ZW0tPmFsaWFzXT0kaXRlbS0+dGl0bGUgc2NvcGU9Z2xvYmFsfQp7L2ZvcmVhY2h9CnsqIE9SIHVzZSB0aGUgZm9sbG93aW5nIGZvcm1hdCB0byByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCAqfQp7Kgp7Zm9yZWFjaCAkaXRlbXMgYXMgJGl0ZW19CnskaXRlbS0+dGl0bGV9PXskaXRlbS0+YWxpYXN9e2lmICEkaXRlbUBsYXN0fSx7L2lmfQp7L2ZvcmVhY2h9Cip9CjwvcHJlPgoKCjxmaWVsZHNldD4KICAgIDxsZWdlbmQ+U2FtcGxlIGRyb3Bkb3duIHdpdGggbXVsdGlwbGUgc2VsZWN0IC0gdXNlICdtdWx0aXBsZT0xJyA8L2xlZ2VuZD4KICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImVjYl9tdWx0aXBsZV9zZWxlY3QgY21zX2Ryb3Bkb3duICI+CiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9ImRlbW9fZHJvcGRvd24yIiBjbGFzcz0iZWNiX3NlbGVjdF9pbnB1dCIgbmFtZT0iZGVtb19kcm9wZG93bjIiIHZhbHVlPSJvcmFuZ2UiIC8+CiAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9ImNtc19kcm9wZG93biIgbmFtZT0iZGVtb19kcm9wZG93bjJfdG1wIiBtdWx0aXBsZSBzaXplPSI0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImFwcGxlIiA+QXBwbGU8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im9yYW5nZSIgc2VsZWN0ZWQ+T3JhbmdlPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJraXdpZnJ1aXQiID5LaXdpZnJ1aXQ8L29wdGlvbj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgIDwvZGl2PgoKPC9maWVsZHNldD4KCjxmaWVsZHNldD4KPGxlZ2VuZD5TYW1wbGUgZHJvcGRvd24gd2l0aCBtdWx0aXBsZSAmIGNvbXBhY3Qgc2VsZWN0IC0gdXNlICdtdWx0aXBsZT0xIGNvbXBhY3Q9MScgPC9sZWdlbmQ+CgogICAgICAgIDxkaXYgY2xhc3M9ImVjYl9tdWx0aXBsZV9zZWxlY3QgY21zX2Ryb3Bkb3duIGVjYl9jb21wYWN0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlY2Jfc2VsZWN0X3N1bW1hcnkiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVjYl9zZWxlY3RfdGV4dCIgZGF0YS1lbXB0eT0iLS0tIG5vbmUgLS0tIj5BcHBsZSwgS2l3aWZydWl0PC9zcGFuPgogICAgICAgICAgICAgICAgJm5ic3A7PGEgY2xhc3M9ImVjYl9zZWxlY3RfZWRpdCIgaHJlZj0iZWRpdC9oaWRlIj48L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJkZW1vX2Ryb3Bkb3duMyIgY2xhc3M9ImVjYl9zZWxlY3RfaW5wdXQiIG5hbWU9ImRlbW9fZHJvcGRvd24zIiB2YWx1ZT0iYXBwbGUsa2l3aWZydWl0IiAvPgogICAgICAgICAgICA8c2VsZWN0IGNsYXNzPSJjbXNfZHJvcGRvd24iIG5hbWU9ImRlbW9fZHJvcGRvd24zX3RtcCIgbXVsdGlwbGUgc2l6ZT0iMyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJhcHBsZSIgc2VsZWN0ZWQ+QXBwbGU8L29wdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im9yYW5nZSIgPk9yYW5nZTwvb3B0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ia2l3aWZydWl0IiBzZWxlY3RlZD5LaXdpZnJ1aXQ8L29wdGlvbj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgIDwvZGl2PgoKPC9maWVsZHNldD4KCjxicj4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBpZD0ic29ydGFibGVsaXN0IiBjbGFzcz0ibV9ib3R0b21fNSI+c29ydGFibGVsaXN0PC9oMj4KICAgICAgICAgICAgCjxwPkNyZWF0ZXMgYSBzb3J0YWJsZWxpc3QgdGhhdCB0aGUgZWRpdG9yIGNhbiBkcmFnLWFuZC1kcm9wIHRvIHNlbGVjdCBmcm9tIHRoZSBsaXN0LiBUaGUgb3B0aW9ucyBjYW4gYmUgY3JlYXRlZCBmcm9tIGE6IGNvbW1hIHNlcGFyYXRlZCBsaXN0ICh2YWx1ZXMpLCBtb2R1bGUgY2FsbCAobW9kKSwgVXNlciBEZWZpbmVkIFRhZyAodWR0KSwgb3IgYSBzbWFydHkgdGVtcGxhdGUgKHRlbXBsYXRlIC8gdWR0KS4gT25lIG9mIHRoZXNlIHBhcmFtZXRlcnMgbXVzdCBiZSB1c2VkICgqKS48L3A+Cgo8ZmllbGRzZXQ+Cgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iZGVtb19zb3J0YWJsZWxpc3QxIiBuYW1lPSJkZW1vX3NvcnRhYmxlbGlzdDEiIHZhbHVlPSJvcmFuZ2UiIHNpemU9IjEwMCIvPgo8ZGl2IGNsYXNzPSJjX2Z1bGwgY2YgZWNiMi1jYiBkZW1vX3NvcnRhYmxlbGlzdDEiPgogICAgPGRpdiBjbGFzcz0iZ3JpZF82IGFscGhhIj4KICAgICAgICA8ZmllbGRzZXQ+CiAgICAgICAgICAgIDxsZWdlbmQ+U2VsZWN0ZWQ8L2xlZ2VuZD4KICAgICAgICAgICAgPGRpdiBpZD0ic2VsZWN0ZWQtaXRlbXMiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJzb3J0YWJsZS1lY2IyLWxpc3Qgc29ydGFibGUtbGlzdCBzZWxlY3RlZC1pdGVtcyIgZGF0YS1jbXNtcy1jYi1pbnB1dD0iZGVtb19zb3J0YWJsZWxpc3QxIgogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0icGxhY2Vob2xkZXIgbm8tc29ydCAgaGlkZGVuIj5ObyBpdGVtcyBzZWxlY3RlZCAtIGRyb3Agc2VsZWN0ZWQgaXRlbXMgaGVyZTwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNmIHNvcnRhYmxlLWl0ZW0iIGRhdGEtY21zbXMtaXRlbS1pZD0ib3JhbmdlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yYW5nZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgdGl0bGU9IlJlbW92ZSIgY2xhc3M9InVpLWljb24gdWktaWNvbi10cmFzaCBzb3J0YWJsZS1yZW1vdmUiPlJlbW92ZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZmllbGRzZXQ+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImdyaWRfNiBvbWVnYSBkcmFnZ2FibGUtYXJlYSI+CiAgICAgICAgPGZpZWxkc2V0PgogICAgICAgICAgICA8bGVnZW5kPkF2YWlsYWJsZTwvbGVnZW5kPgogICAgICAgICAgICA8ZGl2IGlkPSJhdmFpbGFibGUtaXRlbXMiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJzb3J0YWJsZS1lY2IyLWxpc3Qgc29ydGFibGUtbGlzdCBhdmFpbGFibGUtaXRlbXMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IiBkYXRhLWNtc21zLWl0ZW0taWQ9ImFwcGxlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwcGxlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiB0aXRsZT0iUmVtb3ZlIiBjbGFzcz0idWktaWNvbiB1aS1pY29uLXRyYXNoIHNvcnRhYmxlLXJlbW92ZSBoaWRkZW4iPlJlbW92ZTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0idWktc3RhdGUtZGVmYXVsdCIgZGF0YS1jbXNtcy1pdGVtLWlkPSJncmVlbiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBHcmVlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgdGl0bGU9IlJlbW92ZSIgY2xhc3M9InVpLWljb24gdWktaWNvbi10cmFzaCBzb3J0YWJsZS1yZW1vdmUgaGlkZGVuIj5SZW1vdmU8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQiIGRhdGEtY21zbXMtaXRlbS1pZD0idmFsdWUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgTGFiZWwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIHRpdGxlPSJSZW1vdmUiIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tdHJhc2ggc29ydGFibGUtcmVtb3ZlIGhpZGRlbiI+UmVtb3ZlPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2ZpZWxkc2V0PgogICAgPC9kaXY+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdzb3J0YWJsZWxpc3QnPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnZhbHVlcyAoKikgLSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mICdUZXh0JyBvciAndmFsdWU9VGV4dCcuIChOb3RlOiB0aGlzIGlzIHJldmVyc2VkIGNvbXBhcmVkIHRvICdkcm9wZG93bicgdmFsdWVzIC0gdXNlIGZsaXBfdmFsdWVzIGlmIG5lY2Vzc2FyeSkgZS5nOjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb3J0YWJsZWxpc3QgYmxvY2s9dGVzdDQgbGFiZWw9IkZydWl0IiB2YWx1ZXM9J2FwcGxlPUFwcGxlLG9yYW5nZT1PcmFuZ2UsZ3JlZW49R3JlZW4sdmFsdWU9TGFiZWwnfTwvcHJlPgogICAgPC9saT4gICAKICAgIDxsaT5tb2QgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgbW9kdWxlIHRvIGNhbGwgdG8gZ2V0IHRoZSBvcHRpb24gdmFsdWVzLiAKICAgIFRoZSB0ZW1wbGF0ZSBjYWxsIG5lZWRzIHRvIGVpdGhlcjogc2V0IGFuIGFycmF5ICRvcHRpb25zIG9mICd2YWx1ZScgPT4gJ1RleHQnIHdpdGggc2NvcGU9Z2xvYmFsLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicuIEFueSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgYXJlIGFsc28gcGFzc2VkIG9udG8gdGhlIHNwZWNpZmllZCBtb2R1bGUuIFlvdSBtYXkgd2FudCB0byBpbmNsdWRlICdhY3Rpb24nIGFuZCAndGVtcGxhdGUnIHBhcmFtZXRlcnMuIGUuZzo8YnI+CiAgICAgICAgPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0YSBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gbW9kdWxlIiBtb2Q9TElTRVByb2plY3RzIHRlbXBsYXRlX3N1bW1hcnk9J2l0ZW1fZHJvcGRvd24nIHBhZ2VsaW1pdD0yfTwvcHJlPgogICAgPC9saT4KICAgIDxsaT51ZHQgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgVXNlciBEZWZpbmVkIFRhZyB0byBjYWxsIHRvIGdldCB0aGUgb3B0aW9uIHZhbHVlcy4gVGhlIFVEVCBzaG91bGQgZWl0aGVyIHJldHVybiBhbiBhcnJheSBvZiAndmFsdWUnID0+ICdUZXh0Jywgb3IgcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb3J0YWJsZWxpc3QgYmxvY2s9dGVzdDRiIHVkdD0nZWNiMl90ZXN0X3VkdF9vcHRpb25zJyBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gdWR0In08L3ByZT4KICAgIDwvbGk+CiAgICA8bGk+dGVtcGxhdGUgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgc21hcnR5IHRlbXBsYXRlIGZyb20gRGVzaWduIE1hbmFnZXIgdG8gY2FsbCB0byBnZXQgdGhlIG9wdGlvbiB2YWx1ZXMuIFRoZSB0ZW1wbGF0ZSBjYWxsIG5lZWRzIHRvIGVpdGhlcjogc2V0IGFuIGFycmF5ICRvcHRpb25zIG9mICd2YWx1ZScgPT4gJ1RleHQnIHdpdGggc2NvcGU9Z2xvYmFsLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicuPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXNvcnRhYmxlbGlzdCBibG9jaz10ZXN0NGMgdGVtcGxhdGU9J0VDQjJfdGVzdF90ZW1wbGF0ZV9vcHRpb25zJyBsYWJlbD0nU29ydGFibGUgTGlzdCAtIGZyb20gdGVtcGxhdGUnIGxhYmVsX2xlZnQ9J1NlbGVjdGVkIGl0ZW1zIGZyb20gdGVtcGxhdGUnIGxhYmVsX3JpZ2h0PSdBdmFpbGFibGUgaXRlbXMgZnJvbSB0ZW1wbGF0ZSd9PC9wcmU+CiAgICA8L2xpPgogICAgPGxpPmN1c3RvbWdzX2ZpZWxkICgqKSAtIG5hbWUgb2YgY3VzdG9tZ3NfZmllbGQgdG8gcmV0cmlldmUgKHdpdGggc3BhY2VzLCBub3QgdW5kZXJzY29yZXMpIGUuZy4gJ1NlY3Rpb24gU3R5bGVzJy4gVGhpcyBuZWVkcyB0byBiZSBhIEN1c3RvbUdTICd0ZXh0YXJlYScgY29udGFpbmluZyBhIHNldCBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLCBlaXRoZXIgb24gc2VwYXJhdGUgbGluZXMgb3Igc2VwYXJhdGVkIGJ5IGNvbW1hcy48YnI+CiAgICAgICAgPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0ZCBjdXN0b21nc19maWVsZD0nU2VjdGlvbiBTdHlsZXMnICBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gQ3VzdG9tR1MifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT5sYWJlbF9sZWZ0IChvcHRpb25hbCkgLSBkZWZhdWx0OiAnU2VsZWN0ZWQnPC9saT4KICAgIDxsaT5sYWJlbF9yaWdodCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ0F2YWlsYWJsZSc8L2xpPgogICAgPGxpPm1heF9udW1iZXIgKG9wdGlvbmFsKSAtIGxpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQ8L2xpPgogICAgPGxpPnJlcXVpcmVkX251bWJlciAob3B0aW9uYWwpIC0gc2V0cyBhIHNwZWNpZmljIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQgKG9yIG5vbmUpPC9saT4KICAgIDxsaT5mbGlwX3ZhbHVlcyAob3B0aW9uYWwpIC0gc3dhcHMgdGhlIGRyb3Bkb3ducyB2YWx1ZXMgPC0+IHRleHQ8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgo8YnI+CgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJjaGVja2JveCIgY2xhc3M9Im1fYm90dG9tXzUiPmNoZWNrYm94PC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBjaGVja2JveCBmaWVsZCBjcmVhdGVzIGEgc2ltcGxlIGNoZWNrLWFibGUgaW5wdXQuPC9wPgoKPGZpZWxkc2V0PgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij5UZXN0IGNoZWNrYm94PC9wPgogICAgCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZGVtb19jaGVja2JveDEiIHZhbHVlPSIwIj4KICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJkZW1vX2NoZWNrYm94MSIgY2xhc3M9ImNtc19jaGVja2JveCIgbmFtZT0iZGVtb19jaGVja2JveDEiIHZhbHVlPSIxIiBjaGVja2VkPSJjaGVja2VkIj4KCjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1jaGVja2JveCBibG9jaz0idGVzdDUiIGxhYmVsPSJUZXN0IGNoZWNrYm94IiBkZWZhdWx0PSIxIn08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdjaGVja2JveCc8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+aW5saW5lX2xhYmVsIChvcHRpb25hbCkgLSBhZGRzIGEgY2xpY2thYmxlIGlubGluZSBsYWJlbCB0byB0aGUgY2hlY2tib3guIFRpcDogSWYgeW91IGFkZCBsYWJlbD0nJmFtcDtuYnNwOycgdGhlIGxhYmVsIGFib3ZlIHRoZSBjaGVja2JveCB3aWxsIGJlIGhpZGRlbjwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+Cgo8ZmllbGRzZXQ+CiAgICA8bGVnZW5kPlNhbXBsZSBjaGVja2JveCB3aXRoIGlubGluZV9sYWJlbCAtIHVzZSAnaW5saW5lX2xhYmVsPSJpbmxpbmUgbGFiZWwgZm9yIGNoZWNrYm94IiBsYWJlbD0iJmFtcDtuYnNwOyInIDwvbGVnZW5kPgogICAgCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZGVtb19jaGVja2JveDIiIHZhbHVlPSIwIj4KICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJkZW1vX2NoZWNrYm94MiIgY2xhc3M9ImNtc19jaGVja2JveCIgbmFtZT0iZGVtb19jaGVja2JveDIiIHZhbHVlPSIxIiBjaGVja2VkPSJjaGVja2VkIj4KICAgICAgICA8bGFiZWwgZm9yPSJkZW1vX2NoZWNrYm94MiI+IDxiPmlubGluZSBsYWJlbCBmb3IgY2hlY2tib3g8L2I+PC9sYWJlbD4KCjwvZmllbGRzZXQ+CiAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9InJhZGlvIiBjbGFzcz0ibV9ib3R0b21fNSI+cmFkaW88L2gyPgogICAgICAgICAgICAKPHA+VGhlIHJhZGlvIGZpZWxkIGNyZWF0ZXMgYSBzaW1wbGUgdGV4dCBpbnB1dCwgZm9yIHN0b3JpbmcgYSBzaW5nbGUgc3RyaW5nLjwvcD4KCjxmaWVsZHNldD4KICAgIAogICAgICAgIDxsYWJlbD48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImRlbW9fcmFkaW8xIiB2YWx1ZT0iYXBwbGUiIC8+QXBwbGU8L2xhYmVsPjxicj4KPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iZGVtb19yYWRpbzEiIHZhbHVlPSJvcmFuZ2UiIGNoZWNrZWQ9ImNoZWNrZWQiIC8+T3JhbmdlPC9sYWJlbD48YnI+CjxsYWJlbD48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImRlbW9fcmFkaW8xIiB2YWx1ZT0ia2l3aWZydWl0IiAvPktpd2lmcnVpdDwvbGFiZWw+PGJyPiAKPC9maWVsZHNldD4KCjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXJhZGlvIGJsb2NrPSJ0ZXN0MTciIGxhYmVsPSJGcnVpdCIgdmFsdWVzPSJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEtpd2lmcnVpdD1raXdpZnJ1aXQiIGRlZmF1bHQ9Im9yYW5nZSJ9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAncmFkaW8nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnZhbHVlcyAocmVxdWlyZWQpIC0gY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgJ1RleHQnIG9yICdUZXh0PXZhbHVlJy4gRXhhbXBsZTogJ0FwcGxlPWFwcGxlLE9yYW5nZT1vcmFuZ2UsS2l3aWZydWl0PWtpd2lmcnVpdCc8L2xpPgogICAgPGxpPmZsaXBfdmFsdWVzIChvcHRpb25hbCkgLSBzd2FwcyB0aGUgZHJvcGRvd25zIHZhbHVlcyA8LT4gdGV4dDwvbGk+CiAgICA8bGk+aW5saW5lIChvcHRpb25hbCkgLSBpZiBzZXQgZGlzcGxheXMgYWRtaW4gcmFkaW8gYnV0dG9ucyBpbmxpbmU8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5yYWRpbyB3aXRoIGlubGluZSBidXR0b25zIC0gdXNlICdpbmxpbmU9MSc8L2xlZ2VuZD4KICAgIAogICAgICAgIDxsYWJlbD48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImRlbW9fcmFkaW8yIiB2YWx1ZT0iYXBwbGUiIC8+QXBwbGU8L2xhYmVsPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOwo8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJkZW1vX3JhZGlvMiIgdmFsdWU9Im9yYW5nZSIgY2hlY2tlZD0iY2hlY2tlZCIgLz5PcmFuZ2U8L2xhYmVsPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOwo8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJkZW1vX3JhZGlvMiIgdmFsdWU9Imtpd2lmcnVpdCIgLz5LaXdpZnJ1aXQ8L2xhYmVsPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAKPC9maWVsZHNldD4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBpZD0iY29sb3JfcGlja2VyIiBjbGFzcz0ibV9ib3R0b21fNSI+Y29sb3JfcGlja2VyPC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBjb2xvcl9waWNrZXIgZmllbGQgcHJvdmlkZXMgYSBzaW1wbGUgb3B0aW9uIGZvciBzZWxlY3RpbmcgYSBIRVggY29sb3IgY29kZS48L3A+Cgo8ZmllbGRzZXQ+CiAgICAKICAgICAgICA8aW5wdXQgY2xhc3M9ImNvbG9ycGlja2VyIiB0eXBlPSJ0ZXh0IiBuYW1lPSJkZW1vX2NvbG9yX3BpY2tlcjEiIGlkPSJkZW1vX2NvbG9yX3BpY2tlciIgc2l6ZT0iMTAiIHZhbHVlPSIjMzMzOGM0Ii8+CjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1jb2xvcl9waWNrZXIgYmxvY2s9InRlc3Q3IiBsYWJlbD0iQ29sb3IiIGRlZmF1bHQ9IiMzMzM4YzQifTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2NvbG9yX3BpY2tlcic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+c2l6ZSAob3B0aW9uYWwpIC0gZGVmYXVsdCAxMDwvbGk+CiAgICA8bGk+bm9faGFzaCAob3B0aW9uYWwpIC0gaWYgc2V0IHRoZSBoZXggdmFsdWUgZGlzcGxheWVkIGFuZCByZXR1cm5lZCBkb2VzIG5vdCBpbmNsdWRlIGEgJyMnPC9saT4KICAgIDxsaT5jbGVhcl9jc3NfY2FjaGUgKG9wdGlvbmFsKSAtIGlmIHNldCB0aGUgY3NzIGNhY2hlIGlzIHJlZnJlc2hlZCBpZiB0aGUgY29sb3IgaXMgY2hhbmdlZDwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+CgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJkYXRlX3RpbWVfcGlja2VyIiBjbGFzcz0ibV9ib3R0b21fNSI+ZGF0ZV90aW1lX3BpY2tlcjwvaDI+CiAgICAgICAgICAgIAo8cD5UaGUgZGF0ZV90aW1lX3BpY2tlciBmaWVsZCBjcmVhdGVzIGEgcG9wdXAgZm9yIHNlbGVjdGluZyBhIGRhdGUsIGEgdGltZSwgb3IgYm90aC48L3A+Cgo8ZmllbGRzZXQ+CiAgICAKICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9ImRhdGV0aW1lcGlja2VyIiAgbmFtZT0iZGVtb19kYXRlX3RpbWVfcGlja2VyMSIgc2l6ZT0iMjAiIG1heGxlbmd0aD0iMjAidmFsdWU9IiIgZGF0YS10aW1lLWZvcm1hdD0iSEg6bW0iIGRhdGEtdGltZS1mb3JtYXQ9IkhIOm1tIi8+CjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kYXRlX3RpbWVfcGlja2VyIGJsb2NrPSd0ZXN0OCcgbGFiZWw9J0RhdGUgVGltZSBQaWNrZXInfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2RhdGVfdGltZV9waWNrZXInLCBvciBhbGlhczogJzxiPmRhdGVwaWNrZXI8L2I+JywgJzxiPnRpbWVwaWNrZXI8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBzZXRzIHRoZSB3aWR0aCBvZiB0aGUgaHRtbCBpbnB1dCAtIGRlZmF1bHQ6IDIwPC9saT4KICAgIDxsaT5tYXhfbGVuZ3RoIChvcHRpb25hbCkgLSBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIC0gZGVmYXVsdDogMTA8L2xpPgogICAgPGxpPnNob3dfdGltZSAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+dGltZTwvYj4nKSBhZGQgdGltZSBwaWNrZXIgLSBkZWZhdWx0OiB0cnVlPC9saT4KICAgIDxsaT5kYXRlX29ubHkgKG9wdGlvbmFsKSAtIG9ubHkgc2hvdyBkYXRlIHBpY2tlciAtIGRlZmF1bHQ6IGZhbHNlPC9saT4KICAgIDxsaT50aW1lX29ubHkgKG9wdGlvbmFsKSAtIG9ubHkgc2hvdyB0aW1lIHBpY2tlciAtIGRlZmF1bHQ6IGZhbHNlPC9saT4KICAgIDxsaT5kYXRlX2Zvcm1hdCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ3l5LW1tLWRkJzwvbGk+CiAgICA8bGk+dGltZV9mb3JtYXQgKG9wdGlvbmFsKSAtIGRlZmF1bHQ6ICdISDo6c3MnPC9saT4KICAgIDxsaT5jaGFuZ2VfbW9udGggKG9wdGlvbmFsKSAtIHdoZXRoZXIgdGhlIG1vbnRoIHNob3VsZCBiZSByZW5kZXJlZCBhcyBhIGRyb3Bkb3duIGluc3RlYWQgb2YgdGV4dCAtIGRlZmF1bHQ6IGZhbHNlLjwvbGk+CiAgICA8bGk+Y2hhbmdlX3llYXIgKG9wdGlvbmFsKSAtIHdoZXRoZXIgdGhlIHllYXIgc2hvdWxkIGJlIHJlbmRlcmVkIGFzIGEgZHJvcGRvd24gaW5zdGVhZCBvZiB0ZXh0LiBVc2UgdGhlIHllYXJfcmFuZ2Ugb3B0aW9uIHRvIGNvbnRyb2wgd2hpY2ggeWVhcnMgYXJlIG1hZGUgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb24gLSBkZWZhdWx0OiBmYWxzZTwvbGk+CiAgICA8bGk+eWVhcl9yYW5nZSAob3B0aW9uYWwpIC0gdGhlIHJhbmdlIG9mIHllYXJzIGRpc3BsYXllZCBpbiB0aGUgeWVhciBkcm9wLWRvd246IGVpdGhlciByZWxhdGl2ZSB0byB0b2RheSdzIHllYXIgKCItbm46K25uIiksIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgeWVhciAoImMtbm46YytubiIpLCBhYnNvbHV0ZSAoIm5ubm46bm5ubiIpLCBvciBjb21iaW5hdGlvbnMgb2YgdGhlc2UgZm9ybWF0cyAoIm5ubm46LW5uIikgLSBkZWZhdWx0OiAnYy0xMDpjKzEwJzwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5kYXRlX3RpbWVfcGlja2VyIHdpdGggZGF0ZV9vbmx5IC0gdXNlICdkYXRlX29ubHk9MSc8L2xlZ2VuZD4KICAgIAogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0iZGF0ZXBpY2tlciIgIG5hbWU9ImRlbW9fZGF0ZV90aW1lX3BpY2tlcjIiIHNpemU9IjIwIiBtYXhsZW5ndGg9IjIwInZhbHVlPSIiIGRhdGEtdGltZS1mb3JtYXQ9IkhIOm1tIiBkYXRhLXRpbWUtZm9ybWF0PSJISDptbSIvPgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5kYXRlX3RpbWVfcGlja2VyIHdpdGggdGltZV9vbmx5IC0gdXNlICd0aW1lX29ubHk9MSc8L2xlZ2VuZD4KICAgIAogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0idGltZXBpY2tlciIgIG5hbWU9ImRlbW9fZGF0ZV90aW1lX3BpY2tlcjMiIHNpemU9IjIwIiBtYXhsZW5ndGg9IjIwInZhbHVlPSIiIGRhdGEtdGltZS1mb3JtYXQ9IkhIOm1tIiBkYXRhLXRpbWUtZm9ybWF0PSJISDptbSIvPgo8L2ZpZWxkc2V0PgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJmaWxlX3NlbGVjdG9yIiBjbGFzcz0ibV9ib3R0b21fNSI+ZmlsZV9zZWxlY3RvcjwvaDI+CiAgICAgICAgICAgIAo8cD5UaGUgZmlsZV9zZWxlY3RvciBmaWVsZCBlbmFibGVzIGEgZmlsZSB0byBiZSBzZWxlY3RlZCBmcm9tIGEgc2V0IGRpcmVjdG9yeSBhbmQgY2FuIG9wdGlvbmFsbHkgc2hvdyBhIHRodW1ibmFpbC48L3A+Cgo8ZmllbGRzZXQ+CiAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJlY2JfZmlsZV9zZWxlY3Rvcl9zZWxlY3QiPgogICAgICAgICAgICA8c2VsZWN0IGNsYXNzPSJjbXNfZHJvcGRvd24iIG5hbWU9ImRlbW9fZmlsZV9zZWxlY3RvcjEiPgogICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iIiBzZWxlY3RlZD0ic2VsZWN0ZWQiPjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9uYXZsZWZ0dGVzdC5naWYiPm5ncmV5L25hdmxlZnR0ZXN0LmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS91bGJ0bXJ0LnBuZyI+bmdyZXkvdWxidG1ydC5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvdWx0b3BydC5wbmciPm5ncmV5L3VsdG9wcnQucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L21haW5ydC5naWYiPm5ncmV5L21haW5ydC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvcGFyZW50LnBuZyI+bmdyZXkvcGFyZW50LnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9leHRlcm5hbC5naWYiPm5ncmV5L2V4dGVybmFsLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9saWJrLmdpZiI+bmdyZXkvbGliay5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvcnR1cC5naWYiPm5ncmV5L3J0dXAuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L2RvdC5naWYiPm5ncmV5L2RvdC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvYmdfYmFubmVyLnBuZyI+bmdyZXkvYmdfYmFubmVyLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS91bHRvcHVwLnBuZyI+bmdyZXkvdWx0b3B1cC5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvbWFpbnJ0dXAuZ2lmIj5uZ3JleS9tYWlucnR1cC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvcGFyZW50LmdpZiI+bmdyZXkvcGFyZW50LmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS93YnRtbGVmdC5naWYiPm5ncmV5L3didG1sZWZ0LmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS91bHRvcC5naWYiPm5ncmV5L3VsdG9wLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9saXVwLmdpZiI+bmdyZXkvbGl1cC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvYWN0aXZlLmdpZiI+bmdyZXkvYWN0aXZlLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS91bHRvcHVwLmdpZiI+bmdyZXkvdWx0b3B1cC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvd3RvcGxlZnQuZ2lmIj5uZ3JleS93dG9wbGVmdC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvbWFpbnJ0MS5naWYiPm5ncmV5L21haW5ydDEuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L21haW5sZWZ0dXAuZ2lmIj5uZ3JleS9tYWlubGVmdHVwLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9sb2dvQ01TLnBuZyI+bmdyZXkvbG9nb0NNUy5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvd2Zvb3RydC5naWYiPm5ncmV5L3dmb290cnQuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L3VsdG9wcnQuZ2lmIj5uZ3JleS91bHRvcHJ0LmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9uYXZydHRlc3QuZ2lmIj5uZ3JleS9uYXZydHRlc3QuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L2FjdGl2ZS5wbmciPm5ncmV5L2FjdGl2ZS5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmdyZXkvc2VhcmNoLmdpZiI+bmdyZXkvc2VhcmNoLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9uYXYucG5nIj5uZ3JleS9uYXYucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L2JvZHkucG5nIj5uZ3JleS9ib2R5LnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS9tYWlubGVmdDEuZ2lmIj5uZ3JleS9tYWlubGVmdDEuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im5ncmV5L2RhcmtuYXYucG5nIj5uZ3JleS9kYXJrbmF2LnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJuZ3JleS91bGJ0bXJ0LmdpZiI+bmdyZXkvdWxidG1ydC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ibmV3cy9pZDQvMjAxNjAzMTBfMTIxMjQ5LmpwZyI+bmV3cy9pZDQvMjAxNjAzMTBfMTIxMjQ5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJwcm9qZWN0LWltYWdlcy8wMzE1LVBJMi1XYXRlcmZhbGxDYXRsaW5zLmpwZyI+cHJvamVjdC1pbWFnZXMvMDMxNS1QSTItV2F0ZXJmYWxsQ2F0bGlucy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0icHJvamVjdC1pbWFnZXMvMTctQ2FsbVdhdGVycy5qcGciPnByb2plY3QtaW1hZ2VzLzE3LUNhbG1XYXRlcnMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvdmVyc2lvbi5wbmciPk5DbGVhbkJsdWUvdmVyc2lvbi5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTkNsZWFuQmx1ZS9iZ19fY29udGVudC5wbmciPk5DbGVhbkJsdWUvYmdfX2NvbnRlbnQucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvdWxidG0ucG5nIj5OQ2xlYW5CbHVlL3VsYnRtLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJOQ2xlYW5CbHVlL2JnX19mb290ZXIucG5nIj5OQ2xlYW5CbHVlL2JnX19mb290ZXIucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvc2VhcmNoLnBuZyI+TkNsZWFuQmx1ZS9zZWFyY2gucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvZXh0ZXJuYWwuZ2lmIj5OQ2xlYW5CbHVlL2V4dGVybmFsLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJOQ2xlYW5CbHVlL3NjcmVlbi0xLjYuanBnIj5OQ2xlYW5CbHVlL3NjcmVlbi0xLjYuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvdWx0b3AucG5nIj5OQ2xlYW5CbHVlL3VsdG9wLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJOQ2xlYW5CbHVlL3VsdG9wLmdpZiI+TkNsZWFuQmx1ZS91bHRvcC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTkNsZWFuQmx1ZS90YWJzLmdpZiI+TkNsZWFuQmx1ZS90YWJzLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJOQ2xlYW5CbHVlL2J1bGwucG5nIj5OQ2xlYW5CbHVlL2J1bGwucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvYmdfX2Z1bGwucG5nIj5OQ2xlYW5CbHVlL2JnX19mdWxsLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJOQ2xlYW5CbHVlL2pzL3RyYW5zcGFyZW50LmdpZiI+TkNsZWFuQmx1ZS9qcy90cmFuc3BhcmVudC5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTkNsZWFuQmx1ZS9hcnJvdy5naWYiPk5DbGVhbkJsdWUvYXJyb3cuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Ik5DbGVhbkJsdWUvbG9nby5wbmciPk5DbGVhbkJsdWUvbG9nby5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTkNsZWFuQmx1ZS91bGJ0bS5naWYiPk5DbGVhbkJsdWUvdWxidG0uZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvdGVhc2VyL25vdGVib29rLXNjZW5lLnBuZyI+c2ltcGxleC90ZWFzZXIvbm90ZWJvb2stc2NlbmUucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvdGVhc2VyL21hdGUtemltcGxlLnBuZyI+c2ltcGxleC90ZWFzZXIvbWF0ZS16aW1wbGUucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvdGVhc2VyL21vYmlsZS1kZXZpY2VzLXNjZW5lLnBuZyI+c2ltcGxleC90ZWFzZXIvbW9iaWxlLWRldmljZXMtc2NlbmUucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvdGVhc2VyL3BhbG0tbG9nby5wbmciPnNpbXBsZXgvdGVhc2VyL3BhbG0tbG9nby5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ic2ltcGxleC90ZWFzZXIvYnJvd3Nlci1zY2VuZS5wbmciPnNpbXBsZXgvdGVhc2VyL2Jyb3dzZXItc2NlbmUucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvaW1hZ2VzL2Ntc21hZGVzaW1wbGUtbG9nby5wbmciPnNpbXBsZXgvaW1hZ2VzL2Ntc21hZGVzaW1wbGUtbG9nby5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ic2ltcGxleC9pbWFnZXMvaWNvbnMvY21zbXMtNjB4NjAucG5nIj5zaW1wbGV4L2ltYWdlcy9pY29ucy9jbXNtcy02MHg2MC5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ic2ltcGxleC9pbWFnZXMvaWNvbnMvY21zbXMtMTk2eDE5Ni5wbmciPnNpbXBsZXgvaW1hZ2VzL2ljb25zL2Ntc21zLTE5NngxOTYucG5nPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InNpbXBsZXgvaW1hZ2VzL2ljb25zL2Ntc21zLTE1MngxNTIucG5nIj5zaW1wbGV4L2ltYWdlcy9pY29ucy9jbXNtcy0xNTJ4MTUyLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJzaW1wbGV4L2ltYWdlcy9pY29ucy9jbXNtcy03Nng3Ni5wbmciPnNpbXBsZXgvaW1hZ2VzL2ljb25zL2Ntc21zLTc2eDc2LnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJzaW1wbGV4L2ltYWdlcy9pY29ucy9jbXNtcy0xMjB4MTIwLnBuZyI+c2ltcGxleC9pbWFnZXMvaWNvbnMvY21zbXMtMTIweDEyMC5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ic2ltcGxleC9pbWFnZXMvcGFsbS1jaXJjbGUucG5nIj5zaW1wbGV4L2ltYWdlcy9wYWxtLWNpcmNsZS5wbmc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ic2ltcGxleC9pbWFnZXMvYm9keS1iYWNrZ3JvdW5kLnBuZyI+c2ltcGxleC9pbWFnZXMvYm9keS1iYWNrZ3JvdW5kLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF84L3Bob3RvXzMuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF84L3Bob3RvXzMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzgvcGhvdG9fMS5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzgvcGhvdG9fMS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfOC9waG90b181LmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfOC9waG90b181LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF84L3Bob3RvXzIuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF84L3Bob3RvXzIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzgvcGhvdG9fNC5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzgvcGhvdG9fNC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNS9waG90b18zLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNS9waG90b18zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF81L3Bob3RvXzEuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF81L3Bob3RvXzEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzUvcGhvdG9fNS5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzUvcGhvdG9fNS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNS9waG90b18yLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNS9waG90b18yLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF81L3Bob3RvXzQuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF81L3Bob3RvXzQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzYvcGhvdG9fMy5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzYvcGhvdG9fMy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNi9waG90b18xLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNi9waG90b18xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF82L3Bob3RvXzUuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF82L3Bob3RvXzUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzYvcGhvdG9fMi5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzYvcGhvdG9fMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNi9waG90b180LmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNi9waG90b180LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF85L3Bob3RvXzMuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF85L3Bob3RvXzMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzkvcGhvdG9fMS5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzkvcGhvdG9fMS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfOS9waG90b181LmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfOS9waG90b181LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF85L3Bob3RvXzIuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF85L3Bob3RvXzIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzkvcGhvdG9fNC5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzkvcGhvdG9fNC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNy9waG90b18zLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNy9waG90b18zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF83L3Bob3RvXzEuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF83L3Bob3RvXzEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzcvcGhvdG9fNS5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzcvcGhvdG9fNS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfNy9waG90b18yLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfNy9waG90b18yLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF83L3Bob3RvXzQuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF83L3Bob3RvXzQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzEvcGhvdG9fMy5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzEvcGhvdG9fMy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfMS9waG90b18xLmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfMS9waG90b18xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfcHJvZHVjdHMvcHJvZHVjdF8xL3Bob3RvXzUuanBnIj5fcHJvZHVjdHMvcHJvZHVjdF8xL3Bob3RvXzUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Il9wcm9kdWN0cy9wcm9kdWN0XzEvcGhvdG9fMi5qcGciPl9wcm9kdWN0cy9wcm9kdWN0XzEvcGhvdG9fMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iX3Byb2R1Y3RzL3Byb2R1Y3RfMS9waG90b180LmpwZyI+X3Byb2R1Y3RzL3Byb2R1Y3RfMS9waG90b180LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNzJmODg2OWZjNGZmN2Q0ZjdlYTBhYWQ4MTJmOTYwZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA3MmY4ODY5ZmM0ZmY3ZDRmN2VhMGFhZDgxMmY5NjBkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wYzM1YjY5YmQ5ZjRjN2UyYmEwMGVjZGI5MWU0ZTBlYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTBjMzViNjliZDlmNGM3ZTJiYTAwZWNkYjkxZTRlMGVjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iZDViM2RmMTgyMTBkZDQxYmY2MGYyZDYwNjExM2M4NS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWJkNWIzZGYxODIxMGRkNDFiZjYwZjJkNjA2MTEzYzg1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01Y2IzMzMyOWM2NzdkZmRhMmU0ZTNhM2NiNjVhMjExMS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTVjYjMzMzI5YzY3N2RmZGEyZTRlM2EzY2I2NWEyMTExLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zNTAxMTlkZDRlZDA0YmE1ZjgyNDA5MDhhMzVkZDNjZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM1MDExOWRkNGVkMDRiYTVmODI0MDkwOGEzNWRkM2NkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hYzNjNWM3OGM5MTgxODY4YjQ3MzM3NTIzZDg3NjBiYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWFjM2M1Yzc4YzkxODE4NjhiNDczMzc1MjNkODc2MGJhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00MDE4ZGRkYTEwZmMyODg3NzdiN2ZjNGJjOGNlZmU1MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQwMThkZGRhMTBmYzI4ODc3N2I3ZmM0YmM4Y2VmZTUxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wOTk3ZTI3M2RiM2FiNDM5ZmQzYjFmMzRmZjE3ZmUzZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA5OTdlMjczZGIzYWI0MzlmZDNiMWYzNGZmMTdmZTNlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00YmUyNmJjOTZiNWY1ZjI0ZmVjZTMxZjJkNDVkMmMzNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRiZTI2YmM5NmI1ZjVmMjRmZWNlMzFmMmQ0NWQyYzM2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jZWZhMzVmZTk2ZGMxNGY1YmIwOWQ3OGYzNDgwYzljZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWNlZmEzNWZlOTZkYzE0ZjViYjA5ZDc4ZjM0ODBjOWNmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mYzIxZjFkMGQ0OTZmZDIwOWY2OWM3NGM1NDMzMDljNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWZjMjFmMWQwZDQ5NmZkMjA5ZjY5Yzc0YzU0MzMwOWM3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mODQ3NGE1MThkYTdiNGVmODFlM2Q3NTAyNzVjZDg5ZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY4NDc0YTUxOGRhN2I0ZWY4MWUzZDc1MDI3NWNkODlkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZWQyMjY0Yjg3MzNjNzNkMDFhNTUyMGFlMmMwYWI0OS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVlZDIyNjRiODczM2M3M2QwMWE1NTIwYWUyYzBhYjQ5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00ZDJlNGY4NjY2NTJlOTcyOTdlNDBiMzFiYzAzMmIxMS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRkMmU0Zjg2NjY1MmU5NzI5N2U0MGIzMWJjMDMyYjExLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZTVhN2RhNDM2MzYyYmVmZmZlNzdlNjA4ZmEzZTM4NS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVlNWE3ZGE0MzYzNjJiZWZmZmU3N2U2MDhmYTNlMzg1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MmExNTgxMzgwYzdhOTdhOThhOTg1MThmZTQwYmE0Zi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUyYTE1ODEzODBjN2E5N2E5OGE5ODUxOGZlNDBiYTRmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yYjliY2I1ZmQ1YTQ4NjRhZTAzMTAwMDAyMDE3ZmI1MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJiOWJjYjVmZDVhNDg2NGFlMDMxMDAwMDIwMTdmYjUxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kMDc4NTA0MWI0YzA4YmZjZDYwMTgwMzM1ZjAwZmY4NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQwNzg1MDQxYjRjMDhiZmNkNjAxODAzMzVmMDBmZjg0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YzhlN2VkYTUwYTNkYmEwYTQyYjIzMmVlMzg2OGQ5Ny5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTljOGU3ZWRhNTBhM2RiYTBhNDJiMjMyZWUzODY4ZDk3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03MmNjMDg5ZWNlNmY1MzQwZDc5NWI0ZTljZmNlOGI1NS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTcyY2MwODllY2U2ZjUzNDBkNzk1YjRlOWNmY2U4YjU1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05MWE3ZjEwMGRmMjA0ZTlmNTFkMjM4NmUzNTkyYjkyMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTkxYTdmMTAwZGYyMDRlOWY1MWQyMzg2ZTM1OTJiOTIwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jZjE2NTVjOTU2ODgzNGVlMjVkMzU2MmI4ZDA2MzQ0Yy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWNmMTY1NWM5NTY4ODM0ZWUyNWQzNTYyYjhkMDYzNDRjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05NGRiNTg3MTIwY2QyYmM0YTc0MTI2ZmI3NTk4MDgzNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk0ZGI1ODcxMjBjZDJiYzRhNzQxMjZmYjc1OTgwODM1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wMDMzMjY3ZGY3MWI3YWI4MjVhYWQwZDQyNGQzYzY4Yy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTAwMzMyNjdkZjcxYjdhYjgyNWFhZDBkNDI0ZDNjNjhjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04ODAwN2NjZGE2MmE3ZjcwOGVhZWNmZjNjYThhZmJiYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTg4MDA3Y2NkYTYyYTdmNzA4ZWFlY2ZmM2NhOGFmYmJiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yNTkwMzM2N2NhNjQ4OWE1NDRlYjAyMDAwMDcyMjc2ZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI1OTAzMzY3Y2E2NDg5YTU0NGViMDIwMDAwNzIyNzZlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mNTZjZDYwZjNjMWQ3MzQxNTIxY2NiZGJjYWFmMzgzNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY1NmNkNjBmM2MxZDczNDE1MjFjY2JkYmNhYWYzODM3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZWE0NDZmODA2OTRlODg5M2M2MGUxMWY2YjY2MjFiYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTllYTQ0NmY4MDY5NGU4ODkzYzYwZTExZjZiNjYyMWJhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNTc4ODliNjg0MGI1ZjYzYzE5YWFkMjVmOTQxZTZjZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ1Nzg4OWI2ODQwYjVmNjNjMTlhYWQyNWY5NDFlNmNlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZGM5M2QyNjBiYzdjNjMxNzcxNjVmM2Y2YWIyNTdmZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTlkYzkzZDI2MGJjN2M2MzE3NzE2NWYzZjZhYjI1N2ZmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00YjE0NDUyM2QzMzdlZWI5MWRjNGIyZmJhYjg3YTEwZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRiMTQ0NTIzZDMzN2VlYjkxZGM0YjJmYmFiODdhMTBmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wMDhmMmRiZDIxZWExMWFiZTg4NjVjNjJkNDM5YWQ5ZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTAwOGYyZGJkMjFlYTExYWJlODg2NWM2MmQ0MzlhZDllLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zOGRkMmE4MDYwNDdmOGZhZGFiMTI5ODM0MWQ5YWZjNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM4ZGQyYTgwNjA0N2Y4ZmFkYWIxMjk4MzQxZDlhZmM0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mNmNkM2U4MGFhNDNkMmQ2Y2ZkNDEzZjIwMjk0YjEzZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY2Y2QzZTgwYWE0M2QyZDZjZmQ0MTNmMjAyOTRiMTNmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNDQwMTdlZWI0OWQwMTZiMzVmZTI4MmVhNzMyM2VlOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ0NDAxN2VlYjQ5ZDAxNmIzNWZlMjgyZWE3MzIzZWU4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iMzllZjU5NjRkMTgxZGFmNmRjZjM4MTc3OTdjNGI5Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWIzOWVmNTk2NGQxODFkYWY2ZGNmMzgxNzc5N2M0YjkyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yOGY4MjMxNmQxY2UzOTg1NTNmNWM5MGIxNjBlNmIxOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI4ZjgyMzE2ZDFjZTM5ODU1M2Y1YzkwYjE2MGU2YjE4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03NTFjZWNmNGRjOWM5ODQwODcwOTM4Zjg1MWE5MDVlZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTc1MWNlY2Y0ZGM5Yzk4NDA4NzA5MzhmODUxYTkwNWVkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jM2MwNWZiMzY3MWFkZjA1MjNlMDE4M2RmYzViN2FlNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMzYzA1ZmIzNjcxYWRmMDUyM2UwMTgzZGZjNWI3YWU3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02NjM0YTNmMDJjNjYxOWQzZTE4OGQxOWQ1MzExZmRjMy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTY2MzRhM2YwMmM2NjE5ZDNlMTg4ZDE5ZDUzMTFmZGMzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jMzZiZDY2NmJkMTk4N2QyZDgwYzJmYzE2MzE0YTM4Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMzNmJkNjY2YmQxOTg3ZDJkODBjMmZjMTYzMTRhMzgyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jMTk5MTRlOWFjMjBkZDA5YzMzNGE0ZmVkZmRjZmIyMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMxOTkxNGU5YWMyMGRkMDljMzM0YTRmZWRmZGNmYjIwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05NjZmNzRiZjMyNDc1ODg5ODI0ZDMzMDE3OTVjMGI3My5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk2NmY3NGJmMzI0NzU4ODk4MjRkMzMwMTc5NWMwYjczLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hOGE1MDIwMTYzN2U2MjIyOTJiZWVlM2UxYmY2Y2JkNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE4YTUwMjAxNjM3ZTYyMjI5MmJlZWUzZTFiZjZjYmQ2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNWU0YTE3NWZkODM0OGZhZWE5NDg0YWNhMDc3YzA1OC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ1ZTRhMTc1ZmQ4MzQ4ZmFlYTk0ODRhY2EwNzdjMDU4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hNTU1NzZmOWU1YjQzOWExYjVkODI2MTk1MGQ1NTFiMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE1NTU3NmY5ZTViNDM5YTFiNWQ4MjYxOTUwZDU1MWIwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03NThmYTQxMDkwZjdlOTMxNGRjZDE0NTQyYzJjZDA4YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTc1OGZhNDEwOTBmN2U5MzE0ZGNkMTQ1NDJjMmNkMDhhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jM2QxZjEyODUyZTZkZWE0ZDQ5ODQ2ZGU4YTVmZTliNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMzZDFmMTI4NTJlNmRlYTRkNDk4NDZkZThhNWZlOWI2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zMDlkMzg0OGUyZTNmMzk3NWVhNDI5NjUzZjQyMTg5YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTMwOWQzODQ4ZTJlM2YzOTc1ZWE0Mjk2NTNmNDIxODlhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNDg1ZWY1NTE2MjNlN2FhOGQ2OTZkZDQzM2U5MzhiYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA0ODVlZjU1MTYyM2U3YWE4ZDY5NmRkNDMzZTkzOGJiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05OGEyYzdhYjVjNDNlYjBhOGExOWNkZDNhZDlmNGEzYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk4YTJjN2FiNWM0M2ViMGE4YTE5Y2RkM2FkOWY0YTNiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kM2YwMmY4NjQ1NWIxMjAyNDU5YjEyODJjZjBjYTVlMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQzZjAyZjg2NDU1YjEyMDI0NTliMTI4MmNmMGNhNWUyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05NGE1NjQ5MzIyODYwOGI3YzE3MGIzNmM2NWEzZGU0YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk0YTU2NDkzMjI4NjA4YjdjMTcwYjM2YzY1YTNkZTRhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NWFlMTQ4YzMyZmMxYTgxN2MxZWYwYjNlMzY5NjM2ZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU1YWUxNDhjMzJmYzFhODE3YzFlZjBiM2UzNjk2MzZkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04ZmQyYWM1NmQzYWQzNTExYWUwMjc4ZWM1ZTViMDkwNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThmZDJhYzU2ZDNhZDM1MTFhZTAyNzhlYzVlNWIwOTA3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00ZjllZDNkMDY3MDY3OGViOGM2YzE3YTVjOTMwMzQxMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRmOWVkM2QwNjcwNjc4ZWI4YzZjMTdhNWM5MzAzNDEwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MmNhNTFiNjIxMzQ2YjBkNThhOTk1OGMwMjBjNmI1Ny5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUyY2E1MWI2MjEzNDZiMGQ1OGE5OTU4YzAyMGM2YjU3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wODY0ZjMxMWYwZGJkMjFjYmNkNWI1NTEzZGQ1YTA0NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA4NjRmMzExZjBkYmQyMWNiY2Q1YjU1MTNkZDVhMDQ0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zYzdkNTRkZmU1NjExZWRiODU4ODczM2Y0ZDc0YjEzNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNjN2Q1NGRmZTU2MTFlZGI4NTg4NzMzZjRkNzRiMTM0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zNzZhZGFkZmM5OGU2NWNhMGRkYTkwYjZhM2U2Zjg4Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM3NmFkYWRmYzk4ZTY1Y2EwZGRhOTBiNmEzZTZmODgyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iNzZlOTk2MmMyM2ViN2UyMGUyNjdjOTRlNjJjYjVjOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWI3NmU5OTYyYzIzZWI3ZTIwZTI2N2M5NGU2MmNiNWM4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lNzE4YWJmODZhNGE5MWMzMjdmNmI5MzBhNmQyMjRlYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWU3MThhYmY4NmE0YTkxYzMyN2Y2YjkzMGE2ZDIyNGVhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01YjVhNDUwM2RiYmI2YzU4ZjVmYmI0MWNlMjM5YWI4Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTViNWE0NTAzZGJiYjZjNThmNWZiYjQxY2UyMzlhYjg2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNTI2ZDFlNzIxODc2OGQ0ZDM2NzMxNThkMDc5OTVhOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ1MjZkMWU3MjE4NzY4ZDRkMzY3MzE1OGQwNzk5NWE5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hNTczYjYyMmU2ZWViODhmZjY2YTJjZDgyMGFhNzNlZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE1NzNiNjIyZTZlZWI4OGZmNjZhMmNkODIwYWE3M2VmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03ZTQzM2RjY2JlZTc2MWNiOTI4MWM0MmU4OWE3OTM0Ny5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdlNDMzZGNjYmVlNzYxY2I5MjgxYzQyZTg5YTc5MzQ3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lMjIxYTMyOWU4YzMzODVlODU2ZmIzNzYyZmVhNTNkOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWUyMjFhMzI5ZThjMzM4NWU4NTZmYjM3NjJmZWE1M2Q4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zMWI5YmFjYjk5MGIyZmM3YzkzMzBjY2YwMzVlZjgwZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTMxYjliYWNiOTkwYjJmYzdjOTMzMGNjZjAzNWVmODBlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MmVmOGQyMTY0NDQ2ZmM4NWFkMjk2MWJlYzhkYzM3ZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUyZWY4ZDIxNjQ0NDZmYzg1YWQyOTYxYmVjOGRjMzdkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lOTU0OWEzMjAyYTQ1ODg1MTAxY2Q0MTY5M2NmYWNkZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWU5NTQ5YTMyMDJhNDU4ODUxMDFjZDQxNjkzY2ZhY2RkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yN2YwOTkwZWNjNjYwYTAxMzljZGRkZjBlNjI2NTg5Ny5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI3ZjA5OTBlY2M2NjBhMDEzOWNkZGRmMGU2MjY1ODk3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zMDIyMTA3NjA4YjhhNDE4YmQ1OWNmY2I0YWIyYjliYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTMwMjIxMDc2MDhiOGE0MThiZDU5Y2ZjYjRhYjJiOWJjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xYTBhYzg5NWU3MTEzYWQ1MzU1ZjdmYmJiMzEyYTc0MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTFhMGFjODk1ZTcxMTNhZDUzNTVmN2ZiYmIzMTJhNzQxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iMzJmMzE0MDgxNTUxYWYzMWJlN2QwYzE4ZmJlYmZiMy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWIzMmYzMTQwODE1NTFhZjMxYmU3ZDBjMThmYmViZmIzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lYTM3Njg3OWE2MTQ0ZGIwYTI2ZmY4YzM0NDQyZGI5MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVhMzc2ODc5YTYxNDRkYjBhMjZmZjhjMzQ0NDJkYjkxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lNjJjN2IxYzgwMjQyNzZhNDEyNDhiNzA2YTljNjY4MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWU2MmM3YjFjODAyNDI3NmE0MTI0OGI3MDZhOWM2NjgxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03MzQ2NmFjM2U3YjZjNWMzNDcyMWVjODJhMjg0MmY4OS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTczNDY2YWMzZTdiNmM1YzM0NzIxZWM4MmEyODQyZjg5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04YmJiYWMxMmRjYTc0M2VkNDY0ODRjZDk3NGY4Yjg0Yy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThiYmJhYzEyZGNhNzQzZWQ0NjQ4NGNkOTc0ZjhiODRjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xODUwODI5ZGVlMDg2OWYwMTEwZDY5ZmE2NTRlNTE1Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTE4NTA4MjlkZWUwODY5ZjAxMTBkNjlmYTY1NGU1MTU2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yMTQ3NjBhNDJmOTBlYjE1OTg2MDMwNmM1ZTZmYmY4MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTIxNDc2MGE0MmY5MGViMTU5ODYwMzA2YzVlNmZiZjgxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04YTBlYzE4ZjFmOThjOWUxMTU2ODYzMzJmMzlhNmQ4My5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThhMGVjMThmMWY5OGM5ZTExNTY4NjMzMmYzOWE2ZDgzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mZmYxMjdjY2YzZmExNWMxZWViNTk3MGIyOTcwOWIxNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWZmZjEyN2NjZjNmYTE1YzFlZWI1OTcwYjI5NzA5YjE0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yYTUxNGI5YTY2NTJmNGQ1Yzg1ZTAwZmY1ZGY4MDU2Zi5wbmciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJhNTE0YjlhNjY1MmY0ZDVjODVlMDBmZjVkZjgwNTZmLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00NmFlMWYwZDhhYWM0MmE3ZTFmMWQ5ZDg1NDRkNThmNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQ2YWUxZjBkOGFhYzQyYTdlMWYxZDlkODU0NGQ1OGY1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kODdkNDkxODhjOWMwNTI0ZDk4YjIzNDVhNjM0ZjNlMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ4N2Q0OTE4OGM5YzA1MjRkOThiMjM0NWE2MzRmM2UyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iMzhhNTRkNTU2Y2VkYzFjYzBjYjJiMWNiNWY5NGVhYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWIzOGE1NGQ1NTZjZWRjMWNjMGNiMmIxY2I1Zjk0ZWFhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mMmI1NzJjNWNkMDdmNTg1YmRhMjczODU1N2MwZjUyNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWYyYjU3MmM1Y2QwN2Y1ODViZGEyNzM4NTU3YzBmNTI2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04NmIyZTg4YjAzYmMxOTZiZGE4NWVkZmQ3M2M0ZjM2Ny5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTg2YjJlODhiMDNiYzE5NmJkYTg1ZWRmZDczYzRmMzY3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02ODZiOWYwNzNmNTJlNDI5YmFhOGJlNzFlMTVhODExMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTY4NmI5ZjA3M2Y1MmU0MjliYWE4YmU3MWUxNWE4MTEyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hOTAxODAxMGRlODZlNmQ5OGY2ODk4NDI1NDJhOWYzYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE5MDE4MDEwZGU4NmU2ZDk4ZjY4OTg0MjU0MmE5ZjNhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jMjliMDQ1MzM2ZDcwZGU2YzU2MzZlN2RmNzc1OTBhNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMyOWIwNDUzMzZkNzBkZTZjNTYzNmU3ZGY3NzU5MGE3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NGVkNGFmNjA5ZDA3ZjgxMzE4OThmNmM3NWM3ZGVlMy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU0ZWQ0YWY2MDlkMDdmODEzMTg5OGY2Yzc1YzdkZWUzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kM2JjNmFmNDFhZTdiN2Q3NTQ0MjVhM2YyMTU3ZmZhMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQzYmM2YWY0MWFlN2I3ZDc1NDQyNWEzZjIxNTdmZmEyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lYTZkZWExNjkyNWZhZTdiOTBmYTNkZTkwOTA4Njc2OC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVhNmRlYTE2OTI1ZmFlN2I5MGZhM2RlOTA5MDg2NzY4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04ZDU2M2IxNDljODc2YjUyYzk1MTUwM2E4NjMxM2I0NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThkNTYzYjE0OWM4NzZiNTJjOTUxNTAzYTg2MzEzYjQ0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xM2UzNjUzYTc3NDkxMGY0MzMxMGY5Yzc3MzgyY2RlNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTEzZTM2NTNhNzc0OTEwZjQzMzEwZjljNzczODJjZGU1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iYjYzYjZiYTA2NTIxNzk3ODJiNjkzZTA2YmQ3NTA4Zi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWJiNjNiNmJhMDY1MjE3OTc4MmI2OTNlMDZiZDc1MDhmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xZjEwNGQ2NTI0NjEzOTkwNjBhZGFjMTc4YzE1ZWYzMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTFmMTA0ZDY1MjQ2MTM5OTA2MGFkYWMxNzhjMTVlZjMyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wZTVkNTk1Y2RmZTc2N2UyM2VhMjhjYzFhM2NkMjNmYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTBlNWQ1OTVjZGZlNzY3ZTIzZWEyOGNjMWEzY2QyM2ZiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01N2I0YjMwMjQxNTc2ZGFjYzJmYzVmZWRiZjU3OWNjNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU3YjRiMzAyNDE1NzZkYWNjMmZjNWZlZGJmNTc5Y2M1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZTE1NGFhZDNjMTQyZmNiMjVkYWM5ZjMzNmQ0MzYwYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVlMTU0YWFkM2MxNDJmY2IyNWRhYzlmMzM2ZDQzNjBjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zN2Q4OGVlNzYzYWQ5NmZmODk0MGIyMTUzMGZlOWJkNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM3ZDg4ZWU3NjNhZDk2ZmY4OTQwYjIxNTMwZmU5YmQ1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03ZjdiODliMzQxMjIxN2RjYWY1NGZiOGZkYWJiZTYzNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdmN2I4OWIzNDEyMjE3ZGNhZjU0ZmI4ZmRhYmJlNjM3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZTZmNTFmMjE4OGE3ODA2Nzk0NGNkZWE5MWEwZTViZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVlNmY1MWYyMTg4YTc4MDY3OTQ0Y2RlYTkxYTBlNWJmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mNzQ2YzQ2MzA0NjAzNDMzMWFiYjhkNzcxYmU0MDhkMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY3NDZjNDYzMDQ2MDM0MzMxYWJiOGQ3NzFiZTQwOGQwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MTc4YWIzMjAyY2Y0OGY2YmE4M2UzOWU1ODM2ZjQxZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUxNzhhYjMyMDJjZjQ4ZjZiYTgzZTM5ZTU4MzZmNDFmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01ZDFiYjE2N2QzOGZiM2Y4MWJmYmQ1ZTdiYWNkYWIxZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTVkMWJiMTY3ZDM4ZmIzZjgxYmZiZDVlN2JhY2RhYjFkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZTI3NDY5MTdiYmUxMWFmNzRjZGNkMjY2YmMyOGU5Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTllMjc0NjkxN2JiZTExYWY3NGNkY2QyNjZiYzI4ZTk2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02MzlkMjNiNmFmNTViM2I3YTMxMWJjNGFlNzE4ZDMwZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTYzOWQyM2I2YWY1NWIzYjdhMzExYmM0YWU3MThkMzBlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00NTU4Y2EzZThjYjg5ODdkYTcwM2RhZTZiMmU5MWFjNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQ1NThjYTNlOGNiODk4N2RhNzAzZGFlNmIyZTkxYWM1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04Y2I3MTg0N2U2OTQxNDE5NzgxNzczMDYxNmRmNDAyNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThjYjcxODQ3ZTY5NDE0MTk3ODE3NzMwNjE2ZGY0MDI1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01Y2M3NjlhNTgyYjM0YzkxYzE5YTA4NDE3MTZiZmIwNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTVjYzc2OWE1ODJiMzRjOTFjMTlhMDg0MTcxNmJmYjA3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04MmI5ZGQ2NDkyN2QzNDhjZjk3NjVjNmFjZTU3NDZhNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTgyYjlkZDY0OTI3ZDM0OGNmOTc2NWM2YWNlNTc0NmE2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02ZjBmNTE1MjcxOTBiMGU3NzVlNmM5MDU1MmUxODhmZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTZmMGY1MTUyNzE5MGIwZTc3NWU2YzkwNTUyZTE4OGZkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNTY3OWE0ZWQ2NTdiZDliMjcwYjg4ZDQ0ZDQwMGM4YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ1Njc5YTRlZDY1N2JkOWIyNzBiODhkNDRkNDAwYzhhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02ZWY1OTk5MzdjMGQxZTk3ZjZlNGVlYWE3ZDQ3MzJmOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTZlZjU5OTkzN2MwZDFlOTdmNmU0ZWVhYTdkNDczMmY5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kZjM0ZGJkYWU0MGY3ODhhMWJiZWU3ZjkwYzg0OWYzYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWRmMzRkYmRhZTQwZjc4OGExYmJlZTdmOTBjODQ5ZjNjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01YTQyMjI2NzM1MzE4YmRmMmViM2FiNThiYjY0MjhkYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTVhNDIyMjY3MzUzMThiZGYyZWIzYWI1OGJiNjQyOGRjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MWE1MmE4MGQxY2I2YWM2Njk5MDA0NmU5YjVmY2M1Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUxYTUyYTgwZDFjYjZhYzY2OTkwMDQ2ZTliNWZjYzU2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yMTI0N2RmMWU0MTI5M2UzMjA0ODJhMDAxOGE4YjE3MS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTIxMjQ3ZGYxZTQxMjkzZTMyMDQ4MmEwMDE4YThiMTcxLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lMDE5ZjJmOGRkYzgwNjM5ZWZhMDBlM2Y1YWYwNzE5Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWUwMTlmMmY4ZGRjODA2MzllZmEwMGUzZjVhZjA3MTkyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hMDUxNDJhYjk3NmU1NjZmMTY4NDcxODhiZjc2NTYyOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWEwNTE0MmFiOTc2ZTU2NmYxNjg0NzE4OGJmNzY1NjI4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02ODQ3NjAyYmE2YTQzYmVjOTA1YTdjZGE0YmEzMGRkYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTY4NDc2MDJiYTZhNDNiZWM5MDVhN2NkYTRiYTMwZGRhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05MTMwZThmMGFmZjI5OWM0Mzc2OTQxMDMwNTYzOGJmMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTkxMzBlOGYwYWZmMjk5YzQzNzY5NDEwMzA1NjM4YmYyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00YjEyNDI5Yjc1NzA4NjdhMzljNjFhM2VlMTRkYmIyYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRiMTI0MjliNzU3MDg2N2EzOWM2MWEzZWUxNGRiYjJhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kMDMxMjkwMjhkNjJiZGQ1ZTc1ZmM1Mjg2YjAwZWZjOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQwMzEyOTAyOGQ2MmJkZDVlNzVmYzUyODZiMDBlZmM4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zZmFkYzQ4ODI1MjVjODdmZjU5ZGRjYTMwNzAzYWQxZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNmYWRjNDg4MjUyNWM4N2ZmNTlkZGNhMzA3MDNhZDFlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iZWVhNDMxYzlmNDI4NTAzZmEwMDY3MmNhZWZlMTQ1Yi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWJlZWE0MzFjOWY0Mjg1MDNmYTAwNjcyY2FlZmUxNDViLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zZTVmODY0YjhjMjUyZjQ1N2NjNGVjZWZkYjNkZjYxYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNlNWY4NjRiOGMyNTJmNDU3Y2M0ZWNlZmRiM2RmNjFhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00NzRhNGY1NTUyMWJiMGJhNmI1NmJmYjFhNjViMjc3Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQ3NGE0ZjU1NTIxYmIwYmE2YjU2YmZiMWE2NWIyNzcyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YjRlYjc3MzU3NGVmODI5YmI3MjY4NmY2OWFkMjRlMy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTliNGViNzczNTc0ZWY4MjliYjcyNjg2ZjY5YWQyNGUzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02MzNhMGQ4NzdlYTIzODZiOGI0Yzc5MTg3NDUwOGFlNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTYzM2EwZDg3N2VhMjM4NmI4YjRjNzkxODc0NTA4YWU2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xYjNjZDA0NGRjOWY2N2I3NTJjMjNkYzMxMjc3NTA4ZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTFiM2NkMDQ0ZGM5ZjY3Yjc1MmMyM2RjMzEyNzc1MDhkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xNzRhNWYzMjcwNzFlNDkxOGZhNzE1NDM4MDQ5ZjZlZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTE3NGE1ZjMyNzA3MWU0OTE4ZmE3MTU0MzgwNDlmNmVmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yN2JmZjVmNzM4NDRhMTU2MGU5ZmEwNGI1MWJlZjJiYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI3YmZmNWY3Mzg0NGExNTYwZTlmYTA0YjUxYmVmMmJiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yN2E5OGMzNThiMmNkMDZiYTFjNjVlMDQ3OGYxYTk4Zi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI3YTk4YzM1OGIyY2QwNmJhMWM2NWUwNDc4ZjFhOThmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mNzg4YzFkMWIzNzAwNGEwODgyNzQzN2ZhNTk1NGMxZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY3ODhjMWQxYjM3MDA0YTA4ODI3NDM3ZmE1OTU0YzFkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NDhiNDY4YzBhNzhmOGMwNWU1OGQyMmI5MDVjNGNkNS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU0OGI0NjhjMGE3OGY4YzA1ZTU4ZDIyYjkwNWM0Y2Q1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NWZiZTI2ZDQ5ODZlNTk0YWVjMzcyMmI0NjIxOTVhZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU1ZmJlMjZkNDk4NmU1OTRhZWMzNzIyYjQ2MjE5NWFkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05MmE5M2JlMTBiMjhjOTI2MDViNjE2M2JiODY2MGYyNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTkyYTkzYmUxMGIyOGM5MjYwNWI2MTYzYmI4NjYwZjI0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xODk3NDY1MDZjNWRkYjhhNjc2NTMyMmMzODM0MWMwOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTE4OTc0NjUwNmM1ZGRiOGE2NzY1MzIyYzM4MzQxYzA5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zYjFkNmE2ZDVjNTJmOTQ4NThiZWI3ZDhmNTM4YTQyMy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNiMWQ2YTZkNWM1MmY5NDg1OGJlYjdkOGY1MzhhNDIzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kNmQyMGYwYWViMTAxNzkyYzJmNTY0MmY2MjhiMTg5Zi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQ2ZDIwZjBhZWIxMDE3OTJjMmY1NjQyZjYyOGIxODlmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03ZDhiZmY4ZjA4ZDY2OTM5ZTcwMTI5OGVkMDFiN2EyNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdkOGJmZjhmMDhkNjY5MzllNzAxMjk4ZWQwMWI3YTI0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zZTJhM2E2Yjc4MjdmY2ZhODNhNmE3OWQxMGMwMDg4NS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNlMmEzYTZiNzgyN2ZjZmE4M2E2YTc5ZDEwYzAwODg1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNTkwYzg2MDNmYWY5NTFlMGNhMWM2ZjRkODAyNzJmYy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA1OTBjODYwM2ZhZjk1MWUwY2ExYzZmNGQ4MDI3MmZjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yZWY2Y2IxN2IyMjExZTI5Nzc4ODU0ZWIwMTk3MzFhZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJlZjZjYjE3YjIyMTFlMjk3Nzg4NTRlYjAxOTczMWFmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00YTA1OTZlMmNiYWRjMWIzM2M1ZDVmYTY0NTJiMDIwYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRhMDU5NmUyY2JhZGMxYjMzYzVkNWZhNjQ1MmIwMjBiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zMmRkOTFmNDBmNDAxMjMxMDI4MDZkNWQ5YjU3NDk1NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTMyZGQ5MWY0MGY0MDEyMzEwMjgwNmQ1ZDliNTc0OTU0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YzM2OGQ3ZGUzZDJlODgxNzVhODBlOGViYzlkNTJjNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTljMzY4ZDdkZTNkMmU4ODE3NWE4MGU4ZWJjOWQ1MmM0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03YzMxZjAxNjc3NDdmYWNjOGVmNjhkMjFhZjdlNWE4Yy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdjMzFmMDE2Nzc0N2ZhY2M4ZWY2OGQyMWFmN2U1YThjLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mNmFiMDlkZGM5YTI1MGU4YmRkYjc2MWMxOTgwYjM0OC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWY2YWIwOWRkYzlhMjUwZThiZGRiNzYxYzE5ODBiMzQ4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yOWE5NGZjYzVjNjFhMGFmMmQyY2QwYjNkNGU0OTZmNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI5YTk0ZmNjNWM2MWEwYWYyZDJjZDBiM2Q0ZTQ5NmY2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wYmJhZTVmOWVmZmMzOGIxY2NlMWFiZWVmY2FmNjkwOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTBiYmFlNWY5ZWZmYzM4YjFjY2UxYWJlZWZjYWY2OTA5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00ZTYwMDE4MjM4NjBmZTIwZmFmMjU5MzhkNjgzYjJjOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRlNjAwMTgyMzg2MGZlMjBmYWYyNTkzOGQ2ODNiMmM4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jODJkMmZiYzEyOTE3OTQyOWEyMWIzMmJiY2ZmNTBjOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWM4MmQyZmJjMTI5MTc5NDI5YTIxYjMyYmJjZmY1MGM4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05N2M0NTZhYzBmYzY0NmVlNzVmNDY1NjMxYzFmOTM2Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk3YzQ1NmFjMGZjNjQ2ZWU3NWY0NjU2MzFjMWY5MzY2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03MzYzY2Q3OTg3MjEzNTVlYTk1ODZkNjYyN2FkMDBhMS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTczNjNjZDc5ODcyMTM1NWVhOTU4NmQ2NjI3YWQwMGExLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YjgyYTkxMzVmOTg2NGM2MzgxOTQ3YjZlZWM5YzQ3YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTliODJhOTEzNWY5ODY0YzYzODE5NDdiNmVlYzljNDdhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0xZmFkM2I4NWRkNmM1YzdkZTY2ZTk5OTU4Mzc5ZTIxNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTFmYWQzYjg1ZGQ2YzVjN2RlNjZlOTk5NTgzNzllMjE2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iNzk3NGExMGE2MTc5N2ZhZjg0ZjcxZDc2YzhlNmQ5My5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWI3OTc0YTEwYTYxNzk3ZmFmODRmNzFkNzZjOGU2ZDkzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jYTgxMjRmMmRmNTJiYTNhMTdjZmJiYTMzNjU5YzFiZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWNhODEyNGYyZGY1MmJhM2ExN2NmYmJhMzM2NTljMWJkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01ZjM3YWQ4YjQyNDg1NzQ5Y2E3N2E1MDBkZDUyZDQwNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTVmMzdhZDhiNDI0ODU3NDljYTc3YTUwMGRkNTJkNDA2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00OTIzYWY5MzQ2Y2ZjYTJiNzhhOGIwNTQ3YmY4ZjE1Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQ5MjNhZjkzNDZjZmNhMmI3OGE4YjA1NDdiZjhmMTUyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hNjliZDZhM2E5Mzc3NGQyYzZhYzBlOTAzYmMxOWNmZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE2OWJkNmEzYTkzNzc0ZDJjNmFjMGU5MDNiYzE5Y2ZlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wMzFhMmZlNjQ5MzA2YTY0NmRlYmY2ZTFkMmEyNjk1OS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTAzMWEyZmU2NDkzMDZhNjQ2ZGViZjZlMWQyYTI2OTU5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03Y2Y2OGJhZDNlNzZlNmJjZjM2YWJkMDhmMjVkZmQ5NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdjZjY4YmFkM2U3NmU2YmNmMzZhYmQwOGYyNWRmZDk0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04OWViNTMyOTNhMmEyMWVmMzhlM2RhNDM1YzMxMzQwYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTg5ZWI1MzI5M2EyYTIxZWYzOGUzZGE0MzVjMzEzNDBiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yNDMzYmYwMmJiMzk1ZWM5NzMyNzlmZmE2MWJhM2VmZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI0MzNiZjAyYmIzOTVlYzk3MzI3OWZmYTYxYmEzZWZmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yMzg5ZjVmMDZmNDgwYWY2ZWI0YTZkMTk3MjM4NGI5Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTIzODlmNWYwNmY0ODBhZjZlYjRhNmQxOTcyMzg0YjkyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00ZWI4MWE3NmE0NjNlYjg0N2Y1ZTY4Yjc4YTEwZGVlNy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTRlYjgxYTc2YTQ2M2ViODQ3ZjVlNjhiNzhhMTBkZWU3LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kZTgwMDYyZGEzMDc1M2VhMGY4ZjUzZGJlZDVhMzFmMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWRlODAwNjJkYTMwNzUzZWEwZjhmNTNkYmVkNWEzMWYwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yMTVmYmRhM2EyZjNkMjMwY2Y4MjczZjhlYTZiNzYxYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTIxNWZiZGEzYTJmM2QyMzBjZjgyNzNmOGVhNmI3NjFiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iOTAwNzk4MWM3MzU3MWM1NDQ5OWZkYjdmYzBmZGY3My5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWI5MDA3OTgxYzczNTcxYzU0NDk5ZmRiN2ZjMGZkZjczLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iOWVjOWZjZjYwMTM1M2Y5Mjg3OTgzNGJiOTE0MTY2Mi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWI5ZWM5ZmNmNjAxMzUzZjkyODc5ODM0YmI5MTQxNjYyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jNWFlMGU0NzAzOTA4N2E2ZTdlZmY3YTEwMjI2YzdiYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWM1YWUwZTQ3MDM5MDg3YTZlN2VmZjdhMTAyMjZjN2JiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yZjcwN2M5Y2UyN2E4NTVmZjJmZjA3MjYyYTk1OGI0NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJmNzA3YzljZTI3YTg1NWZmMmZmMDcyNjJhOTU4YjQ0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1mYjY5N2M1ZWJkZDg4MDM2Mjg5MGU1ODBiM2E4ZTNhYi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWZiNjk3YzVlYmRkODgwMzYyODkwZTU4MGIzYThlM2FiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jZWRlOGJhMWY2MmI0NTY5NjE5NzRkNWVkMWI5NzExNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWNlZGU4YmExZjYyYjQ1Njk2MTk3NGQ1ZWQxYjk3MTE2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZjNkODg1NjVkN2RhMzZlNjBiMjU4ODQ4ODVhZWViOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTlmM2Q4ODU2NWQ3ZGEzNmU2MGIyNTg4NDg4NWFlZWI4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yNTIzMDA3Y2M4NmZiZTRhMjZkYWU3MDEyNTRkN2ZhOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI1MjMwMDdjYzg2ZmJlNGEyNmRhZTcwMTI1NGQ3ZmE5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNWVhZDVkMmJlZmMyNDIyZGI3MjNlMWI0MTE1ZjU5ZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA1ZWFkNWQyYmVmYzI0MjJkYjcyM2UxYjQxMTVmNTllLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jYTRlYTU4YWJmNDM2MGUzNmE4NGYwYzdhZThmZTZjOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWNhNGVhNThhYmY0MzYwZTM2YTg0ZjBjN2FlOGZlNmM4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNzRjNGUzNTYzNTcyZDYyMWUwZjVlM2RlNDRjMTc2ZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA3NGM0ZTM1NjM1NzJkNjIxZTBmNWUzZGU0NGMxNzZlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yZWVhMjBkOGQzYWE4ZTBhODZlNzBkMDdiNGJjMzBiOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJlZWEyMGQ4ZDNhYThlMGE4NmU3MGQwN2I0YmMzMGI4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MWM2ZmIxMjJiZjVlNzAwNzY3NDY1Y2JiYmUxOTg1Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUxYzZmYjEyMmJmNWU3MDA3Njc0NjVjYmJiZTE5ODU2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zNGM2MjU2MmVlMTM4NDljODI3ZjIxMjg0ZTYyZWE1MC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM0YzYyNTYyZWUxMzg0OWM4MjdmMjEyODRlNjJlYTUwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lOTczZjMxZGQyMmE2YmNlNWZkMjJhZTk5ODZlN2UyNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWU5NzNmMzFkZDIyYTZiY2U1ZmQyMmFlOTk4NmU3ZTI2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01YmZhOGUwMTIyYTllMTkyZGUxOTI5NWUyNmQ1MWJhNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTViZmE4ZTAxMjJhOWUxOTJkZTE5Mjk1ZTI2ZDUxYmE2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01OWJkYTZkMzgzYzAxNDcwZDYxYmIyNDJmMWNhYmE5Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU5YmRhNmQzODNjMDE0NzBkNjFiYjI0MmYxY2FiYTk2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01YmRlZmEwMTVjNGQ0ODE1ODVmMWUzNmFmZDE3YzViYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTViZGVmYTAxNWM0ZDQ4MTU4NWYxZTM2YWZkMTdjNWJhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YzU1NWIwYWViMjBkMzRiMDYyYWY0MGFkZTU1MTI3NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTljNTU1YjBhZWIyMGQzNGIwNjJhZjQwYWRlNTUxMjc0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wNDY2OWEwNTUzMWJlN2Y2YTk2MDU5Y2I2MWFhNWEwNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTA0NjY5YTA1NTMxYmU3ZjZhOTYwNTljYjYxYWE1YTA0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04ZDBhZmVmMGVhNzc2ZGMyMzJmNDhkY2M2ZGUzMGI0OC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLThkMGFmZWYwZWE3NzZkYzIzMmY0OGRjYzZkZTMwYjQ4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02MzAzYWZmNDMyMjJiNWVmZjA0MmQ1MGIxZTUyYTNkOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTYzMDNhZmY0MzIyMmI1ZWZmMDQyZDUwYjFlNTJhM2Q4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy04ZGQyMDZlNGMxMGI0NTMwY2FlMTUzN2RiMTlhZmJhYi5wbmciPl9DR1NtYXJ0SW1hZ2UvaW1nLThkZDIwNmU0YzEwYjQ1MzBjYWUxNTM3ZGIxOWFmYmFiLnBuZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NDhiOTc5ZjY4NTE3MzQwZjQyMWYyYzI3NDlkMWFmMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU0OGI5NzlmNjg1MTczNDBmNDIxZjJjMjc0OWQxYWYwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZGNiNzM2NzhjNjE2YzhlYzA2ZTU1ZDRhZDdjNjJlNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTlkY2I3MzY3OGM2MTZjOGVjMDZlNTVkNGFkN2M2MmU2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02ZmU4YTNjZGQyZDc0ODZiODg2MzJlMmMyYTIwNmM5Yy5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTZmZThhM2NkZDJkNzQ4NmI4ODYzMmUyYzJhMjA2YzljLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jNTc0OGQ0YzlkYjAwMTlkMDkzNmNlZWQyYTAyZmNiZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWM1NzQ4ZDRjOWRiMDAxOWQwOTM2Y2VlZDJhMDJmY2JmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05NzViZDBhNjZkNzkxMjk1MGYwMjc1N2U1ZTA5NWRkZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk3NWJkMGE2NmQ3OTEyOTUwZjAyNzU3ZTVlMDk1ZGRkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZjg1MjJhOWU4NmQ5YzdjMGRhYWY0ZGNiOGYxMGY1NS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVmODUyMmE5ZTg2ZDljN2MwZGFhZjRkY2I4ZjEwZjU1LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lMzZiNDk1YTZlMzY4MGFjYjk5ZGVmNmRjNDlmM2QzMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWUzNmI0OTVhNmUzNjgwYWNiOTlkZWY2ZGM0OWYzZDMwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wMzVkNjE3MGFjYjM1NDU1YjU0Njc0ODYwNDllY2QzZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTAzNWQ2MTcwYWNiMzU0NTViNTQ2NzQ4NjA0OWVjZDNkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iYTc1MjI2MDJlM2E4MDUxNjkzZGU1MjMzMWZkYzhlZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWJhNzUyMjYwMmUzYTgwNTE2OTNkZTUyMzMxZmRjOGVmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01NmZiM2YyZDRlOGFiYjJhODY0MDg1NWMxNTExMzI5Yi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU2ZmIzZjJkNGU4YWJiMmE4NjQwODU1YzE1MTEzMjliLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hNjU1MjZlYjdkM2VkMjZlOWVlNjVkZDgzODIwYmYwYS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWE2NTUyNmViN2QzZWQyNmU5ZWU2NWRkODM4MjBiZjBhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hZmM0MDU0ZTc4Mzg5YjZiZTNkYzZjNjcwZDExZDA0NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWFmYzQwNTRlNzgzODliNmJlM2RjNmM2NzBkMTFkMDQ0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1iYmVhYzNhNTM5NTdjMDQwNzBmNjc1ZjU4ZjJkN2I3ZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWJiZWFjM2E1Mzk1N2MwNDA3MGY2NzVmNThmMmQ3YjdlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jMmI1OTIxYWQ0ZGNhZjFmYzlmYzcyYWVlMDhhYmM3Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWMyYjU5MjFhZDRkY2FmMWZjOWZjNzJhZWUwOGFiYzc2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wYTQxNzFiMDIzYjkyNGUzMTk2MjVjYzg4ZWExNmRhNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTBhNDE3MWIwMjNiOTI0ZTMxOTYyNWNjODhlYTE2ZGE0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kMzczMDMwMjcwNjAyY2UyOGQzY2MwN2E2Y2U5MDk4Ni5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWQzNzMwMzAyNzA2MDJjZTI4ZDNjYzA3YTZjZTkwOTg2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05ZDQ5NTFlMWQ0NDU1NWQwZGE1MTYyMGY4OTg1MDRlOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTlkNDk1MWUxZDQ0NTU1ZDBkYTUxNjIwZjg5ODUwNGU5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hMDBkODhiODFjOGMzN2M2NDdhNGJiYjRiNjE2NjMyMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWEwMGQ4OGI4MWM4YzM3YzY0N2E0YmJiNGI2MTY2MzIyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02MjJlZDM3ZWM5NGQxZGM1YjNiMTBiNzExNjEzZjNhNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTYyMmVkMzdlYzk0ZDFkYzViM2IxMGI3MTE2MTNmM2E0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01OTIzOGQ5NWIyMTEwNWIzNTQ4ODUzNGZkNjU3OTcyMi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU5MjM4ZDk1YjIxMTA1YjM1NDg4NTM0ZmQ2NTc5NzIyLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05NGQzMDRmOGRiNDU3YmUyYjM4YWUwZmNjN2UwOWNjNi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTk0ZDMwNGY4ZGI0NTdiZTJiMzhhZTBmY2M3ZTA5Y2M2LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yZjBkYjFhZTIwYTk3YjZmM2VmOTQzYWQ5ZWY1MGZjZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTJmMGRiMWFlMjBhOTdiNmYzZWY5NDNhZDllZjUwZmNlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy02YmM5MTY4Yjc2ZDk2ZjcyMzcwYWVlMzVlOWNhMmM4OC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTZiYzkxNjhiNzZkOTZmNzIzNzBhZWUzNWU5Y2EyYzg4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy03YzQ2M2EwN2I2M2MyODQyOTk2ZDQwMDE5ZGZjMzYwNC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTdjNDYzYTA3YjYzYzI4NDI5OTZkNDAwMTlkZmMzNjA0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1hY2YwZjFkMjk1OGFmYzI1OGZkZjM2MTNiNzVlMjE3YS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWFjZjBmMWQyOTU4YWZjMjU4ZmRmMzYxM2I3NWUyMTdhLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zOTBlNGExYzAyZTA2Yjg3MDZhNTgwNDY2M2M5NmUxMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM5MGU0YTFjMDJlMDZiODcwNmE1ODA0NjYzYzk2ZTEwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0yOGViOTVmNmQxNzI0MzA2MDdiOTE3YjFiNDMyYWE2NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTI4ZWI5NWY2ZDE3MjQzMDYwN2I5MTdiMWI0MzJhYTY0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lZWUzODE2ZDM4MjA3NWFmZWRhMjZiYzU3Zjk3ZjRjOS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWVlZTM4MTZkMzgyMDc1YWZlZGEyNmJjNTdmOTdmNGM5LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zNGJkNjBiMjg0MzFkZWI0ZTc3NTMxOTBjZDE5YjlhMC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTM0YmQ2MGIyODQzMWRlYjRlNzc1MzE5MGNkMTliOWEwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0zYjdlMjFkN2Y2Y2IzNGUxYTZjMGZkZjBkYjNlMjgwOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTNiN2UyMWQ3ZjZjYjM0ZTFhNmMwZmRmMGRiM2UyODA4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01ODBhNTUwYTQ1YjRhNjBjNmY4MDJmOTY5ZjgxMzRhOC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTU4MGE1NTBhNDViNGE2MGM2ZjgwMmY5NjlmODEzNGE4LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy01MzBmYjAzOThjZTZkOGI5NDNkYmRlNTMyZjk5MmEzZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTUzMGZiMDM5OGNlNmQ4Yjk0M2RiZGU1MzJmOTkyYTNlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy00NmYwZWM5NDZmMmM4OWQ0ZmM3ODg4NTBjZTNmNWMxZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTQ2ZjBlYzk0NmYyYzg5ZDRmYzc4ODg1MGNlM2Y1YzFlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy0wY2M0YzAxYjY4NjA0NjU0ZThiODAxN2VjM2ZiZmYyZS5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTBjYzRjMDFiNjg2MDQ2NTRlOGI4MDE3ZWMzZmJmZjJlLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1lOWJmZjExMjM3ZDhmYmJhYTBlNzcyNDI5MmViNjg1My5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWU5YmZmMTEyMzdkOGZiYmFhMGU3NzI0MjkyZWI2ODUzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy05YTM2M2YzN2FhYjcyNDQyMjk4M2IxNjJmMmI0NGQ3NC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLTlhMzYzZjM3YWFiNzI0NDIyOTgzYjE2MmYyYjQ0ZDc0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1jODk3ODI1YzM2ZTBlYTRhNDJkYjljNDk2MjcwNTMwZi5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWM4OTc4MjVjMzZlMGVhNGE0MmRiOWM0OTYyNzA1MzBmLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJfQ0dTbWFydEltYWdlL2ltZy1kZWExZWE2NzBmZGRlZDEzMzIwZjc0OTA4NDA2NGM2ZC5qcGciPl9DR1NtYXJ0SW1hZ2UvaW1nLWRlYTFlYTY3MGZkZGVkMTMzMjBmNzQ5MDg0MDY0YzZkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvR2FsbGVyeS9vbi1wYWdlLWdhbGxlcmllcy9wYWdlLWdhbGxlcnktMi9Sb2dlcnMgTG93IFJlcyAxMC5qcGciPmltYWdlcy9HYWxsZXJ5L29uLXBhZ2UtZ2FsbGVyaWVzL3BhZ2UtZ2FsbGVyeS0yL1JvZ2VycyBMb3cgUmVzIDEwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvR2FsbGVyeS9vbi1wYWdlLWdhbGxlcmllcy9wYWdlLWdhbGxlcnktMi9XaW50ZXJBdmVudWUuanBnIj5pbWFnZXMvR2FsbGVyeS9vbi1wYWdlLWdhbGxlcmllcy9wYWdlLWdhbGxlcnktMi9XaW50ZXJBdmVudWUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L29uLXBhZ2UtZ2FsbGVyaWVzL3BhZ2UtZ2FsbGVyeS0xL1N0IEZhaXRocyBDaHVyY2h5YXJkICgxKS5qcGciPmltYWdlcy9HYWxsZXJ5L29uLXBhZ2UtZ2FsbGVyaWVzL3BhZ2UtZ2FsbGVyeS0xL1N0IEZhaXRocyBDaHVyY2h5YXJkICgxKS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL0dhbGxlcnkvb24tcGFnZS1nYWxsZXJpZXMvcGFnZS1nYWxsZXJ5LTEvQXV0dW1uIFJvYWQuanBnIj5pbWFnZXMvR2FsbGVyeS9vbi1wYWdlLWdhbGxlcmllcy9wYWdlLWdhbGxlcnktMS9BdXR1bW4gUm9hZC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTEvMjAwNS0zMTUtQS1TcHJpbmcgcGFzdHVyZXMuanBnIj5pbWFnZXMvR2FsbGVyeS9nYWxsZXJ5L2dhbGxlcnktMS8yMDA1LTMxNS1BLVNwcmluZyBwYXN0dXJlcy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTEvMjAwOC0wMzE1LVBJNC1BLUZ1bGwgVGlkZS5qcGciPmltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0xLzIwMDgtMDMxNS1QSTQtQS1GdWxsIFRpZGUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0xLzE3LUNhbG1XYXRlcnMuanBnIj5pbWFnZXMvR2FsbGVyeS9nYWxsZXJ5L2dhbGxlcnktMS8xNy1DYWxtV2F0ZXJzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvR2FsbGVyeS9nYWxsZXJ5L2dhbGxlcnktMS8yMDA2LTMxNS1BLUhvc3RhIGZsb3dlcnMgaW4gdGhlIHJhaW4uanBnIj5pbWFnZXMvR2FsbGVyeS9nYWxsZXJ5L2dhbGxlcnktMS8yMDA2LTMxNS1BLUhvc3RhIGZsb3dlcnMgaW4gdGhlIHJhaW4uanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0xLzIwMDktMDMxNS1QSTQtQS1Sb2xsaW5nIFBhc3R1cmVzLmpwZyI+aW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTEvMjAwOS0wMzE1LVBJNC1BLVJvbGxpbmcgUGFzdHVyZXMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0xLzAzMTUtUEk1LVNlYXdhcmQgS2Fpa291cmFzLmpwZyI+aW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTEvMDMxNS1QSTUtU2Vhd2FyZCBLYWlrb3VyYXMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0yL1VucmlwZSBXaGVhdCA3LmpwZyI+aW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTIvVW5yaXBlIFdoZWF0IDcuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L2dhbGxlcnkvZ2FsbGVyeS0yL1VucmlwZSBXaGVhdCA1LmpwZyI+aW1hZ2VzL0dhbGxlcnkvZ2FsbGVyeS9nYWxsZXJ5LTIvVW5yaXBlIFdoZWF0IDUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9HYWxsZXJ5L3BhZ2UtdG9wLWdhbGxlcmllcy9ob21lLXBhZ2UtZ2FsbGVyeS9OZXctaG9wZS1iYWxsLTIwMTUoNSkuanBnIj5pbWFnZXMvR2FsbGVyeS9wYWdlLXRvcC1nYWxsZXJpZXMvaG9tZS1wYWdlLWdhbGxlcnkvTmV3LWhvcGUtYmFsbC0yMDE1KDUpLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvcGFnZS10b3AtaW1hZ2VzL2Jhbm5lci0zLTIuanBnIj5pbWFnZXMvcGFnZS10b3AtaW1hZ2VzL2Jhbm5lci0zLTIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9wYWdlLXRvcC1pbWFnZXMvYmFubmVyLTEuanBnIj5pbWFnZXMvcGFnZS10b3AtaW1hZ2VzL2Jhbm5lci0xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvcGFnZS10b3AtaW1hZ2VzL2Jhbm5lci0yLTIuanBnIj5pbWFnZXMvcGFnZS10b3AtaW1hZ2VzL2Jhbm5lci0yLTIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9waG90by1jb21pbmctc29vbi00LTMuanBnIj5pbWFnZXMvcGhvdG8tY29taW5nLXNvb24tNC0zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvcGhvdG8tY29taW5nLXNvb24uanBnIj5pbWFnZXMvcGhvdG8tY29taW5nLXNvb24uanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvSW1hZ2VzLTMuanBnIj5pbWFnZXMvVXNlckd1aWRlL0ltYWdlcy0zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLWVkaXQtdG9wICgxKS5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ00tZWRpdC10b3AgKDEpLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL1NldHRpbmdzLTEuanBnIj5pbWFnZXMvVXNlckd1aWRlL1NldHRpbmdzLTEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tbGF5b3V0LXN0eWxlLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1sYXlvdXQtc3R5bGUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvR2FsbGVyeS00LmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvUmV2aWV3cy0xLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9SZXZpZXdzLTEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1idWxsZXRzLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLWJ1bGxldHMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvRmlsZU1hbmFnZXItMi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvRmlsZU1hbmFnZXItMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9DTS1wcmV2aWV3LXRhYi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ00tcHJldmlldy10YWIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvR2FsbGVyeS0xLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ01TLWxvZ291dC5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ01TLWxvZ291dC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9DTS10aXRsZS10YWcuanBnIj5pbWFnZXMvVXNlckd1aWRlL0NNLXRpdGxlLXRhZy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLWN1c3RvbS1idXR0b24uanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctY3VzdG9tLWJ1dHRvbi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLW1lbnUuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctbWVudS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9OZXdzLTMuanBnIj5pbWFnZXMvVXNlckd1aWRlL05ld3MtMy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTUuanBnIj5pbWFnZXMvVXNlckd1aWRlL0dhbGxlcnktNS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLWludGVybmFsLWxpbmstcG9wdXAuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctaW50ZXJuYWwtbGluay1wb3B1cC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9DTS1tdWx0aXBsZS1zZWN0aW9ucy1jYXJkcy5naWYiPmltYWdlcy9Vc2VyR3VpZGUvQ00tbXVsdGlwbGUtc2VjdGlvbnMtY2FyZHMuZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tc2lkZWJhci10YWIuanBnIj5pbWFnZXMvVXNlckd1aWRlL0NNLXNpZGViYXItdGFiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLWRlc2NyaXB0aW9uLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1kZXNjcmlwdGlvbi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTYuanBnIj5pbWFnZXMvVXNlckd1aWRlL0dhbGxlcnktNi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci1pbnNlcnQtbGluay5qcGciPmltYWdlcy9Vc2VyR3VpZGUvRmlsZU1hbmFnZXItaW5zZXJ0LWxpbmsuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvaW50cm9kdWN0aW9uLXBhc3RlLWFzLXRleHQuanBnIj5pbWFnZXMvVXNlckd1aWRlL2ludHJvZHVjdGlvbi1wYXN0ZS1hcy10ZXh0LmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLWxheW91dC1kZW1vLmdpZiI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1sYXlvdXQtZGVtby5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1kZWxldGUuanBnIj5pbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLWRlbGV0ZS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9DTS1zaWRlYmFyLmdpZiI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1zaWRlYmFyLmdpZjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL1dpZGdldHMtMS5qcGciPmltYWdlcy9Vc2VyR3VpZGUvV2lkZ2V0cy0xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLWFycm93LXVwLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1hcnJvdy11cC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1yZW9yZGVyLXN1Ym1pdC1jYW5jZWwtYXBwbHkuanBnIj5pbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLXJlb3JkZXItc3VibWl0LWNhbmNlbC1hcHBseS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci0zLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci0zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLWFycm93LWRvd24uanBnIj5pbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLWFycm93LWRvd24uanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tdGFicy5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ00tdGFicy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XaWRnZXRzLTIuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dpZGdldHMtMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTIuanBnIj5pbWFnZXMvVXNlckd1aWRlL0dhbGxlcnktMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9tZW51LXRhYi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvbWVudS10YWIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvVmlkZW8tMS5qcGciPmltYWdlcy9Vc2VyR3VpZGUvVmlkZW8tMS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1vdmVydmlldy5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ29udGVudE1hbmFnZXItb3ZlcnZpZXcuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV2lkZ2V0cy00LmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9XaWRnZXRzLTQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1icmVhay1saW5rLWJ1dHRvbi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1icmVhay1saW5rLWJ1dHRvbi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLWN1c3RvbS1kcm9wZG93bi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1jdXN0b20tZHJvcGRvd24uanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvSW1hZ2VzLTEuanBnIj5pbWFnZXMvVXNlckd1aWRlL0ltYWdlcy0xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0ZpbGVNYW5hZ2VyLWJ1dHRvbi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvRmlsZU1hbmFnZXItYnV0dG9uLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctaW50ZXJuYWwtbGluay1idXR0b24uanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctaW50ZXJuYWwtbGluay1idXR0b24uanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tbXVsdGlwbGUtc2VjdGlvbnMtYWNjb3JkaW9uLmdpZiI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1tdWx0aXBsZS1zZWN0aW9ucy1hY2NvcmRpb24uZ2lmPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ29udGVudE1hbmFnZXItcmVvcmRlci1lZGl0LmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1yZW9yZGVyLWVkaXQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1saW5rLWJ1dHRvbnMuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctbGluay1idXR0b25zLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLW11bHRpcGxlLXNlY3Rpb25zLXRhYi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ00tbXVsdGlwbGUtc2VjdGlvbnMtdGFiLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctZXh0ZXJuYWwtbGluay1wb3B1cC5qcGciPmltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1leHRlcm5hbC1saW5rLXBvcHVwLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLWVkaXQtdG9wLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1lZGl0LXRvcC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9OZXdzLTIuanBnIj5pbWFnZXMvVXNlckd1aWRlL05ld3MtMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9OZXdzLTEuanBnIj5pbWFnZXMvVXNlckd1aWRlL05ld3MtMS5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9pbnRyb2R1Y3Rpb24tbG9naW4uanBnIj5pbWFnZXMvVXNlckd1aWRlL2ludHJvZHVjdGlvbi1sb2dpbi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLW1lbnUtbGluay1oaWdobGlnaHQuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctbWVudS1saW5rLWhpZ2hsaWdodC5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1yZW9yZGVyLXBhZ2VzLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9Db250ZW50TWFuYWdlci1yZW9yZGVyLXBhZ2VzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL2ludHJvZHVjdGlvbi0yLXRhYnMuanBnIj5pbWFnZXMvVXNlckd1aWRlL2ludHJvZHVjdGlvbi0yLXRhYnMuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvVmlkZW8tMi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvVmlkZW8tMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9HYWxsZXJ5LTMuanBnIj5pbWFnZXMvVXNlckd1aWRlL0dhbGxlcnktMy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLW1lbnUtMS5qcGciPmltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy1tZW51LTEuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tbXVsdGlwbGUtc2VjdGlvbnMtdGFicy5naWYiPmltYWdlcy9Vc2VyR3VpZGUvQ00tbXVsdGlwbGUtc2VjdGlvbnMtdGFicy5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XWVNJV1lHLWNsZWFyLWZvcm1hdHRpbmcuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctY2xlYXItZm9ybWF0dGluZy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci0xLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci0xLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLVNlY3Rpb24xLmdpZiI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1TZWN0aW9uMS5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9pbnRyb2R1Y3Rpb24taG9tZS5qcGciPmltYWdlcy9Vc2VyR3VpZGUvaW50cm9kdWN0aW9uLWhvbWUuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvQ00tYWRkLW5ldy1jb250ZW50LmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9DTS1hZGQtbmV3LWNvbnRlbnQuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy10YWJsZXMuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctdGFibGVzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLXBhZ2UtbGF5b3V0LVRBQi5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ00tcGFnZS1sYXlvdXQtVEFCLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NvbnRlbnRNYW5hZ2VyLXJlb3JkZXItdGljay5qcGciPmltYWdlcy9Vc2VyR3VpZGUvQ29udGVudE1hbmFnZXItcmVvcmRlci10aWNrLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL1NldHRpbmdzLTIuanBnIj5pbWFnZXMvVXNlckd1aWRlL1NldHRpbmdzLTIuanBnPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9ImltYWdlcy9Vc2VyR3VpZGUvV1lTSVdZRy10ZXh0LWZvcm1hdHRpbmcuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dZU0lXWUctdGV4dC1mb3JtYXR0aW5nLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0ltYWdlcy0yLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9JbWFnZXMtMi5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci1mb2xkZXJzLmpwZyI+aW1hZ2VzL1VzZXJHdWlkZS9GaWxlTWFuYWdlci1mb2xkZXJzLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvVXNlckd1aWRlL0NNLXRlbXBsYXRlLmdpZiI+aW1hZ2VzL1VzZXJHdWlkZS9DTS10ZW1wbGF0ZS5naWY8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL1VzZXJHdWlkZS9XaWRnZXRzLTMuanBnIj5pbWFnZXMvVXNlckd1aWRlL1dpZGdldHMtMy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL3NlY3Rpb24td2lkZ2V0LWltYWdlcy9lYXN0X2FuZ2xpYW5fY29sbGllX2Fzc29jaWF0aW9uLmpwZyI+aW1hZ2VzL3NlY3Rpb24td2lkZ2V0LWltYWdlcy9lYXN0X2FuZ2xpYW5fY29sbGllX2Fzc29jaWF0aW9uLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvc2VjdGlvbi13aWRnZXQtaW1hZ2VzLzE5NzMtMzE1LUEtVG91Y2gtb2YtR29sZC5qcGciPmltYWdlcy9zZWN0aW9uLXdpZGdldC1pbWFnZXMvMTk3My0zMTUtQS1Ub3VjaC1vZi1Hb2xkLmpwZzwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJpbWFnZXMvc2VjdGlvbi13aWRnZXQtaW1hZ2VzL2NvYXN0ZXJzLmpwZyI+aW1hZ2VzL3NlY3Rpb24td2lkZ2V0LWltYWdlcy9jb2FzdGVycy5qcGc8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iaW1hZ2VzL2xvZ28xLmdpZiI+aW1hZ2VzL2xvZ28xLmdpZjwvb3B0aW9uPgoKICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIAogICAgICAgIDxpbWcgc3R5bGU9Im1heC13aWR0aDoxMzBweDsiIGNsYXNzPSJmaWxlX3NlbGVjdG9yX3ByZXZpZXciIGRhdGEtdXBsb2Fkc3VybD0iaHR0cHM6Ly9sb2NhbGhvc3QvbW9kdWxlLWRldi91cGxvYWRzIiAgYWx0PSJkZW1vX2ZpbGVfc2VsZWN0b3IxIj4KCjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1maWxlX3NlbGVjdG9yIGJsb2NrPSJ0ZXN0MTAiIGZpbGV0eXBlcz0ianBnLGdpZixwbmciIGV4Y2x1ZGVwcmVmaXg9InRodW1iXyIgcmVjdXJzZT0xIHByZXZpZXc9MX08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdmaWxlX3NlbGVjdG9yJzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5maWxldHlwZXMgKHJlcXVpcmVkKSAtIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGZpbGUgZXh0ZW5zaW9ucyB0byBkaXNwbGF5LCBlLmcuICdqcGcsZ2lmLHBuZyc8L2xpPgogICAgPGxpPmRpciAob3B0aW9uYWwpIC0gc3BlY2lmeSBhIHN1YiBkaXJlY3Rvcnkgb2YgJ3VwbG9hZHMnIHRvIHVzZTwvbGk+CiAgICA8bGk+ZXhjbHVkZXByZWZpeCAob3B0aW9uYWwpIC0gZXhjbHVkZSBhbnkgZmlsZXMgdGhhdCBoYXZlIHRoaXMgcHJlZml4LCBlLmcuICd0aHVtYl8nPC9saT4KICAgIDxsaT5yZWN1cnNlIChvcHRpb25hbCkgLSBpZiBzZXQgd2lsbCBzaG93IGFsbCBmaWxlcyBpbiBzdWIgZGlyZWN0b3JpZXM8L2xpPgogICAgPGxpPnNvcnRmaWxlcyAob3B0aW9uYWwpIC0gd2lsbCBzb3J0IGZpbGVzIGJ5IGZpbGVuYW1lPC9saT4KICAgIDxsaT5wcmV2aWV3IChvcHRpb25hbCkgLSB3aWxsIHNob3cgYSB0aHVtYm5haWwgb2YgdGhlIGltYWdlIC0gb25seSBmb3IgaW1hZ2VzPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+CgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJwYWdlX3BpY2tlciIgY2xhc3M9Im1fYm90dG9tXzUiPnBhZ2VfcGlja2VyPC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBwYWdlX3BpY2tlciBmaWVsZCBjcmVhdGVzIGEgaGllcmFyY2h5IG9mIGRyb3Bkb3ducyB0byBzZWxlY3QgYSBjb250ZW50IHBhZ2UuPC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIHRpdGxlPSJUaGlzIGZpZWxkIGRpc3BsYXlzIHRoZSBzZWxlY3RlZCBjb250ZW50IHBhZ2UuICBUaGUgYWN0dWFsIHN0cmluZyBkaXNwbGF5ZWQgKHBhZ2UgdGl0bGUgb3IgbWVudSB0ZXh0KSBpcyBkZXBlbmRlbnQgb24gdXNlciBhbmQgc2l0ZSBwcmVmZXJlbmNlLiIgbmFtZT0iZGVtb19wYWdlX3BpY2tlcjEiIGlkPSJjbXNfaGllcmRyb3Bkb3duMSIgY2xhc3M9ImNtc19oaWVyZHJvcGRvd24iIHZhbHVlPSIwIiBzaXplPSI1MCIgbWF4bGVuZ3RoPSI1MCIvPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4kKGZ1bmN0aW9uKCl7ICQoJyNjbXNfaGllcmRyb3Bkb3duMScpLmhpZXJzZWxlY3Rvcih7YWxsb3djdXJyZW50OiB0cnVlLGFsbG93X2FsbDogZmFsc2UsdXNlX3Blcm1zOiB0cnVlLGZvcl9jaGlsZDogZmFsc2UsaXNfbWFuYWdlcjogMX0pIH0pOzwvc2NyaXB0Pgo8L2ZpZWxkc2V0PgoKPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9cGFnZV9waWNrZXIgbGFiZWw9IlNlbGVjdCBhIHBhZ2UiIGJsb2NrPSJ0ZXN0MTAifTwvcHJlPgo8cD5Ob3RlOiBzZXRzIHRoZSBjb250ZW50IHBhZ2UgaWQuPC9wPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ3BhZ2VfcGlja2VyJywgYWxpYXM6ICc8Yj5wYWdlczwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJnYWxsZXJ5X3BpY2tlciIgY2xhc3M9Im1fYm90dG9tXzUiPmdhbGxlcnlfcGlja2VyPC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBnYWxsZXJ5X3BpY2tlciBjcmVhdGVzIGEgZHJvcGRvd24gdG8gY2hvb3NlIGZyb20gYSBzZWxlY3Rpb24gb2YgZ2FsbGVyaWVzIGluIHRoZSBHYWxsZXJ5IG1vZHVsZS48L3A+Cgo8ZmllbGRzZXQ+CiAgICAKICAgICAgICA8c2VsZWN0IG5hbWU9ImRlbW9fZ2FsbGVyeV9waWNrZXIxIj4KPG9wdGlvbiB2YWx1ZT0iIiBzZWxlY3RlZD0ic2VsZWN0ZWQiPi0tLSBub25lIC0tLTwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJnYWxsZXJ5Ij5NYWluIEdhbGxlcnk8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iZ2FsbGVyeS9nYWxsZXJ5LTEiPkdhbGxlcnkgMTwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJnYWxsZXJ5L2dhbGxlcnktMiI+R2FsbGVyeSAyPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9Im9uLXBhZ2UtZ2FsbGVyaWVzIj5PbiBQYWdlIEdhbGxlcmllczwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJvbi1wYWdlLWdhbGxlcmllcy9wYWdlLWdhbGxlcnktMSI+T24gUGFnZSBHYWxsZXJ5IDE8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0ib24tcGFnZS1nYWxsZXJpZXMvcGFnZS1nYWxsZXJ5LTIiPk9uIFBhZ2UgR2FsbGVyeSAyPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InBhZ2UtdG9wLWdhbGxlcmllcyI+UGFnZSBUb3AgR2FsbGVyaWVzPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9InBhZ2UtdG9wLWdhbGxlcmllcy9ob21lLXBhZ2UtZ2FsbGVyeSI+SG9tZSBQYWdlIEdhbGxlcnk8L29wdGlvbj4KPC9zZWxlY3Q+Cgo8L2ZpZWxkc2V0PgoKPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9Z2FsbGVyeV9waWNrZXIgYmxvY2s9cGFnZVRvcEdhbGxlcnkgbGFiZWw9J1BhZ2UgVG9wIEdhbGxlcnknIGRpcj0ncGFnZS10b3AtZ2FsbGVyaWVzJ308L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdnYWxsZXJ5X3BpY2tlcic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+ZGlyIChvcHRpb25hbCkgLSBvbmx5IHJldHVybnMgZ2FsbGVyaWVzIHRoYXQgYXJlIHN1Yi1nYWxsZXJpZXMgb2YgdGhpcyBnYWxsZXJ5IGRpciwgZGVmYXVsdCBpcyBhbGwgZ2FsbGVyaWVzLCBleGNsdWRpbmcgZGVmYXVsdCB0b3AgbGV2ZWwgZ2FsbGVyeTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJtb2R1bGVfcGlja2VyIiBjbGFzcz0ibV9ib3R0b21fNSI+bW9kdWxlX3BpY2tlcjwvaDI+CiAgICAgICAgICAgIAo8cD5UaGUgbW9kdWxlX3BpY2tlciBmaWVsZCBjcmVhdGVzIGEgZHJvcGRvd24gb2YgYWxsIGluc3RhbGxlZCBtb2R1bGVzIHRvIHNlbGVjdCBmcm9tLjwvcD4KCjxmaWVsZHNldD4KICAgIAogICAgICAgIDxzZWxlY3QgbmFtZT0iZGVtb19tb2R1bGVfcGlja2VyMSI+CjxvcHRpb24gdmFsdWU9IiIgc2VsZWN0ZWQ9InNlbGVjdGVkIj4tLS0gbm9uZSAtLS08L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iQWRtaW5TZWFyY2giPkFkbWluIFNlYXJjaDwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJDYXB0Y2hhIj5DYXB0Y2hhPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkNhcnQyIj5DYXJ0Mjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJDR0JldHRlckZvcm1zIj5DR0JldHRlckZvcm1zPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkNHQ29udGVudFV0aWxzIj5DYWxndXlzIENvbnRlbnQgVXRpbGl0aWVzPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkNHRWNvbW1lcmNlQmFzZSI+Q2FsZ3V5cyBFY29tbWVyY2UgQmFzZTwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJDR0V4dGVuc2lvbnMiPkNhbGd1eXMgTW9kdWxlIEV4dGVuc2lvbnM8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iQ0dGZWVkYmFjayI+Q3VzdG9tZXIgUmV2aWV3czwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJDR1BheW1lbnRHYXRld2F5QmFzZSI+QmFzZSBtb2R1bGUgZm9yIHBheW1lbnQgZ2F0ZXdheXM8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iQ0dTaW1wbGVTbWFydHkiPkNHU2ltcGxlU21hcnR5PC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkNHU21hcnRJbWFnZSI+Q2FsZ3V5cyBTbWFydCBJbWFnZSBUb29sa2l0PC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkNNU0NvbnRlbnRNYW5hZ2VyIj5Db250ZW50IE1hbmFnZXI8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iQ21zSm9iTWFuYWdlciI+QmFja2dyb3VuZCBKb2IgTWFuYWdlcjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJDdXN0b21HUyI+V2Vic2l0ZSBTZXR0aW5nczwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJEZXNpZ25NYW5hZ2VyIj5EZXNpZ24gTWFuYWdlcjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJFQ0IyIj5FeHRlbmRlZCBDb250ZW50IEJsb2NrcyAyPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkZDQiI+RmxleGlibGUgQ29udGVudCBCbG9ja3M8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iRmlsZU1hbmFnZXIiPkZpbGUgTWFuYWdlcjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJGaWxlUGlja2VyIj5GaWxlIFBpY2tlcjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJGb3JtQnVpbGRlciI+Rm9ybSBCdWlsZGVyPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkZyb250RW5kVXNlcnMiPkZyb250ZW5kIFVzZXIgTWFuYWdlbWVudDwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJHYWxsZXJ5Ij5HYWxsZXJ5PC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkpNRmlsZVBpY2tlciI+Sk1GaWxlUGlja2VyPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkpRdWVyeVRvb2xzIj5KUXVlcnkgVG9vbGJveDwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJMSVNFIj5MSVNFPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IkxJU0VQcm9qZWN0cyI+UHJvamVjdHM8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTWljcm9UaW55Ij5NaWNyb1RpbnkgV1lTSVdZRyBlZGl0b3I8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTW9kdWxlTWFuYWdlciI+TW9kdWxlIE1hbmFnZXI8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTmF2aWdhdG9yIj5DTVNNUyBOYXZpZ2F0aW9uIEJ1aWxkZXI8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iTmV3cyI+TmV3czwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJPcmRlcnMiPk9yZGVyIE1hbmFnZXI8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iUGF5cGFsR2F0ZXdheSI+UGF5cGFsIEdhdGV3YXk8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iUHJvZHVjdHMiPlByb2R1Y3QgTWFuYWdlcjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJSZXZpZXdNYW5hZ2VyIj5DdXN0b21lciBSZXZpZXdzKjwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJTZWFyY2giPlNlYXJjaDwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJTZWxmUmVnaXN0cmF0aW9uIj5TZWxmIFJlZ2lzdHJhdGlvbiBNb2R1bGU8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iU0VPQm9vc3QiPlNFT0Jvb3N0PC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IlNrZWxldG9uMiI+U2tlbGV0b24yPC9vcHRpb24+CjxvcHRpb24gdmFsdWU9IlRpbnlNQ0UiPlRpbnlNQ0UgV1lTSVdZRyBlZGl0b3I8L29wdGlvbj4KPG9wdGlvbiB2YWx1ZT0iVXNlckd1aWRlMiI+VXNlciBHdWlkZTwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJVdGlsaXRpZXMiPlV0aWxpdGllczwvb3B0aW9uPgo8b3B0aW9uIHZhbHVlPSJXaWRnZXRzIj5XaWRnZXRzPC9vcHRpb24+Cjwvc2VsZWN0PgoKCjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD0nbW9kdWxlJyBibG9jaz10ZXN0MTIgbGFiZWw9JzEyOiBtb2R1bGVfcGlja2VyJyBkZWZhdWx0PUZvcm1CdWlsZGVyfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ21vZHVsZV9waWNrZXInLCBhbGlhczonPGI+bW9kdWxlPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+CiAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9ImhpZGRlbiIgY2xhc3M9Im1fYm90dG9tXzUiPmhpZGRlbjwvaDI+CiAgICAgICAgICAgIAo8cD5UaGUgaGlkZGVuIGZpZWxkIGNyZWF0ZXMgYSBzaW1wbGUgaGlkZGVuIGlucHV0LCBmb3Igc3RvcmluZyBhIHNpbmdsZSBzdHJpbmcuPC9wPgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5ub3RoaW5nIHRvIHNlZSBoZXJlITwvbGVnZW5kPgogICAgCiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZGVtb19oaWRkZW4xIiB2YWx1ZT0iIj4KPC9maWVsZHNldD4KCjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWhpZGRlbiBibG9jaz0idGVzdCIgbGFiZWw9IlRlc3QiIGRlZmF1bHQ9ImZpbGwgaXQifTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2hpZGRlbic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+bGFiZWwgKG9wdGlvbmFsKSAtIFRpcDogSWYgeW91IGFkZCBsYWJlbD0nJm5ic3A7JyB0aGUgbGFiZWwgd2lsbCBiZSBoaWRkZW48L2xpPgogICAgPGxpPnZhbHVlIChvcHRpb25hbCkgLSBzZXRzIHRoZSB2YWx1ZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJpbnB1dF9yZXBlYXRlciIgY2xhc3M9Im1fYm90dG9tXzUiPmlucHV0X3JlcGVhdGVyPC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBpbnB1dF9yZXBlYXRlciBmaWVsZCBjcmVhdGVzIG9uZSBvciBtb3JlIHRleHQgaW5wdXRzIHRoYXQgY2FuIGJlIGFkZGVkIG9yIHJlbW92ZWQgYnkgdGhlIGVkaXRvci48L3A+CjxwPlRoZSBjb250ZW50IGJsb2NrIG91dHB1dCBpcyBhIHN0cmluZyB3aXRoIGVhY2ggaW5wdXQgZmllbGQncyBjb250ZW50cyBkZWxpbWl0ZXIgYnkgJ3x8Jy4gVG8gbWFrZSB0aGUgb3V0cHV0IGEgbW9yZSB1c2VmdWwgYXJyYXkgdXNlICdleHBsb2RlJywgZS5nLiB7Inx8InxleHBsb2RlOiRjb250ZW50X2Jsb2NrX25hbWV9PC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iZGVtb19pbnB1dF9yZXBlYXRlcjEiIG5hbWU9ImRlbW9faW5wdXRfcmVwZWF0ZXIxIiB2YWx1ZT0iQXBwbGVzfHxLaXdpZnJ1aXQiIHNpemU9IjEwMCIvPgoKICAgIDxkaXYgaWQ9ImRlbW9faW5wdXRfcmVwZWF0ZXIxLXJlcGVhdGVyIiBjbGFzcz0iZWNiX3JlcGVhdGVyIiBkYXRhLXBhcmVudD0iI2RlbW9faW5wdXRfcmVwZWF0ZXIxIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyZXBlYXRlci13cmFwcGVyIj4KICAgICAgICAgICAgPGlucHV0IGlkPSJyZXBlYXRlci1maWVsZC1kZW1vX2lucHV0X3JlcGVhdGVyMS0xIiBjbGFzcz0icmVwZWF0ZXItZmllbGQiIHNpemU9IjUwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9IkFwcGxlcyIgZGF0YS1yZXBlYXRlcj0iI2RlbW9faW5wdXRfcmVwZWF0ZXIxLXJlcGVhdGVyIi8+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImVjYjItcmVwZWF0ZXItYWRkIGVjYjItYnV0dG9uLWlubGluZSB1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkiIGRhdGEtcmVwZWF0ZXI9IiNkZW1vX2lucHV0X3JlcGVhdGVyMS1yZXBlYXRlciIgdGl0bGU9IkFkZCBsaW5lIiByb2xlPSJidXR0b24iIGFyaWEtZGlzYWJsZWQ9ImZhbHNlIj4rPC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImVjYjItcmVwZWF0ZXItcmVtb3ZlIGVjYjItYnV0dG9uLWlubGluZSB1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCB1aS1idXR0b24tdGV4dC1pY29uLXByaW1hcnkiIGRhdGEtcmVwZWF0ZXI9IiNkZW1vX2lucHV0X3JlcGVhdGVyMS1yZXBlYXRlciIgdGl0bGU9IlJlbW92ZSBsaW5lIiByb2xlPSJidXR0b24iIGFyaWEtZGlzYWJsZWQ9ImZhbHNlIj4mbWludXM7PC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icmVwZWF0ZXItd3JhcHBlciI+CiAgICAgICAgICAgIDxpbnB1dCBpZD0icmVwZWF0ZXItZmllbGQtZGVtb19pbnB1dF9yZXBlYXRlcjEtMiIgY2xhc3M9InJlcGVhdGVyLWZpZWxkIiBzaXplPSI1MCIgbWF4bGVuZ3RoPSIyNTUiIHZhbHVlPSJLaXdpZnJ1aXQiIGRhdGEtcmVwZWF0ZXI9IiNkZW1vX2lucHV0X3JlcGVhdGVyMS1yZXBlYXRlciIvPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJlY2IyLXJlcGVhdGVyLWFkZCBlY2IyLWJ1dHRvbi1pbmxpbmUgdWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtaWNvbi1wcmltYXJ5IiBkYXRhLXJlcGVhdGVyPSIjZGVtb19pbnB1dF9yZXBlYXRlcjEtcmVwZWF0ZXIiIHRpdGxlPSJBZGQgbGluZSIgcm9sZT0iYnV0dG9uIiBhcmlhLWRpc2FibGVkPSJmYWxzZSI+KzwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJlY2IyLXJlcGVhdGVyLXJlbW92ZSBlY2IyLWJ1dHRvbi1pbmxpbmUgdWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktYnV0dG9uLXRleHQtaWNvbi1wcmltYXJ5IiBkYXRhLXJlcGVhdGVyPSIjZGVtb19pbnB1dF9yZXBlYXRlcjEtcmVwZWF0ZXIiIHRpdGxlPSJSZW1vdmUgbGluZSIgcm9sZT0iYnV0dG9uIiBhcmlhLWRpc2FibGVkPSJmYWxzZSI+Jm1pbnVzOzwvYnV0dG9uPgogICAgICAgIDwvZGl2PgoKICAgIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPHByZT57JGlucHV0X3JlcGVhdGVyX3Rlc3Q9Inx8InxleHBsb2RlOiJ7Y29udGVudF9tb2R1bGUgbW9kdWxlPSdFQ0IyJyBmaWVsZD0naW5wdXRfcmVwZWF0ZXInIGxhYmVsPSdUZXN0IDIyOiBpbnB1dF9yZXBlYXRlcicgYmxvY2s9J3Rlc3QyMicgc2l6ZT01MCBtYXhfbGVuZ3RoPTI1NSBkZXNjcmlwdGlvbj0nUHJlc3MgKCspIGFuZCAoLSkgdG8gYWRkIGFuZCByZW1vdmUgYWRkaXRpb25hbCBpbnB1dCBmaWVsZHMnfSIgc2NvcGU9Z2xvYmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2lucHV0X3JlcGVhdGVyJzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBzZXRzIHRoZSB3aWR0aCBvZiB0aGUgaHRtbCBpbnB1dC4gTWF5IGJlIG92ZXJyaWRkZW4gYnkgY3NzIC0gZGVmYXVsdCAzMDwvbGk+CiAgICA8bGk+bWF4X2xlbmd0aCAob3B0aW9uYWwpIC0gbWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyAtIGRlZmF1bHQgMjU1IChvcHRpb25hbCk8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJib3JkZXItYm90dG9tIG1fdG9wXzI1IHBfYm90dG9tXzUiPkFkbWluIG9ubHkgZmllbGRzPC9oMj4KICAgICAgICAgICAgPHA+VGhlIGZvbGxvd2luZyBmaWVsZHMgYXJlIG9ubHkgdXNlZCB0byBmb3JtYXQgYW5kIGFkZCBjb250ZW50IHRvIHRoZSBhZG1pbiBwYWdlcy4gVGhleSBkbyBub3QgcHJvdmlkZSBhbnkgdXNlZnVsIGNvbnRlbnQgZm9yIHRoZSBmcm9udGVuZCB3ZWJzaXRlIHBhZ2VzLjwvcD4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9ImFkbWluX2ZpZWxkc2V0X3N0YXJ0IiBjbGFzcz0ibV9ib3R0b21fNSI+YWRtaW5fZmllbGRzZXRfc3RhcnQ8L2gyPgogICAgICAgICAgICAKPHA+Q3JlYXRlcyB0aGUgc3RhcnQgb2YgYSBmaWVsZHNldCBmb3IgZ3JvdXBpbmcgcmVsYXZhbnQgYWRtaW4gZmllbGRzIHRvZ2V0aGVyLiBOb3RlOiBhIG1hdGNoaW5nICdhZG1pbl9maWVsZHNldF9lbmQnIGJsb2NrIGlzIHJlcXVpcmVkIGZvciBlYWNoICdhZG1pbl9maWVsZHNldF9zdGFydCcuPC9wPgoKCgogICAgICAgICAgICA8ZmllbGRzZXQgbmFtZT0iZGVtb19hZG1pbl9maWVsZHNldF9zdGFydDEiPgogICAgICAgICAgICAgICAgICAgIDxsZWdlbmQ+QSBzYW1wbGUgZmllbGRzZXQgd2l0aCBsZWdlbmQ8L2xlZ2VuZD4KICAgICAgICAKICAgIHNvbWUgYWRtaW4gZmllbGRzIGNhbiBnbyBpbiBoZXJlIDopCiAgICA8L2ZpZWxkc2V0PgoKPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5fZmllbGRzZXRfc3RhcnQgYmxvY2s9InRlc3QiIGxhYmVsPSIxNTogYWRtaW5fZmllbGRzZXRfc3RhcnQifTwvcHJlPgoKPHA+VElQOiBzZXQgbGFiZWw9JyZuYnNwOycgdG8gbm90IHNob3cgdGhlIGZpZWxkIGxhYmVsLjwvcD4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdhZG1pbl9maWVsZHNldF9zdGFydCcsIGFsaWFzOiAnPGI+ZmllbGRzZXRfc3RhcnQ8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5sZWdlbmQgKG9wdGlvbmFsKSAtIHRleHQgdG8gc2hvdyBhcyBmaWVsZHNldCBsZWdlbmQgLSBkZWZhdWx0OiAnJzwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgogICAgICAgICAgICA8YnI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGlkPSJhZG1pbl9maWVsZHNldF9lbmQiIGNsYXNzPSJtX2JvdHRvbV81Ij5hZG1pbl9maWVsZHNldF9lbmQ8L2gyPgogICAgICAgICAgICAKPHA+U2ltcGx5IHRoZSBhZG1pbl9maWVsZHNldF9lbmQgdG8gY2xvc2UgYW4gYWRtaW5fZmllbGRzZXRfc3RhcnQuIFNlZSBhYm92ZSBmb3IgZGVtby48L3A+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1hZG1pbl9maWVsZHNldF9lbmQgYmxvY2s9InRlc3QxNiIgbGFiZWw9JyZhbXA7bmJzcDsnfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX2ZpZWxkc2V0X2VuZCcsIGFsaWFzOiAnPGI+ZmllbGRzZXRfZW5kPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CjwvdWw+Cgo8cD5USVA6IHNldCBsYWJlbD0nJmFtcDtuYnNwOycgdG8gbm90IHNob3cgdGhlIGZpZWxkIGxhYmVsLjwvcD4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBpZD0iYWRtaW5faHIiIGNsYXNzPSJtX2JvdHRvbV81Ij5hZG1pbl9ocjwvaDI+CiAgICAgICAgICAgIAo8cD5EaXNwbGF5cyBhbiAnaHInIG9uIHRoZSBhZG1pbiBwYWdlLjwvcD4KCjxmaWVsZHNldD4KICAgIAogICAgICAgIDxociBzdHlsZT0iZGlzcGxheTpibG9jazsgYm9yZGVyOjAgbm9uZTsgYmFja2dyb3VuZDojY2NjOyIgLz4KCjwvZmllbGRzZXQ+Cgo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1hZG1pbl9ociBibG9jaz0idGVzdDE3IiBkZXNjcmlwdGlvbj0nQ2FuIGFsc28gYWRkIGEgZGVzY3JpcHRpb24gaW4gaGVyZSA6KSd9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnYWRtaW5faHInLCBhbGlhczogJzxiPmhyPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKPHA+VElQOiBzZXQgbGFiZWw9JyZhbXA7bmJzcDsnIHRvIG5vdCBzaG93IHRoZSBmaWVsZCBsYWJlbC48L3A+CiAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9ImFkbWluX2ltYWdlIiBjbGFzcz0ibV9ib3R0b21fNSI+YWRtaW5faW1hZ2U8L2gyPgogICAgICAgICAgICAKPHA+RGlzcGxheXMgYW4gaW1hZ2Ugb24gYW4gYWRtaW4gcGFnZSBvbmx5LiBVc2VmdWxseSB0byBwcm92aWRlIGV4dHJhIGd1aWRhbmNlIHRvIGVkaXRvcnMuPC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICAgICAgVGhpcyBpcyBhbiBhZG1pbiBvbmx5IGltYWdlPGJyPgogICAgICAgIDxpbWcgc3JjPSJodHRwczovL2xvY2FsaG9zdC9tb2R1bGUtZGV2L21vZHVsZXMvRUNCMi9saWIvZmllbGRkZWZzL2FkbWluX2ltYWdlL3NhbXBsZV9hZG1pbl9vbmx5X2ltYWdlLnBuZyIgYWx0PSJkZW1vX2FkbWluX2ltYWdlMSIgc3R5bGU9Im1heC13aWR0aDoxMDAlIj4KPC9maWVsZHNldD4KCjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX2ltYWdlIGltYWdlPSdzYW1wbGVfYWRtaW5fb25seV9pbWFnZS5wbmcnIGJsb2NrPSJ0ZXN0MTkiIGxhYmVsPSIxOTogYWRtaW5faW1hZ2UiIGRlc2NyaXB0aW9uPSJUaGlzIGlzIGFuIGFkbWluIG9ubHkgaW1hZ2UifTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX2ltYWdlJywgYWxpYXM6ICc8Yj5pbWFnZTwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmltYWdlIChyZXF1aXJlZCkgLSBwYXRoIGFuZCBmaWxlbmFtZSByZWxhdGl2ZSB0byB0aGUgdXBsb2FkcyBkaXJlY3Rvcnk8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBpZD0iYWRtaW5fbGluayIgY2xhc3M9Im1fYm90dG9tXzUiPmFkbWluX2xpbms8L2gyPgogICAgICAgICAgICAKPHA+VGhlIGFkbWluX2xpbmsgZmllbGQgY3JlYXRlcyBhIGxpbmsgb24gdGhlIGFkbWluIHBhZ2UgdG8gYW55IHNwZWNpZmllZCB1cmwuPC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICAgICAgPGEgdGFyZ2V0PSJfYmxhbmsiIGhyZWY9Imh0dHA6Ly93d3cuYmluZy5jb20iPmJpbmcgc2VhcmNoPC9hPgo8L2ZpZWxkc2V0PgoKPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5fbGluayBibG9jaz0idGVzdDE3IiB0YXJnZXQ9Il9ibGFuayIgbGluaz0iaHR0cDovL3d3dy5iaW5nLmNvbSIgdGV4dD0iYmluZyBzZWFyY2giIGxhYmVsPSIxNzogYWRtaW5fbGluayIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnYWRtaW5fbGluaycsIGFsaWFzOiAnPGI+bGluazwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmxpbmsgKHJlcXVpcmVkKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT50ZXh0IChvcHRpb25hbCkgLSB0aGUgZGlzcGxheWVkIHRleHQ8L2xpPgogICAgPGxpPnRhcmdldCAob3B0aW9uYWwpIC0gZS5nLiAnX2JsYW5rJyAtIGRlZmF1bHQ6ICdfc2VsZic8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4KICAgICAgICAgICAgPGJyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBpZD0iYWRtaW5fbW9kdWxlX2xpbmsiIGNsYXNzPSJtX2JvdHRvbV81Ij5hZG1pbl9tb2R1bGVfbGluazwvaDI+CiAgICAgICAgICAgIAo8cD5UaGUgYWRtaW5fbW9kdWxlX2xpbmsgZmllbGQgY3JlYXRlcyBhIGxpbmsgb24gdGhlIGFkbWluIHBhZ2UgdG8gdGhlIHNwZWNpZmllZCBtb2R1bGUuPC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9sb2NhbGhvc3QvbW9kdWxlLWRldi9hZG1pbi9tb2R1bGVpbnRlcmZhY2UucGhwP21hY3Q9Q01TQ29udGVudE1hbmFnZXIsLGRlZmF1bHRhZG1pbiwwJmFtcDtfX2M9NDAzNmJkNWMzOTI4OTY0YjY4NSIgdGFyZ2V0PSJfYmxhbmsiPkVkaXQgQ29udGVudCBQYWdlczwvYT4KPC9maWVsZHNldD4KCjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX21vZHVsZV9saW5rIGJsb2NrPSJ0ZXN0MTgiIG1vZD0iQ01TQ29udGVudE1hbmFnZXIiIHRleHQ9IkVkaXQgQ29udGVudCBQYWdlcyIgbGFiZWw9IjE4OiBtb2R1bGVfbGluazpDb250ZW50TWFuYWdlciIgdGFyZ2V0PSdfYmxhbmsnIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX21vZHVsZV9saW5rJywgYWxpYXM6ICc8Yj5tb2R1bGVfbGluazwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPm1vZCAocmVxdWlyZWQpIC0gbmFtZSBvZiB0aGUgbW9kdWxlIHRvIGxpbmsgdG88YnI+CiAgICA8bGk+dGV4dCAob3B0aW9uYWwpIC0gdGV4dCB0byB1c2UgaW4gdGhlIGxpbms8L2xpPgogICAgPGxpPnRhcmdldCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ19zZWxmJzwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+CiAgICAgICAgICAgIDxicj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgaWQ9ImFkbWluX3RleHQiIGNsYXNzPSJtX2JvdHRvbV81Ij5hZG1pbl90ZXh0PC9oMj4KICAgICAgICAgICAgCjxwPlRoZSBhZG1pbl90ZXh0IGZpZWxkIGp1c3QgYWRkcyB0ZXh0IGludG8gdGhlIGFkbWluIHBhZ2UuPC9wPgoKPGZpZWxkc2V0PgogICAgCiAgICAgICAgU2ltcGx5IGFkZCBzb21lIHRleHQgaW50byB0aGUgYWRtaW4gcGFnZXMgdG8gZ2l2ZSBzb21lIGd1aWRhbmNlIHRvIHRoZSBlZGl0b3JzLCBvciB3aGF0ZXZlciBlbHNlIHlvdSB3YW50IHJlYWxseSA6KS4KPC9maWVsZHNldD4KCjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX3RleHQgdGV4dD0nU2ltcGx5IGFkZCBzb21lIHRleHQgaW50byB0aGUgYWRtaW4gcGFnZXMgdG8gZ2l2ZSBzb21lIGd1aWRhbmNlIHRvIHRoZSBlZGl0b3JzLCBvciB3aGF0ZXZlciBlbHNlIHlvdSB3YW50IHJlYWxseSA6KS4nIGJsb2NrPSJ0ZXN0MTYiIGxhYmVsPSIxNjogVGV4dCJ9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnYWRtaW5fdGV4dCcsIGFsaWFzOiAnPGI+dGV4dDwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnRleHQgKHJlcXVpcmVkKSAtIHRleHQgaW4gYWRtaW4gKGFkZCBpbmZvcm1hdGlvbiBmb3IgdXNlcnMpPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+CiAgICAgICAgICAgIDxicj4KICAgICAgICAKICAgICAgICA8L2Rpdj4KCiAgIDwvZGl2PgoKICAgPGRpdiBpZD0iYWJvdXRfYyI+CiAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgIDxwPkVDQjIgcHJvdmlkZXMgYWRkaXRpb25hbCBDb250ZW50IEJsb2NrcyBmb3IgdXNlIGluIHBhZ2UgdGVtcGxhdGVzIGZvciBDTVMgTWFkZSBTaW1wbGUgdjIrLjwvcD4KPHA+VGhhbmtzIHRvIFRvbSBQaGFuZSBAdG9tcGgsIGZvciBoaXMgY29kZSBpbXByb3ZlbWVudHMsIG9wdGltaXNhdGlvbnMsIGFuZCBoZWxwIGNvbnRlbnQgKGVzcGVjaWFsbHkgYSBncmVhdCBzaW1wbGUgc21hcnR5IHRpcCkuPC9wPgo8cD5UaGUgRUNCMiBtb2R1bGUgaXMgYSBmb3JrIG9mIHRoZSBtb2R1bGUgRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MgKEVDQiksIGZvciBDTVNNUyB2MSwgZGV2ZWxvcGVkIGJ5IFpkZW5vIEt1em1hbnkuPC9wPgo8YnI+PGJyPgoKPGgzPlVwZ3JhZGluZyBmcm9tIEVDQjwvaDM+CjxwPkluc3RhbGwgRUNCMiBtb2R1bGUgYW5kIGNoYW5nZSBhbGwgIm1vZHVsZSIgcGFyYW1ldGVycywgaW4gY29udGVudF9tb2R1bGUgdGFncyB0byBiZSBtb2R1bGU9IkVDQjIiICh3YXMgIkVDQiIpLiBUaGVuIEVDQiBjYW4gYmUgdW5pbnN0YWxsZWQuPC9wPjxicj4KCjxoMz5VcGdyYWRpbmcgZnJvbSBDR0NvbnRlbnRVdGlsczwvaDM+CjxwPkluc3RhbGwgRUNCMiBhbmQgY2hhbmdlIGFsbCAibW9kdWxlIiBwYXJhbWV0ZXJzLCBpbiBjb250ZW50X21vZHVsZSB0YWdzIHRvIGJlIG1vZHVsZT1FQ0IyICh3YXMgIkNHQ29udGVudFV0aWxzIikuPC9wPgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSBtdXN0IHN0YXkgdGhlIHNhbWU8L2xpPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSBjaG9vc2UgdGhlIGFwcHJvcHJpYXRlIEVDQjIgZmllbGQKICAgIDxsaT5vdGhlciBwYXJhbWV0ZXJzIHdpbGwgYmUgcmVxdWlyZWQgZGVwZW5kaW5nIG9uIHRoZSBmaWVsZCBhbmQgcHJlaW92dWlzIG9wdGlvbnMgc2V0IGluIENHQ29udGVudFV0aWxzPC9saT4KPC91bD4KPHA+Q2hlY2sgYWxsIGFyZSB3b3JraW5nIGFzIGV4cGVjdGVkLCB0aGVuIENHQ29udGVudFV0aWxzIGNhbiBiZSB1bmluc3RhbGxlZC48L3A+Cjxicj4KCgo8aDM+U3VwcG9ydDwvaDM+CjxwPkFzIHBlciB0aGUgR1BMIGxpY2VuY2UsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMgaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0IG9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLgpUaGUgbW9kdWxlIGF1dGhvciBpcyBub3Qgb2JsaWdhdGVkIHRvIHByb3ZpZGUgc3VwcG9ydCBmb3IgdGhpcyBjb2RlLiBIb3dldmVyIHlvdSBtaWdodCBnZXQgc3VwcG9ydCB0aHJvdWdoIHRoZSBmb2xsb3dpbmc6PC9wPgo8dWw+CiAgICA8bGk+Rm9yIHN1cHBvcnQsIGZpcnN0IDxzdHJvbmc+c2VhcmNoPC9zdHJvbmc+IHRoZSA8YSBocmVmPSIvL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW08L2E+LCBmb3IgaXNzdWVzIHdpdGggdGhlIG1vZHVsZSBzaW1pbGFyIHRvIHRob3NlIHlvdSBhcmUgZmluZGluZy48L2xpPgogICAgPGxpPlRoZW4sIGlmIG5lY2Vzc2FyeSwgb3BlbiBhIDxzdHJvbmc+bmV3IGZvcnVtIHRvcGljPC9zdHJvbmc+IHRvIHJlcXVlc3QgaGVscCwgd2l0aCBhIHRob3JvdWdoIGRlc2NyaXB0aW9uIG9mIHlvdXIgaXNzdWUsIGFuZCBzdGVwcyB0byByZXByb2R1Y2UgaXQuPC9saT4KICAgIDxsaT5Bc2sgYSBxdWVzdGlvbiBvbiB0aGUgPGEgaHJlZj0iLy9jbXMtbWFkZS1zaW1wbGUuc2xhY2suY29tIiB0YXJnZXQ9Il9ibGFuayI+Q01TIE1hZGUgU2ltcGxlIFNsYWNrIGNoYW5uZWw8L2E+LCBvciBqdXN0IHNoYXJlIHlvdSB0aG91Z2h0cyBpZiB5b3UgZm91bmQgdGhlIE1vZHVsZSB1c2VmdWwuIDxhIGhyZWY9Ii8vd3d3LmNtc21hZGVzaW1wbGUub3JnL3N1cHBvcnQvZG9jdW1lbnRhdGlvbi9jaGF0IiB0YXJnZXQ9Il9ibGFuayI+Sm9pbiBDTVNNUyBvbiBTbGFjazwvYT48L2xpPgogICAgPGxpPklmIHlvdSBmaW5kIGEgYnVnIHlvdSBjYW4gPGEgaHJlZj0iaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9idWcvbGlzdC8xMzY2IiB0YXJnZXQ9Il9ibGFuayI+c3VibWl0IGEgQnVnIFJlcG9ydDwvYT4uPC9saT4KICAgIDxsaT5Gb3IgYW55IGdvb2QgaWRlYXMgeW91IGNhbiA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2ZlYXR1cmVfcmVxdWVzdC9saXN0LzEzNjYiIHRhcmdldD0iX2JsYW5rIj5zdWJtaXQgYSBGZWF0dXJlIFJlcXVlc3Q8L2E+LjwvbGk+CjwvdWw+PGJyPgoKPGgzPlNwb25zb3IgRGV2ZWxvcG1lbnQ8L2gzPgo8cD5JZiB5b3Ugd291bGQgbGlrZSBhIG5ldyBmaWVsZCBvciBmZWF0dXJlIGFkZGVkIHRvIHRoaXMgbW9kdWxlLCBwbGVhc2UgY29udGFjdCBtZS4gWW91IGNhbiBzcG9uc29yIGRldmVsb3BtZW50IGZyb20gwqM1MC48L3A+PGJyPgoKCjxoMz5Db3B5cmlnaHQgJmFtcDsgTGljZW5jZTwvaDM+CjxwPkNvcHlyaWdodCDCqSAyMDE5LCBDaHJpcyBUYXlsb3IgPCBjaHJpcyBhdCBiaW5ub3ZhdGl2ZSBkb3QgY28gZG90IHVrID4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD48YnI+CjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgUHVibGljIExpY2Vuc2UgdjMuIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZCBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiBZb3UgbWF5IG9ubHkgdXNlIHRoaXMgc29mdHdhcmUgd2hlbiB0aGVyZSBpcyBhIGNsZWFyIGFuZCBvYnZpb3VzIGluZGljYXRpb24gaW4gdGhlIGFkbWluIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBTaW1wbGUhPC9wPjxicj4KPGJyPgogICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8L2Rpdj4KPGJyPgoKCg==]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBDaHJpcyBUYXlsb3IgJmx0O2NocmlzQGJpbm5vdmF0aXZlLmNvLnVrJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuOTkuNDxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPgoKCjxoMz5WZXJzaW9uIDEuOTkuPz8/PyAtIDIxSnVsMjIgPz8/PzwvaDM+Cjx1bD4KICAgPGxpPmJ1ZyBmaXggZm9yIHVzaW5nIGEgbW9kdWxlIGNhbGwgJ21vZCcgcGFyYW1ldGVyIC0gaWYgYW55IHBhcmFtZXRlcnMgYmVpbmcgcGFzc2VkIHRocm91Z2ggdG8gdGhlIG1vZHVsZSBjb250YWluIGEgc3BhY2UgaXQgd291bGQgcHJvYmFibHkgY2F1c2UgYW4gZXJyb3IuIEZpeGVkLjwvbGk+CiAgIDxsaT48L2xpPgo8L3VsPgo8YnI+CgoKPGgzPlZlcnNpb24gMS45OS4zIC0gMDZKdWwyMjwvaDM+Cjx1bD4KICAgPGxpPmFkZCBpbiBtb2R1bGUgJ01hbmFnZScgcGVybWlzc2lvbnMgZm9yIGFjY2VzcyB0byBtb2R1bGUgYWRtaW4gcGFnZTwvbGk+CiAgIDxsaT5hZG1pbl9pbWFnZSAtIGJ1ZyBmaXg8L2xpPgo8L3VsPgo8YnI+CgoKPGgzPlZlcnNpb24gMS45OS4xIC0gMDZKdWwyMjwvaDM+Cjx1bD4KICAgPGxpPmFib3V0IHR3ZWFrczwvbGk+CiAgIDxsaT5hZG1pbl9pbWFnZSAtIGVycm9yIG1lc3NhZ2UgYWRkZWQgaWYgaW1hZ2UgZmlsZSBub3QgZm91bmQgcGx1cyBhZGQgaW4gc2FtcGxlIGltYWdlIGZvciBoZWxwIHBhZ2UuPC9saT4KPC91bD4KPGJyPgoKCjxoMz5WZXJzaW9uIDEuOTkgLSAwNUp1bDIyPC9oMz4KPHVsPgogICA8bGk+U2lnbmlmaWNhbnRseSByZWZhY3RvcmVkIG1vZHVsZSwgdG8gZW5hYmxlIGZ1dHVyZSBkZXZlbG9wbWVudCBvZiB0aGUgbW9kdWxlIGFuZCBzaW1wbGlmeSB1c2UuIElzIGZ1bGx5IGNvbXBhdGlibGUgd2l0aCBhbGwgcHJldmlvdXMgdXNhZ2UuIFBsZWFzZSByZXBvcnQgYW55IGlzc3VlcyB5b3UgbWF5IGZpbmQuPC9saT4KICAgPGxpPkV4cGFuZGVkIGhlbHAgY29udGVudCwgd2l0aCBleGFtcGxlIHRhZ3MgYW5kIGRlbW8gY29udGVudCBibG9ja3MgZm9yIGFsbCBmaWVsZCB0eXBlcy48L2xpPgogICA8bGk+U29tZSBmaWVsZCB0eXBlcyBoYXZlIGJlZW4gcmVuYW1lZCwgdG8gbWFrZSB0aGVpciB1c2UgbW9yZSBvYnZpb3VzLiBBbGwgcHJldmlvdXMgZmllbGQgdHlwZXMgYXJlIGZ1bGx5IHN1cHBvcnRlZCBhcyBhbiBhbGlhcyBmb3IgdGhlIG5ldyBmaWVsZCBuYW1lPC9saT4KICAgPGxpPid0ZXh0aW5wdXQnIGZpZWxkIHJlcGxhY2VzICdpbnB1dCcsIGZpZWxkPWlucHV0IGlzIGEgZnVsbHkgc3VwcG9ydGVkIGFsaWFzPC9saT4KICAgPGxpPid0ZXh0YXJlYScgZmllbGQgcmVwbGFjZXMgJ2VkaXRvcicsIHdpdGggYSB3eXNpd3lnIG9wdGlvbiBhZGRlZCAoZGVmYXVsdD1mYWxzZSkuIGZpZWxkPWVkaXRvciBpcyBhIGZ1bGx5IHN1cHBvcnRlZCBhbGlhczwvbGk+CiAgIDxsaT4nZHJvcGRvd24nIGZpZWxkIG5vdyByZXBsYWNlcyAnZHJvcGRvd25fZnJvbV9tb2R1bGUnLCAnZHJvcGRvd25fZnJvbV91ZHQnLCAnZHJvcGRvd25fZnJvbV9jdXN0b21ncycgJiAnZHJvcGRvd25fZnJvbV9nYmMnLCBwbHVzIGhhcyBhIG5ldyBhbGlhcyAnc2VsZWN0Jy4gQSBuZXcgJ3RlbXBsYXRlJyBwYXJhbWV0ZXIgZW5hYmxlcyBkcm9wZG93biB2YWx1ZXMgdG8gYmUgcmV0cmlldmVkIGZyb20gYSBzbWFydHkgdGVtcGxhdGUgKCdnY2InIHBhcmFtZXRlciBpcyBhcyBhbGlhcykuIEEgc2FtcGxlIExJU0UgbW9kdWxlIHRlbXBsYXRlIGFkZGVkIGludG8gaGVscDwvbGk+CiAgIDxsaT4nY2hlY2tib3gnIC0gYWRkZWQgYW4gaW5saW5lX2xhYmVsIG9wdGlvbjwvbGk+CiAgIDxsaT4ncmFkaW8nIC0gYWRkZWQgJ2ZsaXBfdmFsdWVzJyBvcHRpb24gLSBzd2FwcyB0aGUgZHJvcGRvd25zIHZhbHVlcyA8LT4gdGV4dDwvbGk+CiAgIDxsaT4nZGF0ZV90aW1lX3BpY2tlcicgZmllbGQgcmVwbGFjZXMgJ2RhdGVwaWNrZXInIGFuZCAndGltZXBpY2tlcicgd2l0aCBib3RoIGZ1bGx5IHN1cHBvcnRlZCBhcyBhbGlhc2VzPC9saT4KICAgPGxpPnBhcmFtZXRlciAnZGVmYXVsdCcgbm93IHVzZWQgaW5zdGVhZCBvZiAnZGVmYXVsdF92YWx1ZScsICgnZGVmYXVsdF92YWx1ZScgcGFyYW1ldGVyIGlzIGFuIGFsaWFzKSAtIGZvciBhbGwgZmllbGRzIHRoYXQgY2FuIGhhdmUgYSBkZWZhdWx0PC9saT4KICAgPGxpPidwYWdlX3BpY2tlcicsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAncGFnZXMnPC9saT4KICAgPGxpPidtb2R1bGVfcGlja2VyJywgcmVuYW1lZCBmcm9tIHRoZSBub3cgYWxpYXM6ICdtb2R1bGUnPC9saT4KICAgPGxpPidhZG1pbl9maWVsZHNldF9zdGFydCcsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAnZmllbGRzZXRfc3RhcnQnPC9saT4KICAgPGxpPidhZG1pbl9maWVsZHNldF9lbmQnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ2ZpZWxkc2V0X2VuZCc8L2xpPgogICA8bGk+J2FkbWluX2hyJywgcmVuYW1lZCBmcm9tIHRoZSBub3cgYWxpYXM6ICdocic8L2xpPgogICA8bGk+J2FkbWluX2ltYWdlJywgcmVuYW1lZCBmcm9tIHRoZSBub3cgYWxpYXM6ICdpbWFnZSc8L2xpPgogICA8bGk+J2FkbWluX2xpbmsnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ2xpbmsnPC9saT4KICAgPGxpPidhZG1pbl9tb2R1bGVfbGluaycsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAnbW9kdWxlX2xpbmsnPC9saT4KICAgPGxpPidhZG1pbl90ZXh0JywgcmVuYW1lZCBmcm9tIHRoZSBub3cgYWxpYXM6ICd0ZXh0JzwvbGk+CiAgIDxsaT5hZGRlZCBzYW1wbGUgTElTRSB0ZW1wbGF0ZSBpbnRvIGhlbHA8L2xpPgo8L3VsPgo8YnI+CgoKPGgzPlZlcnNpb24gMS44IC0gMjJKdW4yMjwvaDM+Cjx1bD4KICAgPGxpPmRyb3Bkb3duICYgc29ydGFibGVsaXN0IC0gJ21vZCcgb3B0aW9uIGFkZGVkIC0gY2FuIGxvYWQgb3B0aW9ucyBkaXJlY3RseSBmcm9tIGEgbW9kdWxlcyB0ZW1wbGF0ZTwvbGk+CiAgIDxsaT5kcm9wZG93biAmIHNvcnRhYmxlbGlzdCAtICdmbGlwX3ZhbHVlcycgb3B0aW9uIGFkZGVkIC0gc3dhcHMgdGhlIGRyb3Bkb3ducyB2YWx1ZXMgPC0+IHRleHQuIENhbiBzaW1wbGlmeSB1c2luZyBkYXRhIGZyb20gYW5vdGhlciBzb3VyY2UuPC9saT4KICAgPGxpPnVuZG9jdW1lbnRlZCAmIG5vbi1mdW5jdGlvbmluZyBtZXRob2QgZ2V0X2Ryb3Bkb3duX2Zyb21fbW9kdWxlIHJlbW92ZWQuPC9saT4KICAgPGxpPmJ1ZyBmaXggZm9yIHYxLjcgLSBjb2xvcl9waWNrZXIgaGFkIHN0b3BwZWQgd29ya2luZzwvbGk+CiAgIDxsaT50aW1lX3BpY2tlciAmIGNvbG91cl9waWNrZXIganMgbW92ZWQgaW50byBzaW5nbGUgZmlsZSBlY2IyX2FkbWluLmpzPC9saT4KICAgPGxpPmZvcmNlIHJlZnJlc2ggb2YgY3NzICYganMgZmlsZXMgYWZ0ZXIgbW9kdWxlIHVwZGF0ZTwvbGk+CjwvdWw+Cjxicj4KCgo8aDM+VmVyc2lvbiAxLjcgLSAyMEp1bjIyPC9oMz4KPHVsPgogICA8bGk+Y29sb3JfcGlja2VyIC0gY2hhbmdlZCB0byB1c2UgY29scGljayBmb3IgY29uc2lzdGVuY3kgd2l0aCBMSVNFICYgQ3VzdG9tR1MsIGFkZGVkIG9wdGlvbnM6IGNsZWFyX2Nzc19jYWNoZSAmIG5vX2hhc2g8L2xpPgogICA8bGk+aW1hZ2UgLSBhZGRlZCBmaWVsZCB0eXBlIGZvciBkaXNwbGF5aW5nIGFuIGltYWdlIG9uIGFuIGFkbWluIHBhZ2Ugb25seS4gVXNlZnVsbHkgdG8gcHJvdmlkZSBleHRyYSBndWlkYW5jZSB0byBlZGl0b3JzLjwvbGk+CjwvdWw+Cjxicj4KCgo8aDM+VmVyc2lvbiAxLjYuMiAtIDE5SmFuMjI8L2gzPgo8dWw+CiAgIDxsaT5kYXRlcGlja2VyIC0gYWRkIG9wdGlvbnMgZm9yIGNoYW5nZV9tb250aCwgY2hhbmdlX3llYXIsIHllYXJfcmFuZ2U8L2xpPgogICA8bGk+ZGF0ZXBpY2tlciAmIHRpbWVwaWNrZXIgLSBtb3ZlIG91cHV0IGludG8gc21hcnR5IHRlbXBsYXRlICdkYXRlcGlja2VyX3RlbXBsYXRlLnRwbCcsIG1vdmUgY3VzdG9tIGpzIGZyb20gaW5saW5lIGludG8gZWNiMl9hZG1pbi5qczwvbGk+CiAgIDxsaT5idWcgZml4IGZvciBpc19kYXRlcGlja2VyX2xpYl9sb2FkIC0gc28gaXQncyBvbmx5IGxvYWRlZCBvbmNlPC9saT4KPC91bD4KPGJyPgoKCjxoMz5WZXJzaW9uIDEuNi4xIC0gMjdKdWwyMDwvaDM+Cjx1bD4KICAgPGxpPm1vdmUgaGVscCAmIGNoYW5nZWxvZyBpbnRvIHRlbXBsYXRlczwvbGk+CiAgIDxsaT5CdWcgZml4OiBmb3IgJ2NoZWNrYm94JyB1c2luZyBkZWZhdWx0IG9mIHRydWUgKGNoZWNrZWQpIC0gd29yayBhcm91bmQgZm9yIGNvcmUgYnVnPC9saT4KPC91bD4KPGJyPgoKCjxoMz5WZXJzaW9uIDEuNiAtIDAzSnVuMjA8L2gzPgo8dWw+CiAgIDxsaT5hbGwgJ2Ryb3Bkb3duJyBjb250ZW50IGJsb2NrcyBub3cgaGF2ZSB0aGUgb3B0aW9uIGZvciBhICdjb21wYWN0JyBkaXNwbGF5IG9uIHRoZSBhZG1pbiBwYWdlLiBTZXQgImNvbXBhY3Q9MSIgaW4gdGhlIHBhcmFtZXRlcnMgYSBzdW1tYXJ5IG9mIHRoZSBzZWxlY3RlZCBvcHRpb25zIGlzIGRpc3BsYXllZCBhbmQgdGhlIGZ1bGwgc2VsZWN0IGlzIHNob3duL2hpZGRlbiB3aGVuICdlZGl0L2hpZGUnIGlzIGNsaWNrZWQ8L2xpPgogICA8bGk+ZmlsZV9zZWxlY3RvciBjb250ZW50IGJsb2NrIC0gdXBkYXRlZCBub3cgdXNlcyBjb3JlIG1ldGhvZCBpbnN0ZWFkIG9mIENHRXh0ZW5zaW9uczwvbGk+CiAgIDxsaT5yZW1vdmVkIENHRXh0ZW5zaW9ucyBkZXBlbmRhbmN5PC9saT4KICAgPGxpPkJ1ZyBmaXg6IGRlZmF1bHQgdmFsdWUgbm93IHdvcmtzIGZvciBjaGVja2JveCwgaW5wdXQsIHRleHRhcmVhICYgZWRpdG9yIGNvbnRlbnQgYmxvY2tzPC9saT4KPC91bD4KPGJyPgoKCjxoMz5WZXJzaW9uIDEuNS4zIC0gMTdKdW4xOTwvaDM+Cjx1bD4KICAgPGxpPm1pbm9yIGJ1ZyBmaXggaW4gaGVscDwvbGk+CjwvdWw+Cjxicj4KCgo8aDM+VmVyc2lvbiAxLjUuMiAtIDE5RmViMTk8L2gzPgo8dWw+CiAgIDxsaT5idWcgZml4IC0gYWRtaW4ganMgdXBkYXRlZCAtIGZpeGVzIHYxLjUuMSBtdWx0aXBsZSBzZWxlY3QncyAmIGlucHV0X3JlcGVhdGVyIG5vdCB3b3JraW5nIC0gcGxlYXNlIHVwZGF0ZTwvbGk+CjwvdWw+Cjxicj4KCjxoMz5WZXJzaW9uIDEuNS4xIC0gMThGZWIxOTwvaDM+Cjx1bD4KICAgPGxpPmdhbGxlcnlfcGlja2VyIC0gYnVnIGZpeDwvbGk+CjwvdWw+Cjxicj4KCjxoMz5WZXJzaW9uIDEuNSAtIDE2RmViMTk8L2gzPgo8dWw+CiAgIDxsaT5pbnB1dF9yZXBlYXRlciBjb250ZW50IGJsb2NrIC0gYWRkZWQgLSB0aGFua3MgdG8gU2ltb24gUmFkZm9yZDwvbGk+CiAgIDxsaT5nYWxsZXJ5X3BpY2tlciBjb250ZW50IGJsb2NrIC0gYWRkZWQ8L2xpPgogICA8bGk+ZHJvcGRvd25fZnJvbV9jdXN0b21ncyBjb250ZW50IGJsb2NrIC0gYWRkZWQ8L2xpPgogICA8bGk+YWRkZWQgZXJyb3IgbWVzc2FnZSBmb3IgbWlzc2luZyBvciBpbmNvcnJlY3RseSBzcGVsdCBmaWVsZCBwYXJhbWF0ZXIgLSBCUiMxMTU1NyAtIHRoYW5rcyBMdWRnZXI8L2xpPgogICA8bGk+cmVtb3ZlZCBBZG1pbiBwYWdlIHRoYXQgb25seSBzaG93ZWQgaGVscCAtIHJlZHVuZGFudCBhcyBoZWxwIGVhc2lseSB2aXNpYmxlIGZyb20gd2l0aGluIE1vZHVsZSBNYW5hZ2VyPC9saT4KICAgPGxpPnJlbW92ZWQgUGVybWlzc2lvbiAnVXNlIEVDQjInIC0gYWxzbyByZWR1bmRhbnQ8L2xpPgogICA8bGk+Y29kZSB0aWR5IHVwIC0gY29uc29saWRhdGUganMgJiBjc3MgaW50byBzZXBhcmF0ZSBleHRlcm5hbCBmaWxlczwvbGk+CjwvdWw+Cjxicj4KCjxoMz5WZXJzaW9uIDEuMy4xIC0gMTJKdWwxNzwvaDM+Cjx1bD4KICAgPGxpPm1pbm9yIGJ1ZyBmaXg8L2xpPgo8L3VsPgo8YnI+Cgo8aDM+VmVyc2lvbiAxLjMgLSAxMUp1bDE3PC9oMz4KPHVsPgogICA8bGk+c29ydGFibGVsaXN0IC0gYWRkZWQgbWF4X251bWJlciBhbmQgcmVxdWlyZWRfbnVtYmVyIG9wdGlvbnM8L2xpPgogICA8bGk+QWRkZWQgJ2ZpZWxkc2V0X3N0YXJ0JyBhbmQgJ2ZpZWxkc2V0X2VuZCcgZmllbGRzPC9saT4KPC91bD4KPGJyPgoKPGgzPlZlcnNpb24gMS4yLjIgLSAwNUp1bDE3PC9oMz4KPHVsPgogICA8bGk+dGVzdCBmb3IgYW5kIGRpc3BsYXkgd2FybmluZyBpbiBhZG1pbiBpZiBVRFQgZG9lcyBub3QgZXhpc3Q8L2xpPgo8L3VsPgo8YnI+Cgo8aDM+VmVyc2lvbiAxLjIuMSAtIDE5QXByMTc8L2gzPgo8dWw+CiAgIDxsaT5idWcgZml4IGZvciBjb2xvcl9waWNrZXIsIGRlZmF1bHRfdmFsdWUgLSBCUiMxMTM1NCAtIHRoYW5rcyBTdHVhcnQ8L2xpPgogICA8bGk+Y29sb3JfcGlja2VyIC0gdHdlYWtlZCBsYXlvdXQ8L2xpPgogICA8bGk+c29ydGFibGVsaXN0IC0gbm93IHVzZSBqcXVlcnkgc29ydGFibGUgaW5zdGVhZCBvZiBDR0V4dGVuc2lvbnMuIFBhcmFtZXRlcnMgcmVtb3ZlZDogJ3RlbXBsYXRlJy4gUGFyYW1ldGVycyBub3Qgb3BlcmF0aW9uYWw6ICdtYXhfc2VsZWN0ZWQnLCAnYWxsb3dkdXBsaWNhdGVzJyAocGxlYXNlIGFkdmlzZSBpZiB5b3UgcmVxdWlyZSB0aGVzZSkuIFBsdXMgc29tZSBidWcgZml4ZXMuPC9saT4KPC91bD4KPGJyPgoKPGgzPlZlcnNpb24gMS4yIC0gMDdOb3YxNjwvaDM+Cjx1bD4KICAgPGxpPkFkZGVkICdkZXNjcmlwdGlvbicgcGFyYW1ldGVyIGZvciBhbGwgZmllbGRzIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KICAgPGxpPkFkZGVkICdoaWRkZW4nIGZpZWxkIC0gQ2FuIGJlIHVzZWQgdG8gc2V0IGEgcGFnZSBhdHRyaWJ1dGUgdGhhdCBjYW4gdGhlbiBiZSBhY2Nlc3NlZCAoZS5nLiBmcm9tIGEgTmF2aWdhdG9yLVRlbXBsYXRlKSwgdXNpbmcge3BhZ2VfYXR0ciBwYWdlPSRub2RlLT5hbGlhcyBrZXk9J3Rlc3RoaWRkZW4nfTwvbGk+CiAgIDxsaT5CdWcgZml4IC0gZm9yIHBocCBub3RpY2U8L2xpPgo8L3VsPgo8YnI+Cgo8aDM+VmVyc2lvbiAxLjEgLSAxNUFwcjE2PC9oMz4KPHVsPgogICAgPGxpPkJ1ZyBmaXg8L2xpPgo8L3VsPgo8YnI+Cgo8aDM+VmVyc2lvbiAxLjAgLSAxNUFwcjE2PC9oMz4KPHVsPgogICAgPGxpPkluaXRpYWwgcmVsZWFzZS4gQSBmb3JrIG9mIEVDQiBtb2R1bGUgdjEuNiwgdGhhdCBpcyBjb21wYXRpYmxlIHdpdGggQ01TTVMgdjIrPC9saT4KICAgIDxsaT5BZGRlZCByYWRpbyBmaWVsZCAtIHRvIHByb3ZpZGUgcmFkaW8gYnV0dG9ucyBvbiBhbiBhZG1pbiBwYWdlPC9saT4KPC91bD4KPGJyPjxiciAvPg==]]></about>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKaWYgKCAhZGVmaW5lZCgnQ01TX1ZFUlNJT04nKSApIGV4aXQ7CgojIyBub3RoaW5nIC0gc2hvdWxkIG5vdCBnZXQgaGVyZQoKCg==]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppZiAoICFkZWZpbmVkKCdDTVNfVkVSU0lPTicpICkgZXhpdDsKCmlmKCAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbihFQ0IyOjpNQU5BR0VfUEVSTSkgKSB7CiAgICAkdGhpcy0+U2hvd0Vycm9ycyggJHRoaXMtPkxhbmcoJ25lZWRfcGVybWlzc2lvbicpICk7CiAgICByZXR1cm47Cn0KCmVjaG8gJHRoaXMtPmdldF9oZWxwKCk7CgoK]]></data>
	</file>
	<file>
	  <filename>/ECB2.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQSBmb3JrIG9mIG1vZHVsZTogRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MgKEVDQikKIyBPcmlnaW5hbCBBdXRob3I6IFpkZW5vIEt1em1hbnkgKHpkZW5vQGt1em1hbnkuYml6KSAvIGt1em1hbnkuYml6ICAvIHR3aXR0ZXIuY29tL2t1em1hbnkKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgUHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMgTW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvZWNiMgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzCiMgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOwojIHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCiMgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uCiMgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpjbGFzcyBFQ0IyIGV4dGVuZHMgXENNU01vZHVsZSB7CgogICAgY29uc3QgTU9EVUxFX1ZFUlNJT04gPSAnMS45OS40JzsKICAgIGNvbnN0IE1BTkFHRV9QRVJNID0gJ21hbmFnZV9lY2IyJzsKCiAgICBjb25zdCBGSUVMRF9UWVBFUyA9IFsKICAgICAgICAndGV4dGlucHV0JywKICAgICAgICAndGV4dGFyZWEnLAogICAgICAgICdkcm9wZG93bicsCiAgICAgICAgJ3NvcnRhYmxlbGlzdCcsCiAgICAgICAgJ2NoZWNrYm94JywKICAgICAgICAncmFkaW8nLAogICAgICAgICdjb2xvcl9waWNrZXInLAogICAgICAgICdkYXRlX3RpbWVfcGlja2VyJywKICAgICAgICAnZmlsZV9zZWxlY3RvcicsCiAgICAgICAgJ3BhZ2VfcGlja2VyJywKICAgICAgICAnZ2FsbGVyeV9waWNrZXInLAogICAgICAgICdtb2R1bGVfcGlja2VyJywKICAgICAgICAnaGlkZGVuJywKICAgICAgICAnaW5wdXRfcmVwZWF0ZXInLAogICAgICAgICAgICAvLyBhZG1pbiBvbmx5IGZpZWxkcyBiZWxvdyBoZXJlLi4uIChvbmx5IGJlY2F1c2Ugb2YgYSBoZWxwIHN1YmhlYWRpbmcpCiAgICAgICAgJ2FkbWluX2ZpZWxkc2V0X3N0YXJ0JywKICAgICAgICAnYWRtaW5fZmllbGRzZXRfZW5kJywKICAgICAgICAnYWRtaW5faHInLAogICAgICAgICdhZG1pbl9pbWFnZScsCiAgICAgICAgJ2FkbWluX2xpbmsnLAogICAgICAgICdhZG1pbl9tb2R1bGVfbGluaycsCiAgICAgICAgJ2FkbWluX3RleHQnCiAgICBdOwogICAgY29uc3QgRklSU1RfQURNSU5fT05MWV9GSUVMRCA9ICdhZG1pbl9maWVsZHNldF9zdGFydCc7ICAgIC8vIG9ubHkgdG8gdHJpZ2dlciBoZWxwIHN1YmhlYWRpbmcKICAgIGNvbnN0IEZJRUxEX0FMSUFTRVMgPSBbCiAgICAgICAgJ2lucHV0JyA9PiAndGV4dGlucHV0JywKICAgICAgICAnZWRpdG9yJyA9PiAndGV4dGFyZWEnLAogICAgICAgICdkcm9wZG93bl9mcm9tX21vZHVsZScgPT4gJ2Ryb3Bkb3duJywgCiAgICAgICAgJ2Ryb3Bkb3duX2Zyb21fdWR0JyA9PiAnZHJvcGRvd24nLAogICAgICAgICdkcm9wZG93bl9mcm9tX2diYycgPT4gJ2Ryb3Bkb3duJywgCiAgICAgICAgJ2Ryb3Bkb3duX2Zyb21fY3VzdG9tZ3MnID0+ICdkcm9wZG93bicsCiAgICAgICAgJ3RpbWVwaWNrZXInID0+ICdkYXRlX3RpbWVfcGlja2VyJywKICAgICAgICAnZGF0ZXBpY2tlcicgPT4gJ2RhdGVfdGltZV9waWNrZXInLAogICAgICAgICdwYWdlcycgPT4gJ3BhZ2VfcGlja2VyJywKICAgICAgICAnbW9kdWxlJyA9PiAnbW9kdWxlX3BpY2tlcicsCiAgICAgICAgJ2ZpZWxkc2V0X3N0YXJ0JyA9PiAnYWRtaW5fZmllbGRzZXRfc3RhcnQnLAogICAgICAgICdmaWVsZHNldF9lbmQnID0+ICdhZG1pbl9maWVsZHNldF9lbmQnLAogICAgICAgICdocicgPT4gJ2FkbWluX2hyJywKICAgICAgICAndGV4dCcgPT4gJ2FkbWluX3RleHQnLAogICAgICAgICdsaW5rJyA9PiAnYWRtaW5fbGluaycsCiAgICAgICAgJ21vZHVsZV9saW5rJyA9PiAnYWRtaW5fbW9kdWxlX2xpbmsnLAogICAgICAgICdpbWFnZScgPT4gJ2FkbWluX2ltYWdlJwogICAgXTsKCiAgICBjb25zdCBGSUVMRF9ERUZfUFJFRklYID0gJ2VjYjJmZF8nOwogICAgY29uc3QgRklFTERfREVGX0NMQVNTX1BSRUZJWCA9ICdjbGFzcy4nOwogICAgY29uc3QgSU5QVVRfVEVNUExBVEVfUFJFRklYID0gJ2lucHV0Lic7CiAgICBjb25zdCBIRUxQX1RFTVBMQVRFX1BSRUZJWCA9ICdoZWxwLic7CiAgICBjb25zdCBERU1PX0JMT0NLX1BSRUZJWCA9ICdkZW1vXyc7CgogICAgcHVibGljIGZ1bmN0aW9uIEdldE5hbWUoKSB7IHJldHVybiAnRUNCMic7ICB9CiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpOyB9CiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsgcmV0dXJuIHNlbGY6Ok1PRFVMRV9WRVJTSU9OOyB9CiAgICBwdWJsaWMgZnVuY3Rpb24gTWluaW11bUNNU1ZlcnNpb24oKSB7IHJldHVybiAnMi4wJzsgfQogICAgcHVibGljIGZ1bmN0aW9uIExhenlMb2FkRnJvbnRlbmQoKSB7IHJldHVybiB0cnVlOyB9ICAgICAgICAgLy8gPz8/Pz8/Pz8/Pz8/Pz8KICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRBdXRob3IoKSB7IHJldHVybiAnQ2hyaXMgVGF5bG9yJzsgfQogICAgcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkgeyByZXR1cm4gJ2NocmlzQGJpbm5vdmF0aXZlLmNvLnVrJzsgfQogICAgcHVibGljIGZ1bmN0aW9uIEdldENoYW5nZUxvZygpIHsgcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ19jaGFuZ2Vsb2cudHBsJyk7IH0KICAgIHB1YmxpYyBmdW5jdGlvbiBHZXREZXNjcmlwdGlvbigpIHsgcmV0dXJuICR0aGlzLT5MYW5nKCdtb2R1bGVfZGVzY3JpcHRpb24nKTsgfQogICAgcHVibGljIGZ1bmN0aW9uIEdldEhlbHAoKSB7IHJldHVybiAkdGhpcy0+Z2V0X2hlbHAoKTsgfQogICAgcHVibGljIGZ1bmN0aW9uIEhhc0FkbWluKCkgeyByZXR1cm4gdHJ1ZTt9CiAgICBwdWJsaWMgZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyKCkgeyByZXR1cm4gKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKHNlbGY6Ok1BTkFHRV9QRVJNKSApOyB9CiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0SGVhZGVySFRNTCgpIHsgcmV0dXJuICAkdGhpcy0+b3V0cHV0X2FkbWluX2Nzc19qcygpOyB9CiAgICBwdWJsaWMgZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7fQogICAgcHVibGljIGZ1bmN0aW9uIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3R1bmluc3RhbGwnKTt9CiAgICBwdWJsaWMgZnVuY3Rpb24gVW5pbnN0YWxsUHJlTWVzc2FnZSgpIHsgcmV0dXJuICR0aGlzLT5MYW5nKCdyZWFsbHlfdW5pbnN0YWxsJyk7fQoKCiAgICBmdW5jdGlvbiBIYXNDYXBhYmlsaXR5KCAkY2FwYWJpbGl0eSwgJHBhcmFtcyA9IFtdICkgCiAgICB7CiAgICAgICAgc3dpdGNoICgkY2FwYWJpbGl0eSkgewogICAgICAgICAgICBjYXNlICdjb250ZW50YmxvY2tzJzoKICAgICAgICAgICAgICAgIHJldHVybiBUUlVFOwoKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgCiAgICB7CiAgICAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgpOwoKICAgICAgICBzcGxfYXV0b2xvYWRfcmVnaXN0ZXIoIGFycmF5KCR0aGlzLCAnX2F1dG9sb2FkZXInKSApOwoKICAgICAgICBcQ01TTVNcSG9va01hbmFnZXI6OmFkZF9ob29rKCAnQ29yZTo6Q29udGVudEVkaXRQcmUnLCBbICR0aGlzLCAnQ29udGVudEVkaXRQcmUnIF0gKTsKICAgIH0KCgoKICAgIC8qKgogICAgICogIEludGVybmFsIGF1dG9sb2FkZXIKICAgICAqLwogICAgcHJpdmF0ZSBmaW5hbCBmdW5jdGlvbiBfYXV0b2xvYWRlcigkY2xhc3NuYW1lKQogICAgewogICAgICAgICRwYXJ0cyA9IGV4cGxvZGUoJ1xcJywgJGNsYXNzbmFtZSk7CiAgICAgICAgJGNsYXNzbmFtZSA9IGVuZCgkcGFydHMpOwogICAgICAgICRmaWVsZGRlZl9kaXIgPSBzdHJfcmVwbGFjZShzZWxmOjpGSUVMRF9ERUZfUFJFRklYLCAnJywgJGNsYXNzbmFtZSk7CiAgICAgICAgJGZuID0gY21zX2pvaW5fcGF0aCggJHRoaXMtPkdldE1vZHVsZVBhdGgoKSwgJ2xpYicsICdmaWVsZGRlZnMnLCAkZmllbGRkZWZfZGlyLAogICAgICAgICAgICBzZWxmOjpGSUVMRF9ERUZfQ0xBU1NfUFJFRklYLiRjbGFzc25hbWUuJy5waHAnICk7CiAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRmbikpIHJlcXVpcmVfb25jZSgkZm4pOwogICAgfQoKCgogICAgcHVibGljIGZ1bmN0aW9uIEluaXRpYWxpemVGcm9udGVuZCgpIAogICAgewogICAgICAgICR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwoKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGhlbHAgY29udGVudCAtIG5vdyB1c2VzIHNtYXJ0eSB0ZW1wbGF0ZXMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9oZWxwKCkKICAgIHsKICAgICAgICBlY2hvICR0aGlzLT5vdXRwdXRfYWRtaW5fY3NzX2pzKCk7CiAgICAgICAgJGZpZWxkX2hlbHAgPSBbXTsKICAgICAgICBmb3JlYWNoKHNlbGY6OkZJRUxEX1RZUEVTIGFzICRmaWVsZF90eXBlKSB7CiAgICAgICAgICAgICR0eXBlID0gc2VsZjo6RklFTERfREVGX1BSRUZJWC4kZmllbGRfdHlwZTsKICAgICAgICAgICAgJGVjYjIgPSBuZXcgJHR5cGUoJHRoaXMsICR0aGlzOjpERU1PX0JMT0NLX1BSRUZJWC4kZmllbGRfdHlwZSwgTlVMTCwgWydmaWVsZCcgPT4gJGZpZWxkX3R5cGVdLCBUUlVFKTsKICAgICAgICAgICAgJGZpZWxkX2hlbHBbJGZpZWxkX3R5cGVdID0gJGVjYjItPmdldF9maWVsZF9oZWxwKCk7CiAgICAgICAgfQoKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJHRoaXMtPkdldFRlbXBsYXRlUmVzb3VyY2UoJ19oZWxwLnRwbCcpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdtb2QnLCAkdGhpcyk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdmaWVsZF90eXBlcycsIHNlbGY6OkZJRUxEX1RZUEVTKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2ZpcnN0X2FkbWluX29ubHlfZmllbGQnLCBzZWxmOjpGSVJTVF9BRE1JTl9PTkxZX0ZJRUxEKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2ZpZWxkX2hlbHAnLCAkZmllbGRfaGVscCk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CgogICAgfQoKCgogICAgLyoqCiAgICAgKiAgbG9hZCBFQ0IyIGFkbWluIGpzICYgY3NzIC0gYnV0IG9ubHkgb25jZSEgLSBlLmcuIGlmIGZpcnN0IEVDQjIgY29udGVudCBibG9jayBvbiB0aGUgcGFnZQogICAgICogIGFsbCBqcyAmIGNzcyBzaG91bGQgYmUgaW4gdGhlc2UgY29tYmluZWQgZmlsZXMgKGZvciBub3cpCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBvdXRwdXRfYWRtaW5fY3NzX2pzKCkKICAgIHsKICAgICAgICBpZiAoY21zX3V0aWxzOjpnZXRfYXBwX2RhdGEoJ0VDQjJfanNfY3NzX2xvYWRlZCcpKSByZXR1cm47CiAgICAgICAgJHBhdGggPSAkdGhpcy0+R2V0TW9kdWxlVVJMUGF0aCgpOwogICAgICAgICRhZG1pbl9jc3NfanMgPSAnCiAgICAgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicuJHBhdGguJy9saWIvY3NzL2VjYjJfYWRtaW4uY3NzP3YnLnNlbGY6Ok1PRFVMRV9WRVJTSU9OLiciPgogICAgICAgICAgICA8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0IiBzcmM9IicuJHBhdGguJy9saWIvanMvZWNiMl9hZG1pbi5qcz92Jy5zZWxmOjpNT0RVTEVfVkVSU0lPTi4nIj48L3NjcmlwdD4nOwogICAgICAgIGNtc191dGlsczo6c2V0X2FwcF9kYXRhKCdFQ0IyX2pzX2Nzc19sb2FkZWQnLCAxKTsKICAgICAgICByZXR1cm4gJGFkbWluX2Nzc19qczsKICAgIH0KCgoKICAgIC8qKgogICAgICogR2V0IHBhZ2UgY29udGVudCByZXByZXNlbnRpbmcgdGhlIFVJIGZvciBhIG1vZHVsZS1jb250ZW50LWJsb2NrCiAgICAgKiBAcGFyYW0gc3RyaW5nICRibG9ja05hbWUKICAgICAqIEBwYXJhbSBtaXhlZCAkdmFsdWUgTWlnaHQgYmUgbnVsbAogICAgICogQHBhcmFtIGFycmF5ICRwYXJhbXMKICAgICAqIEBwYXJhbSBib29sZWFuICRhZGRpbmcgZmxhZyB3aGV0aGVyIHRoaXMgYSBuZXcgcGFnZSBpcyBiZWluZyBwcm9jZXNzZWQKICAgICAqIEBwYXJhbSBvYmplY3QgJGNvbnRlbnRfb2JqIHRoZSBwYWdlIHByb3BlcnRpZXMKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRDb250ZW50QmxvY2tGaWVsZElucHV0KCRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZywgJGNvbnRlbnRfb2JqKSAKICAgIHsKICAgICAgICBpZiAoIGVtcHR5KCRwYXJhbXNbJ2ZpZWxkJ10pICkgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPmVycm9yX21zZyggJHRoaXMtPkxhbmcoJ2ZpZWxkX2Vycm9yJywgJGJsb2NrTmFtZSkgKTsKICAgICAgICB9CgogICAgICAgIC8vIHdvcmthcm91bmQgJGFkZGluZyBub3Qgc2V0IGluIENvbnRlbnRNYW5hZ2VyIHYxLjAgYWN0aW9uIGFkbWluX2VkaXRjb250ZW50CiAgICAgICAgaWYgKCEkYWRkaW5nICYmIHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwgJzIuMScpIDwgMCAmJiAkY29udGVudF9vYmotPklkKCkgPT0gMCkgewogICAgICAgICAgICAkYWRkaW5nID0gdHJ1ZTsKICAgICAgICB9CgogICAgICAgIGVjaG8gJHRoaXMtPm91dHB1dF9hZG1pbl9jc3NfanMoKTsgICAvLyBvdXRwdXQgY3NzICYganMgLSBidXQgb25seSBvbmNlIHBlciBwYWdlCgogICAgICAgIC8vIGhhbmRsZSBmaWVsZCBhbGlhc2VzCiAgICAgICAgaWYgKCAhaW5fYXJyYXkoJHBhcmFtc1snZmllbGQnXSwgc2VsZjo6RklFTERfVFlQRVMpICYmIAogICAgICAgICAgICAgYXJyYXlfa2V5X2V4aXN0cygkcGFyYW1zWydmaWVsZCddLCBzZWxmOjpGSUVMRF9BTElBU0VTKSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZmllbGRfYWxpYXNfdXNlZCddID0gJHBhcmFtc1snZmllbGQnXTsKICAgICAgICAgICAgJHBhcmFtc1snZmllbGQnXSA9IHNlbGY6OkZJRUxEX0FMSUFTRVNbJHBhcmFtc1snZmllbGQnXV07CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGlmICggIWluX2FycmF5KCRwYXJhbXNbImZpZWxkIl0sIHNlbGY6OkZJRUxEX1RZUEVTICkgKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+ZXJyb3JfbXNnKCAkdGhpcy0+TGFuZygnZmllbGRfZXJyb3InLCAkYmxvY2tOYW1lKSApOwogICAgICAgIH0KCiAgICAgICAgJHR5cGUgPSBzZWxmOjpGSUVMRF9ERUZfUFJFRklYLiRwYXJhbXNbImZpZWxkIl07CiAgICAgICAgJGVjYjIgPSBuZXcgJHR5cGUoJHRoaXMsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CiAgICAgICAgcmV0dXJuICRlY2IyLT5nZXRfY29udGVudF9ibG9ja19pbnB1dCgpOwoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQ01TTW9kdWxlIE1ldGhvZHMgYXZhaWxhYmxlIC4uLiAKICAgICAqLwovLyBHZXRDb250ZW50QmxvY2tGaWVsZFZhbHVlKHN0cmluZyAkYmxvY2tOYW1lLCBhcnJheSAkYmxvY2tQYXJhbXMsIGFycmF5ICRpbnB1dFBhcmFtcywgXENvbnRlbnRCYXNlICRjb250ZW50X29iaikgOiBtaXhlZHxmYWxzZQovLyAvLyBSZXR1cm4gYSB2YWx1ZSBmb3IgYSBtb2R1bGUgZ2VuZXJhdGVkIGNvbnRlbnQgYmxvY2sgdHlwZS4KLy8gLy8gVGhpcyBtZWhvZCBpcyBjYWxsZWQgZnJvbSBhIHtjb250ZW50X21vZHVsZX0gdGFnLCB3aGVuIHRoZSBjb250ZW50IGVkaXQgZm9ybSBpcyBiZWluZyBlZGl0ZWQuCi8vIC8vIEdpdmVuIGlucHV0IHBhcmFtZXRlcnMgKGkuZTogdmlhIF9QT1NUIG9yIF9SRVFVRVNUKSwgdGhpcyBtZXRob2Qgd2lsbCBleHRyYWN0IGEgdmFsdWUgZm9yIHRoZSBnaXZlbiBjb250ZW50IGJsb2NrIGluZm9ybWF0aW9uLgovLyAvLyBUaGlzIG1ldGhvZCBjYW4gYmUgb3ZlcnJpZGRlbiBpZiB0aGUgbW9kdWxlIGlzIHByb3ZpZGluZyBjb250ZW50IGJsb2NrIHR5cGVzIHRvIHRoZSBDTVNNUyBjb250ZW50IG9iamVjdHMuCgovLyBWYWxpZGF0ZUNvbnRlbnRCbG9ja0ZpZWxkVmFsdWUoc3RyaW5nICRibG9ja05hbWUsIG1peGVkICR2YWx1ZSwgXGFycnJheSAkYmxvY2twYXJhbXMsIFxjb250ZW50QmFzZSAkY29udGVudF9vYmopIDogc3RyaW5nCi8vIC8vIFZhbGlkYXRlIHRoZSB2YWx1ZSBmb3IgYSBtb2R1bGUgZ2VuZXJhdGVkIGNvbnRlbnQgYmxvY2sgdHlwZS4KLy8gLy8gVGhpcyBtZWhvZCBpcyBjYWxsZWQgZnJvbSBhIHtjb250ZW50X21vZHVsZX0gdGFnLCB3aGVuIHRoZSBjb250ZW50IGVkaXQgZm9ybSBpcyBiZWluZyB2YWxpZGF0ZWQuCi8vIC8vIFRoaXMgbWV0aG9kIGNhbiBiZSBvdmVycmlkZGVuIGlmIHRoZSBtb2R1bGUgaXMgcHJvdmlkaW5nIGNvbnRlbnQgYmxvY2sgdHlwZXMgdG8gdGhlIENNU01TIGNvbnRlbnQgb2JqZWN0cy4KCi8vIFJlbmRlckNvbnRlbnRCbG9ja0ZpZWxkKHN0cmluZyAkYmxvY2tOYW1lLCBzdHJpbmcgJHZhbHVlLCBhcnJheSAkYmxvY2twYXJhbXMsIFxDb250ZW50QmFzZSAkY29udGVudF9vYmopIDogc3RyaW5nCi8vIC8vIFJlbmRlciB0aGUgdmFsdWUgb2YgYSBtb2R1bGUgY29udGVudCBibG9jayBvbiB0aGUgZnJvbnRlbmQgb2YgdGhlIHdlYnNpdGUuCi8vIC8vIFRoaXMgZ2l2ZXMgbW9kdWxlcyB0aGUgb3Bwb3J0dW5pdHkgdG8gcmVuZGVyIGRhdGEgc3RvcmVkIGluIGNvbnRlbnQgYmxvY2tzIGRpZmZlcmVudGx5LgoKCiAgICAvKioKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIENvbnRlbnRFZGl0UHJlKCAkcGFyYW1zICkKICAgIHsKICAgICAgICAkY29udGVudElkID0gJHBhcmFtc1snY29udGVudCddLT5JZCgpOwogICAgICAgICRwcm9wcyA9ICRwYXJhbXNbJ2NvbnRlbnQnXS0+R2V0RWRpdGFibGVQcm9wZXJ0aWVzKCk7CiAgICAgICAgJG5ld19wcm9wcyA9ICRwYXJhbXNbJ2NvbnRlbnQnXS0+UHJvcGVydGllcygpOwogICAgICAgICRjbGVhcl9jc3NfY2FjaGUgPSBmYWxzZTsKCiAgICAgICAgZm9yZWFjaCAoJHByb3BzIGFzICRwcm9wKSB7CiAgICAgICAgICAgIGlmICggISRjbGVhcl9jc3NfY2FjaGUgJiYgaXNzZXQoJHByb3AtPmV4dHJhKSAmJiBpc3NldCgkcHJvcC0+ZXh0cmFbJ21vZHVsZSddKSAmJiAKICAgICAgICAgICAgICAgICAkcHJvcC0+ZXh0cmFbJ21vZHVsZSddPT0nRUNCMicgJiYgaXNzZXQoJHByb3AtPmV4dHJhWydwYXJhbXMnXVsnY2xlYXJfY3NzX2NhY2hlJ10pICkgewogICAgICAgICAgICAgICAgLy8gdGVzdCBpZiB2YWx1ZSBoYXMgY2hhbmdlZAogICAgICAgICAgICAgICAgJGRiID0gQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+R2V0RGIoKTsKICAgICAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgY29udGVudCBGUk9NICcuQ01TX0RCX1BSRUZJWC4nY29udGVudF9wcm9wcyAKICAgICAgICAgICAgICAgICAgICBXSEVSRSBjb250ZW50X2lkID0gPyBBTkQgcHJvcF9uYW1lID0gPyc7CiAgICAgICAgICAgICAgICAkb2xkX3ZhbHVlID0gJGRiLT5HZXRPbmUoICRxdWVyeSwgWyRjb250ZW50SWQsICRwcm9wLT5uYW1lXSApOwogICAgICAgICAgICAgICAgJG5ld192YWx1ZSA9ICRuZXdfcHJvcHNbJHByb3AtPm5hbWVdOwogICAgICAgICAgICAgICAgaWYgKCRuZXdfdmFsdWUgIT0gJG9sZF92YWx1ZSkgJGNsZWFyX2Nzc19jYWNoZSA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCRjbGVhcl9jc3NfY2FjaGUpIHsKICAgICAgICAgICAgJHRoaXMtPkNsZWFyU3R5bGVzaGVldENhY2hlKCk7CiAgICAgICAgfQogICAgfQoKCgogICAgLyoqCiAgICAgKiAgc2hhbWVsZXNzbHkgY29waWVkIGZyb20gQ3VzdG9tR1MgLSB0aGFua3MgUm9sZiAmIEpvcyA6KQogICAgICovCglmdW5jdGlvbiBDbGVhclN0eWxlc2hlZXRDYWNoZSgpCgl7CgkJZm9yZWFjaCAoZ2xvYigiLi4vdG1wL2NhY2hlL3N0eWxlc2hlZXRfY29tYmluZWRfKi5jc3MiKSBhcyAkZmlsZW5hbWUpIHsKCQkJdG91Y2goICRmaWxlbmFtZSwgdGltZSgpIC0gMzYwMDAwICk7CgkJfQoJfQoKCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgaHRtbCBlcnJvciBtZXNzYWdlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBlcnJvcl9tc2coJG1zZykKICAgIHsKICAgICAgICByZXR1cm4gJzxkaXYgY2xhc3M9InBhZ2V3YXJuaW5nIj4nLiRtc2cuJzwvZGl2Pjxicj4nOwogICAgfQoKCgp9CgoK]]></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[PD9waHAKCiRsYW5nWydhYm91dCddID0gJ0Fib3V0JzsKJGxhbmdbJ2FkZF9saW5lJ10gPSAnQWRkIGxpbmUnOwokbGFuZ1snYWRtaW5fb25seV9oZWxwJ10gPSAnQWRtaW4gb25seSBmaWVsZHMnOwokbGFuZ1snYWRtaW5fb25seV9oZWxwX2ludHJvJ10gPSAnVGhlIGZvbGxvd2luZyBmaWVsZHMgYXJlIG9ubHkgdXNlZCB0byBmb3JtYXQgYW5kIGFkZCBjb250ZW50IHRvIHRoZSBhZG1pbiBwYWdlcy4gVGhleSBkbyBub3QgcHJvdmlkZSBhbnkgdXNlZnVsIGNvbnRlbnQgZm9yIHRoZSBmcm9udGVuZCB3ZWJzaXRlIHBhZ2VzLic7CgoKJGxhbmdbJ2NvbnRlbnRfYmxvY2tfbGFiZWxfc2VsZWN0ZWQnXSA9ICdTZWxlY3RlZCc7CiRsYW5nWydjb250ZW50X2Jsb2NrX2xhYmVsX2F2YWlsYWJsZSddID0gJ0F2YWlsYWJsZSc7CiRsYW5nWydjdXN0b21nc19maWVsZF9lcnJvciddID0gIlBsZWFzZSBjcmVhdGUgZmllbGQgJyVzJyBpbiBDdXN0b21HUyI7CgokbGFuZ1snZHJvcF9pdGVtcyddID0gJ05vIGl0ZW1zIHNlbGVjdGVkIC0gZHJvcCBzZWxlY3RlZCBpdGVtcyBoZXJlJzsKJGxhbmdbJ2Ryb3BfcmVxdWlyZWRfaXRlbXMnXSA9ICdEcm9wICVzIHJlcXVpcmVkIGl0ZW1zIGhlcmUnOwoKJGxhbmdbJ2Vycm9yX2ZpbGVuYW1lJ10gPSAnVGhlIGZpbGUgXCclc1wnIGZvciB0aGUgXCclc1wnIHBhcmFtZXRlciBjb3VsZCBub3QgYmUgZm91bmQuJzsKJGxhbmdbJ2V4dGVuZGVkX2NvbnRlbnRfYmxvY2tzJ10gPSAnRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MnOwoKJGxhbmdbJ2ZpZWxkcyddID0gJ0ZpZWxkcyc7CiRsYW5nWydmaWVsZF9lcnJvciddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgY29ycmVjdCBmaWVsZCBwYXJhbWV0ZXIgZm9yIHRoZSBFQ0IyIGNvbnRlbnQgYmxvY2sgXCclc1wnLic7CiRsYW5nWydmaWVsZF90eXBlcyddID0gJ0ZpZWxkIHR5cGVzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0V4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDInOwoKJGxhbmdbJ2dhbGxlcnlfbW9kdWxlX2Vycm9yJ10gPSAnR2FsbGVyeSBtb2R1bGUgaXMgbm90IGluc3RhbGxlZC4nOwoKJGxhbmdbJ2hpZGUnXSA9ICdIaWRlJzsKCiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgdmVyc2lvbiAlcyBpbnN0YWxsZWQuJzsKCiRsYW5nWydtb2R1bGVfZGVzY3JpcHRpb24nXSA9ICdUaGlzIG1vZHVsZSBlbmFibGVzIGV4dHJhIHR5cGVzIG9mIGNvbnRlbnQgYmxvY2sgZm9yIHBhZ2UgdGVtcGxhdGVzJzsKJGxhbmdbJ21vZHVsZV9lcnJvciddID0gJ1RoZSBcJyVzXCcgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUuJzsKCiRsYW5nWyduZWVkX3Blcm1pc3Npb24nXSA9ICdZb3UgbmVlZCBwZXJtaXNzaW9uIHRvIHVzZSB0aGlzIG1vZHVsZSc7CiRsYW5nWydub25lX3NlbGVjdGVkJ10gPSAnLS0tIG5vbmUgLS0tJzsKCiRsYW5nWydwYXJhbWV0ZXJfbWlzc2luZyddID0gJ1BsZWFzZSBzcGVjaWZ5IGEgXCclc1wnIHBhcmFtZXRlciBmb3IgdGhlIEVDQjIgY29udGVudCBibG9jayBcJyVzXCcuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MgMiB3YXMgc3VjY2Vzc2Z1bCBpbnN0YWxsZWQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0V4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIgd2FzIHN1Y2Nlc3NmdWwgdW5pbnN0YWxsZWQnOwoKJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdSZWFsbHk/IEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhlIEVDQjIgbW9kdWxlPyc7CiRsYW5nWydyZW1vdmUnXSA9ICdSZW1vdmUnOwokbGFuZ1sncmVtb3ZlX2xpbmUnXSA9ICdSZW1vdmUgbGluZSc7CgokbGFuZ1snc2VsZWN0ZWQnXSA9ICdTZWxlY3RlZCc7CiRsYW5nWydzZWxlY3QnXSA9ICdTZWxlY3QnOwoKJGxhbmdbJ3RlbXBsYXRlX2Vycm9yJ10gPSAnSW52YWxpZCB0ZW1wbGF0ZSBuYW1lIFwnJXNcJyc7CgokbGFuZ1sndWR0X2Vycm9yJ10gPSAnVXNlciBEZWZpbmVkIFRhZyBcJyVzXCcgZG9lcyBub3QgZXhpc3QnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdNb2R1bGUgVW5pbnN0YWxsZWQuJzsKJGxhbmdbJ3VwZ3JhZGVkJ10gPSAnTW9kdWxlIHVwZ3JhZGVkIHRvIHZlcnNpb24gJXMuJzsKCgoKCgoKCgojIyMgICAgIyMjICAgIyMjIyMjIyMjICAgIyMjICAgICAgICAjIyMjIyMjIyMKIyMjICAgICMjIyAgICMjIyMjIyMjIyAgICMjIyAgICAgICAgIyMjIyMjIyMjCiMjIyAgICAjIyMgICAjIyMgICAgICAgICAjIyMgICAgICAgICMjIyAgICMjIwojIyMjIyMjIyMjICAgIyMjIyMjIyMjICAgIyMjICAgICAgICAjIyMjIyMjIyMKIyMjIyMjIyMjIyAgICMjIyMjIyMjIyAgICMjIyAgICAgICAgIyMjIyMjIyMjCiMjIyAgICAjIyMgICAjIyMgICAgICAgICAjIyMgICAgICAgICMjIwojIyMgICAgIyMjICAgIyMjIyMjIyMjICAgIyMjIyMjIyMjICAjIyMKIyMjICAgICMjIyAgICMjIyMjIyMjIyAgICMjIyMjIyMjIyAgIyMjCgoKCiRsYW5nWydnZW5lcmFsX2MnXSA9IDw8PCdFT0QnCjxwPlRoZSBFeHRlbmRlZCBDb250ZW50IEJsb2NrcyAyIChFQ0IyKSBtb2R1bGUgdG8gZ2l2ZSB5b3UgbW9yZSBwYWdlIGVkaXRpbmcgb3B0aW9ucy4gTWFueSBhZGl0aW9uYWwgY29udGVudCBibG9jayB0eXBlcyBhcmUgYXZhaWxhYmxlIHRvIHVzZSBpbiBlYWNoIHBhZ2UgdGVtcGxhdGUuIGUuZy4gZHJvcGRvd24sIGNvbG91ciBwaWNrZXIsIGNoZWNrYm94LCByYWRpbyBidXR0b24sIGFuZCBtYW55IG1vcmUuPC9wPgo8YnI+Cgo8aDM+VXNhZ2U8L2gzPgo8cD5Vc2UgdGhlIENNU01TIGNvcmUgPGI+e2NvbnRlbnRfbW9kdWxlfTwvYj4gdGFnIHRvIGFkZCBhbGwgRUNCMiBjb250ZW50IGJsb2NrcyB0byBhbnkgcGFnZSB0ZW1wbGF0ZS48L3A+CjxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXNvbWVfZmllbGRfdHlwZSBibG9jaz0nc29tZSBuYW1lJyAuLi59PC9wcmU+CjxwPlRoZSBjb3JlIGNvbnRlbnRfbW9kdWxlIHRhZyBwcm92aWRlcyB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnMgZm9yIEFMTCBvZiB0aGUgRUNCMiBjb250ZW50IGJsb2Nrczo8L3A+Cjx1bD4KICAgIDxsaT5tb2R1bGUgKHJlcXVpcmVkKSAtICdFQ0IyJzwvbGk+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtIG9uZSBvZiBFQ0IyIGZpZWxkIHR5cGVzIGJlbG93PC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmxhYmVsIChvcHRpb25hbCkgLSBBIGxhYmVsIGZvciB0aGUgY29udGVudCBibG9jayBmb3IgdXNlIHdoZW4gZWRpdGluZyB0aGUgcGFnZS48L2xpPgogICAgPGxpPnJlcXVpcmVkIChvcHRpb25hbCkgLSBBbGxvd3Mgc3BlY2lmeWluZyB0aGF0IHRoZSBjb250ZW50IGJsb2NrIG11c3QgY29udGFpbiBzb21lIHRleHQuPC9saT4KICAgIDxsaT50YWIgKG9wdGlvbmFsKSAtIFRoZSBkZXNpcmVkIHRhYiB0byBkaXNwbGF5IHRoaXMgZmllbGQgb24gaW4gdGhlIGVkaXQgZm9ybS48L2xpPgogICAgPGxpPnByaW9yaXR5IChvcHRpb25hbCkgaW50ZWdlciAtIEFsbG93cyBzcGVjaWZ5aW5nIGFuIGludGVnZXIgcHJpb3JpdHkgZm9yIHRoZSBibG9jayB3aXRoaW4gdGhlIHRhYi48L2xpPgogICAgPGxpPmFzc2lnbiAob3B0aW9uYWwpIHN0cmluZyAtIEFzc2lnbiB0aGUgcmVzdWx0cyB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoYXQgbmFtZS48L2xpPgo8L3VsPgoKPHA+PGI+U21hcnR5IHRpcDwvYj46IHBhcmFtZXRlciB2YWx1ZXMgdGhhdCBhcmUgc2luZ2xlLXdvcmQgc3RyaW5ncyBkbyBub3QgaGF2ZSB0byBiZSBxdW90ZWQgZS5nLiBmaWVsZD1jaGVja2JveCBpcyB0aGUgc2FtZSBhcyBmaWVsZD0nY2hlY2tib3gnLjwvcD4KCjxicj48YnI+CkVPRDsKCgokbGFuZ1snYWJvdXRfYyddID0gPDw8J0VPRCcKPHA+RUNCMiBwcm92aWRlcyBhZGRpdGlvbmFsIENvbnRlbnQgQmxvY2tzIGZvciB1c2UgaW4gcGFnZSB0ZW1wbGF0ZXMgZm9yIENNUyBNYWRlIFNpbXBsZSB2MisuPC9wPgo8cD5UaGFua3MgdG8gVG9tIFBoYW5lIEB0b21waCwgZm9yIGhpcyBjb2RlIGltcHJvdmVtZW50cywgb3B0aW1pc2F0aW9ucywgYW5kIGhlbHAgY29udGVudCAoZXNwZWNpYWxseSBhIGdyZWF0IHNpbXBsZSBzbWFydHkgdGlwKS48L3A+CjxwPlRoZSBFQ0IyIG1vZHVsZSBpcyBhIGZvcmsgb2YgdGhlIG1vZHVsZSBFeHRlbmRlZCBDb250ZW50IEJsb2NrcyAoRUNCKSwgZm9yIENNU01TIHYxLCBkZXZlbG9wZWQgYnkgWmRlbm8gS3V6bWFueS48L3A+Cjxicj48YnI+Cgo8aDM+VXBncmFkaW5nIGZyb20gRUNCPC9oMz4KPHA+SW5zdGFsbCBFQ0IyIG1vZHVsZSBhbmQgY2hhbmdlIGFsbCAibW9kdWxlIiBwYXJhbWV0ZXJzLCBpbiBjb250ZW50X21vZHVsZSB0YWdzIHRvIGJlIG1vZHVsZT0iRUNCMiIgKHdhcyAiRUNCIikuIFRoZW4gRUNCIGNhbiBiZSB1bmluc3RhbGxlZC48L3A+PGJyPgoKPGgzPlVwZ3JhZGluZyBmcm9tIENHQ29udGVudFV0aWxzPC9oMz4KPHA+SW5zdGFsbCBFQ0IyIGFuZCBjaGFuZ2UgYWxsICJtb2R1bGUiIHBhcmFtZXRlcnMsIGluIGNvbnRlbnRfbW9kdWxlIHRhZ3MgdG8gYmUgbW9kdWxlPUVDQjIgKHdhcyAiQ0dDb250ZW50VXRpbHMiKS48L3A+CjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIG11c3Qgc3RheSB0aGUgc2FtZTwvbGk+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtIGNob29zZSB0aGUgYXBwcm9wcmlhdGUgRUNCMiBmaWVsZAogICAgPGxpPm90aGVyIHBhcmFtZXRlcnMgd2lsbCBiZSByZXF1aXJlZCBkZXBlbmRpbmcgb24gdGhlIGZpZWxkIGFuZCBwcmVpb3Z1aXMgb3B0aW9ucyBzZXQgaW4gQ0dDb250ZW50VXRpbHM8L2xpPgo8L3VsPgo8cD5DaGVjayBhbGwgYXJlIHdvcmtpbmcgYXMgZXhwZWN0ZWQsIHRoZW4gQ0dDb250ZW50VXRpbHMgY2FuIGJlIHVuaW5zdGFsbGVkLjwvcD4KPGJyPgoKCjxoMz5TdXBwb3J0PC9oMz4KPHA+QXMgcGVyIHRoZSBHUEwgbGljZW5jZSwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcyBpcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQgb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuClRoZSBtb2R1bGUgYXV0aG9yIGlzIG5vdCBvYmxpZ2F0ZWQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGlzIGNvZGUuIEhvd2V2ZXIgeW91IG1pZ2h0IGdldCBzdXBwb3J0IHRocm91Z2ggdGhlIGZvbGxvd2luZzo8L3A+Cjx1bD4KICAgIDxsaT5Gb3Igc3VwcG9ydCwgZmlyc3QgPHN0cm9uZz5zZWFyY2g8L3N0cm9uZz4gdGhlIDxhIGhyZWY9Ii8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bTwvYT4sIGZvciBpc3N1ZXMgd2l0aCB0aGUgbW9kdWxlIHNpbWlsYXIgdG8gdGhvc2UgeW91IGFyZSBmaW5kaW5nLjwvbGk+CiAgICA8bGk+VGhlbiwgaWYgbmVjZXNzYXJ5LCBvcGVuIGEgPHN0cm9uZz5uZXcgZm9ydW0gdG9waWM8L3N0cm9uZz4gdG8gcmVxdWVzdCBoZWxwLCB3aXRoIGEgdGhvcm91Z2ggZGVzY3JpcHRpb24gb2YgeW91ciBpc3N1ZSwgYW5kIHN0ZXBzIHRvIHJlcHJvZHVjZSBpdC48L2xpPgogICAgPGxpPkFzayBhIHF1ZXN0aW9uIG9uIHRoZSA8YSBocmVmPSIvL2Ntcy1tYWRlLXNpbXBsZS5zbGFjay5jb20iIHRhcmdldD0iX2JsYW5rIj5DTVMgTWFkZSBTaW1wbGUgU2xhY2sgY2hhbm5lbDwvYT4sIG9yIGp1c3Qgc2hhcmUgeW91IHRob3VnaHRzIGlmIHlvdSBmb3VuZCB0aGUgTW9kdWxlIHVzZWZ1bC4gPGEgaHJlZj0iLy93d3cuY21zbWFkZXNpbXBsZS5vcmcvc3VwcG9ydC9kb2N1bWVudGF0aW9uL2NoYXQiIHRhcmdldD0iX2JsYW5rIj5Kb2luIENNU01TIG9uIFNsYWNrPC9hPjwvbGk+CiAgICA8bGk+SWYgeW91IGZpbmQgYSBidWcgeW91IGNhbiA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL2J1Zy9saXN0LzEzNjYiIHRhcmdldD0iX2JsYW5rIj5zdWJtaXQgYSBCdWcgUmVwb3J0PC9hPi48L2xpPgogICAgPGxpPkZvciBhbnkgZ29vZCBpZGVhcyB5b3UgY2FuIDxhIGhyZWY9Imh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvZmVhdHVyZV9yZXF1ZXN0L2xpc3QvMTM2NiIgdGFyZ2V0PSJfYmxhbmsiPnN1Ym1pdCBhIEZlYXR1cmUgUmVxdWVzdDwvYT4uPC9saT4KPC91bD48YnI+Cgo8aDM+U3BvbnNvciBEZXZlbG9wbWVudDwvaDM+CjxwPklmIHlvdSB3b3VsZCBsaWtlIGEgbmV3IGZpZWxkIG9yIGZlYXR1cmUgYWRkZWQgdG8gdGhpcyBtb2R1bGUsIHBsZWFzZSBjb250YWN0IG1lLiBZb3UgY2FuIHNwb25zb3IgZGV2ZWxvcG1lbnQgZnJvbSDCozUwLjwvcD48YnI+CgoKPGgzPkNvcHlyaWdodCAmYW1wOyBMaWNlbmNlPC9oMz4KPHA+Q29weXJpZ2h0IMKpIDIwMTksIENocmlzIFRheWxvciA8IGNocmlzIGF0IGJpbm5vdmF0aXZlIGRvdCBjbyBkb3QgdWsgPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPjxicj4KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBQdWJsaWMgTGljZW5zZSB2My4gSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuIFlvdSBtYXkgb25seSB1c2UgdGhpcyBzb2Z0d2FyZSB3aGVuIHRoZXJlIGlzIGEgY2xlYXIgYW5kIG9idmlvdXMgaW5kaWNhdGlvbiBpbiB0aGUgYWRtaW4gc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIFNpbXBsZSE8L3A+PGJyPgo8YnI+CkVPRDsKCgo=]]></data>
	</file>
	<file>
	  <filename>/lang/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/lang/LICENCE.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Iy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBNb2R1bGU6IEVDQjIgLSBFeHRlbmRlZCBDb250ZW50IEJsb2NrcyAyDQojIEF1dGhvcjogQ2hyaXMgVGF5bG9yDQojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51aw0KIyBMaWNlbmNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDMNCiMgICAgICAgICAgc2VlIC9FQ0IyL2xhbmcvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEEgZm9yayBvZiBtb2R1bGU6IEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIChFQ0IpDQojIE9yaWdpbmFsIEF1dGhvcjogWmRlbm8gS3V6bWFueSAoemRlbm9Aa3V6bWFueS5iaXopIC8ga3V6bWFueS5iaXogIC8gdHdpdHRlci5jb20va3V6bWFueQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMTEgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBQcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgTW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvZWNiMg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlDQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzDQojIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOw0KIyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLg0KIyBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQojDQojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLg0KIyBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCiAgICAgICAgICAgICAgICAgICAgR05VIEdFTkVSQUwgUFVCTElDIExJQ0VOU0UNCiAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbiAzLCAyOSBKdW5lIDIwMDcNCg0KIENvcHlyaWdodCAoQykgMjAwNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4gPGh0dHA6Ly9mc2Yub3JnLz4NCiBFdmVyeW9uZSBpcyBwZXJtaXR0ZWQgdG8gY29weSBhbmQgZGlzdHJpYnV0ZSB2ZXJiYXRpbSBjb3BpZXMNCiBvZiB0aGlzIGxpY2Vuc2UgZG9jdW1lbnQsIGJ1dCBjaGFuZ2luZyBpdCBpcyBub3QgYWxsb3dlZC4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByZWFtYmxlDQoNCiAgVGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGlzIGEgZnJlZSwgY29weWxlZnQgbGljZW5zZSBmb3INCnNvZnR3YXJlIGFuZCBvdGhlciBraW5kcyBvZiB3b3Jrcy4NCg0KICBUaGUgbGljZW5zZXMgZm9yIG1vc3Qgc29mdHdhcmUgYW5kIG90aGVyIHByYWN0aWNhbCB3b3JrcyBhcmUgZGVzaWduZWQNCnRvIHRha2UgYXdheSB5b3VyIGZyZWVkb20gdG8gc2hhcmUgYW5kIGNoYW5nZSB0aGUgd29ya3MuICBCeSBjb250cmFzdCwNCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvDQpzaGFyZSBhbmQgY2hhbmdlIGFsbCB2ZXJzaW9ucyBvZiBhIHByb2dyYW0tLXRvIG1ha2Ugc3VyZSBpdCByZW1haW5zIGZyZWUNCnNvZnR3YXJlIGZvciBhbGwgaXRzIHVzZXJzLiAgV2UsIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIHVzZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3N0IG9mIG91ciBzb2Z0d2FyZTsgaXQgYXBwbGllcyBhbHNvIHRvDQphbnkgb3RoZXIgd29yayByZWxlYXNlZCB0aGlzIHdheSBieSBpdHMgYXV0aG9ycy4gIFlvdSBjYW4gYXBwbHkgaXQgdG8NCnlvdXIgcHJvZ3JhbXMsIHRvby4NCg0KICBXaGVuIHdlIHNwZWFrIG9mIGZyZWUgc29mdHdhcmUsIHdlIGFyZSByZWZlcnJpbmcgdG8gZnJlZWRvbSwgbm90DQpwcmljZS4gIE91ciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlcyBhcmUgZGVzaWduZWQgdG8gbWFrZSBzdXJlIHRoYXQgeW91DQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yDQp0aGVtIGlmIHlvdSB3aXNoKSwgdGhhdCB5b3UgcmVjZWl2ZSBzb3VyY2UgY29kZSBvciBjYW4gZ2V0IGl0IGlmIHlvdQ0Kd2FudCBpdCwgdGhhdCB5b3UgY2FuIGNoYW5nZSB0aGUgc29mdHdhcmUgb3IgdXNlIHBpZWNlcyBvZiBpdCBpbiBuZXcNCmZyZWUgcHJvZ3JhbXMsIGFuZCB0aGF0IHlvdSBrbm93IHlvdSBjYW4gZG8gdGhlc2UgdGhpbmdzLg0KDQogIFRvIHByb3RlY3QgeW91ciByaWdodHMsIHdlIG5lZWQgdG8gcHJldmVudCBvdGhlcnMgZnJvbSBkZW55aW5nIHlvdQ0KdGhlc2UgcmlnaHRzIG9yIGFza2luZyB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuICBUaGVyZWZvcmUsIHlvdSBoYXZlDQpjZXJ0YWluIHJlc3BvbnNpYmlsaXRpZXMgaWYgeW91IGRpc3RyaWJ1dGUgY29waWVzIG9mIHRoZSBzb2Z0d2FyZSwgb3IgaWYNCnlvdSBtb2RpZnkgaXQ6IHJlc3BvbnNpYmlsaXRpZXMgdG8gcmVzcGVjdCB0aGUgZnJlZWRvbSBvZiBvdGhlcnMuDQoNCiAgRm9yIGV4YW1wbGUsIGlmIHlvdSBkaXN0cmlidXRlIGNvcGllcyBvZiBzdWNoIGEgcHJvZ3JhbSwgd2hldGhlcg0KZ3JhdGlzIG9yIGZvciBhIGZlZSwgeW91IG11c3QgcGFzcyBvbiB0byB0aGUgcmVjaXBpZW50cyB0aGUgc2FtZQ0KZnJlZWRvbXMgdGhhdCB5b3UgcmVjZWl2ZWQuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUNCm9yIGNhbiBnZXQgdGhlIHNvdXJjZSBjb2RlLiAgQW5kIHlvdSBtdXN0IHNob3cgdGhlbSB0aGVzZSB0ZXJtcyBzbyB0aGV5DQprbm93IHRoZWlyIHJpZ2h0cy4NCg0KICBEZXZlbG9wZXJzIHRoYXQgdXNlIHRoZSBHTlUgR1BMIHByb3RlY3QgeW91ciByaWdodHMgd2l0aCB0d28gc3RlcHM6DQooMSkgYXNzZXJ0IGNvcHlyaWdodCBvbiB0aGUgc29mdHdhcmUsIGFuZCAoMikgb2ZmZXIgeW91IHRoaXMgTGljZW5zZQ0KZ2l2aW5nIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSBpdC4NCg0KICBGb3IgdGhlIGRldmVsb3BlcnMnIGFuZCBhdXRob3JzJyBwcm90ZWN0aW9uLCB0aGUgR1BMIGNsZWFybHkgZXhwbGFpbnMNCnRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoaXMgZnJlZSBzb2Z0d2FyZS4gIEZvciBib3RoIHVzZXJzJyBhbmQNCmF1dGhvcnMnIHNha2UsIHRoZSBHUEwgcmVxdWlyZXMgdGhhdCBtb2RpZmllZCB2ZXJzaW9ucyBiZSBtYXJrZWQgYXMNCmNoYW5nZWQsIHNvIHRoYXQgdGhlaXIgcHJvYmxlbXMgd2lsbCBub3QgYmUgYXR0cmlidXRlZCBlcnJvbmVvdXNseSB0bw0KYXV0aG9ycyBvZiBwcmV2aW91cyB2ZXJzaW9ucy4NCg0KICBTb21lIGRldmljZXMgYXJlIGRlc2lnbmVkIHRvIGRlbnkgdXNlcnMgYWNjZXNzIHRvIGluc3RhbGwgb3IgcnVuDQptb2RpZmllZCB2ZXJzaW9ucyBvZiB0aGUgc29mdHdhcmUgaW5zaWRlIHRoZW0sIGFsdGhvdWdoIHRoZSBtYW51ZmFjdHVyZXINCmNhbiBkbyBzby4gIFRoaXMgaXMgZnVuZGFtZW50YWxseSBpbmNvbXBhdGlibGUgd2l0aCB0aGUgYWltIG9mDQpwcm90ZWN0aW5nIHVzZXJzJyBmcmVlZG9tIHRvIGNoYW5nZSB0aGUgc29mdHdhcmUuICBUaGUgc3lzdGVtYXRpYw0KcGF0dGVybiBvZiBzdWNoIGFidXNlIG9jY3VycyBpbiB0aGUgYXJlYSBvZiBwcm9kdWN0cyBmb3IgaW5kaXZpZHVhbHMgdG8NCnVzZSwgd2hpY2ggaXMgcHJlY2lzZWx5IHdoZXJlIGl0IGlzIG1vc3QgdW5hY2NlcHRhYmxlLiAgVGhlcmVmb3JlLCB3ZQ0KaGF2ZSBkZXNpZ25lZCB0aGlzIHZlcnNpb24gb2YgdGhlIEdQTCB0byBwcm9oaWJpdCB0aGUgcHJhY3RpY2UgZm9yIHRob3NlDQpwcm9kdWN0cy4gIElmIHN1Y2ggcHJvYmxlbXMgYXJpc2Ugc3Vic3RhbnRpYWxseSBpbiBvdGhlciBkb21haW5zLCB3ZQ0Kc3RhbmQgcmVhZHkgdG8gZXh0ZW5kIHRoaXMgcHJvdmlzaW9uIHRvIHRob3NlIGRvbWFpbnMgaW4gZnV0dXJlIHZlcnNpb25zDQpvZiB0aGUgR1BMLCBhcyBuZWVkZWQgdG8gcHJvdGVjdCB0aGUgZnJlZWRvbSBvZiB1c2Vycy4NCg0KICBGaW5hbGx5LCBldmVyeSBwcm9ncmFtIGlzIHRocmVhdGVuZWQgY29uc3RhbnRseSBieSBzb2Z0d2FyZSBwYXRlbnRzLg0KU3RhdGVzIHNob3VsZCBub3QgYWxsb3cgcGF0ZW50cyB0byByZXN0cmljdCBkZXZlbG9wbWVudCBhbmQgdXNlIG9mDQpzb2Z0d2FyZSBvbiBnZW5lcmFsLXB1cnBvc2UgY29tcHV0ZXJzLCBidXQgaW4gdGhvc2UgdGhhdCBkbywgd2Ugd2lzaCB0bw0KYXZvaWQgdGhlIHNwZWNpYWwgZGFuZ2VyIHRoYXQgcGF0ZW50cyBhcHBsaWVkIHRvIGEgZnJlZSBwcm9ncmFtIGNvdWxkDQptYWtlIGl0IGVmZmVjdGl2ZWx5IHByb3ByaWV0YXJ5LiAgVG8gcHJldmVudCB0aGlzLCB0aGUgR1BMIGFzc3VyZXMgdGhhdA0KcGF0ZW50cyBjYW5ub3QgYmUgdXNlZCB0byByZW5kZXIgdGhlIHByb2dyYW0gbm9uLWZyZWUuDQoNCiAgVGhlIHByZWNpc2UgdGVybXMgYW5kIGNvbmRpdGlvbnMgZm9yIGNvcHlpbmcsIGRpc3RyaWJ1dGlvbiBhbmQNCm1vZGlmaWNhdGlvbiBmb2xsb3cuDQoNCiAgICAgICAgICAgICAgICAgICAgICAgVEVSTVMgQU5EIENPTkRJVElPTlMNCg0KICAwLiBEZWZpbml0aW9ucy4NCg0KICAiVGhpcyBMaWNlbnNlIiByZWZlcnMgdG8gdmVyc2lvbiAzIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4NCg0KICAiQ29weXJpZ2h0IiBhbHNvIG1lYW5zIGNvcHlyaWdodC1saWtlIGxhd3MgdGhhdCBhcHBseSB0byBvdGhlciBraW5kcyBvZg0Kd29ya3MsIHN1Y2ggYXMgc2VtaWNvbmR1Y3RvciBtYXNrcy4NCg0KICAiVGhlIFByb2dyYW0iIHJlZmVycyB0byBhbnkgY29weXJpZ2h0YWJsZSB3b3JrIGxpY2Vuc2VkIHVuZGVyIHRoaXMNCkxpY2Vuc2UuICBFYWNoIGxpY2Vuc2VlIGlzIGFkZHJlc3NlZCBhcyAieW91Ii4gICJMaWNlbnNlZXMiIGFuZA0KInJlY2lwaWVudHMiIG1heSBiZSBpbmRpdmlkdWFscyBvciBvcmdhbml6YXRpb25zLg0KDQogIFRvICJtb2RpZnkiIGEgd29yayBtZWFucyB0byBjb3B5IGZyb20gb3IgYWRhcHQgYWxsIG9yIHBhcnQgb2YgdGhlIHdvcmsNCmluIGEgZmFzaGlvbiByZXF1aXJpbmcgY29weXJpZ2h0IHBlcm1pc3Npb24sIG90aGVyIHRoYW4gdGhlIG1ha2luZyBvZiBhbg0KZXhhY3QgY29weS4gIFRoZSByZXN1bHRpbmcgd29yayBpcyBjYWxsZWQgYSAibW9kaWZpZWQgdmVyc2lvbiIgb2YgdGhlDQplYXJsaWVyIHdvcmsgb3IgYSB3b3JrICJiYXNlZCBvbiIgdGhlIGVhcmxpZXIgd29yay4NCg0KICBBICJjb3ZlcmVkIHdvcmsiIG1lYW5zIGVpdGhlciB0aGUgdW5tb2RpZmllZCBQcm9ncmFtIG9yIGEgd29yayBiYXNlZA0Kb24gdGhlIFByb2dyYW0uDQoNCiAgVG8gInByb3BhZ2F0ZSIgYSB3b3JrIG1lYW5zIHRvIGRvIGFueXRoaW5nIHdpdGggaXQgdGhhdCwgd2l0aG91dA0KcGVybWlzc2lvbiwgd291bGQgbWFrZSB5b3UgZGlyZWN0bHkgb3Igc2Vjb25kYXJpbHkgbGlhYmxlIGZvcg0KaW5mcmluZ2VtZW50IHVuZGVyIGFwcGxpY2FibGUgY29weXJpZ2h0IGxhdywgZXhjZXB0IGV4ZWN1dGluZyBpdCBvbiBhDQpjb21wdXRlciBvciBtb2RpZnlpbmcgYSBwcml2YXRlIGNvcHkuICBQcm9wYWdhdGlvbiBpbmNsdWRlcyBjb3B5aW5nLA0KZGlzdHJpYnV0aW9uICh3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uKSwgbWFraW5nIGF2YWlsYWJsZSB0byB0aGUNCnB1YmxpYywgYW5kIGluIHNvbWUgY291bnRyaWVzIG90aGVyIGFjdGl2aXRpZXMgYXMgd2VsbC4NCg0KICBUbyAiY29udmV5IiBhIHdvcmsgbWVhbnMgYW55IGtpbmQgb2YgcHJvcGFnYXRpb24gdGhhdCBlbmFibGVzIG90aGVyDQpwYXJ0aWVzIHRvIG1ha2Ugb3IgcmVjZWl2ZSBjb3BpZXMuICBNZXJlIGludGVyYWN0aW9uIHdpdGggYSB1c2VyIHRocm91Z2gNCmEgY29tcHV0ZXIgbmV0d29yaywgd2l0aCBubyB0cmFuc2ZlciBvZiBhIGNvcHksIGlzIG5vdCBjb252ZXlpbmcuDQoNCiAgQW4gaW50ZXJhY3RpdmUgdXNlciBpbnRlcmZhY2UgZGlzcGxheXMgIkFwcHJvcHJpYXRlIExlZ2FsIE5vdGljZXMiDQp0byB0aGUgZXh0ZW50IHRoYXQgaXQgaW5jbHVkZXMgYSBjb252ZW5pZW50IGFuZCBwcm9taW5lbnRseSB2aXNpYmxlDQpmZWF0dXJlIHRoYXQgKDEpIGRpc3BsYXlzIGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2UsIGFuZCAoMikNCnRlbGxzIHRoZSB1c2VyIHRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoZSB3b3JrIChleGNlcHQgdG8gdGhlDQpleHRlbnQgdGhhdCB3YXJyYW50aWVzIGFyZSBwcm92aWRlZCksIHRoYXQgbGljZW5zZWVzIG1heSBjb252ZXkgdGhlDQp3b3JrIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzIExpY2Vuc2UuICBJZg0KdGhlIGludGVyZmFjZSBwcmVzZW50cyBhIGxpc3Qgb2YgdXNlciBjb21tYW5kcyBvciBvcHRpb25zLCBzdWNoIGFzIGENCm1lbnUsIGEgcHJvbWluZW50IGl0ZW0gaW4gdGhlIGxpc3QgbWVldHMgdGhpcyBjcml0ZXJpb24uDQoNCiAgMS4gU291cmNlIENvZGUuDQoNCiAgVGhlICJzb3VyY2UgY29kZSIgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsNCmZvciBtYWtpbmcgbW9kaWZpY2F0aW9ucyB0byBpdC4gICJPYmplY3QgY29kZSIgbWVhbnMgYW55IG5vbi1zb3VyY2UNCmZvcm0gb2YgYSB3b3JrLg0KDQogIEEgIlN0YW5kYXJkIEludGVyZmFjZSIgbWVhbnMgYW4gaW50ZXJmYWNlIHRoYXQgZWl0aGVyIGlzIGFuIG9mZmljaWFsDQpzdGFuZGFyZCBkZWZpbmVkIGJ5IGEgcmVjb2duaXplZCBzdGFuZGFyZHMgYm9keSwgb3IsIGluIHRoZSBjYXNlIG9mDQppbnRlcmZhY2VzIHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvbmUgdGhhdA0KaXMgd2lkZWx5IHVzZWQgYW1vbmcgZGV2ZWxvcGVycyB3b3JraW5nIGluIHRoYXQgbGFuZ3VhZ2UuDQoNCiAgVGhlICJTeXN0ZW0gTGlicmFyaWVzIiBvZiBhbiBleGVjdXRhYmxlIHdvcmsgaW5jbHVkZSBhbnl0aGluZywgb3RoZXINCnRoYW4gdGhlIHdvcmsgYXMgYSB3aG9sZSwgdGhhdCAoYSkgaXMgaW5jbHVkZWQgaW4gdGhlIG5vcm1hbCBmb3JtIG9mDQpwYWNrYWdpbmcgYSBNYWpvciBDb21wb25lbnQsIGJ1dCB3aGljaCBpcyBub3QgcGFydCBvZiB0aGF0IE1ham9yDQpDb21wb25lbnQsIGFuZCAoYikgc2VydmVzIG9ubHkgdG8gZW5hYmxlIHVzZSBvZiB0aGUgd29yayB3aXRoIHRoYXQNCk1ham9yIENvbXBvbmVudCwgb3IgdG8gaW1wbGVtZW50IGEgU3RhbmRhcmQgSW50ZXJmYWNlIGZvciB3aGljaCBhbg0KaW1wbGVtZW50YXRpb24gaXMgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMgaW4gc291cmNlIGNvZGUgZm9ybS4gIEENCiJNYWpvciBDb21wb25lbnQiLCBpbiB0aGlzIGNvbnRleHQsIG1lYW5zIGEgbWFqb3IgZXNzZW50aWFsIGNvbXBvbmVudA0KKGtlcm5lbCwgd2luZG93IHN5c3RlbSwgYW5kIHNvIG9uKSBvZiB0aGUgc3BlY2lmaWMgb3BlcmF0aW5nIHN5c3RlbQ0KKGlmIGFueSkgb24gd2hpY2ggdGhlIGV4ZWN1dGFibGUgd29yayBydW5zLCBvciBhIGNvbXBpbGVyIHVzZWQgdG8NCnByb2R1Y2UgdGhlIHdvcmssIG9yIGFuIG9iamVjdCBjb2RlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGl0Lg0KDQogIFRoZSAiQ29ycmVzcG9uZGluZyBTb3VyY2UiIGZvciBhIHdvcmsgaW4gb2JqZWN0IGNvZGUgZm9ybSBtZWFucyBhbGwNCnRoZSBzb3VyY2UgY29kZSBuZWVkZWQgdG8gZ2VuZXJhdGUsIGluc3RhbGwsIGFuZCAoZm9yIGFuIGV4ZWN1dGFibGUNCndvcmspIHJ1biB0aGUgb2JqZWN0IGNvZGUgYW5kIHRvIG1vZGlmeSB0aGUgd29yaywgaW5jbHVkaW5nIHNjcmlwdHMgdG8NCmNvbnRyb2wgdGhvc2UgYWN0aXZpdGllcy4gIEhvd2V2ZXIsIGl0IGRvZXMgbm90IGluY2x1ZGUgdGhlIHdvcmsncw0KU3lzdGVtIExpYnJhcmllcywgb3IgZ2VuZXJhbC1wdXJwb3NlIHRvb2xzIG9yIGdlbmVyYWxseSBhdmFpbGFibGUgZnJlZQ0KcHJvZ3JhbXMgd2hpY2ggYXJlIHVzZWQgdW5tb2RpZmllZCBpbiBwZXJmb3JtaW5nIHRob3NlIGFjdGl2aXRpZXMgYnV0DQp3aGljaCBhcmUgbm90IHBhcnQgb2YgdGhlIHdvcmsuICBGb3IgZXhhbXBsZSwgQ29ycmVzcG9uZGluZyBTb3VyY2UNCmluY2x1ZGVzIGludGVyZmFjZSBkZWZpbml0aW9uIGZpbGVzIGFzc29jaWF0ZWQgd2l0aCBzb3VyY2UgZmlsZXMgZm9yDQp0aGUgd29yaywgYW5kIHRoZSBzb3VyY2UgY29kZSBmb3Igc2hhcmVkIGxpYnJhcmllcyBhbmQgZHluYW1pY2FsbHkNCmxpbmtlZCBzdWJwcm9ncmFtcyB0aGF0IHRoZSB3b3JrIGlzIHNwZWNpZmljYWxseSBkZXNpZ25lZCB0byByZXF1aXJlLA0Kc3VjaCBhcyBieSBpbnRpbWF0ZSBkYXRhIGNvbW11bmljYXRpb24gb3IgY29udHJvbCBmbG93IGJldHdlZW4gdGhvc2UNCnN1YnByb2dyYW1zIGFuZCBvdGhlciBwYXJ0cyBvZiB0aGUgd29yay4NCg0KICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgbmVlZCBub3QgaW5jbHVkZSBhbnl0aGluZyB0aGF0IHVzZXJzDQpjYW4gcmVnZW5lcmF0ZSBhdXRvbWF0aWNhbGx5IGZyb20gb3RoZXIgcGFydHMgb2YgdGhlIENvcnJlc3BvbmRpbmcNClNvdXJjZS4NCg0KICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgZm9yIGEgd29yayBpbiBzb3VyY2UgY29kZSBmb3JtIGlzIHRoYXQNCnNhbWUgd29yay4NCg0KICAyLiBCYXNpYyBQZXJtaXNzaW9ucy4NCg0KICBBbGwgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFyZSBncmFudGVkIGZvciB0aGUgdGVybSBvZg0KY29weXJpZ2h0IG9uIHRoZSBQcm9ncmFtLCBhbmQgYXJlIGlycmV2b2NhYmxlIHByb3ZpZGVkIHRoZSBzdGF0ZWQNCmNvbmRpdGlvbnMgYXJlIG1ldC4gIFRoaXMgTGljZW5zZSBleHBsaWNpdGx5IGFmZmlybXMgeW91ciB1bmxpbWl0ZWQNCnBlcm1pc3Npb24gdG8gcnVuIHRoZSB1bm1vZGlmaWVkIFByb2dyYW0uICBUaGUgb3V0cHV0IGZyb20gcnVubmluZyBhDQpjb3ZlcmVkIHdvcmsgaXMgY292ZXJlZCBieSB0aGlzIExpY2Vuc2Ugb25seSBpZiB0aGUgb3V0cHV0LCBnaXZlbiBpdHMNCmNvbnRlbnQsIGNvbnN0aXR1dGVzIGEgY292ZXJlZCB3b3JrLiAgVGhpcyBMaWNlbnNlIGFja25vd2xlZGdlcyB5b3VyDQpyaWdodHMgb2YgZmFpciB1c2Ugb3Igb3RoZXIgZXF1aXZhbGVudCwgYXMgcHJvdmlkZWQgYnkgY29weXJpZ2h0IGxhdy4NCg0KICBZb3UgbWF5IG1ha2UsIHJ1biBhbmQgcHJvcGFnYXRlIGNvdmVyZWQgd29ya3MgdGhhdCB5b3UgZG8gbm90DQpjb252ZXksIHdpdGhvdXQgY29uZGl0aW9ucyBzbyBsb25nIGFzIHlvdXIgbGljZW5zZSBvdGhlcndpc2UgcmVtYWlucw0KaW4gZm9yY2UuICBZb3UgbWF5IGNvbnZleSBjb3ZlcmVkIHdvcmtzIHRvIG90aGVycyBmb3IgdGhlIHNvbGUgcHVycG9zZQ0Kb2YgaGF2aW5nIHRoZW0gbWFrZSBtb2RpZmljYXRpb25zIGV4Y2x1c2l2ZWx5IGZvciB5b3UsIG9yIHByb3ZpZGUgeW91DQp3aXRoIGZhY2lsaXRpZXMgZm9yIHJ1bm5pbmcgdGhvc2Ugd29ya3MsIHByb3ZpZGVkIHRoYXQgeW91IGNvbXBseSB3aXRoDQp0aGUgdGVybXMgb2YgdGhpcyBMaWNlbnNlIGluIGNvbnZleWluZyBhbGwgbWF0ZXJpYWwgZm9yIHdoaWNoIHlvdSBkbw0Kbm90IGNvbnRyb2wgY29weXJpZ2h0LiAgVGhvc2UgdGh1cyBtYWtpbmcgb3IgcnVubmluZyB0aGUgY292ZXJlZCB3b3Jrcw0KZm9yIHlvdSBtdXN0IGRvIHNvIGV4Y2x1c2l2ZWx5IG9uIHlvdXIgYmVoYWxmLCB1bmRlciB5b3VyIGRpcmVjdGlvbg0KYW5kIGNvbnRyb2wsIG9uIHRlcm1zIHRoYXQgcHJvaGliaXQgdGhlbSBmcm9tIG1ha2luZyBhbnkgY29waWVzIG9mDQp5b3VyIGNvcHlyaWdodGVkIG1hdGVyaWFsIG91dHNpZGUgdGhlaXIgcmVsYXRpb25zaGlwIHdpdGggeW91Lg0KDQogIENvbnZleWluZyB1bmRlciBhbnkgb3RoZXIgY2lyY3Vtc3RhbmNlcyBpcyBwZXJtaXR0ZWQgc29sZWx5IHVuZGVyDQp0aGUgY29uZGl0aW9ucyBzdGF0ZWQgYmVsb3cuICBTdWJsaWNlbnNpbmcgaXMgbm90IGFsbG93ZWQ7IHNlY3Rpb24gMTANCm1ha2VzIGl0IHVubmVjZXNzYXJ5Lg0KDQogIDMuIFByb3RlY3RpbmcgVXNlcnMnIExlZ2FsIFJpZ2h0cyBGcm9tIEFudGktQ2lyY3VtdmVudGlvbiBMYXcuDQoNCiAgTm8gY292ZXJlZCB3b3JrIHNoYWxsIGJlIGRlZW1lZCBwYXJ0IG9mIGFuIGVmZmVjdGl2ZSB0ZWNobm9sb2dpY2FsDQptZWFzdXJlIHVuZGVyIGFueSBhcHBsaWNhYmxlIGxhdyBmdWxmaWxsaW5nIG9ibGlnYXRpb25zIHVuZGVyIGFydGljbGUNCjExIG9mIHRoZSBXSVBPIGNvcHlyaWdodCB0cmVhdHkgYWRvcHRlZCBvbiAyMCBEZWNlbWJlciAxOTk2LCBvcg0Kc2ltaWxhciBsYXdzIHByb2hpYml0aW5nIG9yIHJlc3RyaWN0aW5nIGNpcmN1bXZlbnRpb24gb2Ygc3VjaA0KbWVhc3VyZXMuDQoNCiAgV2hlbiB5b3UgY29udmV5IGEgY292ZXJlZCB3b3JrLCB5b3Ugd2FpdmUgYW55IGxlZ2FsIHBvd2VyIHRvIGZvcmJpZA0KY2lyY3VtdmVudGlvbiBvZiB0ZWNobm9sb2dpY2FsIG1lYXN1cmVzIHRvIHRoZSBleHRlbnQgc3VjaCBjaXJjdW12ZW50aW9uDQppcyBlZmZlY3RlZCBieSBleGVyY2lzaW5nIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2Ugd2l0aCByZXNwZWN0IHRvDQp0aGUgY292ZXJlZCB3b3JrLCBhbmQgeW91IGRpc2NsYWltIGFueSBpbnRlbnRpb24gdG8gbGltaXQgb3BlcmF0aW9uIG9yDQptb2RpZmljYXRpb24gb2YgdGhlIHdvcmsgYXMgYSBtZWFucyBvZiBlbmZvcmNpbmcsIGFnYWluc3QgdGhlIHdvcmsncw0KdXNlcnMsIHlvdXIgb3IgdGhpcmQgcGFydGllcycgbGVnYWwgcmlnaHRzIHRvIGZvcmJpZCBjaXJjdW12ZW50aW9uIG9mDQp0ZWNobm9sb2dpY2FsIG1lYXN1cmVzLg0KDQogIDQuIENvbnZleWluZyBWZXJiYXRpbSBDb3BpZXMuDQoNCiAgWW91IG1heSBjb252ZXkgdmVyYmF0aW0gY29waWVzIG9mIHRoZSBQcm9ncmFtJ3Mgc291cmNlIGNvZGUgYXMgeW91DQpyZWNlaXZlIGl0LCBpbiBhbnkgbWVkaXVtLCBwcm92aWRlZCB0aGF0IHlvdSBjb25zcGljdW91c2x5IGFuZA0KYXBwcm9wcmlhdGVseSBwdWJsaXNoIG9uIGVhY2ggY29weSBhbiBhcHByb3ByaWF0ZSBjb3B5cmlnaHQgbm90aWNlOw0Ka2VlcCBpbnRhY3QgYWxsIG5vdGljZXMgc3RhdGluZyB0aGF0IHRoaXMgTGljZW5zZSBhbmQgYW55DQpub24tcGVybWlzc2l2ZSB0ZXJtcyBhZGRlZCBpbiBhY2NvcmQgd2l0aCBzZWN0aW9uIDcgYXBwbHkgdG8gdGhlIGNvZGU7DQprZWVwIGludGFjdCBhbGwgbm90aWNlcyBvZiB0aGUgYWJzZW5jZSBvZiBhbnkgd2FycmFudHk7IGFuZCBnaXZlIGFsbA0KcmVjaXBpZW50cyBhIGNvcHkgb2YgdGhpcyBMaWNlbnNlIGFsb25nIHdpdGggdGhlIFByb2dyYW0uDQoNCiAgWW91IG1heSBjaGFyZ2UgYW55IHByaWNlIG9yIG5vIHByaWNlIGZvciBlYWNoIGNvcHkgdGhhdCB5b3UgY29udmV5LA0KYW5kIHlvdSBtYXkgb2ZmZXIgc3VwcG9ydCBvciB3YXJyYW50eSBwcm90ZWN0aW9uIGZvciBhIGZlZS4NCg0KICA1LiBDb252ZXlpbmcgTW9kaWZpZWQgU291cmNlIFZlcnNpb25zLg0KDQogIFlvdSBtYXkgY29udmV5IGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSwgb3IgdGhlIG1vZGlmaWNhdGlvbnMgdG8NCnByb2R1Y2UgaXQgZnJvbSB0aGUgUHJvZ3JhbSwgaW4gdGhlIGZvcm0gb2Ygc291cmNlIGNvZGUgdW5kZXIgdGhlDQp0ZXJtcyBvZiBzZWN0aW9uIDQsIHByb3ZpZGVkIHRoYXQgeW91IGFsc28gbWVldCBhbGwgb2YgdGhlc2UgY29uZGl0aW9uczoNCg0KICAgIGEpIFRoZSB3b3JrIG11c3QgY2FycnkgcHJvbWluZW50IG5vdGljZXMgc3RhdGluZyB0aGF0IHlvdSBtb2RpZmllZA0KICAgIGl0LCBhbmQgZ2l2aW5nIGEgcmVsZXZhbnQgZGF0ZS4NCg0KICAgIGIpIFRoZSB3b3JrIG11c3QgY2FycnkgcHJvbWluZW50IG5vdGljZXMgc3RhdGluZyB0aGF0IGl0IGlzDQogICAgcmVsZWFzZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFuZCBhbnkgY29uZGl0aW9ucyBhZGRlZCB1bmRlciBzZWN0aW9uDQogICAgNy4gIFRoaXMgcmVxdWlyZW1lbnQgbW9kaWZpZXMgdGhlIHJlcXVpcmVtZW50IGluIHNlY3Rpb24gNCB0bw0KICAgICJrZWVwIGludGFjdCBhbGwgbm90aWNlcyIuDQoNCiAgICBjKSBZb3UgbXVzdCBsaWNlbnNlIHRoZSBlbnRpcmUgd29yaywgYXMgYSB3aG9sZSwgdW5kZXIgdGhpcw0KICAgIExpY2Vuc2UgdG8gYW55b25lIHdobyBjb21lcyBpbnRvIHBvc3Nlc3Npb24gb2YgYSBjb3B5LiAgVGhpcw0KICAgIExpY2Vuc2Ugd2lsbCB0aGVyZWZvcmUgYXBwbHksIGFsb25nIHdpdGggYW55IGFwcGxpY2FibGUgc2VjdGlvbiA3DQogICAgYWRkaXRpb25hbCB0ZXJtcywgdG8gdGhlIHdob2xlIG9mIHRoZSB3b3JrLCBhbmQgYWxsIGl0cyBwYXJ0cywNCiAgICByZWdhcmRsZXNzIG9mIGhvdyB0aGV5IGFyZSBwYWNrYWdlZC4gIFRoaXMgTGljZW5zZSBnaXZlcyBubw0KICAgIHBlcm1pc3Npb24gdG8gbGljZW5zZSB0aGUgd29yayBpbiBhbnkgb3RoZXIgd2F5LCBidXQgaXQgZG9lcyBub3QNCiAgICBpbnZhbGlkYXRlIHN1Y2ggcGVybWlzc2lvbiBpZiB5b3UgaGF2ZSBzZXBhcmF0ZWx5IHJlY2VpdmVkIGl0Lg0KDQogICAgZCkgSWYgdGhlIHdvcmsgaGFzIGludGVyYWN0aXZlIHVzZXIgaW50ZXJmYWNlcywgZWFjaCBtdXN0IGRpc3BsYXkNCiAgICBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzOyBob3dldmVyLCBpZiB0aGUgUHJvZ3JhbSBoYXMgaW50ZXJhY3RpdmUNCiAgICBpbnRlcmZhY2VzIHRoYXQgZG8gbm90IGRpc3BsYXkgQXBwcm9wcmlhdGUgTGVnYWwgTm90aWNlcywgeW91cg0KICAgIHdvcmsgbmVlZCBub3QgbWFrZSB0aGVtIGRvIHNvLg0KDQogIEEgY29tcGlsYXRpb24gb2YgYSBjb3ZlcmVkIHdvcmsgd2l0aCBvdGhlciBzZXBhcmF0ZSBhbmQgaW5kZXBlbmRlbnQNCndvcmtzLCB3aGljaCBhcmUgbm90IGJ5IHRoZWlyIG5hdHVyZSBleHRlbnNpb25zIG9mIHRoZSBjb3ZlcmVkIHdvcmssDQphbmQgd2hpY2ggYXJlIG5vdCBjb21iaW5lZCB3aXRoIGl0IHN1Y2ggYXMgdG8gZm9ybSBhIGxhcmdlciBwcm9ncmFtLA0KaW4gb3Igb24gYSB2b2x1bWUgb2YgYSBzdG9yYWdlIG9yIGRpc3RyaWJ1dGlvbiBtZWRpdW0sIGlzIGNhbGxlZCBhbg0KImFnZ3JlZ2F0ZSIgaWYgdGhlIGNvbXBpbGF0aW9uIGFuZCBpdHMgcmVzdWx0aW5nIGNvcHlyaWdodCBhcmUgbm90DQp1c2VkIHRvIGxpbWl0IHRoZSBhY2Nlc3Mgb3IgbGVnYWwgcmlnaHRzIG9mIHRoZSBjb21waWxhdGlvbidzIHVzZXJzDQpiZXlvbmQgd2hhdCB0aGUgaW5kaXZpZHVhbCB3b3JrcyBwZXJtaXQuICBJbmNsdXNpb24gb2YgYSBjb3ZlcmVkIHdvcmsNCmluIGFuIGFnZ3JlZ2F0ZSBkb2VzIG5vdCBjYXVzZSB0aGlzIExpY2Vuc2UgdG8gYXBwbHkgdG8gdGhlIG90aGVyDQpwYXJ0cyBvZiB0aGUgYWdncmVnYXRlLg0KDQogIDYuIENvbnZleWluZyBOb24tU291cmNlIEZvcm1zLg0KDQogIFlvdSBtYXkgY29udmV5IGEgY292ZXJlZCB3b3JrIGluIG9iamVjdCBjb2RlIGZvcm0gdW5kZXIgdGhlIHRlcm1zDQpvZiBzZWN0aW9ucyA0IGFuZCA1LCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIGNvbnZleSB0aGUNCm1hY2hpbmUtcmVhZGFibGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSwNCmluIG9uZSBvZiB0aGVzZSB3YXlzOg0KDQogICAgYSkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdA0KICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgdGhlDQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UgZml4ZWQgb24gYSBkdXJhYmxlIHBoeXNpY2FsIG1lZGl1bQ0KICAgIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLg0KDQogICAgYikgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdA0KICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgYQ0KICAgIHdyaXR0ZW4gb2ZmZXIsIHZhbGlkIGZvciBhdCBsZWFzdCB0aHJlZSB5ZWFycyBhbmQgdmFsaWQgZm9yIGFzDQogICAgbG9uZyBhcyB5b3Ugb2ZmZXIgc3BhcmUgcGFydHMgb3IgY3VzdG9tZXIgc3VwcG9ydCBmb3IgdGhhdCBwcm9kdWN0DQogICAgbW9kZWwsIHRvIGdpdmUgYW55b25lIHdobyBwb3NzZXNzZXMgdGhlIG9iamVjdCBjb2RlIGVpdGhlciAoMSkgYQ0KICAgIGNvcHkgb2YgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGZvciBhbGwgdGhlIHNvZnR3YXJlIGluIHRoZQ0KICAgIHByb2R1Y3QgdGhhdCBpcyBjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZSwgb24gYSBkdXJhYmxlIHBoeXNpY2FsDQogICAgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLCBmb3IgYSBwcmljZSBubw0KICAgIG1vcmUgdGhhbiB5b3VyIHJlYXNvbmFibGUgY29zdCBvZiBwaHlzaWNhbGx5IHBlcmZvcm1pbmcgdGhpcw0KICAgIGNvbnZleWluZyBvZiBzb3VyY2UsIG9yICgyKSBhY2Nlc3MgdG8gY29weSB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBmcm9tIGEgbmV0d29yayBzZXJ2ZXIgYXQgbm8gY2hhcmdlLg0KDQogICAgYykgQ29udmV5IGluZGl2aWR1YWwgY29waWVzIG9mIHRoZSBvYmplY3QgY29kZSB3aXRoIGEgY29weSBvZiB0aGUNCiAgICB3cml0dGVuIG9mZmVyIHRvIHByb3ZpZGUgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhpcw0KICAgIGFsdGVybmF0aXZlIGlzIGFsbG93ZWQgb25seSBvY2Nhc2lvbmFsbHkgYW5kIG5vbmNvbW1lcmNpYWxseSwgYW5kDQogICAgb25seSBpZiB5b3UgcmVjZWl2ZWQgdGhlIG9iamVjdCBjb2RlIHdpdGggc3VjaCBhbiBvZmZlciwgaW4gYWNjb3JkDQogICAgd2l0aCBzdWJzZWN0aW9uIDZiLg0KDQogICAgZCkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBieSBvZmZlcmluZyBhY2Nlc3MgZnJvbSBhIGRlc2lnbmF0ZWQNCiAgICBwbGFjZSAoZ3JhdGlzIG9yIGZvciBhIGNoYXJnZSksIGFuZCBvZmZlciBlcXVpdmFsZW50IGFjY2VzcyB0byB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBpbiB0aGUgc2FtZSB3YXkgdGhyb3VnaCB0aGUgc2FtZSBwbGFjZSBhdCBubw0KICAgIGZ1cnRoZXIgY2hhcmdlLiAgWW91IG5lZWQgbm90IHJlcXVpcmUgcmVjaXBpZW50cyB0byBjb3B5IHRoZQ0KICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLiAgSWYgdGhlIHBsYWNlIHRvDQogICAgY29weSB0aGUgb2JqZWN0IGNvZGUgaXMgYSBuZXR3b3JrIHNlcnZlciwgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlDQogICAgbWF5IGJlIG9uIGEgZGlmZmVyZW50IHNlcnZlciAob3BlcmF0ZWQgYnkgeW91IG9yIGEgdGhpcmQgcGFydHkpDQogICAgdGhhdCBzdXBwb3J0cyBlcXVpdmFsZW50IGNvcHlpbmcgZmFjaWxpdGllcywgcHJvdmlkZWQgeW91IG1haW50YWluDQogICAgY2xlYXIgZGlyZWN0aW9ucyBuZXh0IHRvIHRoZSBvYmplY3QgY29kZSBzYXlpbmcgd2hlcmUgdG8gZmluZCB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZS4gIFJlZ2FyZGxlc3Mgb2Ygd2hhdCBzZXJ2ZXIgaG9zdHMgdGhlDQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UsIHlvdSByZW1haW4gb2JsaWdhdGVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzDQogICAgYXZhaWxhYmxlIGZvciBhcyBsb25nIGFzIG5lZWRlZCB0byBzYXRpc2Z5IHRoZXNlIHJlcXVpcmVtZW50cy4NCg0KICAgIGUpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbiwgcHJvdmlkZWQNCiAgICB5b3UgaW5mb3JtIG90aGVyIHBlZXJzIHdoZXJlIHRoZSBvYmplY3QgY29kZSBhbmQgQ29ycmVzcG9uZGluZw0KICAgIFNvdXJjZSBvZiB0aGUgd29yayBhcmUgYmVpbmcgb2ZmZXJlZCB0byB0aGUgZ2VuZXJhbCBwdWJsaWMgYXQgbm8NCiAgICBjaGFyZ2UgdW5kZXIgc3Vic2VjdGlvbiA2ZC4NCg0KICBBIHNlcGFyYWJsZSBwb3J0aW9uIG9mIHRoZSBvYmplY3QgY29kZSwgd2hvc2Ugc291cmNlIGNvZGUgaXMgZXhjbHVkZWQNCmZyb20gdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGFzIGEgU3lzdGVtIExpYnJhcnksIG5lZWQgbm90IGJlDQppbmNsdWRlZCBpbiBjb252ZXlpbmcgdGhlIG9iamVjdCBjb2RlIHdvcmsuDQoNCiAgQSAiVXNlciBQcm9kdWN0IiBpcyBlaXRoZXIgKDEpIGEgImNvbnN1bWVyIHByb2R1Y3QiLCB3aGljaCBtZWFucyBhbnkNCnRhbmdpYmxlIHBlcnNvbmFsIHByb3BlcnR5IHdoaWNoIGlzIG5vcm1hbGx5IHVzZWQgZm9yIHBlcnNvbmFsLCBmYW1pbHksDQpvciBob3VzZWhvbGQgcHVycG9zZXMsIG9yICgyKSBhbnl0aGluZyBkZXNpZ25lZCBvciBzb2xkIGZvciBpbmNvcnBvcmF0aW9uDQppbnRvIGEgZHdlbGxpbmcuICBJbiBkZXRlcm1pbmluZyB3aGV0aGVyIGEgcHJvZHVjdCBpcyBhIGNvbnN1bWVyIHByb2R1Y3QsDQpkb3VidGZ1bCBjYXNlcyBzaGFsbCBiZSByZXNvbHZlZCBpbiBmYXZvciBvZiBjb3ZlcmFnZS4gIEZvciBhIHBhcnRpY3VsYXINCnByb2R1Y3QgcmVjZWl2ZWQgYnkgYSBwYXJ0aWN1bGFyIHVzZXIsICJub3JtYWxseSB1c2VkIiByZWZlcnMgdG8gYQ0KdHlwaWNhbCBvciBjb21tb24gdXNlIG9mIHRoYXQgY2xhc3Mgb2YgcHJvZHVjdCwgcmVnYXJkbGVzcyBvZiB0aGUgc3RhdHVzDQpvZiB0aGUgcGFydGljdWxhciB1c2VyIG9yIG9mIHRoZSB3YXkgaW4gd2hpY2ggdGhlIHBhcnRpY3VsYXIgdXNlcg0KYWN0dWFsbHkgdXNlcywgb3IgZXhwZWN0cyBvciBpcyBleHBlY3RlZCB0byB1c2UsIHRoZSBwcm9kdWN0LiAgQSBwcm9kdWN0DQppcyBhIGNvbnN1bWVyIHByb2R1Y3QgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcm9kdWN0IGhhcyBzdWJzdGFudGlhbA0KY29tbWVyY2lhbCwgaW5kdXN0cmlhbCBvciBub24tY29uc3VtZXIgdXNlcywgdW5sZXNzIHN1Y2ggdXNlcyByZXByZXNlbnQNCnRoZSBvbmx5IHNpZ25pZmljYW50IG1vZGUgb2YgdXNlIG9mIHRoZSBwcm9kdWN0Lg0KDQogICJJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24iIGZvciBhIFVzZXIgUHJvZHVjdCBtZWFucyBhbnkgbWV0aG9kcywNCnByb2NlZHVyZXMsIGF1dGhvcml6YXRpb24ga2V5cywgb3Igb3RoZXIgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gaW5zdGFsbA0KYW5kIGV4ZWN1dGUgbW9kaWZpZWQgdmVyc2lvbnMgb2YgYSBjb3ZlcmVkIHdvcmsgaW4gdGhhdCBVc2VyIFByb2R1Y3QgZnJvbQ0KYSBtb2RpZmllZCB2ZXJzaW9uIG9mIGl0cyBDb3JyZXNwb25kaW5nIFNvdXJjZS4gIFRoZSBpbmZvcm1hdGlvbiBtdXN0DQpzdWZmaWNlIHRvIGVuc3VyZSB0aGF0IHRoZSBjb250aW51ZWQgZnVuY3Rpb25pbmcgb2YgdGhlIG1vZGlmaWVkIG9iamVjdA0KY29kZSBpcyBpbiBubyBjYXNlIHByZXZlbnRlZCBvciBpbnRlcmZlcmVkIHdpdGggc29sZWx5IGJlY2F1c2UNCm1vZGlmaWNhdGlvbiBoYXMgYmVlbiBtYWRlLg0KDQogIElmIHlvdSBjb252ZXkgYW4gb2JqZWN0IGNvZGUgd29yayB1bmRlciB0aGlzIHNlY3Rpb24gaW4sIG9yIHdpdGgsIG9yDQpzcGVjaWZpY2FsbHkgZm9yIHVzZSBpbiwgYSBVc2VyIFByb2R1Y3QsIGFuZCB0aGUgY29udmV5aW5nIG9jY3VycyBhcw0KcGFydCBvZiBhIHRyYW5zYWN0aW9uIGluIHdoaWNoIHRoZSByaWdodCBvZiBwb3NzZXNzaW9uIGFuZCB1c2Ugb2YgdGhlDQpVc2VyIFByb2R1Y3QgaXMgdHJhbnNmZXJyZWQgdG8gdGhlIHJlY2lwaWVudCBpbiBwZXJwZXR1aXR5IG9yIGZvciBhDQpmaXhlZCB0ZXJtIChyZWdhcmRsZXNzIG9mIGhvdyB0aGUgdHJhbnNhY3Rpb24gaXMgY2hhcmFjdGVyaXplZCksIHRoZQ0KQ29ycmVzcG9uZGluZyBTb3VyY2UgY29udmV5ZWQgdW5kZXIgdGhpcyBzZWN0aW9uIG11c3QgYmUgYWNjb21wYW5pZWQNCmJ5IHRoZSBJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24uICBCdXQgdGhpcyByZXF1aXJlbWVudCBkb2VzIG5vdCBhcHBseQ0KaWYgbmVpdGhlciB5b3Ugbm9yIGFueSB0aGlyZCBwYXJ0eSByZXRhaW5zIHRoZSBhYmlsaXR5IHRvIGluc3RhbGwNCm1vZGlmaWVkIG9iamVjdCBjb2RlIG9uIHRoZSBVc2VyIFByb2R1Y3QgKGZvciBleGFtcGxlLCB0aGUgd29yayBoYXMNCmJlZW4gaW5zdGFsbGVkIGluIFJPTSkuDQoNCiAgVGhlIHJlcXVpcmVtZW50IHRvIHByb3ZpZGUgSW5zdGFsbGF0aW9uIEluZm9ybWF0aW9uIGRvZXMgbm90IGluY2x1ZGUgYQ0KcmVxdWlyZW1lbnQgdG8gY29udGludWUgdG8gcHJvdmlkZSBzdXBwb3J0IHNlcnZpY2UsIHdhcnJhbnR5LCBvciB1cGRhdGVzDQpmb3IgYSB3b3JrIHRoYXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgaW5zdGFsbGVkIGJ5IHRoZSByZWNpcGllbnQsIG9yIGZvcg0KdGhlIFVzZXIgUHJvZHVjdCBpbiB3aGljaCBpdCBoYXMgYmVlbiBtb2RpZmllZCBvciBpbnN0YWxsZWQuICBBY2Nlc3MgdG8gYQ0KbmV0d29yayBtYXkgYmUgZGVuaWVkIHdoZW4gdGhlIG1vZGlmaWNhdGlvbiBpdHNlbGYgbWF0ZXJpYWxseSBhbmQNCmFkdmVyc2VseSBhZmZlY3RzIHRoZSBvcGVyYXRpb24gb2YgdGhlIG5ldHdvcmsgb3IgdmlvbGF0ZXMgdGhlIHJ1bGVzIGFuZA0KcHJvdG9jb2xzIGZvciBjb21tdW5pY2F0aW9uIGFjcm9zcyB0aGUgbmV0d29yay4NCg0KICBDb3JyZXNwb25kaW5nIFNvdXJjZSBjb252ZXllZCwgYW5kIEluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiBwcm92aWRlZCwNCmluIGFjY29yZCB3aXRoIHRoaXMgc2VjdGlvbiBtdXN0IGJlIGluIGEgZm9ybWF0IHRoYXQgaXMgcHVibGljbHkNCmRvY3VtZW50ZWQgKGFuZCB3aXRoIGFuIGltcGxlbWVudGF0aW9uIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluDQpzb3VyY2UgY29kZSBmb3JtKSwgYW5kIG11c3QgcmVxdWlyZSBubyBzcGVjaWFsIHBhc3N3b3JkIG9yIGtleSBmb3INCnVucGFja2luZywgcmVhZGluZyBvciBjb3B5aW5nLg0KDQogIDcuIEFkZGl0aW9uYWwgVGVybXMuDQoNCiAgIkFkZGl0aW9uYWwgcGVybWlzc2lvbnMiIGFyZSB0ZXJtcyB0aGF0IHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMNCkxpY2Vuc2UgYnkgbWFraW5nIGV4Y2VwdGlvbnMgZnJvbSBvbmUgb3IgbW9yZSBvZiBpdHMgY29uZGl0aW9ucy4NCkFkZGl0aW9uYWwgcGVybWlzc2lvbnMgdGhhdCBhcmUgYXBwbGljYWJsZSB0byB0aGUgZW50aXJlIFByb2dyYW0gc2hhbGwNCmJlIHRyZWF0ZWQgYXMgdGhvdWdoIHRoZXkgd2VyZSBpbmNsdWRlZCBpbiB0aGlzIExpY2Vuc2UsIHRvIHRoZSBleHRlbnQNCnRoYXQgdGhleSBhcmUgdmFsaWQgdW5kZXIgYXBwbGljYWJsZSBsYXcuICBJZiBhZGRpdGlvbmFsIHBlcm1pc3Npb25zDQphcHBseSBvbmx5IHRvIHBhcnQgb2YgdGhlIFByb2dyYW0sIHRoYXQgcGFydCBtYXkgYmUgdXNlZCBzZXBhcmF0ZWx5DQp1bmRlciB0aG9zZSBwZXJtaXNzaW9ucywgYnV0IHRoZSBlbnRpcmUgUHJvZ3JhbSByZW1haW5zIGdvdmVybmVkIGJ5DQp0aGlzIExpY2Vuc2Ugd2l0aG91dCByZWdhcmQgdG8gdGhlIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMuDQoNCiAgV2hlbiB5b3UgY29udmV5IGEgY29weSBvZiBhIGNvdmVyZWQgd29yaywgeW91IG1heSBhdCB5b3VyIG9wdGlvbg0KcmVtb3ZlIGFueSBhZGRpdGlvbmFsIHBlcm1pc3Npb25zIGZyb20gdGhhdCBjb3B5LCBvciBmcm9tIGFueSBwYXJ0IG9mDQppdC4gIChBZGRpdGlvbmFsIHBlcm1pc3Npb25zIG1heSBiZSB3cml0dGVuIHRvIHJlcXVpcmUgdGhlaXIgb3duDQpyZW1vdmFsIGluIGNlcnRhaW4gY2FzZXMgd2hlbiB5b3UgbW9kaWZ5IHRoZSB3b3JrLikgIFlvdSBtYXkgcGxhY2UNCmFkZGl0aW9uYWwgcGVybWlzc2lvbnMgb24gbWF0ZXJpYWwsIGFkZGVkIGJ5IHlvdSB0byBhIGNvdmVyZWQgd29yaywNCmZvciB3aGljaCB5b3UgaGF2ZSBvciBjYW4gZ2l2ZSBhcHByb3ByaWF0ZSBjb3B5cmlnaHQgcGVybWlzc2lvbi4NCg0KICBOb3R3aXRoc3RhbmRpbmcgYW55IG90aGVyIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UsIGZvciBtYXRlcmlhbCB5b3UNCmFkZCB0byBhIGNvdmVyZWQgd29yaywgeW91IG1heSAoaWYgYXV0aG9yaXplZCBieSB0aGUgY29weXJpZ2h0IGhvbGRlcnMgb2YNCnRoYXQgbWF0ZXJpYWwpIHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSB3aXRoIHRlcm1zOg0KDQogICAgYSkgRGlzY2xhaW1pbmcgd2FycmFudHkgb3IgbGltaXRpbmcgbGlhYmlsaXR5IGRpZmZlcmVudGx5IGZyb20gdGhlDQogICAgdGVybXMgb2Ygc2VjdGlvbnMgMTUgYW5kIDE2IG9mIHRoaXMgTGljZW5zZTsgb3INCg0KICAgIGIpIFJlcXVpcmluZyBwcmVzZXJ2YXRpb24gb2Ygc3BlY2lmaWVkIHJlYXNvbmFibGUgbGVnYWwgbm90aWNlcyBvcg0KICAgIGF1dGhvciBhdHRyaWJ1dGlvbnMgaW4gdGhhdCBtYXRlcmlhbCBvciBpbiB0aGUgQXBwcm9wcmlhdGUgTGVnYWwNCiAgICBOb3RpY2VzIGRpc3BsYXllZCBieSB3b3JrcyBjb250YWluaW5nIGl0OyBvcg0KDQogICAgYykgUHJvaGliaXRpbmcgbWlzcmVwcmVzZW50YXRpb24gb2YgdGhlIG9yaWdpbiBvZiB0aGF0IG1hdGVyaWFsLCBvcg0KICAgIHJlcXVpcmluZyB0aGF0IG1vZGlmaWVkIHZlcnNpb25zIG9mIHN1Y2ggbWF0ZXJpYWwgYmUgbWFya2VkIGluDQogICAgcmVhc29uYWJsZSB3YXlzIGFzIGRpZmZlcmVudCBmcm9tIHRoZSBvcmlnaW5hbCB2ZXJzaW9uOyBvcg0KDQogICAgZCkgTGltaXRpbmcgdGhlIHVzZSBmb3IgcHVibGljaXR5IHB1cnBvc2VzIG9mIG5hbWVzIG9mIGxpY2Vuc29ycyBvcg0KICAgIGF1dGhvcnMgb2YgdGhlIG1hdGVyaWFsOyBvcg0KDQogICAgZSkgRGVjbGluaW5nIHRvIGdyYW50IHJpZ2h0cyB1bmRlciB0cmFkZW1hcmsgbGF3IGZvciB1c2Ugb2Ygc29tZQ0KICAgIHRyYWRlIG5hbWVzLCB0cmFkZW1hcmtzLCBvciBzZXJ2aWNlIG1hcmtzOyBvcg0KDQogICAgZikgUmVxdWlyaW5nIGluZGVtbmlmaWNhdGlvbiBvZiBsaWNlbnNvcnMgYW5kIGF1dGhvcnMgb2YgdGhhdA0KICAgIG1hdGVyaWFsIGJ5IGFueW9uZSB3aG8gY29udmV5cyB0aGUgbWF0ZXJpYWwgKG9yIG1vZGlmaWVkIHZlcnNpb25zIG9mDQogICAgaXQpIHdpdGggY29udHJhY3R1YWwgYXNzdW1wdGlvbnMgb2YgbGlhYmlsaXR5IHRvIHRoZSByZWNpcGllbnQsIGZvcg0KICAgIGFueSBsaWFiaWxpdHkgdGhhdCB0aGVzZSBjb250cmFjdHVhbCBhc3N1bXB0aW9ucyBkaXJlY3RseSBpbXBvc2Ugb24NCiAgICB0aG9zZSBsaWNlbnNvcnMgYW5kIGF1dGhvcnMuDQoNCiAgQWxsIG90aGVyIG5vbi1wZXJtaXNzaXZlIGFkZGl0aW9uYWwgdGVybXMgYXJlIGNvbnNpZGVyZWQgImZ1cnRoZXINCnJlc3RyaWN0aW9ucyIgd2l0aGluIHRoZSBtZWFuaW5nIG9mIHNlY3Rpb24gMTAuICBJZiB0aGUgUHJvZ3JhbSBhcyB5b3UNCnJlY2VpdmVkIGl0LCBvciBhbnkgcGFydCBvZiBpdCwgY29udGFpbnMgYSBub3RpY2Ugc3RhdGluZyB0aGF0IGl0IGlzDQpnb3Zlcm5lZCBieSB0aGlzIExpY2Vuc2UgYWxvbmcgd2l0aCBhIHRlcm0gdGhhdCBpcyBhIGZ1cnRoZXINCnJlc3RyaWN0aW9uLCB5b3UgbWF5IHJlbW92ZSB0aGF0IHRlcm0uICBJZiBhIGxpY2Vuc2UgZG9jdW1lbnQgY29udGFpbnMNCmEgZnVydGhlciByZXN0cmljdGlvbiBidXQgcGVybWl0cyByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcgdW5kZXIgdGhpcw0KTGljZW5zZSwgeW91IG1heSBhZGQgdG8gYSBjb3ZlcmVkIHdvcmsgbWF0ZXJpYWwgZ292ZXJuZWQgYnkgdGhlIHRlcm1zDQpvZiB0aGF0IGxpY2Vuc2UgZG9jdW1lbnQsIHByb3ZpZGVkIHRoYXQgdGhlIGZ1cnRoZXIgcmVzdHJpY3Rpb24gZG9lcw0Kbm90IHN1cnZpdmUgc3VjaCByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcuDQoNCiAgSWYgeW91IGFkZCB0ZXJtcyB0byBhIGNvdmVyZWQgd29yayBpbiBhY2NvcmQgd2l0aCB0aGlzIHNlY3Rpb24sIHlvdQ0KbXVzdCBwbGFjZSwgaW4gdGhlIHJlbGV2YW50IHNvdXJjZSBmaWxlcywgYSBzdGF0ZW1lbnQgb2YgdGhlDQphZGRpdGlvbmFsIHRlcm1zIHRoYXQgYXBwbHkgdG8gdGhvc2UgZmlsZXMsIG9yIGEgbm90aWNlIGluZGljYXRpbmcNCndoZXJlIHRvIGZpbmQgdGhlIGFwcGxpY2FibGUgdGVybXMuDQoNCiAgQWRkaXRpb25hbCB0ZXJtcywgcGVybWlzc2l2ZSBvciBub24tcGVybWlzc2l2ZSwgbWF5IGJlIHN0YXRlZCBpbiB0aGUNCmZvcm0gb2YgYSBzZXBhcmF0ZWx5IHdyaXR0ZW4gbGljZW5zZSwgb3Igc3RhdGVkIGFzIGV4Y2VwdGlvbnM7DQp0aGUgYWJvdmUgcmVxdWlyZW1lbnRzIGFwcGx5IGVpdGhlciB3YXkuDQoNCiAgOC4gVGVybWluYXRpb24uDQoNCiAgWW91IG1heSBub3QgcHJvcGFnYXRlIG9yIG1vZGlmeSBhIGNvdmVyZWQgd29yayBleGNlcHQgYXMgZXhwcmVzc2x5DQpwcm92aWRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBBbnkgYXR0ZW1wdCBvdGhlcndpc2UgdG8gcHJvcGFnYXRlIG9yDQptb2RpZnkgaXQgaXMgdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXINCnRoaXMgTGljZW5zZSAoaW5jbHVkaW5nIGFueSBwYXRlbnQgbGljZW5zZXMgZ3JhbnRlZCB1bmRlciB0aGUgdGhpcmQNCnBhcmFncmFwaCBvZiBzZWN0aW9uIDExKS4NCg0KICBIb3dldmVyLCBpZiB5b3UgY2Vhc2UgYWxsIHZpb2xhdGlvbiBvZiB0aGlzIExpY2Vuc2UsIHRoZW4geW91cg0KbGljZW5zZSBmcm9tIGEgcGFydGljdWxhciBjb3B5cmlnaHQgaG9sZGVyIGlzIHJlaW5zdGF0ZWQgKGEpDQpwcm92aXNpb25hbGx5LCB1bmxlc3MgYW5kIHVudGlsIHRoZSBjb3B5cmlnaHQgaG9sZGVyIGV4cGxpY2l0bHkgYW5kDQpmaW5hbGx5IHRlcm1pbmF0ZXMgeW91ciBsaWNlbnNlLCBhbmQgKGIpIHBlcm1hbmVudGx5LCBpZiB0aGUgY29weXJpZ2h0DQpob2xkZXIgZmFpbHMgdG8gbm90aWZ5IHlvdSBvZiB0aGUgdmlvbGF0aW9uIGJ5IHNvbWUgcmVhc29uYWJsZSBtZWFucw0KcHJpb3IgdG8gNjAgZGF5cyBhZnRlciB0aGUgY2Vzc2F0aW9uLg0KDQogIE1vcmVvdmVyLCB5b3VyIGxpY2Vuc2UgZnJvbSBhIHBhcnRpY3VsYXIgY29weXJpZ2h0IGhvbGRlciBpcw0KcmVpbnN0YXRlZCBwZXJtYW5lbnRseSBpZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3RpZmllcyB5b3Ugb2YgdGhlDQp2aW9sYXRpb24gYnkgc29tZSByZWFzb25hYmxlIG1lYW5zLCB0aGlzIGlzIHRoZSBmaXJzdCB0aW1lIHlvdSBoYXZlDQpyZWNlaXZlZCBub3RpY2Ugb2YgdmlvbGF0aW9uIG9mIHRoaXMgTGljZW5zZSAoZm9yIGFueSB3b3JrKSBmcm9tIHRoYXQNCmNvcHlyaWdodCBob2xkZXIsIGFuZCB5b3UgY3VyZSB0aGUgdmlvbGF0aW9uIHByaW9yIHRvIDMwIGRheXMgYWZ0ZXINCnlvdXIgcmVjZWlwdCBvZiB0aGUgbm90aWNlLg0KDQogIFRlcm1pbmF0aW9uIG9mIHlvdXIgcmlnaHRzIHVuZGVyIHRoaXMgc2VjdGlvbiBkb2VzIG5vdCB0ZXJtaW5hdGUgdGhlDQpsaWNlbnNlcyBvZiBwYXJ0aWVzIHdobyBoYXZlIHJlY2VpdmVkIGNvcGllcyBvciByaWdodHMgZnJvbSB5b3UgdW5kZXINCnRoaXMgTGljZW5zZS4gIElmIHlvdXIgcmlnaHRzIGhhdmUgYmVlbiB0ZXJtaW5hdGVkIGFuZCBub3QgcGVybWFuZW50bHkNCnJlaW5zdGF0ZWQsIHlvdSBkbyBub3QgcXVhbGlmeSB0byByZWNlaXZlIG5ldyBsaWNlbnNlcyBmb3IgdGhlIHNhbWUNCm1hdGVyaWFsIHVuZGVyIHNlY3Rpb24gMTAuDQoNCiAgOS4gQWNjZXB0YW5jZSBOb3QgUmVxdWlyZWQgZm9yIEhhdmluZyBDb3BpZXMuDQoNCiAgWW91IGFyZSBub3QgcmVxdWlyZWQgdG8gYWNjZXB0IHRoaXMgTGljZW5zZSBpbiBvcmRlciB0byByZWNlaXZlIG9yDQpydW4gYSBjb3B5IG9mIHRoZSBQcm9ncmFtLiAgQW5jaWxsYXJ5IHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZCB3b3JrDQpvY2N1cnJpbmcgc29sZWx5IGFzIGEgY29uc2VxdWVuY2Ugb2YgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbg0KdG8gcmVjZWl2ZSBhIGNvcHkgbGlrZXdpc2UgZG9lcyBub3QgcmVxdWlyZSBhY2NlcHRhbmNlLiAgSG93ZXZlciwNCm5vdGhpbmcgb3RoZXIgdGhhbiB0aGlzIExpY2Vuc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIHByb3BhZ2F0ZSBvcg0KbW9kaWZ5IGFueSBjb3ZlcmVkIHdvcmsuICBUaGVzZSBhY3Rpb25zIGluZnJpbmdlIGNvcHlyaWdodCBpZiB5b3UgZG8NCm5vdCBhY2NlcHQgdGhpcyBMaWNlbnNlLiAgVGhlcmVmb3JlLCBieSBtb2RpZnlpbmcgb3IgcHJvcGFnYXRpbmcgYQ0KY292ZXJlZCB3b3JrLCB5b3UgaW5kaWNhdGUgeW91ciBhY2NlcHRhbmNlIG9mIHRoaXMgTGljZW5zZSB0byBkbyBzby4NCg0KICAxMC4gQXV0b21hdGljIExpY2Vuc2luZyBvZiBEb3duc3RyZWFtIFJlY2lwaWVudHMuDQoNCiAgRWFjaCB0aW1lIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIHRoZSByZWNpcGllbnQgYXV0b21hdGljYWxseQ0KcmVjZWl2ZXMgYSBsaWNlbnNlIGZyb20gdGhlIG9yaWdpbmFsIGxpY2Vuc29ycywgdG8gcnVuLCBtb2RpZnkgYW5kDQpwcm9wYWdhdGUgdGhhdCB3b3JrLCBzdWJqZWN0IHRvIHRoaXMgTGljZW5zZS4gIFlvdSBhcmUgbm90IHJlc3BvbnNpYmxlDQpmb3IgZW5mb3JjaW5nIGNvbXBsaWFuY2UgYnkgdGhpcmQgcGFydGllcyB3aXRoIHRoaXMgTGljZW5zZS4NCg0KICBBbiAiZW50aXR5IHRyYW5zYWN0aW9uIiBpcyBhIHRyYW5zYWN0aW9uIHRyYW5zZmVycmluZyBjb250cm9sIG9mIGFuDQpvcmdhbml6YXRpb24sIG9yIHN1YnN0YW50aWFsbHkgYWxsIGFzc2V0cyBvZiBvbmUsIG9yIHN1YmRpdmlkaW5nIGFuDQpvcmdhbml6YXRpb24sIG9yIG1lcmdpbmcgb3JnYW5pemF0aW9ucy4gIElmIHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZA0Kd29yayByZXN1bHRzIGZyb20gYW4gZW50aXR5IHRyYW5zYWN0aW9uLCBlYWNoIHBhcnR5IHRvIHRoYXQNCnRyYW5zYWN0aW9uIHdobyByZWNlaXZlcyBhIGNvcHkgb2YgdGhlIHdvcmsgYWxzbyByZWNlaXZlcyB3aGF0ZXZlcg0KbGljZW5zZXMgdG8gdGhlIHdvcmsgdGhlIHBhcnR5J3MgcHJlZGVjZXNzb3IgaW4gaW50ZXJlc3QgaGFkIG9yIGNvdWxkDQpnaXZlIHVuZGVyIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgsIHBsdXMgYSByaWdodCB0byBwb3NzZXNzaW9uIG9mIHRoZQ0KQ29ycmVzcG9uZGluZyBTb3VyY2Ugb2YgdGhlIHdvcmsgZnJvbSB0aGUgcHJlZGVjZXNzb3IgaW4gaW50ZXJlc3QsIGlmDQp0aGUgcHJlZGVjZXNzb3IgaGFzIGl0IG9yIGNhbiBnZXQgaXQgd2l0aCByZWFzb25hYmxlIGVmZm9ydHMuDQoNCiAgWW91IG1heSBub3QgaW1wb3NlIGFueSBmdXJ0aGVyIHJlc3RyaWN0aW9ucyBvbiB0aGUgZXhlcmNpc2Ugb2YgdGhlDQpyaWdodHMgZ3JhbnRlZCBvciBhZmZpcm1lZCB1bmRlciB0aGlzIExpY2Vuc2UuICBGb3IgZXhhbXBsZSwgeW91IG1heQ0Kbm90IGltcG9zZSBhIGxpY2Vuc2UgZmVlLCByb3lhbHR5LCBvciBvdGhlciBjaGFyZ2UgZm9yIGV4ZXJjaXNlIG9mDQpyaWdodHMgZ3JhbnRlZCB1bmRlciB0aGlzIExpY2Vuc2UsIGFuZCB5b3UgbWF5IG5vdCBpbml0aWF0ZSBsaXRpZ2F0aW9uDQooaW5jbHVkaW5nIGEgY3Jvc3MtY2xhaW0gb3IgY291bnRlcmNsYWltIGluIGEgbGF3c3VpdCkgYWxsZWdpbmcgdGhhdA0KYW55IHBhdGVudCBjbGFpbSBpcyBpbmZyaW5nZWQgYnkgbWFraW5nLCB1c2luZywgc2VsbGluZywgb2ZmZXJpbmcgZm9yDQpzYWxlLCBvciBpbXBvcnRpbmcgdGhlIFByb2dyYW0gb3IgYW55IHBvcnRpb24gb2YgaXQuDQoNCiAgMTEuIFBhdGVudHMuDQoNCiAgQSAiY29udHJpYnV0b3IiIGlzIGEgY29weXJpZ2h0IGhvbGRlciB3aG8gYXV0aG9yaXplcyB1c2UgdW5kZXIgdGhpcw0KTGljZW5zZSBvZiB0aGUgUHJvZ3JhbSBvciBhIHdvcmsgb24gd2hpY2ggdGhlIFByb2dyYW0gaXMgYmFzZWQuICBUaGUNCndvcmsgdGh1cyBsaWNlbnNlZCBpcyBjYWxsZWQgdGhlIGNvbnRyaWJ1dG9yJ3MgImNvbnRyaWJ1dG9yIHZlcnNpb24iLg0KDQogIEEgY29udHJpYnV0b3IncyAiZXNzZW50aWFsIHBhdGVudCBjbGFpbXMiIGFyZSBhbGwgcGF0ZW50IGNsYWltcw0Kb3duZWQgb3IgY29udHJvbGxlZCBieSB0aGUgY29udHJpYnV0b3IsIHdoZXRoZXIgYWxyZWFkeSBhY3F1aXJlZCBvcg0KaGVyZWFmdGVyIGFjcXVpcmVkLCB0aGF0IHdvdWxkIGJlIGluZnJpbmdlZCBieSBzb21lIG1hbm5lciwgcGVybWl0dGVkDQpieSB0aGlzIExpY2Vuc2UsIG9mIG1ha2luZywgdXNpbmcsIG9yIHNlbGxpbmcgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24sDQpidXQgZG8gbm90IGluY2x1ZGUgY2xhaW1zIHRoYXQgd291bGQgYmUgaW5mcmluZ2VkIG9ubHkgYXMgYQ0KY29uc2VxdWVuY2Ugb2YgZnVydGhlciBtb2RpZmljYXRpb24gb2YgdGhlIGNvbnRyaWJ1dG9yIHZlcnNpb24uICBGb3INCnB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwgImNvbnRyb2wiIGluY2x1ZGVzIHRoZSByaWdodCB0byBncmFudA0KcGF0ZW50IHN1YmxpY2Vuc2VzIGluIGEgbWFubmVyIGNvbnNpc3RlbnQgd2l0aCB0aGUgcmVxdWlyZW1lbnRzIG9mDQp0aGlzIExpY2Vuc2UuDQoNCiAgRWFjaCBjb250cmlidXRvciBncmFudHMgeW91IGEgbm9uLWV4Y2x1c2l2ZSwgd29ybGR3aWRlLCByb3lhbHR5LWZyZWUNCnBhdGVudCBsaWNlbnNlIHVuZGVyIHRoZSBjb250cmlidXRvcidzIGVzc2VudGlhbCBwYXRlbnQgY2xhaW1zLCB0bw0KbWFrZSwgdXNlLCBzZWxsLCBvZmZlciBmb3Igc2FsZSwgaW1wb3J0IGFuZCBvdGhlcndpc2UgcnVuLCBtb2RpZnkgYW5kDQpwcm9wYWdhdGUgdGhlIGNvbnRlbnRzIG9mIGl0cyBjb250cmlidXRvciB2ZXJzaW9uLg0KDQogIEluIHRoZSBmb2xsb3dpbmcgdGhyZWUgcGFyYWdyYXBocywgYSAicGF0ZW50IGxpY2Vuc2UiIGlzIGFueSBleHByZXNzDQphZ3JlZW1lbnQgb3IgY29tbWl0bWVudCwgaG93ZXZlciBkZW5vbWluYXRlZCwgbm90IHRvIGVuZm9yY2UgYSBwYXRlbnQNCihzdWNoIGFzIGFuIGV4cHJlc3MgcGVybWlzc2lvbiB0byBwcmFjdGljZSBhIHBhdGVudCBvciBjb3ZlbmFudCBub3QgdG8NCnN1ZSBmb3IgcGF0ZW50IGluZnJpbmdlbWVudCkuICBUbyAiZ3JhbnQiIHN1Y2ggYSBwYXRlbnQgbGljZW5zZSB0byBhDQpwYXJ0eSBtZWFucyB0byBtYWtlIHN1Y2ggYW4gYWdyZWVtZW50IG9yIGNvbW1pdG1lbnQgbm90IHRvIGVuZm9yY2UgYQ0KcGF0ZW50IGFnYWluc3QgdGhlIHBhcnR5Lg0KDQogIElmIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIGtub3dpbmdseSByZWx5aW5nIG9uIGEgcGF0ZW50IGxpY2Vuc2UsDQphbmQgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIG9mIHRoZSB3b3JrIGlzIG5vdCBhdmFpbGFibGUgZm9yIGFueW9uZQ0KdG8gY29weSwgZnJlZSBvZiBjaGFyZ2UgYW5kIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UsIHRocm91Z2ggYQ0KcHVibGljbHkgYXZhaWxhYmxlIG5ldHdvcmsgc2VydmVyIG9yIG90aGVyIHJlYWRpbHkgYWNjZXNzaWJsZSBtZWFucywNCnRoZW4geW91IG11c3QgZWl0aGVyICgxKSBjYXVzZSB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdG8gYmUgc28NCmF2YWlsYWJsZSwgb3IgKDIpIGFycmFuZ2UgdG8gZGVwcml2ZSB5b3Vyc2VsZiBvZiB0aGUgYmVuZWZpdCBvZiB0aGUNCnBhdGVudCBsaWNlbnNlIGZvciB0aGlzIHBhcnRpY3VsYXIgd29yaywgb3IgKDMpIGFycmFuZ2UsIGluIGEgbWFubmVyDQpjb25zaXN0ZW50IHdpdGggdGhlIHJlcXVpcmVtZW50cyBvZiB0aGlzIExpY2Vuc2UsIHRvIGV4dGVuZCB0aGUgcGF0ZW50DQpsaWNlbnNlIHRvIGRvd25zdHJlYW0gcmVjaXBpZW50cy4gICJLbm93aW5nbHkgcmVseWluZyIgbWVhbnMgeW91IGhhdmUNCmFjdHVhbCBrbm93bGVkZ2UgdGhhdCwgYnV0IGZvciB0aGUgcGF0ZW50IGxpY2Vuc2UsIHlvdXIgY29udmV5aW5nIHRoZQ0KY292ZXJlZCB3b3JrIGluIGEgY291bnRyeSwgb3IgeW91ciByZWNpcGllbnQncyB1c2Ugb2YgdGhlIGNvdmVyZWQgd29yaw0KaW4gYSBjb3VudHJ5LCB3b3VsZCBpbmZyaW5nZSBvbmUgb3IgbW9yZSBpZGVudGlmaWFibGUgcGF0ZW50cyBpbiB0aGF0DQpjb3VudHJ5IHRoYXQgeW91IGhhdmUgcmVhc29uIHRvIGJlbGlldmUgYXJlIHZhbGlkLg0KDQogIElmLCBwdXJzdWFudCB0byBvciBpbiBjb25uZWN0aW9uIHdpdGggYSBzaW5nbGUgdHJhbnNhY3Rpb24gb3INCmFycmFuZ2VtZW50LCB5b3UgY29udmV5LCBvciBwcm9wYWdhdGUgYnkgcHJvY3VyaW5nIGNvbnZleWFuY2Ugb2YsIGENCmNvdmVyZWQgd29yaywgYW5kIGdyYW50IGEgcGF0ZW50IGxpY2Vuc2UgdG8gc29tZSBvZiB0aGUgcGFydGllcw0KcmVjZWl2aW5nIHRoZSBjb3ZlcmVkIHdvcmsgYXV0aG9yaXppbmcgdGhlbSB0byB1c2UsIHByb3BhZ2F0ZSwgbW9kaWZ5DQpvciBjb252ZXkgYSBzcGVjaWZpYyBjb3B5IG9mIHRoZSBjb3ZlcmVkIHdvcmssIHRoZW4gdGhlIHBhdGVudCBsaWNlbnNlDQp5b3UgZ3JhbnQgaXMgYXV0b21hdGljYWxseSBleHRlbmRlZCB0byBhbGwgcmVjaXBpZW50cyBvZiB0aGUgY292ZXJlZA0Kd29yayBhbmQgd29ya3MgYmFzZWQgb24gaXQuDQoNCiAgQSBwYXRlbnQgbGljZW5zZSBpcyAiZGlzY3JpbWluYXRvcnkiIGlmIGl0IGRvZXMgbm90IGluY2x1ZGUgd2l0aGluDQp0aGUgc2NvcGUgb2YgaXRzIGNvdmVyYWdlLCBwcm9oaWJpdHMgdGhlIGV4ZXJjaXNlIG9mLCBvciBpcw0KY29uZGl0aW9uZWQgb24gdGhlIG5vbi1leGVyY2lzZSBvZiBvbmUgb3IgbW9yZSBvZiB0aGUgcmlnaHRzIHRoYXQgYXJlDQpzcGVjaWZpY2FsbHkgZ3JhbnRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBZb3UgbWF5IG5vdCBjb252ZXkgYSBjb3ZlcmVkDQp3b3JrIGlmIHlvdSBhcmUgYSBwYXJ0eSB0byBhbiBhcnJhbmdlbWVudCB3aXRoIGEgdGhpcmQgcGFydHkgdGhhdCBpcw0KaW4gdGhlIGJ1c2luZXNzIG9mIGRpc3RyaWJ1dGluZyBzb2Z0d2FyZSwgdW5kZXIgd2hpY2ggeW91IG1ha2UgcGF5bWVudA0KdG8gdGhlIHRoaXJkIHBhcnR5IGJhc2VkIG9uIHRoZSBleHRlbnQgb2YgeW91ciBhY3Rpdml0eSBvZiBjb252ZXlpbmcNCnRoZSB3b3JrLCBhbmQgdW5kZXIgd2hpY2ggdGhlIHRoaXJkIHBhcnR5IGdyYW50cywgdG8gYW55IG9mIHRoZQ0KcGFydGllcyB3aG8gd291bGQgcmVjZWl2ZSB0aGUgY292ZXJlZCB3b3JrIGZyb20geW91LCBhIGRpc2NyaW1pbmF0b3J5DQpwYXRlbnQgbGljZW5zZSAoYSkgaW4gY29ubmVjdGlvbiB3aXRoIGNvcGllcyBvZiB0aGUgY292ZXJlZCB3b3JrDQpjb252ZXllZCBieSB5b3UgKG9yIGNvcGllcyBtYWRlIGZyb20gdGhvc2UgY29waWVzKSwgb3IgKGIpIHByaW1hcmlseQ0KZm9yIGFuZCBpbiBjb25uZWN0aW9uIHdpdGggc3BlY2lmaWMgcHJvZHVjdHMgb3IgY29tcGlsYXRpb25zIHRoYXQNCmNvbnRhaW4gdGhlIGNvdmVyZWQgd29yaywgdW5sZXNzIHlvdSBlbnRlcmVkIGludG8gdGhhdCBhcnJhbmdlbWVudCwNCm9yIHRoYXQgcGF0ZW50IGxpY2Vuc2Ugd2FzIGdyYW50ZWQsIHByaW9yIHRvIDI4IE1hcmNoIDIwMDcuDQoNCiAgTm90aGluZyBpbiB0aGlzIExpY2Vuc2Ugc2hhbGwgYmUgY29uc3RydWVkIGFzIGV4Y2x1ZGluZyBvciBsaW1pdGluZw0KYW55IGltcGxpZWQgbGljZW5zZSBvciBvdGhlciBkZWZlbnNlcyB0byBpbmZyaW5nZW1lbnQgdGhhdCBtYXkNCm90aGVyd2lzZSBiZSBhdmFpbGFibGUgdG8geW91IHVuZGVyIGFwcGxpY2FibGUgcGF0ZW50IGxhdy4NCg0KICAxMi4gTm8gU3VycmVuZGVyIG9mIE90aGVycycgRnJlZWRvbS4NCg0KICBJZiBjb25kaXRpb25zIGFyZSBpbXBvc2VkIG9uIHlvdSAod2hldGhlciBieSBjb3VydCBvcmRlciwgYWdyZWVtZW50IG9yDQpvdGhlcndpc2UpIHRoYXQgY29udHJhZGljdCB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsIHRoZXkgZG8gbm90DQpleGN1c2UgeW91IGZyb20gdGhlIGNvbmRpdGlvbnMgb2YgdGhpcyBMaWNlbnNlLiAgSWYgeW91IGNhbm5vdCBjb252ZXkgYQ0KY292ZXJlZCB3b3JrIHNvIGFzIHRvIHNhdGlzZnkgc2ltdWx0YW5lb3VzbHkgeW91ciBvYmxpZ2F0aW9ucyB1bmRlciB0aGlzDQpMaWNlbnNlIGFuZCBhbnkgb3RoZXIgcGVydGluZW50IG9ibGlnYXRpb25zLCB0aGVuIGFzIGEgY29uc2VxdWVuY2UgeW91IG1heQ0Kbm90IGNvbnZleSBpdCBhdCBhbGwuICBGb3IgZXhhbXBsZSwgaWYgeW91IGFncmVlIHRvIHRlcm1zIHRoYXQgb2JsaWdhdGUgeW91DQp0byBjb2xsZWN0IGEgcm95YWx0eSBmb3IgZnVydGhlciBjb252ZXlpbmcgZnJvbSB0aG9zZSB0byB3aG9tIHlvdSBjb252ZXkNCnRoZSBQcm9ncmFtLCB0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCB0aG9zZSB0ZXJtcyBhbmQgdGhpcw0KTGljZW5zZSB3b3VsZCBiZSB0byByZWZyYWluIGVudGlyZWx5IGZyb20gY29udmV5aW5nIHRoZSBQcm9ncmFtLg0KDQogIDEzLiBVc2Ugd2l0aCB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLg0KDQogIE5vdHdpdGhzdGFuZGluZyBhbnkgb3RoZXIgcHJvdmlzaW9uIG9mIHRoaXMgTGljZW5zZSwgeW91IGhhdmUNCnBlcm1pc3Npb24gdG8gbGluayBvciBjb21iaW5lIGFueSBjb3ZlcmVkIHdvcmsgd2l0aCBhIHdvcmsgbGljZW5zZWQNCnVuZGVyIHZlcnNpb24gMyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGludG8gYSBzaW5nbGUNCmNvbWJpbmVkIHdvcmssIGFuZCB0byBjb252ZXkgdGhlIHJlc3VsdGluZyB3b3JrLiAgVGhlIHRlcm1zIG9mIHRoaXMNCkxpY2Vuc2Ugd2lsbCBjb250aW51ZSB0byBhcHBseSB0byB0aGUgcGFydCB3aGljaCBpcyB0aGUgY292ZXJlZCB3b3JrLA0KYnV0IHRoZSBzcGVjaWFsIHJlcXVpcmVtZW50cyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLA0Kc2VjdGlvbiAxMywgY29uY2VybmluZyBpbnRlcmFjdGlvbiB0aHJvdWdoIGEgbmV0d29yayB3aWxsIGFwcGx5IHRvIHRoZQ0KY29tYmluYXRpb24gYXMgc3VjaC4NCg0KICAxNC4gUmV2aXNlZCBWZXJzaW9ucyBvZiB0aGlzIExpY2Vuc2UuDQoNCiAgVGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiBtYXkgcHVibGlzaCByZXZpc2VkIGFuZC9vciBuZXcgdmVyc2lvbnMgb2YNCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmcm9tIHRpbWUgdG8gdGltZS4gIFN1Y2ggbmV3IHZlcnNpb25zIHdpbGwNCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bw0KYWRkcmVzcyBuZXcgcHJvYmxlbXMgb3IgY29uY2VybnMuDQoNCiAgRWFjaCB2ZXJzaW9uIGlzIGdpdmVuIGEgZGlzdGluZ3Vpc2hpbmcgdmVyc2lvbiBudW1iZXIuICBJZiB0aGUNClByb2dyYW0gc3BlY2lmaWVzIHRoYXQgYSBjZXJ0YWluIG51bWJlcmVkIHZlcnNpb24gb2YgdGhlIEdOVSBHZW5lcmFsDQpQdWJsaWMgTGljZW5zZSAib3IgYW55IGxhdGVyIHZlcnNpb24iIGFwcGxpZXMgdG8gaXQsIHlvdSBoYXZlIHRoZQ0Kb3B0aW9uIG9mIGZvbGxvd2luZyB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgZWl0aGVyIG9mIHRoYXQgbnVtYmVyZWQNCnZlcnNpb24gb3Igb2YgYW55IGxhdGVyIHZlcnNpb24gcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLiAgSWYgdGhlIFByb2dyYW0gZG9lcyBub3Qgc3BlY2lmeSBhIHZlcnNpb24gbnVtYmVyIG9mIHRoZQ0KR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHlvdSBtYXkgY2hvb3NlIGFueSB2ZXJzaW9uIGV2ZXIgcHVibGlzaGVkDQpieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLg0KDQogIElmIHRoZSBQcm9ncmFtIHNwZWNpZmllcyB0aGF0IGEgcHJveHkgY2FuIGRlY2lkZSB3aGljaCBmdXR1cmUNCnZlcnNpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBjYW4gYmUgdXNlZCwgdGhhdCBwcm94eSdzDQpwdWJsaWMgc3RhdGVtZW50IG9mIGFjY2VwdGFuY2Ugb2YgYSB2ZXJzaW9uIHBlcm1hbmVudGx5IGF1dGhvcml6ZXMgeW91DQp0byBjaG9vc2UgdGhhdCB2ZXJzaW9uIGZvciB0aGUgUHJvZ3JhbS4NCg0KICBMYXRlciBsaWNlbnNlIHZlcnNpb25zIG1heSBnaXZlIHlvdSBhZGRpdGlvbmFsIG9yIGRpZmZlcmVudA0KcGVybWlzc2lvbnMuICBIb3dldmVyLCBubyBhZGRpdGlvbmFsIG9ibGlnYXRpb25zIGFyZSBpbXBvc2VkIG9uIGFueQ0KYXV0aG9yIG9yIGNvcHlyaWdodCBob2xkZXIgYXMgYSByZXN1bHQgb2YgeW91ciBjaG9vc2luZyB0byBmb2xsb3cgYQ0KbGF0ZXIgdmVyc2lvbi4NCg0KICAxNS4gRGlzY2xhaW1lciBvZiBXYXJyYW50eS4NCg0KICBUSEVSRSBJUyBOTyBXQVJSQU5UWSBGT1IgVEhFIFBST0dSQU0sIFRPIFRIRSBFWFRFTlQgUEVSTUlUVEVEIEJZDQpBUFBMSUNBQkxFIExBVy4gIEVYQ0VQVCBXSEVOIE9USEVSV0lTRSBTVEFURUQgSU4gV1JJVElORyBUSEUgQ09QWVJJR0hUDQpIT0xERVJTIEFORC9PUiBPVEhFUiBQQVJUSUVTIFBST1ZJREUgVEhFIFBST0dSQU0gIkFTIElTIiBXSVRIT1VUIFdBUlJBTlRZDQpPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1NFRCBPUiBJTVBMSUVELCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywNClRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINClBVUlBPU0UuICBUSEUgRU5USVJFIFJJU0sgQVMgVE8gVEhFIFFVQUxJVFkgQU5EIFBFUkZPUk1BTkNFIE9GIFRIRSBQUk9HUkFNDQpJUyBXSVRIIFlPVS4gIFNIT1VMRCBUSEUgUFJPR1JBTSBQUk9WRSBERUZFQ1RJVkUsIFlPVSBBU1NVTUUgVEhFIENPU1QgT0YNCkFMTCBORUNFU1NBUlkgU0VSVklDSU5HLCBSRVBBSVIgT1IgQ09SUkVDVElPTi4NCg0KICAxNi4gTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuDQoNCiAgSU4gTk8gRVZFTlQgVU5MRVNTIFJFUVVJUkVEIEJZIEFQUExJQ0FCTEUgTEFXIE9SIEFHUkVFRCBUTyBJTiBXUklUSU5HDQpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1PRElGSUVTIEFORC9PUiBDT05WRVlTDQpUSEUgUFJPR1JBTSBBUyBQRVJNSVRURUQgQUJPVkUsIEJFIExJQUJMRSBUTyBZT1UgRk9SIERBTUFHRVMsIElOQ0xVRElORyBBTlkNCkdFTkVSQUwsIFNQRUNJQUwsIElOQ0lERU5UQUwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIEFSSVNJTkcgT1VUIE9GIFRIRQ0KVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gTE9TUyBPRg0KREFUQSBPUiBEQVRBIEJFSU5HIFJFTkRFUkVEIElOQUNDVVJBVEUgT1IgTE9TU0VTIFNVU1RBSU5FRCBCWSBZT1UgT1IgVEhJUkQNClBBUlRJRVMgT1IgQSBGQUlMVVJFIE9GIFRIRSBQUk9HUkFNIFRPIE9QRVJBVEUgV0lUSCBBTlkgT1RIRVIgUFJPR1JBTVMpLA0KRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KU1VDSCBEQU1BR0VTLg0KDQogIDE3LiBJbnRlcnByZXRhdGlvbiBvZiBTZWN0aW9ucyAxNSBhbmQgMTYuDQoNCiAgSWYgdGhlIGRpc2NsYWltZXIgb2Ygd2FycmFudHkgYW5kIGxpbWl0YXRpb24gb2YgbGlhYmlsaXR5IHByb3ZpZGVkDQphYm92ZSBjYW5ub3QgYmUgZ2l2ZW4gbG9jYWwgbGVnYWwgZWZmZWN0IGFjY29yZGluZyB0byB0aGVpciB0ZXJtcywNCnJldmlld2luZyBjb3VydHMgc2hhbGwgYXBwbHkgbG9jYWwgbGF3IHRoYXQgbW9zdCBjbG9zZWx5IGFwcHJveGltYXRlcw0KYW4gYWJzb2x1dGUgd2FpdmVyIG9mIGFsbCBjaXZpbCBsaWFiaWxpdHkgaW4gY29ubmVjdGlvbiB3aXRoIHRoZQ0KUHJvZ3JhbSwgdW5sZXNzIGEgd2FycmFudHkgb3IgYXNzdW1wdGlvbiBvZiBsaWFiaWxpdHkgYWNjb21wYW5pZXMgYQ0KY29weSBvZiB0aGUgUHJvZ3JhbSBpbiByZXR1cm4gZm9yIGEgZmVlLg0KDQogICAgICAgICAgICAgICAgICAgICBFTkQgT0YgVEVSTVMgQU5EIENPTkRJVElPTlM=]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.ecb2_FieldDefBase.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgphYnN0cmFjdCBjbGFzcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewogICAgcHJvdGVjdGVkICRtb2Q7CiAgICBwcm90ZWN0ZWQgJGJsb2NrX25hbWU7CiAgICBwcm90ZWN0ZWQgJHZhbHVlOwogICAgcHJvdGVjdGVkICRhZGRpbmc7CiAgICBwcm90ZWN0ZWQgJGRlZmF1bHRfcGFyYW1ldGVyczsKICAgIHByb3RlY3RlZCAkb3B0aW9uczsKICAgIHByb3RlY3RlZCAkYWxpYXM7CiAgICBwcm90ZWN0ZWQgJGZpZWxkOwogICAgcHJvdGVjdGVkICRmaWVsZF9hbGlhc191c2VkOwogICAgcHJvdGVjdGVkICRyZXN0cmljdF9wYXJhbXM7CiAgICBwcm90ZWN0ZWQgJHBhcmFtZXRlcl9hbGlhc2VzOwogICAgcHJvdGVjdGVkICRkZW1vX2NvdW50OwogICAgcHJvdGVjdGVkICRlcnJvcjsKCiAgIAoKICAgIC8qKgogICAgICogQHBhcmFtIHN0cmluZyAkYmxvY2tOYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICR2YWx1ZQogICAgICogQHBhcmFtIGFycmF5ICRwYXJhbXMKICAgICAqIEBwYXJhbSBib29sZWFuICRhZGRpbmcKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCiAgICB7CiAgICAgICAgJHRoaXMtPm1vZCA9ICRtb2Q7CiAgICAgICAgJHRoaXMtPmJsb2NrX25hbWUgPSAkYmxvY2tOYW1lOwogICAgICAgICR0aGlzLT52YWx1ZSA9ICR2YWx1ZTsKICAgICAgICAkdGhpcy0+YWxpYXMgPSBtdW5nZV9zdHJpbmdfdG9fdXJsKCRibG9ja05hbWUsIFRSVUUpOwogICAgICAgICR0aGlzLT5hZGRpbmcgPSAkYWRkaW5nOwogICAgICAgICR0aGlzLT5maWVsZCA9ICcnOwogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbXTsKICAgICAgICAkdGhpcy0+b3B0aW9ucyA9IFtdOwogICAgICAgICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBUUlVFOwogICAgICAgIGlmICggaXNzZXQoJHBhcmFtc1snZmllbGRfYWxpYXNfdXNlZCddKSApICR0aGlzLT5maWVsZF9hbGlhc191c2VkID0gJHBhcmFtc1snZmllbGRfYWxpYXNfdXNlZCddOwogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFtdOwogICAgICAgICR0aGlzLT5kZW1vX2NvdW50ID0gMDsKCiAgICAgICAgJHRoaXMtPnNldF9maWVsZF9wYXJhbWV0ZXJzKCk7CiAgICAgICAgJHRoaXMtPmluaXRpYWxpc2Vfb3B0aW9ucygkcGFyYW1zKTsKCiAgICB9CgoKCiAgICAvKioKICAgICAqICBBQlNUUkFDVCBNRVRIT0RTCiAgICAgKi8KCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZSwgJHRoaXMtPnBhcmFtZXRlcnMgJiAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zCiAgICAgKi8KICAgIGFic3RyYWN0IHByb3RlY3RlZCBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpOwoKCgogICAgLyoqCiAgICAgKiAgZ2V0IGNvbnRlbnQgYmxvY2sKICAgICAqICBAcmV0dXJuIHN0cmluZwogICAgICovCiAgICBhYnN0cmFjdCBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKTsKCgoKICAgIC8qKgogICAgICogIENPTU1PTiBNRVRIT0RTCiAgICAgKi8KCiAgICAvKioKICAgICAqICBzZXRzIGFsbCBkZWZpbmVkICdvcHRpb25zJyBhbmQgZGVmYXVsdHMgaWYgbmVjZXNzYXJ5CiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBpbml0aWFsaXNlX29wdGlvbnMoJHBhcmFtcykKICAgIHsKICAgICAgICAkdGhpcy0+ZmllbGQgPSAkcGFyYW1zWydmaWVsZCddOyAgICAvLyBvbmx5IHZhbGlkIGZpZWxkIG5hbWVzIGNhbiBnZXQgdG8gaGVyZQogICAgICAgIHVuc2V0KCRwYXJhbXNbJ2ZpZWxkJ10pOwoKICAgICAgICAvLyBzZXQgZGVmYXVsdHMKICAgICAgICBpZiAoICFlbXB0eSgkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzKSApIHsKICAgICAgICAgICAgZm9yZWFjaCAoJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyBhcyAkZGVmYXVsdF9wYXJhbSA9PiAkc2V0dGluZ3MpIHsKICAgICAgICAgICAgICAgICR0aGlzLT5vcHRpb25zWyRkZWZhdWx0X3BhcmFtXSA9ICRzZXR0aW5nc1snZGVmYXVsdCddOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBoYW5kbGUgYW55IGZpZWxkIGFsaWFzZXMKICAgICAgICBpZiAoICFlbXB0eSgkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMpICkgewogICAgICAgICAgICBmb3JlYWNoICgkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgYXMgJHBhcmFtX2FsaWFzID0+ICRwYXJhbSkgewogICAgICAgICAgICAgICAgaWYgKCBpc3NldCgkcGFyYW1zWyRwYXJhbV9hbGlhc10pICYmICFpc3NldCgkcGFyYW1zWyRwYXJhbV0pICkgewogICAgICAgICAgICAgICAgICAgICRwYXJhbXNbJHBhcmFtXSA9ICRwYXJhbXNbJHBhcmFtX2FsaWFzXTsKICAgICAgICAgICAgICAgICAgICB1bnNldCgkcGFyYW1zWyRwYXJhbV9hbGlhc10pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoIGVtcHR5KCRwYXJhbXMpICkgcmV0dXJuOwoKICAgICAgICAvLyBzZXQgY2xlYW5lZCBvcHRpb25zCiAgICAgICAgaWYgKCR0aGlzLT5yZXN0cmljdF9wYXJhbXMpIHsKICAgICAgICAgICAgLy8ganVzdCBhZGQgcHJlLWRlZmluZWQgcGFyYW1zCiAgICAgICAgICAgIGZvcmVhY2ggKCRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKICAgICAgICAgICAgICAgIGlmICggaXNTZXQoJHRoaXMtPm9wdGlvbnNbJGtleV0pICYmICFlbXB0eSgkdmFsdWUpICkgewogICAgICAgICAgICAgICAgICAgICRmaWx0ZXJfdHlwZSA9ICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnNbJGtleV1bJ2ZpbHRlciddOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT5vcHRpb25zWyRrZXldID0gZmlsdGVyX3ZhciggJHZhbHVlLCAkZmlsdGVyX3R5cGUpOyAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIAogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vIGFkZCBhbGwgcGFyYW1zIGFzIG9wdGlvbnMgLSBlLmcgdG8gcGFzcyB1bmtub3duIHBhcmFtZXRlcnMgb250byBtb2R1bGVzCiAgICAgICAgICAgIGZvcmVhY2ggKCRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUpIHsKICAgICAgICAgICAgICAgICR0aGlzLT5vcHRpb25zWyRrZXldID0gJHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBzZXQgZGVmYXVsdCB2YWx1ZSBpZiBhZGRpbmcKICAgICAgICBpZiAoICR0aGlzLT5hZGRpbmcgJiYgJHRoaXMtPnZhbHVlPT09TlVMTCAmJiBpc3NldCgkdGhpcy0+b3B0aW9uc1snZGVmYXVsdCddKSApIHsKICAgICAgICAgICAgJHRoaXMtPnZhbHVlID0gJHRoaXMtPm9wdGlvbnNbJ2RlZmF1bHQnXTsKICAgICAgICB9CgogICAgfQoKCgogICAgLyoqCiAgICAgKiAgcmV0dXJucyB0aGUgZGVmYXVsdCBpbnB1dCBzbWFydHkgdGVtcGxhdGUgY29udGVudHMKICAgICAqICBzZWUgTElTRUZpZWxkZGVmQmFzZSBmb3IgaWRlYXMgOikKICAgICAqLwogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldF90ZW1wbGF0ZSgpCiAgICB7CiAgICAgICAgLy8gZGVmYXVsdCBpbnB1dCBzbWFydHkgdGVtcGxhdGUgZmlsZW5hbWUKICAgICAgICAkZmlsZW5hbWUgPSAkdGhpcy0+bW9kLT5HZXRNb2R1bGVQYXRoKCkgLkRJUkVDVE9SWV9TRVBBUkFUT1IuICdsaWInIC5ESVJFQ1RPUllfU0VQQVJBVE9SLiAKICAgICAgICAgICAgJ2ZpZWxkZGVmcycgLkRJUkVDVE9SWV9TRVBBUkFUT1IuICR0aGlzLT5maWVsZCAuRElSRUNUT1JZX1NFUEFSQVRPUi4gCiAgICAgICAgICAgICR0aGlzLT5tb2Q6OklOUFVUX1RFTVBMQVRFX1BSRUZJWCAuICR0aGlzLT5tb2Q6OkZJRUxEX0RFRl9QUkVGSVggLiAkdGhpcy0+ZmllbGQgLiAnLnRwbCc7CgogICAgICAgIGlmIChpc19yZWFkYWJsZSgkZmlsZW5hbWUpKSB7CiAgICAgICAgICAgIHJldHVybiBAZmlsZV9nZXRfY29udGVudHMoJGZpbGVuYW1lKTsKICAgICAgICB9CgogICAgfQoKCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBhcnJheSBvZiAndmFsdWUnID0+ICdUZXh0JwogICAgICogIEBwYXJhbSBzdHJpbmcgJGNvbW1hX3NlcGFyYXRlZF9saXN0IG9mICdUZXh0JyBvciAnVGV4dD12YWx1ZScgZS5nLiAnQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSwuLi4nCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBnZXRfYXJyYXlfZnJvbV9jc2woICRjb21tYV9zZXBhcmF0ZWRfbGlzdCApCiAgICB7CiAgICAgICAgJHZhbHVlX29wdGlvbnMgPSBbXTsKICAgICAgICBpZiAoICFlbXB0eSgkY29tbWFfc2VwYXJhdGVkX2xpc3QpICkgewogICAgICAgICAgICAkdG1wT3B0aW9ucyA9IGV4cGxvZGUoJywnLCAkY29tbWFfc2VwYXJhdGVkX2xpc3QpOwogICAgICAgICAgICBmb3JlYWNoICgkdG1wT3B0aW9ucyBhcyAkb3B0KSB7CiAgICAgICAgICAgICAgICAka2V5X3ZhbCA9IGV4cGxvZGUoICc9JywgdHJpbSgkb3B0KSApOwogICAgICAgICAgICAgICAgaWYgKCBjb3VudCgka2V5X3ZhbCk+MSApIHsKICAgICAgICAgICAgICAgICAgICAkdmFsdWVfb3B0aW9uc1ska2V5X3ZhbFsxXV0gPSAka2V5X3ZhbFswXTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJHZhbHVlX29wdGlvbnNbJGtleV92YWxbMF1dID0gJGtleV92YWxbMF07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gICAgCiAgICAgICAgfQogICAgICAgIHJldHVybiAkdmFsdWVfb3B0aW9uczsKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gYXJyYXkgJG9wdGlvbnMgb2YgJ3ZhbHVlJyA9PiAnVGV4dCcKICAgICAqICBAcGFyYW0gc3RyaW5nICRtb2R1bGVfbmFtZQogICAgICogIEBwYXJhbSBhcnJheSAkbW9kdWxlX3BhcmFtcyAgLSBpZiBwcm92aWRlZCBhbiBhcnJheSBvZiBhbGwgcGFyYW1hdGVycyB0byBiZSBwYXNzZWQgdG8gdGhlIG1vZHVsZQogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSBpZiBub3QgcHJvdmlkZWQgJHRoaXMtPm9wdGlvbnMgaXMgdXNlZAogICAgICogIEBwYXJhbSBhcnJheSAkZXhjbHVkZV9vcHRpb25zIC0gZXhjbHVkZXMgYW55IHNwZWNpZmllZCBvcHRpb25zIGZyb20gYmVpbmcgcGFzc2VkIHRvIHRoZSBtb2R1bGUKICAgICAqCiAgICAgKiAgICAgICAgIFRoZSBtb2R1bGUgY2FsbCBuZWVkcyB0byBlaXRoZXI6CiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAtIHNldCAkb3B0aW9ucyBhcnJheSBvZiAndmFsdWUnID0+ICdUZXh0JyB3aXRoIHNjb3BlPWdsb2JhbCwgb3IgCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAtIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgJ1RleHQsLi4uJyBvciAnVGV4dD12YWx1ZSwuLi4nICAKICAgICAqLwogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIGdldF92YWx1ZXNfZnJvbV9tb2R1bGUoJG1vZHVsZV9uYW1lLCAkbW9kdWxlX3BhcmFtcz1bXSwgJGV4Y2x1ZGVfb3B0aW9ucz1bXSkKICAgIHsKICAgICAgICAkbW9kdWxlID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCAkbW9kdWxlX25hbWUgKTsKICAgICAgICBpZiAoICEkbW9kdWxlICkgcmV0dXJuOwoKICAgICAgICAkbW9kdWxlX3BhcmFtcyA9IFtdOwogICAgICAgIGZvcmVhY2ggKCR0aGlzLT5vcHRpb25zIGFzICRrZXkgPT4gJHZhbHVlKSB7CiAgICAgICAgICAgIGlmICggIWluX2FycmF5KCRrZXksICRleGNsdWRlX29wdGlvbnMpICYmICFlbXB0eSgkdmFsdWUpICkgJG1vZHVsZV9wYXJhbXNbJGtleV0gPSAkdmFsdWU7CiAgICAgICAgfQogICAgICAgICRjbXNfbW9kdWxlX2NhbGwgPSAie2Ntc19tb2R1bGUgbW9kdWxlPSIuJG1vZHVsZV9uYW1lOwogICAgICAgIGZvcmVhY2ggKCRtb2R1bGVfcGFyYW1zIGFzICRrZXkgPT4gJHZhbHVlKSB7CiAgICAgICAgICAgICRjbXNfbW9kdWxlX2NhbGwgLj0gIiAka2V5PVwiJHZhbHVlXCIiOwogICAgICAgIH0KCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkbW9kdWxlX3ZhbHVlcyA9IHRyaW0oc3RyaXBfdGFncygkc21hcnR5LT5mZXRjaCgnc3RyaW5nOicuJGNtc19tb2R1bGVfY2FsbC4nfScpKSk7CiAgICAgICAgJG9wdGlvbnMgPSAkc21hcnR5LT5nZXRUZW1wbGF0ZVZhcnMoJ29wdGlvbnMnKTsKCiAgICAgICAgaWYgKCAhZW1wdHkoJG9wdGlvbnMpICYmIGlzX2FycmF5KCRvcHRpb25zKSApIHsgICAvLyBmaXJzdCBzZWUgaWYgJG9wdGlvbnMgYXJyYXkgc2V0IAogICAgICAgICAgICByZXR1cm4gJG9wdGlvbnM7CiAgICAgICAgfQogICAgICAgIGlmICggIWVtcHR5KCRtb2R1bGVfdmFsdWVzKSApIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5nZXRfYXJyYXlfZnJvbV9jc2woICRtb2R1bGVfdmFsdWVzICk7CiAgICAgICAgfQoKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gYXJyYXkgJHRoaXMtPm9wdGlvbnNbdmFsdWVzXSB0byB0aGUgcmVzdWx0IG9mIGEgY2FsbCB0byBtb2R1bGUgJG1vZHVsZV9uYW1lCiAgICAgKiAgQHBhcmFtIHN0cmluZyAkdWR0X25hbWUgLSB1ZHQgbmVlZHMgdG8gcmV0dXJuIGVpdGhlcjoKICAgICAqICAgICAgICAgICAgICAgICAgICAgIC0gYW4gYXJyYXkgb2YgJ1RleHQnID0+ICd2YWx1ZScgLSBkb24ndCBhc2sgaXQncyBhIGxlZ2FjeSB0aGluZyEKICAgICAqICAgICAgICAgICAgICAgICAgICAgIC0gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBnZXRfdmFsdWVzX2Zyb21fdWR0KCR1ZHRfbmFtZSkKICAgIHsKICAgICAgICBpZiAoIVVzZXJUYWdPcGVyYXRpb25zOjpnZXRfaW5zdGFuY2UoKS0+VXNlclRhZ0V4aXN0cygkdGhpcy0+b3B0aW9uc1sndWR0J10pKSB7CiAgICAgICAgICAgICR0aGlzLT5lcnJvciA9ICR0aGlzLT5tb2QtPkxhbmcoJ3VkdF9lcnJvcicsICR0aGlzLT5vcHRpb25zWyd1ZHQnXSk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgJHRtcCA9IFtdOwogICAgICAgICR2YWx1ZV9vcHRpb25zID0gVXNlclRhZ09wZXJhdGlvbnM6OmdldF9pbnN0YW5jZSgpLT5DYWxsVXNlclRhZygkdGhpcy0+b3B0aW9uc1sndWR0J10sICR0bXApOwogICAgICAgIGlmICggISR2YWx1ZV9vcHRpb25zICkgewogICAgICAgICAgICAkdmFsdWVfb3B0aW9ucyA9IFtdOwoKICAgICAgICB9IGVsc2VpZiAoICFpc19hcnJheSgkdmFsdWVfb3B0aW9ucykgKSB7ICAgIC8vIGNvbnZlcnQgY3NsIHN0cmluZyBpbnRvIGFycmF5CiAgICAgICAgICAgICR2YWx1ZV9vcHRpb25zID0gJHRoaXMtPmdldF9hcnJheV9mcm9tX2NzbCgkdmFsdWVfb3B0aW9ucyk7CgogICAgICAgIH0KICAgICAgICByZXR1cm4gYXJyYXlfZmxpcCgkdmFsdWVfb3B0aW9ucyk7ICAvLyBmb3IgbGVnYWN5IGNvbXBhdGliaWxpdHkKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gYXJyYXkgJG9wdGlvbnMgYXJyYXkgb2YgJ3ZhbHVlJyA9PiAnVGV4dCcKICAgICAqICBAcGFyYW0gc3RyaW5nICR0ZW1wbGF0ZV9uYW1lIC0gdGVtcGxhdGUgbmVlZHMgdG8gZWl0aGVyOgogICAgICogICAgICAgICAgICAgICAgICAgICAgLSBzZXQgJG9wdGlvbnMgYXJyYXkgb2YgJ3ZhbHVlJyA9PiAnVGV4dCcgd2l0aCBzY29wZT1nbG9iYWwsIG9yIAogICAgICogICAgICAgICAgICAgICAgICAgICAgLSBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mICdUZXh0LC4uLicgb3IgJ1RleHQ9dmFsdWUsLi4uJyAgIAogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0X3ZhbHVlc19mcm9tX3RlbXBsYXRlKCR0ZW1wbGF0ZV9uYW1lKQogICAgewogICAgICAgICRzbWFydHkgPSBcQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+R2V0U21hcnR5KCk7CgogICAgICAgIGlmICggISRzbWFydHktPnRlbXBsYXRlRXhpc3RzKCdjbXNfdGVtcGxhdGU6Jy4kdGVtcGxhdGVfbmFtZSkgKSB7CiAgICAgICAgICAgICR0aGlzLT5lcnJvciA9ICR0aGlzLT5tb2QtPkxhbmcoJ3RlbXBsYXRlX2Vycm9yJywgJHRlbXBsYXRlX25hbWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICAkdGVtcGxhdGVfdmFsdWVzID0gdHJpbSggJHNtYXJ0eS0+ZmV0Y2goICdjbXNfdGVtcGxhdGU6Jy4kdGVtcGxhdGVfbmFtZSApICk7CiAgICAgICAgJG9wdGlvbnMgPSAkc21hcnR5LT5nZXRUZW1wbGF0ZVZhcnMoJ29wdGlvbnMnKTsKCiAgICAgICAgaWYgKCAhZW1wdHkoJG9wdGlvbnMpICYmIGlzX2FycmF5KCRvcHRpb25zKSApIHsgICAvLyBmaXJzdCBzZWUgaWYgJG9wdGlvbnMgYXJyYXkgc2V0IAogICAgICAgICAgICByZXR1cm4gJG9wdGlvbnM7CiAgICAgICAgfQogICAgICAgIGlmICggIWVtcHR5KCR0ZW1wbGF0ZV92YWx1ZXMpICkgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPmdldF9hcnJheV9mcm9tX2NzbCggJHRlbXBsYXRlX3ZhbHVlcyApOwogICAgICAgIH0KCiAgICB9CgoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIGFycmF5ICRvcHRpb25zIGFycmF5IG9mICd2YWx1ZScgPT4gJ1RleHQnCiAgICAgKiAgQHBhcmFtIHN0cmluZyAkY3VzdG9tZ3NfZmllbGQgLSBuZWVkcyB0byBiZSBhICd0ZXh0YXJlYScgY29udGFpbmluZyBhIHNldCBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLAogICAgICogICAgICBlaXRoZXIgb24gc2VwYXJhdGUgbGluZXMgb3Igc2VwYXJhdGVkIGJ5IGNvbW1hcwogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gZ2V0X3ZhbHVlc19mcm9tX2N1c3RvbWdzKCRjdXN0b21nc19maWVsZCkKICAgIHsKICAgICAgICAkQ3VzdG9tR1MgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0N1c3RvbUdTJyk7CiAgICAgICAgaWYgKCAhaXNfb2JqZWN0KCRDdXN0b21HUykgKSB7CiAgICAgICAgICAgICR0aGlzLT5lcnJvciA9ICR0aGlzLT5tb2QtPkxhbmcoJ21vZHVsZV9lcnJvcicsICdDdXN0b20gR2xvYmFsIFNldHRpbmdzJyk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgICRDR1NfZmllbGQgPSAkQ3VzdG9tR1MtPkdldEZpZWxkKCAkY3VzdG9tZ3NfZmllbGQgKTsKICAgICAgICBpZiAoIGVtcHR5KCRDR1NfZmllbGRbJ3ZhbHVlJ10pICkgewogICAgICAgICAgICAkdGhpcy0+ZXJyb3IgPSAkdGhpcy0+bW9kLT5MYW5nKCdjdXN0b21nc19maWVsZF9lcnJvcicsICRjdXN0b21nc19maWVsZCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9IAogICAgICAgIAogICAgICAgIC8vIHJlcGxhY2UgYW55IG5ld2xpbmVzIHdpdGggY29tbWFzIHRvIHNlcGFyYXRlIGVhY2ggdGl0bGUtdmFsdWUgcGFpcgogICAgICAgICRDR1NfZmllbGQgPSBzdHJfcmVwbGFjZShQSFBfRU9MLCAnLCcsICRDR1NfZmllbGRbJ3ZhbHVlJ10pOwogICAgICAgIHJldHVybiAkdGhpcy0+Z2V0X2FycmF5X2Zyb21fY3NsKCAkQ0dTX2ZpZWxkICk7CiAgICB9CgoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBmb3JtYXR0ZWQgaHRtbCBmcm9tIHNtYXJ0eSBoZWxwIHRlbXBsYXRlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfZmllbGRfaGVscCgpCiAgICB7CiAgICAgICAgJGhlbHBfZmlsZW5hbWUgPSAkdGhpcy0+bW9kLT5HZXRNb2R1bGVQYXRoKCkgLkRJUkVDVE9SWV9TRVBBUkFUT1IuICdsaWInIC5ESVJFQ1RPUllfU0VQQVJBVE9SLiAKICAgICAgICAgICAgJ2ZpZWxkZGVmcycgLkRJUkVDVE9SWV9TRVBBUkFUT1IuICR0aGlzLT5maWVsZCAuRElSRUNUT1JZX1NFUEFSQVRPUi4gCiAgICAgICAgICAgICR0aGlzLT5tb2Q6OkhFTFBfVEVNUExBVEVfUFJFRklYIC4gJHRoaXMtPm1vZDo6RklFTERfREVGX1BSRUZJWCAuICR0aGlzLT5maWVsZCAuICcudHBsJzsKICAgICAgICAkZmllbGRfaGVscCA9IChpc19yZWFkYWJsZSgkaGVscF9maWxlbmFtZSkpID8gQGZpbGVfZ2V0X2NvbnRlbnRzKCRoZWxwX2ZpbGVuYW1lKSA6ICcnOwoKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiRmaWVsZF9oZWxwLCBudWxsLCBudWxsLCAkc21hcnR5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdmaWVsZGRlZicsICR0aGlzKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGZvcm1hdHRlZCBodG1sIGZyb20gc21hcnR5IGhlbHAgdGVtcGxhdGUKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9kZW1vX2lucHV0KCAkcGFyYW1zPVtdICkKICAgIHsKICAgICAgICAkcGFyYW1zWydmaWVsZCddID0gJHRoaXMtPmZpZWxkOwogICAgICAgICR0aGlzLT52YWx1ZSA9IE5VTEw7CiAgICAgICAgJHRoaXMtPmRlbW9fY291bnQrKzsKICAgICAgICAkdGhpcy0+YmxvY2tfbmFtZSA9ICR0aGlzLT5tb2Q6OkRFTU9fQkxPQ0tfUFJFRklYLiR0aGlzLT5maWVsZC4kdGhpcy0+ZGVtb19jb3VudDsgCgogICAgICAgIC8vIHJlLWluaXRpYWxpc2Ugd2l0aCBuZXcgJHBhcmFtcyBmcm9tIGhlbHAgY2FsbAogICAgICAgICR0aGlzLT5pbml0aWFsaXNlX29wdGlvbnMoJHBhcmFtcyk7CgogICAgICAgIHJldHVybiAkdGhpcy0+Z2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKTsKCiAgICB9CgoKCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/css/ecb2_admin.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogZWNiMl9hZG1pbi5jc3MgLSB2MS4yIC0gMjRNYXIyMg0KDQogICAgLSB2MS4yIC0gMjRNYXIyMiAtIGFkZGQgaW4gY29scGljayBjc3MNCiAgICAtIHYxLjEgLSAxNkZlYjE5IC0gZWNiX3JlcGVhdGVyIGFkZGVkICYgYmVnYW4gY29uc29saWRhdGluZyBDU1MgaW50byB0aGlzIGZpbGUNCiAgICAtIHYxLjAgLSAxOEFwcjE3IC0gaW5pdGlhbCBjc3MgZmlsZQ0KDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCi5zb3J0YWJsZS1lY2IyLWxpc3QgdHIge2N1cnNvcjptb3ZlO30NCiNsb2FkZXIge3BhZGRpbmctbGVmdDo1MHB4O30NCg0KLmVjYjItYnV0dG9uLWlubGluZSB7cGFkZGluZy1yaWdodDoxMHB4OyBwYWRkaW5nLWxlZnQ6MTBweDsgZm9udC1zaXplOjIwcHg7IGZvbnQtd2VpZ2h0OmJvbGQ7fQ0KDQouZWNiX3JlcGVhdGVyIC5yZXBlYXRlci13cmFwcGVyIHt3aWR0aDoxMDAlO30NCi5lY2JfcmVwZWF0ZXIgLnJlcGVhdGVyLXdyYXBwZXI6Zmlyc3QtY2hpbGQgLmVjYjItcmVwZWF0ZXItcmVtb3ZlIHtkaXNwbGF5Om5vbmU7fQ0KLmVjYl9yZXBlYXRlciAucmVwZWF0ZXItZmllbGQge21heC13aWR0aDpjYWxjKDEwMCUgLSAxMDBweCk7fQ0KDQouZWNiX2NvbXBhY3QgLmVjYl9zZWxlY3RfZWRpdDo6YmVmb3JlIHtjb250ZW50OidIaWRlJzt9DQouZWNiX2NvbXBhY3Qgc2VsZWN0IHtkaXNwbGF5OmlubGluZS1ibG9jazsgbWF4LWhlaWdodDo4MHZoO30NCi5lY2JfY29tcGFjdDpub3QoLnNob3cpIC5lY2Jfc2VsZWN0X2VkaXQ6OmJlZm9yZSB7Y29udGVudDonRWRpdCc7fQ0KLmVjYl9jb21wYWN0Om5vdCguc2hvdykgc2VsZWN0IHtkaXNwbGF5Om5vbmU7fQ0KDQouZWNiMi1oZWxwIC5oZWxwLXRvYyB7cG9zaXRpb246LXdlYmtpdC1zdGlja3k7IHBvc2l0aW9uOnN0aWNreTsgcmlnaHQ6MDsgdG9wOjA7IGZsb2F0OnJpZ2h0OyB3aWR0aDoyMCU7DQogICAgaGVpZ2h0OmNhbGMoMTAwdmggLSAzcmVtKTsgb3ZlcmZsb3cteTphdXRvO30NCi5lY2IyLWhlbHAgLmhlbHAtY29udGVudCB7d2lkdGg6NzclOyBvdmVyZmxvdzpoaWRkZW47fQ0KLmVjYjItaGVscCBoMSwgLmVjYjItaGVscCBoMiwgLmVjYjItaGVscCBoMywgLmVjYjItaGVscCBoNCwgLmVjYjItaGVscCBoNSwgLmVjYjItaGVscCBoNiB7DQogICAgbWFyZ2luLXRvcDowOyBtYXJnaW4tYm90dG9tOi41cmVtO30NCi5lY2IyLWhlbHAgcCB7bWFyZ2luLWJvdHRvbTouNXJlbTt9DQouZWNiMi1oZWxwIHVsIHttYXJnaW4tdG9wOjAgIWltcG9ydGFudDt9DQouZWNiMi1oZWxwIC5oZWxwLXRvYyB1bCB7bWFyZ2luOjAgMCAuNXJlbSAwICFpbXBvcnRhbnQ7fQ0KLmVjYjItaGVscCAuaGVscC10b2MgdWwgYSB7Y29sb3I6aW5oZXJpdDt9DQoNCi5lY2IyLWhlbHAgLm10LTAge21hcmdpbi10b3A6MDt9DQouZWNiMi1oZWxwIC5tYi0wIHttYXJnaW4tYm90dG9tOjA7fQ0KLmVjYjItaGVscCAuYm9yZGVyLWJvdHRvbSB7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTYhaW1wb3J0YW50O30NCg0KLmVjYjItaGVscCBwcmUge21hcmdpbi1sZWZ0OjA7fQ0KDQovKiBjb2xwaWNrIENvbG9yIFBpY2tlciAvIGh0dHBzOi8vZ2l0aHViLmNvbS9qb3NlZHZxL2NvbHBpY2stalF1ZXJ5LUNvbG9yLVBpY2tlciAgaHR0cDovL3d3dy5odG1sZHJpdmUubmV0L2l0ZW1zL2RlbW8vMTM1OC9jb2xwaWNrLUEtalF1ZXJ5LVJHQi1IRVgtYW5kLUhTQi1Db2xvci1QaWNrZXItcGx1Z2luLWlzLWZyZWUtbGlnaHR3ZWlnaHQtYW5kLWN1c3RvbWl6YWJsZQ0KKi8NCg0KLypNYWluIGNvbnRhaW5lciovDQouY29scGljayB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KICAgIGJveC1zaXppbmc6Y29udGVudC1ib3g7DQoJd2lkdGg6IDM0NnB4Ow0KCWhlaWdodDogMTcwcHg7DQoJb3ZlcmZsb3c6IGhpZGRlbjsNCglkaXNwbGF5OiBub25lOw0KCWZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOw0KICAgIGRpcmVjdGlvbjpsdHI7DQoJYmFja2dyb3VuZDojZWJlYmViOw0KCWJvcmRlcjogMXB4IHNvbGlkICNiYmI7DQoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7DQoJLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7DQoJYm9yZGVyLXJhZGl1czogNXB4Ow0KCQ0KCS8qUHJldmVudHMgc2VsZWN0aW5nIHRleHQgd2hlbiBkcmFnZ2luZyB0aGUgc2VsZWN0b3JzKi8NCgktd2Via2l0LXVzZXItc2VsZWN0OiBub25lOw0KCS1tb3otdXNlci1zZWxlY3Q6IG5vbmU7DQoJLW1zLXVzZXItc2VsZWN0OiBub25lOw0KCS1vLXVzZXItc2VsZWN0OiBub25lOw0KCXVzZXItc2VsZWN0OiBub25lOw0KfQ0KLypDb2xvciBzZWxlY3Rpb24gYm94IHdpdGggZ3JhZGllbnRzKi8NCi5jb2xwaWNrX2NvbG9yIHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJbGVmdDogN3B4Ow0KCXRvcDogN3B4Ow0KCXdpZHRoOiAxNTZweDsNCgloZWlnaHQ6IDE1NnB4Ow0KCW92ZXJmbG93OiBoaWRkZW47DQoJb3V0bGluZTogMXB4IHNvbGlkICNhYWE7DQoJY3Vyc29yOiBjcm9zc2hhaXI7DQp9DQouY29scGlja19jb2xvcl9vdmVybGF5MSB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCWxlZnQ6MDsNCgl0b3A6MDsNCgl3aWR0aDogMTU2cHg7DQoJaGVpZ2h0OiAxNTZweDsNCgktbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0xLHN0YXJ0Q29sb3JzdHI9JyNmZmZmZmYnLCBlbmRDb2xvcnN0cj0nIzAwZmZmZmZmJykiOyAvKiBJRTggKi8NCgliYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpOyAvKiBGRjMuNisgKi8NCgliYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDEpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovDQoJYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqLw0KCWJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDEpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqLw0KCWJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpOyAvKiBJRTEwKyAqLw0KCWJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsMjU1LDI1NSwxKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTsNCglmaWx0ZXI6ICBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTEsc3RhcnRDb2xvcnN0cj0nI2ZmZmZmZicsIGVuZENvbG9yc3RyPScjMDBmZmZmZmYnKTsgLyogSUU2ICYgSUU3ICovDQp9DQouY29scGlja19jb2xvcl9vdmVybGF5MiB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCWxlZnQ6MDsNCgl0b3A6MDsNCgl3aWR0aDogMTU2cHg7DQoJaGVpZ2h0OiAxNTZweDsNCgktbXMtZmlsdGVyOiAicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KEdyYWRpZW50VHlwZT0wLHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwJykiOyAvKiBJRTggKi8NCgliYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7IC8qIEZGMy42KyAqLw0KCWJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUscmdiYSgwLDAsMCwwKSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDAsMCwwLDEpKSk7IC8qIENocm9tZSxTYWZhcmk0KyAqLw0KCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDEpIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqLw0KCWJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwxKSAxMDAlKTsgLyogT3BlcmEgMTEuMTArICovDQoJYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwwLDAsMCkgMCUscmdiYSgwLDAsMCwxKSAxMDAlKTsgLyogSUUxMCsgKi8NCgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMSkgMTAwJSk7IC8qIFczQyAqLw0KCWZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDAwMDAnLCBlbmRDb2xvcnN0cj0nIzAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi8NCn0NCi8qQ2lyY3VsYXIgY29sb3Igc2VsZWN0b3IqLw0KLmNvbHBpY2tfc2VsZWN0b3Jfb3V0ZXIgew0KCWJhY2tncm91bmQ6bm9uZTsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJd2lkdGg6IDExcHg7DQoJaGVpZ2h0OiAxMXB4Ow0KCW1hcmdpbjogLTZweCAwIDAgLTZweDsNCglib3JkZXI6IDFweCBzb2xpZCBibGFjazsNCglib3JkZXItcmFkaXVzOiA1MCU7DQp9DQouY29scGlja19zZWxlY3Rvcl9pbm5lcnsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJd2lkdGg6IDlweDsNCgloZWlnaHQ6IDlweDsNCglib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTsNCglib3JkZXItcmFkaXVzOiA1MCU7DQp9DQovKlZlcnRpY2FsIGh1ZSBiYXIqLw0KLmNvbHBpY2tfaHVlIHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJdG9wOiA2cHg7DQoJbGVmdDogMTc1cHg7DQoJd2lkdGg6IDE5cHg7DQoJaGVpZ2h0OiAxNTZweDsNCglib3JkZXI6IDFweCBzb2xpZCAjYWFhOw0KCWN1cnNvcjogbi1yZXNpemU7DQp9DQovKkh1ZSBiYXIgc2xpZGluZyBpbmRpY2F0b3IqLw0KLmNvbHBpY2tfaHVlX2FycnMgew0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglsZWZ0OiAtOHB4Ow0KCXdpZHRoOiAzNXB4Ow0KCWhlaWdodDogN3B4Ow0KCW1hcmdpbjogLTdweCAwIDAgMDsNCn0NCi5jb2xwaWNrX2h1ZV9sYXJyIHsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCgl3aWR0aDogMDsgDQoJaGVpZ2h0OiAwOyANCglib3JkZXItdG9wOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KCWJvcmRlci1sZWZ0OiA3cHggc29saWQgIzg1ODU4NTsNCn0NCi5jb2xwaWNrX2h1ZV9yYXJyIHsNCglwb3NpdGlvbjphYnNvbHV0ZTsNCglyaWdodDowOw0KCXdpZHRoOiAwOyANCgloZWlnaHQ6IDA7IA0KCWJvcmRlci10b3A6IDZweCBzb2xpZCB0cmFuc3BhcmVudDsNCglib3JkZXItYm90dG9tOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7IA0KCWJvcmRlci1yaWdodDogN3B4IHNvbGlkICM4NTg1ODU7IA0KfQ0KLypOZXcgY29sb3IgYm94Ki8NCi5jb2xwaWNrX25ld19jb2xvciB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCWxlZnQ6IDIwN3B4Ow0KCXRvcDogNnB4Ow0KCXdpZHRoOiA2MHB4Ow0KCWhlaWdodDogMjdweDsNCgliYWNrZ3JvdW5kOiAjZjAwOw0KCWJvcmRlcjogMXB4IHNvbGlkICM4ZjhmOGY7DQp9DQovKkN1cnJlbnQgY29sb3IgYm94Ki8NCi5jb2xwaWNrX2N1cnJlbnRfY29sb3Igew0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglsZWZ0OiAyNzdweDsNCgl0b3A6IDZweDsNCgl3aWR0aDogNjBweDsNCgloZWlnaHQ6IDI3cHg7DQoJYmFja2dyb3VuZDogI2YwMDsNCglib3JkZXI6IDFweCBzb2xpZCAjOGY4ZjhmOw0KfQ0KLypJbnB1dCBmaWVsZCBjb250YWluZXJzKi8NCi5jb2xwaWNrX2ZpZWxkLCAuY29scGlja19oZXhfZmllbGQgIHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJaGVpZ2h0OiAyMHB4Ow0KCXdpZHRoOiA2MHB4Ow0KCW92ZXJmbG93OmhpZGRlbjsNCgliYWNrZ3JvdW5kOiNmM2YzZjM7DQoJY29sb3I6I2I4YjhiODsNCglmb250LXNpemU6MTJweDsNCglib3JkZXI6MXB4IHNvbGlkICNiZGJkYmQ7DQoJLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7DQoJLW1vei1ib3JkZXItcmFkaXVzOiAzcHg7DQoJYm9yZGVyLXJhZGl1czogM3B4Ow0KfQ0KLmNvbHBpY2tfcmdiX3Igew0KCXRvcDogNDBweDsNCglsZWZ0OiAyMDdweDsNCn0NCi5jb2xwaWNrX3JnYl9nIHsNCgl0b3A6IDY3cHg7DQoJbGVmdDogMjA3cHg7DQp9DQouY29scGlja19yZ2JfYiB7DQoJdG9wOiA5NHB4Ow0KCWxlZnQ6IDIwN3B4Ow0KfQ0KLmNvbHBpY2tfaHNiX2ggew0KCXRvcDogNDBweDsNCglsZWZ0OiAyNzdweDsNCn0NCi5jb2xwaWNrX2hzYl9zIHsNCgl0b3A6IDY3cHg7DQoJbGVmdDogMjc3cHg7DQp9DQouY29scGlja19oc2JfYiB7DQoJdG9wOiA5NHB4Ow0KCWxlZnQ6IDI3N3B4Ow0KfQ0KLmNvbHBpY2tfaGV4X2ZpZWxkIHsNCgl3aWR0aDogNjhweDsNCglsZWZ0OiAyMDdweDsNCgl0b3A6IDEyMXB4Ow0KfQ0KLypUZXh0IGZpZWxkIGNvbnRhaW5lciBvbiBmb2N1cyovDQouY29scGlja19mb2N1cyB7DQoJYm9yZGVyLWNvbG9yOiAjOTk5Ow0KfQ0KLypGaWVsZCBsYWJlbCBjb250YWluZXIqLw0KLmNvbHBpY2tfZmllbGRfbGV0dGVyIHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJd2lkdGg6IDEycHg7DQoJaGVpZ2h0OiAyMHB4Ow0KCWxpbmUtaGVpZ2h0OiAyMHB4Ow0KCXBhZGRpbmctbGVmdDogNHB4Ow0KCWJhY2tncm91bmQ6ICNlZmVmZWY7DQoJYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2JkYmRiZDsNCglmb250LXdlaWdodDogYm9sZDsNCgljb2xvcjojNzc3Ow0KfQ0KLypUZXh0IGlucHV0cyovDQouY29scGlja19maWVsZCBpbnB1dCwgLmNvbHBpY2tfaGV4X2ZpZWxkIGlucHV0IHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJcmlnaHQ6IDExcHg7DQoJbWFyZ2luOiAwOw0KCXBhZGRpbmc6IDA7DQoJaGVpZ2h0OiAyMHB4Ow0KCWxpbmUtaGVpZ2h0OiAyMHB4Ow0KCWJhY2tncm91bmQ6IHRyYW5zcGFyZW50Ow0KCWJvcmRlcjogbm9uZTsNCglmb250LXNpemU6IDEycHg7DQoJZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7DQoJY29sb3I6ICM1NTU7DQoJdGV4dC1hbGlnbjogcmlnaHQ7DQoJb3V0bGluZTogbm9uZTsNCn0NCi5jb2xwaWNrX2hleF9maWVsZCBpbnB1dCB7DQoJcmlnaHQ6IDRweDsNCn0NCi8qRmllbGQgdXAvZG93biBhcnJvd3MqLw0KLmNvbHBpY2tfZmllbGRfYXJycyB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXRvcDogMDsNCglyaWdodDogMDsNCgl3aWR0aDogOXB4Ow0KCWhlaWdodDogMjFweDsNCgljdXJzb3I6IG4tcmVzaXplOw0KfQ0KLmNvbHBpY2tfZmllbGRfdWFyciB7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXRvcDogNXB4Ow0KCXdpZHRoOiAwOyANCgloZWlnaHQ6IDA7IA0KCWJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7DQoJYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICM5NTk1OTU7DQp9DQouY29scGlja19maWVsZF9kYXJyIHsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJYm90dG9tOjVweDsNCgl3aWR0aDogMDsgDQoJaGVpZ2h0OiAwOyANCglib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KCWJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KCWJvcmRlci10b3A6IDRweCBzb2xpZCAjOTU5NTk1Ow0KfQ0KLypTdWJtaXQvU2VsZWN0IGJ1dHRvbiovDQouY29scGlja19zdWJtaXQgew0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglsZWZ0OiAyMDdweDsNCgl0b3A6IDE0OXB4Ow0KCXdpZHRoOiAxMzBweDsNCgloZWlnaHQ6IDIycHg7DQoJbGluZS1oZWlnaHQ6MjJweDsNCgliYWNrZ3JvdW5kOiAjZWZlZmVmOw0KCXRleHQtYWxpZ246IGNlbnRlcjsNCgljb2xvcjogIzU1NTsNCglmb250LXNpemU6IDEycHg7DQoJZm9udC13ZWlnaHQ6Ym9sZDsNCglib3JkZXI6IDFweCBzb2xpZCAjYmRiZGJkOw0KCS13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4Ow0KCS1tb3otYm9yZGVyLXJhZGl1czogM3B4Ow0KCWJvcmRlci1yYWRpdXM6IDNweDsNCn0NCi5jb2xwaWNrX3N1Ym1pdDpob3ZlciB7DQoJYmFja2dyb3VuZDojZjNmM2YzOw0KCWJvcmRlci1jb2xvcjojOTk5Ow0KCWN1cnNvcjogcG9pbnRlcjsNCn0NCg0KLypmdWxsIGxheW91dCB3aXRoIG5vIHN1Ym1pdCBidXR0b24qLw0KLmNvbHBpY2tfZnVsbF9ucyAgLmNvbHBpY2tfc3VibWl0LCAuY29scGlja19mdWxsX25zIC5jb2xwaWNrX2N1cnJlbnRfY29sb3J7DQoJZGlzcGxheTpub25lOw0KfQ0KLmNvbHBpY2tfZnVsbF9ucyAuY29scGlja19uZXdfY29sb3Igew0KCXdpZHRoOiAxMzBweDsNCgloZWlnaHQ6IDI1cHg7DQp9DQouY29scGlja19mdWxsX25zIC5jb2xwaWNrX3JnYl9yLCAuY29scGlja19mdWxsX25zIC5jb2xwaWNrX2hzYl9oIHsNCgl0b3A6IDQycHg7DQp9DQouY29scGlja19mdWxsX25zIC5jb2xwaWNrX3JnYl9nLCAuY29scGlja19mdWxsX25zIC5jb2xwaWNrX2hzYl9zIHsNCgl0b3A6IDczcHg7DQp9DQouY29scGlja19mdWxsX25zIC5jb2xwaWNrX3JnYl9iLCAuY29scGlja19mdWxsX25zIC5jb2xwaWNrX2hzYl9iIHsNCgl0b3A6IDEwNHB4Ow0KfQ0KLmNvbHBpY2tfZnVsbF9ucyAuY29scGlja19oZXhfZmllbGQgew0KCXRvcDogMTM1cHg7DQp9DQoNCi8qcmdiaGV4IGxheW91dCovDQouY29scGlja19yZ2JoZXggLmNvbHBpY2tfaHNiX2gsIC5jb2xwaWNrX3JnYmhleCAuY29scGlja19oc2JfcywgLmNvbHBpY2tfcmdiaGV4IC5jb2xwaWNrX2hzYl9iIHsNCglkaXNwbGF5Om5vbmU7DQp9DQouY29scGlja19yZ2JoZXggew0KCXdpZHRoOjI4MnB4Ow0KfQ0KLmNvbHBpY2tfcmdiaGV4IC5jb2xwaWNrX2ZpZWxkLCAuY29scGlja19yZ2JoZXggLmNvbHBpY2tfc3VibWl0IHsNCgl3aWR0aDo2OHB4Ow0KfQ0KLmNvbHBpY2tfcmdiaGV4IC5jb2xwaWNrX25ld19jb2xvciB7DQoJd2lkdGg6MzRweDsNCglib3JkZXItcmlnaHQ6bm9uZTsNCn0NCi5jb2xwaWNrX3JnYmhleCAuY29scGlja19jdXJyZW50X2NvbG9yIHsNCgl3aWR0aDozNHB4Ow0KCWxlZnQ6MjQwcHg7DQoJYm9yZGVyLWxlZnQ6bm9uZTsNCn0NCg0KLypyZ2JoZXggbGF5b3V0LCBubyBzdWJtaXQgYnV0dG9uKi8NCi5jb2xwaWNrX3JnYmhleF9ucyAgLmNvbHBpY2tfc3VibWl0LCAuY29scGlja19yZ2JoZXhfbnMgLmNvbHBpY2tfY3VycmVudF9jb2xvcnsNCglkaXNwbGF5Om5vbmU7DQp9DQouY29scGlja19yZ2JoZXhfbnMgLmNvbHBpY2tfbmV3X2NvbG9yew0KCXdpZHRoOjY4cHg7DQoJYm9yZGVyOiAxcHggc29saWQgIzhmOGY4ZjsNCn0NCi5jb2xwaWNrX3JnYmhleF9ucyAuY29scGlja19yZ2JfciB7DQoJdG9wOiA0MnB4Ow0KfQ0KLmNvbHBpY2tfcmdiaGV4X25zIC5jb2xwaWNrX3JnYl9nIHsNCgl0b3A6IDczcHg7DQp9DQouY29scGlja19yZ2JoZXhfbnMgLmNvbHBpY2tfcmdiX2Igew0KCXRvcDogMTA0cHg7DQp9DQouY29scGlja19yZ2JoZXhfbnMgLmNvbHBpY2tfaGV4X2ZpZWxkIHsNCgl0b3A6IDEzNXB4Ow0KfQ0KDQovKmhleCBsYXlvdXQqLw0KLmNvbHBpY2tfaGV4IC5jb2xwaWNrX2hzYl9oLCAuY29scGlja19oZXggLmNvbHBpY2tfaHNiX3MsIC5jb2xwaWNrX2hleCAuY29scGlja19oc2JfYiwgLmNvbHBpY2tfaGV4IC5jb2xwaWNrX3JnYl9yLCAuY29scGlja19oZXggLmNvbHBpY2tfcmdiX2csIC5jb2xwaWNrX2hleCAuY29scGlja19yZ2JfYiB7DQoJZGlzcGxheTpub25lOw0KfQ0KLmNvbHBpY2tfaGV4IHsNCgl3aWR0aDoyMDZweDsNCgloZWlnaHQ6MjAxcHg7DQp9DQouY29scGlja19oZXggLmNvbHBpY2tfaGV4X2ZpZWxkIHsNCgl3aWR0aDo3MnB4Ow0KCWhlaWdodDoyNXB4Ow0KCXRvcDoxNjhweDsNCglsZWZ0OjgwcHg7DQp9DQouY29scGlja19oZXggLmNvbHBpY2tfaGV4X2ZpZWxkIGRpdiwgLmNvbHBpY2tfaGV4IC5jb2xwaWNrX2hleF9maWVsZCBpbnB1dCB7DQoJaGVpZ2h0OiAyNXB4Ow0KCWxpbmUtaGVpZ2h0OiAyNXB4Ow0KfQ0KLmNvbHBpY2tfaGV4IC5jb2xwaWNrX25ld19jb2xvciB7DQoJbGVmdDo5cHg7DQoJdG9wOjE2OHB4Ow0KCXdpZHRoOjMwcHg7DQoJYm9yZGVyLXJpZ2h0Om5vbmU7DQp9DQouY29scGlja19oZXggLmNvbHBpY2tfY3VycmVudF9jb2xvciB7DQoJbGVmdDozOXB4Ow0KCXRvcDoxNjhweDsNCgl3aWR0aDozMHB4Ow0KCWJvcmRlci1sZWZ0Om5vbmU7DQp9DQouY29scGlja19oZXggLmNvbHBpY2tfc3VibWl0IHsNCglsZWZ0OjE2NHB4Ow0KCXRvcDogMTY4cHg7DQoJd2lkdGg6MzBweDsNCgloZWlnaHQ6MjVweDsNCglsaW5lLWhlaWdodDogMjVweDsNCn0NCg0KLypoZXggbGF5b3V0LCBubyBzdWJtaXQgYnV0dG9uKi8NCi5jb2xwaWNrX2hleF9ucyAgLmNvbHBpY2tfc3VibWl0LCAuY29scGlja19oZXhfbnMgLmNvbHBpY2tfY3VycmVudF9jb2xvciB7DQoJZGlzcGxheTpub25lOw0KfQ0KLmNvbHBpY2tfaGV4X25zIC5jb2xwaWNrX2hleF9maWVsZCB7DQoJd2lkdGg6ODBweDsNCn0NCi5jb2xwaWNrX2hleF9ucyAuY29scGlja19uZXdfY29sb3J7DQoJd2lkdGg6NjBweDsNCglib3JkZXI6IDFweCBzb2xpZCAjOGY4ZjhmOw0KfQ0KDQovKkRhcmsgY29sb3Igc2NoZW1lKi8NCi5jb2xwaWNrX2Rhcmsgew0KCWJhY2tncm91bmQ6ICMxNjE2MTY7DQoJYm9yZGVyLWNvbG9yOiAjMmEyYTJhOw0KfQ0KLmNvbHBpY2tfZGFyayAuY29scGlja19jb2xvciB7DQoJb3V0bGluZS1jb2xvcjogIzMzMzsNCn0NCi5jb2xwaWNrX2RhcmsgLmNvbHBpY2tfaHVlIHsNCglib3JkZXItY29sb3I6ICM1NTU7DQp9DQouY29scGlja19kYXJrIC5jb2xwaWNrX2ZpZWxkLCAuY29scGlja19kYXJrIC5jb2xwaWNrX2hleF9maWVsZCB7DQoJYmFja2dyb3VuZDogIzEwMTAxMDsNCglib3JkZXItY29sb3I6ICMyZDJkMmQ7DQp9DQouY29scGlja19kYXJrIC5jb2xwaWNrX2ZpZWxkX2xldHRlciB7DQoJYmFja2dyb3VuZDogIzEzMTMxMzsNCglib3JkZXItY29sb3I6ICMyZDJkMmQ7DQoJY29sb3I6ICM2OTY5Njk7DQp9DQouY29scGlja19kYXJrIC5jb2xwaWNrX2ZpZWxkIGlucHV0LCAuY29scGlja19kYXJrIC5jb2xwaWNrX2hleF9maWVsZCBpbnB1dCB7DQoJY29sb3I6ICM3YTdhN2E7DQp9DQouY29scGlja19kYXJrIC5jb2xwaWNrX2ZpZWxkX3VhcnIgew0KCWJvcmRlci1ib3R0b20tY29sb3I6IzY5Njk2OTsNCn0NCi5jb2xwaWNrX2RhcmsgLmNvbHBpY2tfZmllbGRfZGFyciB7DQoJYm9yZGVyLXRvcC1jb2xvcjojNjk2OTY5Ow0KfQ0KLmNvbHBpY2tfZGFyayAuY29scGlja19mb2N1cyB7DQoJYm9yZGVyLWNvbG9yOiM0NDQ7DQp9DQouY29scGlja19kYXJrIC5jb2xwaWNrX3N1Ym1pdCB7DQoJYmFja2dyb3VuZDogIzEzMTMxMzsNCglib3JkZXItY29sb3I6IzJkMmQyZDsNCgljb2xvcjojN2E3YTdhOw0KfQ0KLmNvbHBpY2tfZGFyayAuY29scGlja19zdWJtaXQ6aG92ZXIgew0KCWJhY2tncm91bmQtY29sb3I6IzEwMTAxMDsNCglib3JkZXItY29sb3I6IzQ0NDsNCn0NCg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_end/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_end/class.ecb2fd_admin_fieldset_end.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX2ZpZWxkc2V0X2VuZCBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzID0gW107CiAgICAgICAgLy8gJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWyAnYWxpYXMnID0+ICdwYXJhbWV0ZXInIF07CiAgICAgICAgLy8gJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyA9IEZBTFNFOyAgICAvLyBkZWZhdWx0OiB0cnVlCgogICAgfQoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsgICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignaXNfZGVtbycsICR0aGlzLT5kZW1vX2NvdW50PjAgKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_end/help.ecb2fd_admin_fieldset_end.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5fZmllbGRzZXRfZW5kLnRwbCAqfQo8cD5TaW1wbHkgdGhlIGFkbWluX2ZpZWxkc2V0X2VuZCB0byBjbG9zZSBhbiBhZG1pbl9maWVsZHNldF9zdGFydC4gU2VlIGFib3ZlIGZvciBkZW1vLjwvcD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX2ZpZWxkc2V0X2VuZCBibG9jaz0idGVzdDE2IiBsYWJlbD0nJmFtcDtuYnNwOyd9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX2ZpZWxkc2V0X2VuZCcsIGFsaWFzOiAnPGI+ZmllbGRzZXRfZW5kPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CjwvdWw+Cgo8cD5USVA6IHNldCBsYWJlbD0nJmFtcDtuYnNwOycgdG8gbm90IHNob3cgdGhlIGZpZWxkIGxhYmVsLjwvcD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_end/input.ecb2fd_admin_fieldset_end.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX2ZpZWxkc2V0X2VuZC50cGwgLSB2MS4wIC0gMjVKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICEkaXNfZGVtb30KICAgICAgICAgICAgPC9wPgogICAgICAgIDwvZGl2PgogICAgPC9maWVsZHNldD4KICAgIDxkaXY+CiAgICAgICAgPHA+CntlbHNlfQogICAgPC9maWVsZHNldD4Key9pZn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_start/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_start/class.ecb2fd_admin_fieldset_start.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX2ZpZWxkc2V0X3N0YXJ0IGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICdsZWdlbmQnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXQogICAgICAgIF07CiAgICAgICAgLy8gJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWyAnYWxpYXMnID0+ICdwYXJhbWV0ZXInIF07CiAgICAgICAgLy8gJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyA9IEZBTFNFOyAgICAvLyBkZWZhdWx0OiB0cnVlCgogICAgfQoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdsZWdlbmQnLCAkdGhpcy0+b3B0aW9uc1snbGVnZW5kJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2lzX2RlbW8nLCAkdGhpcy0+ZGVtb19jb3VudD4wICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_start/help.ecb2fd_admin_fieldset_start.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5fZmllbGRzZXRfc3RhcnQudHBsICp9CjxwPkNyZWF0ZXMgdGhlIHN0YXJ0IG9mIGEgZmllbGRzZXQgZm9yIGdyb3VwaW5nIHJlbGF2YW50IGFkbWluIGZpZWxkcyB0b2dldGhlci4gTm90ZTogYSBtYXRjaGluZyAnYWRtaW5fZmllbGRzZXRfZW5kJyBibG9jayBpcyByZXF1aXJlZCBmb3IgZWFjaCAnYWRtaW5fZmllbGRzZXRfc3RhcnQnLjwvcD4KCgp7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ2xlZ2VuZCc9PidBIHNhbXBsZSBmaWVsZHNldCB3aXRoIGxlZ2VuZCddKX0KICAgIHNvbWUgYWRtaW4gZmllbGRzIGNhbiBnbyBpbiBoZXJlIDopCiAgICA8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5fZmllbGRzZXRfc3RhcnQgYmxvY2s9InRlc3QiIGxhYmVsPSIxNTogYWRtaW5fZmllbGRzZXRfc3RhcnQifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlRJUDogc2V0IGxhYmVsPScmbmJzcDsnIHRvIG5vdCBzaG93IHRoZSBmaWVsZCBsYWJlbC48L3A+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnYWRtaW5fZmllbGRzZXRfc3RhcnQnLCBhbGlhczogJzxiPmZpZWxkc2V0X3N0YXJ0PC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+bGVnZW5kIChvcHRpb25hbCkgLSB0ZXh0IHRvIHNob3cgYXMgZmllbGRzZXQgbGVnZW5kIC0gZGVmYXVsdDogJyc8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_fieldset_start/input.ecb2fd_admin_fieldset_start.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX2ZpZWxkc2V0X3N0YXJ0LnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgISRpc19kZW1vfQogICAgPC9wPgogICAgICAgIDwvZGl2Pgp7L2lmfQogICAgICAgICAgICA8ZmllbGRzZXQgbmFtZT0ieyRibG9ja19uYW1lfSI+CiAgICAgICAge2lmICRsZWdlbmR9CiAgICAgICAgICAgIDxsZWdlbmQ+eyRsZWdlbmR9PC9sZWdlbmQ+CiAgICAgICAgey9pZn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0Ke2lmICEkaXNfZGVtb30KICAgICAgICA8ZGl2PgogICAgPHA+CnsvaWZ9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_hr/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_hr/class.ecb2fd_admin_hr.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX2hyIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICcnICAgICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJycgICAgICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnZGVmYXVsdF92YWx1ZScgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sIAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgICAgIC8vICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsgJ2FsaWFzJyA9PiAncGFyYW1ldGVyJyBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CgoKCiAgICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd2YWx1ZScsICR0aGlzLT52YWx1ZSApOwoKCiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_hr/help.ecb2fd_admin_hr.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5faHIudHBsICp9CjxwPkRpc3BsYXlzIGFuICdocicgb24gdGhlIGFkbWluIHBhZ2UuPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX2hyIGJsb2NrPSJ0ZXN0MTciIGRlc2NyaXB0aW9uPSdDYW4gYWxzbyBhZGQgYSBkZXNjcmlwdGlvbiBpbiBoZXJlIDopJ317L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnYWRtaW5faHInLCBhbGlhczogJzxiPmhyPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKPHA+VElQOiBzZXQgbGFiZWw9JyZhbXA7bmJzcDsnIHRvIG5vdCBzaG93IHRoZSBmaWVsZCBsYWJlbC48L3A+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_hr/input.ecb2fd_admin_hr.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX2hyLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAgPGhyIHN0eWxlPSJkaXNwbGF5OmJsb2NrOyBib3JkZXI6MCBub25lOyBiYWNrZ3JvdW5kOiNjY2M7IiAvPgo=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_image/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_image/class.ecb2fd_admin_image.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX2ltYWdlIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICdpbWFnZScgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXQogICAgICAgIF07CiAgICAgICAgLy8gJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWyAnYWxpYXMnID0+ICdwYXJhbWV0ZXInIF07CiAgICAgICAgLy8gJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyA9IEZBTFNFOyAgICAvLyBkZWZhdWx0OiB0cnVlCgogICAgfQoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsKICAgICAgICAkaGVscF9zYW1wbGVfZmlsZW5hbWUgPSAnc2FtcGxlX2FkbWluX29ubHlfaW1hZ2UucG5nJzsKICAgICAgICAkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CiAgICAgICAgJGltZ191cmwgPSBjbXNfam9pbl9wYXRoKCAkY29uZmlnWyd1cGxvYWRzX3VybCddLCAkdGhpcy0+b3B0aW9uc1snaW1hZ2UnXSApOwogICAgICAgICRpbWdfcGF0aCA9IGNtc19qb2luX3BhdGgoICRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCAkdGhpcy0+b3B0aW9uc1snaW1hZ2UnXSApOwogICAgICAgIGlmICggJHRoaXMtPm9wdGlvbnNbJ2ltYWdlJ109PSRoZWxwX3NhbXBsZV9maWxlbmFtZSkgewogICAgICAgICAgICAvLyBqdXN0IHRvIG1ha2Ugc3VyZSB0aGUgaGVscCBpbWFnZSBhbHdheXMgd29ya3MhCiAgICAgICAgICAgICRpbWdfdXJsID0gJHRoaXMtPm1vZC0+R2V0TW9kdWxlVVJMUGF0aCgpIC5ESVJFQ1RPUllfU0VQQVJBVE9SLiAnbGliJyAuRElSRUNUT1JZX1NFUEFSQVRPUi4gCiAgICAgICAgICAgICAgICAnZmllbGRkZWZzJyAuRElSRUNUT1JZX1NFUEFSQVRPUi4gJHRoaXMtPmZpZWxkIC5ESVJFQ1RPUllfU0VQQVJBVE9SLiAKICAgICAgICAgICAgICAgICRoZWxwX3NhbXBsZV9maWxlbmFtZTsgICAgICAgCgogICAgICAgIH0gZWxzZWlmICggIWlzX3JlYWRhYmxlKCRpbWdfcGF0aCkpIHsKICAgICAgICAgICAgJHRoaXMtPmVycm9yID0gJHRoaXMtPm1vZC0+TGFuZygnZXJyb3JfZmlsZW5hbWUnLCAkaW1nX3VybCwgJ2ltYWdlJyk7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+bW9kLT5lcnJvcl9tc2coJHRoaXMtPmVycm9yKTsKICAgICAgICB9CiAgICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdpbWdfdXJsJywgJGltZ191cmwgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_image/help.ecb2fd_admin_image.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5faW1hZ2UudHBsICp9CjxwPkRpc3BsYXlzIGFuIGltYWdlIG9uIGFuIGFkbWluIHBhZ2Ugb25seS4gVXNlZnVsbHkgdG8gcHJvdmlkZSBleHRyYSBndWlkYW5jZSB0byBlZGl0b3JzLjwvcD4KCjxmaWVsZHNldD4KICAgIHskZmllbGRkZWYtPmdldF9kZW1vX2lucHV0KFsnaW1hZ2UnPT4nc2FtcGxlX2FkbWluX29ubHlfaW1hZ2UucG5nJywgJ2Rlc2NyaXB0aW9uJz0+IlRoaXMgaXMgYW4gYWRtaW4gb25seSBpbWFnZSJdKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX2ltYWdlIGltYWdlPSdzYW1wbGVfYWRtaW5fb25seV9pbWFnZS5wbmcnIGJsb2NrPSJ0ZXN0MTkiIGxhYmVsPSIxOTogYWRtaW5faW1hZ2UiIGRlc2NyaXB0aW9uPSJUaGlzIGlzIGFuIGFkbWluIG9ubHkgaW1hZ2UifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdhZG1pbl9pbWFnZScsIGFsaWFzOiAnPGI+aW1hZ2U8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5pbWFnZSAocmVxdWlyZWQpIC0gcGF0aCBhbmQgZmlsZW5hbWUgcmVsYXRpdmUgdG8gdGhlIHVwbG9hZHMgZGlyZWN0b3J5PC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_image/input.ecb2fd_admin_image.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX2ltYWdlLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAgPGltZyBzcmM9InskaW1nX3VybH0iIGFsdD0ieyRibG9ja19uYW1lfSIgc3R5bGU9Im1heC13aWR0aDoxMDAlIj4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_image/sample_admin_only_image.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAyAAAADICAYAAAAQj4UaAAAAAXNSR0IArs4c6QAAIABJREFUeF7sfQmcJEWV/pdZ1fd9zfRczIyccqOyoqtcrq7Ira6CwnK4HqjIsK4KHqugiO66ciiKCjIoAroqoHitK4fiX1kPQFFRYIaBue/u6buqMv+/L7JeT3ROZlV2d1VXdc8LbLunKjPixReRVe+Ldzm+7/vQpggoAoqAIqAIKAKKgCKgCCgCisAMIOAoAZkBlHUIRUARUAQUAUVAEVAEFAFFQBEwCCgB0Y2gCCgCioAioAgoAoqAIqAIKAIzhoASkBmDWgdSBBQBRUARUAQUAUVAEVAEFAElILoHFAFFQBFQBBQBRUARUAQUAUVgxhBQAjJjUOtAioAioAgoAoqAIqAIKAKKgCKgBET3gCKgCCgCioAioAgoAoqAIqAIzBgCSkBmDGodSBFQBBQBRUARUAQUAUVAEVAElIDoHlAEFAFFQBFQBBQBRUARUAQUgRlDQAnIjEGtAykCioAioAgoAoqAIqAIKAKKgBIQ3QOKgCKgCCgCioAioAgoAhVBYNMzO/DT236PP/9yDTJjuYrIoINODYGRoTEsWN6JY19/GF722kMn1YkSkEnBpRcrAoqAIqAIKAKKgCKgCJQCgfvvfAzXXXRXKbrSPiqMwJEn7IuPfffcxFIoAUkMlV6oCCgCioAioAgoAoqAIlAqBF7XcyVyWa9U3Wk/FUbggk+8Cqe/66WJpFACkggmvUgRUAQUAUVAEVAEFAFFoFQI/Op7f8anz/tWqbrTfqoAgXn7tOPLj61IJIkSkEQw6UWKgCKgCCgCioAioAgoAqVC4M5PPYA7P/1AqbrTfqoEgbt3fCyRJEpAEsGkFykCioAioAgoAoqAIqAIlAoBJSClQrK6+lECUl3rodIoAoqAIqAIKAKKgCKgCOQRUAIyN7fCrCAgDzzwAK644gpcc801OPLII4uuxKOPPor29nYsW7as6LXFLvjzn/+MxYsXo7W1tdilc/J9YnnppZfiox/9KI4//viSzrGU61RSwWI6EywuueQSnHHGGdMe8plnnjF9lGKfTlsY7UARUAQUAUVAEahCBJSAVOGilECkihGQjo4O7Ny5s+AUTj/9dNx999342Mc+ZgjI6tWriyprVOqWL1+O4447DiQu02kkH4cccohRvO+///7pdDVr750M9pOZZCnXaTLjTufaa6+91pAx7oVSkDE+A0uXLgWJjTZFQBFQBBQBRUAR2BMBJSBzc1dUhICQeFCZk0Zl9NZbbzWkwVbs+Lf88Bo5MS60FOybp9Pnn3+++ZluO+GEE8py+j9duWbqfuJPBbkYWZysPKVep8mOP5XruZ+4T33fn8rte9zDfUqLHkmeNkVAEVAEFAFFQBFQArK37IGKEJAwuMVOlnlSTHJCa4i2mUWA2B9xxBHTtibNrNTlGe2oo44y5EMtFuXBV3tVBBQBRUARUATCCKgFZG7uiaogIHKyvGPHDhO7YTcqe1T8GP+xYsUKowg/+OCDxhWLLlpR1/f19RnCIo2n7ffcc8+4BYX3JYklERcu2ypDK8yvf/1rrFu3Di972cvw4he/OPHOsOUQaw9fe+yxxybIKwouZeR4lJ3XhS1ExQa2x2NfnHfUeNIPceWc5Vpxk2L8h5zSy/0kJcSeslFersd55503LpKsE6/h60nWieOxf47P37Q2TGXeFMKeC3ELj89rbJyTjOc4Dhj/QcJs3xteB85jzZo1hrhFjcvr5Rp7n8bNP7xfiQuvZf9xsShJ95rgQLwEe1tmWz5eK+vNv7muGr9S7CnU9xUBRUARUASmg8BsJyCsedHUVo/Vf9w4HRgqci/lXnZorxl7y3M7sfnZwqETkxGyKggICQbJR5SL1cqVK3HBBRcYv3vGgdhxHVRUH3nkkQnzDZ9S8/ozzzxzDxciUSQLgfX85z8fxx57LL70pS+Zyz73uc/h8ssvx+Dg4ITbPvOZz+C9731vQdxpveE8qOS1tbWBJIkyUIGjcm+7OHFeJD38zZgDnrrzerZbbrklkWsZFWS6j4XHY5+Uw3Yj4jXEiFiJbLyOpI992DEPvIav3XXXXbjuuusm3CNEhf1z3aQvzpHrZCu2UdYEIXrEg/LY87ZJUCGgOW/ea+8ljsu5hF3yOB7f4+uCieAshFfGknkL/ryXJINxSeHGGCTKXshlMMq1jXLwHhIcYmzPX/Y558ZnReSMwoXYc9/Ye4rXsfE9Wy5ZK5IZNpJhNsamcN3keYvClddRriRkfjIfSnqtIqAIKAKKgCIgCEyVgJz4piNx4tnFExcVQvrDp66c1EJQYeeYLz75ICw/rNcQj3B7/KFnjCL/8A+ewMM/fCK2/8nKP9g3YkgO+378l8EYk22U98WvOcjIf+jLlkXKzzHuu/1RI/tUxhCZKk5AqCTRzYenqVSOwo1WDyq6cirPf4vSyJPgcEAwT6ntvkQZpCIlp7UkA/y7kOJEK8dLXvISfP/738cpp5yCLVu2YN68eeju7jan6/vuuy+effZZ/PWvf8VLX/pSdHZ2xq6zWHGo5HGOYtngb8pruzgJHnyPiiavp7Iqp9O2Uhg3oJAPKpH2eOyHimt4PCq7VKR5rZyoUxnmPKms2pYpCUrndexHLCPsm8orX6fiTCWa6xTnXhdeJ86Fr7EfkcWeN9+LUvZtDOLmTZlIFqgs2yf27JPvcQ9xT9jjcU/a5FbmLQp3XDyIEOZiRDHKrZB7lY34ybqLFYpklfudRILPgOwHrifXZ/yBvvtuQ8C4NrLPiQvnxvnarowyJ5JJWXd53uyEDxzLfo64N2VPxz23k/3Q0+sVAUVAEVAEFIEoBKZKQM667Hic9YHpZe88oyNZjCYV97d88tUgaZhMEyLy/Rt/vYcyP1352Texu++OZIluiNWpFx0TSTqi5kTCw/4p+1RaxQmInCyHT5xlMjwpp7ITtljIfVGn87byF6XoJgHqxhtvxEUXXYS1a9di0aJF5iRYAtInGzQshENclWR8UQDtU2wZh9aD8PViISiW3YtyUlEWd6rweDaWIkMYf1EwSWLsE3MqqnTDCa+H9BPOPpZ0nWQ8yho+Vee8SYaKBX/LvCmvbW2hIk6l3J6jjXMYp6jxZN4iQ1x2MCrqxKzQGslcw65tJCVR8+ceZguvUZScHF+siTYGQizsPqJIkGBlP1dyr70uQpSTWBKTPG96jSKgCCgCioAiMBsJCC0dn/j++YkV96g5XnrsjXu4aE2XgMg4tFjQkkPCENUo/3tuOMNYbKbSSEBuvvzHk7614gREFLm41KZUvsJKMGcZPpGOe40n3jwlZv+TcRUh+SAJsZXeAw88EJ7n4frrr8dJJ52UCOxCxCXqBDqKlMhAcoKdRLmNUgyjxqMSSrITdheSk3dJhSwy8HpxL7IVXFHQw+sYtb5RayeWgyi5SUIpY5J5R7kkRcWyiGUm6vooEhF+LUpRL7aXBUPbrdAmlSRQYYuCKPpRz0DYjU1kippTlGzcT+FrhWyI1UvGt/cB8aTrFtejVCmJEz1MepEioAgoAorAXodANVtAaPGg8j6d9szjG7Hi5Tfu0UWpCAg7pttXlDsZXa0of5Sr2GTmdPU5dxqXssm0ihOQ8MmyLbwo71FKadR9Ua+J+wlJCJUrKlxxgcH22HS/6unpwfe+973xl3/84x8bxWvjxo24+OKLDREp1qJOj+WeqOB7mUM4ID9KiY4aO0q5l+vC7jVRJ/FybZRlSmSIcruhgi5WG1uupOsU5frDfoq56MlYheYdRQLjEh9EnexHYR9OjiBuSkkyhoWV/DjyzNcLWQjD1j2ZU1S9nKh1CN8fNQchSyTy/OE1nDsJETEvRarrYs+Qvq8IKAKKgCKw9yJQrQSEFoNrfv6ORAtDkiHB3OEbrn/X3SamItxKSUDYd9Q4nMNV956PxtY9Y1VEnqH+EWM96VkyMUmULS/dvd52xO7yGklAqTgBKeSyUig9b5JTagGAShMVJboORQVERwHV0NBggt7f//73T3j797//vXE/euihh/DCF74Qv/3tbwviXMh9SOIRwgHTtNSET/ujTs2jBi40nrjnSHByIXxFSbZPuOWE3Y4ZoAx2nIJd34XvRRGTqLWLS0QQDv6OA7sQkRW5bde8OMIUdW3cvG0LwmQKNkqsiZ3ON67eSly/UcSEfcTVy4kqeijrT+xIyjlPEguJHbGJEV3ruC95HX+XohJ8kg8ovUYRUAQUAUVg70ag1ASEZOCmhC5DtBzENZKPOLclZoy641MPGLcqO/sVr2dw92kXHWMUeir3bz382kj3qDgCwpiOKMJCa8YxJx8USxQYNH71m+/cYzpRVpw//fIZ/Oz2iePQSvKeL5xhgtSjWpQbWaGdW1ECUkhxpdBxgb5Rp9TyWqFsSaLEFwucffzxx3HYYYcZ68epp54aiZ8ohrfffjvOPvvsWIyjlE1eLApk2LWFinHUHKJOzeMISFThwKjx4lyG5CScv20XNLk+bJ2JU9CTWhM4j7hYnUKWDXv+hYhX2DJQKH4hSuGPIwEkkByXijzXjWsZlUghvE5Rc42rt1KMmNhxGXF9xLm3MbkDSZmQiShiIXMvFn+zd3896uwVAUVAEVAEyoVAqQkIlesPnTK57FbhuRWyTpDgsP+4mAvpi0SEhOT7X4wO4o4b485PP2CCv6MaSQItGlHWFhIhkoSoJmOREJGcRREcue8rf1gRSXLiLDlx+6KiBCTqtNkWNM46EqXwxinBUcpfOFA6fI0EoD/55JPYb7/9Yp8pKpLFUvBGpWulAswTfxIwOyi40BwKnW6HFXFmo7IzI3E8xheQmNjkJiomhH0J2aE7UfiUPuqEvdgpvW15iJpjITejQpYNe95x5CgqhqGQVSVK4Y/DXuI3+JvWsijXp/DmKeTaFkU840hFFC7iJmVbz+y9Zq+DkJKo2jtRuGqsR7m+WrVfRUARUAQUgUIIVCMB+cYzl0XGTZDcfPLNdxYlH0lWfCoEhP0ykxUzcoUbycWbln4qdmiOR+JRLLXuW65+NU59xzF79FOIGEUNWlECUuh0e7qn1KIoi5LIyYvSFZdxSwA655xz8Mc//nG8JgLlZKrdV73qVeYSpuT9+Mc/buqCSJreuBWV03dR4IQM8ESZRCEq21CUUkiyEw4IjxozajzGrVA5Do8nZID3UDlloyJNFyteG469iZMhTkEvlCjAVtbFFSiqpkTSSuyi2FMx51zoKsQ9wOxXHMvOKFbIXSpqvLh5k6ixX8GK/RZrUW5vce51heJ+osi5kBLBUeZPIskUvja+ggHXXiw5UYUTo3DlHIXkiIWPBFdSNhfDQN9XBBQBRUARUASSIlBtBISuTpffdlak+JO1AhTCYKoEJE6+Ulh+KO9U5QrPtaIEJM69RBQcKjVR9RTiTqlt1yNRnMRnXd6TOgiFAtHpB88g9DvvDHzlRFlbuHAhDjjggHHl66yzzsIdd9xR8BmiUkbXFgbBU27KJQqyFNuTDuIU+WKpim0B7PGkXgNP1tk38QyTG15DBVrwkPoRVMRt7AsFrBciJmF3sKg5xlk5kgbey/xFuee/Ze4S02BnQON4xNQu1Md7ouZYaN4ynmQRS5LcIMqtMM69rhgxiUpNzblxr8n8uYacpxS0FKzofsV9HcaA8pGg23OR/c977WdPiLzsT76vrlpJv1L1OkVAEVAEFIEkCFQbAWEcRFSBQ8Z9MJ6jVG2qin6chSIuBmSy8sbNf7KZsCpKQKRYXVQmHSo1/JETWhugqPuiXqPyyFN+W8G3LSJxoMtJtvzevn076I711FNPmd88MT7kkENw9NFHJ1o3KtJUJqnUUUGUYoKUj8qnNI7H98J4yDyisIgSIG484hl1Si/VsWVsud8eL+o1jk0FltgT1zC2UWsSNUeJmwjPW8YkZklTKPMerrkU6osKlo7bd5OZN+deKO1t3MaImqvgH14beQak+Kb0WQiXuLXn68RXLHAkZsRBEiFwLP6biRqiLIT2s8R9zLWWNWGflJ2vaXB6oo8EvUgRUAQUAUUgIQLVRkC+/NgKzNtnz4xQk3VBKjb9qRAQxpWwJklUYxreQkH1xeSR9+Pcz9687FOTcj2rKAFJOlm9ThGoRgSkgny4hko1yioykYSQOFHmKIsNrVlaXLCaV1BlUwQUAUVg70Kg1ASEMQ6FgqwFXWabioqHiFOcS6Xgy/hxBIQkIkwkSIgY0B6XlatU7ldx8SVTsa4oAdm7nmOdbYkQEPercEriEnVftm5opaCLFuNBwm0yrn5lE1A7VgQUAUVAEVAELARKTUCSghtHKCpNQJLKL9clzcpVrN9CFd8nm4KXYykBKYa4vq8I5BGgGxKVd3GdS5IUoNrAk3gOcZlizA9jgMQFi65Z/DtJPEu1zU3lUQQUAUVAEZh7CFQTASnk4nRGR/FENJNZnekWIpR6J6Vwu2J6X7p2RVlYvn/jr3Fzwroq9vyVgExmN+i1ezUCUmuEILCWjMSSzDZQSD4oO8mUNAbSM9YkHG8y2+am8ioCioAioAjMLQSUgEx9PelCxjojJAlTbYXIx3SsK0pAproiet9eiQCtA0kSGcwGcBg8LlnTZoO8KuPsRoAZ0hhjVKom/dmZ10rZf6nk1H4UAUVgeggoAZkefrybRQjpUlasOGLUSLR80PITbqwrsuLlNxatGxInvRKQ6a+r9qAIKAKKwKxHwFbkbbIwXaXe87xxbKbbVxjkcH8yh1KPM+sXVyegCMxiBEpNQJgu92e3P1oUkaiifIVcsKYSB1FIiDgXLAbHh4PoKRctFa9405FobK2P7Jb3Xf/O3ZlhiwIA4D03nIET33RkJPlgtXcSm6k2JSBTRU7vUwQUAUVgDiFgE5BcLmdqushPqaZZjjoxJBupVArpdHpcXtd1SyWy9qMIKAIVRqDUBGS6GaEqHYReLN1vXJ0OLuPbjrg2scWinOSDsigBqfCDpcMrAoqAIlA5BEgyAreonO9jaGgY/f27MDQyBs8LCAjbdIkDCc3IyEjQT8m8sIKOUq6L2toadLS1orOzHXW1NXCNq1dgeXEcJSOV2186siIwfQSqjYDcvuaySCtDKaugE7Wp1AERtONkvPmDPzYxIcVaucmHEpBiK6DvKwKKgCIwpxEgySDBcLB24xZs3rwF2WwWvpOGXyKmQAtFJpPB4OAgvJISkN0L4/qACx/NTfVYsmQRFvbOgwMP5CGum5rTK6iTUwTmOgLVRkCuuvd8HPL3e8ZEMNsU4yxK1aZDQOJkLGY9oewzQT6UgJRql2g/ioAioAjMQgRo5chlPaxduwEbd+w0MzBGD2M1KI2pYiYICI0dJByplIt0ysFBB+6L+T3dcHy+pgRkFm5NFVkRGEeg2ghIofS4pYwDKQcBKRYHEkc+ppPtKm4rqwuWPuSKgCKgCOylCGRzOWzcuBWbNm7DKAJrCK0G4pZVClhIQOiCNTAwUDYLCAJPMdInQzqaG+twyMEHoaO9BaRSpc7AVQpctA9FQBFIhkC1ERBWHf/yYysihX/4B0/g6nPuTDaxIldNlYAwGJ3y8Xe4FXLBmknyQbmUgJRkm2gnioAioAjMDgTseI6+gQGsWrUOI6Me/DKFSjAgnG5dhoDsZgplA8uhO5bvoaOzBUccfijqUrstOZodq2ywa8eKQNkQqDYCwonGuTjxPZIQxoMkSXlLMkOiEJVNaqoEJI5IULa46u4zTT6UgJTtcdGOFQFFQBGoTgRsAvLk6rXYum0nfLop7c6WW1LBZ5qAuAyqZwA9xvD8g/bH8iUL1QJS0hXVzhSBmUWg1ASEyv5NCSt3M2NWVCuUjpfXcwwGe296difsPlhJfN6SdlNX48UnHwQSkLi4jNg0vLc/ukca4ea2elOlnClz2Wdci6rWXoiwXP3mOzHQN5J4wemqlYR4KQFJDKleqAgoAorA3EDApNZl1qtsDo88/jTGchkzMcc4K5W+zTQBcXwHJCFuykddXQovedGRqK0NUvRqRqzSr6/2qAiUG4FSE5DJyBulsMv9b7n61Tj1HcdMprvIaydLQKY6YNQ4pZqDyBRnYYmSWV2wprqSep8ioAgoArMQAdIPzweeW7cB6zf1jc9guql246CYaQJiy1GbTuHIQw9Ad0cLfOTgOrWzcMVUZEVg70agWgkIXafoirXs0N5pLdBMEJCHf/gEaM0It0KuZFOZlBKQqaCm9ygCioAiMAMIlEvRt0UvFOvAQPOs5+OPf/oLhsfKP+FKEhDadJ63zwIcsO9S5Lws0qma8k9YR1AEFIGSIlCtBISTJAmhFeHEs/esFp4UhHITELqAffLNd0a6RikBSbpKep0ioAgoArMcAc8rU7CFhQsJSBwJ4fBDI6N44om/YdQrf4raShIQBz4Wdnfi4IP2RzrtQCukz/KHR8XfKxGoZgIiC8LYi7MvOx49S+LjL6IWb6h/xMSj3Hf7o3u8XSjdb5KNQOJxx6ceAOuTxDUlIEmQ1GsUAUVAEZjlCND6MZLJYcvW7di+bQfGsj78ElXqdpBDOuWipaUFC+Z1oamB7kYkOyQju+M7WAxw/cbtWLthm7EKlLtVkoAwLW9LQz0OO3g/tLU2wnXS5Z6u9q8IKAIlRmCqBISk4BVvmrplgtP40CmTKyzIwHL+HPayZZFkZMtzO7H52Z1Y9ceNJltWIXIwWfnZJwPAGQDPMaIya4WXhtab5x02PRcyu0+SqSTj8h6NASnxg6LdKQKKgCIQRkDqUPD36rUbsXnLVvieAzipkiWmdYKS5qaOR09XG/ZZ3AsmtyL5sAlIJpfDqmfWY9uOAVb+KPtiVZaAALWug0Ofvy9653VpEHrZV1sHUARKj8BUCUjpJZlaj8xKRUKgbSICSkB0RygCioAiUGYEJO6DBfn+8MTTGBoeg+Ok4LpOUHm8BI31L3zPM25G9bUO9t93KRoaag0h4VjSBodH8NSqtRgczjIcvQQjF+6iogSEhRU9Dwfutw+et2xxrFta2UHQARQBRWDKCMx2AjLlic/xG5WAzPEF1ukpAopA5RFg3AdjMkZGRvD4357DWKa8rk8OPBx44BJ0tDTD8VOGhEjbsqMfq1ZvgIcMPK88qXdtxCtKQIwDGtDW3IgXvfBQ1Lq756tFCSv/XKgEikASBJSAJEFp9l2jBGT2rZlKrAgoArMMgWohIIz/WLthC9Zv2A64OeRyFjMpE6aVJiA0MdW4wEuOeSGa63en4VUCUqYF124VgRIjoASkxIBWSXdKQKpkIVQMRUARmLsIVAsByeZyeHLVc9jRN0TfJPj+3mEBgZfFgfvva1LySlMCMnefN53Z3EJACcjcWk+ZjRKQubmuOitFQBGYIQQm1vUIYioY18H4DjbP800VbloCdrtg5coqnQsfBx+4DC1NjXCcIDCdMo1lMnjsL2uQyWTzlcH3AgtIsCJorK/Dy44+HKmUCyYFc4xzVtBmojbLxAVnZrJgb7CZvWJyCDBoRd3EyvpwaOezDgElILNuyRIJrAQkEUx6kSKgCCgC0QjEKa+st0H1MlD+SQKCGJA/P1n+GJC0GwShtzbXjwvN8Tdt3oLVa7caMkSZZkLxrrgL1m6WgYP3X4pFC3sBx4cr1h9TM6UyuzuwwgQbRUiibZlRK01l1kVHrS4EmK726nP2rOJdXVKqNJNBYP6yDnzpkUsS3eL4M/FNlUgUvUgRUAQUgepBwP5ozOU8ZDIZZLNZDI/xd85kpqLrE5VJZsHatG0XeF05m+s46O5sR12dCxbj43k/T9t37OzD0KgHxoLwmpn4WK8mApJ2fMyb1426ujRStIA4LoK4dBKBmWMhQWYyF6lUytRuqa+rQWNjA+rr6iZk6lICUs6nRPueTQicveSTGB4Ym00iq6wFEHjrp0/CyW97cSKMlIAkgkkvUgQUgb0BgbDinsv5GBgcxs6+IYyMjoAxH8MjoxjLZvJpdv28yw8T35Y/7oJrEBAMZt8KfMICawzpSGD9mKlWNQTEwODtxsUAEDhizRwaE1HnenCd0ukUGhrq0drcjIXzutDW3hKkT7ZIkZKRmdqxOk41IvDLu/+E/3rLt8fdFqtRRpUpGQLHnHwQLrvtrGQX81NaLSCJsdILFQFFYA4jEFbeM5kcNmzYgl1DI2B2XXFvynk5Q0BobShZsY+EuBZSVmeSfBgi5LrGIjQwMACvYqp+QuAqcZnFfhzfQ10K2He/5Vi0cD5qUqlxsqgEpBKLo2NWEwJ9Wwfxs9sewZ/+3xpkx8obR1dN854LsowMjWGf588zVeJf9KoDJjUlJSCTgksvVgQUgbmKgK3AM5h7w4at2LlrGJ7nwDGFBUWj9DGay4JEBPlg45nCRAnITCFdmnFkz7g+kA48w7D//suxZMF8EzQvMUSlGU17UQQUAUVg9iCgBGT2rJVKqggoAmVEgG48bOQZ27b3Y8OmHfD8gHhMVPx9ZHJZE/9Bl6yZbiLLTFs8wvNUC0iRlWcAumUFodWDnletLY04+MDnobm5wTiJBe5YMxenMtP7VcdTBBQBRSAKASUgui8UAUVAETDEg6Z/B2NjHtY8uwFDo/GuACQeJijd3LN3NiUgu9ddiIbJQJbnEnwthXxAejqNdDpt3NaYPnleTxuWL10E1yUBYeyQEpC98ynSWSsCey8CSkD23rXXmSsCisAEBJi+FhjYNYw1z21EtkAxPxIQZr4ay2X2WgyVgOxJQPiKyUTmukinUqivqTMZsdh2W9E8pFwPRxz2fNTWpMzrGgey1z5GOnFFYK9FQAnIXrv0OnFFQBGYiAAJiIN167YYFyzfDRTHqMaTbhKQ0excSx8ZpPblf0F+LUvJDqX3ZZYnBqEPDg4iR/c1KXgRaNvjNwZ9Sc0U82b+PbqvzfDJf5myhDEpssv94gaZr2pqapFiwIcXuO+ZLGVWDJHvZXDIQfuhra1JyYd+DCkCisBeiYASkL1y2XXSioAisCcCzOXk4qmnNmBweDSRbjySGTVEZKJJigMaAAAgAElEQVSCOTuxDThD4IbmogZMLEx3oSDOxeSORdplfQ0HbiqF2nTapM4cGxuDNx4/w/iYHMbGMsZFLbg3BfheUCDRjMHgawZk03pEkldGEsJxxpfDR1NTA1qbG+A6KRN9UYrGeXk5D6OjnO/ubGmFrBqel8XyJQuwcGG3EpBSLIL2oQgoArMOASUgs27JVGBFQBEoDwIs5Ofiib8+h0yW5//FA8wZA0IFnK3SQeHTx4R2ilxg/zBFvD3UNdSgvrYBjY2NqK+vQ0N9Gik3ZTI4yck+XY74H2MeDGoeFfJAKc9ksxgZHcPA4KBJ17uzvx9Mb+z7Lpw0xysvATHlGvOWh56uNuy/7z6oq0kF1gpaKErQjHXHFIPchXXrNpm9I/shioRQHhZJnN/dhuXLFikBKcEaaBeKgCIw+xBQAjL71kwlVgQUgTIgwCxYzHr1l7+sMUUF5VS/0FCe42N0dLQi2bBKDQEdpRzXR8p10d3Rga6uNtTV15uCekxD7DqA62cD1yzq2G6QMczkcOI1+QxilMuhqcMQEwe+KUkeEIGhsTH09w9g06Yt2Lx9u3F5o/GkLAUDfSna6KO+rhaHH7wfujtbgmQDxgJTGgtIjvM0lo80nlu3BevWbQ0ImeWGNmGtfKCmJoXO9kY8b9niPA8qjSyl3hPanyKgCCgC5UJACUi5kNV+FQFFYFYhQAKSyfn4y1+fNQTESRIv4LvI5jLIZseQK48aXVIMA504UPdNbIbvI5V2UF+TRntzE9raWtHQ2Ii62vj4l1IJNDQ8hh3bd2Drtm3YPjiC4aGRICltvtK7uH1NfbwgxS3tWL1d7Tjq0IOQSpVX0d+5cwB/ffK5IH0zsnl3szzerI7uMitWGjWpNNpaa7FsnwVKQKa+wHqnIqAIzGIElIDM4sVT0RUBRaB0CEyVgHh+FpnMGLL5OIjSSVT6nhjTIS5JaddBe1sL2tqa0dTYgMbaOrhGQScJKP3Y4R7pokWykc156B8axLZtO7B5yzb07xo2lhFT/DFgSlNq+buR8x0snt+JIw450Fhxytn6+4fw1789a4gs/dgcJyg2yFZTU2MyYvE1uqspASnnSmjfioAiUO0IKAGp9hVS+RQBRWBGEHjkkd8j6wG19R2JLSC+qZLuGwLC4oRlcSWaxOwHdu3CU08+gf32PwjNLS0RdwZKf3NzM+b3dJiieOm0aypRsGbFeCuzos5x/Fw+xsZxkEPWuHONjWWxcVMfnl61BlniScYwRTZkE5BFPR048tCDTOxFVHvmmWewZs0aHHfccZNAe89L+/oG8de/PQfyD7GAsP4HfyRmxliePF8JyLSQ1psVAUVgtiNQUgKyc+dOXHvttTj++OPNT7jx/euuuw5Lly7F+eefP9uxm3Py80v4ggsuwCWXXIIzzjhjzs1vNk7o0ksvNSeofK60lReBjo4OvPzY4/CxT/wnHKfGxDC8d8U7cMCBz8c73rkicnAqlcz0xDViRiypml6pgPRv3fE1XP/ZT+NzN67EUS882sjsO3QoS8H1HTTWu+id34329jYTSP66156JI444Ah/72McqGgxtV5SnJSrreYaErN+8FaMZxlgErllCKoJ5FdkPZDSsYu85WNDbicMPPRCpGBMIP+8eeOAB8DtqOq2vfzBIYuD5SNcwa1hg9aDrlewJkw0MDtpa6rF8aQ9cEwxfbDLTkUrvVQQUAUWg+hAoKQHh9Nrb23HkkUeaD/NwW7FihSEg999/fyRBqT549i6JqORS4b3mmmvAtdrbGwkZFRLu50o1Kl08lY16niol01wc99FHH8VRRx2FD33kIzjxH05FurYBzz27Gue88TQcd8Irce31Xx6f9vr1a83fCxcuDhT8vIvNaGYMOa+yKXmvuuKD+NG99+Ch3/zJWiYPdekUOjra0NvdhcbGOhMHwjm/4AUvwOmnn4677757ysv64IMPTttyMJGwBbEbTCa1fWcfnlmzFtu27TRuWbYJo5QEhOSTRGy6z9nO/kH87cm1TGCM2jpTB32c2CkBmfIW0xsVAUVgDiJQcgLCkyR+Ie3YsWMCXPxgP+GEE8zpup7mVudOorJNpSTKelWdEpdXKrHk8XS4Uo3rsWzZMkPstZUPgZUrVxrr349/+lN4Xh3GPKCurg4b1q/DsuXL0dG6G/+z/ulkvOmcC3Da6a+fkHo34zEWJFPRmiAXvPl1aGpuwee/tHIcrKaGOixa2I3WlgbUujV50kSi5OLRxx4z+4sK+FQaP9f5mT9dy8GEsU1aLAc+rUu+j+GRUZM1a81z6zGS2Z0auVQEhAcNy5cvx0c/+lFjCZpO6981hKdXbzTJjNNplkUPAv3tjFhqAZkOwnqvIqAIzBUESk5A5Iv8kUceGT855pcTTxf5wUuFSpWpubJ95u48hDCrtW7urrE9M7HODmWyuO/+XyLnufDMObZjiEhba6v5/b27v40rPvx+3PGte3HgQQfv4bY0MjaGLK0ggZo/o+ANDvTjH094Cd5w9jm45L0fhOt76Oxsx5IFXairrwvckfJVuUslGD/X29rapm05KCYPvzu27ejDn594CkMjYyazlSkkGBRuH/fH4p+u8bwK5ppOO6itrUV3dycO2G8fMMY+XDSS1p/Xvva1+O53vztt19P+gRE8u3aLqRAfkI49XauUgBRbbX1fEVAE9gYESk5A5DTJduOJc72SmBCSFt7HE2eeptFKYjded+aZZxpXgbBrEO+99dZbcddddxUlNuHxOAbHpJIpjdfQDYlfSvyb77NvKqR8jeNJo6zyw3vkPb52yy23FJWHZIz38eQtbHXgPDm+9Cmy03okp410DSJWdjxNeI4ke+w/iUsVLVRhjPnaeeedZ+TjCTFxYJ9cX44reNlzJ17hxrleccUV464elEf2CE9gbfnopsf+eI+skfRHdyQ5peTY7JPX8m9bLrmea0aMub/YOBbXh2NHNV4nffJ9Ysx+6Z4hljvBmH1TRl7DPolzksb7BUv+TZn4I42ysU/Ok9ZE7k/ZK/KePY7E7thrJ/OQfcz+eW+h2B6utY2vPQblpVVTXHUmgwGfXcZ9hS2f3EvE2p6TzJPPD9/n2nEs/rtQ3Fj4+YjaC5yPjYvsLfYtp/i/+u3v8DNDQBzcdOP12LxpIy7/6FV4dvUq/PcdX8NDPw8+K1549DFGoT/hxFfhzedeaF7btasfX//azbj3e98xlhPGYBx7/CvwT2edu8e2uPgd5+OkU87A/gcchOs/+yk88rvf4OXHnYirP/M5PPm3J/DVr3wBv3jgZ+Y+BpMfe9wrcMHb3okFCxbFbrFHfvcwLn7Hhbj6P69De1sbPnfdZ/DnPz0e+VywEz5zxMN2v+Kek1g+ro183nA/EidxR5RnhPfb+5fX8N/2vfIchT+r4ibCz3PKIX1zf/Dzh/vo41ddDSddC1oa/ucnP8aqp5/EWy+6BHd8/au457vfxODAAOb3LsAnPnmNIYis2k4ewKD7ns4m3PjFz+NrX/va+PfNZz/7Wdxzzz1G3u3btxf9zC70fJNYbN85iLXrtxoCFMR97HmHEpAkn5J6jSKgCMx1BEpOQETJ4xcVv9jiXK/4JUeFZ/Xq1UaxoMJA5YNfBmFTuPQRpYTwi4n3FXMBkPF4Lb8I5T5+ydlKPmWSa2QOfX19pn8qUfJlLUSLffELk8oflRj2xTkkiaPglyy/+GxrkWw44kEZZTwhcUIGOL64S4nyHp4jFQHK89hjj0WOYW9u8YG35bbnSDk4P8pEuZkxhnKL0lpo7uyb1/GLl7JSLio2PD2lfPa6CiZCykS5FgIgyk54/3Ct2Kc9V8pMpYVKtSjeslfifN651/gje0KUXnHHsjHmWlAe2bf8t01Qoz48eD/dPbiXOFeusxANUcSFjNpWQ3kGotxEKCP3IJ8lkcfGW8bgiWzYNdKWUbAN+8GHn78oDLhOlIE42wTU3kNhAiJ7mjKJVVTikLgn+L58NvC3TdJsuZPue3sfsj95vokL58hn+Is33WwISNZzcM7rXoNlz9sPn/iP6/CnPzyKx//wCO78xkrM712IU894nXFh+rujj8GLjj7GkI+3Xng21q19Dq859Uw0N7fgyb/9Bb948D5c+NZ34sK3vWtc5A0b1uGfTnuVef1bd37dEA8Si6Ne+HeGkLz+9Feak/03nH0uehcuwpN/fQK/ePBnWPmN78Zktgq6/upXbsBXv/wFvOdfP4Dvfut2nH/BBXje8mUm7o7PhewPESQq7oF7jnuTn3l8Xu1DBvuwhnvW3veyNnw9yWdV3BcriS6fIT6zHJtj8N98jvk753sYHhnD0888i3POeqNR8HsXLMSmjRvw98eegJTjYuVXv4jWljZ8++7/GS8QOTo6jEvedSH+9KfHzYEK+ycm/Kym7MSGP9Npw8PDWL9xGwaGmNGL6Y4ZsrJn2i0lINNBWe9VBBSBuYJAWQgIvzj4wU7FQk7M5DRbgBMCwC9+O8iXr0sMiSglk1HU4xYmbjz7ehk77HbDLygq3LbyJ8pt1Elr0sDhOPIU5ZPMPosFi0ZZmkR5pFJY6PRbFD977vYc+bqsU7G52ziJws0vXc5L1lTmSPyFgMX5YotCbivGVEgoh03exP1P5iCKua3gJn1w4/CWPsN7RF6PIpP2mGGywPfiCDZlEFJDHKkwhgmIYGaTHyqRVKZsvOUZKoQFcaZSFiYpJEyyfpRX5hDeU7L/bAxkr0TtP45HGcU6xb65R/nZIQHBSdw1o7CPcqEjKePr4TWS5/uz13wWF737Yvzv/b/E+g2b8Pbz3og3vvl8vPGcIGPf0OAgznn9yTj1zNfjovf8GxobGtHa2GxO2N964ZvwxF/+hJtuuRPLn7cfGA/C9u63n49Hf/8b/Pi+X4+Thx/eezc+ecWHzL8/9O9X4eXHv2J8i9Dqcfn73oOr//P6Ca/H7dugrkeQqfay916MXzx4Pw455FA8+PMH0WniOnysXHkrLrzwwgnJP6KeNdljxJyfNSSBgbtSFscf/wr8/Oc/h+cZxyfj+XTJpSvwueuuw1OrVwXkMH/a393ZaRT8u+6+K+8aRXeoYAaBrEFchN34mjy/YSIve5d74tFHHzHDMF0vq5uzvfo1pxkcpV1/zafx39+8Db98eHcg/ldv+gJu/soNuPyDH8U73/0eEDdWeF/xnnfhW9+6E//46pNwy8rbJsgUJNGis1cgvB3H4Zp6HvnLfSCTzWFwcNjEq5gS8cFs1QUr6QeuXqcIKAJ7HQJlISDyRULFgH+Hv/ALneZGKcKilIS/tJIGDxYaT1Zcrok6xY5SOu2T+nDgoq04FtpRcRnDwoq0fPmRABDLqBaliPI6wS58+hnuQ+ZoYywKZVjpFfnChChqPQSnKAVUvtBlzKh5U84wARFrTVguISWiZEcp+0me8ChrEO+T16P2SFKiF+UzH3VvFCmJ2lecM8mQkA3B0LYqiQujkJI4DGSt7D0Q7i9un7FPkdm2okmfUfsvaj4kOxyjGJGTOciahJNbhPeCzCPKgiQHD79/5Hd4/mGH43/vewj/85Of4HP/9Slc+elrcejhQRa0h3/1ED595YfxgX//BI55ycuNEt1YX2/cgN751nPx9osuMel6c7kcxrIZeL6HqLS41/3Xp/Dfd359D8sIxxByQivGG87+5yLbleTDM2lePS+Hk078e+zatQu/+90jeMELdmdui3quhBjaRFrWj4r+7x+hoi8kwceJx78Cjz32KJ5a/Rx29e8CT/v/+dw3Yd3atVh527eNim6K7LkuTjv5BCxatBg//MlPDclqa2lGKu2aaxwq9CQgno+UZR3gXuDa89kNW7OjrOiy7hznppV3oLW1Y5zUXP7+S/CLn983TkBocTr/3Ndhv/0OxA03rhyPhSG4N3/lC7j5pi/gkks/gDdGuMpJ3AyJF/9LuSnU1taYuh7SGAw/Ho+S4ANGLSAJQNJLFAFFYM4jUBYCYp9uF3IZiTqNjSIgcYp61Jdo1IolOQkXZTtKURIFxVbMoiw1tpJazAWrEHmKck0RRY7jip+1PVfBjb9JVPgFLS5wxfzn2Y/t7iP92m5q9kl0XEyPrIc9Xvj03JY5bCmKUlajFF4Zn4qVuBxJzIg9tigulF38/JM80VF7kPdFnfBLf0lILq+N2stR/UZZ/cIuUlFjCuEUa5G4k/FZC1sbw1jIvG3lX9zFpL+oawphEGfliyJ5cgJfzNJny510LxT6DJBn2fNzGM15hoB86Qs34N67v42vf/teNDU1myG/edtKfPMbK/Glld/EvPm95mCcLjbX/ecncd9Pf4T7fvF7dLQHirCk5I0iILSKPPW3J/Dt7wUKut1YSPDdbz8PTz35V+O2RTet+EaCEJCEzZs24LWnvAqnnXYa7r7nLjhWUcGoz5NCnzHfvesunHLaaSaj1+joCPr7RnDYIQdg//0PxPVf+VrevcjDsUcfipcdewI+/LFPIpevas7q5betvAnf+NrNOOyIF+DS930QSxYtQUtrM7q729HW2oCmpibUpGuQsiZGyxs/g6KyJEZ9rqxceQsuuOBCfOWmm02a5M1b+sYD7F93+quMW9bnvxjE65HUXfXxD+Hq/7gexx53YhCfwdobPnDzTTcYAvL5L6zEC14Q1E2Jalxnko6gknnIguPkSRWrtycomqgEJMmnsF6jCCgCcx2BshAQgiY+wbZ7hYAZ55bF90XxkpO5Qop6EmIhskiMSdyCUiYqQFHyShpU240szkUnTnkNjyunklGWgTh82DfxoX82/7aD9UWJssfhST0xKpZWVxS/8Jd/3BzjlMowgSh0Wh5lxZDXKDOJK5US9hl2JwrPlVl4qHhHzZV98j260CVNDhBlDSKuUURU8I6z3oTXXdwTeT1PmuluRGUwjH2U1Y/jc+3FCkaXIv5tu1qFFSBiwzEl9qbQB1rYbSn8LBbDIMrdajLPSZSiWewDOOleoPsaYxvCrqDsX2Ih7n/gvnECctl7V5gA9C/d+s1xET7y/kuwetVTuO3bPxh/jfP713e+xdCAL3z562huakJDQwM8sDp6Bl/98g0moNwuDPiyow8ZDziPmh9JyGX/drFx3WJsyCc/c72JDdmzcdQc0q6LRx/5Ld7xLxfgq1/9Ks6/4LwJBCTK1W33a6vzlgPHxFlwP/btGsL2/gH09/VhZGQEa9eux+tO+0e85a3vwvlvf5exIDxJgvSm1+KCf3kH/unsc4M+xhVzB3d/51u442s3Y3BwAG/657fg7HMvRCrloL42hdbWFkPUejpb0dTQYEjUlVdegSuuuBL33XefiRezWxRBl2eUgeNNLa1YtXo9tm3fiYFdQ3j1K4/BG846F5dcepnp5rL3XWwsIj/531/lCR9zmwXtA/n3/p/lriVjBxnDXEMyg0rmgQsZm3nOxhNcRbtaxe1dJSDFnmp9XxFQBPYGBMpCQOIUWvuDPa64WrgibSFFnaSCP1GkwV68JDEZcddEuWbFuQBxzDjlNbyZok4geU0hpV3eJ0ZUzu3TfioUxJ14TbZwXpS7T5wbknz5Rp1Sh4lJIauAzD9MwETp5ThUntknyZYdgMy1ovJOhTUuMNnGm7iwXwbj2oG0cQ94HAGUjFjhIG173Yu5ulEWnvTKnuU8hCDY8oQtD+G9FeXuJGtD4sn5JsHGHlP2nmQ4owzh4mxx5JP9hK2IhZ4TYsD3batiIXetuLUSYlFsLxR7vkkAr7n2s+ME5NRXnYAT/uHVuPi9gRLLdu7rT8Ehhx+By6x4A6qyZ550HA457Ehc9R/XGcWUaV8bGxuN0nrZe99tMlz9+P5fmz74NzNgJXGxYjzIVVd8yCi6375nT2uJQ5rjZ7DP4sX4yhc/j49//Mo9As3jnlchht/97nfyJ/pAZ2cXDjzoIHzxppUYHfPHA7h/RAvCFR8ytUWOfMELzTx+eO89+OQVH8b1X7wF+x1wkHFP2h3VEVhmGBj+iX+/HKuffgor3v8h/MM/ngx4wVXpVArNjTVYtKAXC3t7cNVVn8CVV16JbDZjFH4q/tLELc/eK7bFlj0ODY1i1ep1+MWDv8C73nU+PvSRq/CaU84wXbz7ovPxyO9/MyEmhK+T6L3uzFeit3chbr3tu3tsMa4ffySQ3B4/iaUjbs8qAYlDRl9XBBSBvQmBshCQuKBaATYu206U8h2nlIilIUnmoekQEDlhtZX9Qqfdhaw79saKOpXk+3LyXciFSwieTeLYH0/5p5LJJcrdJ86SU4iYhLPqxBEQCUznb1thJ66UhcpkIRIV55JX7MGNiyUK3xcXwxOHscynWCVlydYkqW7jAqzjrH52jIZkkAuT76TxR3FY8X5anygbU+CGCVUhKxAVRZJGsTLEPSd2rIFtkShEbuLkjfssSbqmEphOInz6GacZAnLNNZ/HB993KS58+7txyhmvN13RGvKO88+aEJRulHs4eNt5b8C8+QvGCYjnkRj4GBsdwVmvPQkvO+5EfOoznzP9RLlkFdq3EhNiW1DGr/dzmNfVhmVLF+MfTjzBPP/h/RD1vMprn/3sNcbyZuozPfYHvOiFR+HCt16Et7z94nHywf3ANMHfuuPr+Mn9D6O5pckMzziWb91xG37xf4+buJMoAsLrBgcG8cbT/xGHHnEUPvXZG+Dkg9CJkev4cDwP7W3N+MSVH8EPfvADM66t3MseCh9YTdznPnKeh139w/jABy7Dl798A1Z+/TvjViMSkCeffAI/+d+ABEpjUDqD0086+XR8+N8/Of66WDwCq0e+oovJarWbYikBKfZpq+8rAoqAIlAYgbIQkEJZq0TJZqYruo/Yp7RRAdNRBETSz9IdpVisBceT7D5UpuKUPqkGbAd5c2wq4uL2IkpxnJWjmOUnTEDChEG+bHldoQJ4Mo5NvgoFm/P6QtmEwlYnjh83xzilspBLVdi9SJQ+Kqt2wCm/1JO4SSVZz6htL+OGkxnY1xay2sRluorLjBWWIal7XlzmKPt+ziUqtofrTCIYJqLF9oDIKjVNmFKXSl84rXBc/E/U61EJCGyXuPC+oNwcMy5FctSaJk2ywL0l6ValH6Z8JfHg8028li7bxxCQi9+9AjfdeMOEAPTH//Ao/v0DKyaQEiEgV1/5IZOm99ovfBXd8+YHsQgAPvWJj+BXDz2I7//k5+ju6YGX8/CJKz6IH917Dx76DTM0TXTd4Yl8OCYk7MK1+w4frHC+79KFaG5qNPUuoqySe+4533ymXXrpv+Jn992Ho//uGFNlnEX4PvC+S/Hp//o8/v7lJ0yon3fx288HA7m/8/3/ZWlvA9+730arwm8LEJAAZdblIAE55qUvx4ev/LSJTAlqZKRQU5NGmr/TQercr3z5Rvzlr0/igP33gwPfBL2fccaZe2QgDB9wBc9zDl7OwcmnnIpf/vIX+J+fPTxukRELCNPySh0VErvrrvkUBgZ2jVtLuG4kHzU1NfkaHvGFJJWAqGqlCCgCisD0ECgLASl0SkpxRVmlQiB5/qOCiHmtfIFKwT/eS8WLyg1PaJNUqpYvLCpXUk+ArzEwVxQsUZb4vtS0oFLCudB1x1Za46wcxSw/9lKJ0krFjf1JetDweHyd85QaHJw/MeFJpz13OTWnAmr3SWWOeBWKA4mrB2BORvPFAEX2yRITrjEVPLv+By0FErdgK5uixMpYlJnzJtGyCZTgLPtH8GNfonjzNF4wo/LN9/gTFeQafoSoXEhdEc5fYm0oM1/n+5SVMk0m0F/uJx5slF+KSdrrE2f1s+dtWxps+YUgyl6njLyPchaqASJ9iHsfr+Xcw25cxJKvCQZSa4ZjhK2R8pxTFuLFf1M+Wli4p20CVchdq9BHXJK9YBNq7l/ZL/J8UybOy4dnCMgpJ52Cn/30J/jujx4YH5qxH+9917+YjFhvPOcC41504itfbd6X9xiYfuIrTzJB6wxK5+sf+tgncfab/xlgZqyxMZz86uNNobwbvhwESPtMoZRvl//bxWhpaTX1QEhE6K71w3vvMi5CK28PXIRoaaByzmxSy5YuQm93B/7whz8Yt75CCT/k88tHFhec/xbceuvXsHnrTqzdsAnDoxlc+xlm5rptQrpgkSsqZuWqPJGiK1l7eycamgPLyFe+cB2OeemxOPyIo0x2sHu+8y1s2rQBV//XDTjiiBegNh1kkKKiz4BuaY/8/v/w7osuwEHPPxjvuWQF/vrEn3H3XXeZPXLiiScaoihpxKMOuGR+nZ2dOOCAg3DN9V+C46ZNzIYEoR/1gqAw5Mb16/GDe+8yAf5M2Uv3KxYtpDwSZD69r9XCd6sLVjnR1b4VAUVgtiBQFgLCLwopNhcHBBUOfpGIPz0VMCopUYqyKL3si6d8ooDb9xcDnAoY76PlhU0KwbFvNiogHJ8nv3yPcxB3IFH6ZQzKyJ9w+l0qMvyRTFSFZOJ4HIPySBA176Oc9nhUWjkO5ZImFa/DWBFL9sFAUpmjzCPOAiJyEAfBgveK8k9M7MZ/S6yJ/brMnfLbY3EuvIfzJPHgXCiTkCSOyf5YkFEIFe/na5wPY12i0g/zPfbB92Wu7EvWhO9RFlqZ2Di2YFFsr3AuvJ9EgXvBdmvh33yP4/P9uLUIj0EceOLO/mwCK/3Yljz2z3HClgDBkn1znnGkUvagYBMXZxKFgyh3UcqsXC8YUB7iK0Xj7P0j19pWRF4nxQg5R/s5IQ5y7VRimHiv/Wzbe0Geb0kAwOeN4/Me2d+UxSYgDU0txtphN2bFuvO2W0w9kHB8CMkGs2SxWCHboYcfhdNf+wYc/eKXondejwkUJ2k7982vx7HHn4jXv/HN+WxSuwkIFeVv3f41kwGLjZmcWE39kn+9fLdlxNT98NDV0YrnLV2CurRr9mIcduHnlcHxfG3jho143/s/DLg1GM3m8Llr/gMb1q81ldjtxqrsdLd6zalnjMdU8H1aRFjLhCSJhOut77rEZL26/R9qM2cAACAASURBVNab8bP/+eF4F7R8nPlPbzKV4xn3UeNGZJHK1wf50Q/uMmlxaZU47vjj8PErP24CvymvZLyTvc85h2Ox5LPsnHPOxVEvegmGR3LG0sJGawfxZd90uVpx6eX4+YM/ww9/cDe+dNM3DPGIKhpY7LNiKu8rAZkKanqPIqAIzDUEykJA5hpIOp/yIkB3IkkTGyZKUZmYyitN6XsvFDdDpYkKNwl7VHB76aUp3GNUZq2ZlqFS4wkBYRpeVkIP1corKtbu3EpB/Tn+m0rtgt75aKyrC+pPuC5y+QxZmbExZHOMFyna9fgFjkv3JR+HHXwQ6ujC5MDETSRVnjOej02bt2Dt2nVwnBrkPAduKm3S6JoAjUk0jpnNZjEwMADPZMHa7bnFNLes85FO16CmtnbcguzaWaSssZg2mPgbtzQnC9fxcMD++6O9tckUDCzWbAs1p7Jp63Y89+x6eD6dvva8X9ytJLUu+5c+puNeVUxOGYd2rLaWeixf2hOkBI6QMUlfeo0ioAgoArMVASUgs3Xl5ojcxYpJigtesexS1QyHuJbFxZ5ItqnJxD6UY76F4l/KMV619TldAmLPxyYjba0tmNfdbawgbEZZzze6ZTFdLxX5XAIllIHb+yyej/k9nUi5HKW4cs64Dc93DMlYt3k71m/YmCc9vHd3tqmprAeLLg4NDZnsVizSR0uCXS9jKn0GSrqH+vo6LFnci66OZkNIAh5iVw+J7j2X85HNZLD6mbXY0T8UOK2R/DmBFUrcv/g7KXGb6jyi7lMLSCnR1L4UAUVgtiKgBGS2rtwckVsC6ukeRT9vu9FywBP5uPoNswWCQkkZ6JZF95KoejAzOT8SQcYRzHasp4NZuQhIXV0tFvb2ojZfPTt8wm4qp4+NYSSTHc8CFUdWW5sbsO+yRaivS8FNqJB7HvmBhw2bt2D9xu3IZOma5ILVvadz2s97KSdrhaSclLF4BCl0k5CiQiuVzzjlAE2NdVi+bBGaG+sM4UpCmIyC7wPbt/dh1ZoNZr67LR4147EnIj8lmb7MyXeeEpDkWOmVioAiMHcRUAIyd9d21sxMYnwkKJukhD8kIKIQF8riVe0TFTcrxkswbkNiXDg/vpckML5cc5Sib1KTg1aQycZglEu2me63XASEenPvvHlobQ4qqueP8s2fwcl8oLCP5TyMjo4ai0gcAVk4rwtLF88DkMmf6KeLwkSXpP7BQTy96hmMZemyBaOEB4r65Nyu7MGYLYr9kIDQApLMGlNU3Dwmcl0OzU31OPjgA5CiLaMoufGRy2Xhumnj3vbE355FX/+AscrU1tbl4Z9YsdwmIsWlm/4VSkCmj6H2oAgoArMfASUgs38N58QMqADTBYkn8ZJ5SYL958IEJRMX5ydzJBGRLHCVmiOtM5Kdq9KyVAoDGbeUBMSeCxXOpsZGLF6wKH+Kb5XsiyAAdMeiRYS/2TyH1goPjfUpHLDvMpN+t1gTckHlejCTwd+eXIWhkQwcv7gLk/Rt0gnzh+Eh+b+lNob8W2SdDpEpPBcWRMxhfm83li5ZgBo3kCVp3MumTduwdv02uKn6gPdxMhVuSkAqvAA6vCKgCFQFAkpAqmIZVAhFQBGoNALlIiCcF+MjFvTMQ0tLy3gtDb4epbjLiTwtISQiY4aI+Oid14GlixfmSUxhtKigG/LieVj13Dps3tYHHym4iWJGgr7FnSrtBBmihHTYBKX8BCSIB+H8ly9diPk97cbqkoSAmOog2Rz+9vQ6ZDIB6bPrtVdqvykBqRTyOq4ioAhUEwJKQKppNVQWRUARqBgC5SIgxm3IB5obGrB40eJYAhLlXkRFeyyTwfDQLhx68AFoaqyfVFaobdu24eln1yHjMf1tGjDKfOFGOWxLh6Et+eBtxquInPxdbgJCt66ANPhorE9j/30Xo7Gx0UygmDsWjUuskL51+wDWb9gynpK32PzL/b4SkHIjrP0rAorAbEBACchsWCWVURFQBMqOQLkIiFGW4ZhA8H0WLzZEhC3JKX5wr4e6Ghf7LFmwhxUiHhQPgyMZPPnkagyORpMOWkPolSRxKKyZQeLBliQ7FAkACQnjVsrngmXP0MeihT1YuIAZwACXhKpIY6A9g9CffHo9srmAyFS6KQGp9Aro+IqAIlANCCgBqYZVUBkUAUWg4giUk4DQBYvKentbG3p7us1ci53gjwPie1gwvwvNzQ0m81WS+7JeDhtNyt3NyOSis1KRgDBzVVCELygQOJk28wQEqK118fwDl6GhvjZfPyNeYlOaxPGR9TysXbcDO3cOVEW5DSUgk9lleq0ioAjMVQSUgMzVldV5KQKKwKQQKCcBMRU7HAe1tTVY0NOD+vr6CRmwCgnK9LPLl/YGblAJCcjQ6BieXLUGg4Njpg6GNHGlMm5WLlP52hmhqp+AwM8aK8jixfORMgX8ijUPOT+H7TtGsX791iqwfwQWJy1EWGzd9H1FQBGY6wgoAZnrK6zzUwQUgUQIlJuAUAi6NnV3daK9tS1/gl88JqO1uRa987qKul/ZblCbtvfhmWfWwvdJKmjhCIhGKpUOYkjyldoTARNz0UxbQDg/ziOdAg4/7GDU1QSC2amMw6IG2cA8jIxk8Ny6LRhmxmCwqKFNy6aDwuTvVQIyecz0DkVAEZh7CCgBKbKmTFEqdRzm3vLrjBQBRUAQmAkCwrEYRL1ofm++IF40AbHJRG9PK9rbWoyiXSg2w1bE//S3NRjYNQjHZLAKslglieuYzG6oBAEJMnH5WLp0ERb0tI2Tj2LuY9lcDs+t3YL+XVlk/VxQWX0SGcEmg0uxa5WAFENI31cEFIG9AYEZJyDXXnutqfPAytfV3FiX4swzzzQ1EthOP/10U6ciqrFehRTOq+Y5VbNsLIDHoni33HKLqY3BRkyvu+46nHfeeeO1QUo5B9bh4NrFrWspx9K+qh+BmSIgjLtYuGABmhsb8ylmC2OzeGEXGutrE1tAGNz+x788Y6qBS+XwYgr6VFZnpgkIx2PxQ9cFGhtqsP/zFo9n54qTX0iZ5/tYt34rdvZlMJrNIJ3yKxaPrgRkKrtN71EEFIG5hsCMEhAq9UcddRSOO+44UOGs5ibF8IQwUda4CtH8YqSSvHLlymqeUlXLxoJ4V1xxBR555JFxnOW1a665BitWrCip/LIXP/rRj4LjaFMEyklABF05dW9ra0XvvF44fs68FXYjClL35lBTk8ai3m7U1qaLBolTyabDFSt/P7tuO5gBqpB70nRXvNwEZHd2rsB6EwTLMyUwUJN2sWzJPDQ21jKUPja4XPogGduyvQ8bNvYhk8shnQpSI1eiKQGpBOo6piKgCFQbAmUhICQXPMUW64E9aSr0PHWOU+arASCeiNP6cddddxW11MjJfTmU5FJjQewpbzWe+NMiRtlo9ZAm1dFJPmitYOOeIoldvXr1+GuFcCIp5E+Y8PK1Cy64APfff7/Zj9oUgZkgIETZxGK4KSxevBj1DGiIy4jl5dDS3IDe+V1IMe9skZYzBMTB2rUbMDTqmaxbtIbkcgHBofJeynS55SIgdhV3pgUOrB6B7GLJYSzIovkd6Opshu+5cBIUeN81OILVazZjLJsxxRwdFMe0GOZTeV8JyFRQ03sUAUVgriFQFgJCcsGf2WoRIHm69dZbsWPHjqJKLpX6Sy+9dMLJfTVuEir2y5cvxyWXXFKVJ/4dHR044ogjilrGuDYkE1HkNow750yyQvc5rpPdSGro3lVKhawa111lSo7ATBAQqSZOctDR3oHe7q5xAW03KRIHco721ib09HQkKz4IIJPJYc2a5+C5abO3DQHJuuY3Wyn3ezkJCK0dJB/8zXGElEgcCy09Xe1NWLigO8AmAZcYyeTw1NMbMDI2Zty43CQ3Jd8+ia9UApIYKr1QEVAE5jACJSUgPFmnUkcFkafKcrJMNxc2EpI1a9ZA/i2v8bcolvfccw948s0TcSrLdpOYADnN5qk4r6OCKSfkhdaK47N/9kPZ2L99H5Vavi8uOeL2Y8sb7p9yc97sk79JXOL6l3spP6/jeCRqdN+yLUJ8/8EHH5yAk41fOCZCro+LleC8uS7ElfLSvaytrW2CWxPfo0z8zfeJ6WTidDhn3i/WlSh8OQdeR1crGUdkJjkKu0PxOrrrsS9ezzlwLpRP4kQKzZnyEBvOQ/CVtbTjdtgnr2Xj63HrbV9HGXiduOrF7TuuMfumnNxrglGh+3mPrBfv4TiUn68RD3uvEG/uWSFktjVHsBPZeL+sT1L55/Bn3x5TmykCQtcfJmJNp9JYumQRatJp+N7EAHPPy5k0uZ0dzejqbC3qfsXJ0AVrcGgM69dvgsdgbb7oOPByjiEgQkiC2BD+3+TS7oYBKwcBEVcrIR72mBPjWHy0NNZjn8XzjDuWyU9cpI2xIOFT68HfnL8GoRdDTN9XBBQBRaB8CJSUgFBxj1KGRaGn0sMf2x2GypQEpVPhF2VTiIrcK6fZVLSEcFApfeyxx4paKngvA5x5PZUyNv7NLzS64IhCx1NyUZBt5a1QjAAVZ57c8wRfXLZELhKc8Mk73X6oyPIeKpecD+dqu3tJ7IN9WsnrOBZb2G2Ir/PaKKsAX+N4VDyJlSjXthIv7khLly41WPAeXhslf9RW5HyJL2UQBZhKcThwP+o6IVq0ItkYhF3bxI2KCry9NkKobLlkzmEiR7yFVHLtOT+ut5AU/ua8w+504f1D7CgHf9MVrBjp5ZrzOrr1EWP2x3lTnrArWRxGDM7n/fbaixVHSJjMl7hzHYV42fLzPTauD69hzI22AIGZICBhhbqnuwsdbe1wLPcikcZFGt1djejoaEmkLPueh+39w9i6bRf8fGyJmVfAOEzL5XzjmhVYFJIVNYzbH9MlILxfLDOSpYtWDztbV6Hg+fq6Gixb0o36OsaAFK+Knstl8dTqjRgazgGahlcfe0VAEVAEKopASQkIZyLuS2FTvyjQ4VNufsFQEeL1VKDEIkHlrq+vz5ALNnF1CsdlULkqZv0QpZpKuCjIVPT4N110qNRJi8rGFLdCHJvEg7KSUFBJtuXn3GwFVRTGcKYnyse5ijIaRUAkpoaKq62ECnmw+4ySl3PlGoRJisS7hIPoqbxSSbWDwuNwkJgMYidkjuNRVtkH4gLGf4v1g/2J/Pyb87eD/8OubbIHksZtCJm140o4jqwxxyKZEVdBWc9wkgTBIkr5t2WOwkeeB+4LrpFYlWSN7XWT+BZapyhjGAtbmYyKPRL5w88YySHX0V4fdUHbc7VmmoBQgsaGeiyc34t03tVIpDJFyT0X83ta0NbWlMACErhbbd0+gB19wxMIiD3ToC4I8rEhJCL5wnh7EKDi30vTJSC75+oYdyvGeth7nH8XIiC1aRdLl/SgqbEmEQGhVWn1s1vQ1z9iCIhx3apAUxesCoCuQyoCikDVIVByAiIKKJVMu0UFdosSxVNhXm8TiTCRicqSlATNQgq6KJY2WZpMTEch+cPKrxCwqGxZMjdRcMP/FuWdJ/M8TbdP6KlcUgkuFhMRl6lLlNzw/TK3YlmiBN8wMaRVhusq1i5ReKPIA2XjtbYMUWsTR27j9gH3E/djOABd1jgqGxtlsV+PwyEqaD5KDpIz7u2wVSWqX5lfGCPZOyS58lzJHgnHKYXXWZ678PhJ902SZ2yuXFMJAlJbk0bvvPlobGiY6BDFE3ovhd75bWht5XvFlGUftIBs3NqH/l1jsRYQ1gUhUWEQN7NkZbMMVKdLUrH+91zl6RIQfu7aQeZCOCTeoxgBYSarfRZ3o7W5LjEBeW7ddmzfMRhYQJSAzJVHV+ehCCgCsxCBkhIQOYEtpGRHnXJHnd6HlU1RwqhQ8vqkWbTiTsG5VlFKXJTiG7euUafYcm04qFoU8KgTc1ES4wgIx6GiTwz4pSmkIClJiDotp5wybhT+cRarMBZUsKkES8FGWj0oLxVlm5QQDyGa4T44p7C7VpjA8B6OJRaUYs9aoTS7cYq+7F/b9SyckEDifPi7mNVJFKgwueLrUWsXJj8yR7nWlitsYYrrM0yUaNUSl7wk8hfDeS69X0oCEkUYxhVeByYLFuMcWBOkpaXF/KQtDuCDMSC1WNDbhqbG+gQEJHAh27BxB/oHxmjjSLQ0ouyTjORyQZxI0IoTkqkSEN5HNysJMk8k6B4XBdXcly7uRkdbw3i9k0J9cWqbNm7Dxi27AMcFnGQYTU2++LvUAlJqRLU/RUARmI0IlJSAFHJfinIBEmU/KttUlIJFpY8KId2VqNBTES/mfhWl3MpCRY0RFacSt7BxZCVKeY9zgbKJkBAQwVHiUyRAm3OW2A0q+RIAz/EK4RDnuiQEKooUJSE3dlyKjREtCJRV3I0KkYGocaKIgCjzSeutFEqzG2f1iSJkxJX7zW60RBC7YkH6ccSPfYUtE0mutQlD2CLItWCMiFjDZD9EnfImlX82fqBNR+ZyEhCTejdfx8L8TrmGVFDNpyJOgl5rpdqdKQIieFE5JwmhdSQIWM/TkHwGqihcp0JAhHhwzrI3p5aZSwnIdPa63qsIKAKKQKURKCkBKeQmFUUECin7cafBVE6pePMkl0q9Hb8RBrPYKX5YEY1TfOMWKS51bJRbUqE0s+FTdpuAUHknrkIyJLsY74nKHBUla5zrUhQBk/vjXKvs/kVOEo5wogH7urCFx34vyjWrkLte0lN76TdMbgutcRQhk30otUjErSvJg1soZkXkkxibsNud3b+snx2Pw3mQAEkwO/8tcUhiHZT9L4SQssszl0T+ve2achEQ42ZUWxOklIUDz6cLVFBYzzMZmRBYQRp5kh+0mSQgAQFw4DhBrQ0GqdMaIgHica5KkyUgvL6+vt7MnWNIv1NzhVICsrc9nzpfRUARmFsIlJSAxFkEok7A4wJ+Ca8ov4WK+yUJki5EQOQ9261FFOokBQgL9R2l/MbFI0h8h+2eZBMQxnzw1F8UfDu9MdPUFguCJp5USDl+OBaikLtZIdc1eQQKndrbj0mcci1z52/7FDSKCEw2BijO4lTMSse9agetUzlKmg0s/NFQaI+GM5fFYST7jIHptlx8RkhweF8csdBq75P7sJ4KAQm7WnG/OG7I2mGqdxd3aertYsHBVPAsOB5STg0W9rajqSmZCxaJzdoNWzEwnIVrZb6aHArB1VLEMLCG2LLv/jspAbFrekxFlrh76LK2eFEn2tsaE8WAMPPwhk3bsHnLgHHBIsmrRFMXrEqgrmMqAopAtSFQUgIiGabCim6UO4yccodTgUq6XYkriHMtSqqQ8ksyylIivvF2RqZCLknhhStULT1K+eVrTPEaTrsapXiKkkziwXFsFyshIJKONkmxxzhrUpzSm8T9ingUCqy38YoLhKbLEN+zg6t5XxT5mWzWpmJzjiJu3Gsc264Uz9dIFqaSrpb3EaNwUHlU7FBcljcJYrcD4wX3JNaguP0f3s+0pEhq6Gr7kJopeaZCQFzGErAxroPF81JBGlnjYkXSkTykAu1NTWhgMHqQAgspJ40FC9rR3JQkCJ13+Fi/aTv6do0gQWHwgrDageBM3bu7kOHu24oREHE7Y3arJARssuucYgzIkm60NNfDcYun4eVarN+4FZu3Mgg9wLgSTQlIJVDXMRUBRaDaECg5AaGSLcoalTf+RLkAiRJGpYeKKJVtkgEpUhf2d6cyJzU8qCxRIeWpcLHsTzIOr+cYJDhSkC2swCU59ZcFjHPxMbqI45ixbHIgSj2Jj8hOEkHFM+5aYsfgbLsfysiYBGKVxPoh8tD1hutCvGwXHf5NbIkTrTASRC4ZrIrF2IgbF+ch68M9QKVb5LYTCNCqxT6ZYpdjSL0Qe450V2NfNhGwyRJl5joWKgLI97gOnLOkapbClVyLcGreOGuBjMs9LIUriRHlLeT+JxY+zpHzIT78m2vOPsMZuMJJFrjGsibEyK5gL3PnNcRfrGtRRRnl2WNfUgNEiLBY1eSaYhnPqu3Dq9TyTJWA1NbWGhcrNiqXhpQUN3jsIX6d66KzszOo/I3cuAWkuTk5Adm4eQd29A+XhIDIZweLqItrFuNEpBUiIHQ744/0YSxDBeJJJr+WDmrSDpYt6UFjQxqOG+BfqNEotG7dZmzdMQRmA1MLSDHE9H1FQBFQBMqHQEkJiJx0i7hy8huVmlesBLyHSjmL8bFRSaOyZgf4irJvw0AFjtclyYYlSqTcHzUG34tzk4qCv5iLT5T7mLjMSFCzVCMXRVDGEbLCf4dJhmARzhpVaIvI6bpcY7s7cSwqoII/r6Eiy3uKkQ9ea8ciSP9R87LrffA6cWuiUmJjFUcEhDgJdsWU5fB4shfj1jguaJ3z4/qQtNqtGP523ItdQb0QvvY62RgSI9stkLIIoWF/xEbWL6qIosRM2fLb+AmJTGJRKd9HURX07HsYzXn4yQMPIZdz4ND1iP/LWzLo4sRmrBypIIuTKNmlkr6jtR0NdXVwXB+un0J3dzM62psSZcHiif7mbX3YsbMfvp/AIlBAaPszwrZe2K5ZJCZso6Oj4/VEJLbFxqUc1g+O21CfwpJFPWisTydywSJ5enr1JlMtnvhOLfh9+iutFpDpY6g9KAKKwOxHoKQERJQhcRkqRA7C7i5UhAsF+FIRlBoIUw2k5Rhx9xYLWC/lUss8kpCnUo3L+fGn0Pz5vrjRTXZc6Z/3xfUhazjV9bP3QBI5i815MnO0x5aYmkL3C+mVIHiJLSl2r8gcNz9JRSzPi8jA+0jaad2IUqwKYScplGdyP04G+xm7No6AwDGEg6lzzW+raGAplWuuW3NDI1qbW5BOO/BzDro6G9HV2ZrIhcmHj/6BYWzevA05L+8aNkXw4ggI50t3LBKRbDYIVCcBYQC7SSscKqjI4UuJ0e7p+GhqrMU+i3rA+oWuW1t0ppT36dUbMTySrVgKXgqpBKToUukFioAisBcgUHICkgSzmVT2k8jDawqlbU3ah16nCAgChdIuTxUlOzlBFEGZbKHGqcoxZ+8LERAXLtI16fH0ueJGZObPOHFaRqbgalUIv7TjorO9A/X1tchlPHR1NKC7uz2REu/7HkYyOaxdu7FsBEQU6OA3g9U9jIyMwHVTRsYoslEuAtLW2oAlC3vgOjm4qeIEZGwsi6dWbcBYxjOFCCvVlIBUCnkdVxFQBKoJgYoQkGpU9icT/1FNC6iyVCcCUXEs05W0UOIDWlhY3TwcOzPdMfem+6kYUoH/+UP/B9+htSN/ou86M+OuQ1IDoLm5GW3NLaaaeXNzPRbM60TKLc50goxVPtaseRZjXu24zKUmAGIdYRyFEBKOnc1m88HqAREpbczHxJ1INHq6mrFgfldABhmRXqQNDo/h6VUbkPFyAZ4TsnsVu7t07ysBKR2W2pMioAjMXgQqQkAKBXDPJJRU2hjgy99U7orFFcykbDrW7EWgXBY+ulGRKDPeg9YOidHheNy/VGzsjGmzF8HKSE78xnIefvXrR+ExTSt11HzQNVPrlr15vlHa6cbU09llTukbGmqxaH4natKBsl+ITAgx2LJlC7bsoFUicMMqJQHZTT4c+I4Lh0UV8ymGSUAymYwpaDiOG4nINFMCR+GeSrlYsqALbW31cPwUkMDjbPvOAaxdvw1Z3wPD/B0/wU1lWHQlIGUAVbtUBBSBWYdARQgIlSjbJ71SqJF4kAxJIHU4GLxScum4sxuBclr4SDDYv2TyEhJCQsIYkCSJA2Y3uuWTnophhgTk4ceQA+tEBP+ZWh8zwD/EK4hy0A2rrjaNdI2Lxb3daKjf7WIURyh4H99jTMaqZ7eMA1VqAkJiY/o0Wa7ywPAXq6n7HnJZD2NjYyZOhOTELYO3E7HZb3kvUi6LOtbk0+rG7w1yoA2btmLr9kFkKBcTlSkBKd/DpD0rAoqAIlAEgYoQEF0VRUARUASqDwEfoxkPD//mD8jQ8lGGGI9Ec/aButpadLS3m5P6hfM60NrC+iBizSjMhkhEVj27EZkxumSZmnuTbnYQOmNhDIegRShf34QkxOYVQergfDOxIQxSz8LL5YBsLpDDiB3IPiX3LIeZq1yTnayttR5Ll3QZ1sMAeP5ENcbF8D3GqtD6saNvEJ5JlbxblkmDM80b1AIyTQD1dkVAEZgTCCgBmRPLqJNQBBSB6SMQxID832/+GBCQmXC7ihGaSmp3Zxfq0jXobG/A/J4OUJkOlPfijGLz9n5s3bIT6VQtvClU/J6QSc1ndXeXqabgp6LjO+KsLCQg2dExZLLZwGqSC2gK3cykuGHSdQusUSn4Xg777bcILY3FA889LwvXTWN0NINn124B40DYxFqUdOxSXqcEpJRoal+KgCIwWxFQAjJbV07lVgQUgRIjUD0EhOaEhvp6tLe2gXr20n0WmKD0Qqf9NhhDYxmsW7sZnkfLxOR9oCZYQFhlnGQsRb+l3daXuFS9IodR8o22H1hEGB/iZziHqQX1G8XdWD8asHRZD9JFAz9YwZ3jpdDXP4C167YiSzzyrmol3jyJu1MCkhgqvVARUATmMAJKQObw4urUFAFFYDIIVA8BYewE/+vs6EB9jYN9FvWittbJB5YXt4AwzmHL1p3o7x9kiqiiIAitEKrC30GaYQdOioX+8l3EEBC+K1aQgCgE8Sim0ZhkMonBWENy2WxQuFAqGRaVLt+NDzDZ1ZIlPWhtrYNr1XuPtsBQjhx8pLBx03Zs3rLTYKEEJCHgepkioAgoAmVEQAlIGcHVrhUBRWA2IVA9BEQC0pmSt6WpEZ2tjZjX0xoQgqIn/3Qx8jA4lMGGTVsYgjHe4lylbAJCRy+X1d7zweZU4UvVUggKGWYyWWQz+bS9JiYjOq5lgisYgI62Jixe2BXEv1sEJFq+gIBkPRerWIBweLRosHqp5lmoH7WAzATKOoYioAhUOwJKQKp9hVQ+RUARmCEEqouAUFGtqalBZ2sb6mqAZUsXoqaG1owkKblymCa0JAAAIABJREFUyPoutm3rw/YdA0UJCC8wrlF0tWLmKmd3YUGmrS1VY6FFGWssE6Tt5U8qhuPYBKSmxjWVzxsbapEysSjFLDt0wfKwa2AMq5/ZQFYVmGMq3JSAVHgBdHhFQBGoCgSUgFTFMqgQioAiUHkEqoiAMP+VzxSzLjpa21GXdrBoQTdaWhoT1fXIeRk4bspU/X5u7RZk82aQaAtIPs2w68JNkyBMLNLnlVBpT+Vdy6iEmxIrDowlJDeWMS5ZgXKeT32cr7Ye7AsfnR3N6J3XjtqatLlO6pwU2jdMC7xu3VZs2TYYXF/BCugipxKQyj/pKoEioAhUHgElIJVfA5VAEVAEqgKB6iEgNhwMRu9qa0N9XQ0WmKKEu2NAktT46B8YwYbNW5HzfDCl7rgiHJTjM/EZrPpurB/5FnZ9KtXy2PJOCHTPB6qb+iEkS3lDhXE38z00NtRgnyXzUV9nfK9MK1QPRa4ZHB7FU6vXwUcNi5TAUQJSqqXUfhQBRUARmBYCSkCmBZ/erAgoAnMHgeokIC4c9HR2orbGxfx5nWhraTSuRUksAFwbBnxv2daHHX198Fk1XEgG62ekGZWRJx4VJiCcD+dlXLPGxky9DkqXcjw8b/liNNQxLqW4+5kQG1pY1q7bhm07+k0KYd5Z/O7y72a1gJQfYx1BEVAEqh8BJSDVv0YqoSKgCMwIAtVJQHho39hQj47WZjQ11GJBb7dBg7U0krZszsPGTVsxMMQ6GPligOk0GN1hwtpZ48PSzmfaAsLYEFMXxMjgGher4eFheJkxLFnQjZ7uNvO+bfWIrT2Sz66VyeTw9OpNyDLoPV+VXQlI0h2j1ykCioAiUF4ElICUF1/tXRFQBGYNAtVJQOiORMW5q6sLDbVpLJzfiaaGusCdKEFRwsAK4pvK5Bu29mFwdAypVG0+3qI6FidMJhzWPIGH9uZGdLY1m7kGFp9iKYh9E0uS8x1s3LgVW3cMGgsQWxJ3tZlAQy0gM4GyjqEIKALVjoASkGpfIZVPEVAEZgiBaiUgQVA2U/I2NdSjpakOC+Z3IZ1yEynVtjVjNJvD1h27wNgIZoUS5XyGAI4dxiYHLu0yvoe2liZ0tDahhgUQja2GrTgBoQFk18Aw1q7fhLFMPtJdCUill1jHVwQUAUVgAgJKQHRDKAKKgCJgEKhOAmJiNPIpebs6O5FCDl1d7ejqaEkU02DHi7AkCN2xtmzbGbhjmdS0lW8TCIifQ2tzAzrbWxBkzQrqebhG1uJOVDnfx7PPbcbOPqYfnlzA/kwgoRaQmUBZx1AEFIFqR0AJSLWvkMqnCCgCM4RAlRIQx4GXC4LOW1oCK0iNm8LCBfPQ1JDKx0Yww1NxMiHWELpjbesfRP8gi/O58JkhK+WYOBCOVdzSMP0lsamEx9ojYJYuH92tDWhvbTYDJHebCmSmRWfT9gFs3LA5T1aKE5bpz2RyPSgBmRxeerUioAjMTQSqh4BIfSiTJpGZ5/lbUi7SBSFowevmq2l39pZx83xwVeCwICb7IPdJcF9wr1QS3t3T3FxcnZUioAhMBoHqJCDyacfPsIb6OnS0tJrK4Y0NdZjf02GKE0rNkCSzFRKS8XzsGhxCf/8gcjnAcwMCYj4vS1d7MFYkmxq4jm/SDLe3NKGpvsbMj3ImJSC0kJCADA2PYtWaTcjlWFNkMgQmCXKluUYJSGlw1F4UAUVgdiNQFQTEUAPzBTKcT5UYnOr5XgOQYpEsD55DMzxPyEYNQeGXV5BY0YfDEzsnDd+pgeekwOSNcDJBkKWXMjnuHX6ZgYGN/HpNG5LiG7IzMTf+7F5OlV4RUASmjkD1EhCjjPOTK+2iq70Dadc1MSBd7S1oa2eQNiuDJ5+5+WyktcMHRoZHsWtwFLuGR+Ebj6WZJSCUm7EejG2p5Wc1P53zBMRIk2BinpczpGPt2g3YsSsb3MMJBoXdq6opAamq5VBhFAFFoEIIVAUBAUbNCV4GDcg6Pmp9D+lcCjl3CCl3CMhuAkbWwx/ZiGz/w8iNbUM2ux1w+gFnFIPpBaip4c8SNDUdCLduCbz6A+GjDb6XRoq54x0vKILLb1gnF/x4fN2tGj/oCu0BHVYRUAQMAtVLQMYXyAdaW5rR0NAIfqzVuD7mze9Gc1M9XCuiPInSLn3yNsZNDAyNoL9/AKOsweHWwHdTyHkeamg5zsdf+B4PioImFuSozRMcDuUt1vyM5SGSSbObgusznS6Q8jw0NNShpbkJzQ21UyYKtAwx1e6W7YPYvHkH/Ly7mmcKD1bf1lYCUn1rohIpAorAzCNQFQSE/sd+Lgcv5cF30nBzJBsPwx/8P4wNrIKbWYW09xwcvw/wa4NTLWTg+Jnga9AYQujHTB/oGripOmTr58FPHQA0HodU00uQajgAQIMhHFlaUJw0HD8dVAauwi+pmd8KOqIisLcjMAsIiOejJp1GZ1eXcVOCl0NdQwoLenvQkC5eJbzQCpNQZLM+hoaHsWPXADJZD0661nw2007MwoC0TkyWgBjbjRuQAcfzzYFQbcpBuyFS9XAcD27CdMJh+QNlHtgxMIRtO3bB8xxkxrLIZrLmUlq+q60pAam2FVF5FAFFoBIIVJSAjPsiOzmMeDk0ZQfg7vw+vG23wB/9LfzUKGrIKbK54LiNJ3W1/O3A8WrgkIx4KXhpBlLmv2j84CsyPZID6rIYcYFhZxFqGs9EY8dr4dQfjozbAq+mxgQ8shSXS5ctbYqAIrCXIzALCEj+vKWtrQ2NjY1wHBeum0NtrYuFXR1Ip1ktvFiq2qhlDlxcJfh8LOdhZHQUQyNjGB7JIpMLFP3JE5AgFpz8gi5jTXU1aG6oQ31tjSEigestD4RqJr33jCLv+xgdy2D91l3I+Ywd5FdBCrlcDplMBh6JSJWRECUgk15qvUERUATmIAIzQEB2E4PgSIo53gPHXI/FpvgF5K3F6NZ74O24B6mx38GpHUMGHhoyDi325pQv5/jGY4pfreZLkCSE/5moScZ9BMHrwRekC48nbm4aXsYNanU5WYw5PRhreBEaul+PmuZXAX6X6cN38wHtRi72ZBJfalMEFIG9CoHqJyAmDs5xTRX0efPm5auhk5X4aK6vMalra9Pp8TiKyS3f7poZYjfg79HRLMYyGeRyWYxk/n971wElRZV2b4UOk4ecM6KAEUUxYBZXMWEOa1yzroo566+ruyoqCJjAsAYQ8xpBwQwSzAlJkhkyw6QOFd5/7quunu4JMAM9MMB756DQXeHVrVdd777v++4F4kzRkmZ/PmlJP4tXZwdJhoIBE+GggUDATPzb8CI3iW0k6dH4i1t30uRHPVi/UlERR3FJGSK256Lu4eO9DxhZd20vGkJCQiJC7GQqWB1rS+qHX922VgSkbjiprRQCCoHtG4EGJSB8QWiaJYu/4YS9lSgtKl8OFkIwWftRPgHxlcMRis6AhqgMmfsF4n5Os6fMIpe2PPLi/7OmLGT5va/mkoiWJLZzEYRrxBDTs2Hmngaz+dWwg71lH1n6qIuwLHZ3NZ2JXNv3nVdXpxBQCFRBoPETEG/izsUbF82aNpPmhPw7PTJc10Z2yECbFk1h6lpCnpfF6ZlbThFw4STqQGT8mBHnRITBPw8VCA2dUY3EIpGUx00oEGagLzwW08HKozbWrF0Py+UZK1OtKvvhCZVwe5ImK27BqwtJLDBtpciIIiDqh0choBBQCMgU2Yb8FY4DIgBBUqAzj7gCFsLyBRqwliC2/FlopWNgOsthsCicLbU7flrVptypFKJSyVhcwM6SiVe2GUc8sCfCTc+B0fQMuCiEY5AsuTDcLGiNxKBrUy5d7aMQUAhsCgKNn4AkbPlkOmo4K4xmzZrJKIiM/woBQ9gy4tCqaYGMOHjqWJtHQNLlcCv1eWVmrFxk8miR31gcr+tcLEp8vpnnT72TftpVPG5j5boSxOKuTKL1FA29lnq9/NjrniZVspiWRQ8Uyn9trfoQRUA25dlU+ygEFALbGwINS0AE829NODrXzWIyN1fGJ6JzEF15M/TSjxGWbzDCmqjDaEACwggI9JhUYYGtQ5g6YnoOtGaXIZh3DdxwCEAOdDcMTcr/bm+3W12PQkAhUDsCjZ+ApPbd0A00b94coVDISzlKFKXTxCM3bKKwIA/hUNBLW5XpSYxKeEmsm9Jq8uWobf3KT2KVP++JYHJ9fD0q++cRC+88GhwBlJSWozwaQyTmyAiMjP7IWpL05sXCfQ+oBBkCZDqWw7Qs25ZRIpkSRr5UD9+RTcHP30cRkM1BT+2rEFAIbC8INCwB4QqZzvqNuFSoMpmHG/kK0aIbEHRnwbB0me7k6jGYbg0pTxmOgNiGK2tDdFeD7nh50gyU2KEAnMAxCLd8GgjmwNGzpP2It3C2aS/r7WWAqOtQCOw4CGxbBIT3pSC/ACxIZxpWqt4TBTaCpo6C/FwU5obBJSASE9ZHbCoB2VrjIEFBpCrXupIylJTHpX9JffWt0n7LmcZle4XqTM3yiBnDSJ7jfEM2RUAaEl11bIWAQmBbQaDhCYgRg0OxW8uBsN5HZPF/EI7Pg26UQ+dyFqMRwgAYsq+2hFXfV0zKAWpKwfIzhSWp0D1PEG4nBGzdgRs+FYGO9yBq9kBYTyjZpwVCFBnZVga26qdCoP4IbHsEJBAIoEWLFnLSnPpryQk1JW8p8lFYkIWCglxwXs0Y9LYkscGEL/6JxeIoKS1DWUUMMEKwSBTqmT2clpolyYZXRM/UtYqKiIyGmDRCJLtpwKYISAOCqw6tEFAIbDMINCABEYBbBkvLlfm5gZIvEFl8IcJYCx1R77XCF0jCrXbLIOarvJBI8LWW0Guhf4hgJMRGPHgystoNhxNsnehaRHqFeHSEUpGKhGyZe6XOohDY0ghsWwTEdwtnHUhWOCtVnwMaIx1S9YlLLXFkhUPIzctDTtAzZvXSjYhv9SLyLY161fOlpkJRDphSwMUlpbKQHLoJR5rJUgGx/kQhSUIkNt5vOQvTeSjL9qIhuiQglYpgmcZDEZBMI6qOpxBQCGyLCDQgAYEMcTtGGcz4KpQvPg+h8t9hMPLhz+E34QWSaZClfK8IQHNZExJDXG8G5B2FQKv/QGgdIMxyaAjDcE1fIj/TXVDHUwgoBBoFAtsWASFknMyyBqRF8xbQjMrUodTaDD2RysooSV5WEIV5OQgYXnG6T2IkFdmK6aZ+fz1ZXk7/dUQiMZSUR1Aes2StR2pf/WvP1LDxj80oiEsjQ9vy6k5SVL58wrK551QEZHMR3M72d23AikDYUcChcA/rmZh6YQBmEJqZBQTC3r9VUwhsRwg0KAGxBGDaq1G66CyEo58hkHg/ajT08N4gWx1KweJ3vtxYMK8F4GqWNC9Ey4eQnXcdRECH0BkBabgVsa0OguqAQkAhIFe9o5aD6TN+hcVV8ORKSeMFR05mXSE9QcLZWcmOViUg/gTb09YQKMzPRX5utqx18yMOW5uA+H2O2i6K1zPiQf8Oz//JSaTUpvYxkwKOqdK9TM2yXQdWPA6b/iKJYvb6pnzVNmoUAWm8z9OW6ZmAiK6HWLcAongRROkyiIrVQLwcwo5I3zPZ9AC0QBYQzIWW2xJaXltoTTpDK+gILZizZbqqzqIQaEAEGoSA+FKJEBE4q1+CWHMjgpLZ86FKsPsGvKh6HdpNOPAaMYBREDeL/0NFoB1yW48Esg+Daxow9DIA2Umn4HqdQ22sEFAIbAMIkIC4mD79F1hcHNlWCIgQyMrKlrUgfoZoVQLCfzMCwnoH1jnY8Zj0DGlaWIBQMAhd15IpSVvjRtmOI1OhWItRXF4BSvxKjxHX9SI7NBessmCVaQLiRTx4273CP/47HvNke12HlYyZqZ5RBGRrjLDGcU6xZh6chV/BLfoJonQ5EC2GsCqYLrLhDhoBaMFcIFwIraAD9Hb7wOh8MLTcVo3jwlQvFAKbgEADEhAHKJ+EisVXI9eZL+tAZM4u6y2MSi35TehzhnfhS4fxDapxWXA1A7oTAnQbpdkHo6D9sxBmG+iCEr4Nq46S4QtTh1MIKATqhYBA3Bb4dtpPsKV3Ub123qobk1wwDSsQDHhGhXXUiGJ6VihgIjsUQk44iGCQ3iGchFdGpz2vj+q1bxuKmKSSg9QIC6WAE8Ycsoe25UqX9ZJoHLGoBcumXxQJgHe+TJKMut6gqtclXd8p3Ru1JCHa3CaNdqlglhtAl46tJflTtYWbi2rj3t8tXgjnp1fgLPgSkKlWJBz1yQBJycCQD2gAWigfxi7Hw+h9CrTsZo0bANU7hUANCGSEgLCOIgYbIdt79cUNHYa7GvbiS2CWfg5Dj3phfoYWNP8FVKU31Z5FAZfFkg4Xv1xoLgmAJc3Qq/9Ys6DdhGvYcjvNJoGo8JzTnWwgUAZX0ADR8VzZqza58BWA0K2k27pmA7FgCEbre2EWXAshbGg6IyBbN1dajWKFgEKgoRAQ0lX7229/hFXTz0xDnTYDx+WkOS8vD/l5+YkairodlERDoz8IhTZ0A4GgiWDQQE6IZCQgJ8e0OfSJQJqS1AZqRlKJAyfw/n5MZ7VtR6ZXlcfiiMVs2PTk0LxC8KqsrzEQkGQfXMgidduyZPrwpsqR+HsW5AXRuQMJyDY22Oo2tNRWlMaOrIUz60PYP78KxErrh4mMyLmAEYRmBCDi5R4x9yWjvdkItIL2MPtcCKPTQUAoV5HZ+qGstt6KCGSIgABRuMiy4xAihKgeRaDiK7iLLkZQLPcuzw+f1+btUY2A0HQqBwiUy7Qo3eELkmlQNTQpWmJKIy65tqRZsKUbrwHdCgJaHDBs6ciu1SjPm35MeThuCxel5gHI6/5fOFp7GEalCtbWzJfeiuNFnVohsN0iwIkmlyimTP0Rli+Stw1dbTAYRPNmzWEGTDh1WKmXdSGuI6V6hWbC1UzoBtdgHJhuHIZpIhgIokluWP6dzup+k2v2GyEg/k+6LOyWUQQX68ujiEajMqJgmyG4DtW4WIfHSX111/bGQEC891flgjWvxYrFpMjKpjQ/wtMkL4SOHVomMv02lc5sSg/UPg2OgHDhLvse9i9j4S79DnDkkkbdm3Cg5bWD3ukgGJ0OhJbdHO7yn2D/+QHE6lnefCr1+Qtkw+hyKIxdT4feYue6n6eRb7lsWZEUhPAWnb1rbtumTdpv0da4BKZlrlmzRsqD+42/j02bNkVYGlo3jlZaWobi9cWyTtBrArm5uSgsLKyf3xHJdMVqiEhxggDzd1sDsptLAQX+0Qo7eqmykbUytVCmBzJtcAMtIwSEx/ecaKOwRTY0txja4mthlL8BDYncxk0gIDE9GyXRAjn28sLrEHJi0BhBqdJcEYTOInI3CyJYjpjIx/L1QTTNy0YIixByCgA9DjCsoW38h4BncDQTAcdCDDkQrQbDbHIXjEDKC3grKsY0jqGteqEQ2L4Q4GTX1VzM+O43lEfdbSoFi3eCSyZ8AWbnZMtaj0w1Xy2LaV6m7tWQ6IaBcICuIomWMn9mLQdNA2XaksO0NtczSqTc7TY8z04jXCxUt7z6EOF4bJV1IvI+pLwbaiZpLDBx0ap5Htq0bpJ4oW/DwGRqoG0vx3HicGZ/DPuX1yCKF9T/quwI9E79ZVRDb9kbMBMTWj5D6+bLaIozZ4IXHanSuL2557nQO/evEimpfze29h4k+g8/8ijKylIjRxquu/afaN68+Vbt3urVq/H2O+9i0aJFyX4UFjbBoEEnolvXrlu1b6kn//bbqfh04iTE47Hkx3369MExfzsaWVmVoiUb7bAdhTPzPThzP2E8XI49LdwE5s7Hwl3xG9yVfyDQ/xZo+W1g//QS3CXfwdznYujt90snylVOlCECwg5FYCMMVxMwSr5EfOHJyBKl1U9exwgIa0amz2+Cqy4tR3lMx0P/6oKjj1iMkF1eGWJMvGRt3YXheHm06zUTzzzfFE8/twoH9WmGoUMMNAkvhw4Tcn2zDu9lbuLoAZgupRiBilAfZHd8EwiS4XkIqgjIRoes2kAhsE0hIIuDNYE/Zy/E8lUlEDUsdjTqCxJAOCssFbHqEgHZpGvhiydZn1Eljd0nPboGjXUN8t8Jud9E3QOJyLba0oiFFyaXqWlMKaOjOiM8MpsqhfzV9p4gOevasRWaFGYpArKtDoia+m3HYP/4Xzi/vw0RW1/vKxN2DHphJwSPHw4tv32N+3Ml2vrqITjzPoNmBqtto+W1gbnX+TB2Hih9c7bVxmfkusE3gJN9v3ERZMgjD6NNm9Zb9bKWL1+Op58ZhVmzZiX70apVK1x6ycXo1avnVu1b6sk/+eRTvDbudUQikeTHhx9+GM4+60zk5NRDSY1R8vVL4C77URIMEl2j54ky4mF/9yzc5T/D7Hu5HHPxD66GKFmKwEE3wdj52A3KR2eQgFTAFTnQxHqUL70ZofLRCFiM51d54dSRgNjIwnm36Xj/swAiogS7tQti7Ogwdm5ZXJlG5RMQTYdBgHQDH05uh78PXoIIAihwQ3jk9hycdfJqGHYBNGMtjLqsDEr5dw2OHoJBYqUVQm85DHrTMwHNe6AVAWk0z5jqiEIgIwj4EZCiFcWYNWfRNhcB8TIUNLRp2wZahgUzavq944KOX0jrrcskCsdlEXllBb/OEr1EwW0d1n8yci8b4iA1ERDJNxKcQ5IQy0pERBJWDjVWitD80cUuO3VAOESCRqxUBKQh7tkWPaYTl+TD/nWclNSt1ki+pQiD/3xUuedSpMdG8ISnoLfvu8Guu6v/RPzdy7yC9rSaEG83LacFzL6XwehxzDYbCSEBueGGm7Bi5cpGSUCeeWYU/kwhIK1bt8IlJCA9Gw8B+XTiRIwdO64GAnIWcnK8mub6NEb04p/eCaPzITD7XgKOQ3vyUIBkmxGRvS+C9dW/pUiCueupMHqetEESnDECItwohBuG5ixG6eIByInOhy49parkydZIQLhalsjxk6uQBqJuS/Q8phiLV+ZB10uQY4bxylNBDNxntbeWJt9k3uvMBZVf+DrUccU92XhxfKmUdAzYeejTsxyfjM1GSLNguBUJR/ONQC7zKwVsPQSNYXURgpt3IszOzwIIScUsvi+kLrwyB6rP+FXbKgQaLQJ+vQFXi376bSYiiexRz0Oj8U8Q2U++tLmyRXd0XzS2ropYm3NjqhKUrVG7sTn9r+++adcrX0feu4gqWVaM/iG2xD/1dWcYnpQwU7byssLo3LWVTClWBKS+6DfC7V0bzqwPYE97CiJWkt5B6evhpawglC9JhogWA5Tf5fzBT9mzotB7noDgYXfVPmkjgeHxNB3W5CFyNVoL5tcIiJbfVqbF6O36bjANphGiKbukCMjm35mME5B18xGfSAJysCS47vJfYE8dAa1FT7jzJkJvu6dXB2JVQG/TB+Zup28ZAgJBnw8DbtmXiBYNQjYfLsGJ+sYL9WRRnst8Yi+XVhghLFhhosfRJXCRi5AoRwwunri7Fa48eV21uhKhk3wEYceBE640MfH7KIKOKQmJFo5i0aTmaF5YDJNpcMbG++MVO/kkJwThmLDQHHrPz6EZbSAMOpLqMOUPAYvcN3+gqCMoBBQCWx8BWYjuOJi7YDGWrlwrJ4wM+28LBCSp6qkBTAdgUTo/UwQk8+OqNsLlxTI0SUDi8bhcCPOYSWVAjcGpjm1bID+fOdiJYk71Esn8TdpSR2Tt2NLvYH3zCMT6xZVnldkWAlrzXWD2GgS9/b5AuMAjIKXLZJ2IM/N/gOWllbPQPHD0Q9Bb716t5yJaArhxiHULpYeIlt1E/t/+490NmhLqrXZF4JDboTXpsqXQyNh5GjMBYVrYW2+/g4ULK2tAmjQpxMmDTkK3bt0yhsHmHqjhCEh/mXIlx/23w2DudQHsKUNB2VrzgOvgLvwaWmEXWY8EKd5Uc8tQBISk3IauxRFdPgT62ocR0CKSkNQoe1ulL5KACN1TYxEaXCOAP+Yb2PuUGCw3DEOLyADJwzc0w/XnlEDzRDKTubbM1aZkb6w8CydeEcakn9bLlCwNOdCCFZj3UTO0arkGASkDXNckgERUJpHKbLk5EF1egpF9NDTT9EypZD6zqQjI5j4lan+FQCNAIHXVfm1JGf6cu1AqNnkpDtvOKgMnwJTkLSgo8Fbct0DXd+gISIpfCU0MJdwkfoLF+KwPiUvFLL4N+V1BQQ7at20qDQ/9Av9GMPy3ahf4nNGEkopHVK8Mh8MyRaTG1L8qadQbU2NLvbCatuVEt7y8HLFYTHL4YCAgo4iBQO0Tp9Rjioq1sCbdBXfZD+kYChc6V4pZjNtsp+qpUI4F569JsKc/C3fNHBg9jkbg4FslEfHnNyJeClSsgf3jyxDRtRBlKyFWz/ZWlVmcbsc2Gt0wdjpakhDK+dbWaopY1oZrXbblNv49dRwbjP6Fw1nIygrXqr7EfUpLS2U9FX+/iP/g62/EihUrkt2urQaEZJ+Ra6pSMaAUCnnjh+etT2PhO4/DP/w7la2ys7MRCoXSxiIXGNatK0bcSlHBMgypLsVta8OIY624eL3so3+N3lTWw6usrEyO//x87/rTxlkN5QO8R8SL45d95bhNvW91JSA8v3/d7KNh8Lqz5HOYejxRvBDWFw9A79BPplu5S2bAmv4UAgdeD+fXcRClRQgcfq8XmWMa4F7nb3DcZYyA0D7KsJejZP45yK2YCs1g0Qun6RtvHgEhN6BaiiYZ05LV2eh+eAS2mQ04MRimjhF35OPSk9dUIyBc4yO3sCI5OPU6A+OnR+lwBdPIgdDKsfyrlihougYaIyB1KSyVHIW1HuwUczZdmeYVbXI9wq3uhTACMFwaF7LnmXHH3ThKaguFgEJgSyHAIu5Va9dj/oKFiEQ5MQkkqxhkfQUDpHWpJ9tSHU45D18YLEZv1rSZx5uUYt8Wuws+AUmYqicyhV049DqJ2cjPD6Fli0Jkhb3o1I5cS8jnZ+nSpfjuu+8xf/7DZkIwAAAgAElEQVQCOflyXAe6psvx27pVa+yxx+7YfffdkjhN+uwzLJi/MEUIwZWiC8cff1zaPeaE9M233kY0Ek1+zvMdeeTh6NSpk/yM5/v551/wxx9/YNXq1dLjhal0nMhxItljp52wzz57S2W5DTVr2kg4P49JUaXSIKxyGN2PQuCAwdDy221wf3fJdFhThsLosJ9Ma4EZhihbIQmN+9dnELFSuOsXQSPpcCyIyDrAiQJGuG7PthGEeeBgmMzHr6EtXboMkydPlnj4Cy2GaaDffvuhR4+d0sbo77//ge9/+MHzwklI47Zr1w4HHniAlHflpH3R4sX4bsZ3WLRoMcrKy+Em7mlWdpaU0N1rr72qFWpzUv7ZZ59h1qzZckLdvEVzef5Xx4zFsmXLaiUglML9/vsfMGv2bKxfXyIJLJ8pTt4pSc6C8L322nOjBdecdLOg/Icff5Lni0ToXefC0A3k5uWiY8eO2G/fvmjf3hMGKCkpwdffTMbKBDni807ScNBBB6JFixZ4/Y03EamoLPzmtR9ycH9MnDgJCxJRkxYtmuPAAw7Azjv3wNRp0/Djjz9JckLvpZYtWmL//fth1117SxLF6/zf/95PG8us9du5Rw/wmVi5ciUCZgAdO3bAIYceInFm2xgB4XXPX7BAYrh48WJUlLOW25UkMSc7B+3bt5PPQDKqY1XAXT0bWlZTKbvLsUhSojXrBlSslV41JNtUa5P+NVKat3ZH34wRkLhwEIj/ifIFA5AbWQFh6BC6Db0Oy29+OYf073UpgWsgipbY+4QSzCmKIyhyEQhH8fHodjioF0NeiTSq5ASASQZBCNfADSOCePLlcrhWEIbuYr/9g5g0UoNmlsCwaFBYyVhr/1VIiZIkGBSpRjz3OATaj5XF6QHXgKPTMXhbWhvdYu9hdSKFwDaPAFewo3Ebf81fgDVr13tmqpoG2/UWVkhELDtRKMLsTq621WXFZQshwzoQrrLZCXnYLXTaHfs0jDhRbjiRuqfr/LeNoGEgLycf+XkhmKZatiI+nPC9+N+XUVRUJCedqYSezxmfJ64+DzjqSJx00ony348++jh+/OmntDHGid8Tw4ameUNwEnn7HXfJVLjUds01V2Pfvn1RXFyMN958C9OmTUv40qSL5XACxhTGnbp3x3nn/T058aw6uN1VMxF/7wovEuE3OwataVcET3ymbg7lUl7Xk+vVmnSWmR3WxLuA7KbQ2/aBXtARCNNgVPcIyJq5sH9/E85fX0ALUEVt4z86jKoEB42ClltdPernX37BCy/8N01tivgPGnQSjht4rJfKmajJGPf6G5gw4ROZpuq33XbtjYsuulBOvH/99VeMfu4FFK9bJ38ba7qnlH898YTjMXDgsfIQnHSPGDESc+bOlWmLbMSfK/CWZcvIlN9SIyCLFy/Bq2PGSNLipTtWv4c81z57740zzjgdTJGqrX366UQ5HhgF4LVV7TcJDQnWVVdejl69eqGoaDlGjR6N2bPnJA/ZsmULXPyPf6B792645trBCULnfU1S26RJE4mxPya9a8yWsr2z58yR49A/L79jGu05Z5+FvffuI0nCXXfdk9Z9/rbzmeBY9u9HwDTRslVL3HTjjWjVquUGCQjxnTFjBl5+ZQzWr1/vSYpXUfBjv4kh+3Hwwf0z/tueMQIScS2EI1NRseBo5DhRCC0bwqiA7lZ9OLh0qEu5Sy8rloPGm/BrvHjmW8NAmRXEtQ/l4u1PViJWkoNu3S189GwWOjYhS/fzapNWV4CbBwcV+OyvDjj17CWIxvORmxPDUyMPxEl7fwFTd6DbYQCVrNRDs7L4nelZQgSh0bjQb/Lh9q4hHtoXRudPYBvZCDkGbBNggG/jj3/G75s6oEJAIdCQCDCvmy80TYcjIKMg69atw/qSEggRkNKrzO+35e9X4pekDhOBhuxy+rE1me7ANKwtUQOy5a6rcZ+JERD+YePiVMAQyAoFEQoGEDATvikkshlWKWvcqFTvXUVFBZ586mm58praOOHxjSv9z0mkL7rwAvTpsxcee3yYnDSlNk6WH37o32kkYdq06Xhi+Ihqk9LB110rJ3RffvWVnHSnEhRO+nwhh9RnesCAo3DmGafLdJS0JlxYn9wGZ8FXKR8LUEo3NOg5SR5qbDJ1mzl6dDmvIc3LdWQRrxbK2+BttX94URYAw2C2xkZmIboBY/ezENj3ymqE5ZdffsVzz78gV9FT2yGHHIxzzjkbebmemRzTo4jZt1Onpm23++674+J/XCijRjfceDNWrVqV9j0n75wgpxIETrxvveVm7LRTd7z3/vt4++13qxGNqvdCPlMJGV6SCUa4Pvzwo7Rz+SlXqQSJKVFnnnEGBgw4ssb0L5LVm26+Na1/PDfHYtVJOcfiQ/95UGJRmwpW927dpHww3xepjX2TC1hVSDG3qanf/JwRlb+fc7ZM97rt9juqjQf20a9b9L/ksf72t6PlfhuKgPBn6uZbbpPRldTxbpqGfL+lkhH6rtx8843okIgAZer3JiMEhDSASQrmqnEQKy+Hoa2Xili6rMNIvKD9lzOL0qVrOdOtTFlQzm2qJjLxk9+WdMDwUTaWri7GHde1xH47LQHLwas/bC5gk/BEUW7k4r3xrTDyxYU4+oj2uPJsDU2zF3iKVbIoPp0le9EX0/tYJwMMQCM5omkhW8qkwjZ2htblI9ihDggJHbYWhyEVuBQFydSAVMdRCDQOBBIiFJoGWUecZrQH2DTXo7u3VLhpfM1L7WEqgveCUm3LIEDcmULhTZZSlZwTBckyI0CFzRcsWID/PPSIXHn1G8nyscf8DTP//BOcFPsTVk6ymGJ16iknY+iw4dUICPe//LJLwQmz39588y1pFFd17JOA9N61N15++RV8+WUlceAkmakm+fn5mDLlWznB9Nsuu+yCiy++CO3atk0bRPREsCbe6Tk/J5qwo1IhKDhwWPqAsyrA7xCvgFg7VxIMpnsYPQbWKYJR2+iNT7wLzp/vQQtsXFJVb9YDgSPvg1bopaD5rTYC0rNnT1xx+WVgqhDb0mXL8NxzL2DmzJlp+/sEZMWKlXjgwX+nfcf0uKOPHoAffvgBTN/yG3+XTjrxRBx33EA8/cyzmDp1WvJecQK977590aplS3zw4UfVSOKjQx6WRqgjRz6F2bNnJ49JUtO/f3+UlpZIYpsaOeHqPVfxeX+rtnfeeVemTKU2XjvHw2effS7TBP0WCgVxzT//ibZt29SLgJA4kciSDNGbI9WXg5/167cfOPH/9ttpIDn3G1OfLr/8UtiWXY2AhIJB+VwULV+BqVOnJqMg/A1i2iLH+ldff12rDC8jkI8MeTTtutu0aYPDDjtUPmNz5sxNw/bMM8/AUUceUdtQ3KTPM0ZAonBhFD0Hbd1gGCiHcMLQYaU45fq5TCagWx4ZgAOW5rEZVeV6BVMdmsFGAAiuhxMpR7aRDU1nUWj6C5XmhzrzoaBDBIDimICpt0EW1bFiaxCi/JXIAihIr6eESuWZpekHtSqgOU0AswSuG4DO83hJuv5PC+JGWxidx8MO74SQCMLRbOjJ0sJNwl/tpBBQCCgEFAIKgR0KgcmTp2DU6OfSJolM5bn99ttknvwrr45JfscJ1RFHHC5XdEc++XSNBITmapdc/A+JIVe/h48YienTZ9RIQHbZZWcZfWH9h9+YznLtNVeDbtYjn3wK8+fPT37XoUMHSXC6dk1RknIt2NOehP37WzItKtkcC4HD74Gxy/GVn9Gc8NfXIFbPgrAicJd9L6MjZp8LoLfeY+PRiw2MDPv3t2F//n9AHQgIIyrSLK7XoDTSUxsB4ar3TTfdgI4dOsgezJz5p7xnTJlLbT4B4XFGP/d82nf+SvykSZ/hxf++lEYyeM9OO/UUjBj5pCScfivIz8cVV1yGPfbYA/+85rpqRoSPPvqIvMdDhjwGGgL6rXXr1rjt1ptRtHw5Ro9+DqtXV67s77XnnrjoogtqdFAnAUolozwe7zdrMMaNex0ffTw+eQ4S1XP/fg52223XehEQRs9GDB8mycXjQ59IG1+sMbr++uuk+MHw4SOxeMmStLF31VVXyLTOqhEQ3peHHvq3JISMDHo1PF5j7cv1g6/DlG+/rZWAfPHFF/I5S20nHH8cTjnlZLz/wYcgifcb0/D87zL5Q5URAsIORYUNFI1AYP0tMJw4hAizaqLaw7W2NB8lpWF06lACzamAC+YwWtCrEhCZZmXCtXToRsJxVs9CQKNkXSoBoUZ/CJpO1S2SiYAsotH0hOu5y1oUQ9aV8BzVzuMacIMmZi8IomsbDUHNghUoR0ASmtQIiAtLawa92wQ4od4IugHp+i5VTDz/W9UUAgoBhYBCQCGgENgIAp98+ileeWWMrP3w2x67745bbrkJnKy++uoYRFNy/7mCff5550r36aopWNyfheUPPnC/TLFhVOXhR4bgr78qSYR/Dq4K77zzzpJksF7BbyQg/K6wsEBOiFP3ZZE1IwHdunVNbk9XaOvLB6QUbuWHXLDUETz2Mejt95MeCTCDXs3GlKGeMzo3KeyIwMH059in0kdMOJ6/h0zJqntGhTNvEqzxN8nzbHQ/1tXsdAwC+1/jyQEnWm0EhJNtToz33GMPSRwYpSDBSF2h5yF8AvLDDz9KkpHauEJ/xumnyXuaSkB4nw4/7FCcfPIgeS9SoyNM5SLenORff/2NWF5FBeuxRx+R4+ahh4ekkZM2rVvj9ttvlfUZz44anfYdxQz+cdFFyWhOah9JVhn1Sm1XXnm5LIJnZOSDDz5MfsVoHF3EWdhenxQsRmeeGPa4jHwMe2IE5s6tjC40a9YUN1w/WEZHhj0xXBbv+61Dh/a46sorJf5VCUjXLl3wwAP3y4jh0KFPyMJ4v/Xu1QuDB1+7QQLy6cRPMW7cG2nXTRnhE088oRoB4VhgtOr0007N6G9bBglIHNryRxEsvtPLXhL0x2C0IX1y/sXPTfDgA+swbmwOCo0oNBGA0CuqpTFRjYIqU7LcU+jUuYLLvDymZVeFwA0misuZV6kDLqMdNlzNkRKUrDcRmiONEY0qRfEsUflrbVvcdtc6PDM8gqZwYenZCAj2PSUCIgRsSUA+hRvqBTPRJ01nXq8iIBkdlepgCgGFgEJAIbDdIjB+wgSMGfNajQSEERCqH6Wm0PQ/6CCcf/55eObZmgkIV2g5wWMa17x58zB8xJNp8q11ISDXXXcNCgsK5IR4YwTEWfg17G8elWpV6QREQ/DEp6XyVfztf3ikwolJJSs/m8Lc5xKYe52XZtAmKtbAmf2RdJiWykFO3JP1zW7mSfjW0pw542F9crsnyVuHprfYBebBt0JvvnNy69oICDc499xzcMzf/ibToD7+eDxeG/d6tajShggIJ62sn5k46TP8NyUCIgnI4Ydi0KBBeLIaASlIEJDdMHjwDdWc0GsjIIyA3H7brVi+vAjPjmIEZHXyGjdMQJ7ElClT0gnIFZdjv3774fXX30irM2Hq2FkkIHvWn4AMG/qYLDQnyZg7d17yfCQg1w8mAQnKuqW6EpAunTvjwQf/JQnI448PS0sb3FQCQuGBk0hA3v9A1tj4LRgM4LiBA3FaYyUglmvBWflvhNb9HwMagMbCKP4lfXL+68oWGDBwDd4ZF8J+XTSPGGjMeasyiZdpUUG4mi2L0g2XSVK2l35VlYGwgMMJw+UxjIh3JEY+JPEQ0JnELVO+PEIhpCyYVwtiwcSodzvgw0krMXZkBQoc1nbI2EsVAqLBFq2hd/8Ebrg7TMrwag48AlI/rek6/E6oTRQCCgGFgEJAIbBdIjB+wicYM2ZsxggIQbr7rjvA3H2uZr/08itp9SUZJSDCgfPr67CmPy2JQhoBMQIIHvMo7O9Hw108FTBpNsman8SkJVyI4LGPg0SganN+ewOiYjVIUGhWaP8yVhaiG7ucCOhU2Ku+0Gl//zysKY9DC3qF4htt4QIEDr0LRqcD60RADj3kYFx66SUy6kFS+PnnX1Q7xZYmIEzBogxw1QiIIiCVdUs7HAGB5aKsZAhCRQ/B0IrB8nOZxlSl6DsmsnHkJRrOPi6EyweWoCLbRlbMhW7UPey40Yestg2k+oQBG2G4WgxMyorF8nDsJWU45LCmuPf8lWCYhKaGBqVv0pqAZXSG3vlzONktELSzIBiO8SwJN7lLakeFgEJAIaAQUAjsSAg0BAG54PzzZKEvVZXeeed/aRGUuhOQQjz19NNYsGCh3IWpLyw4vuzSS5MpWIxm2NOfgvPHO9VvGRckc1pBFNMHoUpUQtjQW/RCYOAwaOHqkrAyrevz+xE46n5o2S3gzP8Czg/PA3ltYe56OvR2e6efz45JCWCn6EdoZhWFrtoGk6bD3P8amL1PSUZgNhQBYdrZff93r5R6ZWTojz/SC9B5Gp+A0MdizNjXUjxaBI4ecBROP/20jEZAtiQBeeONN2Xkx/frYYE8U8o2JQVLRUCqD8qMpWBRqzJS+gLMhTfBMNfBoQQhdWqrqk6JECb81gKPP1mKj140YFSUIBaIIeTXXDTorzAFKUkXDFlFItxc/FFkYNBF6/HeC63Rs0UJ7KwSGI4GrQb5YCvQA3rXT+EGmyFA1S3Tk8dR9KNBb5o6uEJAIaAQUAhsRwg0BAE54vDDZcoQox9ffPFlNQlewrehGhCmYLVv116m46xdt05OOklAqJy0f79+YKqMJCVlK2BNfgxumvxuys1x7bT0quQ3dgx610MQPPqRKt8LwLEhImtgTbwH5r6XySJ1d/UsWJ/eCbfoR0kYpElhVqE0gWNzZn0Ea+Id0riwPs3c/Szpzu4Xrm+IgND7Yujjj6KktBQPPvjvtMJu/5w+AaHp4G+//pZGQKjiRKO9GmtANjEFqzYCwhqQ2zKYgnXAAfvjl19+wcw/ZyWviXM9kg+m+tW3BmSbIiAffIA339yGUrCoVRkrHw8x7zwEzTWyFMO0GTasEkmwNZQgG0de4OCWfzbHyX2XIRrUkOWkGwbV54Gq67au7kJzQ5IT0WQsHgrhgaEmVpbGMPLGIEzDhhWIIsAfEF5AatOASHBvhLp+AMcsQMAJwTG8xDFFQOp6B9R2CgGFgEJAIbCjI7AhAkKZUq6k+6Z0xKr/QQcmakBG11iEzm169+4l1YteePG/YEF0Ta02AkKSccP116FHjx5pJnv+MXyPEElAihfC+vJBr8i8Ps2KQt9lIIJH/it9LysCe/ZH0vWc0r6BAQ/A6HIYRKQY9jdD4MydIIvTtcLOkogYvU+BWDMb8Y9vhChZVrOXyAb6Zex0NMwDr4cW8iRpN0RASML+df99sgbkXw88II0BqzafgNCIsKZGxarPPv9ceoikGu1tag1IrQSkTRvceeftKFpWJGuFUv1I6lsDQsNKkk7pSUPfnsSFsf+MgqxYsWK7JCBUJaNwwIcffSwVwPzW6GtAHHp5xH6HM2cgDBTB1e0EAUkfkq5mQHNsPPRKIf73cQTj/1uILHMNgkbDExDHcKE72fL8EWhYWNEGp566FGNGZWP3NhbcYEwWqlMxyyAJYUvkbrJ2PZp9PEIdxsA1QrIY3jYYS1ERkPr8BqttFQIKAYWAQmDHRqA2AnLrrTdj6dJlmDtvrjT6TNgEo3WrVtK07onhI5MExE+L8Se17du3l1K9b731tnTVJmlgSzXAq42AsIidK9s0uKtqm1OQX4D+/Q9MSriKtfNgfX4f3NWVHhR1upt2FHr3oxAc8J+0eg5GOuypw+EunALhxBE84j4YvU+WPiH2Ty/DnvGsV8zu2lLelzUi1tcPw130DaDXYGS4kc4YHQ+Eeegd0LKa1EhApLIn/Y8SzuKXXXYJdM2QqWlsnICnGv1VJSBUL6PK0+xZs2UkiYXXlO6dP39BgxKQnJwc9O27DyrKK/Drb7+leW3Ul4Bw+zZtWlcbCxxT++zdB5TO3R4jIHRxZ9Tqr7/+SvMBafQEhI7Amr0c+GsA9Og8aQoovTmquAM7ZhBaPIq1kdY4+cpynH1CDi49ZSUdPLxoiVSpElLxKrPaUqzt0GVqlSYcrHHCuOQmA+3aZuGx68th6ELWqRtODHEjFwG3DCyD9wu/qMcVLbwSodZDIAwThrDh6KwiUQSkTj++aiOFgEJAIaAQUAgA2BAB2RBAqU7olAaldCmlTTkhpkv1IQf3x+Qp38oVaqbJuK6D0tJKf4TaCMiGztm6dStcecXl2GknT41KrJkD67P/g7u2UsmoTjfVtaG33BWB44Ylow+c68TeOh/u0h9kwTnrS4L9b4Kx1/nykFJm94sHABoXci6lmwALziNrKiV863Tyyo309n0ROOweaNnNaiQgOTnZ0DQ96Stx5JFHSFfw8eMngESNaVl0+faJXyoBoRTs008/g59+/mWDBqibo4JVWwRkQzDUV4a3tmMRB0rRkuhsjwSktutu9AREuLQiDMJecT3MolGSMYtAmSejm9pYCK4xBSoLc1a0wglnLMLTr7RA/9broZkWDNuF0HVEQiay7BQjw3o+ZL7rOYkDBOMUcViGgIlcxCwHY7/sjMcemo1fx3cEdOouk/x46WKUAOZ/SYGEG5CExbYNlO80Fvn5RwKCD6grPUdU/lV9b4zaXiGgEFAIKAR2ZAQ2REA4sa3qYO6vyqcSEJIPunQz1SYWiyMrK4x27dpj2bJlUrWJtQcrV67EunXFSaiTBGTkk3KVvC6tqg8IfT2sz+6tPwHhyQLZCA54EHrbvSHKV8Fd+p2MpngLnQIiVoZA/xth9rlIdo31H3HK7EYoKUtPAeaPO4kakoS6llzkrXsiuN5+XwQOu7tWAkIjQEYTliUMBzt37gRd0/HX/PmS1HH1n072VQlIkyZNMHTYE9KFfGOtMREQSt9+++3UjXVZfr+9y/DWBoL0ARl4rBQUyGTLUBG6gOuWwxXZ0MvHwF10BQw3Jp3HZRQhnYEkjAQ1lIkgnh1diLc/LsZzz3VGt7x10M0SCD0GI24CprPJ1yo0FxqjKfQI4f/1OOCE4DoGXvmhEHffX4RXHmqBvnusRMj3BkmJvZKEyNiG/E5H3G0GrefHMIxe0LQgNLqqZzhGs8kXq3ZUCCgEFAIKAYXANoLAxlKwmEIlONFOzCAYheix005pKVhcje/atSsWL16M8vJymTbkpwdxcnzIIQfjp59+TpPjJQHZddfe0t16cYrhm4SNadaRKOb99Zc8nt+qEZBNTcHiAYULc7czoHc5FNa3T0Cs+M3jDmYWtEA2hFWOwEE3wuh5kkdA1syRJoYwOI+xIew4YEcBKwLEy+X/hR2plANmhKQGud7UYWF06g/zkNtqTcEiyWDK2+w5cyTJME3aDGiyDoRpboyAzJo1qxoBIWZ33Hl3WspbTnY2evXqhXXFxdKfpSFrQOg2TtJJYlp12tmpU0cwksNan6rtgw8/wuzZs6t70QkhXclT3da3dwLStm1beY+r5p4ZpoG9++yFAw+slG/OxE9N5giIKIXr5sBw5iHy13EIxefKKIiMFKQ04YalJ4dmVMB1myAeBv7zHwMfTVmNca8Wom1QQ1BfJx/UzUnCkgTENeVxhOFKaV0HIcyY3R4XXlWE+25uijMGrgPK8qCZq9IiIDIYogm4MKE7NmwtADv3eIS7vADXyQNTS71FB08FSzWFgEJAIaAQUAgoBOqGwIaK0D/77HNZABtPcUmnIhHrO1Kd0Lkqy7qN2bPnSJnYqu2MM06Xhmqpzt0kILJOgGlbdvW6U0ZT6Pbty/DymNUIyPrFsL78t4xO1LvZUWi5raG37AV3/VLoTTtDa9IFWl5baNlN4Rb9Aq3NHjA6HiAPzYJ3Z8FXMLoP8CYdFOuh94hVAREvh4iXykJ0sW4+3DWzIdYtgIiVQKMEML1DamhGj2NgHnBdrUXodCJnutnPP/+cJgTAQ/Xu3Ru6ruG3336vRkBmzvwTTz39TNoZ99+/H8479+9SFOD5F15M1o40RASkVatWUuWMdTxVG1OnSFD8uqDU75nCR8EDv6bI/46E6733P8CECZ8kN9/eCcjxxw3EcccdlwgSpKNIYifJXQZbxgiIQAQQYWhOCUqXXIusyFiY9NLwVbBSK7vcIIQZheYG4epxFJe0wr+ftvH1DyUY8Z987NGJIdgIgqAbeWUhuPdEVo2o1IYGoxcBQI8hamiIGjvh1dcj+NfIxfjPda1w3pElQDACTbqmR9MPIjRQhZclLAFLhx3Mg91yCEJNzk9cj+5FV2QUpH7hzwzeO3UohYBCQCGgEFAIbHMIZEKGl9GOww87DH/88QeWLluWhgEnm1decRlGjHwqbRLNCSpJy5+zZknSIrMc+CrXddC8jWRlxMgnN+iEztQpe/Jj0qejrk1YlL0BtJa9YXTuD73dPpKIIJQLjWaFBtO5ddi/vg6D3zXt6k13ylfBmTMB5q6n1e527lheFCReBnqJsG7EmfsJECn2JHqrrJGae/wd5t4XAQGaJFZXwWrRvDn22WdvfDN5Spq7Nrc96KADUVERwY8//liNgJBkvPjfl9IgoaISndC/+WYynh01ukEJCGV4b7/9VlmvMmvW7KTJJaMuhU08UhWuYQLNscBUPaaZeVNMISMpTCl7/Y038cEHH+4wBOTkQSfhlFNOxpIlS7Fo0aLk/JuZTO3bdwAjSZlsGSIgjHjFAdZL6GVw1n4Ge/mFCLnr/VCBl7uYaEJ3IViXIXLgamXQhAkn2BRDnglj+OhFeOiuTjjj8CgCgVVeBEU+QISABeTpEZV0MJJiaZ7TuTBkofjyirZ49Kk4Jny8Ck8ObYf99lyJoOVCmDHYIoRQqpupHIEeAbFY7xUNw85qDb3rx9CM7tD0CDMBobkkN4qAZHIwqmMpBBQCCgGFwPaPQCYICFesTzzxBMydMxe//f57GmhcDb/2mqtx9z3/J1OH/EYCQqndJ54Yjpl//pn8PC8vD/+8+irp9UHDvb/+mp/8rgvlvC4AABimSURBVFoEJF4Oe8bTcH57c+M3imlkVL9qt4/03tA77l971gRVr35+FSbTr0J53mQ4VgJn5rvSiLDufh9CRkKsrx+Bu2Sal77lN01H4IDBMHqdVKsRIbE74ojDMWniJKxYubJyV02TEq1MSZox47s6EZDjjhuIs848A19/PRmjRjcsAfGd0JcsWYLnnn8Ba9asSfadaXeXXPwPtGzZsto9G/LoY9XqVi679BIccOABeP31N/Dhhx/tMARk0KCTcNKJJ+C9997HW29XGm2S1P3t6AE455yzNz7m67FFhgiIgIMIDDcb4AQ9EkHJovOQa02CrkUhRC4YIaHErUzOk1ERA0IwXzEOTdAvREfENTH1l8647+F5yM7Nwm1XhdGvDzdfLp3SLScfursehqlLnw7BKIQA9KAF4Zpw4tmgobojojAEUGE0wXPvxjB2XBQdWpn4v5sKsUu75fJcMnmKOZW68HhEamMKFnMegy70eBgi/zzEOzyMsJYHJnJxf42SWSr7qh5DTW2qEFAIKAQUAgqB2lWwbrnlJkycOAmvjhmb5mTe/6CDEj4go9J8QM4883SsXLkKTNtKbbvttis4ibzm2sF1kuElAaERYWFBwUYJCBdTST6s6U959Ri1NaaR57QAIw5GzxOSxn+1bh4rhfP7WzD3OKfS28OJw/51HMzepyYjFnUdP6J0eUKud3KyLoQmhoHD7oTegUTIa1V9QBhJGDToREyY8Kmsh/Ebo0rnnH0Wfv/9D0ybPr3REpDly4vw7KjnsHo1C/e9Vl8ZXqqe7ddvvx2WgDB18c23tiEjQkZAmFJFAuJaAdjlzwBFtyBoW4AZh7CyoTHVKSm1W/UxIpkIwc3Ssay4Lf792HJ8MS2CHp2BC07vij13LkfrFsUwnZgMbjAfkmlQmm7KXE7dZJ1HCNFoGEtWGJg6OwdPPTcfphbCBac3x0Wn6zCc5VJLu06N5EiPowxdkdvpfcSyuyOgBZKco2q+YJ2OqTZSCCgEFAIKAYXADo5AJiIghJB1IUyZIWFJbQOOOgonn3wSrrjy6jRFrY05odeJgDC/YvFUWN884hkB1tQk+WgJ86AbYHQ6qGZn9Kr7RdfD/mWMLFCX6VlOHKJkKdyl02Hued5GCUxN3XDmfwnr09uTGSh6q11hHnwL9Kbdk5vXREDOPffvmPDJJ/j550qzRUaHLrzwAkz+ZgqmTpumCMgzo2Qqn98olHDJJReje7duuG7wDVKq2G/Z2dnYppzQtz0CAmguvTaiiDthGM6fcBZeilD8O2igakMIrmlzI+i+6lTi7ggE5eeaFpd1G3ZcQIRNLF4VwuTv8zDimeUoLdXQvJmGffYEdt01Cx06FaCgSQCuiGF1kYaFS0oxdXoZ/pxjYG2xgz7dmuCyiwvRq/cSNM8TEJYDw3CkgeDGmgzUSKKkI9bkVmit7oUOFwEjkBRXUARkYyiq7xUCCgGFgEJAIVAdgUwSEKbeMI0mtZ1//nnot9++uPKqfzYIARFly2F98S+4S7+v+fZaEZh9L5V/pHdHXZprw106A+6auVIRS6ZYMNuiWVfpH7IxdauaTuEunob4+Bs86V5Nl0aGgX5Xe14iiVaVgHAifdmll2LipEmYPHlKcruOHTvi4n9chI8++lhFQPbcc7v0AfFTsLa5CIgUpWXZhWYjphkwXRta8dsoK7oJ+WIVNCcKVw9A6DaMqgREeg8GoTmssK+g/Y4nnwsdsZCDilAhFi4oxHtvF2P+CoF1xVFUlNmIlDMNykSouUB+yEDbJi56drMw6Pg2aFawFEEnCs0KADaL3m0II14n4VxK8Nq6gZjRGdkd34Wd1QUBNyzNeVTaVV1+SdU2CgGFgEJAIaAQqBmB8RMmYMyY15KFwtxqj913R31TsM4660z02WtP3HTzrckTsaD8phtvQIcO7fHPa65rEAICeoPNeBb2L69VSuCmXCoNBUPHPgad6lX1acKBiKwDHEuqWEkiwj8bkdat8RTxcljfDoPzx7vescKFMPtdCWNnqhxV5o9XJSCsAbnmn1dh8uRvZRTEdz3v3bsXLr3kYowdO26rEpDHHn1EjpuHHn4Eq1dX1nn4NSA7YgrW0KHDUFJSmhwGFFQYPPhaTPn2W3m/qPTlt8MPPwxnn3UWPp34KcaNeyNt6GyzBMSGA5OyUaySMCzorgnNqUDZqgeQVTIURiwGoZtwdasaAZFeG5om6zFcl8fgHweu4SBAUuMGINwsj0TAhm25cGzWkGRLqV1di8EMRaT3IB80CugaBk0Nw9BcAxBU6NIhi1D0OniLCCCit4Le4VGEsk+TqVgCYWjU31VNIaAQUAgoBBQCCoFNRuCLL7/CCy+8mKZQtecee3gEZNJnePXVMYhGvfoKZhsceughUs71yaeeSasBodTu0QOOwlVXX5OcZNHr4bbbbkFWVhYGD76hTgQkPz8P1w++ThrtUQVr3rzK2oeqRej+RYtVMxEffxNEReUkOAmIHYGx62kIHHLHJmO0OTtSotf58UXYP73iKYdqGvQWuyAw4N9eeldKq0pAWKhNAvLb73/gnXfeTdbi7LffvpKAjBr1XJ0JCEUC6Bw+Zcq3ePqZZ+ukgtWksBCXX34Zdt99N1x//Y0oWr48jVxKJ3TbxsMPD5EmlH5r06YN7rj9VhQVLcezo0Zh1aq61oCMlP1LbVdfdSX23bcv3nzrLbz33gfJrxqTDG+3bt3wr/v/D3/+OQuPSwJSstkE5NRTT8EJxx+HDz74CK+/UUlOpBHhcQPlvcxky1AROssymFpF13EvCkISYQkLhvUHoguvRSj2PTQ3Dhj0AIl7z4QTkkXdmpYwHNKE5/uXUNplcbq0EREOa9bhsObDYAG5/DCZDiWL211A10zvM1dPHJP/JrFh7YnM8qpuNiOPI8X4aM8ODUE4hot4waXIav0gXD1fFsoDQeiq6DyTY08dSyGgEFAIKAR2QAR+/uUXPPHEiDSPjs6dO+P666/DV19+hf+9934yOmLoOo7+29FSTemJ4SPTCMhpp52C4487Tqpd0Z2brWPHDrju2mvk32+48eZqBKRnz54YNfq5tOMwR58F1pRefeXVV7FsWVHyrtDs8LJLLwZTkKo2pmE5syplWtO+102Y+1wiC9C1EOcRDbyA6TrSFwTFC2F9/zzchd946V88r+zLxTD3Or/aNdREQKgIVlRUhFdeeRUlpaUwDQMDBhwlVZCGDx+BadNnVKsBoR8LyVtq67vPPjj3vL/jq6++xltvvV3NiPD0006T+7APfuO9OPfcc9CrZy/cdfc9aRNrRrceHfKw3HTosOFYuHBhcr9mzZpJgsTic8rnrl+/PvkdycQF558n72/V9tLLr+Djj8enfTzopJPQv/9Bsgid9S5+o/nlJRdfhO7du2/1FCw60t9z913SRJGqX6mEneSNz8DX33xTawRkxncz5DWktn799sNpp54i8eBCgN8oQHDyoEE4/viBGf21yhgBSe2V73YZ18phWiEY0Z9QWnQictwV0OM5oGaWMCKyzkJjxINEQ5KQLd88NSw6phuAHkLccOEE9kBWp+cBZ2eIkJAERhehhv8B2fKXr86oEFAIKAQUAgqBLYoAC3SHDHkMf82vlLvl5JLRBk4cU1dz6bxN8sHUkcceH5ZGHLhiS/O0Z58djclTvHqFPffcAxdf/A/EojHceFN1AsLv3//gQ7z99jtJhSxGWQoK8hEMhqR8q592xM/379dPTohp0Fe1ibXzEf/gaojI2ur40TJAD0Dv3B/GTgOgN+shC9Ol50emGo2Wo8Wg4pVYMxvOoikQi6dBREs83xDpmAxoTboiOHCoVOWq2momIFciGo3hmWeflWlOnIDSH+LYY/4mieP0GdUJSCwex+2335mWVkevFq7UL1u2DGVlZclT+0aE5517rpw8f/31N2lqZSQT9Oyo6u/C/YY88jBycrLx0kuvJO85D8zvuJ/j2Fi3rjhJdkiejj/+eJx44vE1Gul99933MoLgupUFwrzetm3bYNGixWkyzoyU3XnnHQiY5lYnILxmpsvFYrE0I05ifvTRA6RAA+t4akvBog/O3ffcI31d/MZ9O7RvjxUrViCSiEDyO0YGL7/8UjBKmcnWoAREuIw+WNARhVP8P0SX3IxsrJbpWbLOw4zDZeqVG4QBK5PXVedjyfgHWYidBScQR3l2P+S3Gw6h7w5Bx3YzDk2n8lYOR3idj6s2VAgoBBQCCgGFgEKgOgJMofn8iy/w5ptvp5GNqltyUsnVa0YnmjdvLovNv//+h+Rmp55ysvSmGD9+Asa+Nk5+fsThh+PMM8/A+pL1uPHGm9MOSandffv2lcTnpZdexty589ImnlXPz3Sks88+E1zJr8lFm9s7P4+FNW1EmtdZ8jgkIa4DLasQWtPu0FrtKhWotMIOMhVKC+dLklK3JgA7BhFdD1G+0nNAX79EEg937V8QZUVAvAIwGPVIcUE3gggccS+MLofVeBoqXT3/wgtSzpitZcsWYApSTk4OHn3scRkNYlrbBRecj3377oOhw56Q98BfaOZqO4vTuSL/1FPPpJEC/4TELnWCz38zrY7eHCQANCksLa2sYeB+TPthqoyV4uNCQvjokEdkH2l8yFS9VK+SmsZP9+7dcO7fz5FRi5oaIwc8/7Rp0zc4Fhj9INllnQRTv55+ZhRmpahgtWrVUkZgeB7WHqWSaDqIjxg+DJFIFMOeeCItxa9Z06Yy8sdthj0xAosXL052s337drjqqitlVtBtt6en85mmAduuvnBPI8lrrrla9uOTTz/Fa6+9nl4DctihOPvssySpfG3cOHz66aQ0yeuaMDrqqCNx5hlnIDvbM6/MVGsQAlLZuThsocHRYghEQ0Dp64isGYyQvRomi8z5bAZIQgRMWfux5ZtHQHJgGxGUGZ2R33Yc7PDe0AO2JEUamE4WBFgg75W4qKYQUAgoBBQCCgGFwGYgwMLYH3/8Sa5+kxBwAspJLSeZnByxqJiO3PQAadGiuTwT6wh+oTRsYmV/4MBjQMldOl8/+dTTct9jj+VnR2LN2rW4/75/JVO1OZmlTCqd0EmAuLrNFJWffvpZRj1Y2MxG0zVGQ3bZeWcccsjB0riQk8PaGs0CrS8fhDv/y9rRIBGRERETMELQ6ICe3cyLiGQ3lQXiCOZBozs5jQOZow4Xgj4jVgSIlnjEo2I1EFkDESmGiJd5xerSWoA57fRTqz5BMXY7A4F+V9VKdP6YORNjx76GNWu8KA7ldi+68EI5yaeTPNOcWJfBqBKdsEc/97zEzG89e+6Cs886U0YfuHLO9Lnp02egvLxcYsnidUa2aF7om0LqmoYDDthfToTj8TimT5+ODz/6GEuXLIXtOOAkmqv43KeqGeLdd9+JVi1bykkz7zvv4cyZM7F+fUny+CQLTLei/8ehhxws0+e4ul9b4/1nHcj0Gd/JaA3HJsciiVJubg6YHnjQQQdh7z595CSczukvv/xqmk8KCTKjDl26dMZdd9+bRkDC4RDuv+8+xGJRjB79HBYsTLiMAygsLJCeNRxjo0c/j2VFlel/bdq0xoUXXCCvqyoBYaoh+8N6KkYUSdh69NgJTB/bZZed5fUy9e3dd/+HaCyWvPQDD9hfkiimuhGzGTNmyGJ1Pg8VFRXJZ5AElNGQfvvvh/323VdGQTLdGpaAuC4cvQIucgDbhaGVw1n/JioWD0WOOROmbXqF52YMhixg3wrNNWDpBiqy+iKvzaMQ4d0R12zp+WFK13UOWhO2pqGOYnpb4SLUKRUCCgGFgEJAIbBtIcBVcaY7ceKzrrgYtmVBNwzk5+WB5oCcwKZOHDnp9NOjeKWcdPEPj8OVbBIQ/pv7cQKZqv7D7TnJ84/H73ks/lm7dp03+aLcTCgsJ+GmyeMwPXzjq47u6lmwJt0LUezVoWy4JYpcSTJY30qJXKZSSdLB5p/P/zezvxPiPDpJBv/4Z9hw3/S2fRA44v+gZXsErqZG7Jg+JRIpSLxe4sTJN8kBJ78+KeT//c/8YxFPTvh9nLg98Vy7dg1yc/PAyIC/X+r5eY+4Hxv7QALIdK9YPAZGBXj/eb8rcfH2priAfy7/HvKcrP3gRJuIcPJMAsK+8Tx1aQ7Hom1LNamS0hI4tiP7R4LAyTqP45+X/SUOVaM63J64MX3Jx1Pe0QSp5t+5X+oY9vH2v6vpmCQHVQlIly5dcP9990qiR0IUDmdJol71XsTjJNaVY4nXwWck9VqIH1PkmP7IqAqL7QsKCmWqG7evLfpXF1w3tE2DEhDveaL+tAvLNrx0JluHYX2I6OJbEY7xYQ3A1WPQNZvaVRIoClVR3cr7SyVw9brYZDU7hyNNDvnQeiaEbsL6XHdDcLQAKkL7I7fjg3ADfWBpfNhWIyBaJ/1KeChHY+90FQCp101QGysEFAIKAYWAQmA7R0A4cOZNgj11JEQ5U5k2cd6SKZho1NykKwL9b4HeerdMHVUdZyshQIGF226/M+3sXTp3xoMP/msr9Sgzp21QApLaRZ/FuloMuqUBsd8RWz0EouJ/CNHJXJjSp4PRBrAgXXOgOTWw+zoSEkeEIHgM3aYOFnRXh0tTH0phcdEBQDlaI6v52TCbngXN6A3HYBiT21JyNzMAq6MoBBQCCgGFgEJAIbCdI2DH4Mx8F/aPL9VclL6lLp+Su4WdYfS9LOHCXnvq0ZbqkjrP5iGgCMjm4ZcMo2m2I80I45oGwy2Fs+YZiOJRCFgrYDBAocUhDAOWloOgS9WEKisJdSQgMVqeCwOBeDZ0hmL0OByToc4AhGYiHtgZwda3w8geCM0OAYaAMEugiaAsSEdd68I2Exe1u0JAIaAQUAgoBBQC2wECVgTOnPGwv3/eq9fYCk1r2g0myUfH/evuwr4V+qlOWXcEFAGpO1Yb3NKRfMKS5oGysBsuHOsPWCWvILZmLHLd5ZA8QaZjudXzL2uKTCRzJytPzTQrL5Diyfy6rDXRg7DMrjBa/hNG/nHQjabSgV3oDljhocnjMF1L80o/VFMIKAQUAgoBhYBCQCFQVwQcC27RT7CnjYC7enZd98rIdnq7vjD7XQ29Wbd0JayMHF0dZGshUCMB6dIFDz5w/9bqUkbOu8VSsPzeOgnjP5IMEhHH0GELICgq4FT8iujaN2HGJsKIL4QpKmQhj6zi8AvB6khA5PmEgBABxPQ2iOf0gJm9L7IKzoJtdodrujBpbCgd0mmiaEovEKFrUpXLUNUeGRlg6iAKAYWAQkAhoBDYoRDg3KNkCexpT8FZ8JVXbN6QzQzD6HmiNBrUsqqb7TXkqdWxGx6BefP+wp133Z12IipkPfbokIY/eQOeYYsTEIB1HoaMcAhGQqhtS78QEYOg27hwIKwFENHvYa95DVZkCSCKYOprYOgWTBoGyihKwv7cYxpJ+TnpKahpqEABNKMTNH1vZLU6CSK7HyyjALqmIyAjHXRd9wiKwZ1YoM5/I8ASEaV41YCDTh1aIaAQUAgoBBQC2z0C8XLYsz+G89vrEGUrAIfznwy2QBb0wk4w9roARscDMmtymMFuqkNtHgI0Dfzkk4kyQYeL8VTKatqkCejPsS23rUBAaoarqtSaJBVOOeAsQzzyG0TsT7jRRTCdBYAbBVwLmkafDgcutbW1fLiiBRDoCD3QGkZebxjBroDRFkIPwtEi0IQJHeFqHaiLzN62fJNV3xUCCgGFgEJAIaAQ2DoIiOKFcOZMgLtkOkTJUtA7RPqCbErTTRnl0PLbw+h6KPQuh9XocL4ph1b7KAS2JAKNloAwRhFz4ghQh9sVspBcc1wZtSDpkCFNKlqRqLCwHAZYyUGlKz0QgOFo0FwyRZEwGrUhZBpX9eIORUC25JBT51IIKAQUAgoBhcCOhwCJiLviN7gr/4BYOwdi/VKIaPHGyQhJB40LCzpCb94DWste0FvuCi235Y4Horri7QaBRktAiLAfFSFvEHDhCheu7slT+abk/L9wmD6lJQgGY1TMptKk/K4kK/yAqVtym3RVLUU+tpuxrC5EIaAQUAgoBBQCjRsBmg7Gy4GKNZJ8iJJlEOUrICLrAH5uR7w5SyALWigPyGoGLbcVtLzWXuQjqxkQYCbHxg0SGzcQqnc7OgKNhoBUvxGMbPBBJMUg6fAiFw69PRLSvMl6dD+UKc0HEw+l7m3lb+t97tOWHf22q+tXCCgEFAIKAYWAQmCrI8D5i3RD5x+vPtVrXEmlSI6ecD9X5mRb/V6pDmQUgUZMQDJ6nepgCgGFgEJAIaAQUAgoBBQCCgGFQCNAQBGQRnATVBcUAgoBhYBCQCGgEFAIKAQUAjsKAoqA7Ch3Wl2nQkAhoBBQCCgEFAIKAYWAQqARIKAISCO4CaoLCgGFgEJAIaAQUAgoBBQCCoEdBQFFQHaUO62uUyGgEFAIKAQUAgoBhYBCQCHQCBD4f8BWUjm1GQM4AAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_link/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_link/class.ecb2fd_admin_link.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX2xpbmsgZXh0ZW5kcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewoKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpIAoJewkKCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CgoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHNldF9maWVsZF9wYXJhbWV0ZXJzKCkgCiAgICB7CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ3RleHQnICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAndGFyZ2V0JyAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnX3NlbGYnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2xpbmsnICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgIGlmICggISR0aGlzLT5vcHRpb25zWydsaW5rJ10gKSByZXR1cm47CiAgICAgICAgaWYgKCAhJHRoaXMtPm9wdGlvbnNbJ3RleHQnXSApICR0aGlzLT5vcHRpb25zWyd0ZXh0J10gPSAkdGhpcy0+b3B0aW9uc1snbGluayddOwoKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbigndGV4dCcsICR0aGlzLT5vcHRpb25zWyd0ZXh0J10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3RhcmdldCcsICR0aGlzLT5vcHRpb25zWyd0YXJnZXQnXSApOwogICAgICAgICR0cGwtPmFzc2lnbignbGluaycsICR0aGlzLT5vcHRpb25zWydsaW5rJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_link/help.ecb2fd_admin_link.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5fbGluay50cGwgKn0KPHA+VGhlIGFkbWluX2xpbmsgZmllbGQgY3JlYXRlcyBhIGxpbmsgb24gdGhlIGFkbWluIHBhZ2UgdG8gYW55IHNwZWNpZmllZCB1cmwuPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWydsaW5rJz0+Imh0dHA6Ly93d3cuYmluZy5jb20iLCAndGV4dCc9PiJiaW5nIHNlYXJjaCIsICd0YXJnZXQnPT4iX2JsYW5rIl0pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5fbGluayBibG9jaz0idGVzdDE3IiB0YXJnZXQ9Il9ibGFuayIgbGluaz0iaHR0cDovL3d3dy5iaW5nLmNvbSIgdGV4dD0iYmluZyBzZWFyY2giIGxhYmVsPSIxNzogYWRtaW5fbGluayIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX2xpbmsnLCBhbGlhczogJzxiPmxpbms8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5saW5rIChyZXF1aXJlZCkgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+dGV4dCAob3B0aW9uYWwpIC0gdGhlIGRpc3BsYXllZCB0ZXh0PC9saT4KICAgIDxsaT50YXJnZXQgKG9wdGlvbmFsKSAtIGUuZy4gJ19ibGFuaycgLSBkZWZhdWx0OiAnX3NlbGYnPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_link/input.ecb2fd_admin_link.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX2xpbmsudHBsIC0gdjEuMCAtIDI1SnVuMjIgCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKip9CntpZiAhZW1wdHkoJGRlc2NyaXB0aW9uKX0KICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0KICAgICAgICA8YSB0YXJnZXQ9InskdGFyZ2V0fSIgaHJlZj0ieyRsaW5rfSI+eyR0ZXh0fTwvYT4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_module_link/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_module_link/class.ecb2fd_admin_module_link.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX21vZHVsZV9saW5rIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ21vZCcgICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAndGV4dCcgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICd0YXJnZXQnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICdfc2VsZicsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnc2l6ZScgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAzMCwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdtYXhfbGVuZ3RoJyAgICA9PiBbJ2RlZmF1bHQnID0+IDI1NSwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdkZWZhdWx0JyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXQogICAgICAgIF07CiAgICAgICAgLy8gJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWyAnYWxpYXMnID0+ICdwYXJhbWV0ZXInIF07CiAgICAgICAgLy8gJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyA9IEZBTFNFOyAgICAvLyBkZWZhdWx0OiB0cnVlCgogICAgfQoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsKCiAgICAgICAgJHRhcmdldF9tb2QgPSAnJzsKICAgICAgICBpZiAoICR0aGlzLT5vcHRpb25zWydtb2QnXSApIHsKICAgICAgICAgICAgJHRhcmdldF9tb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoICR0aGlzLT5vcHRpb25zWydtb2QnXSApOwogICAgICAgICAgICBpZiAoICFpc19vYmplY3QoJHRhcmdldF9tb2QpICkgewogICAgICAgICAgICAgICAgJHRoaXMtPmVycm9yID0gJHRoaXMtPm1vZC0+TGFuZygnbW9kdWxlX2Vycm9yJywgJHRoaXMtPm9wdGlvbnNbJ21vZCddKTsKICAgICAgICAgICAgICAgIHJldHVybiAkdGhpcy0+bW9kLT5lcnJvcl9tc2coJHRoaXMtPmVycm9yKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgJGFkZHRleHQgPSAndGFyZ2V0PSInLiR0aGlzLT5vcHRpb25zWyd0YXJnZXQnXS4nIic7CiAgICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbigndGFyZ2V0X21vZCcsICR0YXJnZXRfbW9kICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd0YXJnZXQnLCAkdGhpcy0+b3B0aW9uc1sndGFyZ2V0J10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3RleHQnLCAkdGhpcy0+b3B0aW9uc1sndGV4dCddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdhZGR0ZXh0JywgJGFkZHRleHQgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_module_link/help.ecb2fd_admin_module_link.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5fbW9kdWxlX2xpbmsudHBsICp9CjxwPlRoZSBhZG1pbl9tb2R1bGVfbGluayBmaWVsZCBjcmVhdGVzIGEgbGluayBvbiB0aGUgYWRtaW4gcGFnZSB0byB0aGUgc3BlY2lmaWVkIG1vZHVsZS48L3A+Cgo8ZmllbGRzZXQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ21vZCc9PiJDTVNDb250ZW50TWFuYWdlciIsICd0ZXh0Jz0+IkVkaXQgQ29udGVudCBQYWdlcyIsICd0YXJnZXQnPT4nX2JsYW5rJ10pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5fbW9kdWxlX2xpbmsgYmxvY2s9InRlc3QxOCIgbW9kPSJDTVNDb250ZW50TWFuYWdlciIgdGV4dD0iRWRpdCBDb250ZW50IFBhZ2VzIiBsYWJlbD0iMTg6IG1vZHVsZV9saW5rOkNvbnRlbnRNYW5hZ2VyIiB0YXJnZXQ9J19ibGFuaycgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2FkbWluX21vZHVsZV9saW5rJywgYWxpYXM6ICc8Yj5tb2R1bGVfbGluazwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPm1vZCAocmVxdWlyZWQpIC0gbmFtZSBvZiB0aGUgbW9kdWxlIHRvIGxpbmsgdG88YnI+CiAgICA8bGk+dGV4dCAob3B0aW9uYWwpIC0gdGV4dCB0byB1c2UgaW4gdGhlIGxpbms8L2xpPgogICAgPGxpPnRhcmdldCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ19zZWxmJzwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_module_link/input.ecb2fd_admin_module_link.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX21vZHVsZV9saW5rLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAgeyR0YXJnZXRfbW9kLT5DcmVhdGVMaW5rKCcnLCAnZGVmYXVsdGFkbWluJywgJycsICR0ZXh0LCBbXSwgJycsIGZhbHNlLCAwLCAkYWRkdGV4dCl9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_text/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_text/class.ecb2fd_admin_text.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2FkbWluX3RleHQgZXh0ZW5kcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewoKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpIAoJewkKCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CgoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHNldF9maWVsZF9wYXJhbWV0ZXJzKCkgCiAgICB7CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ3RleHQnICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgICAgIC8vICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsgJ2FsaWFzJyA9PiAncGFyYW1ldGVyJyBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndGV4dCcsICR0aGlzLT5vcHRpb25zWyd0ZXh0J10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_text/help.ecb2fd_admin_text.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfYWRtaW5fdGV4dC50cGwgKn0KPHA+VGhlIGFkbWluX3RleHQgZmllbGQganVzdCBhZGRzIHRleHQgaW50byB0aGUgYWRtaW4gcGFnZS48L3A+Cgo8ZmllbGRzZXQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ3RleHQnPT4nU2ltcGx5IGFkZCBzb21lIHRleHQgaW50byB0aGUgYWRtaW4gcGFnZXMgdG8gZ2l2ZSBzb21lIGd1aWRhbmNlIHRvIHRoZSBlZGl0b3JzLCBvciB3aGF0ZXZlciBlbHNlIHlvdSB3YW50IHJlYWxseSA6KS4nXSl9CjwvZmllbGRzZXQ+Cgo8cHJlPntsaXRlcmFsfXtjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1hZG1pbl90ZXh0IHRleHQ9J1NpbXBseSBhZGQgc29tZSB0ZXh0IGludG8gdGhlIGFkbWluIHBhZ2VzIHRvIGdpdmUgc29tZSBndWlkYW5jZSB0byB0aGUgZWRpdG9ycywgb3Igd2hhdGV2ZXIgZWxzZSB5b3Ugd2FudCByZWFsbHkgOikuJyBibG9jaz0idGVzdDE2IiBsYWJlbD0iMTY6IFRleHQifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdhZG1pbl90ZXh0JywgYWxpYXM6ICc8Yj50ZXh0PC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+dGV4dCAocmVxdWlyZWQpIC0gdGV4dCBpbiBhZG1pbiAoYWRkIGluZm9ybWF0aW9uIGZvciB1c2Vycyk8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/admin_text/input.ecb2fd_admin_text.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2FkbWluX3RleHQudHBsIC0gdjEuMCAtIDI1SnVuMjIgCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKip9CntpZiAhZW1wdHkoJGRlc2NyaXB0aW9uKX0KICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0KICAgICAgICB7JHRleHR9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/checkbox/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/checkbox/class.ecb2fd_checkbox.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2NoZWNrYm94IGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ2lubGluZV9sYWJlbCcgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnZGVmYXVsdCcgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sIAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgICAgIC8vICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsgJ2FsaWFzJyA9PiAncGFyYW1ldGVyJyBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2lubGluZV9sYWJlbCcsICR0aGlzLT5vcHRpb25zWydpbmxpbmVfbGFiZWwnXSApOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/checkbox/help.ecb2fd_checkbox.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfY2hlY2tib3gudHBsICp9CjxwPlRoZSBjaGVja2JveCBmaWVsZCBjcmVhdGVzIGEgc2ltcGxlIGNoZWNrLWFibGUgaW5wdXQuPC9wPgoKPGZpZWxkc2V0PgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij5UZXN0IGNoZWNrYm94PC9wPgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWydkZWZhdWx0Jz0+MV0pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9Y2hlY2tib3ggYmxvY2s9InRlc3Q1IiBsYWJlbD0iVGVzdCBjaGVja2JveCIgZGVmYXVsdD0iMSJ9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2NoZWNrYm94JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5pbmxpbmVfbGFiZWwgKG9wdGlvbmFsKSAtIGFkZHMgYSBjbGlja2FibGUgaW5saW5lIGxhYmVsIHRvIHRoZSBjaGVja2JveC4gVGlwOiBJZiB5b3UgYWRkIGxhYmVsPScmYW1wO25ic3A7JyB0aGUgbGFiZWwgYWJvdmUgdGhlIGNoZWNrYm94IHdpbGwgYmUgaGlkZGVuPC9saT4KICAgIDxsaT5kZWZhdWx0IChvcHRpb25hbCkgLSAoYWxpYXM6ICc8Yj5kZWZhdWx0X3ZhbHVlPC9iPicpIC0gaW5pdGlhbCB2YWx1ZSB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2U8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4KCjxmaWVsZHNldD4KICAgIDxsZWdlbmQ+U2FtcGxlIGNoZWNrYm94IHdpdGggaW5saW5lX2xhYmVsIC0gdXNlICdpbmxpbmVfbGFiZWw9ImlubGluZSBsYWJlbCBmb3IgY2hlY2tib3giIGxhYmVsPSImYW1wO25ic3A7IicgPC9sZWdlbmQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ2lubGluZV9sYWJlbCc9PiJpbmxpbmUgbGFiZWwgZm9yIGNoZWNrYm94IiwgJ2xhYmVsJz0+IiZhbXA7bmJzcDsiLCAnZGVmYXVsdCc9PjFdKX0KPC9maWVsZHNldD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/checkbox/input.ecb2fd_checkbox.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2NoZWNrYm94LnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ieyRibG9ja19uYW1lfSIgdmFsdWU9IjAiPgogICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9InskYmxvY2tfbmFtZX0iIGNsYXNzPSJjbXNfY2hlY2tib3giIG5hbWU9InskYmxvY2tfbmFtZX0iIHZhbHVlPSIxIiB7aWYgJHZhbHVlfWNoZWNrZWQ9ImNoZWNrZWQiey9pZn0+CntpZiAkaW5saW5lX2xhYmVsfQogICAgICAgIDxsYWJlbCBmb3I9InskYmxvY2tfbmFtZX0iPiA8Yj57JGlubGluZV9sYWJlbH08L2I+PC9sYWJlbD4Key9pZn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/color_picker/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/color_picker/class.ecb2fd_color_picker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2NvbG9yX3BpY2tlciBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbCiAgICAgICAgICAgICdkZWZhdWx0X3ZhbHVlJyA9PiAnZGVmYXVsdCcKICAgICAgICBdOwogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICdzaXplJyAgICAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAxMCwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0lOVF0sCiAgICAgICAgICAgICdub19oYXNoJyAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0JPT0xFQU5dLAogICAgICAgICAgICAnY2xlYXJfY3NzX2NhY2hlJyAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2RlZmF1bHQnICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2NsYXNzJywgJ2NvbG9ycGlja2VyJyk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdhbGlhcycsICR0aGlzLT5hbGlhcyk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdzaXplJywgJHRoaXMtPm9wdGlvbnNbJ3NpemUnXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdub19oYXNoJywgJHRoaXMtPm9wdGlvbnNbJ25vX2hhc2gnXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/color_picker/help.ecb2fd_color_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfY29sb3JfcGlja2VyLnRwbCAqfQo8cD5UaGUgY29sb3JfcGlja2VyIGZpZWxkIHByb3ZpZGVzIGEgc2ltcGxlIG9wdGlvbiBmb3Igc2VsZWN0aW5nIGEgSEVYIGNvbG9yIGNvZGUuPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWyAnZGVmYXVsdCc9PicjMzMzOGM0J10pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9Y29sb3JfcGlja2VyIGJsb2NrPSJ0ZXN0NyIgbGFiZWw9IkNvbG9yIiBkZWZhdWx0PSIjMzMzOGM0In17L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnY29sb3JfcGlja2VyJzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBkZWZhdWx0IDEwPC9saT4KICAgIDxsaT5ub19oYXNoIChvcHRpb25hbCkgLSBpZiBzZXQgdGhlIGhleCB2YWx1ZSBkaXNwbGF5ZWQgYW5kIHJldHVybmVkIGRvZXMgbm90IGluY2x1ZGUgYSAnIyc8L2xpPgogICAgPGxpPmNsZWFyX2Nzc19jYWNoZSAob3B0aW9uYWwpIC0gaWYgc2V0IHRoZSBjc3MgY2FjaGUgaXMgcmVmcmVzaGVkIGlmIHRoZSBjb2xvciBpcyBjaGFuZ2VkPC9saT4KICAgIDxsaT5kZWZhdWx0IChvcHRpb25hbCkgLSAoYWxpYXM6ICc8Yj5kZWZhdWx0X3ZhbHVlPC9iPicpIC0gaW5pdGlhbCB2YWx1ZSB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2U8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4K]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/color_picker/input.ecb2fd_color_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2NvbG9yX3BpY2tlci50cGwgLSB2MS4wIC0gMjVKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQogICAgICAgIHtzdHJpcH0KICAgICAgICA8aW5wdXQgY2xhc3M9InskY2xhc3N9IiB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGJsb2NrX25hbWV9IiBpZD0ieyRhbGlhc30iIHNpemU9Inskc2l6ZX0iIHZhbHVlPSJ7JHZhbHVlfSIKICAgICAgICAgICAge2lmICFlbXB0eSgkbm9faGFzaCl9IGRhdGEtbm8taGFzaD0ieyRub19oYXNofSJ7L2lmfQogICAgICAgIC8+CiAgICAgICAgey9zdHJpcH0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/date_time_picker/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/date_time_picker/class.ecb2fd_date_time_picker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2RhdGVfdGltZV9waWNrZXIgZXh0ZW5kcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewoKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpIAoJewkKCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CgoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHNldF9maWVsZF9wYXJhbWV0ZXJzKCkgCiAgICB7CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ3NpemUnICAgICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IDIwLCAgICAgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0lOVF0sCiAgICAgICAgICAgICdtYXhfbGVuZ3RoJyAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAyMCwgICAgICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9JTlRdLAogICAgICAgICAgICAnZGF0ZV9mb3JtYXQnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJ3l5LW1tLWRkJywnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ3RpbWVfZm9ybWF0JyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICdISDptbScsICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICd0aW1lJyAgICAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnY2hhbmdlX21vbnRoJyAgICAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfQk9PTEVBTl0sCiAgICAgICAgICAgICdjaGFuZ2VfeWVhcicgICAgICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ3llYXJfcmFuZ2UnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdzaG93X3RpbWUnICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2RhdGVfb25seScgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IEZBTFNFLCAgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0JPT0xFQU5dLAogICAgICAgICAgICAndGltZV9vbmx5JyAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfQk9PTEVBTl0sCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICd0aW1lJyA9PiAnc2hvd190aW1lJyBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgLy8gc2V0ICRjbGFzcyB0byAnZGF0ZXRpbWVwaWNrZXInIChkZWZhdWx0KSwgJ2RhdGVwaWNrZXInIG9yICd0aW1lcGlja2VyJyAKICAgICAgICAkY2xhc3MgPSAnZGF0ZXRpbWVwaWNrZXInOwogICAgICAgIGlmICggKCBpc3NldCgkdGhpcy0+ZmllbGRfYWxpYXNfdXNlZCkgJiYgJHRoaXMtPmZpZWxkX2FsaWFzX3VzZWQ9PSd0aW1lcGlja2VyJyApIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+b3B0aW9uc1sndGltZV9vbmx5J10gKSB7CiAgICAgICAgICAgICRjbGFzcyA9ICd0aW1lcGlja2VyJzsKICAgICAgICB9IGVsc2VpZiAoICggaXNzZXQoJHRoaXMtPmZpZWxkX2FsaWFzX3VzZWQpICYmICR0aGlzLT5maWVsZF9hbGlhc191c2VkPT0nZGF0ZXBpY2tlcicgJiYgCiAgICAgICAgICAgICAgICAhJHRoaXMtPm9wdGlvbnNbJ3Nob3dfdGltZSddICkgfHwgJHRoaXMtPm9wdGlvbnNbJ2RhdGVfb25seSddICkgewogICAgICAgICAgICAkY2xhc3MgPSAnZGF0ZXBpY2tlcic7CiAgICAgICAgfQogICAgCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2NsYXNzJywgJGNsYXNzKTsgIAogICAgICAgICR0cGwtPmFzc2lnbignc2l6ZScsICR0aGlzLT5vcHRpb25zWydzaXplJ10pOwogICAgICAgICR0cGwtPmFzc2lnbignbWF4X2xlbmd0aCcsICR0aGlzLT5vcHRpb25zWydtYXhfbGVuZ3RoJ10pOwogICAgICAgICR0cGwtPmFzc2lnbigndGltZV9mb3JtYXQnLCAkdGhpcy0+b3B0aW9uc1sndGltZV9mb3JtYXQnXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdjaGFuZ2VfbW9udGgnLCAkdGhpcy0+b3B0aW9uc1snY2hhbmdlX21vbnRoJ10pOwogICAgICAgICR0cGwtPmFzc2lnbignY2hhbmdlX3llYXInLCAkdGhpcy0+b3B0aW9uc1snY2hhbmdlX3llYXInXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd5ZWFyX3JhbmdlJywgJHRoaXMtPm9wdGlvbnNbJ3llYXJfcmFuZ2UnXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/date_time_picker/help.ecb2fd_date_time_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfZGF0ZV90aW1lX3BpY2tlci50cGwgKn0KPHA+VGhlIGRhdGVfdGltZV9waWNrZXIgZmllbGQgY3JlYXRlcyBhIHBvcHVwIGZvciBzZWxlY3RpbmcgYSBkYXRlLCBhIHRpbWUsIG9yIGJvdGguPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWRhdGVfdGltZV9waWNrZXIgYmxvY2s9J3Rlc3Q4JyBsYWJlbD0nRGF0ZSBUaW1lIFBpY2tlcid9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2RhdGVfdGltZV9waWNrZXInLCBvciBhbGlhczogJzxiPmRhdGVwaWNrZXI8L2I+JywgJzxiPnRpbWVwaWNrZXI8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBzZXRzIHRoZSB3aWR0aCBvZiB0aGUgaHRtbCBpbnB1dCAtIGRlZmF1bHQ6IDIwPC9saT4KICAgIDxsaT5tYXhfbGVuZ3RoIChvcHRpb25hbCkgLSBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIC0gZGVmYXVsdDogMTA8L2xpPgogICAgPGxpPnNob3dfdGltZSAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+dGltZTwvYj4nKSBhZGQgdGltZSBwaWNrZXIgLSBkZWZhdWx0OiB0cnVlPC9saT4KICAgIDxsaT5kYXRlX29ubHkgKG9wdGlvbmFsKSAtIG9ubHkgc2hvdyBkYXRlIHBpY2tlciAtIGRlZmF1bHQ6IGZhbHNlPC9saT4KICAgIDxsaT50aW1lX29ubHkgKG9wdGlvbmFsKSAtIG9ubHkgc2hvdyB0aW1lIHBpY2tlciAtIGRlZmF1bHQ6IGZhbHNlPC9saT4KICAgIDxsaT5kYXRlX2Zvcm1hdCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ3l5LW1tLWRkJzwvbGk+CiAgICA8bGk+dGltZV9mb3JtYXQgKG9wdGlvbmFsKSAtIGRlZmF1bHQ6ICdISDo6c3MnPC9saT4KICAgIDxsaT5jaGFuZ2VfbW9udGggKG9wdGlvbmFsKSAtIHdoZXRoZXIgdGhlIG1vbnRoIHNob3VsZCBiZSByZW5kZXJlZCBhcyBhIGRyb3Bkb3duIGluc3RlYWQgb2YgdGV4dCAtIGRlZmF1bHQ6IGZhbHNlLjwvbGk+CiAgICA8bGk+Y2hhbmdlX3llYXIgKG9wdGlvbmFsKSAtIHdoZXRoZXIgdGhlIHllYXIgc2hvdWxkIGJlIHJlbmRlcmVkIGFzIGEgZHJvcGRvd24gaW5zdGVhZCBvZiB0ZXh0LiBVc2UgdGhlIHllYXJfcmFuZ2Ugb3B0aW9uIHRvIGNvbnRyb2wgd2hpY2ggeWVhcnMgYXJlIG1hZGUgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb24gLSBkZWZhdWx0OiBmYWxzZTwvbGk+CiAgICA8bGk+eWVhcl9yYW5nZSAob3B0aW9uYWwpIC0gdGhlIHJhbmdlIG9mIHllYXJzIGRpc3BsYXllZCBpbiB0aGUgeWVhciBkcm9wLWRvd246IGVpdGhlciByZWxhdGl2ZSB0byB0b2RheSdzIHllYXIgKCItbm46K25uIiksIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgeWVhciAoImMtbm46YytubiIpLCBhYnNvbHV0ZSAoIm5ubm46bm5ubiIpLCBvciBjb21iaW5hdGlvbnMgb2YgdGhlc2UgZm9ybWF0cyAoIm5ubm46LW5uIikgLSBkZWZhdWx0OiAnYy0xMDpjKzEwJzwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5kYXRlX3RpbWVfcGlja2VyIHdpdGggZGF0ZV9vbmx5IC0gdXNlICdkYXRlX29ubHk9MSc8L2xlZ2VuZD4KICAgIHskZmllbGRkZWYtPmdldF9kZW1vX2lucHV0KFsnZGF0ZV9vbmx5Jz0+MV0pfQo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5kYXRlX3RpbWVfcGlja2VyIHdpdGggdGltZV9vbmx5IC0gdXNlICd0aW1lX29ubHk9MSc8L2xlZ2VuZD4KICAgIHskZmllbGRkZWYtPmdldF9kZW1vX2lucHV0KFsndGltZV9vbmx5Jz0+MV0pfQo8L2ZpZWxkc2V0Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/date_time_picker/input.ecb2fd_date_time_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2RhdGVfdGltZV9waWNrZXIudHBsIC0gdjEuMCAtIDI1SnVuMjIgCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKip9CntpZiAhZW1wdHkoJGRlc2NyaXB0aW9uKX0KICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0KICAgICAgICB7c3RyaXB9CiAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJ7JGNsYXNzfSIgIG5hbWU9InskYmxvY2tfbmFtZX0iIHNpemU9Inskc2l6ZX0iIG1heGxlbmd0aD0ieyRtYXhfbGVuZ3RofSIgCiAgICAgICAgICAgIHZhbHVlPSJ7JHZhbHVlfSIKICAgICAgICAgICAge2lmICFlbXB0eSgkdGltZV9mb3JtYXQpfSBkYXRhLXRpbWUtZm9ybWF0PSJ7JHRpbWVfZm9ybWF0fSJ7L2lmfQogICAgICAgICAgICB7aWYgIWVtcHR5KCRkYXRlX2Zvcm1hdCl9IGRhdGEtZGF0ZS1mb3JtYXQ9InskZGF0ZV9mb3JtYXR9InsvaWZ9CiAgICAgICAgICAgIHtpZiAhZW1wdHkoJHRpbWVfZm9ybWF0KX0gZGF0YS10aW1lLWZvcm1hdD0ieyR0aW1lX2Zvcm1hdH0iey9pZn0KICAgICAgICAgICAge2lmICFlbXB0eSgkY2hhbmdlX21vbnRoKX0gZGF0YS1jaGFuZ2UtbW9udGg9InskY2hhbmdlX21vbnRofSJ7L2lmfQogICAgICAgICAgICB7aWYgIWVtcHR5KCRjaGFuZ2VfeWVhcil9IGRhdGEtY2hhbmdlLXllYXI9InskY2hhbmdlX3llYXJ9InsvaWZ9CiAgICAgICAgICAgIHtpZiAhZW1wdHkoJHllYXJfcmFuZ2UpfSBkYXRhLXllYXItcmFuZ2U9InskeWVhcl9yYW5nZX0iey9pZn0KICAgICAgICAvPgogICAgICAgIHsvc3RyaXB9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/dropdown/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/dropdown/class.ecb2fd_dropdown.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2Ryb3Bkb3duIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwogICAgICAgIAoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogVFJVRSAtIG5lZWRlZCBmb3IgbW9kdWxlIGNhbGwKICAgICAgICAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbCiAgICAgICAgICAgICdnY2InID0+ICd0ZW1wbGF0ZScsCiAgICAgICAgICAgICdkZWZhdWx0X3ZhbHVlJyA9PiAnZGVmYXVsdCcKICAgICAgICBdOwogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICd2YWx1ZXMnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdkZWZhdWx0JyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdzaXplJyAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IDUsICAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfSU5UXSwKICAgICAgICAgICAgJ211bHRpcGxlJyAgICAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2ZpcnN0X3ZhbHVlJyAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2NvbXBhY3QnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2ZsaXBfdmFsdWVzJyAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ21vZCcgICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAndWR0JyAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICd0ZW1wbGF0ZScgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2N1c3RvbWdzX2ZpZWxkJz0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwoKICAgIH0KCgoKLy8KCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsKICAgICAgICAvLyBnZXQgdGhlIGRyb3Bkb3duIHZhbHVlcy9vcHRpb25zCiAgICAgICAgaWYgKCAkdGhpcy0+b3B0aW9uc1snbW9kJ10gKSB7ICAKICAgICAgICAgICAgLy8gY2FsbCBtb2R1bGUgdG8gZ2V0IHZhbHVlcyAoY29tbWEgc2VwYXJhdGVkIGxpc3QpCiAgICAgICAgICAgICRleGNsdWRlX29wdGlvbnMgPSBbJ3NpemUnLCdtdWx0aXBsZScsJ3ZhbHVlcycsJ2RlZmF1bHRfdmFsdWUnLCdmaXJzdF92YWx1ZScsJ2Rlc2NyaXB0aW9uJywKICAgICAgICAgICAgICAgICdjb21wYWN0JywnZmllbGQnLCdtb2QnLCdmbGlwX3ZhbHVlcycsJ3RlbXBsYXRlJywndWR0JywnZ2JjJywnY3VzdG9tZ3NfZmllbGQnXTsKICAgICAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X3ZhbHVlc19mcm9tX21vZHVsZSgkdGhpcy0+b3B0aW9uc1snbW9kJ10sIFtdLCAkZXhjbHVkZV9vcHRpb25zKTsKCiAgICAgICAgfSBlbHNlaWYgKCAkdGhpcy0+b3B0aW9uc1sndWR0J10gKSB7ICAKICAgICAgICAgICAgLy8gcnVuIFVEVCB0byBnZXQgdmFsdWVzIChhcnJheSBvciBjb21tYSBzZXBhcmF0ZWQgbGlzdCkKICAgICAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X3ZhbHVlc19mcm9tX3VkdCggJHRoaXMtPm9wdGlvbnNbJ3VkdCddICk7CiAgICAgICAgICAgIGlmICgkdGhpcy0+ZXJyb3IpIHJldHVybiAkdGhpcy0+bW9kLT5lcnJvcl9tc2coJHRoaXMtPmVycm9yKTsKCiAgICAgICAgfSBlbHNlaWYgKCAkdGhpcy0+b3B0aW9uc1sndGVtcGxhdGUnXSApIHsgIAogICAgICAgICAgICAvLyBzbWFydHkgdGVtcGxhdGUgdG8gZ2V0IHZhbHVlcyAoYXJyYXkgb3IgY29tbWEgc2VwYXJhdGVkIGxpc3QpCiAgICAgICAgICAgICRvcHRpb25zID0gJHRoaXMtPmdldF92YWx1ZXNfZnJvbV90ZW1wbGF0ZSggJHRoaXMtPm9wdGlvbnNbJ3RlbXBsYXRlJ10gKTsKICAgICAgICAgICAgaWYgKCR0aGlzLT5lcnJvcikgcmV0dXJuICR0aGlzLT5tb2QtPmVycm9yX21zZygkdGhpcy0+ZXJyb3IpOwoKICAgICAgICB9IGVsc2VpZiAoICR0aGlzLT5vcHRpb25zWydjdXN0b21nc19maWVsZCddICkgeyAgCiAgICAgICAgICAgIC8vIEN1c3RvbUdTIGZpZWxkIHRvIGdldCB2YWx1ZXMgZnJvbSAobmV3bGluZSBvciBjb21tYSBzZXBhcmF0ZWQgbGlzdCkKICAgICAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X3ZhbHVlc19mcm9tX2N1c3RvbWdzKCAkdGhpcy0+b3B0aW9uc1snY3VzdG9tZ3NfZmllbGQnXSApOwogICAgICAgICAgICBpZiAoJHRoaXMtPmVycm9yKSByZXR1cm4gJHRoaXMtPm1vZC0+ZXJyb3JfbXNnKCR0aGlzLT5lcnJvcik7CgogICAgICAgIH0gZWxzZSB7IAogICAgICAgICAgICAvLyB1c2UgcHJvdmlkZWQgJ3ZhbHVlcycgKGNvbW1hIHNlcGFyYXRlZCBsaXN0KQogICAgICAgICAgICAkb3B0aW9ucyA9ICR0aGlzLT5nZXRfYXJyYXlfZnJvbV9jc2woICR0aGlzLT5vcHRpb25zWyd2YWx1ZXMnXSApOwogICAgICAgIAogICAgICAgIH0KCiAgICAgICAgLy8gYXBwbHkgc29tZSBvdGhlciBwYXJhbWV0ZXJzCiAgICAgICAgaWYgKCAkdGhpcy0+b3B0aW9uc1snZmxpcF92YWx1ZXMnXSAmJiAhZW1wdHkoJG9wdGlvbnMpICkgeyAKICAgICAgICAgICAgJG9wdGlvbnMgPSBhcnJheV9mbGlwKCRvcHRpb25zKTsKICAgICAgICB9CiAgICAgICAgaWYgKCAhZW1wdHkoJHRoaXMtPm9wdGlvbnNbJ2NvbXBhY3QnXSkgKSB7CiAgICAgICAgICAgICR0aGlzLT5vcHRpb25zWydzaXplJ10gPSBjb3VudCgkb3B0aW9ucyk7CiAgICAgICAgfQogICAgICAgIGlmICggIWVtcHR5KCR0aGlzLT5vcHRpb25zWydmaXJzdF92YWx1ZSddKSApIHsKICAgICAgICAgICAgJG9wdGlvbnMgPSBhcnJheSggJycgPT4gJHRoaXMtPm9wdGlvbnNbJ2ZpcnN0X3ZhbHVlJ10gKSArICRvcHRpb25zOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbiggJ21vZCcsICR0aGlzLT5tb2QgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oICdibG9ja19uYW1lJywgJHRoaXMtPmJsb2NrX25hbWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oICdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCAnbXVsdGlwbGUnLCAkdGhpcy0+b3B0aW9uc1snbXVsdGlwbGUnXSApOwogICAgICAgICR0cGwtPmFzc2lnbiggJ2NvbXBhY3QnLCAkdGhpcy0+b3B0aW9uc1snY29tcGFjdCddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCAnc2l6ZScsICR0aGlzLT5vcHRpb25zWydzaXplJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oICdzZWxlY3RlZCcsICR0aGlzLT52YWx1ZSApOwoKICAgICAgICBpZiAoICR0aGlzLT5vcHRpb25zWydtdWx0aXBsZSddICkgewogICAgICAgICAgICAkc2VsZWN0ZWRfdmFsdWVzID0gZXhwbG9kZSgnLCcsICR0aGlzLT52YWx1ZSk7CiAgICAgICAgICAgICRzZWxlY3RlZF90ZXh0ID0gW107CiAgICAgICAgICAgIGZvcmVhY2ggKCRzZWxlY3RlZF92YWx1ZXMgYXMgJHZhbHVlKSB7CiAgICAgICAgICAgICAgICAvLyAkc2VsZWN0ZWRfdGV4dFtdID0gYXJyYXlfc2VhcmNoKCAkdmFsdWUsICRvcHRpb25zICk7CiAgICAgICAgICAgICAgICAkc2VsZWN0ZWRfdGV4dFtdID0gaXNzZXQoJG9wdGlvbnNbJHZhbHVlXSkgPyAkb3B0aW9uc1skdmFsdWVdIDogJyc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHNlbGVjdGVkX3RleHQgPSBpbXBsb2RlKCcsICcsICRzZWxlY3RlZF90ZXh0KTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCAnc2VsZWN0ZWRfdmFsdWVzJywgJHNlbGVjdGVkX3ZhbHVlcyApOyAgLy8gYXJyYXkKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCAnc2VsZWN0ZWRfdGV4dCcsICRzZWxlY3RlZF90ZXh0ICk7ICAgICAgLy8gdGV4dAogICAgICAgIH0KCiAgICAgICAgJHRwbC0+YXNzaWduKCdvcHRpb25zJywgJG9wdGlvbnMgKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/dropdown/help.ecb2fd_dropdown.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfZHJvcGRvd24udHBsICp9CjxwPkNyZWF0ZXMgYSBkcm9wZG93biAob3Igc2VsZWN0KSB0aGF0IHRoZSBlZGl0b3IgY2FuIGNob29zZSBmcm9tIHRoZSBwcm92aWRlZCBvcHRpb25zLiBUaGUgZHJvcGRvd24gb3B0aW9ucyBjYW4gYmUgZnJvbSBhOiBjb21tYSBzZXBhcmF0ZWQgbGlzdCAodmFsdWVzKSwgbW9kdWxlIGNhbGwgKG1vZCksIFVzZXIgRGVmaW5lZCBUYWcgKHVkdCksIG9yIGEgc21hcnR5IHRlbXBsYXRlICh0ZW1wbGF0ZSAvIHVkdCkuIE9uZSBvZiB0aGVzZSBwYXJhbWV0ZXJzIG11c3QgYmUgdXNlZCAoKikuPC9wPgoKPGZpZWxkc2V0Pgp7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ3ZhbHVlcyc9PidBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEtpd2lmcnVpdD1raXdpZnJ1aXQnLCAnZmlyc3RfdmFsdWUnPT4nc2VsZWN0IGZydWl0J10pfQo8L2ZpZWxkc2V0PgoKe2xpdGVyYWx9CjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICc8Yj5kcm9wZG93bjwvYj4nLCBvciBhbGlhczogJzxiPnNlbGVjdDwvYj4nLCAnPGI+ZHJvcGRvd25fZnJvbV9tb2R1bGU8L2I+JywgJzxiPmRyb3Bkb3duX2Zyb21fdWR0PC9iPicsICc8Yj5kcm9wZG93bl9mcm9tX2diYzwvYj4nLCAnPGI+ZHJvcGRvd25fZnJvbV9jdXN0b21nczwvYj4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnZhbHVlcyAoKikgLSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mICdUZXh0JyBvciAnVGV4dD12YWx1ZScuIEV4YW1wbGU6ICdBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEdyZWVuPWdyZWVuJzxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBibG9jaz10ZXN0NSBmaWVsZD1kcm9wZG93bjEgdmFsdWVzPSJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlIiBmaXJzdF92YWx1ZT0ic2VsZWN0IGZydWl0IiBsYWJlbD0iRnJ1aXQifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT5tb2QgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgbW9kdWxlIHRvIGNhbGwgdG8gZ2V0IHRoZSBvcHRpb24gdmFsdWVzLiBUaGUgbW9kdWxlIGNhbGwgbmVlZHMgdG8gZWl0aGVyOiBzZXQgYW4gYXJyYXkgJG9wdGlvbnMgb2YgJ3ZhbHVlJyA9PiAnVGV4dCcgd2l0aCBzY29wZT1nbG9iYWwsIG9yIHJldHVybiBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mICdUZXh0LC4uLicgb3IgJ1RleHQ9dmFsdWUsLi4uJy4gQW55IGFkZGl0aW9uYWwgcGFyYW1ldGVycyBhcmUgYWxzbyBwYXNzZWQgb250byB0aGUgc3BlY2lmaWVkIG1vZHVsZS4gWW91IG1heSB3YW50IHRvIGluY2x1ZGUgJ2FjdGlvbicgYW5kICd0ZW1wbGF0ZScgcGFyYW1ldGVycy48YnI+CiAgICAgICAgPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgYmxvY2s9ZHJvcGRvd24yIGZpZWxkPWRyb3Bkb3duIG1vZD1MSVNFUHJvamVjdHMgdGVtcGxhdGVfc3VtbWFyeT0iaXRlbV9kcm9wZG93biIgcGFnZWxpbWl0PTIgbGFiZWw9IkRyb3Bkb3duIC0gZnJvbSBtb2R1bGUifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT51ZHQgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgVXNlciBEZWZpbmVkIFRhZyB0byBjYWxsIHRvIGdldCB0aGUgb3B0aW9uIHZhbHVlcy4gVGhlIFVEVCBzaG91bGQgZWl0aGVyIHJldHVybiBhbiBhcnJheSBvZiAnVGV4dCcgPT4gJ3ZhbHVlJywgb3IgcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBibG9jaz1kcm9wZG93bjMgZmllbGQ9ZHJvcGRvd24gdWR0PSdlY2IyX3Rlc3RfdWR0X29wdGlvbnMnIGxhYmVsPSJEcm9wZG93biAtIGZyb20gdWR0In08L3ByZT4KICAgIDwvbGk+CiAgICA8bGk+dGVtcGxhdGUgKCopIC0gKGFsaWFzOiAnPGI+Z2NiPC9iPicpIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgc21hcnR5IHRlbXBsYXRlIGZyb20gRGVzaWduIE1hbmFnZXIgdG8gY2FsbCB0byBnZXQgdGhlIG9wdGlvbiB2YWx1ZXMuIFRoZSB0ZW1wbGF0ZSBjYWxsIG5lZWRzIHRvIGVpdGhlcjogc2V0IGFuIGFycmF5ICRvcHRpb25zIG9mICd2YWx1ZScgPT4gJ1RleHQnIHdpdGggc2NvcGU9Z2xvYmFsLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicuIDxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBibG9jaz1kcm9wZG93bjQgZmllbGQ9ZHJvcGRvd24gdGVtcGxhdGU9J0VDQjJfdGVzdF90ZW1wbGF0ZV9vcHRpb25zJyBsYWJlbD0iRHJvcGRvd24gLSBmcm9tIHRlbXBsYXRlIn08L3ByZT4KICAgIDwvbGk+CiAgICA8bGk+Y3VzdG9tZ3NfZmllbGQgKCopIC0gbmFtZSBvZiBjdXN0b21nc19maWVsZCB0byByZXRyaWV2ZSAod2l0aCBzcGFjZXMsIG5vdCB1bmRlcnNjb3JlcykgZS5nLiAnU2VjdGlvbiBTdHlsZXMnLiBUaGlzIG5lZWRzIHRvIGJlIGEgQ3VzdG9tR1MgJ3RleHRhcmVhJyBjb250YWluaW5nIGEgc2V0IG9mICdUZXh0JyBvciAnVGV4dD12YWx1ZScsIGVpdGhlciBvbiBzZXBhcmF0ZSBsaW5lcyBvciBzZXBhcmF0ZWQgYnkgY29tbWFzLjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBibG9jaz1kcm9wZG93bjMgZmllbGQ9ZHJvcGRvd24gY3VzdG9tZ3NfZmllbGQ9J1NlY3Rpb24gU3R5bGVzJyAgbGFiZWw9IkRyb3Bkb3duIC0gZnJvbSBDdXN0b21HUyJ9PC9wcmU+CiAgICA8L2xpPgogICAgPGxpPmZpcnN0X3ZhbHVlIChvcHRpb25hbCkgLSBzZXRzIGFuIHRleHQgc3RpbmcgZm9yIHRoZSBmaXJzdCBibGFuayB2YWx1ZSwgZS5nLiAnLS0tIHNlbGVjdCBvbmUgLS0tJzwvbGk+CiAgICA8bGk+ZmxpcF92YWx1ZXMgKG9wdGlvbmFsKSAtIHN3YXBzIHRoZSBkcm9wZG93bnMgdmFsdWVzIDwtPiB0ZXh0PC9saT4KICAgIDxsaT5tdWx0aXBsZSAob3B0aW9uYWwpIC0gYWRkIG11bHRpcGxlIG9wdGlvbiBzZWxlY3Qgc3VwcG9ydDwvbGk+CiAgICA8bGk+c2l6ZSAob3B0aW9uYWwpIC0gbXVsdGlwbGUgZW5hYmxlZCBvbmx5PC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CiAgICA8bGk+Y29tcGFjdCAob3B0aW9uYWwpIC0gZGVmYXVsdDpmYWxzZSAtIGlmIHNldCwgZm9yIG11bHRpcGxlIG9ubHksIGEgc3VtbWFyeSBvZiB0aGUgc2VsZWN0ZWQgb3B0aW9ucyBpcyBkaXNwbGF5ZWQgYW5kIHRoZSBmdWxsIHNlbGVjdCBpcyBzaG93bi9oaWRkZW4gd2hlbiAnZWRpdC9oaWRlJyBpcyBjbGlja2VkPC9saT4KICAgIDxsaT5kZWZhdWx0IChvcHRpb25hbCkgLSAoYWxpYXM6ICc8Yj5kZWZhdWx0X3ZhbHVlPC9iPicpIC0gaW5pdGlhbCB2YWx1ZSB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2U8L2xpPgo8L3VsPgo8YnI+CjxwPlNhbXBsZSB0ZW1wbGF0ZSBmb3IgJ21vZCcgcGFyYW1ldGVyIGZvciBhIExJU0UgSW5zdGFuY2Ugc3VtbWFyeSB0ZW1wbGF0ZS4gU2ltaWxhciBjYW4gYWxzbyBiZSB1c2VkIHdpdGggdGhlICd0ZW1wbGF0ZScgcGFyYW1ldGVyLjwvcD4KPHByZT4KeyogaXRlbV9kcm9wZG93biAtIExJU0UgU3VtbWFyeSB0ZW1wbGF0ZSBmb3IgRUNCMiBkcm9wZG93biBvciBzb3J0YWJsZWxpc3QgKn0KeyogRUlUSEVSIHNldCB0aGUgdmFyICRvcHRpb25zICYgc2NvcGU9Z2xvYmFsIChpbXBvcnRhbnQhKSAqfQp7JG9wdGlvbnM9W119Cntmb3JlYWNoICRpdGVtcyBhcyAkaXRlbX0KeyRvcHRpb25zWyRpdGVtLT5hbGlhc109JGl0ZW0tPnRpdGxlIHNjb3BlPWdsb2JhbH0Key9mb3JlYWNofQp7KiBPUiB1c2UgdGhlIGZvbGxvd2luZyBmb3JtYXQgdG8gcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIGxpc3QgKn0KeyoKe2ZvcmVhY2ggJGl0ZW1zIGFzICRpdGVtfQp7JGl0ZW0tPnRpdGxlfT17JGl0ZW0tPmFsaWFzfXtpZiAhJGl0ZW1AbGFzdH0sey9pZn0Key9mb3JlYWNofQoqfQo8L3ByZT4Key9saXRlcmFsfQoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5TYW1wbGUgZHJvcGRvd24gd2l0aCBtdWx0aXBsZSBzZWxlY3QgLSB1c2UgJ211bHRpcGxlPTEnIDwvbGVnZW5kPgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWyd2YWx1ZXMnPT4nQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0JywgJ211bHRpcGxlJz0+MSwgJ3NpemUnPT40LCBkZWZhdWx0PT4nb3JhbmdlJ10pfQo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPlNhbXBsZSBkcm9wZG93biB3aXRoIG11bHRpcGxlICYgY29tcGFjdCBzZWxlY3QgLSB1c2UgJ211bHRpcGxlPTEgY29tcGFjdD0xJyA8L2xlZ2VuZD4KeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWyd2YWx1ZXMnPT4nQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0JywgJ211bHRpcGxlJz0+MSwgJ2NvbXBhY3QnPT4xLCAnc2l6ZSc9PjQsIGRlZmF1bHQ9PidhcHBsZSxraXdpZnJ1aXQnXSl9CjwvZmllbGRzZXQ+Cgo8YnI+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/dropdown/input.ecb2fd_dropdown.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2Ryb3Bkb3duLnRwbCAtIHYxLjAgLSAyN0p1bjIyIAoKICAgIE5vdGU6ICRzZWxlY3RlZF92YWx1ZXMgaXMgYW4gYXJyYXkgc3VwcGxpZWQgd2hlbiBzZWxlY3QgaXMgbXVsdGlwbGUKICAgICAgICAgICRvcHRpb25zIGFycmF5IG9mOiAkdGV4dCA9PiAkdmFsdWUKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQp7aWYgJG11bHRpcGxlfQogICAgICAgIDxkaXYgY2xhc3M9ImVjYl9tdWx0aXBsZV9zZWxlY3QgY21zX2Ryb3Bkb3duIHtpZiAkY29tcGFjdH1lY2JfY29tcGFjdHsvaWZ9Ij4KICAgICAgICB7aWYgJGNvbXBhY3R9CiAgICAgICAgICAgIHskbm9uZV9zZWxlY3RlZD0kbW9kLT5MYW5nKCdub25lX3NlbGVjdGVkJyl9CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVjYl9zZWxlY3Rfc3VtbWFyeSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZWNiX3NlbGVjdF90ZXh0IiBkYXRhLWVtcHR5PSJ7JG5vbmVfc2VsZWN0ZWR9Ij57JHNlbGVjdGVkX3RleHR8ZGVmYXVsdDokbm9uZV9zZWxlY3RlZH08L3NwYW4+CiAgICAgICAgICAgICAgICAmbmJzcDs8YSBjbGFzcz0iZWNiX3NlbGVjdF9lZGl0IiBocmVmPSJlZGl0L2hpZGUiPjwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgey9pZn0KICAgICAgICAgICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9InskYmxvY2tfbmFtZX0iIGNsYXNzPSJlY2Jfc2VsZWN0X2lucHV0IiBuYW1lPSJ7JGJsb2NrX25hbWV9IiB2YWx1ZT0ieyRzZWxlY3RlZH0iIC8+CiAgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9ImNtc19kcm9wZG93biIgbmFtZT0ieyRibG9ja19uYW1lfV90bXAiIG11bHRpcGxlIHNpemU9Inskc2l6ZX0iPgogICAgICAgICAgICB7Zm9yZWFjaCAkb3B0aW9ucyBhcyAkdmFsdWUgPT4gJHRleHR9CiAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ7JHZhbHVlfSIge2lmICR2YWx1ZXxpbl9hcnJheTokc2VsZWN0ZWRfdmFsdWVzfXNlbGVjdGVkey9pZn0+eyR0ZXh0fGRlZmF1bHQ6JHZhbHVlfTwvb3B0aW9uPgogICAgICAgICAgICB7L2ZvcmVhY2h9CiAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgIDwvZGl2Pgp7ZWxzZX0KCiAgICAgICAgPHNlbGVjdCBjbGFzcz0iY21zX2Ryb3Bkb3duIiBuYW1lPSJ7JGJsb2NrX25hbWV9Ij4KICAgICAgICB7Zm9yZWFjaCAkb3B0aW9ucyBhcyAkdmFsdWUgPT4gJHRleHR9CiAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InskdmFsdWV9IiB7aWYgJHNlbGVjdGVkPT0kdmFsdWV9c2VsZWN0ZWR7L2lmfT57JHRleHR9PC9vcHRpb24+CiAgICAgICAgey9mb3JlYWNofQogICAgICAgIDwvc2VsZWN0Pgp7L2lmfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/file_selector/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/file_selector/class.ecb2fd_file_selector.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2ZpbGVfc2VsZWN0b3IgZXh0ZW5kcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewoKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpIAoJewkKCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CgoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHNldF9maWVsZF9wYXJhbWV0ZXJzKCkgCiAgICB7CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ2ZpbGV0eXBlcycgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnZXhjbHVkZXByZWZpeCcgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdyZWN1cnNlJyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfQk9PTEVBTl0sCiAgICAgICAgICAgICdzb3J0ZmlsZXMnICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfQk9PTEVBTl0sCiAgICAgICAgICAgICdkaXInICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ3ByZXZpZXcnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9CT09MRUFOXSwKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRjb25maWcgPSBjbXNtcygpLT5HZXRDb25maWcoKTsKICAgICAgICAkYWRkZGlyID0gZ2V0X3NpdGVfcHJlZmVyZW5jZSgnY29udGVudGltYWdlX3BhdGgnKTsKICAgICAgICBpZiAoJHRoaXMtPm9wdGlvbnNbJ2RpciddKSAkYWRkZGlyID0gJHRoaXMtPm9wdGlvbnNbJ2RpciddOwogICAgICAgICR1cGxvYWRzX3VybCA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ107CgogICAgICAgIC8vIEdldCB0aGUgZGlyZWN0b3J5IGNvbnRlbnRzCiAgICAgICAgJGRpciA9IGNtc19qb2luX3BhdGgoICRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCAkYWRkZGlyICk7CiAgICAgICAgJGZpbGV0eXBlcyA9ICR0aGlzLT5vcHRpb25zWydmaWxldHlwZXMnXTsKICAgICAgICBpZiAoJGZpbGV0eXBlcyAhPSAnJykgewogICAgICAgICAgICAkZmlsZXR5cGVzID0gZXhwbG9kZSgnLCcsICRmaWxldHlwZXMpOwogICAgICAgIH0KCiAgICAgICAgJGV4Y2x1ZGVzID0gJHRoaXMtPm9wdGlvbnNbJ2V4Y2x1ZGVwcmVmaXgnXTsKICAgICAgICBpZiAoJGV4Y2x1ZGVzICE9ICcnKSB7CiAgICAgICAgICAgICRleGNsdWRlcyA9IGV4cGxvZGUoJywnLCAkZXhjbHVkZXMpOwogICAgICAgICAgICBmb3IgKCRpID0gMDsgJGkgPCBjb3VudCgkZXhjbHVkZXMpOyAkaSsrKSB7CiAgICAgICAgICAgICAgICAkZXhjbHVkZXNbJGldID0gJGV4Y2x1ZGVzWyRpXSAuICcqJzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAkbWF4ZGVwdGggPSAhZW1wdHkoJHRoaXMtPm9wdGlvbnNbJ3JlY3Vyc2UnXSkgPyAtMSA6IDA7ICAgLy8gZGVmYXVsdAogICAgICAgICRmbCA9IGdldF9yZWN1cnNpdmVfZmlsZV9saXN0KCAkZGlyLCAkZXhjbHVkZXMsICRtYXhkZXB0aCwgJ0ZJTEVTJyApOwoKICAgICAgICAvLyBSZW1vdmUgcHJlZml4CiAgICAgICAgJGZpbGVsaXN0ID0gYXJyYXkoKTsKICAgICAgICBmb3IgKCRpID0gMDsgJGkgPCBjb3VudCgkZmwpOyAkaSsrKSB7CiAgICAgICAgICAgIGlmICggaW5fYXJyYXkoIHBhdGhpbmZvKCRmbFskaV0sIFBBVEhJTkZPX0VYVEVOU0lPTiksICRmaWxldHlwZXMgKSApCiAgICAgICAgICAgICAgICAkZmlsZWxpc3RbXSA9IHN0cl9yZXBsYWNlKCRkaXIsICcnLCAkZmxbJGldKTsKICAgICAgICB9CgogICAgICAgIC8vIFNvcnQKICAgICAgICBpZiAoaXNfYXJyYXkoJGZpbGVsaXN0KSAmJiAkdGhpcy0+b3B0aW9uc1snc29ydGZpbGVzJ10pIHsKICAgICAgICAgICAgc29ydCgkZmlsZWxpc3QpOwogICAgICAgIH0KCiAgICAgICAgLy8gY3JlYXRlIHNlbGVjdCBvcHRpb25zCiAgICAgICAgJG9wdHMgPSBhcnJheSgpOwogICAgICAgICR1cmxfcHJlZml4ID0gJGFkZGRpcjsKICAgICAgICBmb3IgKCRpID0gMDsgJGkgPCBjb3VudCgkZmlsZWxpc3QpOyAkaSsrKSB7CiAgICAgICAgICAgICRvcHRzWyR1cmxfcHJlZml4LiRmaWxlbGlzdFskaV1dID0gJGZpbGVsaXN0WyRpXTsKICAgICAgICB9CiAgICAgICAgJG9wdHMgPSBhcnJheSgnJyA9PiAnJykgKyAkb3B0czsKCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKCiAgICAgICAgJHRwbC0+YXNzaWduKCdvcHRzJywgJG9wdHMgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3ByZXZpZXcnLCAkdGhpcy0+b3B0aW9uc1sncHJldmlldyddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd1cGxvYWRzX3VybCcsICR1cGxvYWRzX3VybCApOwoKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/file_selector/help.ecb2fd_file_selector.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfZmlsZV9zZWxlY3Rvci50cGwgKn0KPHA+VGhlIGZpbGVfc2VsZWN0b3IgZmllbGQgZW5hYmxlcyBhIGZpbGUgdG8gYmUgc2VsZWN0ZWQgZnJvbSBhIHNldCBkaXJlY3RvcnkgYW5kIGNhbiBvcHRpb25hbGx5IHNob3cgYSB0aHVtYm5haWwuPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWydmaWxldHlwZXMnPT4ianBnLGdpZixwbmciLCAnZXhjbHVkZXByZWZpeCc9PiJ0aHVtYl8iLCAncHJldmlldyc9PjEsICdyZWN1cnNlJz0+MV0pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9ZmlsZV9zZWxlY3RvciBibG9jaz0idGVzdDEwIiBmaWxldHlwZXM9ImpwZyxnaWYscG5nIiBleGNsdWRlcHJlZml4PSJ0aHVtYl8iIHJlY3Vyc2U9MSBwcmV2aWV3PTF9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ2ZpbGVfc2VsZWN0b3InPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmZpbGV0eXBlcyAocmVxdWlyZWQpIC0gY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZmlsZSBleHRlbnNpb25zIHRvIGRpc3BsYXksIGUuZy4gJ2pwZyxnaWYscG5nJzwvbGk+CiAgICA8bGk+ZGlyIChvcHRpb25hbCkgLSBzcGVjaWZ5IGEgc3ViIGRpcmVjdG9yeSBvZiAndXBsb2FkcycgdG8gdXNlPC9saT4KICAgIDxsaT5leGNsdWRlcHJlZml4IChvcHRpb25hbCkgLSBleGNsdWRlIGFueSBmaWxlcyB0aGF0IGhhdmUgdGhpcyBwcmVmaXgsIGUuZy4gJ3RodW1iXyc8L2xpPgogICAgPGxpPnJlY3Vyc2UgKG9wdGlvbmFsKSAtIGlmIHNldCB3aWxsIHNob3cgYWxsIGZpbGVzIGluIHN1YiBkaXJlY3RvcmllczwvbGk+CiAgICA8bGk+c29ydGZpbGVzIChvcHRpb25hbCkgLSB3aWxsIHNvcnQgZmlsZXMgYnkgZmlsZW5hbWU8L2xpPgogICAgPGxpPnByZXZpZXcgKG9wdGlvbmFsKSAtIHdpbGwgc2hvdyBhIHRodW1ibmFpbCBvZiB0aGUgaW1hZ2UgLSBvbmx5IGZvciBpbWFnZXM8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4K]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/file_selector/input.ecb2fd_file_selector.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2ZpbGVfc2VsZWN0b3IudHBsIC0gdjEuMCAtIDI1SnVuMjIgCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKip9CntpZiAhZW1wdHkoJGRlc2NyaXB0aW9uKX0KICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0KICAgICAgICA8ZGl2IGNsYXNzPSJlY2JfZmlsZV9zZWxlY3Rvcl9zZWxlY3QiPgogICAgICAgICAgICA8c2VsZWN0IGNsYXNzPSJjbXNfZHJvcGRvd24iIG5hbWU9InskYmxvY2tfbmFtZX0iPgogICAgICAgICAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRvcHRzIHNlbGVjdGVkPSR2YWx1ZX0KICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgPC9kaXY+CntpZiAkcHJldmlld30gICAgICAKICAgICAgICA8aW1nIHN0eWxlPSJtYXgtd2lkdGg6MTMwcHg7IiBjbGFzcz0iZmlsZV9zZWxlY3Rvcl9wcmV2aWV3IiBkYXRhLXVwbG9hZHN1cmw9InskdXBsb2Fkc191cmx9IiB7aWYgaXNzZXQoJHZhbHVlKX1zcmM9InskdXBsb2Fkc191cmx9L3skdmFsdWV9InsvaWZ9IGFsdD0ieyRibG9ja19uYW1lfSI+CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/gallery_picker/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/gallery_picker/class.ecb2fd_gallery_picker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2dhbGxlcnlfcGlja2VyIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICdkaXInICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRkaXIgPSAkdGhpcy0+b3B0aW9uc1snZGlyJ10uJy8nOyAgICAvLyBkZWZhdWx0IGRpciAobmVlZHMgJy8nIGF0IGVuZCkKICAgICAgICAkR2FsbGVyeU1vZHVsZSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnR2FsbGVyeScpOwogICAgICAgIGlmICghaXNfb2JqZWN0KCRHYWxsZXJ5TW9kdWxlKSkgewogICAgICAgICAgICAkdGhpcy0+ZXJyb3IgPSAkdGhpcy0+bW9kLT5MYW5nKCdnYWxsZXJ5X21vZHVsZV9lcnJvcicpOwogICAgICAgICAgICByZXR1cm4gJHRoaXMtPm1vZC0+ZXJyb3JfbXNnKCR0aGlzLT5lcnJvcik7CiAgICAgICAgfQoKICAgICAgICAkZ2FsbGVyaWVzID0gR2FsbGVyeV91dGlsczo6R2V0R2FsbGVyaWVzKCk7CiAgICAgICAgJGdhbGxlcnlBcnJheSA9IGFycmF5KCcnID0+ICR0aGlzLT5tb2QtPkxhbmcoJ25vbmVfc2VsZWN0ZWQnKSApOwoKICAgICAgICBmb3JlYWNoICgkZ2FsbGVyaWVzIGFzICRnYWxsZXJ5KSB7CiAgICAgICAgICAgIGlmICgkZ2FsbGVyeVsnZmlsZW5hbWUnXSE9JycpIHsgICAgLy8gaWdub3JlcyBkZWZhdWx0IGdhbGxlcnkKICAgICAgICAgICAgICAgIGlmICgkZGlyIT0nLycpIHsKICAgICAgICAgICAgICAgIC8vIG9ubHkgc2VsZWN0IHN1Yi1nYWxsZXJpZXMgb2YgJGRpcgogICAgICAgICAgICAgICAgJGlzU3ViRGlyID0gc3RyaXBvcygkZ2FsbGVyeVsnZmlsZXBhdGgnXSwgJGRpcik7CgogICAgICAgICAgICAgICAgaWYgKCRpc1N1YkRpciE9PUZBTFNFICYmICRpc1N1YkRpcj09MCkgewogICAgICAgICAgICAgICAgICAgICRnYWxsZXJ5X2RpciA9ICRnYWxsZXJ5WydmaWxlcGF0aCddLnJ0cmltKCRnYWxsZXJ5WydmaWxlbmFtZSddLCAnLycpOwogICAgICAgICAgICAgICAgICAgICRnYWxsZXJ5QXJyYXlbJGdhbGxlcnlfZGlyXSA9ICRnYWxsZXJ5Wyd0aXRsZSddOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAvLyBzZWxlY3QgYWxsIGdhbGxlcmllcwogICAgICAgICAgICAgICAgJGdhbGxlcnlfZGlyID0gJGdhbGxlcnlbJ2ZpbGVwYXRoJ10ucnRyaW0oJGdhbGxlcnlbJ2ZpbGVuYW1lJ10sICcvJyk7CiAgICAgICAgICAgICAgICAkZ2FsbGVyeUFycmF5WyRnYWxsZXJ5X2Rpcl0gPSAkZ2FsbGVyeVsndGl0bGUnXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd2YWx1ZScsICR0aGlzLT52YWx1ZSApOwogICAgICAgICR0cGwtPmFzc2lnbignZ2FsbGVyeUFycmF5JywgJGdhbGxlcnlBcnJheSApOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/gallery_picker/help.ecb2fd_gallery_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfZ2FsbGVyeV9waWNrZXIudHBsICp9CjxwPlRoZSBnYWxsZXJ5X3BpY2tlciBjcmVhdGVzIGEgZHJvcGRvd24gdG8gY2hvb3NlIGZyb20gYSBzZWxlY3Rpb24gb2YgZ2FsbGVyaWVzIGluIHRoZSBHYWxsZXJ5IG1vZHVsZS48L3A+Cgo8ZmllbGRzZXQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dCgpfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9Z2FsbGVyeV9waWNrZXIgYmxvY2s9cGFnZVRvcEdhbGxlcnkgbGFiZWw9J1BhZ2UgVG9wIEdhbGxlcnknIGRpcj0ncGFnZS10b3AtZ2FsbGVyaWVzJ317L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnZ2FsbGVyeV9waWNrZXInPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmRpciAob3B0aW9uYWwpIC0gb25seSByZXR1cm5zIGdhbGxlcmllcyB0aGF0IGFyZSBzdWItZ2FsbGVyaWVzIG9mIHRoaXMgZ2FsbGVyeSBkaXIsIGRlZmF1bHQgaXMgYWxsIGdhbGxlcmllcywgZXhjbHVkaW5nIGRlZmF1bHQgdG9wIGxldmVsIGdhbGxlcnk8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/gallery_picker/input.ecb2fd_gallery_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2dhbGxlcnlfcGlja2VyLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAge2h0bWxfb3B0aW9ucyBuYW1lPSRibG9ja19uYW1lIG9wdGlvbnM9JGdhbGxlcnlBcnJheSBzZWxlY3RlZD0kdmFsdWV9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/hidden/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/hidden/class.ecb2fd_hidden.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2hpZGRlbiBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzID0gWwogICAgICAgICAgICAndmFsdWUnID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRzbWFydHkgPSBcQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHRwbCA9ICRzbWFydHktPkNyZWF0ZVRlbXBsYXRlKCAnc3RyaW5nOicuJHRoaXMtPmdldF90ZW1wbGF0ZSgpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdibG9ja19uYW1lJywgJHRoaXMtPmJsb2NrX25hbWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3ZhbHVlJywgJHRoaXMtPm9wdGlvbnNbJ3ZhbHVlJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10gKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCiAgICB9CgoKfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/hidden/help.ecb2fd_hidden.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfaGlkZGVuLnRwbCAqfQo8cD5UaGUgaGlkZGVuIGZpZWxkIGNyZWF0ZXMgYSBzaW1wbGUgaGlkZGVuIGlucHV0LCBmb3Igc3RvcmluZyBhIHNpbmdsZSBzdHJpbmcuPC9wPgoKPGZpZWxkc2V0PgogICAgPGxlZ2VuZD5ub3RoaW5nIHRvIHNlZSBoZXJlITwvbGVnZW5kPgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWhpZGRlbiBibG9jaz0idGVzdCIgbGFiZWw9IlRlc3QiIGRlZmF1bHQ9ImZpbGwgaXQifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdoaWRkZW4nPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPmxhYmVsIChvcHRpb25hbCkgLSBUaXA6IElmIHlvdSBhZGQgbGFiZWw9JyZuYnNwOycgdGhlIGxhYmVsIHdpbGwgYmUgaGlkZGVuPC9saT4KICAgIDxsaT52YWx1ZSAob3B0aW9uYWwpIC0gc2V0cyB0aGUgdmFsdWU8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/hidden/input.ecb2fd_hidden.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2hpZGRlbi50cGwgLSB2MS4wIC0gMjVKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQogICAgICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYmxvY2tfbmFtZX0iIHZhbHVlPSJ7JHZhbHVlfSI+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/input_repeater/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/input_repeater/class.ecb2fd_input_repeater.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX2lucHV0X3JlcGVhdGVyIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ3NpemUnICAgICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IDUwLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ21heF9sZW5ndGgnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IDI1NSwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdkZWZhdWx0JyAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sIAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRmaWVsZHMgPSBleHBsb2RlKCd8fCcsICR0aGlzLT52YWx1ZSk7CiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ21vZCcsICR0aGlzLT5tb2QgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3NpemUnLCAkdGhpcy0+b3B0aW9uc1sic2l6ZSJdICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdtYXhfbGVuZ3RoJywgJHRoaXMtPm9wdGlvbnNbIm1heF9sZW5ndGgiXSApOwogICAgICAgICR0cGwtPmFzc2lnbignZmllbGRzJywgJGZpZWxkcyApOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/input_repeater/help.ecb2fd_input_repeater.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfaW5wdXRfcmVwZWF0ZXIudHBsICp9CjxwPlRoZSBpbnB1dF9yZXBlYXRlciBmaWVsZCBjcmVhdGVzIG9uZSBvciBtb3JlIHRleHQgaW5wdXRzIHRoYXQgY2FuIGJlIGFkZGVkIG9yIHJlbW92ZWQgYnkgdGhlIGVkaXRvci48L3A+CjxwPlRoZSBjb250ZW50IGJsb2NrIG91dHB1dCBpcyBhIHN0cmluZyB3aXRoIGVhY2ggaW5wdXQgZmllbGQncyBjb250ZW50cyBkZWxpbWl0ZXIgYnkgJ3x8Jy4gVG8gbWFrZSB0aGUgb3V0cHV0IGEgbW9yZSB1c2VmdWwgYXJyYXkgdXNlICdleHBsb2RlJywgZS5nLiB7bGl0ZXJhbH17Inx8InxleHBsb2RlOiRjb250ZW50X2Jsb2NrX25hbWV9ey9saXRlcmFsfTwvcD4KCjxmaWVsZHNldD4KICAgIHskZmllbGRkZWYtPmdldF9kZW1vX2lucHV0KFsnZGVmYXVsdF92YWx1ZSc9PidBcHBsZXN8fEtpd2lmcnVpdCddKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9eyRpbnB1dF9yZXBlYXRlcl90ZXN0PSJ8fCJ8ZXhwbG9kZToie2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0nRUNCMicgZmllbGQ9J2lucHV0X3JlcGVhdGVyJyBsYWJlbD0nVGVzdCAyMjogaW5wdXRfcmVwZWF0ZXInIGJsb2NrPSd0ZXN0MjInIHNpemU9NTAgbWF4X2xlbmd0aD0yNTUgZGVzY3JpcHRpb249J1ByZXNzICgrKSBhbmQgKC0pIHRvIGFkZCBhbmQgcmVtb3ZlIGFkZGl0aW9uYWwgaW5wdXQgZmllbGRzJ30iIHNjb3BlPWdsb2JhbH17L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnaW5wdXRfcmVwZWF0ZXInPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnNpemUgKG9wdGlvbmFsKSAtIHNldHMgdGhlIHdpZHRoIG9mIHRoZSBodG1sIGlucHV0LiBNYXkgYmUgb3ZlcnJpZGRlbiBieSBjc3MgLSBkZWZhdWx0IDMwPC9saT4KICAgIDxsaT5tYXhfbGVuZ3RoIChvcHRpb25hbCkgLSBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIC0gZGVmYXVsdCAyNTUgKG9wdGlvbmFsKTwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/input_repeater/input.ecb2fd_input_repeater.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX2lucHV0X3JlcGVhdGVyLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0ieyRibG9ja19uYW1lfSIgbmFtZT0ieyRibG9ja19uYW1lfSIgdmFsdWU9InskdmFsdWV9IiBzaXplPSIxMDAiLz4KCiAgICA8ZGl2IGlkPSJ7JGJsb2NrX25hbWV9LXJlcGVhdGVyIiBjbGFzcz0iZWNiX3JlcGVhdGVyIiBkYXRhLXBhcmVudD0iI3skYmxvY2tfbmFtZX0iPgp7Zm9yZWFjaCAkZmllbGRzIGFzICRmaWVsZH0KICAgICAgICA8ZGl2IGNsYXNzPSJyZXBlYXRlci13cmFwcGVyIj4KICAgICAgICAgICAgPGlucHV0IGlkPSJyZXBlYXRlci1maWVsZC17JGJsb2NrX25hbWV9LXskZmllbGRAaXRlcmF0aW9ufSIgY2xhc3M9InJlcGVhdGVyLWZpZWxkIiBzaXplPSJ7JHNpemV9IiBtYXhsZW5ndGg9InskbWF4X2xlbmd0aH0iIHZhbHVlPSJ7JGZpZWxkfSIgZGF0YS1yZXBlYXRlcj0iI3skYmxvY2tfbmFtZX0tcmVwZWF0ZXIiLz4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZWNiMi1yZXBlYXRlci1hZGQgZWNiMi1idXR0b24taW5saW5lIHVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LWljb24tcHJpbWFyeSIgZGF0YS1yZXBlYXRlcj0iI3skYmxvY2tfbmFtZX0tcmVwZWF0ZXIiIHRpdGxlPSJ7JG1vZC0+TGFuZygnYWRkX2xpbmUnKX0iIHJvbGU9ImJ1dHRvbiIgYXJpYS1kaXNhYmxlZD0iZmFsc2UiPis8L2J1dHRvbj4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZWNiMi1yZXBlYXRlci1yZW1vdmUgZWNiMi1idXR0b24taW5saW5lIHVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItYWxsIHVpLWJ1dHRvbi10ZXh0LWljb24tcHJpbWFyeSIgZGF0YS1yZXBlYXRlcj0iI3skYmxvY2tfbmFtZX0tcmVwZWF0ZXIiIHRpdGxlPSJ7JG1vZC0+TGFuZygncmVtb3ZlX2xpbmUnKX0iIHJvbGU9ImJ1dHRvbiIgYXJpYS1kaXNhYmxlZD0iZmFsc2UiPiZtaW51czs8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4Key9mb3JlYWNofQogICAgPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/module_picker/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/module_picker/class.ecb2fd_module_picker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX21vZHVsZV9waWNrZXIgZXh0ZW5kcyBlY2IyX0ZpZWxkRGVmQmFzZSAKewoKCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpIAoJewkKCQlwYXJlbnQ6Ol9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZyk7CgoJfQoKCgogICAgLyoqCiAgICAgKiAgc2V0cyB0aGUgYWxsb3dlZCBwYXJhbWV0ZXJzIGZvciB0aGlzIGZpZWxkIHR5cGUKICAgICAqCiAgICAgKiAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyAtIGFycmF5IG9mIHBhcmFtZXRlcl9uYW1lcyA9PiBbIGRlZmF1bHRfdmFsdWUsIGZpbHRlcl90eXBlIF0KICAgICAqICAgICAgRklMVEVSX1NBTklUSVpFX1NUUklORywgRklMVEVSX1ZBTElEQVRFX0lOVCwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4sIEZJTFRFUl9TQU5JVElaRV9FTUFJTCAKICAgICAqICAgICAgc2VlOiBodHRwczovL3d3dy5waHAubmV0L21hbnVhbC9lbi9maWx0ZXIuZmlsdGVycy5waHAKICAgICAqICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zIC0gb3B0aW9uYWxseSBhbGxvdyBhbnkgb3RoZXIgcGFyYW1ldGVycyB0byBiZSBpbmNsdWRlZCwgZS5nLiBtb2R1bGUgY2FsbHMKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHNldF9maWVsZF9wYXJhbWV0ZXJzKCkgCiAgICB7CiAgICAgICAgJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWwogICAgICAgICAgICAnZGVmYXVsdF92YWx1ZScgPT4gJ2RlZmF1bHQnCiAgICAgICAgXTsKICAgICAgICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzID0gWwogICAgICAgICAgICAndGV4dCcgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdsaW5rJyAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2RlZmF1bHQnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRtb2RvcHMgPSBjbXNtcygpLT5HZXRNb2R1bGVPcGVyYXRpb25zKCk7CiAgICAgICAgJG1vZHVsZXMgPSAkbW9kb3BzLT5HZXRJbnN0YWxsZWRNb2R1bGVzKCk7CiAgICAgICAgJG1vZHVsZXNhcnJheSA9IFsnJyA9PiAkdGhpcy0+bW9kLT5MYW5nKCdub25lX3NlbGVjdGVkJykgXTsKICAgICAgICBmb3JlYWNoICgkbW9kdWxlcyBhcyAkbW9kdWxlKSB7CiAgICAgICAgICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJG1vZHVsZSk7CiAgICAgICAgICAgIGlmIChpc19vYmplY3QoJG1vZCkpIHsKICAgICAgICAgICAgICAgICRuYW1lID0gJG1vZC0+R2V0RnJpZW5kbHlOYW1lKCk7CiAgICAgICAgICAgICAgICAkbW9kdWxlc2FycmF5WyRtb2R1bGVdID0gKCRuYW1lKSA/ICRuYW1lIDogJG1vZHVsZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoY2xhc3NfZXhpc3RzKCdDb2xsYXRvcicpKSB7CiAgICAgICAgICAgICRjb2xsID0gbmV3IENvbGxhdG9yKCdlbl9VUycpOyAvLyBUT0RPIGRlZmF1bHQgbG9jYWxlIGFsd2F5cyBvaz8KICAgICAgICAgICAgdWtzb3J0KCRtb2R1bGVzYXJyYXksIGZ1bmN0aW9uKCRhLCAkYikgdXNlICgkY29sbCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGNvbGxhdG9yX2NvbXBhcmUoJGNvbGwsICRhLCAkYik7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIAogICAgICAgICRzbWFydHkgPSBcQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHRwbCA9ICRzbWFydHktPkNyZWF0ZVRlbXBsYXRlKCAnc3RyaW5nOicuJHRoaXMtPmdldF90ZW1wbGF0ZSgpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdibG9ja19uYW1lJywgJHRoaXMtPmJsb2NrX25hbWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3ZhbHVlJywgJHRoaXMtPnZhbHVlICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdtb2R1bGVzYXJyYXknLCAkbW9kdWxlc2FycmF5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/module_picker/help.ecb2fd_module_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfbW9kdWxlX3BpY2tlci50cGwgKn0KPHA+VGhlIG1vZHVsZV9waWNrZXIgZmllbGQgY3JlYXRlcyBhIGRyb3Bkb3duIG9mIGFsbCBpbnN0YWxsZWQgbW9kdWxlcyB0byBzZWxlY3QgZnJvbS48L3A+Cgo8ZmllbGRzZXQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dCgpfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9J21vZHVsZScgYmxvY2s9dGVzdDEyIGxhYmVsPScxMjogbW9kdWxlX3BpY2tlcicgZGVmYXVsdD1Gb3JtQnVpbGRlcn17L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnbW9kdWxlX3BpY2tlcicsIGFsaWFzOic8Yj5tb2R1bGU8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5kZWZhdWx0IChvcHRpb25hbCkgLSAoYWxpYXM6ICc8Yj5kZWZhdWx0X3ZhbHVlPC9iPicpIC0gaW5pdGlhbCB2YWx1ZSB3aGVuIGNyZWF0aW5nIGEgbmV3IHBhZ2U8L2xpPgogICAgPGxpPmRlc2NyaXB0aW9uIChvcHRpb25hbCkgLSBhZGRzIGFkZGl0aW9uYWwgdGV4dCBleHBsYW5hdGlvbiBmb3IgZWRpdG9yPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/module_picker/input.ecb2fd_module_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX21vZHVsZV9waWNrZXIudHBsIC0gdjEuMCAtIDI1SnVuMjIgCgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKip9CntpZiAhZW1wdHkoJGRlc2NyaXB0aW9uKX0KICAgICAgICB7JGRlc2NyaXB0aW9ufTxicj4Key9pZn0KICAgICAgICB7aHRtbF9vcHRpb25zIG5hbWU9JGJsb2NrX25hbWUgb3B0aW9ucz0kbW9kdWxlc2FycmF5IHNlbGVjdGVkPSR2YWx1ZX0K]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/page_picker/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/page_picker/class.ecb2fd_page_picker.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX3BhZ2VfcGlja2VyIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHQnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewoKICAgICAgICAkY29udGVudE9wcyA9IFxDb250ZW50T3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCk7CiAgICAgICAgLy8gcmV0dXJuICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddLiRjb250ZW50T3BzLT5DcmVhdGVIaWVyYXJjaHlEcm9wZG93bignJywgJHRoaXMtPnZhbHVlLCAkdGhpcy0+YmxvY2tfbmFtZSwgMSwgMSk7CgogICAgCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2NvbnRlbnRPcHMnLCAkY29udGVudE9wcyApOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/page_picker/help.ecb2fd_page_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfcGFnZV9waWNrZXIudHBsICp9CjxwPlRoZSBwYWdlX3BpY2tlciBmaWVsZCBjcmVhdGVzIGEgaGllcmFyY2h5IG9mIGRyb3Bkb3ducyB0byBzZWxlY3QgYSBjb250ZW50IHBhZ2UuPC9wPgoKPGZpZWxkc2V0PgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXBhZ2VfcGlja2VyIGxhYmVsPSJTZWxlY3QgYSBwYWdlIiBibG9jaz0idGVzdDEwIn17L2xpdGVyYWx9PC9wcmU+CjxwPk5vdGU6IHNldHMgdGhlIGNvbnRlbnQgcGFnZSBpZC48L3A+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAncGFnZV9waWNrZXInLCBhbGlhczogJzxiPnBhZ2VzPC9iPic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/page_picker/input.ecb2fd_page_picker.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX3BhZ2VfcGlja2VyLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAgeyRjb250ZW50T3BzLT5DcmVhdGVIaWVyYXJjaHlEcm9wZG93bignJywgJHZhbHVlLCAkYmxvY2tfbmFtZSwgMSwgMSl9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/radio/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/radio/class.ecb2fd_radio.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX3JhZGlvIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ3ZhbHVlcycgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLAogICAgICAgICAgICAnaW5saW5lJyAgICAgICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0JPT0xFQU5dLAogICAgICAgICAgICAnZmxpcF92YWx1ZXMnICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0JPT0xFQU5dLAogICAgICAgICAgICAnZGVmYXVsdCcgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sIAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgICAgIC8vICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsgJ2FsaWFzJyA9PiAncGFyYW1ldGVyJyBdOwogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X2FycmF5X2Zyb21fY3NsKCAkdGhpcy0+b3B0aW9uc1sndmFsdWVzJ10gKTsKICAgICAgICBpZiAoICR0aGlzLT5vcHRpb25zWydmbGlwX3ZhbHVlcyddICYmICFlbXB0eSgkb3B0aW9ucykgKSB7IAogICAgICAgICAgICAkb3B0aW9ucyA9IGFycmF5X2ZsaXAoJG9wdGlvbnMpOwogICAgICAgIH0KICAgICAgICAkc2VwYXJhdG9yID0gKCR0aGlzLT5vcHRpb25zWydpbmxpbmUnXSkgPyAnJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JyA6ICc8YnI+JzsKCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ29wdGlvbnMnLCAkb3B0aW9ucyApOwogICAgICAgICR0cGwtPmFzc2lnbignc2VwYXJhdG9yJywgJHNlcGFyYXRvciApOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/radio/help.ecb2fd_radio.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfcmFkaW8udHBsICp9CjxwPlRoZSByYWRpbyBmaWVsZCBjcmVhdGVzIGEgc2ltcGxlIHRleHQgaW5wdXQsIGZvciBzdG9yaW5nIGEgc2luZ2xlIHN0cmluZy48L3A+Cgo8ZmllbGRzZXQ+CiAgICB7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ3ZhbHVlcyc9PiJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEtpd2lmcnVpdD1raXdpZnJ1aXQiLCAnZGVmYXVsdCc9PiJvcmFuZ2UiXSl9CjwvZmllbGRzZXQ+Cgo8cHJlPntsaXRlcmFsfXtjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1yYWRpbyBibG9jaz0idGVzdDE3IiBsYWJlbD0iRnJ1aXQiIHZhbHVlcz0iQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0IiBkZWZhdWx0PSJvcmFuZ2UifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdyYWRpbyc8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+dmFsdWVzIChyZXF1aXJlZCkgLSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLiBFeGFtcGxlOiAnQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0JzwvbGk+CiAgICA8bGk+ZmxpcF92YWx1ZXMgKG9wdGlvbmFsKSAtIHN3YXBzIHRoZSBkcm9wZG93bnMgdmFsdWVzIDwtPiB0ZXh0PC9saT4KICAgIDxsaT5pbmxpbmUgKG9wdGlvbmFsKSAtIGlmIHNldCBkaXNwbGF5cyBhZG1pbiByYWRpbyBidXR0b25zIGlubGluZTwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+Cgo8ZmllbGRzZXQ+CiAgICA8bGVnZW5kPnJhZGlvIHdpdGggaW5saW5lIGJ1dHRvbnMgLSB1c2UgJ2lubGluZT0xJzwvbGVnZW5kPgogICAgeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWyd2YWx1ZXMnPT4nQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0JywgJ2lubGluZSc9PjEsICdkZWZhdWx0Jz0+J29yYW5nZSddKX0KPC9maWVsZHNldD4=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/radio/input.ecb2fd_radio.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX3JhZGlvLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CiAgICAgICAge2h0bWxfcmFkaW9zIG5hbWU9JGJsb2NrX25hbWUgb3B0aW9ucz0kb3B0aW9ucyBzZXBhcmF0b3I9JHNlcGFyYXRvciBzZWxlY3RlZD0kdmFsdWV9IA==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/sortablelist/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/sortablelist/class.ecb2fd_sortablelist.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX3NvcnRhYmxlbGlzdCBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IFRSVUUgLSBuZWVkZWQgZm9yIG1vZHVsZSBjYWxsCiAgICAgICAgJHRoaXMtPnBhcmFtZXRlcl9hbGlhc2VzID0gWwogICAgICAgICAgICAnZGVmYXVsdF92YWx1ZScgPT4gJ2RlZmF1bHQnCiAgICAgICAgXTsKICAgICAgICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzID0gWwogICAgICAgICAgICAndmFsdWVzJyAgICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2RlZmF1bHQnICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdhbGxvd2R1cGxpY2F0ZXMnICAgPT4gWydkZWZhdWx0JyA9PiBGQUxTRSwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdtYXhfc2VsZWN0ZWQnICAgICAgPT4gWydkZWZhdWx0JyA9PiAtMSwgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0lOVF0sCiAgICAgICAgICAgICdtYXhfbnVtYmVyJyAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0lOVF0sIAogICAgICAgICAgICAncmVxdWlyZWRfbnVtYmVyJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9JTlRdLCAKICAgICAgICAgICAgJ2xhYmVsX2xlZnQnICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2xhYmVsX3JpZ2h0JyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2ZsaXBfdmFsdWVzJyAgICAgICA9PiBbJ2RlZmF1bHQnID0+IEZBTFNFLCAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfQk9PTEVBTl0sCiAgICAgICAgICAgICdtb2QnICAgICAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICd1ZHQnICAgICAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICd0ZW1wbGF0ZScgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdjdXN0b21nc19maWVsZCcgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICdkZXNjcmlwdGlvbicgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwoKICAgIH0KCgogICAgLyoqCiAgICAgKiAgQHJldHVybiBzdHJpbmcgY29tcGxldGUgY29udGVudCBibG9jayAKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jb250ZW50X2Jsb2NrX2lucHV0KCkgCiAgICB7CiAgICAgICAgLy8gZ2V0IHRoZSBkcm9wZG93biB2YWx1ZXMvb3B0aW9ucwogICAgICAgIGlmICggJHRoaXMtPm9wdGlvbnNbJ21vZCddICkgeyAgCiAgICAgICAgICAgIC8vIGNhbGwgbW9kdWxlIHRvIGdldCB2YWx1ZXMgKGNvbW1hIHNlcGFyYXRlZCBsaXN0KQogICAgICAgICAgICAkZXhjbHVkZV9vcHRpb25zID0gWydzaXplJywnbXVsdGlwbGUnLCd2YWx1ZXMnLCdkZWZhdWx0X3ZhbHVlJywnZmlyc3RfdmFsdWUnLCdkZXNjcmlwdGlvbicsCiAgICAgICAgICAgICAgICAnY29tcGFjdCcsJ2ZpZWxkJywnbW9kJywnZmxpcF92YWx1ZXMnLCd0ZW1wbGF0ZScsJ3VkdCcsJ2diYycsJ2N1c3RvbWdzX2ZpZWxkJ107CgogICAgICAgICAgICAkZXhjbHVkZV9vcHRpb25zID0gWyd2YWx1ZXMnLCd1ZHQnLCdkZWZhdWx0X3ZhbHVlJywnZmlyc3RfdmFsdWUnLCdkZXNjcmlwdGlvbicsJ2xhYmVsX2xlZnQnLCdsYWJlbF9yaWdodCcsJ21heF9udW1iZXInLCdyZXF1aXJlZF9udW1iZXInLCdtb2QnLCdmbGlwX3ZhbHVlcycsJ2NvbXBhY3QnLCdmaWVsZCcsJ2FsbG93ZHVwbGljYXRlcycsJ21heF9zZWxlY3RlZCddOwogICAgICAgICAgICAKICAgICAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X3ZhbHVlc19mcm9tX21vZHVsZSgkdGhpcy0+b3B0aW9uc1snbW9kJ10sIFtdLCAkZXhjbHVkZV9vcHRpb25zKTsgICAgICAgICAgICAKCgogICAgICAgIH0gZWxzZWlmICggJHRoaXMtPm9wdGlvbnNbJ3VkdCddICkgeyAgCiAgICAgICAgICAgIC8vIHJ1biBVRFQgdG8gZ2V0IHZhbHVlcyAoYXJyYXkgb3IgY29tbWEgc2VwYXJhdGVkIGxpc3QpCiAgICAgICAgICAgICRvcHRpb25zID0gJHRoaXMtPmdldF92YWx1ZXNfZnJvbV91ZHQoICR0aGlzLT5vcHRpb25zWyd1ZHQnXSApOwogICAgICAgICAgICBpZiAoJHRoaXMtPmVycm9yKSByZXR1cm4gJHRoaXMtPm1vZC0+ZXJyb3JfbXNnKCR0aGlzLT5lcnJvcik7CiAgICAgICAgICAgIGlmICggJG9wdGlvbnMgKSAkb3B0aW9ucyA9IGFycmF5X2ZsaXAoJG9wdGlvbnMpOwoKICAgICAgICB9IGVsc2VpZiAoICR0aGlzLT5vcHRpb25zWyd0ZW1wbGF0ZSddICkgeyAgCiAgICAgICAgICAgIC8vIHNtYXJ0eSB0ZW1wbGF0ZSB0byBnZXQgdmFsdWVzIChhcnJheSBvciBjb21tYSBzZXBhcmF0ZWQgbGlzdCkKICAgICAgICAgICAgJG9wdGlvbnMgPSAkdGhpcy0+Z2V0X3ZhbHVlc19mcm9tX3RlbXBsYXRlKCAkdGhpcy0+b3B0aW9uc1sndGVtcGxhdGUnXSApOwogICAgICAgICAgICBpZiAoJHRoaXMtPmVycm9yKSByZXR1cm4gJHRoaXMtPm1vZC0+ZXJyb3JfbXNnKCR0aGlzLT5lcnJvcik7CgogICAgICAgIH0gZWxzZWlmICggJHRoaXMtPm9wdGlvbnNbJ2N1c3RvbWdzX2ZpZWxkJ10gKSB7ICAKICAgICAgICAgICAgLy8gQ3VzdG9tR1MgZmllbGQgdG8gZ2V0IHZhbHVlcyBmcm9tIChuZXdsaW5lIG9yIGNvbW1hIHNlcGFyYXRlZCBsaXN0KQogICAgICAgICAgICAkb3B0aW9ucyA9ICR0aGlzLT5nZXRfdmFsdWVzX2Zyb21fY3VzdG9tZ3MoICR0aGlzLT5vcHRpb25zWydjdXN0b21nc19maWVsZCddICk7CiAgICAgICAgICAgIGlmICgkdGhpcy0+ZXJyb3IpIHJldHVybiAkdGhpcy0+bW9kLT5lcnJvcl9tc2coJHRoaXMtPmVycm9yKTsKCiAgICAgICAgfSBlbHNlIHsgCiAgICAgICAgICAgIC8vIHVzZSBwcm92aWRlZCAndmFsdWVzJyAoY29tbWEgc2VwYXJhdGVkIGxpc3QpCiAgICAgICAgICAgICRvcHRpb25zID0gJHRoaXMtPmdldF9hcnJheV9mcm9tX2NzbCggJHRoaXMtPm9wdGlvbnNbJ3ZhbHVlcyddICk7CiAgICAgICAgICAgIGlmICggJG9wdGlvbnMgKSAkb3B0aW9ucyA9IGFycmF5X2ZsaXAoJG9wdGlvbnMpOwogICAgICAgIAogICAgICAgIH0KCiAgICAgICAgLy8gYXBwbHkgc29tZSBvdGhlciBwYXJhbWV0ZXJzCiAgICAgICAgaWYgKCAkdGhpcy0+b3B0aW9uc1snZmxpcF92YWx1ZXMnXSAmJiAhZW1wdHkoJG9wdGlvbnMpICkgeyAKICAgICAgICAgICAgJG9wdGlvbnMgPSBhcnJheV9mbGlwKCRvcHRpb25zKTsKICAgICAgICB9CiAgICAgICAgJHNlbGVjdGVkTGlzdCA9IGV4cGxvZGUoJywnLCAkdGhpcy0+dmFsdWUpOwogICAgICAgICRhdmFpbGFibGUgPSAkb3B0aW9uczsKICAgICAgICAkc2VsZWN0ZWQgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2ggKCRzZWxlY3RlZExpc3QgYXMgJGl0ZW0pIHsKICAgICAgICAgICAgaWYgKCAhZW1wdHkoJGF2YWlsYWJsZSkgJiYgYXJyYXlfa2V5X2V4aXN0cygkaXRlbSwgJGF2YWlsYWJsZSkgKSB7CiAgICAgICAgICAgICAgICAkc2VsZWN0ZWRbJGl0ZW1dID0gJGF2YWlsYWJsZVskaXRlbV07CiAgICAgICAgICAgICAgICB1bnNldCgkYXZhaWxhYmxlWyRpdGVtXSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKCR0aGlzLT5vcHRpb25zWyJtYXhfbnVtYmVyIl0pIC8vIG1heF9udW1iZXIgdGFrZXMgcHJlY2lkZW5jZSBpZiBib3RoIHNldAogICAgICAgICAgICAkdGhpcy0+b3B0aW9uc1sicmVxdWlyZWRfbnVtYmVyIl0gPSAiIjsKCiAgICAgICAgCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oICdtb2QnLCAkdGhpcy0+bW9kICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCAnYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCAnZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwoKICAgICAgICAkdHBsLT5hc3NpZ24oICdzZWxlY3RlZCcsICR0aGlzLT52YWx1ZSApOwoKICAgICR0cGwtPmFzc2lnbignc2VsZWN0YXJlYV9wcmVmaXgnLCR0aGlzLT5ibG9ja19uYW1lKTsKICAgICR0cGwtPmFzc2lnbignc2VsZWN0ZWRfc3RyJywkdGhpcy0+dmFsdWUpOwogICAgJHRwbC0+YXNzaWduKCdzZWxlY3RlZCcsJHNlbGVjdGVkKTsKICAgICR0cGwtPmFzc2lnbignYXZhaWxhYmxlJywgJGF2YWlsYWJsZSk7CiAgICAkdHBsLT5hc3NpZ24oJ2Rlc2NyaXB0aW9uJywgJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10pOwogICAgJHRwbC0+YXNzaWduKCdsYWJlbExlZnQnLCAkdGhpcy0+b3B0aW9uc1sibGFiZWxfbGVmdCJdKTsKICAgICR0cGwtPmFzc2lnbignbGFiZWxSaWdodCcsICR0aGlzLT5vcHRpb25zWyJsYWJlbF9yaWdodCJdKTsKICAgICR0cGwtPmFzc2lnbignbWF4TnVtYmVyJywgJHRoaXMtPm9wdGlvbnNbIm1heF9udW1iZXIiXSk7CiAgICAkdHBsLT5hc3NpZ24oJ3JlcXVpcmVkTnVtYmVyJywgJHRoaXMtPm9wdGlvbnNbInJlcXVpcmVkX251bWJlciJdKTsKCiAgICAgICAgJHRwbC0+YXNzaWduKCdvcHRpb25zJywgJG9wdGlvbnMgKTsKICAgICAgICByZXR1cm4gJHRwbC0+ZmV0Y2goKTsKICAgCgoKICAgICAgICAvLyAkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdFQ0IyJyk7CiAgICAgICAgLy8gJG9wdGlvbnMgPSBhcnJheSgpOwogICAgICAgIC8vICR0bXAgPSBhcnJheSgpOwoKICAgICAgICAvLyBpZiAoICR0aGlzLT5vcHRpb25zWydtb2QnXSApIHsKICAgICAgICAvLyAgICAgLy8gY2FsbCBtb2R1bGUgdG8gZ2V0IHZhbHVlcwogICAgICAgIC8vICAgICAkZXhjbHVkZV9vcHRpb25zID0gWyd2YWx1ZXMnLCd1ZHQnLCdkZWZhdWx0X3ZhbHVlJywnZmlyc3RfdmFsdWUnLCdkZXNjcmlwdGlvbicsJ2xhYmVsX2xlZnQnLCdsYWJlbF9yaWdodCcsJ21heF9udW1iZXInLCdyZXF1aXJlZF9udW1iZXInLCdtb2QnLCdmbGlwX3ZhbHVlcycsJ2NvbXBhY3QnLCdmaWVsZCcsJ2FsbG93ZHVwbGljYXRlcycsJ21heF9zZWxlY3RlZCddOwogICAgICAgIC8vICAgICAkcGFyYW1zID0gW107CiAgICAgICAgLy8gICAgIGZvcmVhY2ggKCR0aGlzLT5vcHRpb25zIGFzICRrZXkgPT4gJHZhbHVlKSB7CiAgICAgICAgLy8gICAgICAgICBpZiAoICFpbl9hcnJheSgka2V5LCAkZXhjbHVkZV9vcHRpb25zKSApICRwYXJhbXNbJGtleV0gPSAkdmFsdWU7CiAgICAgICAgLy8gICAgIH0KICAgICAgICAvLyAgICAgJG1vZHVsZSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSggJHRoaXMtPm9wdGlvbnNbJ21vZCddICk7CiAgICAgICAgLy8gICAgIGlmICggJG1vZHVsZSApIHsgCiAgICAgICAgLy8gICAgICAgICAkdG1wX2FjdGlvbiA9IGlzc2V0KCR0aGlzLT5vcHRpb25zWydhY3Rpb24nXSkgPyAkdGhpcy0+b3B0aW9uc1snYWN0aW9uJ10gOiAnJzsKICAgICAgICAvLyAgICAgICAgICRjbXNfbW9kdWxlX2NhbGwgPSAie2Ntc19tb2R1bGUgbW9kdWxlPSIuJHRoaXMtPm9wdGlvbnNbJ21vZCddOwogICAgICAgIC8vICAgICAgICAgZm9yZWFjaCAoJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSkgewogICAgICAgIC8vICAgICAgICAgICAgICRjbXNfbW9kdWxlX2NhbGwgLj0gIiAka2V5PSR2YWx1ZSI7CiAgICAgICAgLy8gICAgICAgICB9OwogICAgICAgIC8vICAgICAgICAgJGNtc19tb2R1bGVfY2FsbCAuPSAifSI7CiAgICAgICAgLy8gICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgIC8vICAgICAgICAgJHRoaXMtPm9wdGlvbnNbInZhbHVlcyJdID0gc3RyaXBfdGFncygkc21hcnR5LT5mZXRjaCgnc3RyaW5nOicuJGNtc19tb2R1bGVfY2FsbCkpOwogICAgICAgIC8vICAgICB9CiAgICAgICAgLy8gfQoKCgoKICAgICAgICAvLyBpZiAoICR0aGlzLT5vcHRpb25zWyd1ZHQnXSApIHsKICAgICAgICAvLyAgICAgJG9wdGlvbnMgPSBVc2VyVGFnT3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCktPkNhbGxVc2VyVGFnKCR0aGlzLT5vcHRpb25zWyd1ZHQnXSwgJHRtcCk7CiAgICAgICAgLy8gfQogICAgICAgIC8vIC8vIGNyZWF0ZSAkb3B0aW9uc2FycmF5IG9mIGtleSA9PiB0ZXh0IGZyb20gY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiAna2V5PXRleHQsa2V5Mj10ZXh0MicKICAgICAgICAvLyAkb3B0aW9uc2FycmF5ID0gZXhwbG9kZSgnLCcsICR0aGlzLT5vcHRpb25zWyJ2YWx1ZXMiXSk7CiAgICAgICAgLy8gaWYgKGVtcHR5KCRvcHRpb25zYXJyYXkpKSByZXR1cm47CiAgICAgICAgLy8gZm9yZWFjaCAoJG9wdGlvbnNhcnJheSBhcyAkb3B0aW9uKSB7CiAgICAgICAgLy8gICAgIGlmICgkb3B0aW9uIT0nJykgewogICAgICAgIC8vICAgICAgICAgJGtleV92YWwgPSBleHBsb2RlKCc9JywgJG9wdGlvbik7CiAgICAgICAgLy8gICAgICAgICAkb3B0aW9uc1ska2V5X3ZhbFswXV0gPSAka2V5X3ZhbFsxXTsKICAgICAgICAvLyAgICAgfQogICAgICAgIC8vIH0KICAgICAgICAvLyBpZiAoICR0aGlzLT5vcHRpb25zWydtb2QnXSApIHsgIC8vIGZvcm1hdCByZXZlcnNlZCBpbiBtb2R1bGUgb3V0cHV0IGZvciBzb3J0YWJsZWxpc3QKICAgICAgICAvLyAgICAgJG9wdGlvbnMgPSBhcnJheV9mbGlwKCRvcHRpb25zKTsKICAgICAgICAvLyB9CiAgICAgICAgLy8gaWYgKCAkdGhpcy0+b3B0aW9uc1snZmxpcF92YWx1ZXMnXSApIHsgCiAgICAgICAgLy8gICAgICRvcHRpb25zID0gYXJyYXlfZmxpcCgkb3B0aW9ucyk7CiAgICAgICAgLy8gfQogICAgICAgIC8vIGlmIChlbXB0eSgkdGhpcy0+b3B0aW9uc1snZmlyc3RfdmFsdWUnXSkgPT0gZmFsc2UpCiAgICAgICAgLy8gICAgICRvcHRpb25zID0gYXJyYXkoJHRoaXMtPm9wdGlvbnNbJ2ZpcnN0X3ZhbHVlJ10gPT4gJycpICsgJG9wdGlvbnM7CgoKICAgICAgICAvLyAkc2VsZWN0ZWRMaXN0ID0gZXhwbG9kZSgnLCcsICR0aGlzLT52YWx1ZSk7CiAgICAgICAgLy8gJGF2YWlsYWJsZSA9ICRvcHRpb25zOwogICAgICAgIC8vICRzZWxlY3RlZCA9IGFycmF5KCk7CiAgICAgICAgLy8gZm9yZWFjaCAoJHNlbGVjdGVkTGlzdCBhcyAkaXRlbSkgewogICAgICAgIC8vICAgICBpZiAoIGFycmF5X2tleV9leGlzdHMoJGl0ZW0sICRhdmFpbGFibGUpICkgewogICAgICAgIC8vICAgICAgICAgJHNlbGVjdGVkWyRpdGVtXSA9ICRhdmFpbGFibGVbJGl0ZW1dOwogICAgICAgIC8vICAgICAgICAgdW5zZXQoJGF2YWlsYWJsZVskaXRlbV0pOwogICAgICAgIC8vICAgICB9CiAgICAgICAgLy8gfQogICAgICAgIC8vIGlmICgkdGhpcy0+b3B0aW9uc1sibWF4X251bWJlciJdKSAvLyBtYXhfbnVtYmVyIHRha2VzIHByZWNpZGVuY2UgaWYgYm90aCBzZXQKICAgICAgICAvLyAgICAgJHRoaXMtPm9wdGlvbnNbInJlcXVpcmVkX251bWJlciJdID0gIiI7CiAgICAgICAgLy8gJHNtYXJ0eSA9IFNtYXJ0eV9DTVM6OmdldF9pbnN0YW5jZSgpOwogICAgICAgIC8vICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSgkbW9kLT5HZXRUZW1wbGF0ZVJlc291cmNlKCdzb3J0YWJsZWxpc3RfdGVtcGxhdGUudHBsJyksIG51bGwsIG51bGwsICRzbWFydHkpOwogICAgICAgIC8vICR0cGwtPmFzc2lnbignc2VsZWN0YXJlYV9wcmVmaXgnLCR0aGlzLT5ibG9ja19uYW1lKTsKICAgICAgICAvLyAkdHBsLT5hc3NpZ24oJ3NlbGVjdGVkX3N0cicsJHRoaXMtPnZhbHVlKTsKICAgICAgICAvLyAkdHBsLT5hc3NpZ24oJ3NlbGVjdGVkJywkc2VsZWN0ZWQpOwogICAgICAgIC8vICR0cGwtPmFzc2lnbignYXZhaWxhYmxlJywgJGF2YWlsYWJsZSk7CiAgICAgICAgLy8gJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddKTsKICAgICAgICAvLyAkdHBsLT5hc3NpZ24oJ2xhYmVsTGVmdCcsICR0aGlzLT5vcHRpb25zWyJsYWJlbF9sZWZ0Il0pOwogICAgICAgIC8vICR0cGwtPmFzc2lnbignbGFiZWxSaWdodCcsICR0aGlzLT5vcHRpb25zWyJsYWJlbF9yaWdodCJdKTsKICAgICAgICAvLyAkdHBsLT5hc3NpZ24oJ21vZCcsJG1vZCk7CiAgICAgICAgLy8gJHRwbC0+YXNzaWduKCdtYXhOdW1iZXInLCAkdGhpcy0+b3B0aW9uc1sibWF4X251bWJlciJdKTsKICAgICAgICAvLyAkdHBsLT5hc3NpZ24oJ3JlcXVpcmVkTnVtYmVyJywgJHRoaXMtPm9wdGlvbnNbInJlcXVpcmVkX251bWJlciJdKTsKICAgICAgICAvLyByZXR1cm4gJHRoaXMtPm9wdGlvbnNbJ2Rlc2NyaXB0aW9uJ10uJHRwbC0+ZmV0Y2goKTsKCgogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/sortablelist/help.ecb2fd_sortablelist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfc29ydGFibGVsaXN0LnRwbCAqfQo8cD5DcmVhdGVzIGEgc29ydGFibGVsaXN0IHRoYXQgdGhlIGVkaXRvciBjYW4gZHJhZy1hbmQtZHJvcCB0byBzZWxlY3QgZnJvbSB0aGUgbGlzdC4gVGhlIG9wdGlvbnMgY2FuIGJlIGNyZWF0ZWQgZnJvbSBhOiBjb21tYSBzZXBhcmF0ZWQgbGlzdCAodmFsdWVzKSwgbW9kdWxlIGNhbGwgKG1vZCksIFVzZXIgRGVmaW5lZCBUYWcgKHVkdCksIG9yIGEgc21hcnR5IHRlbXBsYXRlICh0ZW1wbGF0ZSAvIHVkdCkuIE9uZSBvZiB0aGVzZSBwYXJhbWV0ZXJzIG11c3QgYmUgdXNlZCAoKikuPC9wPgoKPGZpZWxkc2V0Pgp7JGZpZWxkZGVmLT5nZXRfZGVtb19pbnB1dChbJ3ZhbHVlcyc9PidhcHBsZT1BcHBsZSxvcmFuZ2U9T3JhbmdlLGdyZWVuPUdyZWVuLHZhbHVlPUxhYmVsJywgJ2RlZmF1bHQnPT4nb3JhbmdlJ10pfQo8L2ZpZWxkc2V0PgoKe2xpdGVyYWx9CjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICdzb3J0YWJsZWxpc3QnPC9saT4KICAgIDxsaT5ibG9jayAocmVxdWlyZWQpIC0gdGhlIG5hbWUgb2YgdGhlIGNvbnRlbnQgYmxvY2s8L2xpPgogICAgPGxpPnZhbHVlcyAoKikgLSBjb21tYSBzZXBhcmF0ZWQgc3RyaW5nIG9mICdUZXh0JyBvciAndmFsdWU9VGV4dCcuIChOb3RlOiB0aGlzIGlzIHJldmVyc2VkIGNvbXBhcmVkIHRvICdkcm9wZG93bicgdmFsdWVzIC0gdXNlIGZsaXBfdmFsdWVzIGlmIG5lY2Vzc2FyeSkgZS5nOjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb3J0YWJsZWxpc3QgYmxvY2s9dGVzdDQgbGFiZWw9IkZydWl0IiB2YWx1ZXM9J2FwcGxlPUFwcGxlLG9yYW5nZT1PcmFuZ2UsZ3JlZW49R3JlZW4sdmFsdWU9TGFiZWwnfTwvcHJlPgogICAgPC9saT4gICAKICAgIDxsaT5tb2QgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgbW9kdWxlIHRvIGNhbGwgdG8gZ2V0IHRoZSBvcHRpb24gdmFsdWVzLiAKICAgIFRoZSB0ZW1wbGF0ZSBjYWxsIG5lZWRzIHRvIGVpdGhlcjogc2V0IGFuIGFycmF5ICRvcHRpb25zIG9mICd2YWx1ZScgPT4gJ1RleHQnIHdpdGggc2NvcGU9Z2xvYmFsLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicuIEFueSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgYXJlIGFsc28gcGFzc2VkIG9udG8gdGhlIHNwZWNpZmllZCBtb2R1bGUuIFlvdSBtYXkgd2FudCB0byBpbmNsdWRlICdhY3Rpb24nIGFuZCAndGVtcGxhdGUnIHBhcmFtZXRlcnMuIGUuZzo8YnI+CiAgICAgICAgPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0YSBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gbW9kdWxlIiBtb2Q9TElTRVByb2plY3RzIHRlbXBsYXRlX3N1bW1hcnk9J2l0ZW1fZHJvcGRvd24nIHBhZ2VsaW1pdD0yfTwvcHJlPgogICAgPC9saT4KICAgIDxsaT51ZHQgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgVXNlciBEZWZpbmVkIFRhZyB0byBjYWxsIHRvIGdldCB0aGUgb3B0aW9uIHZhbHVlcy4gVGhlIFVEVCBzaG91bGQgZWl0aGVyIHJldHVybiBhbiBhcnJheSBvZiAndmFsdWUnID0+ICdUZXh0Jywgb3IgcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIHN0cmluZyBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLjxicj4KICAgICAgICA8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb3J0YWJsZWxpc3QgYmxvY2s9dGVzdDRiIHVkdD0nZWNiMl90ZXN0X3VkdF9vcHRpb25zJyBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gdWR0In08L3ByZT4KICAgIDwvbGk+CiAgICA8bGk+dGVtcGxhdGUgKCopIC0gc3BlY2lmaWVzIHRoZSBuYW1lIG9mIGEgc21hcnR5IHRlbXBsYXRlIGZyb20gRGVzaWduIE1hbmFnZXIgdG8gY2FsbCB0byBnZXQgdGhlIG9wdGlvbiB2YWx1ZXMuIFRoZSB0ZW1wbGF0ZSBjYWxsIG5lZWRzIHRvIGVpdGhlcjogc2V0IGFuIGFycmF5ICRvcHRpb25zIG9mICd2YWx1ZScgPT4gJ1RleHQnIHdpdGggc2NvcGU9Z2xvYmFsLCBvciByZXR1cm4gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiAnVGV4dCwuLi4nIG9yICdUZXh0PXZhbHVlLC4uLicuPGJyPgogICAgICAgIDxwcmU+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXNvcnRhYmxlbGlzdCBibG9jaz10ZXN0NGMgdGVtcGxhdGU9J0VDQjJfdGVzdF90ZW1wbGF0ZV9vcHRpb25zJyBsYWJlbD0nU29ydGFibGUgTGlzdCAtIGZyb20gdGVtcGxhdGUnIGxhYmVsX2xlZnQ9J1NlbGVjdGVkIGl0ZW1zIGZyb20gdGVtcGxhdGUnIGxhYmVsX3JpZ2h0PSdBdmFpbGFibGUgaXRlbXMgZnJvbSB0ZW1wbGF0ZSd9PC9wcmU+CiAgICA8L2xpPgogICAgPGxpPmN1c3RvbWdzX2ZpZWxkICgqKSAtIG5hbWUgb2YgY3VzdG9tZ3NfZmllbGQgdG8gcmV0cmlldmUgKHdpdGggc3BhY2VzLCBub3QgdW5kZXJzY29yZXMpIGUuZy4gJ1NlY3Rpb24gU3R5bGVzJy4gVGhpcyBuZWVkcyB0byBiZSBhIEN1c3RvbUdTICd0ZXh0YXJlYScgY29udGFpbmluZyBhIHNldCBvZiAnVGV4dCcgb3IgJ1RleHQ9dmFsdWUnLCBlaXRoZXIgb24gc2VwYXJhdGUgbGluZXMgb3Igc2VwYXJhdGVkIGJ5IGNvbW1hcy48YnI+CiAgICAgICAgPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0ZCBjdXN0b21nc19maWVsZD0nU2VjdGlvbiBTdHlsZXMnICBsYWJlbD0iU29ydGFibGUgTGlzdCAtIGZyb20gQ3VzdG9tR1MifTwvcHJlPgogICAgPC9saT4KICAgIDxsaT5sYWJlbF9sZWZ0IChvcHRpb25hbCkgLSBkZWZhdWx0OiAnU2VsZWN0ZWQnPC9saT4KICAgIDxsaT5sYWJlbF9yaWdodCAob3B0aW9uYWwpIC0gZGVmYXVsdDogJ0F2YWlsYWJsZSc8L2xpPgogICAgPGxpPm1heF9udW1iZXIgKG9wdGlvbmFsKSAtIGxpbWl0cyB0aGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQ8L2xpPgogICAgPGxpPnJlcXVpcmVkX251bWJlciAob3B0aW9uYWwpIC0gc2V0cyBhIHNwZWNpZmljIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQgKG9yIG5vbmUpPC9saT4KICAgIDxsaT5mbGlwX3ZhbHVlcyAob3B0aW9uYWwpIC0gc3dhcHMgdGhlIGRyb3Bkb3ducyB2YWx1ZXMgPC0+IHRleHQ8L2xpPgogICAgPGxpPmRlZmF1bHQgKG9wdGlvbmFsKSAtIChhbGlhczogJzxiPmRlZmF1bHRfdmFsdWU8L2I+JykgLSBpbml0aWFsIHZhbHVlIHdoZW4gY3JlYXRpbmcgYSBuZXcgcGFnZTwvbGk+CiAgICA8bGk+ZGVzY3JpcHRpb24gKG9wdGlvbmFsKSAtIGFkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3I8L2xpPgo8L3VsPgo8YnI+CnsvbGl0ZXJhbH0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/sortablelist/input.ecb2fd_sortablelist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX3NvcnRhYmxlbGlzdC50cGwgLSB2MS4wIC0gMjlKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0ieyRzZWxlY3RhcmVhX3ByZWZpeH0iIG5hbWU9Inskc2VsZWN0YXJlYV9wcmVmaXh9IiB2YWx1ZT0ieyRzZWxlY3RlZF9zdHJ9IiBzaXplPSIxMDAiLz4KPGRpdiBjbGFzcz0iY19mdWxsIGNmIGVjYjItY2IgeyRzZWxlY3RhcmVhX3ByZWZpeH0iPgogICAgPGRpdiBjbGFzcz0iZ3JpZF82IGFscGhhIj4KICAgICAgICA8ZmllbGRzZXQ+CiAgICAgICAgICAgIDxsZWdlbmQ+e2lmICRsYWJlbExlZnQhPScnfXskbGFiZWxMZWZ0fXtlbHNlfXskbW9kLT5MYW5nKCdjb250ZW50X2Jsb2NrX2xhYmVsX3NlbGVjdGVkJyl9ey9pZn08L2xlZ2VuZD4KICAgICAgICAgICAgPGRpdiBpZD0ic2VsZWN0ZWQtaXRlbXMiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJzb3J0YWJsZS1lY2IyLWxpc3Qgc29ydGFibGUtbGlzdCBzZWxlY3RlZC1pdGVtcyIgZGF0YS1jbXNtcy1jYi1pbnB1dD0ieyRzZWxlY3RhcmVhX3ByZWZpeH0iCiAgICAgICAgICAgICAgICB7aWYgJG1heE51bWJlcn0gZGF0YS1tYXgtbnVtYmVyPSJ7JG1heE51bWJlcn0iey9pZn17aWYgJHJlcXVpcmVkTnVtYmVyfSBkYXRhLXJlcXVpcmVkLW51bWJlcj0ieyRyZXF1aXJlZE51bWJlcn0iey9pZn0+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJwbGFjZWhvbGRlciBuby1zb3J0IHtpZiAkc2VsZWN0ZWR8QGNvdW50PjB9IGhpZGRlbnsvaWZ9Ij57aWYgJHJlcXVpcmVkTnVtYmVyfXskbW9kLT5MYW5nKCdkcm9wX3JlcXVpcmVkX2l0ZW1zJywgJHJlcXVpcmVkTnVtYmVyKX17ZWxzZX17JG1vZC0+TGFuZygnZHJvcF9pdGVtcycpfXsvaWZ9PC9saT4KICAgICAgICAgICAgICAgICAgICB7Zm9yZWFjaCAkc2VsZWN0ZWQgYXMgJGFsaWFzID0+ICRuYW1lfQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQgY2Ygc29ydGFibGUtaXRlbSIgZGF0YS1jbXNtcy1pdGVtLWlkPSJ7JGFsaWFzfSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7JG5hbWV9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3JlbW92ZScpfSIgY2xhc3M9InVpLWljb24gdWktaWNvbi10cmFzaCBzb3J0YWJsZS1yZW1vdmUiPnskbW9kLT5MYW5nKCdyZW1vdmUnKX08L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgey9mb3JlYWNofQogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9maWVsZHNldD4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iZ3JpZF82IG9tZWdhIGRyYWdnYWJsZS1hcmVhIj4KICAgICAgICA8ZmllbGRzZXQ+CiAgICAgICAgICAgIDxsZWdlbmQ+e2lmICRsYWJlbFJpZ2h0IT0nJ317JGxhYmVsUmlnaHR9e2Vsc2V9eyRtb2QtPkxhbmcoJ2NvbnRlbnRfYmxvY2tfbGFiZWxfYXZhaWxhYmxlJyl9ey9pZn08L2xlZ2VuZD4KICAgICAgICAgICAgPGRpdiBpZD0iYXZhaWxhYmxlLWl0ZW1zIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ic29ydGFibGUtZWNiMi1saXN0IHNvcnRhYmxlLWxpc3QgYXZhaWxhYmxlLWl0ZW1zIj4KICAgICAgICAgICAgICAgIHtmb3JlYWNoICRhdmFpbGFibGUgYXMgJGFsaWFzID0+ICRuYW1lfQogICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9InVpLXN0YXRlLWRlZmF1bHQiIGRhdGEtY21zbXMtaXRlbS1pZD0ieyRhbGlhc30iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgeyRuYW1lfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgdGl0bGU9InskbW9kLT5MYW5nKCdyZW1vdmUnKX0iIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tdHJhc2ggc29ydGFibGUtcmVtb3ZlIGhpZGRlbiI+eyRtb2QtPkxhbmcoJ3JlbW92ZScpfTwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIHsvZm9yZWFjaH0KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZmllbGRzZXQ+CiAgICA8L2Rpdj4KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textarea/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/textarea/class.ecb2fd_textarea.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX3RleHRhcmVhIGV4dGVuZHMgZWNiMl9GaWVsZERlZkJhc2UgCnsKCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSAKCXsJCgkJcGFyZW50OjpfX2NvbnN0cnVjdCgkbW9kLCAkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOwoKICAgICAgICBpZiAoIGlzc2V0KCR0aGlzLT5maWVsZF9hbGlhc191c2VkKSAmJiAkdGhpcy0+ZmllbGRfYWxpYXNfdXNlZD09J2VkaXRvcicgKSB7CiAgICAgICAgICAgICR0aGlzLT5vcHRpb25zWyd3eXNpd3lnJ10gPSBUUlVFOwogICAgICAgIH0KICAgICAgICAKCX0KCgoKICAgIC8qKgogICAgICogIHNldHMgdGhlIGFsbG93ZWQgcGFyYW1ldGVycyBmb3IgdGhpcyBmaWVsZCB0eXBlCiAgICAgKgogICAgICogICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgLSBhcnJheSBvZiBwYXJhbWV0ZXJfbmFtZXMgPT4gWyBkZWZhdWx0X3ZhbHVlLCBmaWx0ZXJfdHlwZSBdCiAgICAgKiAgICAgIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcsIEZJTFRFUl9WQUxJREFURV9JTlQsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOLCBGSUxURVJfU0FOSVRJWkVfRU1BSUwgCiAgICAgKiAgICAgIHNlZTogaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZmlsdGVyLmZpbHRlcnMucGhwCiAgICAgKiAgJHRoaXMtPnJlc3RyaWN0X3BhcmFtcyAtIG9wdGlvbmFsbHkgYWxsb3cgYW55IG90aGVyIHBhcmFtZXRlcnMgdG8gYmUgaW5jbHVkZWQsIGUuZy4gbW9kdWxlIGNhbGxzCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfZmllbGRfcGFyYW1ldGVycygpIAogICAgewogICAgICAgIC8vICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgPSBGQUxTRTsgICAgLy8gZGVmYXVsdDogdHJ1ZQogICAgICAgICR0aGlzLT5wYXJhbWV0ZXJfYWxpYXNlcyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+ICdkZWZhdWx0JwogICAgICAgIF07CiAgICAgICAgJHRoaXMtPmRlZmF1bHRfcGFyYW1ldGVycyA9IFsKICAgICAgICAgICAgJ2RlZmF1bHQnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ3Jvd3MnICAgICAgICAgID0+IFsnZGVmYXVsdCcgPT4gMjAsICAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9JTlRdLAogICAgICAgICAgICAnY29scycgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiA4MCwgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfSU5UXSwKICAgICAgICAgICAgJ3d5c2l3eWcnICAgICAgID0+IFsnZGVmYXVsdCcgPT4gRkFMU0UsICAgJ2ZpbHRlcicgPT4gRklMVEVSX1ZBTElEQVRFX0JPT0xFQU5dLAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwoKICAgIH0KCgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewogICAgICAgICRzbWFydHkgPSBcQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHRwbCA9ICRzbWFydHktPkNyZWF0ZVRlbXBsYXRlKCAnc3RyaW5nOicuJHRoaXMtPmdldF90ZW1wbGF0ZSgpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdibG9ja19uYW1lJywgJHRoaXMtPmJsb2NrX25hbWUgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3ZhbHVlJywgJHRoaXMtPnZhbHVlICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdyb3dzJywgJHRoaXMtPm9wdGlvbnNbJ3Jvd3MnXSApOwogICAgICAgICR0cGwtPmFzc2lnbignY29scycsICR0aGlzLT5vcHRpb25zWydjb2xzJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3d5c2l3eWcnLCAkdGhpcy0+b3B0aW9uc1snd3lzaXd5ZyddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textarea/help.ecb2fd_textarea.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfdGV4dGFyZWEudHBsICp9CjxwPlRoZSB0ZXh0YXJlYSBmaWVsZCBjcmVhdGVzIGVpdGhlciBhIHNpbXBsZSB0ZXh0YXJlYSBpbnB1dCwgZm9yIHBhcmFncmFwaHMgb2YgdGV4dCwgb3Igb3B0aW9uYWxseSBhIGZ1bGwgV1lTSVdZRyBlZGl0b3IgdG8gY3JlYXRlIGZvcm1hdHRlZCBodG1sLjwvcD4KCjxmaWVsZHNldD4KeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWydyb3dzJz0+MywgJ2NvbHMnPT4xMDAsICdkZWZhdWx0Jz0+J2Egc2FtcGxlIHRleHRhcmVhJ10pfQo8L2ZpZWxkc2V0PgoKPHByZT57bGl0ZXJhbH17Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0idGV4dGFyZWEiIGxhYmVsPSJUZXh0YXJlYSIgYmxvY2s9InRlc3Q2IiByb3dzPTMgY29scz0xMDAgZGVmYXVsdD0iYSBzYW1wbGUgdGV4dGFyZWEifXsvbGl0ZXJhbH08L3ByZT4KCjxwPlBhcmFtZXRlcnM6PC9wPgo8dWw+CiAgICA8bGk+ZmllbGQgKHJlcXVpcmVkKSAtICc8Yj50ZXh0YXJlYTwvYj4nLCBvciBhbGlhczogJzxiPmVkaXRvcjwvYj4nIChzZXRzIHd5c2l3eWc9dHJ1ZSk8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+cm93cyAob3B0aW9uYWwpIC0gc2V0cyB0aGUgaGVpZ2h0IG9mIHRoZSB0ZXh0YXJlYS4gTWF5IGJlIG92ZXJyaWRkZW4gYnkgY3NzIC0gZGVmYXVsdCAyMDwvbGk+CiAgICA8bGk+Y29scyAob3B0aW9uYWwpIC0gc2V0cyB0aGUgd2lkdGggb2YgdGhlIHRleHRhcmVhLiBNYXkgYmUgb3ZlcnJpZGRlbiBieSBjc3MgLSBkZWZhdWx0IDgwPC9saT4KICAgIDxsaT53eXNpd3lnIChvcHRpb25hbCkgLSBlbmFibGVzIGEgd3lzaXd5ZyBlZGl0b3Igb24gdGhlIHRleHRhcmVhIC0gZGVmYXVsdCBmYWxzZTwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+Cgo=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textarea/input.ecb2fd_textarea.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX3RleHRhcmVhLnRwbCAtIHYxLjAgLSAyNUp1bjIyIAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqfQp7aWYgIWVtcHR5KCRkZXNjcmlwdGlvbil9CiAgICAgICAgeyRkZXNjcmlwdGlvbn08YnI+CnsvaWZ9CntpZiAkd3lzaXd5Z30KICAgICAgICB7Y21zX3RleHRhcmVhIG5hbWU9JGJsb2NrX25hbWUgZW5hYmxld3lzaXd5Zz0kd3lzaXd5ZyByb3dzPSRyb3dzIGNvbHM9JGNvbHMgdmFsdWU9JHZhbHVlfQp7ZWxzZX0KICAgICAgICA8dGV4dGFyZWEgbmFtZT0ieyRibG9ja19uYW1lfSIgcm93cz0ieyRyb3dzfSIgY29scz0ieyRjb2xzfSI+eyR2YWx1ZX08L3RleHRhcmVhPgp7L2lmfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textinput/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/textinput/class.ecb2fd_textinput.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX3RleHRpbnB1dCBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKICAgICAgICAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbCiAgICAgICAgICAgICdkZWZhdWx0X3ZhbHVlJyA9PiAnZGVmYXVsdCcKICAgICAgICBdOwogICAgICAgICR0aGlzLT5kZWZhdWx0X3BhcmFtZXRlcnMgPSBbCiAgICAgICAgICAgICdkZWZhdWx0JyAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwgCiAgICAgICAgICAgICdzaXplJyAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+IDMwLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfVkFMSURBVEVfSU5UXSwKICAgICAgICAgICAgJ21heF9sZW5ndGgnICAgID0+IFsnZGVmYXVsdCcgPT4gMjU1LCAgICdmaWx0ZXInID0+IEZJTFRFUl9WQUxJREFURV9JTlRdLAogICAgICAgICAgICAnZGVzY3JpcHRpb24nICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10KICAgICAgICBdOwogICAgfQoKCiAgICAvKioKICAgICAqICBAcmV0dXJuIHN0cmluZyBjb21wbGV0ZSBjb250ZW50IGJsb2NrIAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSAKICAgIHsKICAgICAgICAkc21hcnR5ID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldFNtYXJ0eSgpOwogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJ3N0cmluZzonLiR0aGlzLT5nZXRfdGVtcGxhdGUoKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOwogICAgICAgICR0cGwtPmFzc2lnbignYmxvY2tfbmFtZScsICR0aGlzLT5ibG9ja19uYW1lICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd2YWx1ZScsICR0aGlzLT52YWx1ZSApOwogICAgICAgICR0cGwtPmFzc2lnbignc2l6ZScsICR0aGlzLT5vcHRpb25zWydzaXplJ10gKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ21heF9sZW5ndGgnLCAkdGhpcy0+b3B0aW9uc1snbWF4X2xlbmd0aCddICk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkZXNjcmlwdGlvbicsICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddICk7CiAgICAgICAgcmV0dXJuICR0cGwtPmZldGNoKCk7CiAgIAogICAgfQoKCn0=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textinput/help.ecb2fd_textinput.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfdGV4dGlucHV0LnRwbCAqfQo8cD5UaGUgdGV4dGlucHV0IGZpZWxkIGNyZWF0ZXMgYSBzaW1wbGUgdGV4dCBpbnB1dCwgZm9yIHN0b3JpbmcgYSBzaW5nbGUgc3RyaW5nLjwvcD4KCjxmaWVsZHNldD4KeyRmaWVsZGRlZi0+Z2V0X2RlbW9faW5wdXQoWydzaXplJz0+NTUsICdtYXhfbGVuZ3RoJz0+NTUsICdkZWZhdWx0Jz0+ImEgc2FtcGxlIHRleHRpbnB1dCJdKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXRleHRpbnB1dCBibG9jaz0idGVzdDUiIGxhYmVsPSJUZXh0IiBzaXplPTU1IG1heF9sZW5ndGg9NTUgZGVmYXVsdD0iYSBzYW1wbGUgdGV4dGlucHV0In17L2xpdGVyYWx9PC9wcmU+Cgo8cD5QYXJhbWV0ZXJzOjwvcD4KPHVsPgogICAgPGxpPmZpZWxkIChyZXF1aXJlZCkgLSAnPGI+dGV4dGlucHV0PC9iPicsIG9yIGFsaWFzOiAnPGI+aW5wdXQ8L2I+JzwvbGk+CiAgICA8bGk+YmxvY2sgKHJlcXVpcmVkKSAtIHRoZSBuYW1lIG9mIHRoZSBjb250ZW50IGJsb2NrPC9saT4KICAgIDxsaT5zaXplIChvcHRpb25hbCkgLSBzZXRzIHRoZSB3aWR0aCBvZiB0aGUgaHRtbCBpbnB1dC4gTWF5IGJlIG92ZXJyaWRkZW4gYnkgY3NzIC0gZGVmYXVsdCAzMDwvbGk+CiAgICA8bGk+bWF4X2xlbmd0aCAob3B0aW9uYWwpIC0gbWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyAtIGRlZmF1bHQgMjU1IDwvbGk+CiAgICA8bGk+ZGVmYXVsdCAob3B0aW9uYWwpIC0gKGFsaWFzOiAnPGI+ZGVmYXVsdF92YWx1ZTwvYj4nKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/textinput/input.ecb2fd_textinput.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX3RleHRpbnB1dC50cGwgLSB2MS4wIC0gMjVKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGJsb2NrX25hbWV9IiBzaXplPSJ7JHNpemV9IiBtYXhsZW5ndGg9InskbWF4X2xlbmd0aH0iIHZhbHVlPSJ7JHZhbHVlfSIvPgo=]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/_default_field_def/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/fielddefs/_default_field_def/class.ecb2fd_ZZZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKY2xhc3MgZWNiMmZkX1paWiBleHRlbmRzIGVjYjJfRmllbGREZWZCYXNlIAp7CgoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRtb2QsICRibG9ja05hbWUsICR2YWx1ZSwgJHBhcmFtcywgJGFkZGluZykgCgl7CQoJCXBhcmVudDo6X19jb25zdHJ1Y3QoJG1vZCwgJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKTsKCgl9CgoKCiAgICAvKioKICAgICAqICBzZXRzIHRoZSBhbGxvd2VkIHBhcmFtZXRlcnMgZm9yIHRoaXMgZmllbGQgdHlwZQogICAgICoKICAgICAqICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzIC0gYXJyYXkgb2YgcGFyYW1ldGVyX25hbWVzID0+IFsgZGVmYXVsdF92YWx1ZSwgZmlsdGVyX3R5cGUgXQogICAgICogICAgICBGSUxURVJfU0FOSVRJWkVfU1RSSU5HLCBGSUxURVJfVkFMSURBVEVfSU5ULCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiwgRklMVEVSX1NBTklUSVpFX0VNQUlMIAogICAgICogICAgICBzZWU6IGh0dHBzOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2ZpbHRlci5maWx0ZXJzLnBocAogICAgICogICR0aGlzLT5yZXN0cmljdF9wYXJhbXMgLSBvcHRpb25hbGx5IGFsbG93IGFueSBvdGhlciBwYXJhbWV0ZXJzIHRvIGJlIGluY2x1ZGVkLCBlLmcuIG1vZHVsZSBjYWxscwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2ZpZWxkX3BhcmFtZXRlcnMoKSAKICAgIHsKICAgICAgICAkdGhpcy0+ZGVmYXVsdF9wYXJhbWV0ZXJzID0gWwogICAgICAgICAgICAnJyAgICAgICAgICAgICAgPT4gWydkZWZhdWx0JyA9PiAnJywgICAgJ2ZpbHRlcicgPT4gRklMVEVSX1NBTklUSVpFX1NUUklOR10sCiAgICAgICAgICAgICcnICAgICAgICAgICAgICA9PiBbJ2RlZmF1bHQnID0+ICcnLCAgICAnZmlsdGVyJyA9PiBGSUxURVJfU0FOSVRJWkVfU1RSSU5HXSwKICAgICAgICAgICAgJ2RlZmF1bHRfdmFsdWUnID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddLCAKICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyAgID0+IFsnZGVmYXVsdCcgPT4gJycsICAgICdmaWx0ZXInID0+IEZJTFRFUl9TQU5JVElaRV9TVFJJTkddCiAgICAgICAgXTsKICAgICAgICAvLyAkdGhpcy0+cGFyYW1ldGVyX2FsaWFzZXMgPSBbICdhbGlhcycgPT4gJ3BhcmFtZXRlcicgXTsKICAgICAgICAvLyAkdGhpcy0+cmVzdHJpY3RfcGFyYW1zID0gRkFMU0U7ICAgIC8vIGRlZmF1bHQ6IHRydWUKCiAgICB9CgoKICAgIC8qKgogICAgICogIEByZXR1cm4gc3RyaW5nIGNvbXBsZXRlIGNvbnRlbnQgYmxvY2sgCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19pbnB1dCgpIAogICAgewoKCgogICAgCiAgICAgICAgJHNtYXJ0eSA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXRTbWFydHkoKTsKICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICdzdHJpbmc6Jy4kdGhpcy0+Z2V0X3RlbXBsYXRlKCksIG51bGwsIG51bGwsICRzbWFydHkgKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Jsb2NrX25hbWUnLCAkdGhpcy0+YmxvY2tfbmFtZSApOwogICAgICAgICR0cGwtPmFzc2lnbigndmFsdWUnLCAkdGhpcy0+dmFsdWUgKTsKCgogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkdGhpcy0+b3B0aW9uc1snZGVzY3JpcHRpb24nXSApOwogICAgICAgIHJldHVybiAkdHBsLT5mZXRjaCgpOwogICAKICAgIH0KCgp9]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/_default_field_def/help.ecb2fd_ZZZ.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaGVscC5lY2IyZmRfWlpaLnRwbCAqfQo8cD5UaGUgWlpaIGZpZWxkIGNyZWF0ZXMgYSBzaW1wbGUgdGV4dCBpbnB1dCwgZm9yIHN0b3JpbmcgYSBzaW5nbGUgc3RyaW5nLjwvcD4KCjxmaWVsZHNldD4KICAgIHskZmllbGRkZWYtPmdldF9kZW1vX2lucHV0KFtdKX0KPC9maWVsZHNldD4KCjxwcmU+e2xpdGVyYWx9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPVpaWiBibG9jaz0idGVzdCIgbGFiZWw9IlRlc3QiIGRlZmF1bHQ9ImEgc2FtcGxlIFpaWiJ9ey9saXRlcmFsfTwvcHJlPgoKPHA+UGFyYW1ldGVyczo8L3A+Cjx1bD4KICAgIDxsaT5maWVsZCAocmVxdWlyZWQpIC0gJ1paWic8L2xpPgogICAgPGxpPmJsb2NrIChyZXF1aXJlZCkgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jazwvbGk+CiAgICA8bGk+PC9saT4KICAgIDxsaT48L2xpPgogICAgPGxpPmRlZmF1bHRfdmFsdWUgKG9wdGlvbmFsKSAtIGluaXRpYWwgdmFsdWUgd2hlbiBjcmVhdGluZyBhIG5ldyBwYWdlPC9saT4KICAgIDxsaT5kZXNjcmlwdGlvbiAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+CjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/lib/fielddefs/_default_field_def/input.ecb2fd_ZZZ.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaW5wdXQuZWNiMmZkX1paWi50cGwgLSB2MS4wIC0gMjVKdW4yMiAKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfQogICAgICAgIHskZGVzY3JpcHRpb259PGJyPgp7L2lmfQogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGJsb2NrX25hbWV9IiB2YWx1ZT0ieyR2YWx1ZX0iLz4K]]></data>
	</file>
	<file>
	  <filename>/lib/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/lib/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/js/ecb2_admin.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gZWNiMl9hZG1pbi5qcyAtIHYxLjIgLSAxNkZlYjE5DQovLw0KLy8gICAgICAtIHYxLjQgLSAyMkp1bjIyIC0gYnJpbmcgY29scGljayAmIGpRdWVyeSB0aW1lcGlja2VyIGFkZG9uIGludG8gdGhpcyBmaWxlDQovLyAgICAgLSB2MS4zIC0gMjBKdW4yMiAtIGJ1ZyBmaXggLSB0ZXN0IGlmICdjb2xwaWNrJyBtZXRob2QgZXhpc3RzIGJlZm9yZSBjYWxsaW5nIGl0IQ0KLy8gICAgIC0gdjEuMiAtIDE2RmViMTkgLSBlY2JfcmVwZWF0ZXIgYWRkZWQNCi8vICAgICAgICAgICAgICAgICAgICAgIC0gYmVnYW4gY29uc29saWRhdGluZyBhbGwganMgaW50byB0aGlzIGZpbGUNCi8vICAgICAtIHYxLjEgLSAxMUp1bDE3IC0gdXBkYXRlZCBmb3IgbWF4X251bWJlciAmIHJlcXVpcmVkX251bWJlciAmIHVwZGF0ZUVDQjJQbGFjZWhvbGRlcigpDQovLyAgICAgLSB2MS4wIC0gMThBcHIxNyAtIGluaXRpYWwganMgZmlsZQ0KLy8NCi8vICAgIGVuYWJsZXMgZHJhZy1uLWRyb3Agc2VsZWN0aW9uIG9mIGxpc3QgaXRlbXMsIHJlcXVpcmVzIGpxdWVyeSB1aSBzb3J0YWJsZQ0KLy8NCi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCg0KDQoNCi8qDQpjb2xwaWNrIENvbG9yIFBpY2tlcg0KQ29weXJpZ2h0IDIwMTMgSm9zZSBWYXJnYXMuIExpY2Vuc2VkIHVuZGVyIEdQTCBsaWNlbnNlLiBCYXNlZCBvbiBTdGVmYW4gUGV0cmUncyBDb2xvciBQaWNrZXIgd3d3LmV5ZWNvbi5ybywgZHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMNCg0KRm9yIHVzYWdlIGFuZCBleGFtcGxlczogY29scGljay5jb20vcGx1Z2luDQogKi8NCiFmdW5jdGlvbih0KXsiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbImpxdWVyeSJdLHQpOiJvYmplY3QiPT10eXBlb2YgZXhwb3J0cz90KHJlcXVpcmUoImpxdWVyeSIpKTp0KGpRdWVyeSl9KChmdW5jdGlvbih0KXt2YXIgZSxpLGEsbyxjLGwscixuLGQscyxwLHUsZixoLHYsZyxrLF8sbSxiLHkseCx3LEksTSxDLHEsVCxTLEUsRD0oaT17c2hvd0V2ZW50OiJjbGljayIsb25TaG93OmZ1bmN0aW9uKCl7fSxvbkJlZm9yZVNob3c6ZnVuY3Rpb24oKXt9LG9uSGlkZTpmdW5jdGlvbigpe30sb25DaGFuZ2U6ZnVuY3Rpb24oKXt9LG9uU3VibWl0OmZ1bmN0aW9uKCl7fSxjb2xvclNjaGVtZToibGlnaHQiLGNvbG9yOiIzMjg5YzciLGxpdmVQcmV2aWV3OiEwLGZsYXQ6ITEsbGF5b3V0OiJmdWxsIixzdWJtaXQ6MSxzdWJtaXRUZXh0OiJPSyIsaGVpZ2h0OjE1Nixwb2x5ZmlsbDohMX0sYT1mdW5jdGlvbihlLGkpe3ZhciBhPU4oZSk7dChpKS5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDEpLnZhbChhLnIpLmVuZCgpLmVxKDIpLnZhbChhLmcpLmVuZCgpLmVxKDMpLnZhbChhLmIpLmVuZCgpfSxvPWZ1bmN0aW9uKGUsaSl7dChpKS5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDQpLnZhbChNYXRoLnJvdW5kKGUuaCkpLmVuZCgpLmVxKDUpLnZhbChNYXRoLnJvdW5kKGUucykpLmVuZCgpLmVxKDYpLnZhbChNYXRoLnJvdW5kKGUuYikpLmVuZCgpfSxjPWZ1bmN0aW9uKGUsaSl7dChpKS5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDApLnZhbCh6KGUpKX0sbD1mdW5jdGlvbihlLGkpe3QoaSkuZGF0YSgiY29scGljayIpLnNlbGVjdG9yLmNzcygiYmFja2dyb3VuZENvbG9yIiwiIyIreih7aDplLmgsczoxMDAsYjoxMDB9KSksdChpKS5kYXRhKCJjb2xwaWNrIikuc2VsZWN0b3JJbmRpYy5jc3Moe2xlZnQ6cGFyc2VJbnQodChpKS5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0KmUucy8xMDAsMTApLHRvcDpwYXJzZUludCh0KGkpLmRhdGEoImNvbHBpY2siKS5oZWlnaHQqKDEwMC1lLmIpLzEwMCwxMCl9KX0scj1mdW5jdGlvbihlLGkpe3QoaSkuZGF0YSgiY29scGljayIpLmh1ZS5jc3MoInRvcCIscGFyc2VJbnQodChpKS5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LXQoaSkuZGF0YSgiY29scGljayIpLmhlaWdodCplLmgvMzYwLDEwKSl9LG49ZnVuY3Rpb24oZSxpKXt0KGkpLmRhdGEoImNvbHBpY2siKS5jdXJyZW50Q29sb3IuY3NzKCJiYWNrZ3JvdW5kQ29sb3IiLCIjIit6KGUpKX0sZD1mdW5jdGlvbihlLGkpe3QoaSkuZGF0YSgiY29scGljayIpLm5ld0NvbG9yLmNzcygiYmFja2dyb3VuZENvbG9yIiwiIyIreihlKSl9LHM9ZnVuY3Rpb24oZSl7dmFyIGksbj10KHRoaXMpLnBhcmVudCgpLnBhcmVudCgpO3RoaXMucGFyZW50Tm9kZS5jbGFzc05hbWUuaW5kZXhPZigiX2hleCIpPjA/KG4uZGF0YSgiY29scGljayIpLmNvbG9yPWk9WShUKHRoaXMudmFsdWUpKSxhKGksbi5nZXQoMCkpLG8oaSxuLmdldCgwKSkpOnRoaXMucGFyZW50Tm9kZS5jbGFzc05hbWUuaW5kZXhPZigiX2hzYiIpPjA/KG4uZGF0YSgiY29scGljayIpLmNvbG9yPWk9Qyh7aDpwYXJzZUludChuLmRhdGEoImNvbHBpY2siKS5maWVsZHMuZXEoNCkudmFsKCksMTApLHM6cGFyc2VJbnQobi5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDUpLnZhbCgpLDEwKSxiOnBhcnNlSW50KG4uZGF0YSgiY29scGljayIpLmZpZWxkcy5lcSg2KS52YWwoKSwxMCl9KSxhKGksbi5nZXQoMCkpLGMoaSxuLmdldCgwKSkpOihuLmRhdGEoImNvbHBpY2siKS5jb2xvcj1pPUgocSh7cjpwYXJzZUludChuLmRhdGEoImNvbHBpY2siKS5maWVsZHMuZXEoMSkudmFsKCksMTApLGc6cGFyc2VJbnQobi5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDIpLnZhbCgpLDEwKSxiOnBhcnNlSW50KG4uZGF0YSgiY29scGljayIpLmZpZWxkcy5lcSgzKS52YWwoKSwxMCl9KSksYyhpLG4uZ2V0KDApKSxvKGksbi5nZXQoMCkpKSxsKGksbi5nZXQoMCkpLHIoaSxuLmdldCgwKSksZChpLG4uZ2V0KDApKSxuLmRhdGEoImNvbHBpY2siKS5vbkNoYW5nZS5hcHBseShuLnBhcmVudCgpLFtpLHooaSksTihpKSxuLmRhdGEoImNvbHBpY2siKS5lbCwwXSl9LHA9ZnVuY3Rpb24oZSl7dCh0aGlzKS5wYXJlbnQoKS5yZW1vdmVDbGFzcygiY29scGlja19mb2N1cyIpfSx1PWZ1bmN0aW9uKCl7dCh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5kYXRhKCJjb2xwaWNrIikuZmllbGRzLnBhcmVudCgpLnJlbW92ZUNsYXNzKCJjb2xwaWNrX2ZvY3VzIiksdCh0aGlzKS5wYXJlbnQoKS5hZGRDbGFzcygiY29scGlja19mb2N1cyIpfSxmPWZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQ/ZS5wcmV2ZW50RGVmYXVsdCgpOmUucmV0dXJuVmFsdWU9ITE7dmFyIGk9dCh0aGlzKS5wYXJlbnQoKS5maW5kKCJpbnB1dCIpLmZvY3VzKCksYT17ZWw6dCh0aGlzKS5wYXJlbnQoKS5hZGRDbGFzcygiY29scGlja19zbGlkZXIiKSxtYXg6dGhpcy5wYXJlbnROb2RlLmNsYXNzTmFtZS5pbmRleE9mKCJfaHNiX2giKT4wPzM2MDp0aGlzLnBhcmVudE5vZGUuY2xhc3NOYW1lLmluZGV4T2YoIl9oc2IiKT4wPzEwMDoyNTUseTplLnBhZ2VZLGZpZWxkOmksdmFsOnBhcnNlSW50KGkudmFsKCksMTApLHByZXZpZXc6dCh0aGlzKS5wYXJlbnQoKS5wYXJlbnQoKS5kYXRhKCJjb2xwaWNrIikubGl2ZVByZXZpZXd9O3QoZG9jdW1lbnQpLm1vdXNldXAoYSx2KSx0KGRvY3VtZW50KS5tb3VzZW1vdmUoYSxoKX0saD1mdW5jdGlvbih0KXtyZXR1cm4gdC5kYXRhLmZpZWxkLnZhbChNYXRoLm1heCgwLE1hdGgubWluKHQuZGF0YS5tYXgscGFyc2VJbnQodC5kYXRhLnZhbC10LnBhZ2VZK3QuZGF0YS55LDEwKSkpKSx0LmRhdGEucHJldmlldyYmcy5hcHBseSh0LmRhdGEuZmllbGQuZ2V0KDApLFshMF0pLCExfSx2PWZ1bmN0aW9uKGUpe3JldHVybiBzLmFwcGx5KGUuZGF0YS5maWVsZC5nZXQoMCksWyEwXSksZS5kYXRhLmVsLnJlbW92ZUNsYXNzKCJjb2xwaWNrX3NsaWRlciIpLmZpbmQoImlucHV0IikuZm9jdXMoKSx0KGRvY3VtZW50KS5vZmYoIm1vdXNldXAiLHYpLHQoZG9jdW1lbnQpLm9mZigibW91c2Vtb3ZlIixoKSwhMX0sZz1mdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0P2UucHJldmVudERlZmF1bHQoKTplLnJldHVyblZhbHVlPSExO3ZhciBpPXtjYWw6dCh0aGlzKS5wYXJlbnQoKSx5OnQodGhpcykub2Zmc2V0KCkudG9wfTt0KGRvY3VtZW50KS5vbigibW91c2V1cCB0b3VjaGVuZCIsaSxfKSx0KGRvY3VtZW50KS5vbigibW91c2Vtb3ZlIHRvdWNobW92ZSIsaSxrKTt2YXIgYT0idG91Y2hzdGFydCI9PWUudHlwZT9lLm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXNbMF0ucGFnZVk6ZS5wYWdlWTtyZXR1cm4gcy5hcHBseShpLmNhbC5kYXRhKCJjb2xwaWNrIikuZmllbGRzLmVxKDQpLnZhbChwYXJzZUludCgzNjAqKGkuY2FsLmRhdGEoImNvbHBpY2siKS5oZWlnaHQtKGEtaS55KSkvaS5jYWwuZGF0YSgiY29scGljayIpLmhlaWdodCwxMCkpLmdldCgwKSxbaS5jYWwuZGF0YSgiY29scGljayIpLmxpdmVQcmV2aWV3XSksITF9LGs9ZnVuY3Rpb24odCl7dmFyIGU9InRvdWNobW92ZSI9PXQudHlwZT90Lm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXNbMF0ucGFnZVk6dC5wYWdlWTtyZXR1cm4gcy5hcHBseSh0LmRhdGEuY2FsLmRhdGEoImNvbHBpY2siKS5maWVsZHMuZXEoNCkudmFsKHBhcnNlSW50KDM2MCoodC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LU1hdGgubWF4KDAsTWF0aC5taW4odC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LGUtdC5kYXRhLnkpKSkvdC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LDEwKSkuZ2V0KDApLFt0LmRhdGEucHJldmlld10pLCExfSxfPWZ1bmN0aW9uKGUpe3JldHVybiBhKGUuZGF0YS5jYWwuZGF0YSgiY29scGljayIpLmNvbG9yLGUuZGF0YS5jYWwuZ2V0KDApKSxjKGUuZGF0YS5jYWwuZGF0YSgiY29scGljayIpLmNvbG9yLGUuZGF0YS5jYWwuZ2V0KDApKSx0KGRvY3VtZW50KS5vZmYoIm1vdXNldXAgdG91Y2hlbmQiLF8pLHQoZG9jdW1lbnQpLm9mZigibW91c2Vtb3ZlIHRvdWNobW92ZSIsayksITF9LG09ZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMTt2YXIgaSxhLG89e2NhbDp0KHRoaXMpLnBhcmVudCgpLHBvczp0KHRoaXMpLm9mZnNldCgpfTtyZXR1cm4gby5wcmV2aWV3PW8uY2FsLmRhdGEoImNvbHBpY2siKS5saXZlUHJldmlldyx0KGRvY3VtZW50KS5vbigibW91c2V1cCB0b3VjaGVuZCIsbyx5KSx0KGRvY3VtZW50KS5vbigibW91c2Vtb3ZlIHRvdWNobW92ZSIsbyxiKSwidG91Y2hzdGFydCI9PWUudHlwZT8oaT1lLm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXNbMF0ucGFnZVgsYT1lLm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXNbMF0ucGFnZVkpOihpPWUucGFnZVgsYT1lLnBhZ2VZKSxzLmFwcGx5KG8uY2FsLmRhdGEoImNvbHBpY2siKS5maWVsZHMuZXEoNikudmFsKHBhcnNlSW50KDEwMCooby5jYWwuZGF0YSgiY29scGljayIpLmhlaWdodC0oYS1vLnBvcy50b3ApKS9vLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LDEwKSkuZW5kKCkuZXEoNSkudmFsKHBhcnNlSW50KDEwMCooaS1vLnBvcy5sZWZ0KS9vLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LDEwKSkuZ2V0KDApLFtvLnByZXZpZXddKSwhMX0sYj1mdW5jdGlvbih0KXt2YXIgZSxpO3JldHVybiJ0b3VjaG1vdmUiPT10LnR5cGU/KGU9dC5vcmlnaW5hbEV2ZW50LmNoYW5nZWRUb3VjaGVzWzBdLnBhZ2VYLGk9dC5vcmlnaW5hbEV2ZW50LmNoYW5nZWRUb3VjaGVzWzBdLnBhZ2VZKTooZT10LnBhZ2VYLGk9dC5wYWdlWSkscy5hcHBseSh0LmRhdGEuY2FsLmRhdGEoImNvbHBpY2siKS5maWVsZHMuZXEoNikudmFsKHBhcnNlSW50KDEwMCoodC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LU1hdGgubWF4KDAsTWF0aC5taW4odC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LGktdC5kYXRhLnBvcy50b3ApKSkvdC5kYXRhLmNhbC5kYXRhKCJjb2xwaWNrIikuaGVpZ2h0LDEwKSkuZW5kKCkuZXEoNSkudmFsKHBhcnNlSW50KDEwMCpNYXRoLm1heCgwLE1hdGgubWluKHQuZGF0YS5jYWwuZGF0YSgiY29scGljayIpLmhlaWdodCxlLXQuZGF0YS5wb3MubGVmdCkpL3QuZGF0YS5jYWwuZGF0YSgiY29scGljayIpLmhlaWdodCwxMCkpLmdldCgwKSxbdC5kYXRhLnByZXZpZXddKSwhMX0seT1mdW5jdGlvbihlKXtyZXR1cm4gYShlLmRhdGEuY2FsLmRhdGEoImNvbHBpY2siKS5jb2xvcixlLmRhdGEuY2FsLmdldCgwKSksYyhlLmRhdGEuY2FsLmRhdGEoImNvbHBpY2siKS5jb2xvcixlLmRhdGEuY2FsLmdldCgwKSksdChkb2N1bWVudCkub2ZmKCJtb3VzZXVwIHRvdWNoZW5kIix5KSx0KGRvY3VtZW50KS5vZmYoIm1vdXNlbW92ZSB0b3VjaG1vdmUiLGIpLCExfSx4PWZ1bmN0aW9uKGUpe3ZhciBpPXQodGhpcykucGFyZW50KCksYT1pLmRhdGEoImNvbHBpY2siKS5jb2xvcjtpLmRhdGEoImNvbHBpY2siKS5vcmlnQ29sb3I9YSxuKGEsaS5nZXQoMCkpLGkuZGF0YSgiY29scGljayIpLm9uU3VibWl0KGEseihhKSxOKGEpLGkuZGF0YSgiY29scGljayIpLmVsKX0sdz1mdW5jdGlvbihlKXtlJiZlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBpPXQoIiMiK3QodGhpcykuZGF0YSgiY29scGlja0lkIikpO2UmJiFpLmRhdGEoImNvbHBpY2siKS5wb2x5ZmlsbCYmZS5wcmV2ZW50RGVmYXVsdCgpLGkuZGF0YSgiY29scGljayIpLm9uQmVmb3JlU2hvdy5hcHBseSh0aGlzLFtpLmdldCgwKV0pO3ZhciBhPXQodGhpcykub2Zmc2V0KCksbz1hLnRvcCt0aGlzLm9mZnNldEhlaWdodCxjPWEubGVmdCxsPU0oKSxyPWkud2lkdGgoKTtjK3I+bC5sK2wudyYmKGMtPXIpLGkuY3NzKHtsZWZ0OmMrInB4Iix0b3A6bysicHgifSksMCE9aS5kYXRhKCJjb2xwaWNrIikub25TaG93LmFwcGx5KHRoaXMsW2kuZ2V0KDApXSkmJmkuc2hvdygpLHQoImh0bWwiKS5tb3VzZWRvd24oe2NhbDppfSxJKSxpLm1vdXNlZG93bigoZnVuY3Rpb24odCl7dC5zdG9wUHJvcGFnYXRpb24oKX0pKX0sST1mdW5jdGlvbihlKXt2YXIgaT10KCIjIit0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpKTtlJiYoaT1lLmRhdGEuY2FsKSwwIT1pLmRhdGEoImNvbHBpY2siKS5vbkhpZGUuYXBwbHkodGhpcyxbaS5nZXQoMCldKSYmaS5oaWRlKCksdCgiaHRtbCIpLm9mZigibW91c2Vkb3duIixJKX0sTT1mdW5jdGlvbigpe3ZhciB0PSJDU1MxQ29tcGF0Ij09ZG9jdW1lbnQuY29tcGF0TW9kZTtyZXR1cm57bDp3aW5kb3cucGFnZVhPZmZzZXR8fCh0P2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0OmRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCksdzp3aW5kb3cuaW5uZXJXaWR0aHx8KHQ/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOmRvY3VtZW50LmJvZHkuY2xpZW50V2lkdGgpfX0sQz1mdW5jdGlvbih0KXtyZXR1cm57aDpNYXRoLm1pbigzNjAsTWF0aC5tYXgoMCx0LmgpKSxzOk1hdGgubWluKDEwMCxNYXRoLm1heCgwLHQucykpLGI6TWF0aC5taW4oMTAwLE1hdGgubWF4KDAsdC5iKSl9fSxxPWZ1bmN0aW9uKHQpe3JldHVybntyOk1hdGgubWluKDI1NSxNYXRoLm1heCgwLHQucikpLGc6TWF0aC5taW4oMjU1LE1hdGgubWF4KDAsdC5nKSksYjpNYXRoLm1pbigyNTUsTWF0aC5tYXgoMCx0LmIpKX19LFQ9ZnVuY3Rpb24odCl7dmFyIGU9Ni10Lmxlbmd0aDtpZigzPT1lKXtmb3IodmFyIGk9W10sYT0wO2E8ZTthKyspaS5wdXNoKHRbYV0pLGkucHVzaCh0W2FdKTt0PWkuam9pbigiIil9ZWxzZSBpZihlPjApe2Zvcih2YXIgbz1bXSxjPTA7YzxlO2MrKylvLnB1c2goIjAiKTtvLnB1c2godCksdD1vLmpvaW4oIiIpfXJldHVybiB0fSxlPTAsUz1mdW5jdGlvbigpe3JldHVybiBlKz0xfSxFPWZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKS5wYXJlbnQoKSxpPWUuZGF0YSgiY29scGljayIpLm9yaWdDb2xvcjtlLmRhdGEoImNvbHBpY2siKS5jb2xvcj1pLGEoaSxlLmdldCgwKSksYyhpLGUuZ2V0KDApKSxvKGksZS5nZXQoMCkpLGwoaSxlLmdldCgwKSkscihpLGUuZ2V0KDApKSxkKGksZS5nZXQoMCkpfSx7aW5pdDpmdW5jdGlvbihlKXtpZigic3RyaW5nIj09dHlwZW9mKGU9dC5leHRlbmQoe30saSxlfHx7fSkpLmNvbG9yKWUuY29sb3I9WShlLmNvbG9yKTtlbHNlIGlmKG51bGwhPWUuY29sb3IuciYmbnVsbCE9ZS5jb2xvci5nJiZudWxsIT1lLmNvbG9yLmIpZS5jb2xvcj1IKGUuY29sb3IpO2Vsc2V7aWYobnVsbD09ZS5jb2xvci5ofHxudWxsPT1lLmNvbG9yLnN8fG51bGw9PWUuY29sb3IuYilyZXR1cm4gdGhpcztlLmNvbG9yPUMoZS5jb2xvcil9cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtpZighdCh0aGlzKS5kYXRhKCJjb2xwaWNrSWQiKSl7dmFyIGk9dC5leHRlbmQoe30sZSk7aWYoaS5vcmlnQ29sb3I9ZS5jb2xvciwiZnVuY3Rpb24iPT10eXBlb2YgZS5wb2x5ZmlsbCYmKGkucG9seWZpbGw9ZS5wb2x5ZmlsbCh0aGlzKSksaS5pbnB1dD10KHRoaXMpLmlzKCJpbnB1dCIpLGkucG9seWZpbGwmJmkuaW5wdXQmJiJjb2xvciI9PT10aGlzLnR5cGUpcmV0dXJuO3ZhciBoPSJjb2xvcnBpY2tlcl8iK1MoKTt0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIsaCk7dmFyIHY9dCgnPGRpdiBjbGFzcz0iY29scGljayI+PGRpdiBjbGFzcz0iY29scGlja19jb2xvciI+PGRpdiBjbGFzcz0iY29scGlja19jb2xvcl9vdmVybGF5MSI+PGRpdiBjbGFzcz0iY29scGlja19jb2xvcl9vdmVybGF5MiI+PGRpdiBjbGFzcz0iY29scGlja19zZWxlY3Rvcl9vdXRlciI+PGRpdiBjbGFzcz0iY29scGlja19zZWxlY3Rvcl9pbm5lciI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19odWUiPjxkaXYgY2xhc3M9ImNvbHBpY2tfaHVlX2FycnMiPjxkaXYgY2xhc3M9ImNvbHBpY2tfaHVlX2xhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfaHVlX3JhcnIiPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfbmV3X2NvbG9yIj48L2Rpdj48ZGl2IGNsYXNzPSJjb2xwaWNrX2N1cnJlbnRfY29sb3IiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfaGV4X2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+IzwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjYiIHNpemU9IjYiIC8+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19yZ2JfciBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+UjwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19yZ2JfZyBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+RzwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19yZ2JfYiBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+QjwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19oc2JfaCBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+SDwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19oc2JfcyBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+UzwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19oc2JfYiBjb2xwaWNrX2ZpZWxkIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX2xldHRlciI+QjwvZGl2PjxpbnB1dCB0eXBlPSJ0ZXh0IiBtYXhsZW5ndGg9IjMiIHNpemU9IjMiIC8+PGRpdiBjbGFzcz0iY29scGlja19maWVsZF9hcnJzIj48ZGl2IGNsYXNzPSJjb2xwaWNrX2ZpZWxkX3VhcnIiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbHBpY2tfZmllbGRfZGFyciI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29scGlja19zdWJtaXQiPjwvZGl2PjwvZGl2PicpLmF0dHIoImlkIixoKTt2LmFkZENsYXNzKCJjb2xwaWNrXyIraS5sYXlvdXQrKGkuc3VibWl0PyIiOiIgY29scGlja18iK2kubGF5b3V0KyJfbnMiKSksImxpZ2h0IiE9aS5jb2xvclNjaGVtZSYmdi5hZGRDbGFzcygiY29scGlja18iK2kuY29sb3JTY2hlbWUpLHYuZmluZCgiZGl2LmNvbHBpY2tfc3VibWl0IikuaHRtbChpLnN1Ym1pdFRleHQpLmNsaWNrKHgpLGkuZmllbGRzPXYuZmluZCgiaW5wdXQiKS5jaGFuZ2UocykuYmx1cihwKS5mb2N1cyh1KSx2LmZpbmQoImRpdi5jb2xwaWNrX2ZpZWxkX2FycnMiKS5tb3VzZWRvd24oZikuZW5kKCkuZmluZCgiZGl2LmNvbHBpY2tfY3VycmVudF9jb2xvciIpLmNsaWNrKEUpLGkuc2VsZWN0b3I9di5maW5kKCJkaXYuY29scGlja19jb2xvciIpLm9uKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsbSksaS5zZWxlY3RvckluZGljPWkuc2VsZWN0b3IuZmluZCgiZGl2LmNvbHBpY2tfc2VsZWN0b3Jfb3V0ZXIiKSxpLmVsPXRoaXMsaS5odWU9di5maW5kKCJkaXYuY29scGlja19odWVfYXJycyIpO3ZhciBrPWkuaHVlLnBhcmVudCgpLF89bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLGI9Ik1pY3Jvc29mdCBJbnRlcm5ldCBFeHBsb3JlciI9PT1uYXZpZ2F0b3IuYXBwTmFtZSx5PWI/cGFyc2VGbG9hdChfLm1hdGNoKC9tc2llIChbMC05XXsxLH1bXC4wLTldezAsfSkvKVsxXSk6MCxJPVsiI2ZmMDAwMCIsIiNmZjAwODAiLCIjZmYwMGZmIiwiIzgwMDBmZiIsIiMwMDAwZmYiLCIjMDA4MGZmIiwiIzAwZmZmZiIsIiMwMGZmODAiLCIjMDBmZjAwIiwiIzgwZmYwMCIsIiNmZmZmMDAiLCIjZmY4MDAwIiwiI2ZmMDAwMCJdO2lmKGImJnk8MTApe3ZhciBNLEM7Zm9yKE09MDtNPD0xMTtNKyspQz10KCI8ZGl2PjwvZGl2PiIpLmF0dHIoInN0eWxlIiwiaGVpZ2h0OjguMzMzMzMzJTsgZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxzdGFydENvbG9yc3RyPSIrSVtNXSsiLCBlbmRDb2xvcnN0cj0iK0lbTSsxXSsnKTsgLW1zLWZpbHRlcjogInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxzdGFydENvbG9yc3RyPScrSVtNXSsiLCBlbmRDb2xvcnN0cj0iK0lbTSsxXSsnKSI7Jyksay5hcHBlbmQoQyl9ZWxzZXt2YXIgcT1JLmpvaW4oIiwiKTtrLmF0dHIoInN0eWxlIiwiYmFja2dyb3VuZDotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIitxKyIpOyBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCIrcSsiKTsgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIitxKyIpOyBiYWNrZ3JvdW5kOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwiK3ErIik7IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwiK3ErIik7IGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwiK3ErIik7ICIpfXYuZmluZCgiZGl2LmNvbHBpY2tfaHVlIikub24oIm1vdXNlZG93biB0b3VjaHN0YXJ0IixnKSxpLm5ld0NvbG9yPXYuZmluZCgiZGl2LmNvbHBpY2tfbmV3X2NvbG9yIiksaS5jdXJyZW50Q29sb3I9di5maW5kKCJkaXYuY29scGlja19jdXJyZW50X2NvbG9yIiksdi5kYXRhKCJjb2xwaWNrIixpKSxhKGkuY29sb3Isdi5nZXQoMCkpLG8oaS5jb2xvcix2LmdldCgwKSksYyhpLmNvbG9yLHYuZ2V0KDApKSxyKGkuY29sb3Isdi5nZXQoMCkpLGwoaS5jb2xvcix2LmdldCgwKSksbihpLmNvbG9yLHYuZ2V0KDApKSxkKGkuY29sb3Isdi5nZXQoMCkpLGkuZmxhdD8odi5hcHBlbmRUbyh0aGlzKS5zaG93KCksdi5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIsZGlzcGxheToiYmxvY2sifSkpOih2LmFwcGVuZFRvKHQodGhpcykucGFyZW50KCkpLHQodGhpcykub24oaS5zaG93RXZlbnQsdyksdi5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSJ9KSl9fSkpfSxzaG93UGlja2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXt0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpJiZ3LmFwcGx5KHRoaXMpfSkpfSxoaWRlUGlja2VyOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXt0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpJiZJLmFwcGx5KHRoaXMpfSkpfSxzZXRDb2xvcjpmdW5jdGlvbihlLGkpe2lmKG51bGwhPWUpe2lmKGk9dm9pZCAwPT09aT8xOmksInN0cmluZyI9PXR5cGVvZiBlKWU9WShlKTtlbHNlIGlmKG51bGwhPWUuciYmbnVsbCE9ZS5nJiZudWxsIT1lLmIpZT1IKGUpO2Vsc2V7aWYobnVsbD09ZS5ofHxudWxsPT1lLnN8fG51bGw9PWUuYilyZXR1cm4gdGhpcztlPUMoZSl9cmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtpZih0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpKXt2YXIgcz10KCIjIit0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpKTtzLmRhdGEoImNvbHBpY2siKS5jb2xvcj1lLHMuZGF0YSgiY29scGljayIpLm9yaWdDb2xvcj1lLGEoZSxzLmdldCgwKSksbyhlLHMuZ2V0KDApKSxjKGUscy5nZXQoMCkpLHIoZSxzLmdldCgwKSksbChlLHMuZ2V0KDApKSxkKGUscy5nZXQoMCkpLHMuZGF0YSgiY29scGljayIpLm9uQ2hhbmdlLmFwcGx5KHMucGFyZW50KCksW2UseihlKSxOKGUpLHMuZGF0YSgiY29scGljayIpLmVsLDFdKSxpJiZuKGUscy5nZXQoMCkpfX0pKX19LGRlc3Ryb3k6ZnVuY3Rpb24oZSxpKXt0KCIjIit0KHRoaXMpLmRhdGEoImNvbHBpY2tJZCIpKS5yZW1vdmUoKX19KSxQPWZ1bmN0aW9uKHQpe3JldHVybntyOih0PXBhcnNlSW50KHQuaW5kZXhPZigiIyIpPi0xP3Quc3Vic3RyaW5nKDEpOnQsMTYpKT4+MTYsZzooNjUyODAmdCk+PjgsYjoyNTUmdH19LFk9ZnVuY3Rpb24odCl7cmV0dXJuIEgoUCh0KSl9LEg9ZnVuY3Rpb24odCl7dmFyIGU9e2g6MCxzOjAsYjowfSxpPU1hdGgubWluKHQucix0LmcsdC5iKSxhPU1hdGgubWF4KHQucix0LmcsdC5iKSxvPWEtaTtyZXR1cm4gZS5iPWEsZS5zPTAhPWE/MjU1Km8vYTowLDAhPWUucz90LnI9PWE/ZS5oPSh0LmctdC5iKS9vOnQuZz09YT9lLmg9MisodC5iLXQucikvbzplLmg9NCsodC5yLXQuZykvbzplLmg9LTEsZS5oKj02MCxlLmg8MCYmKGUuaCs9MzYwKSxlLnMqPTEwMC8yNTUsZS5iKj0xMDAvMjU1LGV9LE49ZnVuY3Rpb24odCl7dmFyIGU9e30saT10LmgsYT0yNTUqdC5zLzEwMCxvPTI1NSp0LmIvMTAwO2lmKDA9PWEpZS5yPWUuZz1lLmI9bztlbHNle3ZhciBjPW8sbD0oMjU1LWEpKm8vMjU1LHI9aSU2MCooYy1sKS82MDszNjA9PWkmJihpPTApLGk8NjA/KGUucj1jLGUuYj1sLGUuZz1sK3IpOmk8MTIwPyhlLmc9YyxlLmI9bCxlLnI9Yy1yKTppPDE4MD8oZS5nPWMsZS5yPWwsZS5iPWwrcik6aTwyNDA/KGUuYj1jLGUucj1sLGUuZz1jLXIpOmk8MzAwPyhlLmI9YyxlLmc9bCxlLnI9bCtyKTppPDM2MD8oZS5yPWMsZS5nPWwsZS5iPWMtcik6KGUucj0wLGUuZz0wLGUuYj0wKX1yZXR1cm57cjpNYXRoLnJvdW5kKGUuciksZzpNYXRoLnJvdW5kKGUuZyksYjpNYXRoLnJvdW5kKGUuYil9fSxqPWZ1bmN0aW9uKGUpe3ZhciBpPVtlLnIudG9TdHJpbmcoMTYpLGUuZy50b1N0cmluZygxNiksZS5iLnRvU3RyaW5nKDE2KV07cmV0dXJuIHQuZWFjaChpLChmdW5jdGlvbih0LGUpezE9PWUubGVuZ3RoJiYoaVt0XT0iMCIrZSl9KSksaS5qb2luKCIiKX0sej1mdW5jdGlvbih0KXtyZXR1cm4gaihOKHQpKX07dC5mbi5leHRlbmQoe2NvbHBpY2s6RC5pbml0LGNvbHBpY2tIaWRlOkQuaGlkZVBpY2tlcixjb2xwaWNrU2hvdzpELnNob3dQaWNrZXIsY29scGlja1NldENvbG9yOkQuc2V0Q29sb3IsY29scGlja0Rlc3Ryb3k6RC5kZXN0cm95fSksdC5leHRlbmQoe2NvbHBpY2s6e3JnYlRvSGV4OmoscmdiVG9Ic2I6SCxoc2JUb0hleDp6LGhzYlRvUmdiOk4saGV4VG9Ic2I6WSxoZXhUb1JnYjpQfX0pfSkpOw0KDQoNCg0KLyoNCiAqIGpRdWVyeSB0aW1lcGlja2VyIGFkZG9uDQogKiBCeTogVHJlbnQgUmljaGFyZHNvbiBbaHR0cDovL3RyZW50cmljaGFyZHNvbi5jb21dDQogKiBWZXJzaW9uIDEuMS4xDQogKiBMYXN0IE1vZGlmaWVkOiAxMS8wNy8yMDEyDQogKg0KICogQ29weXJpZ2h0IDIwMTIgVHJlbnQgUmljaGFyZHNvbg0KICogWW91IG1heSB1c2UgdGhpcyBwcm9qZWN0IHVuZGVyIE1JVCBvciBHUEwgbGljZW5zZXMuDQogKiBodHRwOi8vdHJlbnRyaWNoYXJkc29uLmNvbS9JbXByb21wdHUvR1BMLUxJQ0VOU0UudHh0DQogKiBodHRwOi8vdHJlbnRyaWNoYXJkc29uLmNvbS9JbXByb21wdHUvTUlULUxJQ0VOU0UudHh0DQogKi8NCihmdW5jdGlvbigkKXtpZigkLnVpLnRpbWVwaWNrZXI9JC51aS50aW1lcGlja2VyfHx7fSwhJC51aS50aW1lcGlja2VyLnZlcnNpb24peyQuZXh0ZW5kKCQudWkse3RpbWVwaWNrZXI6e3ZlcnNpb246IjEuMS4xIn19KSwkLmV4dGVuZChUaW1lcGlja2VyLnByb3RvdHlwZSx7JGlucHV0Om51bGwsJGFsdElucHV0Om51bGwsJHRpbWVPYmo6bnVsbCxpbnN0Om51bGwsaG91cl9zbGlkZXI6bnVsbCxtaW51dGVfc2xpZGVyOm51bGwsc2Vjb25kX3NsaWRlcjpudWxsLG1pbGxpc2VjX3NsaWRlcjpudWxsLHRpbWV6b25lX3NlbGVjdDpudWxsLGhvdXI6MCxtaW51dGU6MCxzZWNvbmQ6MCxtaWxsaXNlYzowLHRpbWV6b25lOm51bGwsZGVmYXVsdFRpbWV6b25lOiIrMDAwMCIsaG91ck1pbk9yaWdpbmFsOm51bGwsbWludXRlTWluT3JpZ2luYWw6bnVsbCxzZWNvbmRNaW5PcmlnaW5hbDpudWxsLG1pbGxpc2VjTWluT3JpZ2luYWw6bnVsbCxob3VyTWF4T3JpZ2luYWw6bnVsbCxtaW51dGVNYXhPcmlnaW5hbDpudWxsLHNlY29uZE1heE9yaWdpbmFsOm51bGwsbWlsbGlzZWNNYXhPcmlnaW5hbDpudWxsLGFtcG06IiIsZm9ybWF0dGVkRGF0ZToiIixmb3JtYXR0ZWRUaW1lOiIiLGZvcm1hdHRlZERhdGVUaW1lOiIiLHRpbWV6b25lTGlzdDpudWxsLHVuaXRzOlsiaG91ciIsIm1pbnV0ZSIsInNlY29uZCIsIm1pbGxpc2VjIl0sY29udHJvbDpudWxsLHNldERlZmF1bHRzOmZ1bmN0aW9uKGUpe3JldHVybiBleHRlbmRSZW1vdmUodGhpcy5fZGVmYXVsdHMsZXx8e30pLHRoaXN9LF9uZXdJbnN0OmZ1bmN0aW9uKCRpbnB1dCxvKXt2YXIgdHBfaW5zdD1uZXcgVGltZXBpY2tlcixpbmxpbmVTZXR0aW5ncz17fSxmbnM9e30sb3ZlcnJpZGVzLGk7Zm9yKHZhciBhdHRyTmFtZSBpbiB0aGlzLl9kZWZhdWx0cylpZih0aGlzLl9kZWZhdWx0cy5oYXNPd25Qcm9wZXJ0eShhdHRyTmFtZSkpe3ZhciBhdHRyVmFsdWU9JGlucHV0LmF0dHIoInRpbWU6IithdHRyTmFtZSk7aWYoYXR0clZhbHVlKXRyeXtpbmxpbmVTZXR0aW5nc1thdHRyTmFtZV09ZXZhbChhdHRyVmFsdWUpfWNhdGNoKGUpe2lubGluZVNldHRpbmdzW2F0dHJOYW1lXT1hdHRyVmFsdWV9fWZvcihpIGluIG92ZXJyaWRlcz17YmVmb3JlU2hvdzpmdW5jdGlvbihlLHQpe2lmKCQuaXNGdW5jdGlvbih0cF9pbnN0Ll9kZWZhdWx0cy5ldm50cy5iZWZvcmVTaG93KSlyZXR1cm4gdHBfaW5zdC5fZGVmYXVsdHMuZXZudHMuYmVmb3JlU2hvdy5jYWxsKCRpbnB1dFswXSxlLHQsdHBfaW5zdCl9LG9uQ2hhbmdlTW9udGhZZWFyOmZ1bmN0aW9uKGUsdCxpKXt0cF9pbnN0Ll91cGRhdGVEYXRlVGltZShpKSwkLmlzRnVuY3Rpb24odHBfaW5zdC5fZGVmYXVsdHMuZXZudHMub25DaGFuZ2VNb250aFllYXIpJiZ0cF9pbnN0Ll9kZWZhdWx0cy5ldm50cy5vbkNoYW5nZU1vbnRoWWVhci5jYWxsKCRpbnB1dFswXSxlLHQsaSx0cF9pbnN0KX0sb25DbG9zZTpmdW5jdGlvbihlLHQpeyEwPT09dHBfaW5zdC50aW1lRGVmaW5lZCYmIiIhPT0kaW5wdXQudmFsKCkmJnRwX2luc3QuX3VwZGF0ZURhdGVUaW1lKHQpLCQuaXNGdW5jdGlvbih0cF9pbnN0Ll9kZWZhdWx0cy5ldm50cy5vbkNsb3NlKSYmdHBfaW5zdC5fZGVmYXVsdHMuZXZudHMub25DbG9zZS5jYWxsKCRpbnB1dFswXSxlLHQsdHBfaW5zdCl9fSxvdmVycmlkZXMpb3ZlcnJpZGVzLmhhc093blByb3BlcnR5KGkpJiYoZm5zW2ldPW9baV18fG51bGwpO2lmKHRwX2luc3QuX2RlZmF1bHRzPSQuZXh0ZW5kKHt9LHRoaXMuX2RlZmF1bHRzLGlubGluZVNldHRpbmdzLG8sb3ZlcnJpZGVzLHtldm50czpmbnMsdGltZXBpY2tlcjp0cF9pbnN0fSksdHBfaW5zdC5hbU5hbWVzPSQubWFwKHRwX2luc3QuX2RlZmF1bHRzLmFtTmFtZXMsKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRvVXBwZXJDYXNlKCl9KSksdHBfaW5zdC5wbU5hbWVzPSQubWFwKHRwX2luc3QuX2RlZmF1bHRzLnBtTmFtZXMsKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRvVXBwZXJDYXNlKCl9KSksInN0cmluZyI9PXR5cGVvZiB0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZT8odm9pZCAwPT09JC5mblt0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZV0mJih0cF9pbnN0Ll9kZWZhdWx0cy5jb250cm9sVHlwZT0ic2VsZWN0IiksdHBfaW5zdC5jb250cm9sPXRwX2luc3QuX2NvbnRyb2xzW3RwX2luc3QuX2RlZmF1bHRzLmNvbnRyb2xUeXBlXSk6dHBfaW5zdC5jb250cm9sPXRwX2luc3QuX2RlZmF1bHRzLmNvbnRyb2xUeXBlLG51bGw9PT10cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUxpc3Qpe3ZhciB0aW1lem9uZUxpc3Q9WyItMTIwMCIsIi0xMTAwIiwiLTEwMDAiLCItMDkzMCIsIi0wOTAwIiwiLTA4MDAiLCItMDcwMCIsIi0wNjAwIiwiLTA1MDAiLCItMDQzMCIsIi0wNDAwIiwiLTAzMzAiLCItMDMwMCIsIi0wMjAwIiwiLTAxMDAiLCIrMDAwMCIsIiswMTAwIiwiKzAyMDAiLCIrMDMwMCIsIiswMzMwIiwiKzA0MDAiLCIrMDQzMCIsIiswNTAwIiwiKzA1MzAiLCIrMDU0NSIsIiswNjAwIiwiKzA2MzAiLCIrMDcwMCIsIiswODAwIiwiKzA4NDUiLCIrMDkwMCIsIiswOTMwIiwiKzEwMDAiLCIrMTAzMCIsIisxMTAwIiwiKzExMzAiLCIrMTIwMCIsIisxMjQ1IiwiKzEzMDAiLCIrMTQwMCJdO3RwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lSXNvODYwMSYmKHRpbWV6b25lTGlzdD0kLm1hcCh0aW1lem9uZUxpc3QsKGZ1bmN0aW9uKGUpe3JldHVybiIrMDAwMCI9PWU/IloiOmUuc3Vic3RyaW5nKDAsMykrIjoiK2Uuc3Vic3RyaW5nKDMpfSkpKSx0cF9pbnN0Ll9kZWZhdWx0cy50aW1lem9uZUxpc3Q9dGltZXpvbmVMaXN0fXJldHVybiB0cF9pbnN0LnRpbWV6b25lPXRwX2luc3QuX2RlZmF1bHRzLnRpbWV6b25lLHRwX2luc3QuaG91cj10cF9pbnN0Ll9kZWZhdWx0cy5ob3VyLHRwX2luc3QubWludXRlPXRwX2luc3QuX2RlZmF1bHRzLm1pbnV0ZSx0cF9pbnN0LnNlY29uZD10cF9pbnN0Ll9kZWZhdWx0cy5zZWNvbmQsdHBfaW5zdC5taWxsaXNlYz10cF9pbnN0Ll9kZWZhdWx0cy5taWxsaXNlYyx0cF9pbnN0LmFtcG09IiIsdHBfaW5zdC4kaW5wdXQ9JGlucHV0LG8uYWx0RmllbGQmJih0cF9pbnN0LiRhbHRJbnB1dD0kKG8uYWx0RmllbGQpLmNzcyh7Y3Vyc29yOiJwb2ludGVyIn0pLmZvY3VzKChmdW5jdGlvbigpeyRpbnB1dC50cmlnZ2VyKCJmb2N1cyIpfSkpKSwwIT09dHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZSYmMCE9PXRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGVUaW1lfHwodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZT1uZXcgRGF0ZSksMCE9PXRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUmJjAhPT10cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlVGltZXx8KHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGU9bmV3IERhdGUpLHZvaWQgMCE9PXRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGUmJnRwX2luc3QuX2RlZmF1bHRzLm1pbkRhdGUgaW5zdGFuY2VvZiBEYXRlJiYodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWU9bmV3IERhdGUodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZS5nZXRUaW1lKCkpKSx2b2lkIDAhPT10cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZSYmdHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZVRpbWUgaW5zdGFuY2VvZiBEYXRlJiYodHBfaW5zdC5fZGVmYXVsdHMubWluRGF0ZT1uZXcgRGF0ZSh0cF9pbnN0Ll9kZWZhdWx0cy5taW5EYXRlVGltZS5nZXRUaW1lKCkpKSx2b2lkIDAhPT10cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlJiZ0cF9pbnN0Ll9kZWZhdWx0cy5tYXhEYXRlIGluc3RhbmNlb2YgRGF0ZSYmKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGVUaW1lPW5ldyBEYXRlKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGUuZ2V0VGltZSgpKSksdm9pZCAwIT09dHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWUmJnRwX2luc3QuX2RlZmF1bHRzLm1heERhdGVUaW1lIGluc3RhbmNlb2YgRGF0ZSYmKHRwX2luc3QuX2RlZmF1bHRzLm1heERhdGU9bmV3IERhdGUodHBfaW5zdC5fZGVmYXVsdHMubWF4RGF0ZVRpbWUuZ2V0VGltZSgpKSksdHBfaW5zdC4kaW5wdXQuYmluZCgiZm9jdXMiLChmdW5jdGlvbigpe3RwX2luc3QuX29uRm9jdXMoKX0pKSx0cF9pbnN0fSxfYWRkVGltZVBpY2tlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzLiRhbHRJbnB1dCYmdGhpcy5fZGVmYXVsdHMuYWx0RmllbGRUaW1lT25seT90aGlzLiRpbnB1dC52YWwoKSsiICIrdGhpcy4kYWx0SW5wdXQudmFsKCk6dGhpcy4kaW5wdXQudmFsKCk7dGhpcy50aW1lRGVmaW5lZD10aGlzLl9wYXJzZVRpbWUodCksdGhpcy5fbGltaXRNaW5NYXhEYXRlVGltZShlLCExKSx0aGlzLl9pbmplY3RUaW1lUGlja2VyKCl9LF9wYXJzZVRpbWU6ZnVuY3Rpb24oZSx0KXtpZih0aGlzLmluc3R8fCh0aGlzLmluc3Q9JC5kYXRlcGlja2VyLl9nZXRJbnN0KHRoaXMuJGlucHV0WzBdKSksdHx8IXRoaXMuX2RlZmF1bHRzLnRpbWVPbmx5KXt2YXIgaT0kLmRhdGVwaWNrZXIuX2dldCh0aGlzLmluc3QsImRhdGVGb3JtYXQiKTt0cnl7dmFyIHM9cGFyc2VEYXRlVGltZUludGVybmFsKGksdGhpcy5fZGVmYXVsdHMudGltZUZvcm1hdCxlLCQuZGF0ZXBpY2tlci5fZ2V0Rm9ybWF0Q29uZmlnKHRoaXMuaW5zdCksdGhpcy5fZGVmYXVsdHMpO2lmKCFzLnRpbWVPYmopcmV0dXJuITE7JC5leHRlbmQodGhpcyxzLnRpbWVPYmopfWNhdGNoKHQpe3JldHVybiAkLmRhdGVwaWNrZXIubG9nKCJFcnJvciBwYXJzaW5nIHRoZSBkYXRlL3RpbWUgc3RyaW5nOiAiK3QrIlxuZGF0ZS90aW1lIHN0cmluZyA9ICIrZSsiXG50aW1lRm9ybWF0ID0gIit0aGlzLl9kZWZhdWx0cy50aW1lRm9ybWF0KyJcbmRhdGVGb3JtYXQgPSAiK2kpLCExfXJldHVybiEwfXZhciBhPSQuZGF0ZXBpY2tlci5wYXJzZVRpbWUodGhpcy5fZGVmYXVsdHMudGltZUZvcm1hdCxlLHRoaXMuX2RlZmF1bHRzKTtyZXR1cm4hIWEmJigkLmV4dGVuZCh0aGlzLGEpLCEwKX0sX2luamVjdFRpbWVQaWNrZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmluc3QuZHBEaXYsdD10aGlzLmluc3Quc2V0dGluZ3MsaT10aGlzLHM9IiIsYT0iIixuPXt9LHI9e30sbD1udWxsO2lmKDA9PT1lLmZpbmQoImRpdi51aS10aW1lcGlja2VyLWRpdiIpLmxlbmd0aCYmdC5zaG93VGltZXBpY2tlcil7Zm9yKHZhciBvPScgc3R5bGU9ImRpc3BsYXk6bm9uZTsiJyx1PSc8ZGl2IGNsYXNzPSJ1aS10aW1lcGlja2VyLWRpdicrKHQuaXNSVEw/IiB1aS10aW1lcGlja2VyLXJ0bCI6IiIpKyciPjxkbD48ZHQgY2xhc3M9InVpX3RwaWNrZXJfdGltZV9sYWJlbCInKyh0LnNob3dUaW1lPyIiOm8pKyI+Iit0LnRpbWVUZXh0Kyc8L2R0PjxkZCBjbGFzcz0idWlfdHBpY2tlcl90aW1lIicrKHQuc2hvd1RpbWU/IiI6bykrIj48L2RkPiIsZD0wLG09dGhpcy51bml0cy5sZW5ndGg7ZDxtO2QrKyl7aWYoYT0ocz10aGlzLnVuaXRzW2RdKS5zdWJzdHIoMCwxKS50b1VwcGVyQ2FzZSgpK3Muc3Vic3RyKDEpLG5bc109cGFyc2VJbnQodFtzKyJNYXgiXS0odFtzKyJNYXgiXS10W3MrIk1pbiJdKSV0WyJzdGVwIithXSwxMCkscltzXT0wLHUrPSc8ZHQgY2xhc3M9InVpX3RwaWNrZXJfJytzKydfbGFiZWwiJysodFsic2hvdyIrYV0/IiI6bykrIj4iK3RbcysiVGV4dCJdKyc8L2R0PjxkZCBjbGFzcz0idWlfdHBpY2tlcl8nK3MrJyI+PGRpdiBjbGFzcz0idWlfdHBpY2tlcl8nK3MrJ19zbGlkZXIiJysodFsic2hvdyIrYV0/IiI6bykrIj48L2Rpdj4iLHRbInNob3ciK2FdJiZ0W3MrIkdyaWQiXT4wKXtpZih1Kz0nPGRpdiBzdHlsZT0icGFkZGluZy1sZWZ0OiAxcHgiPjx0YWJsZSBjbGFzcz0idWktdHBpY2tlci1ncmlkLWxhYmVsIj48dHI+JywiaG91ciI9PXMpZm9yKHZhciBjPXRbcysiTWluIl07Yzw9bltzXTtjKz1wYXJzZUludCh0W3MrIkdyaWQiXSwxMCkpe3Jbc10rKzt2YXIgaD0kLmRhdGVwaWNrZXIuZm9ybWF0VGltZSh1c2VBbXBtKHQucGlja2VyVGltZUZvcm1hdHx8dC50aW1lRm9ybWF0KT8iaGh0IjoiSEgiLHtob3VyOmN9LHQpO3UrPSc8dGQgZGF0YS1mb3I9IicrcysnIj4nK2grIjwvdGQ+In1lbHNlIGZvcih2YXIgcD10W3MrIk1pbiJdO3A8PW5bc107cCs9cGFyc2VJbnQodFtzKyJHcmlkIl0sMTApKXJbc10rKyx1Kz0nPHRkIGRhdGEtZm9yPSInK3MrJyI+JysocDwxMD8iMCI6IiIpK3ArIjwvdGQ+Ijt1Kz0iPC90cj48L3RhYmxlPjwvZGl2PiJ9dSs9IjwvZGQ+In11Kz0nPGR0IGNsYXNzPSJ1aV90cGlja2VyX3RpbWV6b25lX2xhYmVsIicrKHQuc2hvd1RpbWV6b25lPyIiOm8pKyI+Iit0LnRpbWV6b25lVGV4dCsiPC9kdD4iLHUrPSc8ZGQgY2xhc3M9InVpX3RwaWNrZXJfdGltZXpvbmUiICcrKHQuc2hvd1RpbWV6b25lPyIiOm8pKyI+PC9kZD4iO3ZhciBmPSQodSs9IjwvZGw+PC9kaXY+Iik7ITA9PT10LnRpbWVPbmx5JiYoZi5wcmVwZW5kKCc8ZGl2IGNsYXNzPSJ1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItYWxsIj48ZGl2IGNsYXNzPSJ1aS1kYXRlcGlja2VyLXRpdGxlIj4nK3QudGltZU9ubHlUaXRsZSsiPC9kaXY+PC9kaXY+IiksZS5maW5kKCIudWktZGF0ZXBpY2tlci1oZWFkZXIsIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIikuaGlkZSgpKTtmb3IoZD0wLG09aS51bml0cy5sZW5ndGg7ZDxtO2QrKylhPShzPWkudW5pdHNbZF0pLnN1YnN0cigwLDEpLnRvVXBwZXJDYXNlKCkrcy5zdWJzdHIoMSksaVtzKyJfc2xpZGVyIl09aS5jb250cm9sLmNyZWF0ZShpLGYuZmluZCgiLnVpX3RwaWNrZXJfIitzKyJfc2xpZGVyIikscyxpW3NdLHRbcysiTWluIl0sbltzXSx0WyJzdGVwIithXSksdFsic2hvdyIrYV0mJnRbcysiR3JpZCJdPjAmJihsPTEwMCpyW3NdKnRbcysiR3JpZCJdLyhuW3NdLXRbcysiTWluIl0pLGYuZmluZCgiLnVpX3RwaWNrZXJfIitzKyIgdGFibGUiKS5jc3Moe3dpZHRoOmwrIiUiLG1hcmdpbkxlZnQ6dC5pc1JUTD8iMCI6bC8oLTIqcltzXSkrIiUiLG1hcmdpblJpZ2h0OnQuaXNSVEw/bC8oLTIqcltzXSkrIiUiOiIwIixib3JkZXJDb2xsYXBzZToiY29sbGFwc2UifSkuZmluZCgidGQiKS5jbGljaygoZnVuY3Rpb24oZSl7dmFyIHQ9JCh0aGlzKSxhPXQuaHRtbCgpLG49cGFyc2VJbnQoYS5yZXBsYWNlKC9bXjAtOV0vZyksMTApLHI9YS5yZXBsYWNlKC9bXmFwbV0vZ2kpLGw9dC5kYXRhKCJmb3IiKTsiaG91ciI9PWwmJigtMSE9PXIuaW5kZXhPZigicCIpJiZuPDEyP24rPTEyOi0xIT09ci5pbmRleE9mKCJhIikmJjEyPT09biYmKG49MCkpLGkuY29udHJvbC52YWx1ZShpLGlbbCsiX3NsaWRlciJdLHMsbiksaS5fb25UaW1lQ2hhbmdlKCksaS5fb25TZWxlY3RIYW5kbGVyKCl9KSkuY3NzKHtjdXJzb3I6InBvaW50ZXIiLHdpZHRoOjEwMC9yW3NdKyIlIix0ZXh0QWxpZ246ImNlbnRlciIsb3ZlcmZsb3c6ImhpZGRlbiJ9KSk7aWYodGhpcy50aW1lem9uZV9zZWxlY3Q9Zi5maW5kKCIudWlfdHBpY2tlcl90aW1lem9uZSIpLmFwcGVuZCgiPHNlbGVjdD48L3NlbGVjdD4iKS5maW5kKCJzZWxlY3QiKSwkLmZuLmFwcGVuZC5hcHBseSh0aGlzLnRpbWV6b25lX3NlbGVjdCwkLm1hcCh0LnRpbWV6b25lTGlzdCwoZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCgiPG9wdGlvbiAvPiIpLnZhbCgib2JqZWN0Ij09dHlwZW9mIGU/ZS52YWx1ZTplKS50ZXh0KCJvYmplY3QiPT10eXBlb2YgZT9lLmxhYmVsOmUpfSkpKSx2b2lkIDAhPT10aGlzLnRpbWV6b25lJiZudWxsIT09dGhpcy50aW1lem9uZSYmIiIhPT10aGlzLnRpbWV6b25lKXt2YXIgXz1uZXcgRGF0ZSh0aGlzLmluc3Quc2VsZWN0ZWRZZWFyLHRoaXMuaW5zdC5zZWxlY3RlZE1vbnRoLHRoaXMuaW5zdC5zZWxlY3RlZERheSwxMik7JC50aW1lcGlja2VyLnRpbWVab25lT2Zmc2V0U3RyaW5nKF8pPT10aGlzLnRpbWV6b25lP3NlbGVjdExvY2FsVGltZVpvbmUoaSk6dGhpcy50aW1lem9uZV9zZWxlY3QudmFsKHRoaXMudGltZXpvbmUpfWVsc2Ugdm9pZCAwIT09dGhpcy5ob3VyJiZudWxsIT09dGhpcy5ob3VyJiYiIiE9PXRoaXMuaG91cj90aGlzLnRpbWV6b25lX3NlbGVjdC52YWwodC5kZWZhdWx0VGltZXpvbmUpOnNlbGVjdExvY2FsVGltZVpvbmUoaSk7dGhpcy50aW1lem9uZV9zZWxlY3QuY2hhbmdlKChmdW5jdGlvbigpe2kuX2RlZmF1bHRzLnVzZUxvY2FsVGltZXpvbmU9ITEsaS5fb25UaW1lQ2hhbmdlKCl9KSk7dmFyIGc9ZS5maW5kKCIudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIik7aWYoZy5sZW5ndGg/Zy5iZWZvcmUoZik6ZS5hcHBlbmQoZiksdGhpcy4kdGltZU9iaj1mLmZpbmQoIi51aV90cGlja2VyX3RpbWUiKSxudWxsIT09dGhpcy5pbnN0KXt2YXIgdj10aGlzLnRpbWVEZWZpbmVkO3RoaXMuX29uVGltZUNoYW5nZSgpLHRoaXMudGltZURlZmluZWQ9dn1pZih0aGlzLl9kZWZhdWx0cy5hZGRTbGlkZXJBY2Nlc3Mpe3ZhciBrPXRoaXMuX2RlZmF1bHRzLnNsaWRlckFjY2Vzc0FyZ3MsVD10aGlzLl9kZWZhdWx0cy5pc1JUTDtrLmlzUlRMPVQsc2V0VGltZW91dCgoZnVuY3Rpb24oKXtpZigwPT09Zi5maW5kKCIudWktc2xpZGVyLWFjY2VzcyIpLmxlbmd0aCl7Zi5maW5kKCIudWktc2xpZGVyOnZpc2libGUiKS5zbGlkZXJBY2Nlc3Moayk7dmFyIGU9Zi5maW5kKCIudWktc2xpZGVyLWFjY2VzczplcSgwKSIpLm91dGVyV2lkdGgoITApO2UmJmYuZmluZCgidGFibGU6dmlzaWJsZSIpLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9JCh0aGlzKSxpPXQub3V0ZXJXaWR0aCgpLHM9dC5jc3MoVD8ibWFyZ2luUmlnaHQiOiJtYXJnaW5MZWZ0IikudG9TdHJpbmcoKS5yZXBsYWNlKCIlIiwiIiksYT1pLWUsbj1zKmEvaSsiJSIscj17d2lkdGg6YSxtYXJnaW5SaWdodDowLG1hcmdpbkxlZnQ6MH07cltUPyJtYXJnaW5SaWdodCI6Im1hcmdpbkxlZnQiXT1uLHQuY3NzKHIpfSkpfX0pLDEwKX19fSxfbGltaXRNaW5NYXhEYXRlVGltZTpmdW5jdGlvbihlLHQpe3ZhciBpPXRoaXMuX2RlZmF1bHRzLHM9bmV3IERhdGUoZS5zZWxlY3RlZFllYXIsZS5zZWxlY3RlZE1vbnRoLGUuc2VsZWN0ZWREYXkpO2lmKHRoaXMuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyKXtpZihudWxsIT09JC5kYXRlcGlja2VyLl9nZXQoZSwibWluRGF0ZVRpbWUiKSYmdm9pZCAwIT09JC5kYXRlcGlja2VyLl9nZXQoZSwibWluRGF0ZVRpbWUiKSYmcyl7dmFyIGE9JC5kYXRlcGlja2VyLl9nZXQoZSwibWluRGF0ZVRpbWUiKSxuPW5ldyBEYXRlKGEuZ2V0RnVsbFllYXIoKSxhLmdldE1vbnRoKCksYS5nZXREYXRlKCksMCwwLDAsMCk7bnVsbCE9PXRoaXMuaG91ck1pbk9yaWdpbmFsJiZudWxsIT09dGhpcy5taW51dGVNaW5PcmlnaW5hbCYmbnVsbCE9PXRoaXMuc2Vjb25kTWluT3JpZ2luYWwmJm51bGwhPT10aGlzLm1pbGxpc2VjTWluT3JpZ2luYWx8fCh0aGlzLmhvdXJNaW5PcmlnaW5hbD1pLmhvdXJNaW4sdGhpcy5taW51dGVNaW5PcmlnaW5hbD1pLm1pbnV0ZU1pbix0aGlzLnNlY29uZE1pbk9yaWdpbmFsPWkuc2Vjb25kTWluLHRoaXMubWlsbGlzZWNNaW5PcmlnaW5hbD1pLm1pbGxpc2VjTWluKSxlLnNldHRpbmdzLnRpbWVPbmx5fHxuLmdldFRpbWUoKT09cy5nZXRUaW1lKCk/KHRoaXMuX2RlZmF1bHRzLmhvdXJNaW49YS5nZXRIb3VycygpLHRoaXMuaG91cjw9dGhpcy5fZGVmYXVsdHMuaG91ck1pbj8odGhpcy5ob3VyPXRoaXMuX2RlZmF1bHRzLmhvdXJNaW4sdGhpcy5fZGVmYXVsdHMubWludXRlTWluPWEuZ2V0TWludXRlcygpLHRoaXMubWludXRlPD10aGlzLl9kZWZhdWx0cy5taW51dGVNaW4/KHRoaXMubWludXRlPXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbix0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW49YS5nZXRTZWNvbmRzKCksdGhpcy5zZWNvbmQ8PXRoaXMuX2RlZmF1bHRzLnNlY29uZE1pbj8odGhpcy5zZWNvbmQ9dGhpcy5fZGVmYXVsdHMuc2Vjb25kTWluLHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluPWEuZ2V0TWlsbGlzZWNvbmRzKCkpOih0aGlzLm1pbGxpc2VjPHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluJiYodGhpcy5taWxsaXNlYz10aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbiksdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNaW49dGhpcy5taWxsaXNlY01pbk9yaWdpbmFsKSk6KHRoaXMuX2RlZmF1bHRzLnNlY29uZE1pbj10aGlzLnNlY29uZE1pbk9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluPXRoaXMubWlsbGlzZWNNaW5PcmlnaW5hbCkpOih0aGlzLl9kZWZhdWx0cy5taW51dGVNaW49dGhpcy5taW51dGVNaW5PcmlnaW5hbCx0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW49dGhpcy5zZWNvbmRNaW5PcmlnaW5hbCx0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbj10aGlzLm1pbGxpc2VjTWluT3JpZ2luYWwpKToodGhpcy5fZGVmYXVsdHMuaG91ck1pbj10aGlzLmhvdXJNaW5PcmlnaW5hbCx0aGlzLl9kZWZhdWx0cy5taW51dGVNaW49dGhpcy5taW51dGVNaW5PcmlnaW5hbCx0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW49dGhpcy5zZWNvbmRNaW5PcmlnaW5hbCx0aGlzLl9kZWZhdWx0cy5taWxsaXNlY01pbj10aGlzLm1pbGxpc2VjTWluT3JpZ2luYWwpfWlmKG51bGwhPT0kLmRhdGVwaWNrZXIuX2dldChlLCJtYXhEYXRlVGltZSIpJiZ2b2lkIDAhPT0kLmRhdGVwaWNrZXIuX2dldChlLCJtYXhEYXRlVGltZSIpJiZzKXt2YXIgcj0kLmRhdGVwaWNrZXIuX2dldChlLCJtYXhEYXRlVGltZSIpLGw9bmV3IERhdGUoci5nZXRGdWxsWWVhcigpLHIuZ2V0TW9udGgoKSxyLmdldERhdGUoKSwwLDAsMCwwKTtudWxsIT09dGhpcy5ob3VyTWF4T3JpZ2luYWwmJm51bGwhPT10aGlzLm1pbnV0ZU1heE9yaWdpbmFsJiZudWxsIT09dGhpcy5zZWNvbmRNYXhPcmlnaW5hbHx8KHRoaXMuaG91ck1heE9yaWdpbmFsPWkuaG91ck1heCx0aGlzLm1pbnV0ZU1heE9yaWdpbmFsPWkubWludXRlTWF4LHRoaXMuc2Vjb25kTWF4T3JpZ2luYWw9aS5zZWNvbmRNYXgsdGhpcy5taWxsaXNlY01heE9yaWdpbmFsPWkubWlsbGlzZWNNYXgpLGUuc2V0dGluZ3MudGltZU9ubHl8fGwuZ2V0VGltZSgpPT1zLmdldFRpbWUoKT8odGhpcy5fZGVmYXVsdHMuaG91ck1heD1yLmdldEhvdXJzKCksdGhpcy5ob3VyPj10aGlzLl9kZWZhdWx0cy5ob3VyTWF4Pyh0aGlzLmhvdXI9dGhpcy5fZGVmYXVsdHMuaG91ck1heCx0aGlzLl9kZWZhdWx0cy5taW51dGVNYXg9ci5nZXRNaW51dGVzKCksdGhpcy5taW51dGU+PXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heD8odGhpcy5taW51dGU9dGhpcy5fZGVmYXVsdHMubWludXRlTWF4LHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heD1yLmdldFNlY29uZHMoKSk6dGhpcy5zZWNvbmQ+PXRoaXMuX2RlZmF1bHRzLnNlY29uZE1heD8odGhpcy5zZWNvbmQ9dGhpcy5fZGVmYXVsdHMuc2Vjb25kTWF4LHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4PXIuZ2V0TWlsbGlzZWNvbmRzKCkpOih0aGlzLm1pbGxpc2VjPnRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4JiYodGhpcy5taWxsaXNlYz10aGlzLl9kZWZhdWx0cy5taWxsaXNlY01heCksdGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNYXg9dGhpcy5taWxsaXNlY01heE9yaWdpbmFsKSk6KHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heD10aGlzLm1pbnV0ZU1heE9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heD10aGlzLnNlY29uZE1heE9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4PXRoaXMubWlsbGlzZWNNYXhPcmlnaW5hbCkpOih0aGlzLl9kZWZhdWx0cy5ob3VyTWF4PXRoaXMuaG91ck1heE9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heD10aGlzLm1pbnV0ZU1heE9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heD10aGlzLnNlY29uZE1heE9yaWdpbmFsLHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4PXRoaXMubWlsbGlzZWNNYXhPcmlnaW5hbCl9aWYodm9pZCAwIT09dCYmITA9PT10KXt2YXIgbz1wYXJzZUludCh0aGlzLl9kZWZhdWx0cy5ob3VyTWF4LSh0aGlzLl9kZWZhdWx0cy5ob3VyTWF4LXRoaXMuX2RlZmF1bHRzLmhvdXJNaW4pJXRoaXMuX2RlZmF1bHRzLnN0ZXBIb3VyLDEwKSx1PXBhcnNlSW50KHRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1heC0odGhpcy5fZGVmYXVsdHMubWludXRlTWF4LXRoaXMuX2RlZmF1bHRzLm1pbnV0ZU1pbikldGhpcy5fZGVmYXVsdHMuc3RlcE1pbnV0ZSwxMCksZD1wYXJzZUludCh0aGlzLl9kZWZhdWx0cy5zZWNvbmRNYXgtKHRoaXMuX2RlZmF1bHRzLnNlY29uZE1heC10aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4pJXRoaXMuX2RlZmF1bHRzLnN0ZXBTZWNvbmQsMTApLG09cGFyc2VJbnQodGhpcy5fZGVmYXVsdHMubWlsbGlzZWNNYXgtKHRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWF4LXRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluKSV0aGlzLl9kZWZhdWx0cy5zdGVwTWlsbGlzZWMsMTApO3RoaXMuaG91cl9zbGlkZXImJih0aGlzLmNvbnRyb2wub3B0aW9ucyh0aGlzLHRoaXMuaG91cl9zbGlkZXIsImhvdXIiLHttaW46dGhpcy5fZGVmYXVsdHMuaG91ck1pbixtYXg6b30pLHRoaXMuY29udHJvbC52YWx1ZSh0aGlzLHRoaXMuaG91cl9zbGlkZXIsImhvdXIiLHRoaXMuaG91cikpLHRoaXMubWludXRlX3NsaWRlciYmKHRoaXMuY29udHJvbC5vcHRpb25zKHRoaXMsdGhpcy5taW51dGVfc2xpZGVyLCJtaW51dGUiLHttaW46dGhpcy5fZGVmYXVsdHMubWludXRlTWluLG1heDp1fSksdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsdGhpcy5taW51dGVfc2xpZGVyLCJtaW51dGUiLHRoaXMubWludXRlKSksdGhpcy5zZWNvbmRfc2xpZGVyJiYodGhpcy5jb250cm9sLm9wdGlvbnModGhpcyx0aGlzLnNlY29uZF9zbGlkZXIsInNlY29uZCIse21pbjp0aGlzLl9kZWZhdWx0cy5zZWNvbmRNaW4sbWF4OmR9KSx0aGlzLmNvbnRyb2wudmFsdWUodGhpcyx0aGlzLnNlY29uZF9zbGlkZXIsInNlY29uZCIsdGhpcy5zZWNvbmQpKSx0aGlzLm1pbGxpc2VjX3NsaWRlciYmKHRoaXMuY29udHJvbC5vcHRpb25zKHRoaXMsdGhpcy5taWxsaXNlY19zbGlkZXIsIm1pbGxpc2VjIix7bWluOnRoaXMuX2RlZmF1bHRzLm1pbGxpc2VjTWluLG1heDptfSksdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsdGhpcy5taWxsaXNlY19zbGlkZXIsIm1pbGxpc2VjIix0aGlzLm1pbGxpc2VjKSl9fX0sX29uVGltZUNoYW5nZTpmdW5jdGlvbigpe3ZhciBlPSEhdGhpcy5ob3VyX3NsaWRlciYmdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsdGhpcy5ob3VyX3NsaWRlciwiaG91ciIpLHQ9ISF0aGlzLm1pbnV0ZV9zbGlkZXImJnRoaXMuY29udHJvbC52YWx1ZSh0aGlzLHRoaXMubWludXRlX3NsaWRlciwibWludXRlIiksaT0hIXRoaXMuc2Vjb25kX3NsaWRlciYmdGhpcy5jb250cm9sLnZhbHVlKHRoaXMsdGhpcy5zZWNvbmRfc2xpZGVyLCJzZWNvbmQiKSxzPSEhdGhpcy5taWxsaXNlY19zbGlkZXImJnRoaXMuY29udHJvbC52YWx1ZSh0aGlzLHRoaXMubWlsbGlzZWNfc2xpZGVyLCJtaWxsaXNlYyIpLGE9ISF0aGlzLnRpbWV6b25lX3NlbGVjdCYmdGhpcy50aW1lem9uZV9zZWxlY3QudmFsKCksbj10aGlzLl9kZWZhdWx0cyxyPW4ucGlja2VyVGltZUZvcm1hdHx8bi50aW1lRm9ybWF0LGw9bi5waWNrZXJUaW1lU3VmZml4fHxuLnRpbWVTdWZmaXg7Im9iamVjdCI9PXR5cGVvZiBlJiYoZT0hMSksIm9iamVjdCI9PXR5cGVvZiB0JiYodD0hMSksIm9iamVjdCI9PXR5cGVvZiBpJiYoaT0hMSksIm9iamVjdCI9PXR5cGVvZiBzJiYocz0hMSksIm9iamVjdCI9PXR5cGVvZiBhJiYoYT0hMSksITEhPT1lJiYoZT1wYXJzZUludChlLDEwKSksITEhPT10JiYodD1wYXJzZUludCh0LDEwKSksITEhPT1pJiYoaT1wYXJzZUludChpLDEwKSksITEhPT1zJiYocz1wYXJzZUludChzLDEwKSk7dmFyIG89bltlPDEyPyJhbU5hbWVzIjoicG1OYW1lcyJdWzBdLHU9ZSE9dGhpcy5ob3VyfHx0IT10aGlzLm1pbnV0ZXx8aSE9dGhpcy5zZWNvbmR8fHMhPXRoaXMubWlsbGlzZWN8fHRoaXMuYW1wbS5sZW5ndGg+MCYmZTwxMiE9KC0xIT09JC5pbkFycmF5KHRoaXMuYW1wbS50b1VwcGVyQ2FzZSgpLHRoaXMuYW1OYW1lcykpfHxudWxsPT09dGhpcy50aW1lem9uZSYmYSE9dGhpcy5kZWZhdWx0VGltZXpvbmV8fG51bGwhPT10aGlzLnRpbWV6b25lJiZhIT10aGlzLnRpbWV6b25lO3UmJighMSE9PWUmJih0aGlzLmhvdXI9ZSksITEhPT10JiYodGhpcy5taW51dGU9dCksITEhPT1pJiYodGhpcy5zZWNvbmQ9aSksITEhPT1zJiYodGhpcy5taWxsaXNlYz1zKSwhMSE9PWEmJih0aGlzLnRpbWV6b25lPWEpLHRoaXMuaW5zdHx8KHRoaXMuaW5zdD0kLmRhdGVwaWNrZXIuX2dldEluc3QodGhpcy4kaW5wdXRbMF0pKSx0aGlzLl9saW1pdE1pbk1heERhdGVUaW1lKHRoaXMuaW5zdCwhMCkpLHVzZUFtcG0obi50aW1lRm9ybWF0KSYmKHRoaXMuYW1wbT1vKSx0aGlzLmZvcm1hdHRlZFRpbWU9JC5kYXRlcGlja2VyLmZvcm1hdFRpbWUobi50aW1lRm9ybWF0LHRoaXMsbiksdGhpcy4kdGltZU9iaiYmKHI9PT1uLnRpbWVGb3JtYXQ/dGhpcy4kdGltZU9iai50ZXh0KHRoaXMuZm9ybWF0dGVkVGltZStsKTp0aGlzLiR0aW1lT2JqLnRleHQoJC5kYXRlcGlja2VyLmZvcm1hdFRpbWUocix0aGlzLG4pK2wpKSx0aGlzLnRpbWVEZWZpbmVkPSEwLHUmJnRoaXMuX3VwZGF0ZURhdGVUaW1lKCl9LF9vblNlbGVjdEhhbmRsZXI6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLl9kZWZhdWx0cy5vblNlbGVjdHx8dGhpcy5pbnN0LnNldHRpbmdzLm9uU2VsZWN0LHQ9dGhpcy4kaW5wdXQ/dGhpcy4kaW5wdXRbMF06bnVsbDtlJiZ0JiZlLmFwcGx5KHQsW3RoaXMuZm9ybWF0dGVkRGF0ZVRpbWUsdGhpc10pfSxfdXBkYXRlRGF0ZVRpbWU6ZnVuY3Rpb24oZSl7ZT10aGlzLmluc3R8fGU7dmFyIHQ9JC5kYXRlcGlja2VyLl9kYXlsaWdodFNhdmluZ0FkanVzdChuZXcgRGF0ZShlLnNlbGVjdGVkWWVhcixlLnNlbGVjdGVkTW9udGgsZS5zZWxlY3RlZERheSkpLGk9JC5kYXRlcGlja2VyLl9nZXQoZSwiZGF0ZUZvcm1hdCIpLHM9JC5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcoZSksYT1udWxsIT09dCYmdGhpcy50aW1lRGVmaW5lZDt0aGlzLmZvcm1hdHRlZERhdGU9JC5kYXRlcGlja2VyLmZvcm1hdERhdGUoaSxudWxsPT09dD9uZXcgRGF0ZTp0LHMpO3ZhciBuPXRoaXMuZm9ybWF0dGVkRGF0ZTtpZighMD09PXRoaXMuX2RlZmF1bHRzLnRpbWVPbmx5P249dGhpcy5mb3JtYXR0ZWRUaW1lOiEwIT09dGhpcy5fZGVmYXVsdHMudGltZU9ubHkmJih0aGlzLl9kZWZhdWx0cy5hbHdheXNTZXRUaW1lfHxhKSYmKG4rPXRoaXMuX2RlZmF1bHRzLnNlcGFyYXRvcit0aGlzLmZvcm1hdHRlZFRpbWUrdGhpcy5fZGVmYXVsdHMudGltZVN1ZmZpeCksdGhpcy5mb3JtYXR0ZWREYXRlVGltZT1uLHRoaXMuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyKWlmKHRoaXMuJGFsdElucHV0JiYhMD09PXRoaXMuX2RlZmF1bHRzLmFsdEZpZWxkVGltZU9ubHkpdGhpcy4kYWx0SW5wdXQudmFsKHRoaXMuZm9ybWF0dGVkVGltZSksdGhpcy4kaW5wdXQudmFsKHRoaXMuZm9ybWF0dGVkRGF0ZSk7ZWxzZSBpZih0aGlzLiRhbHRJbnB1dCl7dGhpcy4kaW5wdXQudmFsKG4pO3ZhciByPSIiLGw9dGhpcy5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yP3RoaXMuX2RlZmF1bHRzLmFsdFNlcGFyYXRvcjp0aGlzLl9kZWZhdWx0cy5zZXBhcmF0b3Isbz10aGlzLl9kZWZhdWx0cy5hbHRUaW1lU3VmZml4P3RoaXMuX2RlZmF1bHRzLmFsdFRpbWVTdWZmaXg6dGhpcy5fZGVmYXVsdHMudGltZVN1ZmZpeDsocj10aGlzLl9kZWZhdWx0cy5hbHRGb3JtYXQ/JC5kYXRlcGlja2VyLmZvcm1hdERhdGUodGhpcy5fZGVmYXVsdHMuYWx0Rm9ybWF0LG51bGw9PT10P25ldyBEYXRlOnQscyk6dGhpcy5mb3JtYXR0ZWREYXRlKSYmKHIrPWwpLHRoaXMuX2RlZmF1bHRzLmFsdFRpbWVGb3JtYXQ/cis9JC5kYXRlcGlja2VyLmZvcm1hdFRpbWUodGhpcy5fZGVmYXVsdHMuYWx0VGltZUZvcm1hdCx0aGlzLHRoaXMuX2RlZmF1bHRzKStvOnIrPXRoaXMuZm9ybWF0dGVkVGltZStvLHRoaXMuJGFsdElucHV0LnZhbChyKX1lbHNlIHRoaXMuJGlucHV0LnZhbChuKTtlbHNlIHRoaXMuJGlucHV0LnZhbCh0aGlzLmZvcm1hdHRlZERhdGUpO3RoaXMuJGlucHV0LnRyaWdnZXIoImNoYW5nZSIpfSxfb25Gb2N1czpmdW5jdGlvbigpe2lmKCF0aGlzLiRpbnB1dC52YWwoKSYmdGhpcy5fZGVmYXVsdHMuZGVmYXVsdFZhbHVlKXt0aGlzLiRpbnB1dC52YWwodGhpcy5fZGVmYXVsdHMuZGVmYXVsdFZhbHVlKTt2YXIgZT0kLmRhdGVwaWNrZXIuX2dldEluc3QodGhpcy4kaW5wdXQuZ2V0KDApKSx0PSQuZGF0ZXBpY2tlci5fZ2V0KGUsInRpbWVwaWNrZXIiKTtpZih0JiZ0Ll9kZWZhdWx0cy50aW1lT25seSYmZS5pbnB1dC52YWwoKSE9ZS5sYXN0VmFsKXRyeXskLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXIoZSl9Y2F0Y2goZSl7JC5kYXRlcGlja2VyLmxvZyhlKX19fSxfY29udHJvbHM6e3NsaWRlcjp7Y3JlYXRlOmZ1bmN0aW9uKGUsdCxpLHMsYSxuLHIpe3ZhciBsPWUuX2RlZmF1bHRzLmlzUlRMO3JldHVybiB0LnByb3AoInNsaWRlIixudWxsKS5zbGlkZXIoe29yaWVudGF0aW9uOiJob3Jpem9udGFsIix2YWx1ZTpsPy0xKnM6cyxtaW46bD8tMSpuOmEsbWF4Omw/LTEqYTpuLHN0ZXA6cixzbGlkZTpmdW5jdGlvbih0LHMpe2UuY29udHJvbC52YWx1ZShlLCQodGhpcyksaSxsPy0xKnMudmFsdWU6cy52YWx1ZSksZS5fb25UaW1lQ2hhbmdlKCl9LHN0b3A6ZnVuY3Rpb24odCxpKXtlLl9vblNlbGVjdEhhbmRsZXIoKX19KX0sb3B0aW9uczpmdW5jdGlvbihlLHQsaSxzLGEpe2lmKGUuX2RlZmF1bHRzLmlzUlRMKXtpZigic3RyaW5nIj09dHlwZW9mIHMpcmV0dXJuIm1pbiI9PXN8fCJtYXgiPT1zP3ZvaWQgMCE9PWE/dC5zbGlkZXIocywtMSphKTpNYXRoLmFicyh0LnNsaWRlcihzKSk6dC5zbGlkZXIocyk7dmFyIG49cy5taW4scj1zLm1heDtyZXR1cm4gcy5taW49cy5tYXg9bnVsbCx2b2lkIDAhPT1uJiYocy5tYXg9LTEqbiksdm9pZCAwIT09ciYmKHMubWluPS0xKnIpLHQuc2xpZGVyKHMpfXJldHVybiJzdHJpbmciPT10eXBlb2YgcyYmdm9pZCAwIT09YT90LnNsaWRlcihzLGEpOnQuc2xpZGVyKHMpfSx2YWx1ZTpmdW5jdGlvbihlLHQsaSxzKXtyZXR1cm4gZS5fZGVmYXVsdHMuaXNSVEw/dm9pZCAwIT09cz90LnNsaWRlcigidmFsdWUiLC0xKnMpOk1hdGguYWJzKHQuc2xpZGVyKCJ2YWx1ZSIpKTp2b2lkIDAhPT1zP3Quc2xpZGVyKCJ2YWx1ZSIscyk6dC5zbGlkZXIoInZhbHVlIil9fSxzZWxlY3Q6e2NyZWF0ZTpmdW5jdGlvbihlLHQsaSxzLGEsbixyKXtmb3IodmFyIGw9JzxzZWxlY3QgY2xhc3M9InVpLXRpbWVwaWNrZXItc2VsZWN0IiBkYXRhLXVuaXQ9IicraSsnIiBkYXRhLW1pbj0iJythKyciIGRhdGEtbWF4PSInK24rJyIgZGF0YS1zdGVwPSInK3IrJyI+JyxvPShlLl9kZWZhdWx0cy50aW1lRm9ybWF0LmluZGV4T2YoInQiKSxhKTtvPD1uO28rPXIpbCs9JzxvcHRpb24gdmFsdWU9IicrbysnIicrKG89PXM/IiBzZWxlY3RlZCI6IiIpKyI+IiwiaG91ciI9PWkmJnVzZUFtcG0oZS5fZGVmYXVsdHMucGlja2VyVGltZUZvcm1hdHx8ZS5fZGVmYXVsdHMudGltZUZvcm1hdCk/bCs9JC5kYXRlcGlja2VyLmZvcm1hdFRpbWUoImhoIFRUIix7aG91cjpvfSxlLl9kZWZhdWx0cyk6bCs9Im1pbGxpc2VjIj09aXx8bz49MTA/bzoiMCIrby50b1N0cmluZygpLGwrPSI8L29wdGlvbj4iO3JldHVybiBsKz0iPC9zZWxlY3Q+Iix0LmNoaWxkcmVuKCJzZWxlY3QiKS5yZW1vdmUoKSwkKGwpLmFwcGVuZFRvKHQpLmNoYW5nZSgoZnVuY3Rpb24odCl7ZS5fb25UaW1lQ2hhbmdlKCksZS5fb25TZWxlY3RIYW5kbGVyKCl9KSksdH0sb3B0aW9uczpmdW5jdGlvbihlLHQsaSxzLGEpe3ZhciBuPXt9LHI9dC5jaGlsZHJlbigic2VsZWN0Iik7aWYoInN0cmluZyI9PXR5cGVvZiBzKXtpZih2b2lkIDA9PT1hKXJldHVybiByLmRhdGEocyk7bltzXT1hfWVsc2Ugbj1zO3JldHVybiBlLmNvbnRyb2wuY3JlYXRlKGUsdCxyLmRhdGEoInVuaXQiKSxyLnZhbCgpLG4ubWlufHxyLmRhdGEoIm1pbiIpLG4ubWF4fHxyLmRhdGEoIm1heCIpLG4uc3RlcHx8ci5kYXRhKCJzdGVwIikpfSx2YWx1ZTpmdW5jdGlvbihlLHQsaSxzKXt2YXIgYT10LmNoaWxkcmVuKCJzZWxlY3QiKTtyZXR1cm4gdm9pZCAwIT09cz9hLnZhbChzKTphLnZhbCgpfX19fSksJC5mbi5leHRlbmQoe3RpbWVwaWNrZXI6ZnVuY3Rpb24oZSl7ZT1lfHx7fTt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmKHRbMF09JC5leHRlbmQoZSx7dGltZU9ubHk6ITB9KSksJCh0aGlzKS5lYWNoKChmdW5jdGlvbigpeyQuZm4uZGF0ZXRpbWVwaWNrZXIuYXBwbHkoJCh0aGlzKSx0KX0pKX0sZGF0ZXRpbWVwaWNrZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9YXJndW1lbnRzO3JldHVybiJzdHJpbmciPT10eXBlb2YoZT1lfHx7fSk/ImdldERhdGUiPT1lPyQuZm4uZGF0ZXBpY2tlci5hcHBseSgkKHRoaXNbMF0pLHQpOnRoaXMuZWFjaCgoZnVuY3Rpb24oKXt2YXIgZT0kKHRoaXMpO2UuZGF0ZXBpY2tlci5hcHBseShlLHQpfSkpOnRoaXMuZWFjaCgoZnVuY3Rpb24oKXt2YXIgdD0kKHRoaXMpO3QuZGF0ZXBpY2tlcigkLnRpbWVwaWNrZXIuX25ld0luc3QodCxlKS5fZGVmYXVsdHMpfSkpfX0pLCQuZGF0ZXBpY2tlci5wYXJzZURhdGVUaW1lPWZ1bmN0aW9uKGUsdCxpLHMsYSl7dmFyIG49cGFyc2VEYXRlVGltZUludGVybmFsKGUsdCxpLHMsYSk7aWYobi50aW1lT2JqKXt2YXIgcj1uLnRpbWVPYmo7bi5kYXRlLnNldEhvdXJzKHIuaG91cixyLm1pbnV0ZSxyLnNlY29uZCxyLm1pbGxpc2VjKX1yZXR1cm4gbi5kYXRlfSwkLmRhdGVwaWNrZXIucGFyc2VUaW1lPWZ1bmN0aW9uKGUsdCxpKXt2YXIgcz1leHRlbmRSZW1vdmUoZXh0ZW5kUmVtb3ZlKHt9LCQudGltZXBpY2tlci5fZGVmYXVsdHMpLGl8fHt9KSxhPWZ1bmN0aW9uKGUsdCxpKXt2YXIgcyxhPSJeIitlLnRvU3RyaW5nKCkucmVwbGFjZSgvKFtoSF17MSwyfXxtbT98c3M/fFt0VF17MSwyfXxbbHpdfCcuKj8nKS9nLChmdW5jdGlvbihlKXtzd2l0Y2goZS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKSl7Y2FzZSJoIjpjYXNlIm0iOmNhc2UicyI6cmV0dXJuIihcXGQ/XFxkKSI7Y2FzZSJsIjpyZXR1cm4iKFxcZD9cXGQ/XFxkKSI7Y2FzZSJ6IjpyZXR1cm4iKHp8Wy0rXVxcZFxcZDo/XFxkXFxkfFxcUyspPyI7Y2FzZSJ0IjpyZXR1cm4gdD1pLmFtTmFtZXMscz1pLnBtTmFtZXMsYT1bXSx0JiYkLm1lcmdlKGEsdCkscyYmJC5tZXJnZShhLHMpLCIoIisoYT0kLm1hcChhLChmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKC9bLiorP3woKVxbXF17fVxcXS9nLCJcXCQmIil9KSkpLmpvaW4oInwiKSsiKT8iO2RlZmF1bHQ6cmV0dXJuIigiK2UucmVwbGFjZSgvXCcvZywiIikucmVwbGFjZSgvKFwufFwkfFxefFxcfFwvfFwofFwpfFxbfFxdfFw/fFwrfFwqKS9nLChmdW5jdGlvbihlKXtyZXR1cm4iXFwiK2V9KSkrIik/In12YXIgdCxzLGF9KSkucmVwbGFjZSgvXHMvZywiXFxzPyIpK2kudGltZVN1ZmZpeCsiJCIsbj1mdW5jdGlvbihlKXt2YXIgdD1lLnRvTG93ZXJDYXNlKCkubWF0Y2goLyhoezEsMn18bXsxLDJ9fHN7MSwyfXxsezF9fHR7MSwyfXx6fCcuKj8nKS9nKSxpPXtoOi0xLG06LTEsczotMSxsOi0xLHQ6LTEsejotMX07aWYodClmb3IodmFyIHM9MDtzPHQubGVuZ3RoO3MrKyktMT09aVt0W3NdLnRvU3RyaW5nKCkuY2hhckF0KDApXSYmKGlbdFtzXS50b1N0cmluZygpLmNoYXJBdCgwKV09cysxKTtyZXR1cm4gaX0oZSkscj0iIixsPXtob3VyOjAsbWludXRlOjAsc2Vjb25kOjAsbWlsbGlzZWM6MH07aWYocz10Lm1hdGNoKG5ldyBSZWdFeHAoYSwiaSIpKSl7aWYoLTEhPT1uLnQmJih2b2lkIDA9PT1zW24udF18fDA9PT1zW24udF0ubGVuZ3RoPyhyPSIiLGwuYW1wbT0iIik6KHI9LTEhPT0kLmluQXJyYXkoc1tuLnRdLnRvVXBwZXJDYXNlKCksaS5hbU5hbWVzKT8iQU0iOiJQTSIsbC5hbXBtPWlbIkFNIj09cj8iYW1OYW1lcyI6InBtTmFtZXMiXVswXSkpLC0xIT09bi5oJiYoIkFNIj09ciYmIjEyIj09c1tuLmhdP2wuaG91cj0wOiJQTSI9PXImJiIxMiIhPXNbbi5oXT9sLmhvdXI9cGFyc2VJbnQoc1tuLmhdLDEwKSsxMjpsLmhvdXI9TnVtYmVyKHNbbi5oXSkpLC0xIT09bi5tJiYobC5taW51dGU9TnVtYmVyKHNbbi5tXSkpLC0xIT09bi5zJiYobC5zZWNvbmQ9TnVtYmVyKHNbbi5zXSkpLC0xIT09bi5sJiYobC5taWxsaXNlYz1OdW1iZXIoc1tuLmxdKSksLTEhPT1uLnomJnZvaWQgMCE9PXNbbi56XSl7dmFyIG89c1tuLnpdLnRvVXBwZXJDYXNlKCk7c3dpdGNoKG8ubGVuZ3RoKXtjYXNlIDE6bz1pLnRpbWV6b25lSXNvODYwMT8iWiI6IiswMDAwIjticmVhaztjYXNlIDU6aS50aW1lem9uZUlzbzg2MDEmJihvPSIwMDAwIj09by5zdWJzdHJpbmcoMSk/IloiOm8uc3Vic3RyaW5nKDAsMykrIjoiK28uc3Vic3RyaW5nKDMpKTticmVhaztjYXNlIDY6aS50aW1lem9uZUlzbzg2MDE/IjAwOjAwIj09by5zdWJzdHJpbmcoMSkmJihvPSJaIik6bz0iWiI9PW98fCIwMDowMCI9PW8uc3Vic3RyaW5nKDEpPyIrMDAwMCI6by5yZXBsYWNlKC86LywiIil9bC50aW1lem9uZT1vfXJldHVybiBsfXJldHVybiExfTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2Ygcy5wYXJzZT9zLnBhcnNlKGUsdCxzKToibG9vc2UiPT09cy5wYXJzZT9mdW5jdGlvbihlLHQsaSl7dHJ5e3ZhciBzPW5ldyBEYXRlKCIyMDEyLTAxLTAxICIrdCk7cmV0dXJue2hvdXI6cy5nZXRIb3VycygpLG1pbnV0ZXM6cy5nZXRNaW51dGVzKCksc2Vjb25kczpzLmdldFNlY29uZHMoKSxtaWxsaXNlYzpzLmdldE1pbGxpc2Vjb25kcygpLHRpbWV6b25lOiQudGltZXBpY2tlci50aW1lWm9uZU9mZnNldFN0cmluZyhzKX19Y2F0Y2gocyl7dHJ5e3JldHVybiBhKGUsdCxpKX1jYXRjaChpKXskLmRhdGVwaWNrZXIubG9nKCJVbmFibGUgdG8gcGFyc2UgXG50aW1lU3RyaW5nOiAiK3QrIlxudGltZUZvcm1hdDogIitlKX19cmV0dXJuITF9KGUsdCxzKTphKGUsdCxzKX0sJC5kYXRlcGlja2VyLmZvcm1hdFRpbWU9ZnVuY3Rpb24oZSx0LGkpe2k9aXx8e30saT0kLmV4dGVuZCh7fSwkLnRpbWVwaWNrZXIuX2RlZmF1bHRzLGkpLHQ9JC5leHRlbmQoe2hvdXI6MCxtaW51dGU6MCxzZWNvbmQ6MCxtaWxsaXNlYzowLHRpbWV6b25lOiIrMDAwMCJ9LHQpO3ZhciBzPWUsYT1pLmFtTmFtZXNbMF0sbj1wYXJzZUludCh0LmhvdXIsMTApO3JldHVybiBuPjExJiYoYT1pLnBtTmFtZXNbMF0pLHM9cy5yZXBsYWNlKC8oPzpISD98aGg/fG1tP3xzcz98W3RUXXsxLDJ9fFtsel18KCcuKj8nfCIuKj8iKSkvZywoZnVuY3Rpb24oZSl7c3dpdGNoKGUpe2Nhc2UiSEgiOnJldHVybigiMCIrbikuc2xpY2UoLTIpO2Nhc2UiSCI6cmV0dXJuIG47Y2FzZSJoaCI6cmV0dXJuKCIwIitjb252ZXJ0MjR0bzEyKG4pKS5zbGljZSgtMik7Y2FzZSJoIjpyZXR1cm4gY29udmVydDI0dG8xMihuKTtjYXNlIm1tIjpyZXR1cm4oIjAiK3QubWludXRlKS5zbGljZSgtMik7Y2FzZSJtIjpyZXR1cm4gdC5taW51dGU7Y2FzZSJzcyI6cmV0dXJuKCIwIit0LnNlY29uZCkuc2xpY2UoLTIpO2Nhc2UicyI6cmV0dXJuIHQuc2Vjb25kO2Nhc2UibCI6cmV0dXJuKCIwMCIrdC5taWxsaXNlYykuc2xpY2UoLTMpO2Nhc2UieiI6cmV0dXJuIG51bGw9PT10LnRpbWV6b25lP2kuZGVmYXVsdFRpbWV6b25lOnQudGltZXpvbmU7Y2FzZSJUIjpyZXR1cm4gYS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKTtjYXNlIlRUIjpyZXR1cm4gYS50b1VwcGVyQ2FzZSgpO2Nhc2UidCI6cmV0dXJuIGEuY2hhckF0KDApLnRvTG93ZXJDYXNlKCk7Y2FzZSJ0dCI6cmV0dXJuIGEudG9Mb3dlckNhc2UoKTtkZWZhdWx0OnJldHVybiBlLnJlcGxhY2UoL1wnL2csIiIpfHwiJyJ9fSkpLHM9JC50cmltKHMpfSwkLmRhdGVwaWNrZXIuX2Jhc2Vfc2VsZWN0RGF0ZT0kLmRhdGVwaWNrZXIuX3NlbGVjdERhdGUsJC5kYXRlcGlja2VyLl9zZWxlY3REYXRlPWZ1bmN0aW9uKGUsdCl7dmFyIGk9dGhpcy5fZ2V0SW5zdCgkKGUpWzBdKSxzPXRoaXMuX2dldChpLCJ0aW1lcGlja2VyIik7cz8ocy5fbGltaXRNaW5NYXhEYXRlVGltZShpLCEwKSxpLmlubGluZT1pLnN0YXlfb3Blbj0hMCx0aGlzLl9iYXNlX3NlbGVjdERhdGUoZSx0KSxpLmlubGluZT1pLnN0YXlfb3Blbj0hMSx0aGlzLl9ub3RpZnlDaGFuZ2UoaSksdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcihpKSk6dGhpcy5fYmFzZV9zZWxlY3REYXRlKGUsdCl9LCQuZGF0ZXBpY2tlci5fYmFzZV91cGRhdGVEYXRlcGlja2VyPSQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlciwkLmRhdGVwaWNrZXIuX3VwZGF0ZURhdGVwaWNrZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5pbnB1dFswXTtpZighKCQuZGF0ZXBpY2tlci5fY3VySW5zdCYmJC5kYXRlcGlja2VyLl9jdXJJbnN0IT1lJiYkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nJiYkLmRhdGVwaWNrZXIuX2xhc3RJbnB1dCE9dHx8ImJvb2xlYW4iPT10eXBlb2YgZS5zdGF5X29wZW4mJiExIT09ZS5zdGF5X29wZW4pKXt0aGlzLl9iYXNlX3VwZGF0ZURhdGVwaWNrZXIoZSk7dmFyIGk9dGhpcy5fZ2V0KGUsInRpbWVwaWNrZXIiKTtpZihpJiYoaS5fYWRkVGltZVBpY2tlcihlKSxpLl9kZWZhdWx0cy51c2VMb2NhbFRpbWV6b25lKSl7dmFyIHM9bmV3IERhdGUoZS5zZWxlY3RlZFllYXIsZS5zZWxlY3RlZE1vbnRoLGUuc2VsZWN0ZWREYXksMTIpO3NlbGVjdExvY2FsVGltZVpvbmUoaSxzKSxpLl9vblRpbWVDaGFuZ2UoKX19fSwkLmRhdGVwaWNrZXIuX2Jhc2VfZG9LZXlQcmVzcz0kLmRhdGVwaWNrZXIuX2RvS2V5UHJlc3MsJC5kYXRlcGlja2VyLl9kb0tleVByZXNzPWZ1bmN0aW9uKGUpe3ZhciB0PSQuZGF0ZXBpY2tlci5fZ2V0SW5zdChlLnRhcmdldCksaT0kLmRhdGVwaWNrZXIuX2dldCh0LCJ0aW1lcGlja2VyIik7aWYoaSYmJC5kYXRlcGlja2VyLl9nZXQodCwiY29uc3RyYWluSW5wdXQiKSl7dmFyIHM9dXNlQW1wbShpLl9kZWZhdWx0cy50aW1lRm9ybWF0KSxhPSQuZGF0ZXBpY2tlci5fcG9zc2libGVDaGFycygkLmRhdGVwaWNrZXIuX2dldCh0LCJkYXRlRm9ybWF0IikpLG49aS5fZGVmYXVsdHMudGltZUZvcm1hdC50b1N0cmluZygpLnJlcGxhY2UoL1tobXNdL2csIiIpLnJlcGxhY2UoL1RUL2cscz8iQVBNIjoiIikucmVwbGFjZSgvVHQvZyxzPyJBYVBwTW0iOiIiKS5yZXBsYWNlKC90VC9nLHM/IkFhUHBNbSI6IiIpLnJlcGxhY2UoL1QvZyxzPyJBUCI6IiIpLnJlcGxhY2UoL3R0L2cscz8iYXBtIjoiIikucmVwbGFjZSgvdC9nLHM/ImFwIjoiIikrIiAiK2kuX2RlZmF1bHRzLnNlcGFyYXRvcitpLl9kZWZhdWx0cy50aW1lU3VmZml4KyhpLl9kZWZhdWx0cy5zaG93VGltZXpvbmU/aS5fZGVmYXVsdHMudGltZXpvbmVMaXN0LmpvaW4oIiIpOiIiKStpLl9kZWZhdWx0cy5hbU5hbWVzLmpvaW4oIiIpK2kuX2RlZmF1bHRzLnBtTmFtZXMuam9pbigiIikrYSxyPVN0cmluZy5mcm9tQ2hhckNvZGUodm9pZCAwPT09ZS5jaGFyQ29kZT9lLmtleUNvZGU6ZS5jaGFyQ29kZSk7cmV0dXJuIGUuY3RybEtleXx8cjwiICJ8fCFhfHxuLmluZGV4T2Yocik+LTF9cmV0dXJuICQuZGF0ZXBpY2tlci5fYmFzZV9kb0tleVByZXNzKGUpfSwkLmRhdGVwaWNrZXIuX2Jhc2VfdXBkYXRlQWx0ZXJuYXRlPSQuZGF0ZXBpY2tlci5fdXBkYXRlQWx0ZXJuYXRlLCQuZGF0ZXBpY2tlci5fdXBkYXRlQWx0ZXJuYXRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2dldChlLCJ0aW1lcGlja2VyIik7aWYodCl7dmFyIGk9dC5fZGVmYXVsdHMuYWx0RmllbGQ7aWYoaSl7dC5fZGVmYXVsdHMuYWx0Rm9ybWF0fHx0Ll9kZWZhdWx0cy5kYXRlRm9ybWF0O3ZhciBzPXRoaXMuX2dldERhdGUoZSksYT0kLmRhdGVwaWNrZXIuX2dldEZvcm1hdENvbmZpZyhlKSxuPSIiLHI9dC5fZGVmYXVsdHMuYWx0U2VwYXJhdG9yP3QuX2RlZmF1bHRzLmFsdFNlcGFyYXRvcjp0Ll9kZWZhdWx0cy5zZXBhcmF0b3IsbD10Ll9kZWZhdWx0cy5hbHRUaW1lU3VmZml4P3QuX2RlZmF1bHRzLmFsdFRpbWVTdWZmaXg6dC5fZGVmYXVsdHMudGltZVN1ZmZpeCxvPW51bGwhPT10Ll9kZWZhdWx0cy5hbHRUaW1lRm9ybWF0P3QuX2RlZmF1bHRzLmFsdFRpbWVGb3JtYXQ6dC5fZGVmYXVsdHMudGltZUZvcm1hdDtuKz0kLmRhdGVwaWNrZXIuZm9ybWF0VGltZShvLHQsdC5fZGVmYXVsdHMpK2wsdC5fZGVmYXVsdHMudGltZU9ubHl8fHQuX2RlZmF1bHRzLmFsdEZpZWxkVGltZU9ubHl8fChuPXQuX2RlZmF1bHRzLmFsdEZvcm1hdD8kLmRhdGVwaWNrZXIuZm9ybWF0RGF0ZSh0Ll9kZWZhdWx0cy5hbHRGb3JtYXQsbnVsbD09PXM/bmV3IERhdGU6cyxhKStyK246dC5mb3JtYXR0ZWREYXRlK3IrbiksJChpKS52YWwobil9fWVsc2UgJC5kYXRlcGlja2VyLl9iYXNlX3VwZGF0ZUFsdGVybmF0ZShlKX0sJC5kYXRlcGlja2VyLl9iYXNlX2RvS2V5VXA9JC5kYXRlcGlja2VyLl9kb0tleVVwLCQuZGF0ZXBpY2tlci5fZG9LZXlVcD1mdW5jdGlvbihlKXt2YXIgdD0kLmRhdGVwaWNrZXIuX2dldEluc3QoZS50YXJnZXQpLGk9JC5kYXRlcGlja2VyLl9nZXQodCwidGltZXBpY2tlciIpO2lmKGkmJmkuX2RlZmF1bHRzLnRpbWVPbmx5JiZ0LmlucHV0LnZhbCgpIT10Lmxhc3RWYWwpdHJ5eyQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlcih0KX1jYXRjaChlKXskLmRhdGVwaWNrZXIubG9nKGUpfXJldHVybiAkLmRhdGVwaWNrZXIuX2Jhc2VfZG9LZXlVcChlKX0sJC5kYXRlcGlja2VyLl9iYXNlX2dvdG9Ub2RheT0kLmRhdGVwaWNrZXIuX2dvdG9Ub2RheSwkLmRhdGVwaWNrZXIuX2dvdG9Ub2RheT1mdW5jdGlvbihlKXt2YXIgdD10aGlzLl9nZXRJbnN0KCQoZSlbMF0pLGk9dC5kcERpdjt0aGlzLl9iYXNlX2dvdG9Ub2RheShlKTt2YXIgcz10aGlzLl9nZXQodCwidGltZXBpY2tlciIpO3NlbGVjdExvY2FsVGltZVpvbmUocyk7dmFyIGE9bmV3IERhdGU7dGhpcy5fc2V0VGltZSh0LGEpLCQoIi51aS1kYXRlcGlja2VyLXRvZGF5IixpKS5jbGljaygpfSwkLmRhdGVwaWNrZXIuX2Rpc2FibGVUaW1lcGlja2VyRGF0ZXBpY2tlcj1mdW5jdGlvbihlKXt2YXIgdD10aGlzLl9nZXRJbnN0KGUpO2lmKHQpe3ZhciBpPXRoaXMuX2dldCh0LCJ0aW1lcGlja2VyIik7JChlKS5kYXRlcGlja2VyKCJnZXREYXRlIiksaSYmKGkuX2RlZmF1bHRzLnNob3dUaW1lcGlja2VyPSExLGkuX3VwZGF0ZURhdGVUaW1lKHQpKX19LCQuZGF0ZXBpY2tlci5fZW5hYmxlVGltZXBpY2tlckRhdGVwaWNrZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9dGhpcy5fZ2V0SW5zdChlKTtpZih0KXt2YXIgaT10aGlzLl9nZXQodCwidGltZXBpY2tlciIpOyQoZSkuZGF0ZXBpY2tlcigiZ2V0RGF0ZSIpLGkmJihpLl9kZWZhdWx0cy5zaG93VGltZXBpY2tlcj0hMCxpLl9hZGRUaW1lUGlja2VyKHQpLGkuX3VwZGF0ZURhdGVUaW1lKHQpKX19LCQuZGF0ZXBpY2tlci5fc2V0VGltZT1mdW5jdGlvbihlLHQpe3ZhciBpPXRoaXMuX2dldChlLCJ0aW1lcGlja2VyIik7aWYoaSl7dmFyIHM9aS5fZGVmYXVsdHM7aS5ob3VyPXQ/dC5nZXRIb3VycygpOnMuaG91cixpLm1pbnV0ZT10P3QuZ2V0TWludXRlcygpOnMubWludXRlLGkuc2Vjb25kPXQ/dC5nZXRTZWNvbmRzKCk6cy5zZWNvbmQsaS5taWxsaXNlYz10P3QuZ2V0TWlsbGlzZWNvbmRzKCk6cy5taWxsaXNlYyxpLl9saW1pdE1pbk1heERhdGVUaW1lKGUsITApLGkuX29uVGltZUNoYW5nZSgpLGkuX3VwZGF0ZURhdGVUaW1lKGUpfX0sJC5kYXRlcGlja2VyLl9zZXRUaW1lRGF0ZXBpY2tlcj1mdW5jdGlvbihlLHQsaSl7dmFyIHM9dGhpcy5fZ2V0SW5zdChlKTtpZihzKXt2YXIgYSxuPXRoaXMuX2dldChzLCJ0aW1lcGlja2VyIik7aWYobil0aGlzLl9zZXREYXRlRnJvbUZpZWxkKHMpLHQmJigic3RyaW5nIj09dHlwZW9mIHQ/KG4uX3BhcnNlVGltZSh0LGkpLChhPW5ldyBEYXRlKS5zZXRIb3VycyhuLmhvdXIsbi5taW51dGUsbi5zZWNvbmQsbi5taWxsaXNlYykpOmE9bmV3IERhdGUodC5nZXRUaW1lKCkpLCJJbnZhbGlkIERhdGUiPT1hLnRvU3RyaW5nKCkmJihhPXZvaWQgMCksdGhpcy5fc2V0VGltZShzLGEpKX19LCQuZGF0ZXBpY2tlci5fYmFzZV9zZXREYXRlRGF0ZXBpY2tlcj0kLmRhdGVwaWNrZXIuX3NldERhdGVEYXRlcGlja2VyLCQuZGF0ZXBpY2tlci5fc2V0RGF0ZURhdGVwaWNrZXI9ZnVuY3Rpb24oZSx0KXt2YXIgaT10aGlzLl9nZXRJbnN0KGUpO2lmKGkpe3ZhciBzPXQgaW5zdGFuY2VvZiBEYXRlP25ldyBEYXRlKHQuZ2V0VGltZSgpKTp0O3RoaXMuX3VwZGF0ZURhdGVwaWNrZXIoaSksdGhpcy5fYmFzZV9zZXREYXRlRGF0ZXBpY2tlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpcy5fc2V0VGltZURhdGVwaWNrZXIoZSxzLCEwKX19LCQuZGF0ZXBpY2tlci5fYmFzZV9nZXREYXRlRGF0ZXBpY2tlcj0kLmRhdGVwaWNrZXIuX2dldERhdGVEYXRlcGlja2VyLCQuZGF0ZXBpY2tlci5fZ2V0RGF0ZURhdGVwaWNrZXI9ZnVuY3Rpb24oZSx0KXt2YXIgaT10aGlzLl9nZXRJbnN0KGUpO2lmKGkpe3ZhciBzPXRoaXMuX2dldChpLCJ0aW1lcGlja2VyIik7aWYocyl7dm9pZCAwPT09aS5sYXN0VmFsJiZ0aGlzLl9zZXREYXRlRnJvbUZpZWxkKGksdCk7dmFyIGE9dGhpcy5fZ2V0RGF0ZShpKTtyZXR1cm4gYSYmcy5fcGFyc2VUaW1lKCQoZSkudmFsKCkscy50aW1lT25seSkmJmEuc2V0SG91cnMocy5ob3VyLHMubWludXRlLHMuc2Vjb25kLHMubWlsbGlzZWMpLGF9cmV0dXJuIHRoaXMuX2Jhc2VfZ2V0RGF0ZURhdGVwaWNrZXIoZSx0KX19LCQuZGF0ZXBpY2tlci5fYmFzZV9wYXJzZURhdGU9JC5kYXRlcGlja2VyLnBhcnNlRGF0ZSwkLmRhdGVwaWNrZXIucGFyc2VEYXRlPWZ1bmN0aW9uKGUsdCxpKXt2YXIgczt0cnl7cz10aGlzLl9iYXNlX3BhcnNlRGF0ZShlLHQsaSl9Y2F0Y2goYSl7cz10aGlzLl9iYXNlX3BhcnNlRGF0ZShlLHQuc3Vic3RyaW5nKDAsdC5sZW5ndGgtKGEubGVuZ3RoLWEuaW5kZXhPZigiOiIpLTIpKSxpKSwkLmRhdGVwaWNrZXIubG9nKCJFcnJvciBwYXJzaW5nIHRoZSBkYXRlIHN0cmluZzogIithKyJcbmRhdGUgc3RyaW5nID0gIit0KyJcbmRhdGUgZm9ybWF0ID0gIitlKX1yZXR1cm4gc30sJC5kYXRlcGlja2VyLl9iYXNlX2Zvcm1hdERhdGU9JC5kYXRlcGlja2VyLl9mb3JtYXREYXRlLCQuZGF0ZXBpY2tlci5fZm9ybWF0RGF0ZT1mdW5jdGlvbihlLHQsaSxzKXt2YXIgYT10aGlzLl9nZXQoZSwidGltZXBpY2tlciIpO3JldHVybiBhPyhhLl91cGRhdGVEYXRlVGltZShlKSxhLiRpbnB1dC52YWwoKSk6dGhpcy5fYmFzZV9mb3JtYXREYXRlKGUpfSwkLmRhdGVwaWNrZXIuX2Jhc2Vfb3B0aW9uRGF0ZXBpY2tlcj0kLmRhdGVwaWNrZXIuX29wdGlvbkRhdGVwaWNrZXIsJC5kYXRlcGlja2VyLl9vcHRpb25EYXRlcGlja2VyPWZ1bmN0aW9uKGUsdCxpKXt2YXIgcyxhPXRoaXMuX2dldEluc3QoZSk7aWYoIWEpcmV0dXJuIG51bGw7dmFyIG49dGhpcy5fZ2V0KGEsInRpbWVwaWNrZXIiKTtpZihuKXt2YXIgcixsPW51bGwsbz1udWxsLHU9bnVsbCxkPW4uX2RlZmF1bHRzLmV2bnRzLG09e307aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZigibWluRGF0ZSI9PT10fHwibWluRGF0ZVRpbWUiPT09dClsPWk7ZWxzZSBpZigibWF4RGF0ZSI9PT10fHwibWF4RGF0ZVRpbWUiPT09dClvPWk7ZWxzZSBpZigib25TZWxlY3QiPT09dCl1PWk7ZWxzZSBpZihkLmhhc093blByb3BlcnR5KHQpKXtpZih2b2lkIDA9PT1pKXJldHVybiBkW3RdO21bdF09aSxzPXt9fX1lbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgdClmb3IociBpbiB0Lm1pbkRhdGU/bD10Lm1pbkRhdGU6dC5taW5EYXRlVGltZT9sPXQubWluRGF0ZVRpbWU6dC5tYXhEYXRlP289dC5tYXhEYXRlOnQubWF4RGF0ZVRpbWUmJihvPXQubWF4RGF0ZVRpbWUpLGQpZC5oYXNPd25Qcm9wZXJ0eShyKSYmdFtyXSYmKG1bcl09dFtyXSk7Zm9yKHIgaW4gbSltLmhhc093blByb3BlcnR5KHIpJiYoZFtyXT1tW3JdLHN8fChzPSQuZXh0ZW5kKHt9LHQpKSxkZWxldGUgc1tyXSk7aWYocyYmaXNFbXB0eU9iamVjdChzKSlyZXR1cm47bD8obD0wPT09bD9uZXcgRGF0ZTpuZXcgRGF0ZShsKSxuLl9kZWZhdWx0cy5taW5EYXRlPWwsbi5fZGVmYXVsdHMubWluRGF0ZVRpbWU9bCk6bz8obz0wPT09bz9uZXcgRGF0ZTpuZXcgRGF0ZShvKSxuLl9kZWZhdWx0cy5tYXhEYXRlPW8sbi5fZGVmYXVsdHMubWF4RGF0ZVRpbWU9byk6dSYmKG4uX2RlZmF1bHRzLm9uU2VsZWN0PXUpfXJldHVybiB2b2lkIDA9PT1pP3RoaXMuX2Jhc2Vfb3B0aW9uRGF0ZXBpY2tlci5jYWxsKCQuZGF0ZXBpY2tlcixlLHQpOnRoaXMuX2Jhc2Vfb3B0aW9uRGF0ZXBpY2tlci5jYWxsKCQuZGF0ZXBpY2tlcixlLHN8fHQsaSl9O3ZhciBpc0VtcHR5T2JqZWN0PWZ1bmN0aW9uKGUpe3ZhciB0O2Zvcih0IGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShlKSlyZXR1cm4hMTtyZXR1cm4hMH0sZXh0ZW5kUmVtb3ZlPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBpIGluICQuZXh0ZW5kKGUsdCksdCludWxsIT09dFtpXSYmdm9pZCAwIT09dFtpXXx8KGVbaV09dFtpXSk7cmV0dXJuIGV9LHVzZUFtcG09ZnVuY3Rpb24oZSl7cmV0dXJuLTEhPT1lLmluZGV4T2YoInQiKSYmLTEhPT1lLmluZGV4T2YoImgiKX0sY29udmVydDI0dG8xMj1mdW5jdGlvbihlKXtyZXR1cm4gZT4xMiYmKGUtPTEyKSwwPT1lJiYoZT0xMiksU3RyaW5nKGUpfSxzcGxpdERhdGVUaW1lPWZ1bmN0aW9uKGUsdCxpLHMpe3RyeXt2YXIgYT1zJiZzLnNlcGFyYXRvcj9zLnNlcGFyYXRvcjokLnRpbWVwaWNrZXIuX2RlZmF1bHRzLnNlcGFyYXRvcixuPShzJiZzLnRpbWVGb3JtYXQ/cy50aW1lRm9ybWF0OiQudGltZXBpY2tlci5fZGVmYXVsdHMudGltZUZvcm1hdCkuc3BsaXQoYSkubGVuZ3RoLHI9dC5zcGxpdChhKSxsPXIubGVuZ3RoO2lmKGw+MSlyZXR1cm5bci5zcGxpY2UoMCxsLW4pLmpvaW4oYSksci5zcGxpY2UoMCxuKS5qb2luKGEpXX1jYXRjaChpKXtpZigkLmRhdGVwaWNrZXIubG9nKCJDb3VsZCBub3Qgc3BsaXQgdGhlIGRhdGUgZnJvbSB0aGUgdGltZS4gUGxlYXNlIGNoZWNrIHRoZSBmb2xsb3dpbmcgZGF0ZXRpbWVwaWNrZXIgb3B0aW9uc1xudGhyb3duIGVycm9yOiAiK2krIlxuZGF0ZVRpbWVTdHJpbmciK3QrIlxuZGF0ZUZvcm1hdCA9ICIrZSsiXG5zZXBhcmF0b3IgPSAiK3Muc2VwYXJhdG9yKyJcbnRpbWVGb3JtYXQgPSAiK3MudGltZUZvcm1hdCksaS5pbmRleE9mKCI6Iik+PTApe3ZhciBvPXQubGVuZ3RoLShpLmxlbmd0aC1pLmluZGV4T2YoIjoiKS0yKTt0LnN1YnN0cmluZyhvKTtyZXR1cm5bJC50cmltKHQuc3Vic3RyaW5nKDAsbykpLCQudHJpbSh0LnN1YnN0cmluZyhvKSldfXRocm93IGl9cmV0dXJuW3QsIiJdfSxwYXJzZURhdGVUaW1lSW50ZXJuYWw9ZnVuY3Rpb24oZSx0LGkscyxhKXt2YXIgbixyPXNwbGl0RGF0ZVRpbWUoZSxpLHMsYSk7aWYobj0kLmRhdGVwaWNrZXIuX2Jhc2VfcGFyc2VEYXRlKGUsclswXSxzKSwiIiE9PXJbMV0pe3ZhciBsPXJbMV0sbz0kLmRhdGVwaWNrZXIucGFyc2VUaW1lKHQsbCxhKTtpZihudWxsPT09byl0aHJvdyJXcm9uZyB0aW1lIGZvcm1hdCI7cmV0dXJue2RhdGU6bix0aW1lT2JqOm99fXJldHVybntkYXRlOm59fSxzZWxlY3RMb2NhbFRpbWVab25lPWZ1bmN0aW9uKGUsdCl7aWYoZSYmZS50aW1lem9uZV9zZWxlY3Qpe2UuX2RlZmF1bHRzLnVzZUxvY2FsVGltZXpvbmU9ITA7dmFyIGk9dm9pZCAwIT09dD90Om5ldyBEYXRlLHM9JC50aW1lcGlja2VyLnRpbWVab25lT2Zmc2V0U3RyaW5nKGkpO2UuX2RlZmF1bHRzLnRpbWV6b25lSXNvODYwMSYmKHM9cy5zdWJzdHJpbmcoMCwzKSsiOiIrcy5zdWJzdHJpbmcoMykpLGUudGltZXpvbmVfc2VsZWN0LnZhbChzKX19OyQudGltZXBpY2tlcj1uZXcgVGltZXBpY2tlciwkLnRpbWVwaWNrZXIudGltZVpvbmVPZmZzZXRTdHJpbmc9ZnVuY3Rpb24oZSl7dmFyIHQ9LTEqZS5nZXRUaW1lem9uZU9mZnNldCgpLGk9dCU2MDtyZXR1cm4odD49MD8iKyI6Ii0iKSsoIjAiKygxMDEqKCh0LWkpLzYwKSkudG9TdHJpbmcoKSkuc3Vic3RyKC0yKSsoIjAiKygxMDEqaSkudG9TdHJpbmcoKSkuc3Vic3RyKC0yKX0sJC50aW1lcGlja2VyLnRpbWVSYW5nZT1mdW5jdGlvbihlLHQsaSl7cmV0dXJuICQudGltZXBpY2tlci5oYW5kbGVSYW5nZSgidGltZXBpY2tlciIsZSx0LGkpfSwkLnRpbWVwaWNrZXIuZGF0ZVRpbWVSYW5nZT1mdW5jdGlvbihlLHQsaSl7JC50aW1lcGlja2VyLmRhdGVSYW5nZShlLHQsaSwiZGF0ZXRpbWVwaWNrZXIiKX0sJC50aW1lcGlja2VyLmRhdGVSYW5nZT1mdW5jdGlvbihlLHQsaSxzKXtzPXN8fCJkYXRlcGlja2VyIiwkLnRpbWVwaWNrZXIuaGFuZGxlUmFuZ2UocyxlLHQsaSl9LCQudGltZXBpY2tlci5oYW5kbGVSYW5nZT1mdW5jdGlvbihlLHQsaSxzKXtmdW5jdGlvbiBhKGUscyxhKXtzLnZhbCgpJiZuZXcgRGF0ZSh0LnZhbCgpKT5uZXcgRGF0ZShpLnZhbCgpKSYmcy52YWwoYSl9ZnVuY3Rpb24gbih0LGkscyl7aWYoJCh0KS52YWwoKSl7dmFyIGE9JCh0KVtlXS5jYWxsKCQodCksImdldERhdGUiKTthLmdldFRpbWUmJiQoaSlbZV0uY2FsbCgkKGkpLCJvcHRpb24iLHMsYSl9fXJldHVybiAkLmZuW2VdLmNhbGwodCwkLmV4dGVuZCh7b25DbG9zZTpmdW5jdGlvbihlLHQpe2EodGhpcyxpLGUpfSxvblNlbGVjdDpmdW5jdGlvbihlKXtuKHRoaXMsaSwibWluRGF0ZSIpfX0scyxzLnN0YXJ0KSksJC5mbltlXS5jYWxsKGksJC5leHRlbmQoe29uQ2xvc2U6ZnVuY3Rpb24oZSxpKXthKHRoaXMsdCxlKX0sb25TZWxlY3Q6ZnVuY3Rpb24oZSl7bih0aGlzLHQsIm1heERhdGUiKX19LHMscy5lbmQpKSwidGltZXBpY2tlciIhPWUmJnMucmVmb3JtYXQmJiQoW3QsaV0pLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9JCh0aGlzKVtlXS5jYWxsKCQodGhpcyksIm9wdGlvbiIsImRhdGVGb3JtYXQiKSxpPW5ldyBEYXRlKCQodGhpcykudmFsKCkpOyQodGhpcykudmFsKCkmJmkmJiQodGhpcykudmFsKCQuZGF0ZXBpY2tlci5mb3JtYXREYXRlKHQsaSkpfSkpLGEodCxpLHQudmFsKCkpLG4odCxpLCJtaW5EYXRlIiksbihpLHQsIm1heERhdGUiKSwkKFt0LmdldCgwKSxpLmdldCgwKV0pfSwkLnRpbWVwaWNrZXIudmVyc2lvbj0iMS4xLjEifWZ1bmN0aW9uIFRpbWVwaWNrZXIoKXt0aGlzLnJlZ2lvbmFsPVtdLHRoaXMucmVnaW9uYWxbIiJdPXtjdXJyZW50VGV4dDoiTm93IixjbG9zZVRleHQ6IkRvbmUiLGFtTmFtZXM6WyJBTSIsIkEiXSxwbU5hbWVzOlsiUE0iLCJQIl0sdGltZUZvcm1hdDoiSEg6bW0iLHRpbWVTdWZmaXg6IiIsdGltZU9ubHlUaXRsZToiQ2hvb3NlIFRpbWUiLHRpbWVUZXh0OiJUaW1lIixob3VyVGV4dDoiSG91ciIsbWludXRlVGV4dDoiTWludXRlIixzZWNvbmRUZXh0OiJTZWNvbmQiLG1pbGxpc2VjVGV4dDoiTWlsbGlzZWNvbmQiLHRpbWV6b25lVGV4dDoiVGltZSBab25lIixpc1JUTDohMX0sdGhpcy5fZGVmYXVsdHM9e3Nob3dCdXR0b25QYW5lbDohMCx0aW1lT25seTohMSxzaG93SG91cjohMCxzaG93TWludXRlOiEwLHNob3dTZWNvbmQ6ITEsc2hvd01pbGxpc2VjOiExLHNob3dUaW1lem9uZTohMSxzaG93VGltZTohMCxzdGVwSG91cjoxLHN0ZXBNaW51dGU6MSxzdGVwU2Vjb25kOjEsc3RlcE1pbGxpc2VjOjEsaG91cjowLG1pbnV0ZTowLHNlY29uZDowLG1pbGxpc2VjOjAsdGltZXpvbmU6bnVsbCx1c2VMb2NhbFRpbWV6b25lOiExLGRlZmF1bHRUaW1lem9uZToiKzAwMDAiLGhvdXJNaW46MCxtaW51dGVNaW46MCxzZWNvbmRNaW46MCxtaWxsaXNlY01pbjowLGhvdXJNYXg6MjMsbWludXRlTWF4OjU5LHNlY29uZE1heDo1OSxtaWxsaXNlY01heDo5OTksbWluRGF0ZVRpbWU6bnVsbCxtYXhEYXRlVGltZTpudWxsLG9uU2VsZWN0Om51bGwsaG91ckdyaWQ6MCxtaW51dGVHcmlkOjAsc2Vjb25kR3JpZDowLG1pbGxpc2VjR3JpZDowLGFsd2F5c1NldFRpbWU6ITAsc2VwYXJhdG9yOiIgIixhbHRGaWVsZFRpbWVPbmx5OiEwLGFsdFRpbWVGb3JtYXQ6bnVsbCxhbHRTZXBhcmF0b3I6bnVsbCxhbHRUaW1lU3VmZml4Om51bGwscGlja2VyVGltZUZvcm1hdDpudWxsLHBpY2tlclRpbWVTdWZmaXg6bnVsbCxzaG93VGltZXBpY2tlcjohMCx0aW1lem9uZUlzbzg2MDE6ITEsdGltZXpvbmVMaXN0Om51bGwsYWRkU2xpZGVyQWNjZXNzOiExLHNsaWRlckFjY2Vzc0FyZ3M6bnVsbCxjb250cm9sVHlwZToic2xpZGVyIixkZWZhdWx0VmFsdWU6bnVsbCxwYXJzZToic3RyaWN0In0sJC5leHRlbmQodGhpcy5fZGVmYXVsdHMsdGhpcy5yZWdpb25hbFsiIl0pfX0pKGpRdWVyeSk7DQoNCg0KDQokKGZ1bmN0aW9uKCkgew0KDQogICAgLy8gKioqIEFkZCBzbW9vdGggc2Nyb2xsaW5nIHRvIGFsbCAuc21vb3RoLXNjcm9sbCBsaW5rcw0KICAgICQoImEuc21vb3RoLXNjcm9sbCIpLm9uKCdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KSB7DQogICAgICAgIGlmICh0aGlzLmhhc2ggIT09ICIiKSB7DQogICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgICAgICAgdmFyIG9mZnNldCA9IDA7DQogICAgICAgICAgICB2YXIgaGFzaCA9IHRoaXMuaGFzaDsNCiAgICAgICAgICAgIHZhciBuZXdVcmwgPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgKyAiLy8iICsgd2luZG93LmxvY2F0aW9uLmhvc3QgKw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArIGhhc2g7DQogICAgICAgICAgICBoZWFkZXJIZWlnaHQgPSAkKCdoZWFkZXIuc3RpY2t5LXRvcCcpLmhlaWdodCgpOw0KICAgICAgICAgICAgJCgnaHRtbCwgYm9keScpLmFuaW1hdGUoe3Njcm9sbFRvcDogJChoYXNoKS5vZmZzZXQoKS50b3AgLSBoZWFkZXJIZWlnaHQgLSBvZmZzZXR9LCA4MDApOw0KICAgICAgICAgICAgLy8gaGlzdG9yeS5wdXNoU3RhdGUoe30sICcnLCBuZXdVcmwpOw0KICAgICAgICB9DQogICAgfSk7DQoNCg0KICAgIC8vIGVjYl9maWxlX3NlbGVjdG9yDQogICAgJCgnLmVjYl9maWxlX3NlbGVjdG9yX3NlbGVjdCBzZWxlY3QnKS5jaGFuZ2UoIGZ1bmN0aW9uKCkgew0KICAgICAgICB2YXIgaW1ndGFnID0gJCh0aGlzKS5wYXJlbnQoKS5uZXh0KCk7DQogICAgICAgIGltZ3RhZy5hdHRyKCdzcmMnLCBpbWd0YWcuZGF0YSgndXBsb2Fkc3VybCcpKycvJyskKHRoaXMpLnZhbCgpKTsNCiAgICB9KTsNCg0KDQoNCiAgIC8vIGVjYl9tdWx0aXBsZV9zZWxlY3QNCiAgICQoJy5lY2JfbXVsdGlwbGVfc2VsZWN0IHNlbGVjdCcpLmNoYW5nZShmdW5jdGlvbigpIHsNCiAgICAgIHZhciBzZWxlY3RlZFZhbHVlcyA9ICQodGhpcykudmFsKCkgPyAkKHRoaXMpLnZhbCgpLmpvaW4oJywnKSA6ICcnOw0KICAgICAgJCh0aGlzKS5zaWJsaW5ncygnLmVjYl9zZWxlY3RfaW5wdXQnKS52YWwoIHNlbGVjdGVkVmFsdWVzICk7DQogICAgICAvLyB0aGVuIHVwZGF0ZSBzdW1tYXJ5IHRleHQgLSBpZiBpdCBleGlzdHMNCiAgICAgIHZhciAkc2VsZWN0U3VtbWFyeSA9ICQodGhpcykuc2libGluZ3MoJy5lY2Jfc2VsZWN0X3N1bW1hcnknKTsNCiAgICAgIGlmICggJHNlbGVjdFN1bW1hcnkubGVuZ3RoPjAgKSB7DQogICAgICAgICB2YXIgc2VsZWN0ZWRUZXh0ID0gJCh0aGlzKS5jaGlsZHJlbignb3B0aW9uOnNlbGVjdGVkJykubWFwKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgICAgcmV0dXJuICQodGhpcykudGV4dCgpOw0KICAgICAgICAgICAgfSkuZ2V0KCkuam9pbignLCAnKTsNCiAgICAgICAgICQodGhpcykuc2libGluZ3MoJy5lY2Jfc2VsZWN0X3N1bW1hcnknKS52YWwoIHNlbGVjdGVkVGV4dCApOw0KICAgICAgICAgdmFyICRzdW1tYXJ5VGV4dCA9ICQodGhpcykuc2libGluZ3MoJy5lY2Jfc2VsZWN0X3N1bW1hcnknKS5jaGlsZHJlbignLmVjYl9zZWxlY3RfdGV4dCcpOw0KICAgICAgICAgaWYgKCBzZWxlY3RlZFRleHQ9PScnICkgew0KICAgICAgICAgICAgJHNlbGVjdFN1bW1hcnkuY2hpbGRyZW4oJy5lY2Jfc2VsZWN0X3RleHQnKS5odG1sKCAkc3VtbWFyeVRleHQuZGF0YSgnZW1wdHknKSApOw0KICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICRzZWxlY3RTdW1tYXJ5LmNoaWxkcmVuKCcuZWNiX3NlbGVjdF90ZXh0JykuaHRtbCggc2VsZWN0ZWRUZXh0ICk7DQogICAgICAgICB9DQogICAgICB9DQogICB9KTsNCg0KICAgLy8gZWNiX2NvbXBhY3QgLSBzaG93ICYgaGlkZSB0aGUgZnVsbCBzZWxlY3QgJiB1cGRhdGUgc3VtbWFyeSB0ZXh0DQogICAkKCcuZWNiX2NvbXBhY3QgLmVjYl9zZWxlY3RfZWRpdCcpLmNsaWNrKCBmdW5jdGlvbihlKSB7DQogICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAkKHRoaXMpLmNsb3Nlc3QoJy5lY2JfY29tcGFjdCcpLnRvZ2dsZUNsYXNzKCdzaG93Jyk7DQogICB9KTsNCg0KDQoNCiAgIC8vIGVjYl9yZXBlYXRlcg0KICAgJCgnLmVjYl9yZXBlYXRlcicpLm9uKCdjaGFuZ2UnLCAnLnJlcGVhdGVyLWZpZWxkJywgZnVuY3Rpb24oZSkgew0KICAgICAgdXBkYXRlX3JlcGVhdGVyKCAkKCQodGhpcykuZGF0YSgncmVwZWF0ZXInKSkgKTsNCiAgIH0pOw0KDQogICAkKCcuZWNiX3JlcGVhdGVyJykub24oJ2NsaWNrJywgJy5lY2IyLXJlcGVhdGVyLWFkZCcsIGZ1bmN0aW9uKGUpIHsNCiAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICAgIHZhciAkZmllbGRXcmFwcGVyID0gJCh0aGlzKS5jbG9zZXN0KCcucmVwZWF0ZXItd3JhcHBlcicpOw0KICAgICAgJGZpZWxkV3JhcHBlci5jbG9uZSgpLmluc2VydEFmdGVyKCAkZmllbGRXcmFwcGVyICkuZmluZCgnLnJlcGVhdGVyLWZpZWxkJykudmFsKCcnKTsNCiAgICAgIHVwZGF0ZV9yZXBlYXRlciggJCgkKHRoaXMpLmRhdGEoJ3JlcGVhdGVyJykpICk7DQogICB9KTsNCiAgICQoJy5lY2JfcmVwZWF0ZXInKS5vbignY2xpY2snLCAnLmVjYjItcmVwZWF0ZXItcmVtb3ZlJywgZnVuY3Rpb24oZSkgew0KICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOw0KICAgICAgdmFyICRmaWVsZFdyYXBwZXIgPSAkKHRoaXMpLmNsb3Nlc3QoJy5yZXBlYXRlci13cmFwcGVyJyksDQogICAgICAgICAgJHJlcGVhdGVyID0gJCgkKHRoaXMpLmRhdGEoJ3JlcGVhdGVyJykpDQogICAgICAkZmllbGRXcmFwcGVyLnJlbW92ZSgpOw0KICAgICAgdXBkYXRlX3JlcGVhdGVyKCAkcmVwZWF0ZXIgKTsNCiAgIH0pOw0KDQoNCg0KICAgZnVuY3Rpb24gdXBkYXRlX3JlcGVhdGVyKCAkcmVwZWF0ZXIgKSB7DQogICAgICB2YXIgJHBhcmVudCA9ICQoICRyZXBlYXRlci5kYXRhKCdwYXJlbnQnKSApLA0KICAgICAgICAgICRmaWVsZHMgPSBbXTsNCiAgICAgICRyZXBlYXRlci5maW5kKCcucmVwZWF0ZXItZmllbGQnKS5lYWNoKGZ1bmN0aW9uKGkpew0KICAgICAgICAgJGZpZWxkcy5wdXNoKCAkKHRoaXMpLnZhbCgpICk7DQogICAgICB9KQ0KICAgICAgJHBhcmVudC52YWwoICRmaWVsZHMuam9pbignfHwnKSApOw0KICAgfQ0KDQoNCg0KICAgLy8gc29ydGFibGUgbGlzdHMNCiAgICQoJ3VsLnNvcnRhYmxlLWVjYjItbGlzdCcpLmVhY2goZnVuY3Rpb24oKSB7DQogICAgICAgIHZhciAkcGFyZW50ID0gJCh0aGlzKS5jbG9zZXN0KCcuZWNiMi1jYicpOw0KICAgICAgICB2YXIgJHNlbGVjdGVkID0gJHBhcmVudC5maW5kKCd1bC5zZWxlY3RlZC1pdGVtcycpOw0KICAgICAgICAkKHRoaXMpLnNvcnRhYmxlKHsNCiAgICAgICAgICAgIGNvbm5lY3RXaXRoOiAkc2VsZWN0ZWQsDQogICAgICAgICAgICBkZWxheTogMTUwLA0KICAgICAgICAgICAgcmV2ZXJ0OiAzMDAsDQogICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3VpLXN0YXRlLWhpZ2hsaWdodCcsDQogICAgICAgICAgICBpdGVtczogJ2xpOm5vdCgubm8tc29ydCknLA0KICAgICAgICAgICAgaGVscGVyOiBmdW5jdGlvbihldmVudCwgdWkpIHsNCiAgICAgICAgICAgICAgICBpZiAoIXVpLmhhc0NsYXNzKCdzZWxlY3RlZCcpKSB7DQogICAgICAgICAgICAgICAgICAgIHVpLmFkZENsYXNzKCdzZWxlY3RlZCcpDQogICAgICAgICAgICAgICAgICAgICAgICAuc2libGluZ3MoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgLnJlbW92ZUNsYXNzKCdzZWxlY3RlZCcpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB2YXIgZWxlbWVudHMgPSB1aS5wYXJlbnQoKQ0KICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oJy5zZWxlY3RlZCcpDQogICAgICAgICAgICAgICAgICAgIC5jbG9uZSgpLA0KICAgICAgICAgICAgICAgICAgICBoZWxwZXIgPSAkKCc8bGkvPicpOw0KICAgICAgICAgICAgICAgIHVpLmRhdGEoJ211bHRpZHJhZycsIGVsZW1lbnRzKS5zaWJsaW5ncygnLnNlbGVjdGVkJykucmVtb3ZlKCk7DQogICAgICAgICAgICAgICAgcmV0dXJuIGhlbHBlci5hcHBlbmQoZWxlbWVudHMpOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIHN0b3A6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KICAgICAgICAgICAgICAgIHZhciBlbGVtZW50cyA9IHVpLml0ZW0uZGF0YSgnbXVsdGlkcmFnJyk7DQogICAgICAgICAgICAgICAgdmFyICR1bFNlbGVjdGVkID0gJCh1aS5pdGVtKS5wYXJlbnQoKTsNCiAgICAgICAgICAgICAgICB1aS5pdGVtLmFmdGVyKGVsZW1lbnRzKS5yZW1vdmUoKTsNCiAgICAgICAgICAgICAgICB1cGRhdGVFQ0IyQ0JJbnB1dCgkdWxTZWxlY3RlZCk7DQogICAgICAgICAgICB9LA0KICAgICAgICAgICAgcmVjZWl2ZTogZnVuY3Rpb24oZXZlbnQsIHVpKSB7DQogICAgICAgICAgICAgICAgdmFyIGVsZW1lbnRzID0gdWkuaXRlbS5kYXRhKCdtdWx0aWRyYWcnKTsNCiAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5kYXRhKCdtYXgtbnVtYmVyJykgJiYgJCh0aGlzKS5jaGlsZHJlbigpLmxlbmd0aCAtIDEgPiAkKHRoaXMpLmRhdGEoJ21heC1udW1iZXInKSkgew0KICAgICAgICAgICAgICAgICAgICAkKHVpLnNlbmRlcikuc29ydGFibGUoJ2NhbmNlbCcpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHVwZGF0ZUVDQjJQbGFjZWhvbGRlcigkKHRoaXMpKTsNCiAgICAgICAgICAgICAgICAgICAgJChlbGVtZW50cykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIHVpLXN0YXRlLWhvdmVyJykNCiAgICAgICAgICAgICAgICAgICAgICAgIC5maW5kKCcuc29ydGFibGUtcmVtb3ZlJykucmVtb3ZlQ2xhc3MoJ2hpZGRlbicpOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgfSk7DQoNCiAgICAvLyByZW1vdmUgZnJvbSBzZWxlY3RlZCBsaXN0IC0gYnkgZHJhZ2dpbmcgYmFjayB0byBhdmFpbGFibGUNCiAgICAkKCd1bC5zZWxlY3RlZC1pdGVtcycpLmVhY2goZnVuY3Rpb24oKSB7DQogICAgICAgIHZhciAkcGFyZW50ID0gJCh0aGlzKS5jbG9zZXN0KCcuZWNiMi1jYicpOw0KICAgICAgICB2YXIgJGF2YWlsYWJsZSA9ICRwYXJlbnQuZmluZCgndWwuYXZhaWxhYmxlLWl0ZW1zJyk7DQogICAgICAgICQodGhpcykuc29ydGFibGUoew0KICAgICAgICAgICAgY29ubmVjdFdpdGg6ICRhdmFpbGFibGUsDQogICAgICAgICAgICBkZWxheTogMTUwLA0KICAgICAgICAgICAgcmV2ZXJ0OiAzMDAsDQogICAgICAgICAgICBwbGFjZWhvbGRlcjogJ3VpLXN0YXRlLWhpZ2hsaWdodCcsDQogICAgICAgICAgICBzdG9wOiBmdW5jdGlvbihldmVudCwgdWkpIHsNCiAgICAgICAgICAgICAgICB2YXIgJHVsU2VsZWN0ZWQgPSAkKHVpLml0ZW0pLmNsb3Nlc3QoJy5lY2IyLWNiJykuZmluZCgnLnNlbGVjdGVkLWl0ZW1zJyk7DQogICAgICAgICAgICAgICAgJCh1aS5pdGVtKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQnKQ0KICAgICAgICAgICAgICAgICQodWkuaXRlbSkuY2hpbGRyZW4oJy5zb3J0YWJsZS1yZW1vdmUnKS5hZGRDbGFzcygnaGlkZGVuJyk7DQogICAgICAgICAgICAgICAgdXBkYXRlRUNCMkNCSW5wdXQoJHVsU2VsZWN0ZWQpOw0KICAgICAgICAgICAgICAgIHVwZGF0ZUVDQjJQbGFjZWhvbGRlcigkdWxTZWxlY3RlZCk7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgIH0pOw0KDQogICAgLy8gcmVtb3ZlIGZyb20gc2VsZWN0ZWQgbGlzdCAtIGJ5IGNsaWNraW5nIHJlbW92ZSBpY29uDQogICAgJChkb2N1bWVudCkub24oJ2NsaWNrJywgJyNzZWxlY3RlZC1pdGVtcyAuc29ydGFibGUtcmVtb3ZlJywgZnVuY3Rpb24oZSkgew0KICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICAgIHZhciAkdWxTZWxlY3RlZCA9ICQodGhpcykuY2xvc2VzdCgndWwuc2VsZWN0ZWQtaXRlbXMnKTsNCiAgICAgICAgdmFyICR1bEF2YWlsYWJsZSA9ICQodGhpcykuY2xvc2VzdCgnLmVjYjItY2InKS5maW5kKCcuYXZhaWxhYmxlLWl0ZW1zJyk7DQogICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ2hpZGRlbicpDQogICAgICAgICAgICAucGFyZW50KCdsaScpLnJlbW92ZUNsYXNzKCduby1zb3J0JykNCiAgICAgICAgICAgIC5hcHBlbmRUbygkdWxBdmFpbGFibGUpOw0KICAgICAgICB1cGRhdGVFQ0IyQ0JJbnB1dCgkdWxTZWxlY3RlZCk7DQogICAgICAgIHVwZGF0ZUVDQjJQbGFjZWhvbGRlcigkdWxTZWxlY3RlZCk7DQogICAgfSk7DQoNCiAgICBmdW5jdGlvbiB1cGRhdGVFQ0IyQ0JJbnB1dCgkdWxTZWxlY3RlZCkgew0KICAgICAgICB2YXIgJGFsbFNlbGVjdGVkID0gJHVsU2VsZWN0ZWQuY2hpbGRyZW4oJ2xpOm5vdCgucGxhY2Vob2xkZXIpJyk7DQogICAgICAgIHZhciAkdGFyZ2V0SW5wdXQgPSAkKCcjJyArICR1bFNlbGVjdGVkLmRhdGEoJ2Ntc21zLWNiLWlucHV0JykpOw0KICAgICAgICB2YXIgc2VsZWN0ZWRTdHIgPSAnJzsNCiAgICAgICAgdmFyIHJlcXVpcmVkTnVtYmVyID0gJHVsU2VsZWN0ZWQuZGF0YSgncmVxdWlyZWQtbnVtYmVyJyk7DQogICAgICAgIGlmIChyZXF1aXJlZE51bWJlciAmJiAkYWxsU2VsZWN0ZWQubGVuZ3RoICE9IHJlcXVpcmVkTnVtYmVyKSB7DQogICAgICAgICAgICAkdGFyZ2V0SW5wdXQudmFsKCcnKTsgLy8gc2V0IHRvIGVtcHR5DQoNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICRhbGxTZWxlY3RlZC5lYWNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgICAgIGlmIChzZWxlY3RlZFN0ciA9PSAnJykgew0KICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFN0ciA9ICQodGhpcykuZGF0YSgnY21zbXMtaXRlbS1pZCcpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkU3RyID0gc2VsZWN0ZWRTdHIgKyAnLCcgKyAkKHRoaXMpLmRhdGEoJ2Ntc21zLWl0ZW0taWQnKTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgICR0YXJnZXRJbnB1dC52YWwoc2VsZWN0ZWRTdHIpOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gdXBkYXRlRUNCMlBsYWNlaG9sZGVyKCR1bFNlbGVjdGVkKSB7DQogICAgICAgIHZhciByZXF1aXJlZE51bWJlciA9ICR1bFNlbGVjdGVkLmRhdGEoJ3JlcXVpcmVkLW51bWJlcicpOw0KICAgICAgICB2YXIgbnVtYmVyU2VsZWN0ZWQgPSAkdWxTZWxlY3RlZC5jaGlsZHJlbigpLmxlbmd0aCAtIDE7IC8vIGV4Y2x1ZGUgcGxhY2Vob2xkZXINCiAgICAgICAgaWYgKCghcmVxdWlyZWROdW1iZXIgJiYgbnVtYmVyU2VsZWN0ZWQgPiAwKSB8fCAocmVxdWlyZWROdW1iZXIgPiAwICYmIG51bWJlclNlbGVjdGVkID09IHJlcXVpcmVkTnVtYmVyKSkgew0KICAgICAgICAgICAgJHVsU2VsZWN0ZWQuY2hpbGRyZW4oJy5wbGFjZWhvbGRlcicpLmFkZENsYXNzKCdoaWRkZW4nKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICR1bFNlbGVjdGVkLmNoaWxkcmVuKCcucGxhY2Vob2xkZXInKS5yZW1vdmVDbGFzcygnaGlkZGVuJyk7DQogICAgICAgIH0NCg0KDQogICAgfQ0KDQoNCg0KICAgIC8vIGRhdGVwaWNrZXIgJiB0aW1lcGlja2VyIGZ1bmN0aW9ucyAgICANCiAgICAkKCcudGltZXBpY2tlcicpLmVhY2goZnVuY3Rpb24oKSB7DQogICAgICAgICQodGhpcykudGltZXBpY2tlciggew0KICAgICAgICAgICAgdGltZUZvcm1hdDogJCh0aGlzKS5kYXRhKCd0aW1lLWZvcm1hdCcpDQogICAgICAgIH0pOw0KICAgIH0pOw0KDQogICAgJCgnLmRhdGVwaWNrZXInKS5lYWNoKGZ1bmN0aW9uKCkgew0KICAgICAgICAkKHRoaXMpLmRhdGVwaWNrZXIoIHsNCiAgICAgICAgICAgIHNob3dPdGhlck1vbnRoczogdHJ1ZSwNCiAgICAgICAgICAgIHNlbGVjdE90aGVyTW9udGhzOiB0cnVlLA0KICAgICAgICAgICAgZGF0ZUZvcm1hdDogJCh0aGlzKS5kYXRhKCdkYXRlLWZvcm1hdCcpLA0KICAgICAgICAgICAgY2hhbmdlTW9udGg6ICQodGhpcykuZGF0YSgnY2hhbmdlLW1vbnRoJyksDQogICAgICAgICAgICBjaGFuZ2VZZWFyOiAkKHRoaXMpLmRhdGEoJ2NoYW5nZS15ZWFyJyksDQogICAgICAgICAgICB5ZWFyUmFuZ2U6ICQodGhpcykuZGF0YSgneWVhci1yYW5nZScpDQogICAgICAgIH0pOw0KICAgIH0pOw0KDQogICAgJCgnLmRhdGV0aW1lcGlja2VyJykuZWFjaChmdW5jdGlvbigpIHsNCiAgICAgICAgJCh0aGlzKS5kYXRldGltZXBpY2tlciggew0KICAgICAgICAgICAgc2hvd090aGVyTW9udGhzOiB0cnVlLA0KICAgICAgICAgICAgc2VsZWN0T3RoZXJNb250aHM6IHRydWUsDQogICAgICAgICAgICBkYXRlRm9ybWF0OiAkKHRoaXMpLmRhdGEoJ2RhdGUtZm9ybWF0JyksDQogICAgICAgICAgICB0aW1lRm9ybWF0OiAkKHRoaXMpLmRhdGEoJ3RpbWUtZm9ybWF0JyksDQogICAgICAgICAgICBjaGFuZ2VNb250aDogJCh0aGlzKS5kYXRhKCdjaGFuZ2UtbW9udGgnKSwNCiAgICAgICAgICAgIGNoYW5nZVllYXI6ICQodGhpcykuZGF0YSgnY2hhbmdlLXllYXInKSwNCiAgICAgICAgICAgIHllYXJSYW5nZTogJCh0aGlzKS5kYXRhKCd5ZWFyLXJhbmdlJykNCiAgICAgICAgfSk7DQogICAgfSk7DQoNCg0KICAgIC8qIGNvbG9yIHBpY2tlciAtIGNvbHBpY2sgKi8NCiAgICAkKCcuY29sb3JwaWNrZXInKS5jb2xwaWNrKHsNCiAgICAgICAgY29sb3JTY2hlbWU6ICdkYXJrJywNCiAgICAgICAgc3VibWl0IDogZmFsc2UsDQogICAgICAgIG9uQ2hhbmdlOmZ1bmN0aW9uKGhzYixoZXgscmdiLGVsKSB7DQogICAgICAgICAgICB2YXIgaGFzaCA9ICQoZWwpLmRhdGEoJ25vLWhhc2gnKSA/ICcnIDogJyMnOyANCiAgICAgICAgICAgICQoZWwpLnZhbChoYXNoK2hleCkuY3NzKCdib3JkZXItcmlnaHQnLCAnMzBweCBzb2xpZCAjJytoZXgpOw0KICAgICAgICB9LA0KICAgICAgICBvbkJlZm9yZVNob3c6IGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgJCh0aGlzKS5jb2xwaWNrU2V0Q29sb3IodGhpcy52YWx1ZSk7DQogICAgICAgIH0NCiAgICB9KQ0KICAgIC5vbigna2V5dXAnLCBmdW5jdGlvbigpIHsNCiAgICAgICAgaWYgKHRoaXMudmFsdWU9PScnKSB7DQogICAgICAgICAgICAkKHRoaXMpLmNzcygnYm9yZGVyLXJpZ2h0JywgJzFweCBzb2xpZCAjYWFhJyk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAkKHRoaXMpLmNvbHBpY2tTZXRDb2xvcih0aGlzLnZhbHVlKTsNCiAgICAgICAgfQ0KICAgIH0pDQogICAgLmVhY2goZnVuY3Rpb24oKXsNCiAgICAgICAgaWYgKHRoaXMudmFsdWUhPScnKSB7DQogICAgICAgICAgICAkKHRoaXMpLmNzcygnYm9yZGVyLXJpZ2h0JywgJzMwcHggc29saWQgIycrdGhpcy52YWx1ZS5yZXBsYWNlQWxsKCcjJywgJycpKTsNCiAgICAgICAgfSANCiAgICB9KTsNCg0KDQoNCn0pOw==]]></data>
	</file>
	<file>
	  <filename>/lib/js/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgovLyBTZXR1cCBNb2R1bGUgUGVybWlzc2lvbnMKJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oRUNCMjo6TUFOQUdFX1BFUk0sJ0V4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIgLSBNYW5hZ2UnKTsKCgo=]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgovLyByZW1vdmUgdGhlIHBlcm1pc3Npb25zLCBldGMKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oRUNCMjo6TUFOQUdFX1BFUk0pOwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgpOwokdGhpcy0+RGVsZXRlVGVtcGxhdGUoKTsKCgo=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRUNCMiAtIEV4dGVuZGVkIENvbnRlbnQgQmxvY2tzIDIKIyBBdXRob3I6IENocmlzIFRheWxvcgojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awojIExpY2VuY2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMwojICAgICAgICAgIHNlZSAvRUNCMi9sYW5nL0xJQ0VOQ0UudHh0IG9yIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgovLyByZW1vdmUgcGVybWlzc2lvbiBVU0VfRUNCMgpkZWZpbmUoJ1VTRV9FQ0IyJywgJ1VzZSBFeHRlbmRlZCBDb250ZW50IEJsb2NrcyAyJyk7CiRkYiA9ICR0aGlzLT5HZXREYigpOwppZiAoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzEuNCcpIDwgMCApIHsKICAgICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKFVTRV9FQ0IyKTsKfQokbW9kdWxlX3BhdGggPSAkdGhpcy0+R2V0TW9kdWxlUGF0aCgpOwppZiAoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzEuOCcpIDwgMCApIHsKICAgIC8vIHJlbW92ZSBzdWIgZGlycwogICAgJGRpcnNUb1JlbW92ZSA9IFsnL2xpYi9qcy9pbWFnZXMnLCAnL2ljb25zJ107CiAgICBmb3JlYWNoICgkZGlyc1RvUmVtb3ZlIGFzICRkZWxEaXIpIHsKICAgICAgICBmb3JlYWNoIChnbG9iKCRtb2R1bGVfcGF0aC4kZGVsRGlyLicvKi4qJykgYXMgJGZpbGVuYW1lKSBAdW5saW5rKCRmaWxlbmFtZSk7CiAgICAgICAgQHJtZGlyKCRtb2R1bGVfcGF0aC4kZGVsRGlyKTsKICAgIH0KICAgIC8vIGluZGl2aWR1YWwgZmlsZXMgdG8gcmVtb3ZlCiAgICAkZmlsZXNUb1JlbW92ZSA9IFsnL2xpYi9qcy9tQ29sb3JQaWNrZXIubWluLmpzJywgJy9jaGFuZ2Vsb2cuaW5jJywgJy9saWIvanMvanF1ZXJ5LXVpLXRpbWVwaWNrZXItYWRkb24uanMnLCAKICAgICAgICAnL2xpYi9qcy9jb2xwaWNrLmpzJ107CiAgICBmb3JlYWNoICgkZmlsZXNUb1JlbW92ZSBhcyAkZGVsRmlsZSkgQHVubGluaygkbW9kdWxlX3BhdGguJGRlbEZpbGUpOwp9CgppZiAoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwgJzIuMCcpIDwgMCApIHsKICAgIC8vIGluZGl2aWR1YWwgZmlsZXMgdG8gcmVtb3ZlCiAgICAkZmlsZXNUb1JlbW92ZSA9IFsKICAgICAgICAnL2xpYi9jbGFzcy5lY2IyX3Rvb2xzLnBocCcsCiAgICAgICAgJy90ZXN0L2VjYjJfc29ydGFibGVfdWR0X3Rlc3QucGhwJywKICAgICAgICAnL3RlbXBsYXRlcy9jb2xvcnBpY2tlcl90ZW1wbGF0ZS50cGwnLAogICAgICAgICcvdGVtcGxhdGVzL2RhdGVwaWNrZXJfdGVtcGxhdGUudHBsJywKICAgICAgICAnL3RlbXBsYXRlcy9pbWFnZV90ZW1wbGF0ZS50cGwnLAogICAgICAgICcvdGVtcGxhdGVzL2lucHV0X3JlcGVhdGVyX3RlbXBsYXRlLnRwbCcsCiAgICAgICAgJy90ZW1wbGF0ZXMvc2VsZWN0X3RlbXBsYXRlLnRwbCcsCiAgICAgICAgJy90ZW1wbGF0ZXMvc29ydGFibGVsaXN0X3RlbXBsYXRlLnRwbCcsCiAgICAgICAgJy9hY3Rpb24ucmVmcmVzaC5waHAnCiAgICBdOwogICAgZm9yZWFjaCAoJGZpbGVzVG9SZW1vdmUgYXMgJGRlbEZpbGUpIEB1bmxpbmsoJG1vZHVsZV9wYXRoLiRkZWxGaWxlKTsKfQoKaWYgKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sICcxLjk5LjMnKSA8IDAgKSB7CiAgICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbihFQ0IyOjpNQU5BR0VfUEVSTSwnRXh0ZW5kZWQgQ29udGVudCBCbG9ja3MgMiAtIE1hbmFnZScpOwp9CgoK]]></data>
	</file>
	<file>
	  <filename>/moduleinfo.ini</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[W21vZHVsZV0KbmFtZSA9ICJFQ0IyIgp2ZXJzaW9uID0gIjEuOTkuNCIKYXV0aG9yID0gIkNocmlzIFRheWxvciIKYXV0aG9yZW1haWwgPSAiY2hyaXNAYmlubm92YXRpdmUuY28udWsiCm1pbmNtc3ZlcnNpb24gPSAyLjAKbGF6eWxvYWRhZG1pbiA9IDAKbGF6eWxvYWRmcm9udGVuZCA9IDEK]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/ECB2_Test_Template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogRUNCMl9UZXN0X1RlbXBsYXRlIC0gdjEuNisgLSAyMERlYzE5DQoNCiAgIC0gdjEuNyAtIDMwTWF5MjAgLSBleHRyYSB0ZXN0cyBmb3IgZHJvcGRvd24gJiBkcm9wZG93bl9mcm9tX3VkdA0KICAgLSB2MS42IC0gMjBEZWMxOSAtIGV4dHJhIGZpbGVfc2VsZWN0b3IgdGVzdHMNCiAgIC0gdjEuNSAtIDE2RmViMTkgLSBhZGRlZCBpbnB1dGVyX3JlcGVhdGVyDQogICAtIHYxLjQgLSAwNEZlYjE5IC0gdXBkYXRlZCBmb3IgQlM0IGFuZCBsYXRlc3QgdGVtcGxhdGVzDQogICAtIHYxLjMgLSAxOEFwcjE3DQoNCiAgIFRlbXBsYXRlIHN0b3JlZCBpbiBFQ0IyL3RlbXBsYXRlcy9FQ0IyX1Rlc3RfVGVtcGxhdGUudHBsDQogICAgICAtIGNyZWF0ZSBhIHZlcnkgc2ltcGxlIGNvcmU6cGFnZSB0ZW1wbGF0ZSAnRUNCMl9UZXN0JyB3aXRoIGp1c3QgdGhlIDEgbGluZToNCiAgICAgICAgICAgIHtpbmNsdWRlIGZpbGU9J21vZHVsZV9maWxlX3RwbDpFQ0IyO0VDQjJfVGVzdF9UZW1wbGF0ZS50cGwnfQ0KICAgICAgLSBjcmVhdGUgJ0VDQjIgVGVzdCcgcGFnZSwgdXNpbmcgdGhlIGFib3ZlIHRlbXBsYXRlLg0KDQoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKn17c3RyaXB9DQp7cHJvY2Vzc19wYWdlZGF0YX0NCg0Ke2NnanNfcmVxdWlyZSBsaWI9J2pxdWVyeSd9DQp7Y2dqc19yZXF1aXJlIGpzZmlsZT0nYXNzZXRzL2pzL2Jvb3RzdHJhcC5idW5kbGUubWluLmpzJ30NCntjZ2pzX3JlcXVpcmUganNmaWxlPSdhc3NldHMvanMvc2xpY2subWluLmpzJ30NCntjZ2pzX3JlcXVpcmUganNmaWxlPSdhc3NldHMvanMvbWFpbi5qcyd9DQoNCg0Key9zdHJpcH08IURPQ1RZUEUgaHRtbD4NCjxodG1sIGxhbmc9ImVuIj4NCjxoZWFkPg0KICAge2Ntc19zdHlsZXNoZWV0fQ0KICAgPHN0eWxlPntsaXRlcmFsfS5wcmUge2ZvbnQtZmFtaWx5Om1vbm9zcGFjZTsgd2hpdGUtc3BhY2U6cHJlLXdyYXA7IHdvcmQtd3JhcDpicmVhay13b3JkOw0KICAgICAgYmFja2dyb3VuZC1jb2xvcjojREREOyBwYWRkaW5nOjFlbTt9ey9saXRlcmFsfTwvc3R5bGU+DQo8L2hlYWQ+DQoNCjxib2R5IGNsYXNzPSJwYWdlLXskcGFnZV9hbGlhc30iPg0KDQp7Z2xvYmFsX2NvbnRlbnQgbmFtZT0naGVhZGVyJ30NCg0KPGRpdiBjbGFzcz0ibWFpbiI+DQogICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPg0KICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC0xMiI+DQoNCjxoMT5FQ0IyIFRlc3QgUGFnZSAxPC9oMT4NCntjb250ZW50IG9uZWxpbmU9MX0NCg0KDQoNCjxoMj4xOiB0ZXh0aW5wdXQ8L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9dGV4dGlucHV0IGxhYmVsPSIxOiB0ZXh0aW5wdXQiIGJsb2NrPSJ0ZXN0MSIgc2l6ZT0zMCBtYXhfbGVuZ3RoPTEwMSBkZWZhdWx0X3ZhbHVlPSJmaWxsIGl0IiBkZXNjcmlwdGlvbj0iVGVzdCBkZXNjcmlwdGlvbiAob3B0aW9uYWwpIGNhbiBiZSBzaG93biBoZXJlIn08L3A+DQoNCjxoMj4xYTogaW5wdXQgbm8gZGVmYXVsdCB2YWx1ZTwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iaW5wdXQiIGxhYmVsPSIxYTogaW5wdXQiIGJsb2NrPSJ0ZXN0MWEiIHNpemU9MTAwIG1heF9sZW5ndGg9MTAxIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcD4NCg0KDQoNCjxoMj4yOiB0ZXh0YXJlYTwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0idGV4dGFyZWEiIGxhYmVsPSIyOiB0ZXh0YXJlYSIgYmxvY2s9InRlc3QyIiB3eXNpd3lnPTEgcm93cz0xMCBjb2xzPTQwIGRlZmF1bHRfdmFsdWU9ImZpbGwgaXQiIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcD4NCg0KPGgyPjJhOiB0ZXh0YXJlYSBhcyAnZWRpdG9yJzwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iZWRpdG9yIiBsYWJlbD0iMmE6IGVkaXRvciIgYmxvY2s9InRlc3QyYSIgcm93cz0xMCBjb2xzPTQwIGRlZmF1bHRfdmFsdWU9ImZpbGwgaXQiIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcD4NCg0KDQoNCjxoMj4zOiBkcm9wZG93bjwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iZHJvcGRvd24iIGJsb2NrPSJ0ZXN0MyIgbGFiZWw9IjM6IGRyb3Bkb3duIiB2YWx1ZXM9IkFwcGxlPWFwcGxlLE9yYW5nZT1vcmFuZ2UiIGZpcnN0X3ZhbHVlPSJzZWxlY3QgZnJ1aXQiIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUiIGRlZmF1bHRfdmFsdWU9b3JhbmdlfTwvcD4NCg0KDQo8aDI+M2E6IGRyb3Bkb3duIC0gbXVsdGlwbGU8L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImRyb3Bkb3duIiBibG9jaz0idGVzdDNhIiBsYWJlbD0iM2E6IGRyb3Bkb3duIC0gbXVsdGlwbGUiIHZhbHVlcz0iQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxCYW5hbmEsUGluZWFwcGxlLFRlc3QgbnVtYmVyIDUsVGVzdCA2LFRlc3Q3LFRlc3Q4LHRlc3Q5LHRlc3QxMCx0ZXN0MTEiIG11bHRpcGxlPTEgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSIgc2l6ZT0xMH08L3A+DQoNCjxoMj4zYjogZHJvcGRvd24gLSBtdWx0aXBsZSAmIGNvbXBhY3Q8L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImRyb3Bkb3duIiBibG9jaz0idGVzdDNiIiBsYWJlbD0iM2I6IGNvbXBhY3QgZHJvcGRvd24gLSBtdWx0aXBsZSIgdmFsdWVzPSJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEJhbmFuYSxQaW5lYXBwbGUsVGVzdCBudW1iZXIgNSxUZXN0IDYsVGVzdDcsVGVzdDgsdGVzdDksdGVzdDEwLHRlc3QxMSIgbXVsdGlwbGU9MSBjb21wYWN0PTEgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9PC9wPg0KDQoNCjxoMj4zYzogZHJvcGRvd24gLSB1c2luZyBkcm9wZG93biBmcm9tIG1vZHVsZTwvaDI+DQo8cD57JHRlbXBWYWxzPSJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEJhbmFuYSxQaW5lYXBwbGUsVGVzdCBudW1iZXIgNSxUZXN0IDYsVGVzdDcsVGVzdDgsdGVzdDksdGVzdDEwLHRlc3QxMSJ9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImRyb3Bkb3duIiBibG9jaz10ZXN0M2MgbGFiZWw9IjNjOiBkcm9wZG93biAtIGZyb20gbW9kdWxlIiBtb2Q9IkxJU0VQcm9qZWN0cyIgdGVtcGxhdGVfc3VtbWFyeT0iaXRlbV9kcm9wZG93biIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSIgcGFnZWxpbWl0PTIwfTwvcD4NCg0KPGgyPjNkOiBkcm9wZG93biAtIHVzaW5nIGRyb3Bkb3duIGZyb20gbW9kdWxlIC0gd2l0aCBmbGlwX3ZhbHVlczwvaDI+DQo8cD57JHRlbXBWYWxzPSJBcHBsZT1hcHBsZSxPcmFuZ2U9b3JhbmdlLEJhbmFuYSxQaW5lYXBwbGUsVGVzdCBudW1iZXIgNSxUZXN0IDYsVGVzdDcsVGVzdDgsdGVzdDksdGVzdDEwLHRlc3QxMSJ9e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImRyb3Bkb3duX2Zyb21fbW9kdWxlIiBibG9jaz0idGVzdDNkIiBsYWJlbD0iM2Q6IGRyb3Bkb3duIC0gZnJvbSBtb2R1bGUgLSB3aXRoIGZsaXBfdmFsdWVzIiBtb2Q9IkxJU0VQcm9qZWN0cyIgdGVtcGxhdGVfc3VtbWFyeT0iaXRlbV9kcm9wZG93biIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSIgcGFnZWxpbWl0PTIwIGZsaXBfdmFsdWVzPTF9PC9wPg0KDQo8aDI+M2U6IGRyb3Bkb3duIGZyb20gdWR0PC9oMj4NCjxwPlNlY3Rpb24gMSBMYXlvdXQgU3R5bGU6J3tjb250ZW50X21vZHVsZSBtb2R1bGU9J0VDQjInIGZpZWxkPSdkcm9wZG93bl9mcm9tX3VkdCcgYmxvY2s9J3Rlc3QzZScgbGFiZWw9JzNlOiBkcm9wZG93biBmcm9tIHVkdCcgdWR0PSdlY2IyX3Rlc3RfdWR0X29wdGlvbnMnIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifSc8L3A+DQoNCg0KPGgyPjNmOiBkcm9wZG93biBmcm9tIHRlbXBsYXRlPC9oMj4NCjxwPlNlY3Rpb24gMSBMYXlvdXQgU3R5bGU6J3tjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kcm9wZG93biBibG9jaz0ndGVzdDNmJyBsYWJlbD0nM2Y6IGRyb3Bkb3duIGZyb20gdGVtcGxhdGUnIHRlbXBsYXRlPUVDQjJfdGVzdF90ZW1wbGF0ZV9vcHRpb25zIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifSc8L3A+DQoNCg0KPGgyPjNnOiBkcm9wZG93biBmcm9tIGN1c3RvbWdzPC9oMj4NCjxwPlNlY3Rpb24gMSBMYXlvdXQgU3R5bGU6J3tjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kcm9wZG93biBibG9jaz0ndGVzdDNnJyBsYWJlbD0nM2c6IGRyb3Bkb3duIGZyb20gY3VzdG9tZ3MnIGN1c3RvbWdzX2ZpZWxkPSdTZWN0aW9uIFN0eWxlcycgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9JzwvcD4NCg0KDQoNCg0KPGgyPjQ6IHNvcnRhYmxlbGlzdCAtIHVzaW5nIHZhbHVlczwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0IHZhbHVlcz0nYXBwbGU9QXBwbGUsb3JhbmdlPU9yYW5nZSxncmVlbj1HcmVlbix2YWx1ZT1MYWJlbCcgbGFiZWw9JzQ6IHNvcnRhYmxlbGlzdCcgZGVzY3JpcHRpb249InNvcnRhYmxlbGlzdCAtIHVzaW5nIHZhbHVlcyJ9DQoNCg0KPGgyPjRhOiBTb3J0YWJsZSBMaXN0IC0gZnJvbSBtb2R1bGU8L2gyPg0Ke2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXNvcnRhYmxlbGlzdCBibG9jaz10ZXN0NGEgbGFiZWw9IjRhOiBTb3J0YWJsZSBMaXN0IC0gZnJvbSBtb2R1bGUiIG1vZD1MSVNFUHJvamVjdHMgdGVtcGxhdGVfc3VtbWFyeT0naXRlbV9kcm9wZG93bicgcGFnZWxpbWl0PTEwfQ0KDQoNCjxoMj40Yjogc29ydGFibGVsaXN0IC0gdXNpbmcgdWR0PC9oMj4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1zb3J0YWJsZWxpc3QgYmxvY2s9dGVzdDRiIHVkdD0nZWNiMl90ZXN0X3VkdF9vcHRpb25zJyBsYWJlbD0iNGI6IFNvcnRhYmxlIExpc3QgLSBmcm9tIHVkdCJ9DQoNCg0KPGgyPjRjOiBzb3J0YWJsZWxpc3QgLSBmcm9tIHRlbXBsYXRlOiBFQ0IyX3Rlc3RfdGVtcGxhdGVfb3B0aW9uczwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0YyB0ZW1wbGF0ZT0nRUNCMl90ZXN0X3RlbXBsYXRlX29wdGlvbnMnIGxhYmVsPSc0YzogU29ydGFibGUgTGlzdCAtIGZyb20gdGVtcGxhdGU6IEVDQjJfdGVzdF90ZW1wbGF0ZV9vcHRpb25zJyBsYWJlbF9sZWZ0PSdTZWxlY3RlZCBpdGVtcyBmcm9tIHRlbXBsYXRlJyBsYWJlbF9yaWdodD0nQXZhaWxhYmxlIGl0ZW1zIGZyb20gdGVtcGxhdGUnfQ0KDQoNCjxoMj40ZDogc29ydGFibGVsaXN0IC0gZnJvbSBDdXN0b21HUzwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0ZCBjdXN0b21nc19maWVsZD0nU2VjdGlvbiBTdHlsZXMnIGxhYmVsPSI0ZDogU29ydGFibGUgTGlzdCAtIGZyb20gQ3VzdG9tR1MifQ0KDQo8aDI+NGU6IHNvcnRhYmxlbGlzdCAtIGZyb20gQ3VzdG9tR1MgLSBPVEhFUiBURVNUUzwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9c29ydGFibGVsaXN0IGJsb2NrPXRlc3Q0ZSB2YWx1ZXM9J2FwcGxlPUFwcGxlLG9yYW5nZT1PcmFuZ2UsZ3JlZW49R3JlZW4sdmFsdWU9TGFiZWwnIGxhYmVsPSI0ZTogU29ydGFibGUgTGlzdCAtIGZyb20gdmFsdWVzIC0gT1RIRVIgVEVTVFMiIGRlZmF1bHRfdmFsdWU9J29yYW5nZScgZGVzY3JpcHRpb249J2FkZHMgYWRkaXRpb25hbCB0ZXh0IGV4cGxhbmF0aW9uIGZvciBlZGl0b3InfQ0KDQoNCjxoMj41OiBjaGVja2JveDwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY2hlY2tib3giIGJsb2NrPSJ0ZXN0NSIgbGFiZWw9IlRlc3QgNTogQ2hlY2tib3ggLSBubyBkZWZhdWx0IiBkZWZhdWx0X3ZhbHVlPSIwIiBkZXNjcmlwdGlvbj0iVGVzdCBkZXNjcmlwdGlvbiAob3B0aW9uYWwpIGNhbiBiZSBzaG93biBoZXJlIn08L3A+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY2hlY2tib3giIGJsb2NrPSJ0ZXN0NWIiIGxhYmVsPSJUZXN0IDViOiBDaGVja2JveCAtIGRlZmF1bHQgTk9UIENoZWNrZWQiIGRlZmF1bHRfdmFsdWU9IjAifTwvcD4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9IkVDQjIiIGZpZWxkPSJjaGVja2JveCIgYmxvY2s9InRlc3Q1YyIgbGFiZWw9IlRlc3QgNWM6IENoZWNrYm94IC0gZGVmYXVsdCBDaGVja2VkIiBkZWZhdWx0X3ZhbHVlPSIxIn08L3A+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY2hlY2tib3giIGJsb2NrPSJ0ZXN0NWQiIGRlZmF1bHRfdmFsdWU9IjEiIGxhYmVsPScmbmJzcDsnIGlubGluZV9sYWJlbD0nY2FuIG5vdyBoYXZlIGFuIGlubGluZSBsYWJlbCBoZXJlIDopJyBkZXNjcmlwdGlvbj0iNWQ6IG5vIGxhYmVsIHNldD8ifTwvcD4NCg0KDQoNCjxoMj42OnJhZGlvPC9oMj4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9IkVDQjIiIGZpZWxkPSJyYWRpbyIgYmxvY2s9InRlc3Q2IiBsYWJlbD0iNjogcmFkaW8iIHZhbHVlcz0iQXBwbGU9YXBwbGUsT3JhbmdlPW9yYW5nZSxLaXdpZnJ1aXQ9a2l3aWZydWl0IiBkZWZhdWx0X3ZhbHVlPSdvcmFuZ2UnIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifQ0KDQoNCg0KPGgyPjc6IGNvbG9yX3BpY2tlcjwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY29sb3JfcGlja2VyIiBibG9jaz0idGVzdDciIGxhYmVsPSI3OiBjb2xvcl9waWNrZXIiIGRlZmF1bHRfdmFsdWU9IiNDQ0NDQ0MiIGFzc2lnbj10ZXN0MiBkZXNjcmlwdGlvbj0iVGVzdCBkZXNjcmlwdGlvbiAtIHNob3J0In0NCjxwIHN0eWxlPSJjb2xvcjojRkZGOyBiYWNrZ3JvdW5kLWNvbG9yOnskdGVzdDJ9OyI+Y29sb3VyOid7JHRlc3QyfSc8L3A+DQoNCjxoMj43YTogY29sb3JfcGlja2VyPC9oMj4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9IkVDQjIiIGZpZWxkPSJjb2xvcl9waWNrZXIiIGJsb2NrPSJ0ZXN0N18yQSIgbGFiZWw9IjdhOiBjb2xvcl9waWNrZXIiIGRlZmF1bHRfdmFsdWU9IiM1YzUxYTUiIGFzc2lnbj10ZXN0N2EgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gLSBzaG9ydCAtIDVjNTFhNSJ9DQo8cCBzdHlsZT0iY29sb3I6I0ZGRjsgYmFja2dyb3VuZC1jb2xvcjp7JHRlc3Q3YX07Ij5jb2xvdXI6J3skdGVzdDdhfSc8L3A+DQoNCjxoMj43YjogY29sb3JfcGlja2VyICMyYzwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY29sb3JfcGlja2VyIiBibG9jaz0idGVzdDdfMmMiIGxhYmVsPSI3YjogY29sb3JfcGlja2VyIGRlZmF1bHQgUkVEIiBkZWZhdWx0X3ZhbHVlPSIjRkYwMDAwIiBhc3NpZ249dGVzdDdfMmN9DQo8cCBzdHlsZT0iY29sb3I6I0ZGRjsgYmFja2dyb3VuZC1jb2xvcjp7JHRlc3Q3XzJjfTsiPmNvbG91cjoneyR0ZXN0N18yY30nPC9wPg0KDQo8aDI+N2M6IGNvbG9yX3BpY2tlciAjMmQ8L2gyPg0Ke2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImNvbG9yX3BpY2tlciIgYmxvY2s9InRlc3Q3YyIgbGFiZWw9IjdjOiBjb2xvcl9waWNrZXIgbm8taGFzaCIgbm9faGFzaD0xIGFzc2lnbj10ZXN0N2N9DQo8cCBzdHlsZT0iY29sb3I6I0ZGRjsgYmFja2dyb3VuZC1jb2xvcjp7JHRlc3Q3Y307Ij5jb2xvdXI6J3skdGVzdDdjfSc8L3A+DQoNCjxoMj43ZDogY29sb3JfcGlja2VyICMyZTwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iY29sb3JfcGlja2VyIiBibG9jaz0idGVzdDdkIiBsYWJlbD0iN2Q6IGNvbG9yX3BpY2tlciBjbGVhcl9jc3NfY2FjaGUiIGNsZWFyX2Nzc19jYWNoZT0xIGFzc2lnbj10ZXN0N2R9DQo8cCBzdHlsZT0iY29sb3I6I0ZGRjsgYmFja2dyb3VuZC1jb2xvcjp7JHRlc3Q3ZH07Ij5jb2xvdXI6J3skdGVzdDdkfSc8L3A+DQoNCjxoMj43ZTogY29sb3JfcGlja2VyIC0gcHJvbW9fYmdjb2xvciBjbGVhcl9jc3NfY2FjaGU8L2gyPg0KeyRwcm9tb19iZ2NvbG9yPSJ7Y29udGVudF9tb2R1bGUgbW9kdWxlPSdFQ0IyJyBmaWVsZD0nY29sb3JfcGlja2VyJyBibG9jaz0ndGVzdDdlJyBsYWJlbD0nN2U6IEJhY2tncm91bmQgQ29sb3IgJiBjbGVhcl9jc3NfY2FjaGUnIGNsZWFyX2Nzc19jYWNoZT0xfSIgc2NvcGU9Z2xvYmFsfQ0KPHAgc3R5bGU9ImNvbG9yOiNGRkY7IGJhY2tncm91bmQtY29sb3I6eyRwcm9tb19iZ2NvbG9yfTsiPmNvbG91cjoneyRwcm9tb19iZ2NvbG9yfSc8L3A+DQoNCg0KDQoNCjxoMj44OiBkYXRlX3RpbWVfcGlja2VyPC9oMj4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kYXRlX3RpbWVfcGlja2VyIGJsb2NrPSJ0ZXN0OCIgbGFiZWw9Ijg6IGRhdGVfdGltZV9waWNrZXIiIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcD4NCg0KPGgyPjhhOiBkYXRlcGlja2VyIC0gd2l0aCB0aW1lPC9oMj4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kYXRlcGlja2VyIHRpbWU9MSBibG9jaz0idGVzdDhhIiBsYWJlbD0iOGE6IGRhdGVwaWNrZXIgLSB3aXRoIHRpbWUiIGRlc2NyaXB0aW9uPSJUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifTwvcD4NCg0KPGgyPjhiOiBkYXRlcGlja2VyPC9oMj4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1kYXRlcGlja2VyIGJsb2NrPSJ0ZXN0OGIiIGxhYmVsPSI4YjogZGF0ZXBpY2tlciIgZGVzY3JpcHRpb249IlRlc3Qgd2l0aCBvcHRpb25zOiBjaGFuZ2VfbW9udGgsIGNoYW5nZV95ZWFyLCB5ZWFyX3JhbmdlPScxOTkwOjIwNTAsIGFuZCB0aW1lIiBjaGFuZ2VfbW9udGg9dHJ1ZSBjaGFuZ2VfeWVhcj0xIHllYXJfcmFuZ2U9JzE5OTA6MjA1MCcgdGltZT0xfTwvcD4NCg0KPGgyPjhjOiB0aW1lcGlja2VyPC9oMj4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD10aW1lcGlja2VyIGJsb2NrPSJ0ZXN0OGMiIGxhYmVsPSI4YzogdGltZXBpY2tlciIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9PC9wPg0KDQoNCjxoMj45OiBmaWxlX3NlbGVjdG9yPC9oMj4NCjxwPnNlbGVjdGVkIGZpbGU6J3tjb250ZW50X21vZHVsZSBtb2R1bGU9IkVDQjIiIGZpZWxkPSJmaWxlX3NlbGVjdG9yIiBibG9jaz0idGVzdDkiIGxhYmVsPSI5OiBmaWxlX3NlbGVjdG9yIiBkaXI9ImltYWdlcyIgZmlsZXR5cGVzPSJnaWYscG5nLGpwZyIgZXhjbHVkZXByZWZpeD0idGh1bWJfIiBkZXNjcmlwdGlvbj0iZmlsZV9zZWxlY3RvcjogVGVzdCBkZXNjcmlwdGlvbiAob3B0aW9uYWwpIGNhbiBiZSBzaG93biBoZXJlIn0nPHA+DQoNCjxoMj45YTogZmlsZV9zZWxlY3RvciAtIHJlY3Vyc2U8L2gyPg0KPHA+c2VsZWN0ZWQgZmlsZTone2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0iRUNCMiIgZmllbGQ9ImZpbGVfc2VsZWN0b3IiIGJsb2NrPSJ0ZXN0OWEiIGxhYmVsPSI5YTogZmlsZV9zZWxlY3RvciAtIHJlY3Vyc2l2ZSIgZGlyPSJpbWFnZXMiIGZpbGV0eXBlcz0iZ2lmLHBuZyxqcGciIGV4Y2x1ZGVwcmVmaXg9InRodW1iXyIgcmVjdXJzZT0xIGRlc2NyaXB0aW9uPSJmaWxlX3NlbGVjdG9yOiBUZXN0IGRlc2NyaXB0aW9uIChvcHRpb25hbCkgY2FuIGJlIHNob3duIGhlcmUifSc8cD4NCg0KPGgyPjliOiBmaWxlX3NlbGVjdG9yIC0gaW1hZ2UgcHJldmlldzwvaDI+DQo8cD5zZWxlY3RlZCBmaWxlOid7Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0iZmlsZV9zZWxlY3RvciIgYmxvY2s9InRlc3Q5YiIgbGFiZWw9IjliOiBmaWxlX3NlbGVjdG9yIC0gaW1hZ2UgcHJldmlldyAobm8gZGVzY3JpcHRpb24pIiBkaXI9ImltYWdlcyIgZmlsZXR5cGVzPSJnaWYscG5nLGpwZyIgZXhjbHVkZXByZWZpeD0idGh1bWJfIiBwcmV2aWV3PTF9JzxwPg0KDQoNCjxoMj4xMDogcGFnZV9waWNrZXI8L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPXBhZ2VfcGlja2VyIGxhYmVsPSJTZWxlY3QgYSBwYWdlIiBibG9jaz0idGVzdDEwIn08L3A+DQoNCjxoMj4xMTogZ2FsbGVyeV9waWNrZXI8L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT0nRUNCMicgZmllbGQ9J2dhbGxlcnlfcGlja2VyJyBibG9jaz0ndGVzdDExJyBkaXI9J29uLXBhZ2UtZ2FsbGVyaWVzJyBhc3NpZ249J3Rlc3QxMScgbGFiZWw9JzExOiBnYWxsZXJ5X3BpY2tlcicgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSJ9PC9wPg0Ke2lmICFlbXB0eSgkdGVzdDExKX0NCjxkaXYgY2xhc3M9ImNvbC00Ij4NCiAgIEEgZnVuY3Rpb25pbmcgZ2FsbGVyeSBzaG91bGQgYmUgc2hvd24gYmVsb3c6PGJyPg0KICAge0dhbGxlcnkgZGlyPSR0ZXN0MTF9DQo8L2Rpdj4NCnsvaWZ9PGJyPg0KDQoNCjxoMj4xMjogbW9kdWxlX3BpY2tlcjwvaDI+DQo8L3A+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPSdtb2R1bGUnIGJsb2NrPXRlc3QxMiBsYWJlbD0nMTI6IG1vZHVsZV9waWNrZXInIGRlZmF1bHRfdmFsdWU9Rm9ybUJ1aWxkZXJ9PHA+DQoNCg0KPGgyPjEzOiBoaWRkZW48L2gyPg0KPHA+e2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWhpZGRlbiBibG9jaz0ndGVzdDEzJyBhc3NpZ249J3Rlc3QxM2hpZGRlbicgbGFiZWw9JyZuYnNwOycgZGVzY3JpcHRpb249J0hpZGRlbjogd291bGQgbm90IG5vcm1hbGx5IHVzZSBhIGRlc2NyaXB0aW9uIGZpZWxkIScgdmFsdWU9Im1hcmtlcnZhbHVlIn08L3A+DQoNCg0KDQo8aDI+MTQ6IGlucHV0X3JlcGVhdGVyPC9oMj4NCjxwPnskaW5wdXRfcmVwZWF0ZXJfdGVzdD0ifHwifGV4cGxvZGU6Intjb250ZW50X21vZHVsZSBtb2R1bGU9J0VDQjInIGZpZWxkPSdpbnB1dF9yZXBlYXRlcicgbGFiZWw9JzE0OiBpbnB1dF9yZXBlYXRlcicgYmxvY2s9J3Rlc3QxNCcgc2l6ZT0xMDAgbWF4X2xlbmd0aD0yNTUgZGVmYXVsdF92YWx1ZT0nZmlsbCBpdCcgZGVzY3JpcHRpb249J1ByZXNzICgrKSBhbmQgKC0pIHRvIGFkZCBhbmQgcmVtb3ZlIGFkZGl0aW9uYWwgaW5wdXQgZmllbGRzJ30iIHNjb3BlPWdsb2JhbH08L3A+DQo8ZGl2IGNsYXNzPSJwcmUiPiRpbnB1dF9yZXBlYXRlcl90ZXN0OnskaW5wdXRfcmVwZWF0ZXJfdGVzdHxwcmludF9yfTwvZGl2Pg0KDQo8aDI+MTU6IGZpZWxkc2V0X3N0YXJ0PC9oMj4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1maWVsZHNldF9zdGFydCBibG9jaz0idGVzdDE1IiBsYWJlbD0iJm5ic3A7IiBsZWdlbmQ9J0xlZ2VuZCBmb3IgdGhpcyBmaWVsZHNldCd9DQoNCiAgICA8cD5jYW4gcHV0IHNvbWUgdGV4dCBvZiBmaWVsZHMgaW5zaWRlIHRoaXMgZmllbGRzZXQgOik8L3A+DQoNCjxoMj4xNjogZmllbGRzZXRfZW5kPC9oMj4NCntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1maWVsZHNldF9lbmQgYmxvY2s9InRlc3QxNiIgbGFiZWw9JyZuYnNwOyd9DQoNCg0KPGgyPjE3OiBhZG1pbl9ocjwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5faHIgYmxvY2s9InRlc3QxNyIgZGVzY3JpcHRpb249J0NhbiBhbHNvIGFkZCBhIGRlc2NyaXB0aW9uIGluIGhlcmUgOiknfQ0KDQoNCjxoMj4xODogYWRtaW5faHI8L2gyPg0Ke2NvbnRlbnRfbW9kdWxlIG1vZHVsZT1FQ0IyIGZpZWxkPWFkbWluX3RleHQgbGFiZWw9IjE4OiBhZG1pbl90ZXh0IiBibG9jaz0idGVzdDE4IiB0ZXh0PSJIZWxsbyB3b3JkISJ9DQoNCg0KPGgyPjE5OiBhZG1pbl9saW5rPC9oMj4NCjxwPntjb250ZW50X21vZHVsZSBtb2R1bGU9RUNCMiBmaWVsZD1hZG1pbl9saW5rIGJsb2NrPSJ0ZXN0MTkiIHRhcmdldD0iX2JsYW5rIiBsaW5rPSJodHRwOi8vd3d3LmJpbmcuY29tIiB0ZXh0PSJiaW5nIHNlYXJjaCIgbGFiZWw9IjE5OiBhZG1pbl9saW5rIiBkZXNjcmlwdGlvbj0iVGVzdCBkZXNjcmlwdGlvbiAob3B0aW9uYWwpIGNhbiBiZSBzaG93biBoZXJlIn08L3A+DQoNCg0KPGgyPjIwOiBtb2R1bGVfbGluazwvaDI+DQo8cD57Y29udGVudF9tb2R1bGUgbW9kdWxlPSJFQ0IyIiBmaWVsZD0ibW9kdWxlX2xpbmsiIGxhYmVsPSIyMDogbW9kdWxlX2xpbms6R2FsbGVyeSIgYmxvY2s9InRlc3QyMCIgbW9kPSJHYWxsZXJ5IiB0ZXh0PSJFZGl0IEdhbGxlcmllcyIgZGVzY3JpcHRpb249IlRlc3QgZGVzY3JpcHRpb24gKG9wdGlvbmFsKSBjYW4gYmUgc2hvd24gaGVyZSIgdGFyZ2V0PSdfYmxhbmsnfTwvcD4NCg0KPGgyPjIxOiBhZG1pbl9pbWFnZTwvaDI+DQp7Y29udGVudF9tb2R1bGUgbW9kdWxlPUVDQjIgZmllbGQ9YWRtaW5faW1hZ2UgbGFiZWw9IjIxOiBhZG1pbl9pbWFnZSIgYmxvY2s9InRlc3QyMSIgaW1hZ2U9J2ltYWdlcy9waG90by1jb21pbmctc29vbi00LTMuanBnJyBkZXNjcmlwdGlvbj0iVGhpcyBpcyBhbiBhZG1pbiBvbmx5IGltYWdlIn0NCg0KDQoNCg0KPGJyPjxicj48cD5UaGF0J3MgaXQuIEFsbCBUZXN0cyBkb25lIDopPC9wPg0KDQoNCiAgICAgICAgIDwvZGl2Pg0KICAgICAgPC9kaXY+DQogICA8L2Rpdj4NCjwvZGl2PjwhLS0gbWFpbi0tPg0KDQoNCntnbG9iYWxfY29udGVudCBuYW1lPSdmb290ZXInfQ0KDQp7Y2dqc19yZW5kZXIgYWRka2V5PScxOU9jdDE4J30NCg0KPC9ib2R5Pg0KPC9odG1sPg==]]></data>
	</file>
	<file>
	  <filename>/templates/_changelog.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogRUNCMiBfY2hhbmdlbG9nLnRwbCAqfQ0KDQoNCjxoMz5WZXJzaW9uIDEuOTkuPz8/PyAtIDIxSnVsMjIgPz8/PzwvaDM+DQo8dWw+DQogICA8bGk+YnVnIGZpeCBmb3IgdXNpbmcgYSBtb2R1bGUgY2FsbCAnbW9kJyBwYXJhbWV0ZXIgLSBpZiBhbnkgcGFyYW1ldGVycyBiZWluZyBwYXNzZWQgdGhyb3VnaCB0byB0aGUgbW9kdWxlIGNvbnRhaW4gYSBzcGFjZSBpdCB3b3VsZCBwcm9iYWJseSBjYXVzZSBhbiBlcnJvci4gRml4ZWQuPC9saT4NCiAgIDxsaT48L2xpPg0KPC91bD4NCjxicj4NCg0KDQo8aDM+VmVyc2lvbiAxLjk5LjMgLSAwNkp1bDIyPC9oMz4NCjx1bD4NCiAgIDxsaT5hZGQgaW4gbW9kdWxlICdNYW5hZ2UnIHBlcm1pc3Npb25zIGZvciBhY2Nlc3MgdG8gbW9kdWxlIGFkbWluIHBhZ2U8L2xpPg0KICAgPGxpPmFkbWluX2ltYWdlIC0gYnVnIGZpeDwvbGk+DQo8L3VsPg0KPGJyPg0KDQoNCjxoMz5WZXJzaW9uIDEuOTkuMSAtIDA2SnVsMjI8L2gzPg0KPHVsPg0KICAgPGxpPmFib3V0IHR3ZWFrczwvbGk+DQogICA8bGk+YWRtaW5faW1hZ2UgLSBlcnJvciBtZXNzYWdlIGFkZGVkIGlmIGltYWdlIGZpbGUgbm90IGZvdW5kIHBsdXMgYWRkIGluIHNhbXBsZSBpbWFnZSBmb3IgaGVscCBwYWdlLjwvbGk+DQo8L3VsPg0KPGJyPg0KDQoNCjxoMz5WZXJzaW9uIDEuOTkgLSAwNUp1bDIyPC9oMz4NCjx1bD4NCiAgIDxsaT5TaWduaWZpY2FudGx5IHJlZmFjdG9yZWQgbW9kdWxlLCB0byBlbmFibGUgZnV0dXJlIGRldmVsb3BtZW50IG9mIHRoZSBtb2R1bGUgYW5kIHNpbXBsaWZ5IHVzZS4gSXMgZnVsbHkgY29tcGF0aWJsZSB3aXRoIGFsbCBwcmV2aW91cyB1c2FnZS4gUGxlYXNlIHJlcG9ydCBhbnkgaXNzdWVzIHlvdSBtYXkgZmluZC48L2xpPg0KICAgPGxpPkV4cGFuZGVkIGhlbHAgY29udGVudCwgd2l0aCBleGFtcGxlIHRhZ3MgYW5kIGRlbW8gY29udGVudCBibG9ja3MgZm9yIGFsbCBmaWVsZCB0eXBlcy48L2xpPg0KICAgPGxpPlNvbWUgZmllbGQgdHlwZXMgaGF2ZSBiZWVuIHJlbmFtZWQsIHRvIG1ha2UgdGhlaXIgdXNlIG1vcmUgb2J2aW91cy4gQWxsIHByZXZpb3VzIGZpZWxkIHR5cGVzIGFyZSBmdWxseSBzdXBwb3J0ZWQgYXMgYW4gYWxpYXMgZm9yIHRoZSBuZXcgZmllbGQgbmFtZTwvbGk+DQogICA8bGk+J3RleHRpbnB1dCcgZmllbGQgcmVwbGFjZXMgJ2lucHV0JywgZmllbGQ9aW5wdXQgaXMgYSBmdWxseSBzdXBwb3J0ZWQgYWxpYXM8L2xpPg0KICAgPGxpPid0ZXh0YXJlYScgZmllbGQgcmVwbGFjZXMgJ2VkaXRvcicsIHdpdGggYSB3eXNpd3lnIG9wdGlvbiBhZGRlZCAoZGVmYXVsdD1mYWxzZSkuIGZpZWxkPWVkaXRvciBpcyBhIGZ1bGx5IHN1cHBvcnRlZCBhbGlhczwvbGk+DQogICA8bGk+J2Ryb3Bkb3duJyBmaWVsZCBub3cgcmVwbGFjZXMgJ2Ryb3Bkb3duX2Zyb21fbW9kdWxlJywgJ2Ryb3Bkb3duX2Zyb21fdWR0JywgJ2Ryb3Bkb3duX2Zyb21fY3VzdG9tZ3MnICYgJ2Ryb3Bkb3duX2Zyb21fZ2JjJywgcGx1cyBoYXMgYSBuZXcgYWxpYXMgJ3NlbGVjdCcuIEEgbmV3ICd0ZW1wbGF0ZScgcGFyYW1ldGVyIGVuYWJsZXMgZHJvcGRvd24gdmFsdWVzIHRvIGJlIHJldHJpZXZlZCBmcm9tIGEgc21hcnR5IHRlbXBsYXRlICgnZ2NiJyBwYXJhbWV0ZXIgaXMgYXMgYWxpYXMpLiBBIHNhbXBsZSBMSVNFIG1vZHVsZSB0ZW1wbGF0ZSBhZGRlZCBpbnRvIGhlbHA8L2xpPg0KICAgPGxpPidjaGVja2JveCcgLSBhZGRlZCBhbiBpbmxpbmVfbGFiZWwgb3B0aW9uPC9saT4NCiAgIDxsaT4ncmFkaW8nIC0gYWRkZWQgJ2ZsaXBfdmFsdWVzJyBvcHRpb24gLSBzd2FwcyB0aGUgZHJvcGRvd25zIHZhbHVlcyA8LT4gdGV4dDwvbGk+DQogICA8bGk+J2RhdGVfdGltZV9waWNrZXInIGZpZWxkIHJlcGxhY2VzICdkYXRlcGlja2VyJyBhbmQgJ3RpbWVwaWNrZXInIHdpdGggYm90aCBmdWxseSBzdXBwb3J0ZWQgYXMgYWxpYXNlczwvbGk+DQogICA8bGk+cGFyYW1ldGVyICdkZWZhdWx0JyBub3cgdXNlZCBpbnN0ZWFkIG9mICdkZWZhdWx0X3ZhbHVlJywgKCdkZWZhdWx0X3ZhbHVlJyBwYXJhbWV0ZXIgaXMgYW4gYWxpYXMpIC0gZm9yIGFsbCBmaWVsZHMgdGhhdCBjYW4gaGF2ZSBhIGRlZmF1bHQ8L2xpPg0KICAgPGxpPidwYWdlX3BpY2tlcicsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAncGFnZXMnPC9saT4NCiAgIDxsaT4nbW9kdWxlX3BpY2tlcicsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAnbW9kdWxlJzwvbGk+DQogICA8bGk+J2FkbWluX2ZpZWxkc2V0X3N0YXJ0JywgcmVuYW1lZCBmcm9tIHRoZSBub3cgYWxpYXM6ICdmaWVsZHNldF9zdGFydCc8L2xpPg0KICAgPGxpPidhZG1pbl9maWVsZHNldF9lbmQnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ2ZpZWxkc2V0X2VuZCc8L2xpPg0KICAgPGxpPidhZG1pbl9ocicsIHJlbmFtZWQgZnJvbSB0aGUgbm93IGFsaWFzOiAnaHInPC9saT4NCiAgIDxsaT4nYWRtaW5faW1hZ2UnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ2ltYWdlJzwvbGk+DQogICA8bGk+J2FkbWluX2xpbmsnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ2xpbmsnPC9saT4NCiAgIDxsaT4nYWRtaW5fbW9kdWxlX2xpbmsnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ21vZHVsZV9saW5rJzwvbGk+DQogICA8bGk+J2FkbWluX3RleHQnLCByZW5hbWVkIGZyb20gdGhlIG5vdyBhbGlhczogJ3RleHQnPC9saT4NCiAgIDxsaT5hZGRlZCBzYW1wbGUgTElTRSB0ZW1wbGF0ZSBpbnRvIGhlbHA8L2xpPg0KPC91bD4NCjxicj4NCg0KDQo8aDM+VmVyc2lvbiAxLjggLSAyMkp1bjIyPC9oMz4NCjx1bD4NCiAgIDxsaT5kcm9wZG93biAmIHNvcnRhYmxlbGlzdCAtICdtb2QnIG9wdGlvbiBhZGRlZCAtIGNhbiBsb2FkIG9wdGlvbnMgZGlyZWN0bHkgZnJvbSBhIG1vZHVsZXMgdGVtcGxhdGU8L2xpPg0KICAgPGxpPmRyb3Bkb3duICYgc29ydGFibGVsaXN0IC0gJ2ZsaXBfdmFsdWVzJyBvcHRpb24gYWRkZWQgLSBzd2FwcyB0aGUgZHJvcGRvd25zIHZhbHVlcyA8LT4gdGV4dC4gQ2FuIHNpbXBsaWZ5IHVzaW5nIGRhdGEgZnJvbSBhbm90aGVyIHNvdXJjZS48L2xpPg0KICAgPGxpPnVuZG9jdW1lbnRlZCAmIG5vbi1mdW5jdGlvbmluZyBtZXRob2QgZ2V0X2Ryb3Bkb3duX2Zyb21fbW9kdWxlIHJlbW92ZWQuPC9saT4NCiAgIDxsaT5idWcgZml4IGZvciB2MS43IC0gY29sb3JfcGlja2VyIGhhZCBzdG9wcGVkIHdvcmtpbmc8L2xpPg0KICAgPGxpPnRpbWVfcGlja2VyICYgY29sb3VyX3BpY2tlciBqcyBtb3ZlZCBpbnRvIHNpbmdsZSBmaWxlIGVjYjJfYWRtaW4uanM8L2xpPg0KICAgPGxpPmZvcmNlIHJlZnJlc2ggb2YgY3NzICYganMgZmlsZXMgYWZ0ZXIgbW9kdWxlIHVwZGF0ZTwvbGk+DQo8L3VsPg0KPGJyPg0KDQoNCjxoMz5WZXJzaW9uIDEuNyAtIDIwSnVuMjI8L2gzPg0KPHVsPg0KICAgPGxpPmNvbG9yX3BpY2tlciAtIGNoYW5nZWQgdG8gdXNlIGNvbHBpY2sgZm9yIGNvbnNpc3RlbmN5IHdpdGggTElTRSAmIEN1c3RvbUdTLCBhZGRlZCBvcHRpb25zOiBjbGVhcl9jc3NfY2FjaGUgJiBub19oYXNoPC9saT4NCiAgIDxsaT5pbWFnZSAtIGFkZGVkIGZpZWxkIHR5cGUgZm9yIGRpc3BsYXlpbmcgYW4gaW1hZ2Ugb24gYW4gYWRtaW4gcGFnZSBvbmx5LiBVc2VmdWxseSB0byBwcm92aWRlIGV4dHJhIGd1aWRhbmNlIHRvIGVkaXRvcnMuPC9saT4NCjwvdWw+DQo8YnI+DQoNCg0KPGgzPlZlcnNpb24gMS42LjIgLSAxOUphbjIyPC9oMz4NCjx1bD4NCiAgIDxsaT5kYXRlcGlja2VyIC0gYWRkIG9wdGlvbnMgZm9yIGNoYW5nZV9tb250aCwgY2hhbmdlX3llYXIsIHllYXJfcmFuZ2U8L2xpPg0KICAgPGxpPmRhdGVwaWNrZXIgJiB0aW1lcGlja2VyIC0gbW92ZSBvdXB1dCBpbnRvIHNtYXJ0eSB0ZW1wbGF0ZSAnZGF0ZXBpY2tlcl90ZW1wbGF0ZS50cGwnLCBtb3ZlIGN1c3RvbSBqcyBmcm9tIGlubGluZSBpbnRvIGVjYjJfYWRtaW4uanM8L2xpPg0KICAgPGxpPmJ1ZyBmaXggZm9yIGlzX2RhdGVwaWNrZXJfbGliX2xvYWQgLSBzbyBpdCdzIG9ubHkgbG9hZGVkIG9uY2U8L2xpPg0KPC91bD4NCjxicj4NCg0KDQo8aDM+VmVyc2lvbiAxLjYuMSAtIDI3SnVsMjA8L2gzPg0KPHVsPg0KICAgPGxpPm1vdmUgaGVscCAmIGNoYW5nZWxvZyBpbnRvIHRlbXBsYXRlczwvbGk+DQogICA8bGk+QnVnIGZpeDogZm9yICdjaGVja2JveCcgdXNpbmcgZGVmYXVsdCBvZiB0cnVlIChjaGVja2VkKSAtIHdvcmsgYXJvdW5kIGZvciBjb3JlIGJ1ZzwvbGk+DQo8L3VsPg0KPGJyPg0KDQoNCjxoMz5WZXJzaW9uIDEuNiAtIDAzSnVuMjA8L2gzPg0KPHVsPg0KICAgPGxpPmFsbCAnZHJvcGRvd24nIGNvbnRlbnQgYmxvY2tzIG5vdyBoYXZlIHRoZSBvcHRpb24gZm9yIGEgJ2NvbXBhY3QnIGRpc3BsYXkgb24gdGhlIGFkbWluIHBhZ2UuIFNldCAiY29tcGFjdD0xIiBpbiB0aGUgcGFyYW1ldGVycyBhIHN1bW1hcnkgb2YgdGhlIHNlbGVjdGVkIG9wdGlvbnMgaXMgZGlzcGxheWVkIGFuZCB0aGUgZnVsbCBzZWxlY3QgaXMgc2hvd24vaGlkZGVuIHdoZW4gJ2VkaXQvaGlkZScgaXMgY2xpY2tlZDwvbGk+DQogICA8bGk+ZmlsZV9zZWxlY3RvciBjb250ZW50IGJsb2NrIC0gdXBkYXRlZCBub3cgdXNlcyBjb3JlIG1ldGhvZCBpbnN0ZWFkIG9mIENHRXh0ZW5zaW9uczwvbGk+DQogICA8bGk+cmVtb3ZlZCBDR0V4dGVuc2lvbnMgZGVwZW5kYW5jeTwvbGk+DQogICA8bGk+QnVnIGZpeDogZGVmYXVsdCB2YWx1ZSBub3cgd29ya3MgZm9yIGNoZWNrYm94LCBpbnB1dCwgdGV4dGFyZWEgJiBlZGl0b3IgY29udGVudCBibG9ja3M8L2xpPg0KPC91bD4NCjxicj4NCg0KDQo8aDM+VmVyc2lvbiAxLjUuMyAtIDE3SnVuMTk8L2gzPg0KPHVsPg0KICAgPGxpPm1pbm9yIGJ1ZyBmaXggaW4gaGVscDwvbGk+DQo8L3VsPg0KPGJyPg0KDQoNCjxoMz5WZXJzaW9uIDEuNS4yIC0gMTlGZWIxOTwvaDM+DQo8dWw+DQogICA8bGk+YnVnIGZpeCAtIGFkbWluIGpzIHVwZGF0ZWQgLSBmaXhlcyB2MS41LjEgbXVsdGlwbGUgc2VsZWN0J3MgJiBpbnB1dF9yZXBlYXRlciBub3Qgd29ya2luZyAtIHBsZWFzZSB1cGRhdGU8L2xpPg0KPC91bD4NCjxicj4NCg0KPGgzPlZlcnNpb24gMS41LjEgLSAxOEZlYjE5PC9oMz4NCjx1bD4NCiAgIDxsaT5nYWxsZXJ5X3BpY2tlciAtIGJ1ZyBmaXg8L2xpPg0KPC91bD4NCjxicj4NCg0KPGgzPlZlcnNpb24gMS41IC0gMTZGZWIxOTwvaDM+DQo8dWw+DQogICA8bGk+aW5wdXRfcmVwZWF0ZXIgY29udGVudCBibG9jayAtIGFkZGVkIC0gdGhhbmtzIHRvIFNpbW9uIFJhZGZvcmQ8L2xpPg0KICAgPGxpPmdhbGxlcnlfcGlja2VyIGNvbnRlbnQgYmxvY2sgLSBhZGRlZDwvbGk+DQogICA8bGk+ZHJvcGRvd25fZnJvbV9jdXN0b21ncyBjb250ZW50IGJsb2NrIC0gYWRkZWQ8L2xpPg0KICAgPGxpPmFkZGVkIGVycm9yIG1lc3NhZ2UgZm9yIG1pc3Npbmcgb3IgaW5jb3JyZWN0bHkgc3BlbHQgZmllbGQgcGFyYW1hdGVyIC0gQlIjMTE1NTcgLSB0aGFua3MgTHVkZ2VyPC9saT4NCiAgIDxsaT5yZW1vdmVkIEFkbWluIHBhZ2UgdGhhdCBvbmx5IHNob3dlZCBoZWxwIC0gcmVkdW5kYW50IGFzIGhlbHAgZWFzaWx5IHZpc2libGUgZnJvbSB3aXRoaW4gTW9kdWxlIE1hbmFnZXI8L2xpPg0KICAgPGxpPnJlbW92ZWQgUGVybWlzc2lvbiAnVXNlIEVDQjInIC0gYWxzbyByZWR1bmRhbnQ8L2xpPg0KICAgPGxpPmNvZGUgdGlkeSB1cCAtIGNvbnNvbGlkYXRlIGpzICYgY3NzIGludG8gc2VwYXJhdGUgZXh0ZXJuYWwgZmlsZXM8L2xpPg0KPC91bD4NCjxicj4NCg0KPGgzPlZlcnNpb24gMS4zLjEgLSAxMkp1bDE3PC9oMz4NCjx1bD4NCiAgIDxsaT5taW5vciBidWcgZml4PC9saT4NCjwvdWw+DQo8YnI+DQoNCjxoMz5WZXJzaW9uIDEuMyAtIDExSnVsMTc8L2gzPg0KPHVsPg0KICAgPGxpPnNvcnRhYmxlbGlzdCAtIGFkZGVkIG1heF9udW1iZXIgYW5kIHJlcXVpcmVkX251bWJlciBvcHRpb25zPC9saT4NCiAgIDxsaT5BZGRlZCAnZmllbGRzZXRfc3RhcnQnIGFuZCAnZmllbGRzZXRfZW5kJyBmaWVsZHM8L2xpPg0KPC91bD4NCjxicj4NCg0KPGgzPlZlcnNpb24gMS4yLjIgLSAwNUp1bDE3PC9oMz4NCjx1bD4NCiAgIDxsaT50ZXN0IGZvciBhbmQgZGlzcGxheSB3YXJuaW5nIGluIGFkbWluIGlmIFVEVCBkb2VzIG5vdCBleGlzdDwvbGk+DQo8L3VsPg0KPGJyPg0KDQo8aDM+VmVyc2lvbiAxLjIuMSAtIDE5QXByMTc8L2gzPg0KPHVsPg0KICAgPGxpPmJ1ZyBmaXggZm9yIGNvbG9yX3BpY2tlciwgZGVmYXVsdF92YWx1ZSAtIEJSIzExMzU0IC0gdGhhbmtzIFN0dWFydDwvbGk+DQogICA8bGk+Y29sb3JfcGlja2VyIC0gdHdlYWtlZCBsYXlvdXQ8L2xpPg0KICAgPGxpPnNvcnRhYmxlbGlzdCAtIG5vdyB1c2UganF1ZXJ5IHNvcnRhYmxlIGluc3RlYWQgb2YgQ0dFeHRlbnNpb25zLiBQYXJhbWV0ZXJzIHJlbW92ZWQ6ICd0ZW1wbGF0ZScuIFBhcmFtZXRlcnMgbm90IG9wZXJhdGlvbmFsOiAnbWF4X3NlbGVjdGVkJywgJ2FsbG93ZHVwbGljYXRlcycgKHBsZWFzZSBhZHZpc2UgaWYgeW91IHJlcXVpcmUgdGhlc2UpLiBQbHVzIHNvbWUgYnVnIGZpeGVzLjwvbGk+DQo8L3VsPg0KPGJyPg0KDQo8aDM+VmVyc2lvbiAxLjIgLSAwN05vdjE2PC9oMz4NCjx1bD4NCiAgIDxsaT5BZGRlZCAnZGVzY3JpcHRpb24nIHBhcmFtZXRlciBmb3IgYWxsIGZpZWxkcyAob3B0aW9uYWwpIC0gYWRkcyBhZGRpdGlvbmFsIHRleHQgZXhwbGFuYXRpb24gZm9yIGVkaXRvcjwvbGk+DQogICA8bGk+QWRkZWQgJ2hpZGRlbicgZmllbGQgLSBDYW4gYmUgdXNlZCB0byBzZXQgYSBwYWdlIGF0dHJpYnV0ZSB0aGF0IGNhbiB0aGVuIGJlIGFjY2Vzc2VkIChlLmcuIGZyb20gYSBOYXZpZ2F0b3ItVGVtcGxhdGUpLCB1c2luZyB7bGRlbGltfXBhZ2VfYXR0ciBwYWdlPSRub2RlLT5hbGlhcyBrZXk9J3Rlc3RoaWRkZW4ne3JkZWxpbX08L2xpPg0KICAgPGxpPkJ1ZyBmaXggLSBmb3IgcGhwIG5vdGljZTwvbGk+DQo8L3VsPg0KPGJyPg0KDQo8aDM+VmVyc2lvbiAxLjEgLSAxNUFwcjE2PC9oMz4NCjx1bD4NCiAgICA8bGk+QnVnIGZpeDwvbGk+DQo8L3VsPg0KPGJyPg0KDQo8aDM+VmVyc2lvbiAxLjAgLSAxNUFwcjE2PC9oMz4NCjx1bD4NCiAgICA8bGk+SW5pdGlhbCByZWxlYXNlLiBBIGZvcmsgb2YgRUNCIG1vZHVsZSB2MS42LCB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCBDTVNNUyB2Mis8L2xpPg0KICAgIDxsaT5BZGRlZCByYWRpbyBmaWVsZCAtIHRvIHByb3ZpZGUgcmFkaW8gYnV0dG9ucyBvbiBhbiBhZG1pbiBwYWdlPC9saT4NCjwvdWw+DQo8YnI+]]></data>
	</file>
	<file>
	  <filename>/templates/_help.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogRUNCMiBfaGVscC50cGwgKn0NCg0KDQo8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+DQoNCjxkaXYgaWQ9InBhZ2VfdGFicyI+DQogICAgPGRpdiBpZD0iZWNiIj4NCiAgICAgICAgeyRtb2QtPkxhbmcoJ2V4dGVuZGVkX2NvbnRlbnRfYmxvY2tzJyl9DQogICAgPC9kaXY+DQogICAgPGRpdiBpZD0iYWJvdXQiPg0KICAgICAgICB7JG1vZC0+TGFuZygnYWJvdXQnKX0NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KDQo8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2Pg0KDQo8ZGl2IGlkPSJwYWdlX2NvbnRlbnQiIGNsYXNzPSJlY2IyLWhlbHAiPg0KDQogICAgPGRpdiBpZD0iZWNiX2MiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJoZWxwLXRvYyI+DQogICAgICAgICAgICA8aDMgY2xhc3M9ImJvcmRlci1ib3R0b20gbV90b3BfMTUgcF9ib3R0b21fNSI+eyRtb2QtPkxhbmcoJ2ZpZWxkX3R5cGVzJyl9PC9oMz4NCiAgICAgICAgICAgIDx1bD4NCiAgICAgICAgICAgIHtmb3JlYWNoICRmaWVsZF90eXBlcyBhcyAkZmllbGRfdHlwZX0NCiAgICAgICAgICAgICAgICB7aWYgJGZpZWxkX3R5cGU9PSRmaXJzdF9hZG1pbl9vbmx5X2ZpZWxkfQ0KICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9ImJvcmRlci1ib3R0b20gbV90b3BfMjUgcF9ib3R0b21fNSI+eyRtb2QtPkxhbmcoJ2FkbWluX29ubHlfaGVscCcpfTwvaDU+DQogICAgICAgICAgICAgICAgey9pZn0NCiAgICAgICAgICAgICAgICA8dWw+PGEgY2xhc3M9InNtb290aC1zY3JvbGwiIGhyZWY9IiN7JGZpZWxkX3R5cGV9Ij57JGZpZWxkX3R5cGV9PC9hPjwvdWw+ICAgDQogICAgICAgICAgICB7L2ZvcmVhY2h9DQogICAgICAgICAgICA8L3VsPg0KICAgICAgICA8L2Rpdj4NCg0KICAgICAgICA8ZGl2IGNsYXNzPSJoZWxwLWNvbnRlbnQiPg0KICAgICAgICAgICAgeyRtb2QtPkxhbmcoJ2dlbmVyYWxfYycpfQ0KICAgICAgICAgICAgDQogICAgICAgICAgICA8aDIgY2xhc3M9ImJvcmRlci1ib3R0b20gcF9ib3R0b21fNSBtX2JvdHRvbV8xNSI+eyRtb2QtPkxhbmcoJ2ZpZWxkX3R5cGVzJyl9PC9oMj4NCg0KICAgICAgICB7Zm9yZWFjaCAkZmllbGRfaGVscCBhcyAkZmllbGRfdHlwZSA9PiAkaGVscF9jb250ZW50fQ0KICAgICAgICAgICAge2lmICRmaWVsZF90eXBlPT0kZmlyc3RfYWRtaW5fb25seV9maWVsZH0NCiAgICAgICAgICAgIDxoMiBjbGFzcz0iYm9yZGVyLWJvdHRvbSBtX3RvcF8yNSBwX2JvdHRvbV81Ij57JG1vZC0+TGFuZygnYWRtaW5fb25seV9oZWxwJyl9PC9oMj4NCiAgICAgICAgICAgIDxwPnskbW9kLT5MYW5nKCdhZG1pbl9vbmx5X2hlbHBfaW50cm8nKX08L3A+DQogICAgICAgICAgICA8YnI+DQogICAgICAgICAgICB7L2lmfQ0KICAgICAgICAgICAgPGgyIGlkPSJ7JGZpZWxkX3R5cGV9IiBjbGFzcz0ibV9ib3R0b21fNSI+eyRmaWVsZF90eXBlfTwvaDI+DQogICAgICAgICAgICB7JGhlbHBfY29udGVudH0NCiAgICAgICAgICAgIDxicj4NCiAgICAgICAgey9mb3JlYWNofQ0KICAgICAgICA8L2Rpdj4NCg0KICAgPC9kaXY+DQoNCiAgIDxkaXYgaWQ9ImFib3V0X2MiPg0KICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgICAgICAgIHskbW9kLT5MYW5nKCdhYm91dF9jJyl9DQogICAgICA8L2Rpdj4NCiAgIDwvZGl2Pg0KDQo8L2Rpdj4NCjxicj4NCg0KDQo=]]></data>
	</file>
	<file>
	  <filename>/test/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/test/ecb2_development_test_notes.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[RUNCMiBEZXZlbG9wbWVudCBUZXN0aW5nCj09PT09PT09PT09PT09PT09PT09PT09PQoKMS4gSW5zdGFsbCB0aGUgbW9kdWxlCgoyLiBDcmVhdGUgJ0VDQjIgVGVzdCcgcGFnZToKICAgIC0gQ3JlYXRlIGEgbmV3IFBhZ2UgVGVtcGxhdGUgJ0VDQjJfVGVzdCcgdGhhdCBvbmx5IGNvbnRhaW5zOgogICAgICAgIHtpbmNsdWRlIGZpbGU9J21vZHVsZV9maWxlX3RwbDpFQ0IyO0VDQjJfVGVzdF9UZW1wbGF0ZS50cGwnfQogICAgLSBDcmVhdGUgJ0VDQjIgVGVzdCcgcGFnZSwgdXNpbmcgdGhlIGFib3ZlIHRlbXBsYXRlLiAgCgozLiBDcmVhdGUgJ2VjYjJfdGVzdF91ZHRfb3B0aW9ucycgVURUOgogICAgLSBjcmVhdGUgYSBuZXcgVURUIGNhbGxlZCAnZWNiMl90ZXN0X3VkdF9vcHRpb25zJywgY29weSBpbiBjb250ZW50cyBmcm9tOgogICAgICAgICcvdGVzdC9lY2IyX3Rlc3RfdWR0X29wdGlvbnMucGhwJwoKCjQuIENyZWF0ZSB0ZW1wbGF0ZSAnRUNCMl90ZXN0X3RlbXBsYXRlX29wdGlvbnMnIGluIERlc2lnbiBNYW5hZ2VyOgogICAgLSBjb3B5IGluIGNvbnRlbnRzIGZyb206ICcvdGVzdC9FQ0IyX3Rlc3RfdGVtcGxhdGVfb3B0aW9ucy50cGwnCgoKNS4gQ3JlYXRlIGEgc3VtbWFyeSB0ZW1wbGF0ZSAnaXRlbV9kcm9wZG93bicgaW4gYSBMSVNFIEluc3RhbmNlIGUuZy4gTElTRVByb2plY3RzIAogICAgLSBjb3B5IGluIGNvbnRlbnRzIGZyb20gJy90ZXN0L0VDQjJfdGVzdF9MSVNFX3RlbXBsYXRlLnRwbCcKCiAgICAKNi4gQ3JlYXRlIGEgQ3VzdG9tR1MgZmllbGQgY2FsbGVkICdTZWN0aW9uIFN0eWxlcycgYW5kIGFkZCBpbiB0aGUgZm9sbG93aW5nOgoiCldpZHRoIDEwMCUgKGRlZmF1bHQpPXdpZHRoLTEwMApXaWR0aCA4MyU9d2lkdGgtODMKV2lkdGggNjYlPXdpZHRoLTY2CldpZHRoIDUwJT13aWR0aC01MApGdWxsIHBhZ2Ugd2lkdGg9d2lkdGgtZnVsbApDb250ZW50IGNlbnRyZWQgKGRlZmF1bHQpPWNvbnRlbnQtY2VudGVyZWQKQ29udGVudCBsZWZ0PWNvbnRlbnQtbGVmdApDb250ZW50IHJpZ2h0PWNvbnRlbnQtcmlnaHQKQmFja2dyb3VuZCBncmV5PWJhY2tncm91bmQtZ3JleSB0ZXh0LXdoaXRlCkJhY2tncm91bmQgd2hpdGU9YmFja2dyb3VuZC13aGl0ZQpCYWNrZ3JvdW5kIGltYWdlPWJhY2tncm91bmQtaW1hZ2UKT3ZlcmxhcCBhYm92ZT1vdmVybGFwLWFib3ZlCk92ZXJsYXAgYmVsb3c9b3ZlcmxhcC1iZWxvdwpDbGlja2FibGU9Y2xpY2thYmxlCiI=]]></data>
	</file>
	<file>
	  <filename>/test/ECB2_test_LISE_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogaXRlbV9kcm9wZG93biAtIExJU0UgU3VtbWFyeSB0ZW1wbGF0ZSBmb3IgRUNCMiBkcm9wZG93biBvciBzb3J0YWJsZWxpc3QgKn0KeyogZWl0aGVyIHNldCB0aGUgdmFyICRvcHRpb25zICYgc2NvcGU9Z2xvYmFsIChpbXBvcnRhbnQhKSAqfQp7JG9wdGlvbnM9W119Cntmb3JlYWNoICRpdGVtcyBhcyAkaXRlbX0KeyRvcHRpb25zWyRpdGVtLT5hbGlhc109JGl0ZW0tPnRpdGxlIHNjb3BlPWdsb2JhbH0Key9mb3JlYWNofQp7KiBPUiB1c2UgdGhlIGZvbGxvd2luZyBmb3JtYXQgdG8gcmV0dXJuIGEgY29tbWEgc2VwYXJhdGVkIGxpc3QgKn0KeyoKe2ZvcmVhY2ggJGl0ZW1zIGFzICRpdGVtfQp7JGl0ZW0tPnRpdGxlfT17JGl0ZW0tPmFsaWFzfXtpZiAhJGl0ZW1AbGFzdH0sey9pZn0Key9mb3JlYWNofQoqfQ==]]></data>
	</file>
	<file>
	  <filename>/test/ECB2_test_template_options.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogRUNCMl90ZXN0X3RlbXBsYXRlX29wdGlvbnMgKn0KeyogZWl0aGVyIHNldCB0aGUgdmFyICRvcHRpb25zICYgc2NvcGU9Z2xvYmFsIChpbXBvcnRhbnQhKSAqfQp7JG9wdGlvbnM9W119Cnskb3B0aW9ucz1bCiAgICdvcHRpb24xJyA9PiAnVGVzdCBPcHRpb24gMScsCiAgICdvcHRpb24yJyA9PiAnVGVzdCAyMjIyMjIyJywKICAgJ29wdGlvbjMnID0+ICdUZXN0IG51bWJlciAzJywKICAgJ29wdGlvbjQnID0+ICdUZXN0IDQ0NDQ0NDQnLAogICAnb3B0aW9uNScgPT4gJ1Rlc3QgTEFTVCAjNSddIHNjb3BlPWdsb2JhbH0KeyogT1IgdXNlIHRoZSBmb2xsb3dpbmcgZm9ybWF0IHRvIHJldHVybiBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0ICp9CnsqCntmb3JlYWNoICRvcHRpb25zMiBhcyAkb3B0X3ZhbHVlID0+ICRvcHRfdGV4dH0KeyRvcHRfdGV4dH09eyRvcHRfdmFsdWV9e2lmICEkb3B0X3RleHRAbGFzdH0sey9pZn0Key9mb3JlYWNofQoqfQ==]]></data>
	</file>
	<file>
	  <filename>/test/ecb2_test_udt_options.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gZWNiMl90ZXN0X3VkdF9vcHRpb25zDQovLw0KLy8gcmV0dXJucyBhbiBhcnJheSBvZiBvcHRpb25zIHRvIGRpc3BsYXkgaW4gRUNCMiBsaXN0c29ydGFibGUgJiBkcm9wZG93bjogDQovLyAgICAidmFsdWU9bGFiZWwsdmFsdWU9bGFiZWwsLi4uIg0KLy8gDQovLyAgICBVRFQgc3RvcmVkIGluIEVDQjIvdGVzdC9lY2IyX3Rlc3RfdWR0X29wdGlvbnMucGhwDQovLyAgICAgICAtIGNvcHkgaW50byBVRFQgJ2VjYjJfdGVzdF91ZHRfb3B0aW9ucycNCg0KJG9wdGlvbnMgPSBhcnJheSgNCiAgICdvcHRpb24xJyA9PiAnVGVzdCBPcHRpb24gMScsDQogICAnb3B0aW9uMicgPT4gJ1Rlc3QgMjIyMjIyMicsDQogICAnb3B0aW9uMycgPT4gJ1Rlc3QgbnVtYmVyIDMnLA0KICAgJ29wdGlvbjQnID0+ICdUZXN0IDQ0NDQ0NDQnLA0KICAgJ29wdGlvbjUnID0+ICdUZXN0IExBU1QgIzUnDQopOw0KDQpyZXR1cm4gJG9wdGlvbnM7]]></data>
	</file>
</module>
