<?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>FrontEndUsers</name>
	<version>1.23.4</version>
  <mincmsversion>1.11.9</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPgo8aDM+RmVhdHVyZXM6PC9oMz4KPHVsPgo8bGk+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L2xpPgo8bGk+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L2xpPgo8bGk+UHJvdmlkZXMgYSBjb250ZW50IHR5cGUgdG8gbWFrZSBwcm90ZWN0aW5nIGNvbnRlbnQgc2ltcGxlLCBpZiBub3QgdHJpdmlhbC48L2xpPgo8bGk+Q2FwYWJsZSBvZiBoYW5kbGluZyB0aG91c2FuZHMgb2YgdXNlcnM8L2xpPgo8bGk+RXh0ZW5zaXZlIGZsZXhpYmlsaXR5IGZvciBoYW5kbGluZyByZWRpcmVjdGlvbiBhZnRlciBsb2dpbiwgYW5kIHNlbmRzIGV2ZW50cyB0byBleHRlbmQgdGhlIHdvcmtmbG93IHByb2Nlc3MuPC9saT4KPGxpPkZvcmdvdHRlbiBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L2xpPgo8bGk+RXh0ZW5kYWJsZSB0byBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gdHlwZXMgKExEQVAsIEZhY2Vib29rLCBldGMpLjwvbGk+CjxsaT5Qcm92aWRlcyBleHRlbnNpdmUgaW1wb3J0IGFuZCBleHBvcnQgY2FwYWJpbGl0aWVzLjwvbGk+CjxsaT5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHkgaW50byB2YXJpb3VzIG90aGVyIENNU01TIGFkZG9uIG1vZHVsZXMuPC9saT4KPGxpPlRoZSBhYmlsaXR5IHRvIGVuY3J5cHQgc2Vuc2l0aXZlIHVzZXIgZGF0YS48L2xpPgo8L3VsPgo8aDM+SG93IGRvIEkgdXNlIGl0OjwvaDM+CjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIHRoZSBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBHcm91cHMmcXVvdDsgbWVudS48L3A+CjxwPllvdSBuZWVkIHRvIGRlZmluZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIGV0Yy48L3A+CjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIChvciBlbWFpbCBhZGRyZXNzKSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdS4KPHA+PGI+Tm90ZTo8L2I+IE5ldyBpbnN0YWxsYXRpb25zIG9mIHRoZSBGRVUgbW9kdWxlIHNwZWNpZnkgdGhhdCB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAodGhpcyBvcHRpb24gY2FuIGJlIGNoYW5nZWQgaW4gdGhlIG1vZHVsZXMgYWRtaW4gcGFuZWwpLiAgU28gaWYgdXNpbmcgdGhpcyBvcHRpb24geW91IHdpbGwgbm90IG5lZWQgdG8gY3JlYXRlIGFuIGVtYWlsIGFkZHJlc3MgcHJvcGVydHkuPC9wPgo8cD5OZXh0IHlvdSBtdXN0IGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBvbmUgb3IgbW9yZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2hldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZC4gIEF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBtdXN0IGJlIGFzc29jaWF0ZWQgd2l0aCBhIGdyb3VwLjwvcD4KPHA+PGI+Tm90ZTo8L2I+IFByb3BlcnRpZXMgY2FuIG9ubHkgYmUgZGVsZXRlZCBvbmNlIHRoZXkgYXJlIGRpc2Fzc29jaWF0ZWQgZnJvbSBhbGwgZ3JvdXBzLjwvcD4KPHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS4gIFRha2Ugc29tZSB0aW1lIGhlcmUsIHRoZXJlIGFyZSBudW1lcm91cyBvcHRpb25zLjwvcD4KPHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZS9lbWFpbCBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrICZxdW90O05leHQmcXVvdDs8L3A+CjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlYXN0IG9uZSB1c2VyPC9wPgo8cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPgo8cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge0Zyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGUuICBZb3UgbXVzdCBlbnN1cmUgdGhhdCB0aGlzIHBhZ2UgaXMgc2V0IHRvICZxdW90O25vdCBjYWNoZSZxdW90OyB3aGVuIGVkaXRpbmcgdGhlIGNvbnRlbnQgcGFnZShzKSB3aGVyZSB0aGUgbG9naW4gZm9ybSBpcyBkaXNwbGF5ZWQuICBJZiB5b3UgY2FsbCB0aGUge0Zyb250RW5kVXNlcnN9IHRhZyBmcm9tIHdpdGhpbiBhIHBhZ2UgdGVtcGxhdGUsIHlvdSBtdXN0IGRpc2FibGUgY2FjaGluZyBvbiBhbGwgcGFnZXMgdGhhdCB1c2UgdGhhdCB0ZW1wbGF0ZS48L3A+CjxwPkFkZGluZyBwcm90ZWN0ZWQgY29udGVudCB0byB5b3VyIENNU01TIHNpdGUgaXMgYXMgc2ltcGxlIGFzIGNyZWF0aW5nIG5ldyBwYWdlcyBvZiB0eXBlICZxdW90O1Byb3RlY3RlZCBDb250ZW50JnF1b3Q7IGFuZCBzZWxlY3Rpbmcgd2hpY2ggdXNlciBncm91cHMgKG9yIGFsbCkgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoZSBwYWdlLjwvcD4KCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4KPGg0PkZ1bmN0aW9uczo8L2g0Pgo8dWw+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpZCgkdXNlcm5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgaW50ZWdlciB1c2VyIGlkIGdpdmVuIGEgdXNlcm5hbWUuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJnF1b3Q7YXNzaWduJnF1b3Q7IHBhcmFtZXRlci48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyaWQoJHVzZXJuYW1lLCd1aW5mbycpfTwvY29kZT48L3A+CjwvbGk+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpbmZvKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgdXNlciBpbmZvcm1hdGlvbiBmb3IgYSBzaW5nbGUgdXNlci4gIFRoZSBvdXRwdXQgaXMgYW4gYXJyYXkgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmcXVvdDthc3NpZ24mcXVvdDsgcGFyYW1ldGVyLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpbmZvKCRzb21ldGhpbmcudXNlcmlkLCd1aW5mbycpfTxici8+eyR1aW5mb3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhbiBhcnJheSBvZiB1c2VybmFtZXMgYW5kIHVzZXJpZHMgZm9yIGFsbCB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwLiAgVGhlIG91dHB1dCBpcyBhc3NpZ25lZCB0byBhIHNtYXJ0eSB2YXJpYWJsZSBzcGVjaWZpZWQgaW4gdGhlICZxdW90O2Fzc2lnbiZxdW90OyBwYXJhbWV0ZXIuPC9wPgo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCdtZW1iZXJzJywnbXltZW1iZXJzJyl9PGJyLz57JG15bWVtYmVyc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyX3Byb3BlcnRpZXMoNSwndXNlcnByb3BzJyl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZndDtnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZVssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgZnVuY3Rpb24gcmV0dXJucyB0aGUgdGV4dCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBvcHRpb24gdmFsdWUgZm9yIGEgc3BlY2lmaWVkIGRyb3Bkb3duIHByb3BlcnR5LjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJ2FnZV9yYW5nZScsJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIGFuIGFycmF5IG9mIG9wdGlvbiB0ZXh0cyBjb3JyZXNwb25kaW5nIHRvIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9uIHZhbHVlcy48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCdmYXZvcml0ZV9mb29kcycsJG9uZXByb3B2YWx1ZSwnZmF2b3JpdGVfZm9vZHMnKX08YnIvPnskZmF2b3JpdGVfZm9vZHN8QHByaW50X3J9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KCR1aWRbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgc21hcnR5IG1ldGhvZCByZXR1cm5zIHRoZSB1bml4IHRpbWVzdGFtcCB0aGF0IHRoZSBzcGVjaWZpZWQgdWlkIGFjY291bnQgZXhwaXJlcy4gIFRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiBmYWxzZSBpZiB0aGUgdWlkIGNhbm5vdCBiZSBmb3VuZCBvciBzb21lIG90aGVyIGVycm9yIG9jY3VycmVkLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KDI1LCdleHBpcnknKX08YnIvPnskZXhwaXJ5fGNtc19kYXRlX2Zvcm1hdH08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoJHVpZFssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgbWV0aG9kIHJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBhY2NvdW50IGhhcyBleHBpcmVkLiAgVGhlIG1ldGhvZCB3aWxsIGFsc28gcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoMjUsJ2V4cGlyZWQnKX08YnIvPntpZiAkZXhwaXJlZH1VSUQgMjUgY2FuIG5vIGxvbmdlciBsb2dpbiB0byB0aGUgc3lzdGVtey9pZn08L2NvZGU+PC9wPgo8L2xpPgo8L3VsPgoKPGgzPlByaXZhY3kgUmVsYXRlZCBJdGVtczo8L2gzPgo8cD5UaGlzIG1vZHVsZSBkb2VzIHRyYWNrIHRoZSBJUCBhZGRyZXNzIG9mIHVzZXJzLiAgQW5kIGRvZXMgc3RvcmUgdGhhdCBpbmZvcm1hdGlvbiBpbiBpdHMgaGlzdG9yeS4gIEFkZGl0aW9uYWxseSwgdGhlIGFkbWluaXN0cmF0b3IgaGFzIHRoZSBhYmlsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgbW9kdWxlIHNvIHRoYXQgY29va2llcyBhcmUgdXNlZC4gIEhvd2V2ZXIgbm8gcGVyc29uYWwgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIHRoZSBjb29raWVzIChpZiBlbmFibGVkKS4gIE9ubHkgYSBzeXN0ZW0gYXNzaWduZWQgdW5pcXVlIHVzZXIgaWRlbnRpZmVyLCBhbmQgYSBzZXNzaW9uIGlkZW50aWZpZXIuPC9wPgo8aDM+U2VlIEFsc286PC9oMz4KPHVsPgogIDxsaT5DdXN0b21Db250ZW50IC0gUHJvdmlkZXMgc21hcnR5IHRhZ3MgYW5kIHV0aWxpdGllcyBmb3IgbW9yZSBmbGV4aWJsZSBjb250cm9sIG9mIHByb3RlY3RlZCBwYWdlcy48L2xpPgogIDxsaT5TZWxmUmVnaXN0cmF0aW9uIC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcywgaW5jbHVkaW5nIHBhaWQgcmVnaXN0cmF0aW9uIG9wdGlvbnMuPC9saT4KICA8bGk+Q0dVc2VyRGlyZWN0b3J5IC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGFuZCBzZWFyY2ggdGhyb3VnaCB0aGUgcHJvZmlsZSBpbmZvcm1hdGlvbiBvZiBrbm93biB1c2Vycy48L2xpPgo8L3VsPgo8aDM+RW5jcnlwdGVkIERhdGE6PC9oMz4KPHA+VGhlIEVuY3J5cHRlZCBmaWVsZCBmdW5jdGlvbmFsaXR5IGlzIGludGVuZGVkIHRvIHN0b3JlIChpbiBhIHNlY3VyZSB3YXkpIHBlcnNvbmFsIGFuZCBwcml2YXRlIGRhdGEgdGhhdCBldmVuIHRoZSBzaXRlIGFkbWluaXN0cmF0b3Igc2hvdWxkIG5vdCBoYXZlIGFjY2VzcyB0by4gIGkuZTogaXRlbXMgc3VjaCBhcyBDcmVkaXQgQ2FyZCBpbmZvcm1hdGlvbi4gIFRoZSBvbmx5IHBlcnNvbiB0aGF0IHNob3VsZCBiZSBhYmxlIHRvIHZpZXcgYW5kIGVkaXQgdGhpcyBkYXRhIGlzIHRoZSB1c2VyIGhpbXNlbGYuICAgVGhpcyBkYXRhIHNob3VsZCBub3QgYmUgZXhwb3J0ZWQgdG8gcGxhaW4gdGV4dCBlaXRoZXIuICBUaGUgZGF0YSBjb3VsZCBob3dldmVyIGJlIHJlYWQgYW5kIHVzZWQgYnkgb3RoZXIgbW9kdWxlcy48L3A+CjxwPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gIFRoZXJlIG1heSBiZSBhIG5lZWQgZm9yIGFuIGFkZGl0aW9uYWwgbW9kdWxlIHRvIGRpc3BsYXkgdGhlIHVuZW5jcnlwdGVkIGZvcm0gb2YgZW5jcnl0cGVkIHVzZXIgaW5mb3JtYXRpb24sIGhvd2V2ZXIgdGhlIEZFVSBtb2R1bGUgZG9lcyBub3QgbmVlZCBpdC48L3A+CjxoMz5GQVE8L2gzPgo8dWw+CiAgPGxpPjxzdHJvbmc+UTo8L3N0cm9uZz4gV2h5IGNhbid0IEkgY3JlYXRlIGEgZ3JvdXAKICAgIDxwPjxzdHJvbmc+QTo8L3N0cm9uZz4gR3JvdXBzIGNhbid0IGJlIGNyZWF0ZWQgdW50aWxsIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBpcyBjcmVhdGVkLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFdoeSBjYW4ndCBJIGRlbGV0ZSBhIHByb3BlcnR5CiAgICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IEEgcHJvcGVydHkgY2Fubm90IGJlIGRlbGV0ZWQgdW50aWwgaXQgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhbnkgZ3JvdXBzLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFNldHRpbmcgcHJvcGVydHkgb3JkZXIgZG9lc24ndCBzZWVtIHRvIHdvcmsKICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IFRoZSBwZXJjaWV2ZWQgcHJvcGVydHkgb3JkZXIgd2lsbCBjaGFuZ2UgZWFjaCB0aW1lIHRoZSBncm91cCBpcyBlZGl0ZWQuICBUaGUgcHJvcGVydGllcyB0aGF0IGFyZSBtYXJrZWQgYXMgJnF1b3Q7b2ZmJnF1b3Q7IHdpbGwgYWx3YXlzIGJlIGRpc3BsYXllZCBhdCB0aGUgYm90dG9tLCBidXQgdGhlIHNvcnQgb3JkZXIgb2Ygb3RoZXIgcHJvcGVydGllcyB3aWxsIGJlIHJldGFpbmVkLjwvcD4KICA8L2xpPgo8L3VsPgo8aDM+U3VwcG9ydDwvaDM+CjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4KPHVsPgo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwncwptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2NhbGd1eTEwMDAuY29tIj5jYWxndXkxMDAwLmNvbTwvYT4uPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPgo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICAKPC91bD4KPGgzPlBhcmFtZXRlcnM8L2gzPgo8dWw+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0iZGVmYXVsdCIKICA8cD5BY3Rpb25zOjwvcD4KICA8dWw+CiAgICA8bGk+PGVtPmRlZmF1bHQ8L2VtPiAtIFRoZSBkZWZhdWx0IGFjdGlvbiwgd2hpY2ggZW5hYmxlcyB0aGUgbm9ybWFsIGZvcm09IGJlaGF2aW91ci48L2xpPgogICAgPGxpPjxlbT5yZXNldF9zZXNzaW9uPC9lbT4gLSBQcm92aWRlIGEgamF2YXNjcmlwdCBjb250cm9sbGVkIHRlbXBsYXRlIHRvIGFsbG93IHRoZSBtYW51YWwsIG9yIGF1dG9tYXRpYyBwaW5naW5nIG9mIHRoZSB1c2VyIHNlc3Npb24uICBUaGlzIHRlbXBsYXRlIGNhbiBiZSB1c2VkIHRvIHJlbWluZCB0aGUgdXNlciB0aGF0IGhpcyBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgYW5kIHRvIHRyaWdnZXIgaXRzIHJlc2V0LiAgTm9ybWFsbHkgdGhpcyBtZXRob2QgaXMgbm90IHJlcXVpcmVkIGFzIGFueSBwYWdlIHRoYXQgZGlzcGxheXMgdGhlIEZyb250RW5kVXNlciBjb250cm9scyB3b3VsZCBoYW5kbGUgdGhpcywganVzdCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gdmlldyBhIHBhZ2Ugb24gYSByZWd1bGFyIGJhc2lzLiAgSG93ZXZlciwgaWYgdGhlcmUgYXJlIHBhZ2VzIHdpdGggYWxvdCBvZiBjb250ZW50IHJlcXVpcmluZyBleHRlbnNpdmUgcmVhZGluZywgdGhpcyBtYXkgYmUgYSB1c2VmdWwgc29sdXRpb24uPC9saT4KICAgIDxsaT48ZW0+dmlld3VzZXI8L2VtPiAtIERpc3BsYXkgYSByZXBvcnQgZm9yIGEgc2luZ2xlIHVzZXIsIHJlcXVpcmVzIHVzZSBvZiB0aGUgdWlkIHBhcmFtZXRlci48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSJuYW1lIgo8cD5Gb3Jtczo8L3A+Cjx1bD4KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPgogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4KIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0uPC9saT4KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPgo8L3VsPgo8L2xpPgoKPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPgogIDx1bD4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSJncm91cDEsIGdyb3VwMiwgZ3JvdXAzIgogICAgIDxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4KICAgIDwvbGk+CiAgICA8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9Imdyb3VwIgogICAgICA8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPgogICAgPC9saT4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0iMSIKICAgICAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPgogICAgPC9saT4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsCiAgICAgIDxwPlVzZWQgd2l0aCB0aGUgdmlld3VzZXIgYWN0aW9uLiAgVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgdG8gc3BlY2lmeSB3aGljaCB1c2VyIHRvIHZpZXcgdGhlIGRldGFpbHMgb2YuPC9wPgogICAgPC9saT4KICA8L3VsPgo8L2xpPgo8L3VsPgoKPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0Cm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4KPGgzPlJlcXVpcmVtZW50czwvaDM+CjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4KPHA+Rm9yIGVuY3J5cHRlZCBmaWVsZHMgdGhlIG1jcnlwdCBmdW5jdGlvbmFsaXR5IGlzIHJlcXVpcmVkLjwvcD4KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+CjxwPkNvcHlyaWdodCAmY29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+CjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4KPGgzPkRlcGVuZGVuY2llczwvaDM+PHVsPjxsaT5DTVNNYWlsZXIgPSZndDsgMS43My45PC9saT48bGk+Q0dFeHRlbnNpb25zID0mZ3Q7IDEuMzguMTA8L2xpPjwvdWw+PGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJubGFzdD0iIiAtIFVzZWQgd2l0aCB0aGUgbG9naW4gYW5kIGxvZ291dCBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgaWYgc3BlY2lmaWVkIHdpbGwgaW5kaWNhdGUgdGhhdCB0aGUgdXNlciBzaG91bGQgYmUgcmV0dXJuZWQgdG8gdGhlIHBhZ2UgKGJ5IHVybCkgdGhhdCB0aGUgdXNlciB3YXMgdmlld2luZyBiZWZvcmUgdGhlIGFjdGlvbiBvY2N1cnJlZC4gIFRoaXMgcGFyYW1ldGVyIHdpbGwgb3ZlcnJpZGUgdGhlIHJlZGlyZWN0IHByZWZlcmVuY2VzLCBhbmQgdGhlIHJldHVybnRvIHBhcmFtZXRlci48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vaW5saW5lPSIiIC0gVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGhvdG1haWwuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMjMuNDxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPjAuMC4xIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlPC9saT4KPGxpPjAuMS4wIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgcmVsZWFzZTwvbGk+CjxsaT4wLjEuMSAtIE9jdG9iZXIsIDIwMDUgLSBGaXhlZCBpc3N1ZXMgd2l0aCBwcm9wZXJ0aWVzPC9saT4KPGxpPjAuMS4yIC0gT2N0b2JlciwgMjAwNSAtIEFkZGVkIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5PC9saT4KPGxpPjAuMS4zIC0gTm92ZW1iZXIsIDIwMDUKICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSByZWRpcmVjdCBwYWdlIG9uIGxvZ2luLCBsb2dvdXQsIGZvcmdvdCBwYXNzd29yZCwgYW5kIGNoYW5nZSBzZXR0aW5ncywgYW5kIGFkZGVkIHRoZSByZXR1cm50byBhbmQgZm9ybSBwYXJhbWV0ZXJzIHRvIHRoZSB1c2VyIHNpZGUgb2YgdGhpbmdzLCBhbHNvIGRpZCBhIGNvdXBsZSBsZiBsaXR0bGUgY2xlYW51cHMuICBUaGlzIHZlcnNpb24gcmVxdWlyZXMgdjAuMTEgYW5kIGFib3ZlIGZvciBjZXJ0YWluLjwvcD48L2xpPgo8bGk+MC4xLjQgLSBOb3ZlbWJlciwgMjAwNSAtIFZlcnkgbWlub3IgY2hhbmdlIHdpdGggcmVzcGVjdCB0byBhIGZvcmdvdHRlbiBhbmQgbm8gbG9uZ2VyIG5lZWRlZCBmdW5jdGlvbiBjYWxsPC9saT4KPGxpPjAuMS41IC0gTm92ZW1iZXIsIDIwMDUKICAgIDxwPkFub3RoZXIgdmVyeSBtaW5vciBjaGFuZ2UsIGFkZGVkIHNvbWUgdGV4dCB0byB0aGUgUG9zdEluc3RhbGwgbWVzc2FnZS48L3A+PC9saT4KPGxpPjAuMS42IC0gSmFudWFyeSwgMjAwNgogICAgPHA+Q2hhbmdlcyB0byB0aGUgcGVybWlzc2lvbiBtb2RlbCwgYW5kIG1pbm9yIGJ1ZyBmaXhlcyB0byB0aGUgcHJlZmVyZW5jZXMuICBBbHNvIHNvbWUgcGhwNSBmaXhlcyBidXQgSSBhbSBzdXJlIHRoYXQgdGhlcmUgYXJlIG1vcmUgb3V0IHRoZXJlLjwvcD48L2xpPgo8bGk+MC4xLjcgLSBKYW51YXJ5LCAyMDA2CiAgICA8cD5NYW55IHRoYW5rcyB0byA8Yj5rYXRvbjwvYj4gZm9yIGFkZGluZyB0aGUgdGV4dGFyZWEgYW5kIGRyb3Bkb3duIHByb3BlcnR5IHR5cGVzLjwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBwcm9wZXJ0eSBhZGRpbmcgdG8gZml4IHByb2JsZW1zIHdpdGggc3BhY2VzIGluIHByb3BlcnR5IG5hbWVzICh3ZSBubyBsb25nZXIgbGV0IHRoYXQgaGFwcGVuKS48L3A+CjwvbGk+CjxsaT48cD4xLjAuMCAtIEZlYnJ1YXJ5LCAyMDA2PHA+CiAgICA8cD5BZGRlZCBmaWx0ZXJpbmcgYW5kIHJvdyBsaW1pdGluZyB0byB0aGUgYWRtaW4gcGFuZWwuIFRoaXMgd2lsbCBoYXZlIGJpZyBiZW5lZml0cyB0byB0aG9zZSB0aGF0IGFyZSB1c2luZyB0aGlzIG1vZHVsZSBmb3IgaGlnaCB0cmFmaWMsIGFuZCBoaWdoIHVzZXIgc2l0ZXMuPC9wPgogICAgPHA+QWRkZWQgc29ydGluZyB0byB0aGUgYWRtaW4gcGFuZWw8L3A+CiAgICA8cD5BZGRlZCBtYXggbGVuZ3RoIGFiaWxpdHkgdG8gdGV4dCBhbmQgZW1haWwgZmllbGRzPC9wPgogICAgPHA+Rml4ZWQgYSBzbWFsbCBwcm9ibGVtIHdpdGggdGhlIGRlZmF1bHQgZ3JvdXAgbm90IGJlaW5nIGNoZWNrZWQgd2hlbiBhZGRpbmcgYSB1c2VyPC9wPgogICAgPHA+U2F2ZSBmaWx0ZXIgc2V0dGluZ3MgaW4gcHJlZmVyZW5jZXMsIGFuZCB0aGUgYWN0aXZlIHRhYiB0b28uPC9wPgogICAgPHA+RGVsZXRlIHVzZXIgcHJvcGVydGllcyB3aGVuIGEgcHJvcGVydHkgaXMgZGVsZXRlZCA8ZW0+Tm90ZTwvZW0+LCBub3Qgd2hlbiBpdCBpcyBkaXNhYmxlZCBpbiB0aGUgZWRpdCBncm91cCBkaWFsb2c8L3A+CiAgICA8cD5BZGQgY29uZmlybWF0aW9uIG1lc3NhZ2UgaW4gZWRpdCBncm91cHMuPC9wPgogICAgPHA+QWRkZWQgYSBjb3VwbGUgbW9yZSBjb25maXJtYXRpb24gbWVzc2FnZXMuPC9wPgogICAgPHA+QWRkZWQgQ1NWIEV4cG9ydCBvcHRpb248L3A+CiAgICA8cD5Ub2RvIC0gQWRkIHByZWZlcmVuY2VzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRsZW5ndGg8L3A+CjwvbGk+CjxsaT4xLjAuMSAtIE1hcmNoLCAyMDA2CiAgICA8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBjaGVjayBmb3IgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlczwvcD4KICAgIDxwPkZpeCBwcm9ibGVtIHdoZXJlIGV4cGlyeSBkYXRlIHdhcyBiZWluZyBtb2RpZmllZCB3aGVuIGFkbWluIG1vZGlmaWVkIHVzZXIgc2V0dGluZ3M8L3A+CiAgICA8cD5BZGQgYSBjb25maXJtYXRpb24gbWVzc2FnZSB0byB0aGUgcHJlZmVyZW5jZXMgc3VibWl0IGJ1dHRvbjwvcD4KICAgIDxwPkZpeGVkIGEgbWlub3IgYnVnIHdoZW4gY291dGluZyB0aGUgbnVtYmVyIG9mIHVzZXJzIGluIGEgZ3JvdXA8L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgc2l6ZSBvZiB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRzLCBhbmQgbWF4bGVuZ3RoPC9wPgogICAgPHA+QWRkZWQgYWR2YW5jZWQgZmlsdGVyaW5nIG9uIHByb3BlcnRpZXM8L3A+CiAgICA8cD5DaGFuZ2VzIHRvIGxhYmVsaW5nIGluIGFkZCBvciBlZGl0IHVzZXI8L3A+CiAgICA8cD5GaXhlcyB0byBwcm9ibGVtcyB3aXRoIGlubGluZSBhbmQgbm9uIGlubGluZSBmb3JtcywgdGhlIHBhc3N3b3JkIGlzIG5ldmVyIHNlbnQgb24gdGhlIGdldCBsaW5lPC9wPgogICAgPHA+Q2hhbmdlZCB0byByZXF1aXJlIENNUyAwLjEyLWJldGEyIGF0IGEgbWluaW11bSAoZm9yIHNhZmV0eSBwdXJwb3Nlcyk8L3A+CjwvbGk+CjxsaT4xLjAuMiAtIE1hcmNoLCAyMDA2CiAgICA8cD5Nb3JlIGZpZWxkIGxlbmd0aCBmaXhlczwvcD4KPC9saT4KPGxpPjEuMC4zIC0gTWFyY2gsIDIwMDYKICAgIDxwPkV4cG9ydCB0byBzbWFydHkgYWxsIG9mIHRoZSB1c2VyIHByb3BlcnRpZXMgd2hlbiB0aGV5IGFyZSBsb2dnZWQgaW48L3A+CjwvbGk+CjxsaT4xLjAuNCAtIE1heSwgMjAwNgogICAgPHA+Rml4ZXMgdG8gdGhlIGV4cG9ydCBjb2RlPC9wPgogICAgPHA+Q29kZSBjbGVhbnVwIChhbHBoYWJldGl6ZSBmdW5jdGlvbnMpPC9wPgogICAgPHA+TWlub3IgZml4ZXMgYW5kIGVuaGFuY2VtZW50cyAocmVjb21tZW5kZWQgYnkgbmlsczczKSBmb3IgZGVhbGluZyB3aXRoIHRoZSBjaGFuZ2UgcGFzc3dvcmQgc3R1ZmYuPC9wPgogICAgPHA+UmVtb3ZlZCB0aGUgcmVxdWlyZW1lbnQgZm9yIENNUyAwLjEyLCBhbmQgcHV0IGl0IGJhY2sgdG8gMC4xMS4yPC9wPgogICAgPHA+QWRkZWQgdGhlIFwnc2lsZW50XCcgZm9ybTwvcD4KICAgIDxwPkNsZWFuZWQgdXAgZGF0YWJhc2UgYWNjZXNzIHN0dWZmIGZvciBwZXJmb3JtYW5jZSByZWFzb25zIChob3BlZnVsbHkpPC9wPgogICAgPHA+QWRkZWQgY29weXJpZ2h0IGluZm88L3A+CiAgICA8cD5BZGRlZCBtYWNyb3MgZm9yIHJlZGlyZWN0byB0byBhIHVzZXIgc3BlY2lmaWMgcGFnZSBvbiBsb2dpbiBvciBsb2dvdXQ8L3A+CiAgICA8cD5Ud2Vha3MgdG8gdGhlIGFkbWluIHByZWZlcmVuY2VzIHRhYjwvcD4KPC9saT4KPGxpPjEuMC41IC0gTWF5LCAyMDA2CiAgICA8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCBleHBpcnkgZGF0ZXM8L3A+CiAgICA8cD5TdGFydCBzcGxpdHRpbmcgdGhlIGNvZGUgdXAgaW50byBzZXZlcmFsIGZpbGVzPC9wPgo8bGk+MS4wLjYgLSBNYXksIDIwMDYKICAgIDxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIGVkaXRpbmcgZHJvcGRvd25zPC9wPgo8L2xpPgo8bGk+MS4xLjAgLSBNYXksIDIwMDYKICAgIDxwPkV2ZW50czwvcD4KICAgIDxwPk9wdGlvbmFsbHkgZGlzYWxsb3cgcmVwZWF0ZWQgbG9naW5zPC9wPgogICAgPHA+RXhwb3J0IHRoZSB1c2VyIGlkIHRvIHNtYXJ0eTwvcD4KICAgIDxwPkFkZGVkIG9wdGlvbmFsbHkgXHtcJGdyb3VwXH0gZm9yIHRoZSBwYWdlcyB0byBqdW1wIHRvIG9uIGxvZ2luPC9wPgo8L2xpPgo8bGk+MS4xLjEgLSBTZXB0LCAyMDA2CiAgICA8cD5GaXhlZCBhIGJ1ZyB3aGVuIGEgdXNlciB3YXMgZWRpdGluZyBoaXMgc2V0dGluZ3Mgd2l0aCBcJ2FsbG93IGR1cGxpY2F0ZSBlbWFpbHNcJyB3YXMgb2ZmPC9wPgogICAgPHA+Q2hhbmdlZCB0aGUgZHJvcGRvd24gdGFibGUgdG8gMjU1IGNoYXJhY3RlcnM8L3A+CiAgICA8cD5NaW5vciBjbGVhbnVwczwvcD4KPC9saT4KPGxpPjEuMS4yIC0gRGVjLCAyMDA2CiAgICA8cD5GaXhlcyAoaG9wZWZ1bHkpIHRvIHRoZSBhZG9kYi9hZG9kYi1saXRlIERBVEVUSU1FIGlzc3VlPC9wPgogICAgPHA+QWRkIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgbG9naW4gc2NyZWVuIChvcHRpb25hbCksIHRoYW5rcyBkaXR0bWFuPC9wPgogICAgPHA+Rml4ZXMgdG8gY2FuY2VsIGhhbmRsaW5nIG9uIHRoZSBsb3N0IHBhc3N3b3JkIGFuZCBjaGFuZ2Ugc2V0dGluZ3Mgc2NyZWVuczwvcD4KICAgIDxwPkZpeGVzIHRvIHVzZXIgZXhwaXJ5IChtb3JlIERCVGltZXN0YW1wIGlzc3VlcyksIHRoYW5rcyBhZ2FpbiBkaXR0bWFuPC9wPgogICAgPHA+T3B0aW9uIHRvIGFsbG93IEZFVXNlcnMgdG8gaGF2ZSBpdHMgb3duIHNldCBvZiBwZXJtaXNzaW9ucyBhc3NpZGUgZnJvbSB0aGUgYWRtaW4gcGVybWlzc2lvbnMuICBUaGFua3MgX1NqR188L3A+CiAgICA8cD5PcHRpb24gdG8gYWxsb3cgZHVwbGljYXRlIHBhc3N3b3JkIHJlbWluZGVyIHJlcXVlc3RzIGFuZCB0byBzcGVjaWZ5IHRleHQgb24gdGhlIHNpZ25pbiBidXR0b24uICBUaGFua3MgX1NqR188L3A+CiAgICA8cD5HZW5lcmFsIGNsZWFudXAgb2YgZnVuY3Rpb25zIHRoYXQgd2VyZSBub3QgYmVpbmcgdXNlZCBhbmQgbm90aWNlcy93YXJuaW5nczwvcD4KICAgIDxwPkFkZGVkIHRoZSBvbmx5X2dyb3VwcyBwYXJhbSBmb3IgbG9naW4gZm9ybXMuICBUaGFua3Mgd2lzaHk8L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgbGVuZ3RoIG9mIHRoZSBlbWFpbCBmaWVsZCBpbiB0aGUgY2hhbmdlIHBhc3N3b3JkIGZvcm08L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgZW1haWwgdmFsaWRhdGlvbiBzdHVmZjwvcD4KPC9saT4KICAgIDxsaT4xLjIuMCAtIEFwcmlsLCAyMDA3CiAgICA8cD5lbGlqYWhsb2ZncmVuIC0gRml4ZXMgdG8gY2FwdGNoYSBzdXBwb3J0LCBhbmQgc29tZSB0ZW1wbGF0ZSBjbGVhbnVwcy48L3A+CiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgbXVsdGkgc2VsZWN0IGxpc3RzPC9wPgogICAgPHA+VGVtcGxhdGUgY2xlYW51cHMgKG1vcmUgb2YgZW0pPC9wPgogICAgPHA+QWRkIHN1cHBvcnQgZm9yIHZhbHVlPWtleSBzdHVmZiBpbiB0aGUgZHJvcGRvd24gYW5kIG11bHRpIHNlbGVjdCBsaXN0cy48L3A+CiAgICA8cD5iZXR0ZXIgY2hlY2tpbmcgb2YgdGhlICJhdCBsZWFzdCBvbmUgZ3JvdXAgcmVxdWlyZWQiIHN0dWZmPC9wPgogICAgPHA+T3V0cHV0IG1vcmUgc21hcnR5IHZhcmlhYmxlcyBvbiB0aGUgdXNlciBzZXR0aW5ncyBwYWdlLCB0byBhbGxvdyBwZW9wbGUgdG8gbW9kaWZ5IHRoZSB0ZW1wbGF0ZSB0byBzb21ldGhpbmcgdGhhdCBpcyBtb3JlIGFjY2Vzc2liaWxlPC9wPgogICAgPHA+U3BsaXQgaW50byBtb3JlIGZpbGVzIGZvciBwZXJmb3JtYW5jZTwvcD4KICAgIDxwPllvdSBjYW4gbm93IG5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2VyczwvcD4KICAgIDxwPk5vdyBoYW5kbGUgcmVnZXggcHJvYmxlbXMgYmV0dGVyIGluIHRoZSBhZG1pbiBzZWN0aW9uIHVzZXJzIHRhYjwvcD4KICAgIDxwPkVtYWlsIGZpZWxkcywgd2hlbiBzcGVjaWZpZWQgYXMgb3B0aW9uYWwsIG1ha2UgZW0gYWN0dWFsbHkgb3B0aW9uYWw8L3A+CiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgaW1hZ2UgdXBsb2FkcywgdGhpcyBpcyBhIGJpZyBmZWF0dXJlLiAgSW1hZ2VzIGFyZSBzY2FsZWQgdG8gYSBtYXhpbXVtIHNpemUgaW4gb25lIGRpbWVuc2lvbiwgYW5kIHN0b3JlZCBhcyBmaWxlcyBpbiBhIGNvbmZpZ3VyYWJsZSBkaXJlY3RvcnkgdW5kZXIgdGhlIHVwbG9hZHNfcGF0aC48L3A+CiAgICA8cD5DYXB0Y2hhIG1vZGUgaXMgbm93IG9uIGJ5IGRlZmF1bHQsIHVubGVzcyB5b3UgdXNlIHRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGluIHRoZSB0YWcuPC9wPgogICAgPHA+Rml4ZXMgdG8gQ1NWIGV4cG9ydC4uLiBpdCB3YXMgYXNzdW1pbmcgdGhlIGRiX3ByZWZpeCBpcyBjbXNfPC9wPgogICAgPHA+SW1wb3J0IFVzZXJzIGZyb20gQ1NWPC9wPgogICAgPHA+Rml4ZXMgdG8gdGhlIGluc3RhbGwgYW5kIHVuaW5zdGFsbCBtZXRob2RzLCBhbmQgbm93IHRoZSBhbGxvd19yZXBlYXRlZF9sb2dpbnMgcHJlZmVyZW5jZSBzaG91bGQgd29yazwvcD4KICAgIDxwPkFkZHMgcHJvcGVyIHVzZXIgaGlzdG9yeSB0cmFja2luZy4gIE5vdyB0cmFjayBmYWlsZWQgbG9naW5zLCBsb2dpbnMsIGV4cGlyaWVzLCBhbmQgbG9nb3V0cywgb24gYSBwZXIgdXNlciBiYXNpcy48L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgdXNlciBzZXR0aW5ncyBwYWdlLCBpZiB0aGUgdXNlciBzZXR0aW5ncyBmb3JtIGlzIG9uIGEgZGlmZmVyZW50IHBhZ2UuPC9wPgogICAgPHA+Rml4ZXMgdG8gdGhlIGNhbmNlbCBidXR0b24gb2YgdGhlIGZvcmdvdCBwYXNzd29yZCBwYWdlLCBpZiB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0gaXMgb24gYSBkaWZmZXJlbnQgcGFnZS48L3A+CiAgICA8cD5NaW5vciBmaXhlcyB0byBiZWhhdmlvdXIgb2FmIHRoZSBwcmVmZXJlbmNlcyBwYW5lbHMuPC9wPgo8L2xpPgo8bGk+MS4yLjEgLSBKdW5lLCAyMDA3Cgk8cD5BIGNvb2tpZSBpcyBub3cgdXNlZCB0byBrZWVwIHRyYWNrIG9mIGxvZ2luIHN0YXRlIGJldHdlZW4gc2Vzc2lvbnMsIGhvd2V2ZXIgdGhlIGNvb2tpZSBkb2VzIG5vdCBsYXN0IGFueSBsb25nZXIgdGhhbiB0aGUgdGltZW91dCBzcGVjaWZpZWQgaW4gdGhlIHVzZXIgc2V0dGluZ3MuPC9wPgoJPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGFuIGFkbWluaXN0cmF0b3IgdG8gbG9nb3V0IHVzZXJzPC9wPgoJPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZmlsdGVyIGJ5IGxvZ2dlZCBpbiBzdGF0dXM8L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgcmVhZC1vbmx5IHByb3BlcnRpZXMuPC9wPgoJPHA+QWRkZWQgbW9yZSB2YXJpYWJsZXMgaW4gZWFjaCBvYmplY3QgaW4gdGhlIGNoYW5nZXNldHRpbmdzIGZvcm08L3A+CjwvbGk+CjxsaT4KCTxwPjEuMi4yIC0gSnVuZSwgMjAwNzwvcD4KCTxwPnRzdyAtIEFkZGVkIGV2ZW50IE9uVXBkYXRlVXNlciB3aGljaCBnZXRzIGNhbGxlZCB3aGVuIHVzZXIgKG9yIGFkbWluKSB1cGRhdGVzIHVzZXIgaW5mbzwvcD4KCjwvbGk+CjxsaT4xLjMgLSBPY3RvYmVyLCAyMDA3CjxwPkFkZGVkIHN1cHBvcnQgZm9yICdyZW1lbWJlciBtZScgc28gdGhhdCBsb2dpbiBpbmZvcm1hdGlvbiBpcyBzdG9yZWQgaW4gYSBjb29raWUuICBBbmQgc3VwcG9ydCBmb3IgYSBmb3JtIHRvIGFsbG93IHRoYXQgY29va2llIHRvIGJlIHJlc2V0LjwvcD4KPHA+Tm8gbG9uZ2VyIHN1cHBvcnQgbm9uIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGluIHByb3BlcnR5IG5hbWVzLjwvcD4KPHA+TnVtZXJvdXMgc21hbGwgYnVnZml4ZXMuPC9wPgo8cD5SZXF1aXJlIENNUyAxLjIgb3IgZ3JlYXRlci48L3A+CjwvbGk+CjxsaT4xLjMuMSAtIE5vdmVtYmVyLCAyMDA3CjxwPkZpeGVzIHByb2JsZW1zIHdpdGggcGFyYW1ldGVycyBub3QgYmVpbmcgY2xlYW5lZCBpbiB0aGUgY2hhbmdlIHNldHRpbmdzIGRpYWxvZyBvbiB0aGUgZnJvbnQgZW5kLjwvcD4KPHA+Rml4ZXMgYW4gdXBkcmFkZSBpc3N1ZSBpbiB0aGUgZGF0YWJhc2Ugc2NoZW1hPC9wPgo8cD5GaXhlcyBhbiBpc3N1ZSBpbiBhIEdldFNtYXJ0eSgpIGNhbGwgdGhhdCB3YXMgYXBwYXJlbnRseSBjYXVzaW5nIHBlb3BsZSBkaWZmaWN1bHRpZXMgd2l0aCB0aGUgbG9naW4gZm9ybS48L3A+CjxwPkFkZCBhIHByZWZlcmVuY2UgdGhhdCBhbGxvd3MgYWRtaW5zIHRvIHNwZWNpZnkgYSBwYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIHRoZSBmb3Jnb3QgcGFzc3dvcmQgdmFsaWRhdGlvbiBmb3JtIGlzIGNvbXBsZXRlLjwvcD4KPHA+Rml4ZXMgYSBwcm9ibGVtIHdpdGggaGlkZGVuIHByb3BlcnRpZXMgYmVpbmcgbG9zdCBhZnRlciBhIHVzZXIgY2hhbmdlZCB0aGVpciBzZXR0aW5ncy48L3A+CjxwPlRoZSBGb3Jnb3QgUGFzc3dvcmQgYW5kIExvc3QgVXNlcm5hbWUgZm9ybXMgYXJlIG5vdyBpbmxpbmU8L3A+CjxwPkZpeGVzIHRvIGVycm9ycyBpbiBlbmNyeXB0aW9uIHdpdGggdGhlIHNlc3Npb25pbmc8L3A+CjxwPkZpeGVzIHRvIHRoZSBsb3N0IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuPC9wPgo8L2xpPgo8bGk+MS4zLjMgLSBEZWNlbWJlciwgMjAwNwo8cD5Ob3cgb3B0aW9uYWxseSBhbGxvdyBzb21lIGZyb250ZW5kIGZvcm1zIHRvIGJlIGlubGluZWQuPC9wPgo8cD5BZGQgZW1haWwgbm90aWZpY2F0aW9ucyB3aGVuIHVzZXIgY2hhbmdlcyB0aGVpciBzZXR0aW5ncywgb3Igb24gYW55IG90aGVyIGV2ZW50LjwvcD4KPHA+Q2hhbmdlIHRoZSBtYXhpbXVtIGRhdGEgc2l6ZSBmb3IgcHJvcGVydGllcyBmcm9tIDI1NSBjaGFyYWN0ZXJzIHRvIGxvbmd0ZXh0PC9wPgo8cD5GaXhlcyBhbiBpc3N1ZSB3aGVyZSB0aGUgbG9nb3V0IGxpbmtzIGRpZCBub3Qgb2JleSB0aGUgcHJlZmVyZW5jZSB3aGljaCBkaWN0YXRlZCB3aGljaCBwYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIGxvZ291dC48L3A+CjwvbEk+CjxsaT4xLjQgLSBGZWJydWFyeSwgMjAwOAo8cD5BZGRzIHRoZSB2aWV3dXNlciBhY3Rpb24gdG8gdmlldyB0aGUgcHJvcGVydGllcyBmb3IgYSBzcGVjaWZpYyB1c2VyPC9wPgo8bGk+MS40LjEgLSBGZWJydWFyeSwgMjAwOAo8cD5BZGRzIHRoZSBHZXRVc2VySGlzdG9yeSBtZXRob2QgdG8gdGhlIGFwaTwvcD4KPHA+QWRkcyBhIHByZWZlcmVuY2UgZm9yIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzPC9wPgo8cD5Vc2UgdGhlIGFmdGVyX3ZlcmlmeWNvZGUgcHJlZmVyZW5jZTwvcD4KPC9saT4KPGxpPjEuNC4yIC0gTWFyY2gsIDIwMDgKPHA+Rml4ZXMgcHJvYmxlbXMgd2l0aCBjYW5jZWwgYnV0dG9uczwvcD4KPHA+TWFrZXMgaXQgZWFzaWVyIGZvciB0ZXh0IG9uIHZhcmlvdXMgYnV0dG9ucyBhbmQgbGlua3MgdG8gYmUgY2hhbmdlZDwvcD4KPHA+VXBkYXRlIGRlcGVuZGVuY2llcywgZXRjLjwvcD4KPHA+VXBkYXRlIGFsbCBmaWxlcyBhbmQgdGhlIGhlbHAgdG8gcmVmbGVjdCB0aGUgbmV3IGxpY2Vuc2U8L3A+CjxwPkFkanVzdG1lbnRzIHNvIHRoZSBzaWduaW4gYW5kIHNpZ25vdXQgdGV4dCBjYW4gYmUgY2hhbmdlZCBlYXNpbHk8L3A+CjxwPkNsZWFudXBzIGFuZCBidWcgZml4ZXM8L3A+CjwvbGk+CjxsaT4xLjQuMyAtIEp1bmUsIDIwMDgKPHA+Tm93IHVzZSBzZXNzaW9uIHZhcmlhYmxlcyB0byBrZWVwIHRyYWNrIG9mIHVzZXIgdmFyaWFibGVzIGJldHdlZW4gc3RlcHMgb2YgdGhlIGZvcm1zIGZvciBhZGRpbmcgYW5kIGVkaXRpbmcgdXNlcnMuPC9wPgo8cD5HZXQgcmlkIG9mIHRoZSB0aW1lIGZpZWxkcyBmb3IgdGhlIGV4cGlyeSBkYXRlLCBhbmQganVzdCBleHBpcmUgYXQgMjM6NTk6NTkgb24gdGhhdCBzcGVjaWZpZWQgZGF5PC9wPgo8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgZXh0ZXJuYWwgbW9kdWxlcyB0byBpbnRlcmFjdCAoc29tZXdoYXQpIHdpdGggZmV1LCBhbmQgc3BlY2lmeSBhIHJldHVybiBsb2NhdGlvbjwvcD4KPHA+QWRkZWQgdGhlIEdldEZ1bGxVc2Vyc0luR3JvdXAoKSBtZXRob2QgaW50byB0aGUgYXBpPC9wPgo8L2xpPgo8bGk+MS40LjQgLSBBdWd1c3QsIDIwMDgKPHA+VGhhbmtzIHRvIF9TakdfIHdlIG5vdyBzdXBwb3J0IHVzaW5nIGVtYWlsIGFkZHJlc3NlcyBhcyB1c2VybmFtZSAodGhlcmUgaXMgYSBwcmVmZXJlbmNlIGluIHRoZSBhZG1pbikuPC9wPgo8cD5BZGRzIGEgR2V0RW1haWwgbWV0aG9kIHRvIHRoZSBhcGkgdG8gcmV0dXJuIHRoZSBmaXJzdCBlbWFpbCBhZGRyZXNzIGZvdW5kIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuPC9wPgo8L2xpPgo8bGk+MS41IC0gQXVndXN0LCAyMDA4CjxwPkFkZCB0aGUgZmV1X3NtYXJ0eSBjbGFzcyB3aXRoIGEgZmV3IGZ1bmN0aW9ucyBpbiBpdCwgZm9yIGl0ZXJhdGluZyB0aHJvdWdoIHVzZXJzIGluIHNtYXJ0eS48L3A+CjwvbGk+CjxsaT4xLjUuMSAtIEF1Z3VzdCwgMjAwOAo8cD5LZWVwIHRoZSBsb2dpbmlkIGluIGEgdmFyaWFibGUsIHRvIGN1dCBkb3duIG9uIHRoZSBudW1iZXIgb2YgcmVwZWF0IHF1ZXJpZXMuPC9wPgo8cD5GaXhlcyB0byBwcm9wZXJ0aWVzIHdpdGggc3BhY2VzIGluIHRoZSB2YWx1ZXMuPC9wPgo8L2xpPgo8bGk+MS41LjIgLSBBdWd1c3QsIDIwMDgKPHA+U3BsaXQgb3V0IGEgZmV3IG1vcmUgZmlsZXMgdG8gc2hyaW5rIG1lbW9yeSBmb290cHJpbnQgYSBiaXQgbW9yZTwvcD4KPHA+Rml4ZXMgc29tZSB0YWIgbmFtZSBzdHVmZjwvcD4KPHA+U21hbGwgdmFsaWRhdGlvbiBpc3N1ZSB3aXRoIGRlZmF1bHQgdGVtcGxhdGU8L3A+CjxwPk1pbm9yIGVuaGFuY2VtZXRucyB0byB0aGUgdmlld3VzZXIgdGVtcGxhdGUuPC9wPgo8cD5HZXQgcmlkIG9mIGNvbW1lbnRlZCBvdXQgY29kZSB0byBzaHJpbmsgdGhlIGZpbGUgZG93biBhIGJpdC48L3A+CjxwPkZpeCBmb3Jnb3QgcGFzc3dvcmQgZm9ybSB0byBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgdXNlcm5hbWUgPT0gZW1haWwgYWRkcmVzcy48L3A+CjxwPkFkZCBwcmV0dHkgdXJsIHN1cHBvcnQgaW50byB0aGUgbG9zdCBwYXNzd29yZCBlbWFpbC48L3A+CjwvbGk+CjxsaT4xLjUuMyAtIFNlcHRlbWJlciwgMjAwOAo8cD5OdW1lcm91cyBzbWFsbCwgYnV0IGFubm95aW5nIGJ1ZyBmaXhlczwvcD4KPGxpPjEuNS40IC0gRGVjZW1iZXIsIDIwMDgKPHA+TW9yZSBhbmQgbW9yZSBidWcgZml4ZXMuPC9wPgo8cD5UaGUgc3RhcnRzIG9mIHByZXR0eSB1cmwgc3VwcG9ydCAodGhhbmsgeW91IE51bm8pPC9wPgo8L2xpPgo8bGk+MS42IC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgPGxpPkNvbXBsZXRlIHJld3JpdGUgb2YgcHJvcGVydHkgY3JlYXRpb24gYW5kIGVkaXRpbmcgc3R1ZmYuPC9saT4KICA8bGk+QWRkIHRoZSBhYmlsaXR5IHRvIG9wdGlvbmFsbHkgZW5hYmxlIGEgd3lzaXd5ZyBmb3IgdGV4dCBhcmVhIHByb3BlcnRpZXMuPC9saT4KICA8bGk+Tm8gbG9uZ2VyIGFsbG93IGF1dG8gaW5zdGFsbCBvciB1cGdyYWRlLjwvbGk+CiAgPGxpPkNvbXBsZXRlIHJld3JpdGUgb2YgZ3JvdXAgY3JlYXRpb24gYW5kIGVkaXRpbmcgc3R1ZmYuLi4uIHJlLW9yZGVyaW5nIGlzIHNpbXBsZXIgbm93LjwvbGk+CiAgPGxpPlJlLW9yZ2FuaXplIHRoZSBwcmVmZXJlbmNlcyB0YWIsIGFuZCB0aGUgdXNlcnMgZmlsdGVyaW5nIHN0dWZmIHRvIGJlIGEgYml0IG1vcmUgcHJlc2VudGFibGUuPC9saT4KICA8bGk+QWRkIG5ldyBwcmVmZXJlbmNlIGZvciB0aGUgZGVmYXVsdCBleHBpcnkgYWdlIGZvciB1c2Vycy48L2xpPgogIDxsaT5BZGQgbmV3IHByZWZlcmVuY2UgaW5kaWNhdGluZyB3ZXRoZXIgd2Ugc2hvdWxkIGF0dGVtcHQgdG8gY3JlYXRlIHJhbmRvbSB1c2VybmFtZXMgb3Igbm90LjwvbGk+CiAgPGxpPkFkZCBidWxrIHVzZXIgZGVsZXRlIGNhcGFiaWxpdGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMSAtIEphbnVzYXJ5LCAyMDA5CiAgPHVsPgogICAgPGxpPk1pbm9yIHRlbXBsYXRlIGNoYW5nZXMgdG8gdGhlIGNoYW5nZSBzZXR0aW5ncyBzdHVmZi48L2xpPgogICAgPGxpPkZpeCB0ZXh0IHByb3BlcnR5IGxlbmd0aCBpc3N1ZXMuPC9saT4KICAgIDxsaT5SZW1vdmUgc3R1cGlkIGRpZSBhbmQgZGVidWcgc3RhdGVtZW50cyBmcm9tIHRoZSByZW1lbWJlciBtZSBzdHVmZi48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMiAtIEphbnVzYXJ5LCAyMDA5CiAgPHVsPgogICAgPGxpPkJlZ2luIGltcGxlbWVudGluZyB0aGUgdGFibGVzb3J0ZXIgc3R1ZmY8L2xpPgogICAgPGxpPkZpeCBwcm9ibGVtcyB3aXRoIGltYWdlIGZpZWxkcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMyAtIEZlYnJ1YXJ5LCAyMDA5CiAgPHVsPgogIDxsaT5GaXggY29va2llIGlzc3VlcyBwZXJtYW5lbnRseS4gKEkgaG9wZSkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjQgLSBBcHJpbCwgMjAwOQogIDx1bD4KICA8bGk+QWRkIGZpZWxkIHR5cGUgYXMgYSBtZW1iZXIgb2YgdGhlIGNvbnRyb2wgb2JqZWN0IGluIHZhcmlvdXMgZm9ybXMuPC9saT4KICA8bGk+QWRkZWQgcmFkaW8gYnV0dG9ucyBmaWVsZCB0eXBlIChfU2pHXyk8L2xpPgogIDxsaT5Nb3JlIGZpeGVzIHRvIHVzZXIgZXhwb3J0IHN0dWZmLjwvbD5pCiAgPGxpPkZpeCBmb3IgcmV0dXJudG8gcGFyYW0gaW4gbG9naW4gZm9ybTwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi41IC0gTWF5LCAyMDA5CiAgPHVsPgogIDxsaT5OdW1lcm91cyBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjYgLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5OdW1lcm91cyBidWcgZml4ZXMuPC9saT4KICA8bGk+QWRkIERhdGUgZmllbGQgdHlwZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNyAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuOCAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDxsaT5BZGQgbW9yZSBmdW5jdGlvbmFsaXR5IHRvIHRoZSBmZXVfc21hcnR5IG9iamVjdC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuOC4xIC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi45IC0gQXVndXN0LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEwIC0gT2N0b2JlciwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMSAtIE5vdmVtYmVyLCAyMDA5CiAgPHVsPgogIDxsaT5Ob3cgY29udmVydCBwcm9wZXJ0eSBuYW1lcyB0byBjb250YWluIG9ubHkgdmFsaWQgY2hhcnMgaG9wZWZ1bGx5LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMiAtIEphbnVhcnksIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGltcHJvdmVtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTMgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+TW9yZSBNaW5vciBpbXByb3ZlbWVudHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43IC0gRmVicnVhcnksIDIwMTAKICA8dWw+CiAgPGxpPkFkZHMgdGhlIHJlc2V0X3Nlc3Npb24gYWN0aW9uLjwvbGk+CiAgPGxpPkJ1ZyBmaXhlczwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNy4xIC0gRmVicnVhcnksIDIwMTAKICA8dWw+CiAgPGxpPkZpeGVzIGFuZCBlbmhhbmNlbWVudHMgdG8gdGhlIGpxdWVyeSByZXNldCBzZXNzaW9uIHRlbXBsYXRlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNy4xIC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcuMyAtIE1hcmNoLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44IC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgPGxpPk5vdyB0aGUgcmVkaXJlY3RfdG8gcGFnZSBwcmVmZXJlbmNlcyBhcmUgc21hcnR5IHRlbXBsYXRlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguMiAtIEFwcmlsLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjMgLSBBcHJpbCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC40IC0gQXByaWwsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguNSAtIE1heSwgMjAxMAogIDx1bD4KICA8bGk+QWRkcyB0aGUgcmV0dXJubGFzdCBwYXJhbWV0ZXIgdG8gYWxsb3cgcmV0dXJuaW5nIGJhY2sgdG8gdGhlIHByZXZpb3VzIHVybCBvbiBsb2dpbiBvciBsb2dvdXQuPC9saT4KICA8bGk+Rml4ZXMgdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbiBpbiB0aGUgbG9zdCB1c2VybmFtZSB0ZW1wbGF0ZShzKSBmb3JtLjwvbGk+CjxsaT4xLjkgLSBNYXksIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IHVuaXF1ZSBmaWVsZHMuPC9saT4KICAgIDxsaT5WYXJpb3VzIG1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjkuMSAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5SZS1hZGRzIGEgZnVuY3Rpb24gbmVlZGVkIGJ5IEF2YWlsYWJpbGl0eS48L2xpPgogICAgPGxpPk1pbm9yIGFkZGl0aW9uIHRvIHRoZSB2aWV3IHVzZXIgdGVtcGxhdGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS45LjIgLSBNYXksIDIwMTAKICA8dWw+CiAgICA8bGk+UmVtb3ZlIHByZXR0eSB1cmxzIGZvciBsb3N0IHVzZXJuYW1lLCBhbmQgY2hhbmdlIHNldHRpbmdzIGZvcm1zIGJlY2F1c2UgdGhleSB3ZXJlIGxvc2luZyBwYXJhbWV0ZXJzIGxpa2UgdGhlIGxhbmcgcGFyYW1ldGVyLjwvbGk+CiAgICA8bGk+KFRlZCk6IEZpeCBhYmlsaXR5IHRvIHVuY2hlY2sgY2hlY2tib3hlcyB3aGlsZSBlZGl0aW5nIGEgdXNlciBpbiB0aGUgYWRtaW48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjkuMyAtIEp1bmUsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTAgLSBKdW5lLCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgc3VwcHBvcnQgZm9yIGFkZGl0aW9uYWwgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcyAoc3RpbGwgdGVzdGluZykuPC9saT4KICAgIDxsaT5GaXhlcyBhIG1pbm9yIGlzc3VlIHdpdGggcmV0dXJudG8uPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMC4xIC0gSnVseSwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMC4yIC0gSnVseSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIHRoZSBHZXRFeHByaXJ5RGF0ZSBhcGkgbWV0aG9kLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTEgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgb3B0aW9uYWwgZW5jcnlwdGlvbiBmb3IgcHJvcGVydHkgZGVmaW5pdGlvbnMuPC9saT4KICAgIDxsaT5WYXJpb3VzIG1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogICAgPGxpPkltcHJvdmVtZW50IHRvIHRoZSBDU1YgZXhwb3J0IHN0dWZmLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIgLSBBdWd1c3QsIDIwMTAKICA8dWw+CiAgICA8bGk+Tm93IHdvcmtzIGluIGNvbmp1bmN0aW9uIHdpdGggU2VsZlJlZ2lzdHJhdGlvbiB0byBoYW5kbGUgcGFpZCBzdWJzY3JpcHRpb25zLjwvbGk+CiAgICA8bGk+VGhlIGNvbnRlbnRfbW9kdWxlIHRhZyBub3cgcHJvdmlkZXMgYSBtdWx0aS1zZWxlY3QgbGlzdCAoVGVkKTwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMyAtIFNlcHRlbWJlciwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIGFuIG92ZXJhbGwgcHJlZmVyZW5jZSBmb3IgcGFpZCByZWdpc3RyYXRpb24sIHdoaWNoIHRyaWdnZXJzIHRoZSBldmVudCBoYW5kbGVycy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjQgLSBPY3RvYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjQgLSBPY3RvYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogICAgPGxpPkZpeGVzIGZvciBzdXBwb3J0IGZvciBDTVNNUyAxLjk8L2xpPgogICAgPGxpPlJlcXVpcmVzIENHRXh0ZWlvbnMgMS4yMSBvciBiZXR0ZXI8L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjYgLSBOb3ZlbWJlciwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi43IC0gRGVjZW1iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuOCAtIERlY2VtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogICAgPGxpPlNvbWUgbWlub3IgYnVnIGZpeGVzIHJlbGF0ZWQgdG8gRV9TVFJJQ1QgYW5kIEVfREVQUkVDQVRFRC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEwIC0gSmFudWFyeSwgMjAxMQogIDx1bD4KICAgIDxsaT5GaXhlcyBwcm9ibGVtIHdpdGggYWRkL2VkaXQgZ3JvdXAgd2l0aCBsb3RzIG9mIHByb3BlcnRpZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4xMiAtIEZlYnJ1YXJ5LCAyMDExCiAgPHVsPgogICAgPGxpPk1pbm9yIEFQSSBGaXhlcy48L2xpPgogICAgPGxpPkFkZHMgYSBtZXRob2QgdG8gY2xlYXIgdGhlIHByb3BlcnR5IGNhY2hlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTMgLSBNYXJjaCwgMjAxMQogIDx1bD4KICAgIDxsaT5GaXhlcyB0byBleHBvcnQuPC9saT4KICAgIDxsaT5GaXhlcyB0byB1c2VyIGVkaXRpbmcuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4xMyAtIE1hcmNoLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBpbWFnZSBmaWVsZHMgd2hlbiBlZGl0aW5nIGEgdXNlci48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjE1IC0gTWF5LCAyMDExCiAgPHVsPgogICAgPGxpPk51bWVyb3VzIHNtYWxsIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjE2IC0gTWF5LCAyMDExCiAgPHVsPgogICAgPGxpPkJ1ZyBmaXhlcyB3cnQgbG9zdCBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTMgLSBKdW5lLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGEgbWlub3IgYnVnIGluIHRoZSBMb2dvdXQoKSBtZXRob2QuPC9saT4KICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIGZvcmNlIGxvZ291dCB1c2VycyBhdCBzcGVjaWZpZWQgdGltZXMuPC9saT4KICAgIDxsaT5Nb2RpZmllcyB0aGUgYmVoYXZpb3Igb2YgdGhlIChkZWZhdWx0KSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybSB0byBkaXNwbGF5IHRoZSBsb2dvdXQgZm9ybSB3aGVuIGNvbXBsZXRlZC48L2xpPgogICAgPGxpPkFkZHMgYSBwcmVmZXJlbmNlIHRvIHNwZWNpZnkgYSAobWluaW11bSkgdGltZSBpbnRlcnZhbCBiZXR3ZWVuIGV4cGlyeSBhY3Rpb25zLiAgVGhpcyBzaG91bGQgc2F2ZSBhIGZldyBxdWVyaWVzIGZvciBtb3N0IHJlcXVlc3RzLjwvbGk+CiAgICA8bGk+QWRkcyBhIHByZWZlcmVuY2UgdG8gc3BlY2lmeSBhIHRpbWUgaW50ZXJ2YWwgYmV0d2VlbiB1c2VyIGNoZWNraW5zIHRvdWNoaW5nIHRoZSBkYXRhYmFzZS4gIFRoaXMgc2hvdWxkIHNhdmUgYSBmZXcgbW9yZSBkYiBxdWVyaWVzIGZvciBtb3N0IHJlcXVlc3RzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTQgLSBKdWx5LCAyMDExCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWRqdXN0IHRoZSBwYXNzd29yZCBzYWx0IChvbmx5IGlmIHRoZXJlIGFyZSBubyB1c2VycykuPC9saT4KICAgIDxsaT5JbXByb3ZlbWV0bnMgdG8gdGhlIENTViBleHBvcnQvaW1wb3J0IHJvdXRpbmVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUgLSBKdWx5LCAyMDExCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWRkIGFkZGl0aW9uYWwgcHJvcGVydGllcyB0byB0aGUgdmlldy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE1LjEgLSBBdWd1c3QgMjAxMQogPHVsPgogICA8bGk+TWlub3IgYnVnIGZpeC48L2xpPgogPC91bD4KPGxpPjEuMTUuNCAtIE9jdG9iZXIgMjAxMQogIDx1bD4KICAgIDxsaT5PcHRpbWl6YXRpb25zLjwvbGk+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+TWlub3IgQVBJIGVuaGFuY2VtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE1LjUgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2IC0gT2N0b2JlciwgMjAxMQogIDx1bD4KICAgIDxsaT5BZGRzIGEgbmV3ICZxdW90O1Byb3RlY3RlZCBDb250ZW50JnF1b3Q7IGNvbnRlbnQgdHlwZS4gIEFsb25nIHdpdGggYSBmZXcgcmVsYXRlZCBwcmVmZXJlbmNlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2LjEgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGEgbWlub3IgYnVnIHdydCBjYWNoaW5nIG9mIHVzZXIgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2LjIgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGFuIHVwZ3JhZGUgaXNzdWUuPC9saT4KICAgIDxsaT5GaXhlcyBhIHJlZGlyZWN0IGNhbGwuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNi40IC0gT2N0b2JlciwgMjAxMQogIDx1bD4KICAgIDxsaT5GaXhlcyBmb3IgYWRkaXRpb25hbCBjb250ZW50IGJsb2Nrcy48L2xpPgogICAgPGxpPkZpeCBmb3Igbm90aWNlIGdlbmVyYXRlZCBpbiB0aGUgQVBJLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuNiAtIERlY2VtYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPk51bWVyb3VzIG1pbm9yIGJ1ZyBmaXguPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNyAtIEZlYnJ1YXJ5LCAyMDEyCiAgPHVsPgogICAgPGxpPk1hbnkgbWV0aG9kcyBhcmUgcHJvdGVjdGVkIG5vdy4uLiBmb3IgYmV0dGVyIHNlY3VyaXR5LjwvbGk+CiAgICA8bGk+QWRkcyBjYXB0Y2hhIHN1cHBvcnQgdG8gdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTcuMSAtIE1hcmNoLCAyMDEyCiAgPHVsPgogICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTgueCAtIE1hcmNoLCAyMDEyCiAgPHVsPgogICA8bGk+SW1wcm92ZWQgdXNlcnMgdGFiLjwvbGk+CiAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIGFsbG93IHVzZXJzIHRvIGNoYW5nZSB0aGVpciB1c2VybmFtZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE4LnggLSBNYXJjaCwgMjAxMgogIDx1bD4KICAgIDxsaT5BZGRlZCB0aGUgZGF0YSBwcm9wZXJ0eSB0eXBlIChub3QgZWRpdGFibGUgYnkgYWRtaW5zKS48L2xpPgogICAgPGxpPk1vZGlmaWVkIHRoZSBhcGkgdG8gYWxsb3cgZGVsZXRpbmcgZGF0YSBmcm9tIHRoZSB1c2VycyB3aGVuIGRlbGV0aW5nIHByb3BlcnRpZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xOSAtIFNlcHRlbWJlciwgMjAxMgogIDx1bD4KICAgIDxsaT5OdW1lcm91cyBndWkgaW1wcm92ZW1lbnRzLjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgYnVnIGZpeGVzIGFuZCBtaW5vciBlbmhhbmNlbWVudHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMCAtIE9jdG9iZXIsIDIwMTIKICA8dWw+CiAgICA8bGk+Rnh4ZXMgdG8gdGhlIGJlaGF2aW9yIG9mIGNoZWNrYm94IGZpZWxkcy48L2xpPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBjaGVja2JveGVzLjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgb3RoZXIgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMjEueAogIDx1bD4KICAgIDxsaT5SZWZhY3RvcmluZyB0byBhbGxvdyBhbHRlcm5hdGUgZm9ybXMgb2YgYXV0aGVudGljYXRpb24uPC9saT4KICAgIDxsaT5SZWZhY3RvcmluZyB0byBleHBhbmQgdGhlIHVzZSBvZiB0aGUgY29uc3VtZXIgY2xhc3MuPC9saT4KICAgIDxsaT5Ob3cgYWxsb3cgb3RoZXIgbW9kdWxlcyB0byBjb250cm9sIGdyb3VwIG1lbWJlcnNoaXAuPC9saT4KICAgIDxsaT5SZWZhY3RvcmluZyBvZiBwcmVmZXJlbmNlcyBhbmQgc2V0dGluZ3MuPC9saT4KICAgIDxsaT5SZWZhY3RvcmluZyBvZiBjb29raWUsIHNlc3Npb24sIGxvZ2dpbmcsIGFuZCBoaXN0b3J5IGZ1bmN0aW9uYWxpdGllcy48L2xpPgogICAgPGxpPk51bWVyb3VzIG1pbm9yIGVuaGFuY2VtZW50cyBhbmQgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+KiogMS4yMS4xMSAtIEZpeGVkIHNpZ25pZmljYW50IHByb2JsZW0gd2l0aCB0aGUgcHJvdGVjdGVkIGNvbnRlbnQgY29udGVudCB0eXBlIC4uLiBldmVyeWJvZHkgc2hvdWxkIHVwZ3JhZGUgQVNBUCAqKjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMjIueAogIDx1bD4KICAgIDxsaT5GaXhlcyB0byBhc2NpaSBpbXBvcnQ8L2xpPgogICAgPGxpPkVuY3J5cHRlZCBwcm9wZXJ0aWVzIGFyZSBubyBsb25nZXIgZXhwb3J0ZWQgdG8gQVNDSUk8L2xpPgogICAgPGxpPkZpeGVzIHRvIGdyb3VwIGV4cG9ydC9pbXBvcnQ8L2xpPgogICAgPGxpPkFkbWluaXN0cmF0b3JzIGNhbiBubyBsb25nZXIgc2VlIGFuZC9vciBlZGl0IGVuY3J5cHRlZCBwcm9wZXJ0aWVzLjwvbGk+CiAgICA8bGk+QWRtaW4gdXNlcnMgdGFiIGZpbHRlcmluZyBoYXMgYmVlbiByZXdyaXR0ZW4sIGlzIG5vdyBhIHVzZXIgcHJlZmVyZW5jZS48L2xpPgogICAgPGxpPkltcHJvdmVkIGVycm9yIGNoZWNraW5nIGluIHRoZSBhZG1pbiB1c2VycyB0YWIuPC9saT4KICAgIDxsaT5JbXByb3ZlbWVudHMgdG8gdGhlIGZldV91c2VyX3F1ZXJ5IHN0dWZmLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMjMueAogIDx1bD4KCTxsaT5SZXdyaXRlIEFTQ0lJIGV4cG9ydCBhbmQgaW1wb3J0IGNvZGUuPC9saT4KCTxsaT5SZXdyaXRlIEZFVSBDaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGU6ICBOT1RFOiBZb3UgbWF5IG5lZWQgdG8gYWRqdXN0IHlvdXIgY2hhbmdlIHNldHRpbmdzIHRlbXBsYXRlLjwvbGk+Cgk8bGk+UmV3cml0ZSBGRVUgbG9naW4gZm9ybSB0ZW1wbGF0ZS48L2xpPgoJPGxpPkFkZHMgYSB0cml2aWFsLCBvcHRpb25hbCBob25leXBvdCBjYXB0Y2hhIGZpZWxkIHRvIHRoZSBsb2dpbiBmb3JtLiAgUmVzZXQgeW91ciBsb2dpbiBmb3JtIHRvIGRlZmF1bHQgdmFsdWVzIHRvIHNlZSBpdCwgYW5kIGl0cyB1c2UuPC9saT4KICA8L3VsPgo8L2xpPgo8L3VsPgo8YnIgLz4=]]></about>
	<description><![CDATA[Allow users to log in to the frontend of your site]]></description>
	<requires>
	  <requiredname>CMSMailer</requiredname>
	  <requiredversion>1.73.9</requiredversion>
	</requires>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.38.10</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/.FrontEndUsers.module.php.swp</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[YjBWSU0gNy4zAAAAABAAAHFeWFGGtwYAEBkAAHJvYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByb2ItR0EtNzhMTVQtUzJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL25mcy91YnVudHUvY21zX2Rldi9tb2R1bGVzL0Zyb250RW5kVXNlcnMvRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AMzIxMCMiISATElUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRwDwD/AAAAAgAAAGAAAAABAAAAAQAAAP////9iAAAAYQAAAAEAAAD+////UwAAAMMAAAABAAAA/f///20AAAAWAQAAAQAAAPz///90AAAAgwEAAAEAAAD7////XAAAAPcBAAABAAAA+v///28AAABTAgAAAQAAAPn///98AAAAwgIAAAEAAAD4////dAAAAD4DAAABAAAA9////4MAAACyAwAAAQAAAPb///+hAAAANQQAAAEAAAD1////qQAAANYEAAABAAAA9P///6EAAAB/BQAAAQAAAPP///+QAAAAIAYAAAEAAADy////BwAAALAGAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABhZAAAHwAAALMBAAAAEAAAYAAAAPoPAADrDwAAoA8AAGsPAABCDwAA+w4AALcOAACrDgAAqA4AAF0OAAATDgAA2A0AANYNAACLDQAAiQ0AAEINAAD7DAAAtwwAAJEMAACPDAAARAwAAPwLAAC2CwAAbQsAADULAAAzCwAA8QoAALAKAABwCgAAQQoAAP0JAAC/CQAAdQkAADIJAAAwCQAA5QgAANgIAADXCAAAkwgAAF8IAAA7CAAAOQgAANoHAADQBwAAzgcAALEHAACwBwAAcAcAAEEHAAA/BwAAIwcAAAMHAADmBgAAxgYAAKYGAACDBgAAZgYAAEQGAAAoBgAADAYAAAsGAAAFBgAA0wUAAM0FAADMBQAAfgUAAGUFAABiBQAAGQUAAAQFAADqBAAAzgQAALMEAACUBAAAdwQAAFsEAABFBAAAJwQAAAsEAAAKBAAA+QMAANkDAADVAwAAugMAAIADAABTAwAALAMAAP8CAADSAgAAigIAAE4CAAAbAgAA9gEAANABAADPAQAAswEAALIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgICAgZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsAAAkJCSAgJ2RhdGEnID0+IHNlbGY6OkZJRUxEVFlQRV9EQVRBKTsACQkJICAnZGF0ZScgPT4gc2VsZjo6RklFTERUWVBFX0RBVEUsAAkJCSAgJ3JhZGlvYnV0dG9ucycgPT4gc2VsZjo6RklFTERUWVBFX1JBRElPQlVUTlMsACAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltYWdlJyA9PiBzZWxmOjpGSUVMRFRZUEVfSU1BR0UsACAgICAgICAgICAgICAgICAgICAgICAgICAgJ211bHRpc2VsZWN0JyA9PiBzZWxmOjpGSUVMRFRZUEVfTVVMVElTRUxFQ1QsAAkJCSAgJ2Ryb3Bkb3duJyA9PiBzZWxmOjpGSUVMRFRZUEVfRFJPUERPV04sAAkJCSAgJ3RleHRhcmVhJyA9PiBzZWxmOjpGSUVMRFRZUEVfVEVYVEFSRUEsAAkJCSAgJ2VtYWlsJyA9PiBzZWxmOjpGSUVMRFRZUEVfRU1BSUwsAAkJCSAgJ2NoZWNrYm94JyA9PiBzZWxmOjpGSUVMRFRZUEVfQ0hFQ0tCT1gsACAgICAkdGhpcy0+dHlwZXMgPSBhcnJheSggJ3RleHQnID0+IHNlbGY6OkZJRUxEVFlQRV9URVhULAAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgpOwAgIHsAICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQAgIC8vIGNvbnN0cnVjdG9yAAAgIHByb3RlY3RlZCAkdHlwZXMgPSBmYWxzZTsAICBwcml2YXRlICR1c2VybWFuaXAgPSBmYWxzZTsAICBwcm90ZWN0ZWQgJGxhbmc9IiI7ACAgcHJvdGVjdGVkICRlbmFibGVlbWFpbHB3OwAgIHByb3RlY3RlZCAkYWxsb3d1c2VyYWRtaW47ACAgcHJvdGVjdGVkICRvdGhlcm91dHRhcmdldDsgIAAgIHByb3RlY3RlZCAkbG9nb3V0dGFyZ2V0OwAgIHByb3RlY3RlZCAkb3RoZXJpbnRhcmdldDsAICBwcm90ZWN0ZWQgJGxvZ2ludGFyZ2V0OwAgIC8vIGxvZ2dpbmcgaW4vb3V0LgAgIC8vU2V0IHRoaXMgdG8gdHJ1ZSBpZiB1c2VyIHNob3VsZCBiZSByZWRpcmVjdGVkIHRvIGRlZmF1bHQgcGFnZSBhZnRlciAAICAAICBwcm90ZWN0ZWQgJGV4cGlyeXRpbWU7ACAgLy9Ib3cgbWFueSBzZWNvbmRzIG9mIGluYWN0aXZpdHkgYmVmb3JlIGEgdXNlciBpcyBhdXRvbWF0aWNhbGx5IGxvZ2dlZCBvdXQuAAAgICAqLwAgICAqIFRoZSBkZWZhdWx0IHRlbXBsYXRlIHVzZWQgZm9yIHRoZSBsb2dpbiBmb3JtACAgLyoqAAAgIGNvbnN0IEZJRUxEVFlQRV9EQVRBID0gOTsAICBjb25zdCBGSUVMRFRZUEVfREFURSA9IDg7ACAgY29uc3QgRklFTERUWVBFX1JBRElPQlVUTlMgPSA3OwAgIGNvbnN0IEZJRUxEVFlQRV9JTUFHRSA9IDY7ACAgY29uc3QgRklFTERUWVBFX01VTFRJU0VMRUNUID0gNTsAICBjb25zdCBGSUVMRFRZUEVfRFJPUERPV04gPSA0OwAgIGNvbnN0IEZJRUxEVFlQRV9URVhUQVJFQSA9IDM7ACAgY29uc3QgRklFTERUWVBFX0VNQUlMID0gMjsAICBjb25zdCBGSUVMRFRZUEVfQ0hFQ0tCT1ggPSAxOwAgIGNvbnN0IEZJRUxEVFlQRV9URVhUID0gMDsAewBmaW5hbCBjbGFzcyBGcm9udEVuZFVzZXJzIGV4dGVuZHMgQ0dFeHRlbnNpb25zAC8vIGEgdmVyeSBpbXBvcnRhbnQgbGluZSB0aGF0IGluY2x1ZGVzIGFsbCBvZiBvdXIgYXBpIGZ1bmN0aW9ucwAAcmVxdWlyZV9vbmNlKCRjZ2V4dGVuc2lvbnMpOwB9ACAgcmV0dXJuOwAgIGVjaG8gJzxoMT48Zm9udCBjb2xvcj0icmVkIj5FUlJPUjogVGhlIENHRXh0ZW5zaW9ucyBtb2R1bGUgY291bGQgbm90IGJlIGZvdW5kLjwvZm9udD48L2gxPic7AHsAaWYoICFpc19yZWFkYWJsZSggJGNnZXh0ZW5zaW9ucyApICkACQkJICAgICAgJ0NHRXh0ZW5zaW9ucycsJ0NHRXh0ZW5zaW9ucy5tb2R1bGUucGhwJyk7ACRjZ2V4dGVuc2lvbnMgPSBjbXNfam9pbl9wYXRoKCRnQ21zLT5jb25maWdbJ3Jvb3RfcGF0aCddLCdtb2R1bGVzJywAACNFTkRfTElDRU5TRQAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQAjACMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAAjIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBACMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUAIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQAjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuACMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQAjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mACMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsACMAIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgAjIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAAIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TACMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlACMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkACMAIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgAjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yACMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkAIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQAjACMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACMAIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwAjIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpACMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tACMgACMgIHdlYnNpdGUuACMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZCAAIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAAjICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpACMgTW9kdWxlOiBGcm9udEVuZFVzZXJzIChjKSAyMDA4IGJ5IFJvYmVydCBDYW1wYmVsbCAAIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0AI0JFR0lOX0xJQ0VOU0UAPD9waHAAYWQAALQPAADkDwAAABAAAAcAAAD8DwAA+w8AAPAPAADvDwAA7g8AAOcPAADkDwAA4w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPz4ALy8gRU9GAAAAfSAvLyBjbGFzcwAAICB9AA==]]></data>
	</file>
	<file>
	  <filename>/action.addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmZ1bmN0aW9uIHN3YXAoJiRhLCYkYikKewogICR0bXAgPSAkYTsKICAkYSA9ICRiOwogICRiID0gJHRtcDsKfQoKCmZ1bmN0aW9uIHJlb3JkZXJfYnlfa2V5KCYkaW5wdXQsJGZsZCwka2V5cykKewogIGlmKCAhaXNfYXJyYXkoJGlucHV0KSApIHJldHVybjsKICAkdG1wID0gYXJyYXkoKTsKICBmb3JlYWNoKCAka2V5cyBhcyAkb25la2V5ICkgewogICAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAgIGlmKCAkcmVjWyRmbGRdID09ICRvbmVrZXkgKSB7CgkkdG1wW10gPSAkcmVjOwoJYnJlYWs7CiAgICAgIH0KICAgIH0KICB9CiAgJGlucHV0ID0gJHRtcDsKfQoKZnVuY3Rpb24gYWRqdXN0X29yZGVyX2J5X2tleXMoJiRpbnB1dCwkZmxkLCRrZXlzKQp7CiAgaWYoICFpc19hcnJheSgkaW5wdXQpICkgcmV0dXJuOwogICR0bXAgPSBhcnJheSgpOwoKICBmb3JlYWNoKCAka2V5cyBhcyAkb25la2V5ICkgewogICAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAgIGlmKCAkcmVjWyRmbGRdID09ICRvbmVrZXkgKSB7CgkkdG1wW10gPSAkcmVjOwoJYnJlYWs7CiAgICAgIH0KICAgIH0KICB9CiAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAkZjEgPSAwOwogICAgZm9yZWFjaCggJHRtcCBhcyAkdG1wcmVjICkgewogICAgICBpZiggJHJlY1skZmxkXSA9PSAkdG1wcmVjWyRmbGRdICkgewoJJGYxID0gMTsKCWJyZWFrOwogICAgICB9CiAgICB9CiAgICBpZiggJGYxID09IDAgKSAkdG1wW10gPSAkcmVjOwogIH0KICAkaW5wdXQgPSAkdG1wOwp9CgoKLy8KLy8gSW5pdGlhbGl6YXRpb24KLy8KJGdyb3VwbmFtZSA9ICcnOwokZ3JvdXBkZXNjID0gJyc7CiRnaWQgPSAtMTsKCi8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCmlmKCAhaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSB7CiAgaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZGdyb3VwJyApICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwogICAgcmV0dXJuOwogIH0KfQplbHNlIHsKICBpZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZWRpdGdyb3VwcycgKSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgIHJldHVybjsKICB9Cn0KCiRwcm9wZGVmbiA9IGFycmF5KCk7CnsKICAkdG1wID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICBpZiggY291bnQoJHRtcCkgPT0gMCApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX25vcHJvcGVydGllcycpKTsKICAgIHJldHVybjsKICB9CiAgZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICAkcmVjWydyZXF1aXJlZCddID0gMDsKICAgICRyZWNbJ2xvc3R1biddID0gLTE7CiAgICAkcHJvcGRlZm5bJGtleV0gPSAkcmVjOwogIH0KfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2dyb3VwX2lkJ10pICkgewogIC8vIHdlJ3JlIGVkaXRpbmcgYSBncnVvcAogICRnaWQgPSAoaW50KSRwYXJhbXNbJ2dyb3VwX2lkJ107CiAgJGdpbmZvID0gJHRoaXMtPkdldEdyb3VwSW5mbygkZ2lkKTsKICBpZiggaXNzZXQoJGdpbmZvWzBdKSAmJiAkZ2luZm9bMF0gPT0gRkFMU0UgKSB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdlcnJvcl9ncm91cG5vdGZvdW5kJykpOwogICAgcmV0dXJuOwogIH0KICAkZ3JvdXBuYW1lID0gJGdpbmZvWydncm91cG5hbWUnXTsKICAkZ3JvdXBkZXNjID0gJGdpbmZvWydncm91cGRlc2MnXTsKCiAgLy8gbG9hZCByZWxhdGlvbnMsIGFuZCBhZGp1c3QgdGhlIHByb3BkZWZuIGFycmF5CiAgJHJlcyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCRnaWQpOwogIGlmKCAkcmVzWzBdID09IEZBTFNFICkgewogICAgLy8gZWRpdGluZyBhIGdyb3VwLCBidXQgbm8gcHJvcGVydHkgcmVsYXRpb25zIChtYXliZSB0aGUgZ3JvdXBzIGFyZSBoZWxkIGluIGEgY29uc3VtZXIgbW9kdWxlLCBidXQgbm90IHRoZSBwcm9wZXJ0eSBkZWZzKS4KICAgIC8vIHRyZWF0IGl0IGxpa2Ugd2UncmUgYWRkaW5nIGEgZ3JvdXAuCiAgICAvKgogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9ub2dyb3VwcHJvcGVydGllcycpKTsKICAgIHJldHVybjsKICAgICovCiAgfQogIGVsc2UgewogICAgLy8gc29ydCB0aGVtIGJ5IHNvcnQga2V5CiAgICB1YXNvcnQoJHJlcyxhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykpOwoKICAgIC8vIHNvcnQgdGhlIHByb3BkZWZucyBieSB0aGUgc29ydCBvcmRlci4KICAgICRuYW1lcyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkcmVzIGFzICR0bXAgKSB7CiAgICAgICRuYW1lc1tdID0gJHRtcFsnbmFtZSddOwogICAgfQogICAgYWRqdXN0X29yZGVyX2J5X2tleXMoJHByb3BkZWZuLCduYW1lJywkbmFtZXMpOwoKICAgIC8vIHVwZGF0ZSB0aGUgcHJvcGRlZm5zCiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkcmVzKTsgJGkrKyApIHsKICAgICAgZm9yKCAkaiA9IDA7ICRqIDwgY291bnQoJHByb3BkZWZuKTsgJGorKyApIHsKCWlmKCAkcmVzWyRpXVsnbmFtZSddID09ICRwcm9wZGVmblskal1bJ25hbWUnXSApIHsKCSAgJHByb3BkZWZuWyRqXVsncmVxdWlyZWQnXSA9ICRyZXNbJGldWydyZXF1aXJlZCddOwoJICAkcHJvcGRlZm5bJGpdWydsb3N0dW4nXSA9ICRyZXNbJGldWydsb3N0dW5mbGFnJ107CgkgIGJyZWFrOwoJfQogICAgICB9CiAgICB9IC8vIGZvcgogIH0gLy8gZWxzZQogfQoKLy8gZXhjbHVkZSBwcm9wZXJ0eSBkZWZucyBmcm9tIG1vZHVsZXMKewogICR0bXAgPSBhcnJheSgpOwogIGZvcmVhY2goICRwcm9wZGVmbiBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICBpZiggIWlzc2V0KCRyZWNbJ2V4dHJhJ11bJ21vZHVsZSddKSApICR0bXBbXSA9ICRyZWM7CiAgfQogICRwcm9wZGVmbiA9ICR0bXA7Cn0KCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKSAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7CmlmKCBpc3NldCgkcGFyYW1zWydtb3ZldXAnXSkgKSB7CiAgLy8gdXBkYXRlIHRoZSBwcm9wZGVmbiB3aXRoIHN0YXR1cyB2YWx1ZXMKICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pOyAkaSsrICkgewogICAgJG5hbWUgPSAkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGldOwogICAgZm9yKCAkaiA9IDA7ICRqIDwgY291bnQoJHByb3BkZWZuKTsgJGorKyApIHsKICAgICAgaWYoICRuYW1lID09ICRwcm9wZGVmblskal1bJ25hbWUnXSApIHsKCSRwcm9wZGVmblskal1bJ3JlcXVpcmVkJ10gPSAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXTsKCWlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV0pICkgJHByb3BkZWZuWyRqXVsnbG9zdHVuJ10gPSAkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV07CglicmVhazsKICAgICAgfQogICAgfQogIH0KICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10pICkgJGdyb3VwbmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10pOwogIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSkgKSAkZ3JvdXBkZXNjID0gdHJpbSgkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSk7CgogIC8vIHdlJ3JlIG1vdmluZyBzdHVmZiB1cAogIC8vIHNvIGFkanVzdCB0aGUgcHJvcGRlZm4gYXJyYXkKICAkaWR4ID0gKGludCkkcGFyYW1zWydtb3ZldXAnXSAtIDE7CiAgc3dhcCgkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGlkeF0sJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpZHgtMV0pOwogIHJlb3JkZXJfYnlfa2V5KCRwcm9wZGVmbiwnbmFtZScsJHBhcmFtc1snaW5wdXRfbmFtZSddKTsKIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ21vdmVkb3duJ10pICkgewogIC8vIHVwZGF0ZSB0aGUgcHJvcGRlZm4gd2l0aCBzdGF0dXMgdmFsdWVzCiAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsgJGkrKyApIHsKICAgICRuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKICAgIGZvciggJGogPSAwOyAkaiA8IGNvdW50KCRwcm9wZGVmbik7ICRqKysgKSB7CiAgICAgIGlmKCAkbmFtZSA9PSAkcHJvcGRlZm5bJGpdWyduYW1lJ10gKSB7CgkkcHJvcGRlZm5bJGpdWydyZXF1aXJlZCddID0gJHBhcmFtc1snaW5wdXRfcmVxdWlyZWQnXVskaV07CglpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfbG9zdHVuXycuJG5hbWVdKSApICRwcm9wZGVmblskal1bJ2xvc3R1biddID0gJHBhcmFtc1snaW5wdXRfbG9zdHVuXycuJG5hbWVdOwoJYnJlYWs7CiAgICAgIH0KICAgIH0KICB9CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKSApICRncm91cG5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKTsKICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pICkgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKICAvLyB3ZSdyZSBtb3Zpbmcgc3R1ZmYgZG93bgogIC8vIHNvIGFkanVzdCB0aGUgcHJvcGRlZm4gYXJyYXkKICAkaWR4ID0gKGludCkkcGFyYW1zWydtb3ZlZG93biddIC0gMTsKICBzd2FwKCRwYXJhbXNbJ2lucHV0X25hbWUnXVskaWR4XSwkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGlkeCsxXSk7CiAgcmVvcmRlcl9ieV9rZXkoJHByb3BkZWZuLCduYW1lJywkcGFyYW1zWydpbnB1dF9uYW1lJ10pOwogfQppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICR0aGlzLT5teVJlZGlyZWN0KCRpZCwnZG9fYWRkZ3JvdXAnLCRyZXR1cm5pZCwkcGFyYW1zKTsKfQoKLy8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJHBhcmFtc1snZXJyb3InXSk7CmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKSAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRwYXJhbXNbJ21lc3NhZ2UnXSk7CiRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnYWRkZ3JvdXAnKSk7CmlmKCAkZ2lkID4gMCApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnZ3JvdXBfaWQnLCRnaWQpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPkxhbmcoJ2VkaXRncm91cCcpKTsKIH0KJHNtYXJ0eS0+YXNzaWduICgnc3RhcnRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsJ2FkZGdyb3VwJywkcmV0dXJuaWQpKTsKJHNtYXJ0eS0+YXNzaWduICgnZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKJHNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdjYW5jZWwnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKCiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9ncm91cG5hbWUnLCAkdGhpcy0+TGFuZyAoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbiAoJ3Byb21wdF9ncm91cGRlc2MnLCR0aGlzLT5MYW5nICgnZGVzY3JpcHRpb24nKSk7CiRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKJGFkZHRleHQgPSAnJzsKaWYoICEkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKSAmJiAhJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSApIHsKICAkYWRkdGV4dD0ncmVhZG9ubHk9InJlYWRvbmx5IiBkaXNhYmxlZD0iZGlzYWJsZWQiJzsKfQokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9ncm91cG5hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9ncm91cG5hbWUnLCAkZ3JvdXBuYW1lLCAyMCwgODAsICRhZGR0ZXh0KSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2dyb3VwZGVzYycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2dyb3VwZGVzYycsICRncm91cGRlc2MsIDgwLCAyNTUsICRhZGR0ZXh0KSk7CgovLyBkaXNwbGF5IGEgbGlzdCBvZiB0aGUgcHJvcGVydGllcyBpbiBhIGZvcm0KLy8gdG8gYWxsb3cgdGhlIHVzZXIgdG8gcGljayB3aGljaCBvbmVzIGFyZSByZXF1aXJlZCBhbmQgd2hpY2ggb25lcyBhcmVudC4KJHJvd2FycmF5ID0gYXJyYXkoKTsKJGtleXMgPSBhcnJheV9rZXlzKCR0aGlzLT50eXBlcyk7CiRvcHRpb25zID0gYXJyYXkoICR0aGlzLT5MYW5nKCdvZmYnKSA9PiAwLAoJCSAgJHRoaXMtPkxhbmcoJ29wdGlvbmFsJykgPT4gMSwKCQkgICR0aGlzLT5MYW5nKCdyZXF1aXJlZCcpID0+IDIsCgkJICAkdGhpcy0+TGFuZygnaGlkZGVuJykgPT4gMywKCQkgICR0aGlzLT5MYW5nKCdyZWFkb25seScpID0+IDQpOwoKJHRoZW1lT2JqZWN0ID0gY21zX3V0aWxzOjpnZXRfdGhlbWVfb2JqZWN0KCk7CiRpbWdfdXAgPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3NvcnRfdXAuZ2lmJywkdGhpcy0+TGFuZygnbW92ZV91cCcsJycsJycsJ3N5c3RlbWljb24nKSk7CiRzbWFydHktPmFzc2lnbignaW1nX3VwJywkaW1nX3VwKTsKJGltZ19kb3duID0gJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9zb3J0X2Rvd24uZ2lmJywkdGhpcy0+TGFuZygnbW92ZV9kb3duJywnJywnJywnc3lzdGVtaWNvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWdfZG93bicsJGltZ19kb3duKTsKCiRzb3J0b3JkZXIgPSAxOwpmb3JlYWNoKCAkcHJvcGRlZm4gYXMgJGRlZm4gKSB7CiAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICRvbmVyb3ctPm5hbWUgPSAkZGVmblsnbmFtZSddOwogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb25lcm93LT50eXBlID0gJHRoaXMtPkxhbmcoJGtleXNbJGRlZm5bJ3R5cGUnXV0pOwogICRvbmVyb3ctPmhpZGRlbiA9ICc8ZGl2PicuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaW5wdXRfbmFtZVtdJywkZGVmblsnbmFtZSddKS4nPC9kaXY+JzsKICAkb25lcm93LT5yZXF1aXJlZCA9ICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCAkaWQsICdpbnB1dF9yZXF1aXJlZFtdJywgJG9wdGlvbnMsLTEsICRkZWZuWydyZXF1aXJlZCddKTsKICAkb25lcm93LT5lbmNyeXB0ZWQgPSAkZGVmblsnZW5jcnlwdCddOwoKICBpZiggJHNvcnRvcmRlciA+IDEgKSB7CiAgICAkb25lcm93LT5tb3ZldXBfaWR4ID0gJHNvcnRvcmRlcjsKICAgICRvbmVyb3ctPm1vdmV1cCA9ICR0aGlzLT5DR0NyZWF0ZUlucHV0U3VibWl0KCRpZCwnbW92ZXVwJywkc29ydG9yZGVyLCcnLCdpY29ucy9zeXN0ZW0vc29ydF91cC5naWYnKTsKICB9CiAgaWYoICRzb3J0b3JkZXIgPCBjb3VudCgkcHJvcGRlZm4pICkgewogICAgJG9uZXJvdy0+bW92ZWRvd25faWR4ID0gJHNvcnRvcmRlcjsKICAgICRvbmVyb3ctPm1vdmVkb3duID0gJHRoaXMtPkNHQ3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdtb3ZlZG93bicsJHNvcnRvcmRlciwnJywnaWNvbnMvc3lzdGVtL3NvcnRfZG93bi5naWYnKTsKICB9CgogIGlmKCAkZGVmblsnZW5jcnlwdCddID09IDAgJiYgKCRkZWZuWyd0eXBlJ10gPT0gMCB8fCAkZGVmblsndHlwZSddID09IDIgfHwgJGRlZm5bJ3R5cGUnXSA9PSA0KSApIHsKICAgICAgJG9uZXJvdy0+YXNraW5sb3N0dW4gPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfbG9zdHVuXycuJGRlZm5bJ25hbWUnXSwgMSwgJGRlZm5bJ2xvc3R1biddICk7CiAgfQoKICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgKyskc29ydG9yZGVyOwp9Cgokc21hcnR5LT5hc3NpZ24oJ3Byb3BzJywgJHJvd2FycmF5KTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9wY291bnQnLGNvdW50KCRyb3dhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ3NvcnRvcmRlcnRleHQnLCAkdGhpcy0+TGFuZygnc29ydG9yZGVyJykpOwokc21hcnR5LT5hc3NpZ24oJ25hbWV0ZXh0JywkdGhpcy0+TGFuZygnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHR0ZXh0JywgJHRoaXMtPkxhbmcoJ3Byb21wdCcpKTsKJHNtYXJ0eS0+YXNzaWduKCd0eXBldGV4dCcsJHRoaXMtPkxhbmcoJ3R5cGUnKSk7CiRzbWFydHktPmFzc2lnbignZmllbGRzdGF0dXN0ZXh0JywkdGhpcy0+TGFuZygnZmllbGRzdGF0dXMnKSk7CiRzbWFydHktPmFzc2lnbigndXNlZGlubG9zdHVudGV4dCcsJHRoaXMtPkxhbmcoJ3VzZWRpbmxvc3R1bicpKTsKCi8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUgKCdhZGRncm91cC50cGwnKTsKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.addprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZHByb3AnICkgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJHR5cGVzID0gJHRoaXMtPnR5cGVzOwp1bnNldCgkdHlwZXNbJ2RhdGEnXSk7CiRmaWVsZHR5cGVzID0gJHRoaXMtPmxhbmdpZnlLZXlzKCR0eXBlcyk7CiR0aXRsZSA9ICR0aGlzLT5MYW5nKCdhZGRwcm9wJyk7CiRkZWZuID0gYXJyYXkoKTsKJGRlZm5bJ25hbWUnXSA9ICcnOwokZGVmblsncHJvbXB0J10gPSAnJzsKJGRlZm5bJ3R5cGUnXSA9IDA7CiRkZWZuWydsZW5ndGgnXSA9IDgwOwokZGVmblsnbWF4bGVuZ3RoJ10gPSAyNTU7CiRkZWZuWydhdHRyaWJzJ10gPSAnJzsKJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddID0gMDsKJGRlZm5bJ2VuY3J5cHQnXSA9IDA7CiRhdHRyaWJzID0gYXJyYXkoKTsKJHNlbG9wdGlvbnMgPSAnJzsKJHN0YXR1cyA9ICcnOwokbWVzc2FnZSA9ICcnOwokcHJvcG5hbWUgPSAnJzsKCgojCiMgUmVhZCBQYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcm9wZXJ0aWVzJyApOwogIHJldHVybjsKfQppZiggaXNzZXQoJHBhcmFtc1sncHJvcG5hbWUnXSkgKSB7CiAgJHByb3BuYW1lID0gdHJpbSgkcGFyYW1zWydwcm9wbmFtZSddKTsKICAkdGl0bGUgPSAkdGhpcy0+TGFuZygnZWRpdHByb3AnLCRwcm9wbmFtZSk7CiAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCRwcm9wbmFtZSk7CiAgaWYoICRkZWZuID09IEZBTFNFICkgewogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICRwYXJtc1snZXJyb3InXSA9IDE7CiAgICAkcGFybXNbJ21lc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Byb3Bub3Rmb3VuZCcpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdwcm9wZXJ0aWVzJywkcGFybXMpOwogICAgcmV0dXJuOwogIH0KICAkdG1wID0gJHRoaXMtPkdldFNlbGVjdE9wdGlvbnMoJHByb3BuYW1lKTsKICBpZiggJHRtcCApIHsKICAgIGZvcmVhY2goICR0bXAgYXMgJGtleSA9PiAkdmFsICkgewogICAgICBpZiggJGtleSA9PSAkdmFsICkgewoJJHNlbG9wdGlvbnMgLj0gIiR2YWxcbiI7CiAgICAgIH0KICAgICAgZWxzZSB7Cgkkc2Vsb3B0aW9ucyAuPSAiJGtleT0kdmFsXG4iOwogICAgICB9CiAgICB9CiAgfQogIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAkYXR0cmlicyA9IHVuc2VyaWFsaXplKCRkZWZuWydhdHRyaWJzJ10pOwogIH0KfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3R5cGUnXSkgKSB7CiAgJGRlZm5bJ3R5cGUnXSA9IChpbnQpJHBhcmFtc1snaW5wdXRfdHlwZSddOwp9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9sZW5ndGgnXSkgKSB7CiAgJGRlZm5bJ2xlbmd0aCddID0gKGludCkkcGFyYW1zWydpbnB1dF9sZW5ndGgnXTsKfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfbWF4bGVuZ3RoJ10pICkgewogICRkZWZuWydtYXhsZW5ndGgnXSA9IChpbnQpJHBhcmFtc1snaW5wdXRfbWF4bGVuZ3RoJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25hbWUnXSkgKSB7CiAgJGRlZm5bJ25hbWUnXSA9IHN0cnRvbG93ZXIodHJpbSgkcGFyYW1zWydpbnB1dF9uYW1lJ10pKTsKICAkZGVmblsnbmFtZSddID0gbXVuZ2Vfc3RyaW5nX3RvX3VybCgkZGVmblsnbmFtZSddKTsKICAkZGVmblsnbmFtZSddID0gc3RyX3JlcGxhY2UoJy0nLCdfJywkZGVmblsnbmFtZSddKTsKfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcHJvbXB0J10pICkgewogICRkZWZuWydwcm9tcHQnXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcHJvbXB0J10pOwp9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9mb3JjZV91bmlxdWUnXSkgKSB7CiAgJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddID0gKGludCkkcGFyYW1zWydpbnB1dF9mb3JjZV91bmlxdWUnXTsKfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZW5jcnlwdCddKSApIHsKICAkZGVmblsnZW5jcnlwdCddID0gKGludCkkcGFyYW1zWydpbnB1dF9lbmNyeXB0J107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3NlbG9wdGlvbnMnXSkgKSB7CiAgJHNlbG9wdGlvbnMgPSAkcGFyYW1zWydpbnB1dF9zZWxvcHRpb25zJ107Cn0KaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X3JhZGlvb3B0aW9ucyddKSkgewogICRzZWxvcHRpb25zID0gJHBhcmFtc1snaW5wdXRfcmFkaW9vcHRpb25zJ107Cn0KZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICBpZiggc3RhcnRzd2l0aCgka2V5LCdpbnB1dF9hdHRyaWJfJykgKSB7CiAgICAkYXR0cmliID0gc3Vic3RyKCRrZXksMTMpOwogICAgJGF0dHJpYnNbJGF0dHJpYl0gPSAkdmFsdWU7CiAgfQp9CmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgaWYoIGVtcHR5KCRkZWZuWyduYW1lJ10pIHx8IGVtcHR5KCRkZWZuWydwcm9tcHQnXSkgKSB7CiAgICAkc3RhdHVzID0gJ2Vycm9yJzsKICAgICRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKTsKICB9CgogIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiAkc2Vsb3B0aW9ucyApIHsKICAgICRvcHRpb25zID0gYXJyYXkoKTsKICAgICR0bXAgPSBleHBsb2RlKCJcbiIsICRzZWxvcHRpb25zKTsKICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgJG9uZSA9IHRyaW0oJG9uZSk7CiAgICAgIGlmKCAhZW1wdHkoJG9uZSkgKSB7Cgkkb3B0aW9uc1tdID0gJG9uZTsKICAgICAgfQogICAgfQogIH0KCiAgaWYoIGVtcHR5KCRzdGF0dXMpICkgewogICAgc3dpdGNoKCRkZWZuWyd0eXBlJ10pIHsKICAgIGNhc2UgJzAnOiAvKiB0ZXh0ICovCiAgICBjYXNlICc2JzogLyogaW1hZ2UgKi8KICAgICAgYnJlYWs7IAogICAgY2FzZSAnMic6IC8qIGVtYWlsICovCiAgICAgIC8vIGVtYWlsIGZpZWxkcyBjYW5ub3QgYmUgZW5jcnlwdGVkLgogICAgICAkZGVmblsnZW5jcnlwdCddID0gMDsKICAgICAgYnJlYWs7CiAgICBjYXNlIDE6ICAgLyogY2hlY2tib3ggKi8KICAgICAgJGRlZm5bJ2xlbmd0aCddID0gMTsKICAgICAgYnJlYWs7CiAgICBjYXNlIDM6ICAgLyogdGV4dGFyZWEgKi8KICAgICAgJGRlZm5bJ2xlbmd0aCddID0gMjU1OwogICAgICBicmVhazsKICAgIGNhc2UgNDoKICAgIGNhc2UgNTogCiAgICAgICRkZWZuWydsZW5ndGgnXSA9IGNvdW50KCRvcHRpb25zKTsKICAgICAgYnJlYWs7CiAgICBjYXNlIDc6IC8qIHJhZGlvYnV0dG9ucyAqLwogICAgICAkZGVmblsnbGVuZ3RoJ10gPSBjb3VudCgkb3B0aW9ucyk7CiAgICAgIGJyZWFrOwogICAgY2FzZSA4OiAvKiBkYXRlICovCiAgICBkZWZhdWx0OgogICAgICAkZGVmblsnbGVuZ3RoJ10gPSAxOwogICAgICBicmVhazsKICAgIH0KICAgIAogICAgaWYoICgoJGRlZm5bJ3R5cGUnXSA9PSAwIHx8ICRkZWZuWyd0eXBlJ10gPT0gMikgJiYgKCAkZGVmblsnbGVuZ3RoJ10gPCAxIHx8ICRkZWZuWydsZW5ndGgnXSA+IDI1NSB8fCAkZGVmblsnbWF4bGVuZ3RoJ10gPCAxIHx8ICRkZWZuWydtYXhsZW5ndGgnXSA+IDEwMjQgfHwgJGRlZm5bJ21heGxlbmd0aCddIDwgJGRlZm5bJ2xlbmd0aCddICkpIHx8CgkgICAgKCgkZGVmblsndHlwZSddID09IDQgfHwgJGRlZm5bJ3R5cGUnXSA9PSA1IHx8ICRkZWZuWyd0eXBlJ10gPT0gNykgJiYgJHNlbG9wdGlvbnMgPT0gJycgKSB8fAoJICAgICgoJGRlZm5bJ3R5cGUnXSA9PSA2KSAmJiAoJGRlZm5bJ2xlbmd0aCddIDwgMTAgfHwgJGRlZm5bJ2xlbmd0aCddID4gMTAyNCkpCgkpewogICAgICAkc3RhdHVzID0gJ2Vycm9yJzsKICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwogICAgfQogIH0KCiAgaWYoIGVtcHR5KCRzdGF0dXMpICYmIGlzc2V0KCRvcHRpb25zKSAmJiAkb3B0aW9ucyApIHsKICAgIGlmKCAhZW1wdHkoJHByb3BuYW1lKSApIHsKICAgICAgJHRoaXMtPkRlbGV0ZVNlbGVjdE9wdGlvbnMoJHByb3BuYW1lKTsKICAgIH0KCiAgICAkdG1wID0gJHRoaXMtPkFkZFNlbGVjdE9wdGlvbnMoJGRlZm5bJ25hbWUnXSwkb3B0aW9ucyk7CiAgICBpZiggISR0bXBbMF0gKSB7CiAgICAgICRzdGF0dXMgPSAnZXJyb3InOwogICAgICAkbWVzc2FnZSA9ICR0bXBbMV07CiAgICB9CiAgfQoKICBpZiggZW1wdHkoJHN0YXR1cykgKSB7CiAgICAkZGVmblsnYXR0cmlicyddID0gc2VyaWFsaXplKCRhdHRyaWJzKTsKICB9CgogIGlmKCBlbXB0eSgkc3RhdHVzKSApIHsKICAgIGlmKCAhZW1wdHkoJHByb3BuYW1lKSApIHsKICAgICAgJHRtcCA9ICR0aGlzLT5TZXRQcm9wZXJ0eURlZm4oICRwcm9wbmFtZSwgJGRlZm5bJ25hbWUnXSwgJGRlZm5bJ3Byb21wdCddLCAkZGVmblsndHlwZSddLCAkZGVmblsnbGVuZ3RoJ10sICRkZWZuWydtYXhsZW5ndGgnXSwgJGRlZm5bJ2F0dHJpYnMnXSwgJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddLCAkZGVmblsnZW5jcnlwdCddICk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgLy8gTmV3IHByb3BlcnR5CiAgICAgICR0bXAgPSAkdGhpcy0+QWRkUHJvcGVydHlEZWZuKCAkZGVmblsnbmFtZSddLCAkZGVmblsncHJvbXB0J10sICRkZWZuWyd0eXBlJ10sICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddLCAkZGVmblsnYXR0cmlicyddLCAkZGVmblsnZm9yY2VfdW5pcXVlJ10sICRkZWZuWydlbmNyeXB0J10gKTsKICAgICAgaWYoICEkdG1wWzBdICkgewoJJHN0YXR1cyA9ICdlcnJvcic7CgkkbWVzc2FnZSA9ICR0bXBbMV07CiAgICAgIH0KICAgIH0KICB9CgogIGlmKCBlbXB0eSgkc3RhdHVzKSApIHsKICAgICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdvcGVyYXRpb25fY29tcGxldGVkJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ3Byb3BlcnRpZXMnICk7CiAgfQoKICAvLwogIC8vIGlmIHdlIGdldCBoZXJlLCBpdCdzIGFuIGVycm9yIG9mIHNvbWUgc29ydAogIC8vCn0KCiMKIyBHaXZlIGV2ZXlydGhpbmcgdG8gc21hcnR5CiMKaWYoICFlbXB0eSgkc3RhdHVzKSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywxKTsKfQppZiggIWVtcHR5KCRtZXNzYWdlKSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKfQokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkZHByb3AnLCRyZXR1cm5pZCwncG9zdCcsJycsZmFsc2UsJycsJHBhcmFtcykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywkdGl0bGUpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9uYW1lJywkdGhpcy0+TGFuZygnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbmZvX25hbWUnLCR0aGlzLT5MYW5nKCdpbmZvX25hbWUnKSk7CgokcXVlcnkgPSAnU0VMRUNUIGNvdW50KGlkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2Vycyc7CiRudXNlcnMgPSAkZGItPkdldE9uZSgkcXVlcnkpOwokcXVlcnkgPSAnU0VMRUNUIGNvdW50KGlkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMnOwokbmdyb3VwcyA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CmlmKCAhZW1wdHkoJHByb3BuYW1lKSAmJiAoJG51c2VycyA+IDAgfHwgJG5ncm91cHMgPiAwKSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X25hbWUnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaW5wdXRfbmFtZScsJHByb3BuYW1lKS4kcHJvcG5hbWUpOwp9CmVsc2UgewogICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X25hbWUnLAoJCSAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9uYW1lJywkZGVmblsnbmFtZSddLCAzMCwgMzAgKSk7Cn0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcHJvbXB0JywkdGhpcy0+TGFuZygncHJvbXB0JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3Byb21wdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X3Byb21wdCcsJGRlZm5bJ3Byb21wdCddLCA4MCwgMjU1ICkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF90eXBlJywkdGhpcy0+TGFuZygndHlwZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF90eXBlJywgIAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCAkaWQsICdpbnB1dF90eXBlJywgJGZpZWxkdHlwZXMsIC0xLCAkZGVmblsndHlwZSddLAoJCQkJCSAgICAnb25jaGFuZ2U9InRoaXMuZm9ybS5zdWJtaXQoKTsiJykpOwppZiggJGRlZm5bJ3R5cGUnXSA9PSAwIHx8ICRkZWZuWyd0eXBlJ10gPT0gMiApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZvcmNlX3VuaXF1ZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnaW5wdXRfZm9yY2VfdW5pcXVlJywkZGVmblsnZm9yY2VfdW5pcXVlJ10pKTsKfQppZiggIWlzc2V0KCRwYXJhbXNbJ3Byb3BuYW1lJ10pICkgewogICRzbWFydHktPmFzc2lnbignaW5wdXRfZW5jcnlwdCcsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnaW5wdXRfZW5jcnlwdCcsJGRlZm5bJ2VuY3J5cHQnXSkpOwp9CmVsc2UgewogICRzbWFydHktPmFzc2lnbignaW5wdXRfZW5jcnlwdCcsJGRlZm5bJ2VuY3J5cHQnXT8kdGhpcy0+TGFuZygneWVzJyk6JHRoaXMtPkxhbmcoJ25vJykpOwp9Cgokc21hcnR5LT5hc3NpZ24oJ2RlZm4nLCRkZWZuKTsKJHNtYXJ0eS0+YXNzaWduKCdvcmlnX3R5cGUnLCAgCgkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ29yaWdfdHlwZScsICRkZWZuWyd0eXBlJ10pKTsKJHNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCAkdGhpcy0+TGFuZygnc3VibWl0JykgKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJGZsZHMgPSBhcnJheSgpOwpzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiBjYXNlIDA6CiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbGVuZ3RoJykuJHRoaXMtPkxhbmcoJ2xlbmd0aGNvbW1lbnQnKSwKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbGVuZ3RoJywkZGVmblsnbGVuZ3RoJ10sMywzKSk7CiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbWF4bGVuZ3RoJyksCgkJICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X21heGxlbmd0aCcsJGRlZm5bJ21heGxlbmd0aCddLDMsMykpOwogICBicmVhazsKIGNhc2UgMTogLy8gY2hlY2tib3gKICAgJHZhbCA9IChpc3NldCgkYXR0cmlic1snY2hlY2tlZCddKSk/JGF0dHJpYnNbJ2NoZWNrZWQnXTowOwogICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3Byb21wdF9kZmx0X2NoZWNrZWQnKSwKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2lucHV0X2F0dHJpYl9jaGVja2VkJywxLCR2YWwpKTsKICAgYnJlYWs7CiBjYXNlIDI6CiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbGVuZ3RoJykuJHRoaXMtPkxhbmcoJ2xlbmd0aGNvbW1lbnQnKSwKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbGVuZ3RoJywkZGVmblsnbGVuZ3RoJ10sMywzKSk7CiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbWF4bGVuZ3RoJyksCgkJICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X21heGxlbmd0aCcsJGRlZm5bJ21heGxlbmd0aCddLDMsMykpOwogICBicmVhazsKIGNhc2UgMzoKICAgJHZhbCA9IChpc3NldCgkYXR0cmlic1snd3lzaXd5ZyddKSk/JGF0dHJpYnNbJ3d5c2l3eWcnXTowOwogICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZycpLAoJCSAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2lucHV0X2F0dHJpYl93eXNpd3lnJywnMCcpLgoJCSAgICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwnaW5wdXRfYXR0cmliX3d5c2l3eWcnLCcxJywkdmFsKSk7OwogICBicmVhazsKIGNhc2UgNDoKIGNhc2UgNToKICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdzZWxvcHRpb25zJyksCgkJICAgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCRpZCwkc2Vsb3B0aW9ucywnaW5wdXRfc2Vsb3B0aW9ucycpKTsKICAgYnJlYWs7CiBjYXNlIDY6CiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbGVuZ3RoJykuJHRoaXMtPkxhbmcoJ2xlbmd0aGNvbW1lbnQnKSwKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbGVuZ3RoJywkZGVmblsnbGVuZ3RoJ10sMywzKSk7CiAgIGJyZWFrOwogY2FzZSA3OiAKICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdyYWRpb29wdGlvbnMnKSwKCQkgICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRzZWxvcHRpb25zLCdpbnB1dF9yYWRpb29wdGlvbnMnKSk7CiAgIGJyZWFrOwogY2FzZSA4OiAvKiBkYXRlICovCiAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnc3RhcnRfeWVhcicpLic6JywKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfYXR0cmliX3N0YXJ0eWVhcicsCgkJCQkJICAoaXNzZXQoJGF0dHJpYnNbJ3N0YXJ0eWVhciddKSk/JGF0dHJpYnNbJ3N0YXJ0eWVhciddOictNScsCgkJCQkJICA0LDQpKTsKICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdlbmRfeWVhcicpLic6JywKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfYXR0cmliX2VuZHllYXInLAoJCQkJCSAgKGlzc2V0KCRhdHRyaWJzWydlbmR5ZWFyJ10pKT8kYXR0cmlic1snZW5keWVhciddOicrMTAnLAoJCQkJCSAgNCw0KSk7CiAgIGJyZWFrOwp9CiRzbWFydHktPmFzc2lnbignZmllbGRzJywkZmxkcyk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkZHByb3AudHBsJyk7CnJldHVybjsKCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.adduser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZHVzZXInICkgKSB7CiAgcmV0dXJuOwogfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydjYW5jZWwnXSApICkgewogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3VzZXJzJyApOwogfQoKJGdpZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2dyb3VwJywgLTEpOwppZiggJGdpZCAhPSAtMSApIHsKICAvLyB0aGUgZGVmYXVsdCBncm91cCBoYXMgYmVlbiBzZXQKICAvLyBzbyB3ZSdsbCBwdXQgdGhpcyBpbiB0aGUgbWVtYmVyb2YgcGFyYW1ldGVyCiAgLy8gaWYgaXQncyBub3QgYWxyZWFkeSBzZXQKICBpZiggIWlzc2V0KCAkcGFyYW1zWydtZW1iZXJvZiddICkgKSB7CiAgICAkcGFyYW1zWydtZW1iZXJvZl8nLiRnaWRdID0gJGdpZDsKICB9CiB9CgokdGhpcy0+X0Rpc3BsYXlBZG1pblVzZXJQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_bulkactions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CmlmKCAhaXNzZXQoICRwYXJhbXNbJ2pvYiddKSApIHJldHVybjsKaWYoICFpc3NldCggJHBhcmFtc1sndWlkcyddKSApIHJldHVybjsKCgokam9iID0gdHJpbSgkcGFyYW1zWydqb2InXSk7CnN3aXRjaCggJGpvYiApCiAgewogIGNhc2UgJ2RlbGV0ZSc6CiAgICB7CiAgICAgICRpID0gMDsKICAgICAgaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncmVtb3ZldXNlcnMnKSApIHJldHVybjsKICAgICAgJHNlbCA9IHVuc2VyaWFsaXplKCRwYXJhbXNbJ3VpZHMnXSk7CiAgICAgIGlmKCAhaXNfYXJyYXkoJHNlbCkgKSByZXR1cm47CiAgICAgIGZvcmVhY2goICRzZWwgYXMgJG9uZXVpZCApCgl7CgkgICR0aGlzLT5EZWxldGVVc2VyRnVsbCggJG9uZXVpZCApOwoJICAkaSsrOwoJICBpZiggJGkgPj0gMjUwICkgYnJlYWs7Cgl9CiAgICB9CiAgICBicmVhazsKCiAgZGVmYXVsdDoKICAgIC8vIGludmFsaWQgam9iCiAgICByZXR1cm47CiAgfQoKJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ3VzZXJzJyApOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_doimport.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOwpmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd1c2VycycpICkgZXhpdDsKJGZpbGUgPSBjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCdmaWxlJyk7CmlmKCAhJGZpbGUgKSBleGl0OwokZmlsZSA9IFRNUF9DQUNIRV9MT0NBVElPTi4iLyRmaWxlIjsKaWYoICFpc19yZWFkYWJsZSgkZmlsZSkgKSBleGl0OwoKJGltYWdlRGlyID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKJGltYWdlRGlyIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKTsKCiR0bXAgPSAkdGhpcy0+Q0dHZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycpOwppZiggISR0bXAgKSBleGl0OwokaW1wb3J0cHJlZnMgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKCiRwcm9ncmVzc19tYXggPSBmdW5jdGlvbigkdmFsKSB7CiAgICAkdmFsID0gKGludCkkdmFsOwogICAgJHZhbCA9IG1heCgxLCR2YWwpOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfcHJvZ3Jlc3NfbWF4KCcuJHZhbC4nKTs8L3NjcmlwdD4nOwogICAgZmx1c2goKTsKfTsKJHByb2dyZXNzX3NldCA9IGZ1bmN0aW9uKCR2YWwpIHsKICAgICR2YWwgPSAoaW50KSR2YWw7CiAgICAkdmFsID0gbWF4KDEsJHZhbCk7CiAgICBlY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cGFyZW50LmltcG9ydF9wcm9ncmVzc19zZXQoJy4kdmFsLicpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X3N0YXR1cyA9IGZ1bmN0aW9uKCRtc2cpIHsKICAgICRtc2cgPSB0cmltKCRtc2cpOwogICAgaWYoICEkbXNnICkgcmV0dXJuOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfc3RhdHVzKFwnJy4kbXNnLidcJyk7PC9zY3JpcHQ+JzsKICAgIGZsdXNoKCk7Cn07CiRpbXBvcnRfd2FybmluZyA9IGZ1bmN0aW9uKCRtc2cpIHsKICAgICRtc2cgPSB0cmltKCRtc2cpOwogICAgaWYoICEkbXNnICkgcmV0dXJuOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfd2FybmluZyhcJycuJG1zZy4nXCcpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X2Vycm9yID0gZnVuY3Rpb24oJG1zZykgewogICAgJG1zZyA9IHRyaW0oJG1zZyk7CiAgICBpZiggISRtc2cgKSByZXR1cm47CiAgICBlY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cGFyZW50LmltcG9ydF9lcnJvcihcJycuJG1zZy4nXCcpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X2Vycm9yX2xpbmUgPSBmdW5jdGlvbigkbGluZW51bSwkbXNnKSB7CiAgICAkbGluZW51bSA9IChpbnQpJGxpbmVudW07CiAgICAkbXNnID0gdHJpbSgkbXNnKTsKICAgIGlmKCAhJG1zZyApIHJldHVybjsKICAgIGVjaG8gJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5wYXJlbnQuaW1wb3J0X2Vycm9yKFwnJy4kbGluZW51bS4nOiAnLiRtc2cuJ1wnKTs8L3NjcmlwdD4nOwogICAgZmx1c2goKTsKfTsKJGltcG9ydF9maW5pc2ggPSBmdW5jdGlvbigpIHsKICAgIGVjaG8gJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5wYXJlbnQuaW1wb3J0X2ZpbmlzaCgpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokY2xlYW5fZmllbGRzID0gZnVuY3Rpb24oJHRoZV9hcnJheSkgewogICAgZm9yZWFjaCggJHRoZV9hcnJheSBhcyAmJGVsZW0gKSB7CiAgICAgICAgJGVsZW0gPSB0cmltKHRyaW0oJGVsZW0sJyJcJycpKTsKICAgIH0KICAgIHJldHVybiAkdGhlX2FycmF5Owp9OwokZ2V0X2ZpZWxkID0gZnVuY3Rpb24oJGNvbHVtbnMsJGZpZWxkbWFwLCRmaWVsZCkgewogICAgaWYoICEkZmllbGQgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdJbnZhbGlkIGZpZWxkIHNwZWNpZmllZCAnLiRmaWVsZCk7CiAgICAkaWR4ID0gYXJyYXlfc2VhcmNoKCRmaWVsZCwkZmllbGRtYXApOwogICAgaWYoICRpZHggPT09IEZBTFNFICkgcmV0dXJuOwogICAgaWYoIGlzc2V0KCRjb2x1bW5zWyRpZHhdKSApIHJldHVybiAkY29sdW1uc1skaWR4XTsKfTsKJGFsbF9jb2x1bW5zX2VtcHR5ID0gZnVuY3Rpb24oJGNvbHVtbnMpIHsKICAgIGZvcmVhY2goICRjb2x1bW5zIGFzICRjb2wgKSB7CiAgICAgICAgaWYoICRjb2wgKSByZXR1cm4gRkFMU0U7CiAgICB9CiAgICByZXR1cm4gVFJVRTsKfTsKCnRyeSB7CiAgICAkZmlsZXNpemUgPSBmaWxlc2l6ZSgkZmlsZSk7CiAgICAkZmggPSBmb3BlbigkZmlsZSwncicpOwogICAgJGxpbmVfbnVtID0gMDsKICAgICRwcm9jZXNzZWRfbGluZXMgPSAwOwogICAgJGhhdmVfaGVhZGVyID0gMDsKICAgICRmaWVsZG1hcCA9IG51bGw7CiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwogICAgJHByb3BkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAkcmVsbnMgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJGdyb3VwcyBhcyAkZ25hbWUgPT4gJGdpZCApIHsKICAgICAgICAkcmVsbnNbJGduYW1lXSA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCRnaWQpOwogICAgfQogICAgJHRtcCA9IG1heCgxLChpbnQpJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsMTIwKSk7CiAgICAkZGZsdF9leHBpcnkgPSBzdHJ0b3RpbWUoc3ByaW50ZignKyAlZCBtb250aHMnLCR0bXApKTsKICAgICRkZmx0X3Bhc3N3b3JkID0gJ2NoYW5nZW1lJzsKICAgICRlcnJvcl91c2VycyA9IGFycmF5KCk7CiAgICAkYWxsX3VzZXJzID0gbnVsbDsKICAgIHsKICAgICAgICAkcXVlcnkgPSBuZXcgZmV1X3VzZXJfcXVlcnkoKTsKICAgICAgICAkcnMgPSAkcXVlcnktPmV4ZWN1dGUoKTsKICAgICAgICB3aGlsZSggISRycy0+RU9GICkgewogICAgICAgICAgICAkZmxkcyA9ICRycy0+ZmllbGRzOwogICAgICAgICAgICAkYWxsX3VzZXJzWyRmbGRzWyd1c2VybmFtZSddXSA9ICRmbGRzWydpZCddOwogICAgICAgICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgfQogICAgfQogICAgJHRvdWNoZWRfZ2lkcyA9IGFycmF5KCk7CiAgICAkdG91Y2hlZF91aWRzID0gYXJyYXkoKTsKCiAgICAkcHJvZ3Jlc3NfbWF4KCRmaWxlc2l6ZSk7CiAgICB3aGlsZSggIWZlb2YoJGZoKSApIHsKICAgICAgICBzZXRfdGltZV9saW1pdCgzMCk7CiAgICAgICAgJHByb2dyZXNzX3NldChmdGVsbCgkZmgpKTsKICAgICAgICAkbGluZSA9IGNnZV91dGlsczo6ZmdldHMoJGZoKTsKICAgICAgICAkbGluZV9udW0rKzsKCiAgICAgICAgJGxpbmUgPSB0cmltKCRsaW5lKTsKICAgICAgICBpZiggISRsaW5lICkgY29udGludWU7CgogICAgICAgICRwcm9jZXNzZWRfbGluZXMrKzsKICAgICAgICBpZiggJHByb2Nlc3NlZF9saW5lcyA9PSAxICkgewogICAgICAgICAgICAvLwogICAgICAgICAgICAvLyBwcm9jZXNzIHRoZSBoZWFkZXIKICAgICAgICAgICAgLy8KICAgICAgICAgICAgaWYoICFzdGFydHN3aXRoKCRsaW5lLCcjIycpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCcpKTsKICAgICAgICAgICAgJGZpZWxkbWFwID0gY2dlX2FycmF5OjpzbWFydF9leHBsb2RlKHRyaW0oc3Vic3RyKCRsaW5lLDIpKSwkaW1wb3J0cHJlZnNbJ2RlbGltaXRlciddKTsKICAgICAgICAgICAgJGZpZWxkbWFwID0gJGNsZWFuX2ZpZWxkcygkZmllbGRtYXApOwoKICAgICAgICAgICAgaWYoICFpbl9hcnJheSgndXNlcm5hbWUnLCRmaWVsZG1hcCkgKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywndXNlcm5hbWUnKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoICFpbl9hcnJheSgnZ3JvdXBuYW1lJywkZmllbGRtYXApICkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCcsJ2dyb3VwbmFtZScpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CgogICAgICAgIC8vCiAgICAgICAgLy8gcHJvY2Vzc2luZyBhIGRhdGEgbGluZQogICAgICAgIC8vCiAgICAgICAgJGNvbHVtbnMgPSBjZ2VfYXJyYXk6OnNtYXJ0X2V4cGxvZGUoJGxpbmUsJGltcG9ydHByZWZzWydkZWxpbWl0ZXInXSk7CiAgICAgICAgJGNvbHVtbnMgPSAkY2xlYW5fZmllbGRzKCRjb2x1bW5zKTsKCiAgICAgICAgaWYoICRhbGxfY29sdW1uc19lbXB0eSgkY29sdW1ucykgKSBjb250aW51ZTsKCiAgICAgICAgaWYoIGNvdW50KCRjb2x1bW5zKSA8IGNvdW50KCRmaWVsZG1hcCkgLSAxIHx8IGNvdW50KCRjb2x1bW5zKSA+IGNvdW50KCRmaWVsZG1hcCkgKSB7CiAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydF9jb2x1bW5jb3VudCcpKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIGlmKCBjb3VudCgkY29sdW1ucykgPCBhcnJheV9zZWFyY2goJ3VzZXJuYW1lJywkZmllbGRtYXApICkgewogICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRfY29sdW1uY291bnQnKSk7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgLy8gZ2V0IHRoZSB1c2VyIHJlYy4KICAgICAgICAkdXNlciA9IGFycmF5KCd1c2VybmFtZSc9PicnLCdwYXNzd29yZCc9PicnLCdnbmFtZSc9Pm51bGwsJ2V4cGlyZXMnPT5udWxsLCdwcm9wcyc9PmFycmF5KCkpOwogICAgICAgICR1c2VyWyd1c2VybmFtZSddID0gJGdldF9maWVsZCgkY29sdW1ucywkZmllbGRtYXAsJ3VzZXJuYW1lJyk7CiAgICAgICAgJHVzZXJbJ3Bhc3N3b3JkJ10gPSAkZ2V0X2ZpZWxkKCRjb2x1bW5zLCRmaWVsZG1hcCwndHh0cGFzc3dvcmQnKTsKICAgICAgICAkdXNlclsnY3JlYXRlZGF0ZSddID0gJGdldF9maWVsZCgkY29sdW1ucywkZmllbGRtYXAsJ2NyZWF0ZWRhdGUnLHRpbWUoKSk7CiAgICAgICAgJHVzZXJbJ2V4cGlyZXMnXSA9ICRnZXRfZmllbGQoJGNvbHVtbnMsJGZpZWxkbWFwLCdleHBpcmVzJyx0aW1lKCkpOwogICAgICAgICRnbmFtZXMgPSAkZ2V0X2ZpZWxkKCRjb2x1bW5zLCRmaWVsZG1hcCwnZ3JvdXBuYW1lJyk7CiAgICAgICAgaWYoICEkZ25hbWVzICkgewogICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRncm91cG5hbWUnLCRnbmFtZSkpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgJGduYW1lcyA9ICRjbGVhbl9maWVsZHMoZXhwbG9kZSgnOicsJGduYW1lcykpOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGZvcmVhY2goICRnbmFtZXMgYXMgJGduYW1lICkgewogICAgICAgICAgICAgICAgaWYoICFpc3NldCgkZ3JvdXBzWyRnbmFtZV0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0Z3JvdXBuYW1lJywkZ25hbWUpKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJHJlbG5zWyRnbmFtZV0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0Z3JvdXBuYW1lJywkZ25hbWUpKTsKCiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkcmVsbnNbJGduYW1lXSBhcyAkcmVsbiApIHsKICAgICAgICAgICAgICAgICAgICAvLyBtYWtlIHN1cmUgdGhlIHJlcXVpcmVkIGZpZWxkcyBmb3IgdGhpcyBncm91cCBhcmUgYXZhaWxhYmxlIGluIHRoZSBmaWVsZCBtYXAKICAgICAgICAgICAgICAgICAgICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiAmJiAhaW5fYXJyYXkoJHJlbG5bJ25hbWUnXSwkZmllbGRtYXApICkgewogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIC8vIGFkZCB0aGUgZmllbGQgdG8gdGhlIHVzZXIgcmVjCiAgICAgICAgICAgICAgICAgICAgJHRtcCA9ICRnZXRfZmllbGQoJGNvbHVtbnMsJGZpZWxkbWFwLCRyZWxuWyduYW1lJ10pOwogICAgICAgICAgICAgICAgICAgIGlmKCAkdG1wICkgJHVzZXJbJ3Byb3BzJ11bJHJlbG5bJ25hbWUnXV0gPSAkdG1wOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgICAgIGlmKCAkdXNlclsndXNlcm5hbWUnXSApICRlcnJvcl91c2Vyc1tdID0gJHVzZXJbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgLy8gdmFsaWRhdGUgdGhlIHVzZXIgcmVjLgogICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ3VzZXJuYW1lJykgKSB7CiAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnLCd1c2VybmFtZScpKTsKICAgICAgICAgICAgaWYoICR1c2VyWyd1c2VybmFtZSddICkgJGVycm9yX3VzZXJzW10gPSAkdXNlclsndXNlcm5hbWUnXTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQoKICAgICAgICBpZiggIWNnZV91dGlsczo6Z2V0X3BhcmFtKCR1c2VyLCdjcmVhdGVkYXRlJykgKSAkdXNlclsnY3JlYXRlZGF0ZSddID0gdGltZSgpOwogICAgICAgIGlmKCAhaXNfaW50KCR1c2VyWydjcmVhdGVkYXRlJ10pICkgJHVzZXJbJ2NyZWF0ZWRhdGUnXSA9IHN0cnRvdGltZSgkdXNlclsnY3JlYXRlZGF0ZSddKTsKICAgICAgICBpZiggIWlzX2ludCgkdXNlclsnZXhwaXJlcyddKSApICR1c2VyWydleHBpcmVzJ10gPSBzdHJ0b3RpbWUoJHVzZXJbJ2V4cGlyZXMnXSk7CiAgICAgICAgLy8geWVwLCBhZ2Fpbi4KICAgICAgICBpZiggIWNnZV91dGlsczo6Z2V0X3BhcmFtKCR1c2VyLCdjcmVhdGVkYXRlJykgKSAkdXNlclsnY3JlYXRlZGF0ZSddID0gdGltZSgpOwogICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ2V4cGlyZXMnKSApICR1c2VyWydleHBpcmVzJ10gPSAkZGZsdF9leHBpcnk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yZWFjaCggJGduYW1lcyBhcyAkZ25hbWUgKSB7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkcmVsbnNbJGduYW1lXSBhcyAkcmVsbiApIHsKICAgICAgICAgICAgICAgICAgICAkdmFsID0gY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXJbJ3Byb3BzJ10sJHJlbG5bJ25hbWUnXSk7CiAgICAgICAgICAgICAgICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgJiYgISR2YWwgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgdmFsaWRhdGVzIHRoYXQgYSByZXF1aXJlZCBmaWVsZCBmb3Igb3VyIGRlc3RpbmF0aW9uIGdyb3VwIGlzIGZpbGxlZCBpbgogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmKCAkdmFsICkgewogICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIGEgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWYgdGhlIHByb3BlcnR5IGlzIGEgZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QsIG1ha2Ugc3VyZSB0aGUgdmFsdWUgaXMgdmFsaWQuCiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCggJHByb3BkZWZuc1skcmVsblsnbmFtZSddXVsndHlwZSddICkgewogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICR0aGlzOjpGSUVMRFRZUEVfREFURToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpc19pbnQoJHZhbCkgJiYgJHZhbCA8IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZScsJHJlbG5bJ25hbWUnXSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiggc3RydG90aW1lKCR2YWwpIDwgMSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9FTUFJTDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhaXNfZW1hbCgkdmFsKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9JTUFHRToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGp1c3QgZW5zdXJlIHRoYXQgdGhlIGltYWdlIGV4aXN0cy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlc3BlYyA9ICRpbWFnZURpci4nLycuJHZhbDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhZmlsZV9leGlzdHMoJGZpbGVzcGVjKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9NVUxUSVNFTEVDVDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRvcHRzID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0U2VsZWN0T3B0aW9ucygkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdmFscyA9ICRjbGVhbl9maWVsZHMoZXhwbG9kZSgnLCcsJHZhbCkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCggJHZhbHMgYXMgJG9uZXZhbCApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiggIWlzc2V0KCRvcHRzWyRvbmV2YWxdKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnLCRyZWxuWyduYW1lJ10pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAkdGhpczo6RklFTERUWVBFX0RST1BET1dOOgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICR0aGlzOjpGSUVMRFRZUEVfUkFESU9CVVROUzoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRvcHRzID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0U2VsZWN0T3B0aW9ucygkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiggIWlzc2V0KCRvcHRzWyR2YWxdKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnLCRyZWxuWyduYW1lJ10pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgICAgIGlmKCAkdXNlclsndXNlcm5hbWUnXSApICRlcnJvcl91c2Vyc1tdID0gJHVzZXJbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgLy8gZG8gdGhlIGFkZCBvciB1cGRhdGUuCiAgICAgICAgJHVpZCA9IG51bGw7CiAgICAgICAgaWYoIGlzc2V0KCRhbGxfdXNlcnNbJHVzZXJbJ3VzZXJuYW1lJ11dKSApIHsKICAgICAgICAgICAgLy8gdXBkYXRlIHRoZSB1c2VyLgogICAgICAgICAgICAkdWlkID0gJGFsbF91c2Vyc1skdXNlclsndXNlcm5hbWUnXV07CiAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+U2V0VXNlcigkdWlkLCR1c2VyWyd1c2VybmFtZSddLCR1c2VyWydwYXNzd29yZCddLCR1c2VyWydleHBpcmVzJ10pOwogICAgICAgICAgICBpZiggIWlzX2FycmF5KCR0bXApIHx8ICR0bXBbMF0gPT09IEZBTFNFICkgewogICAgICAgICAgICAgICAgJGltcG9ydF9lcnJvcl9saW5lKCRsaW5lX251bSwkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0dXBkYXRldXNlcicsJHRtcFsxXSkpOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGdpZGxpc3QgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkZ25hbWVzIGFzICRnbmFtZSApIHsKICAgICAgICAgICAgICAgICRnaWRsaXN0W10gPSAkZ3JvdXBzWyRnbmFtZV07CiAgICAgICAgICAgICAgICBpZiggIWluX2FycmF5KCRncm91cHNbJGduYW1lXSwkdG91Y2hlZF9naWRzKSApICR0b3VjaGVkX2dpZHNbXSA9ICRncm91cHNbJGduYW1lXTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdGhpcy0+U2V0VXNlckdyb3VwcygkdWlkLCRnaWRsaXN0KTsKICAgICAgICAgICAgJHRoaXMtPlNldFVzZXJQcm9wZXJ0aWVzKCR1aWQsJHVzZXJbJ3Byb3BzJ10pOwogICAgICAgICAgICAkaW1wb3J0X3N0YXR1cygndXBkYXRlZCB1c2VyICcuJHVzZXJbJ3VzZXJuYW1lJ10pOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gaW5zZXJ0IHRoZSB1c2VyCiAgICAgICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ3Bhc3N3b3JkJykgKSAkdXNlclsncGFzc3dvcmQnXSA9ICRkZmx0X3Bhc3N3b3JkOwogICAgICAgICAgICBpZiggIWNnZV91dGlsczo6Z2V0X3BhcmFtKCR1c2VyLCdleHBpcmVzJykgKSAkdXNlclsnZXhwaXJlcyddID0gJGRmbHRfZXhwaXJ5OwogICAgICAgICAgICAkdG1wID0gJHRoaXMtPkFkZFVzZXIoJHVzZXJbJ3VzZXJuYW1lJ10sJHVzZXJbJ3Bhc3N3b3JkJ10sJHVzZXJbJ2V4cGlyZXMnXSk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHRtcCkgfHwgJHRtcFswXSA9PT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRpbnNlcnR1c2VyJywkdG1wWzFdKSk7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdWlkID0gJHRtcFsxXTsKICAgICAgICAgICAgJGdpZGxpc3QgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkZ25hbWVzIGFzICRnbmFtZSApIHsKICAgICAgICAgICAgICAgICRnaWRsaXN0W10gPSAkZ3JvdXBzWyRnbmFtZV07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRoaXMtPlNldFVzZXJHcm91cHMoJHVpZCwkZ2lkbGlzdCk7CiAgICAgICAgICAgICR0aGlzLT5TZXRVc2VyUHJvcGVydGllcygkdWlkLCR1c2VyWydwcm9wcyddKTsKICAgICAgICAgICAgJGltcG9ydF9zdGF0dXMoJ2NyZWF0ZWQgdXNlciAnLiR1c2VyWyd1c2VybmFtZSddKTsKICAgICAgICAgICAgLy8gdG9kbzogc3RhdHVzIG1zZwogICAgICAgIH0KCiAgICAgICAgLy8gc2V0IHByb2dyZXNzCiAgICAgICAgJHByb2dyZXNzX3NldChmdGVsbCgkZmgpKTsKCiAgICAgICAgLy8gc2V0IHRoZSB1c2VyCiAgICAgICAgaWYoICR1aWQgJiYgIWluX2FycmF5KCR1aWQsJHRvdWNoZWRfdWlkcykgKSAkdG91Y2hlZF91aWRzW10gPSAkdWlkOwoKICAgICAgICAvLyBkZWxldGUgdGhlIHVzZXIgZnJvbSB0aGUgY29tcGxldGUgdXNlciBsaXN0LgogICAgICAgIHVuc2V0KCRhbGxfdXNlcnNbJHVzZXJbJ3VzZXJuYW1lJ11dKTsKCiAgICB9IC8vIGZlb2YKCiAgICAvLyBkZWxldGUgdXNlcnMgd2hvIGFyZSBtZW1iZXIgb2YgdGhlIGltcG9ydGVkIGdyb3VwLCAoYXNzdW1pbmcgd2Ugb25seSBsaXN0ZWQgb25lIGdyb3VwKSBidXQKICAgIC8vIG5vdCBsaXN0ZWQgaW4gdGhpcyBsaXN0LgogICAgJHRvdWNoZWRfdWlkcyA9IGFycmF5X3VuaXF1ZSgkdG91Y2hlZF91aWRzKTsKICAgIGlmKCBjb3VudCgkdG91Y2hlZF9naWRzKSA9PSAxICYmIGNvdW50KCR0b3VjaGVkX3VpZHMpICYmICRpbXBvcnRwcmVmc1snZGVsZXRlX3VzZXJzJ10gKSB7CiAgICAgICAgLy8gZ290dGEgZ2V0IHRoZSB1aWRzIG9mIGFsbCBvZiB0aGUgdXNlcnMgaW4gdGhpcyBncm91cC4KICAgICAgICAkcXVlcnkgPSBuZXcgZmV1X3VzZXJfcXVlcnkoKTsKICAgICAgICAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRCwkdG91Y2hlZF9naWRzWzBdKTsKICAgICAgICAkcnMgPSAkcXVlcnktPmV4ZWN1dGUoKTsKICAgICAgICAkZGVsX3VpZHMgPSBhcnJheSgpOwogICAgICAgIHdoaWxlKCAhJHJzLT5FT0YoKSApIHsKICAgICAgICAgICAgaWYoICFpbl9hcnJheSgkcnMtPmZpZWxkc1snaWQnXSwkdG91Y2hlZF91aWRzKSAmJiAhaW5fYXJyYXkoJHJzLT5maWVsZHNbJ2lkJ10sJGRlbF91aWRzKSApIHsKICAgICAgICAgICAgICAgICRkZWxfdWlkc1tdID0gJHJzLT5maWVsZHNbJ2lkJ107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHJzLT5Nb3ZlTmV4dCgpOwogICAgICAgIH0KCiAgICAgICAgLy8gZ290dGEgZGVsZXRlIHJlbWFpbmluZyB1c2VycwogICAgICAgIGlmKCBjb3VudCgkZGVsX3VpZHMpICkgewogICAgICAgICAgICAkcHJvZ3Jlc3NfbWF4KGNvdW50KCRkZWxfdWlkcykpOwogICAgICAgICAgICAkbiA9IDA7CiAgICAgICAgICAgIGZvcmVhY2goICRkZWxfdWlkcyBhcyAkdWlkICkgewogICAgICAgICAgICAgICAgc2V0X3RpbWVfbGltaXQoMjApOwogICAgICAgICAgICAgICAgaWYoICR1aWQgPiAwICkgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5EZWxldGVVc2VyRnVsbCggJHVpZCApOwogICAgICAgICAgICAgICAgICAgICRpbXBvcnRfc3RhdHVzKCR0aGlzLT5MYW5nKCdpbXBvcnRfZGVsZXRlZHVzZXInLCR1aWQpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRuKys7CiAgICAgICAgICAgICAgICAkcHJvZ3Jlc3Nfc2V0KCRuKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICAkaW1wb3J0X2ZpbmlzaCgpOwp9CmNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CiAgICAkaW1wb3J0X2Vycm9yKCRlLT5HZXRNZXNzYWdlKCkpOwp9CmV4aXQ7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_exportgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRncm91cHMnKSApIHJldHVybjsKCmlmKCAhaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSByZXR1cm47CgokZ3JvdXBpZCA9ICRwYXJhbXNbJ2dyb3VwX2lkJ107CgokdGhpcy0+U2V0Q3VycmVudFRhYignZ3JvdXBzJyk7CmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vdHN1cHBvcnRlZCcpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9CgokZ3JwX2luZm8gPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCAkZ3JvdXBpZCApOwppZiggIWlzX2FycmF5KCAkZ3JwX2luZm8gKSB8fCAhaXNzZXQoJGdycF9pbmZvWydpZCddKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRncm91cGlkJywkZ3JvdXBpZCkpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgcmV0dXJuOwp9CgokZ3JwX3Byb3BfcmVscyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JvdXBpZCApOwppZiggIWlzX2FycmF5KCAkZ3JwX3Byb3BfcmVscyApIHx8ICFjb3VudCgkZ3JwX3Byb3BfcmVscykgKSB7CiAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3JlbGF0aW9ucycpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIHJldHVybjsKfQoKJGZpbGVuYW1lID0gJGdycF9pbmZvWydncm91cG5hbWUnXS4nLnhtbCc7CiRzbWFydHktPmFzc2lnbignZ3JvdXBfbmFtZScsJGdycF9pbmZvWydncm91cG5hbWUnXSk7CiRzbWFydHktPmFzc2lnbignZ3JvdXBfZGVzY3JpcHRpb24nLCRncnBfaW5mb1snZ3JvdXBkZXNjJ10pOwokcHJvcGVydGllcyA9IGFycmF5KCk7CmZvcmVhY2goICRncnBfcHJvcF9yZWxzIGFzICRvbmVyZWwgKSB7CiAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCAkb25lcmVsWyduYW1lJ10gKTsKICBpZiggISRkZWZuICkgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wbm90Zm91bmQnLCRvbmVyZWxbJ25hbWUnXSkpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICAgIHJldHVybjsKICB9CgogICRvYmogPSBuZXcgU3RkQ2xhc3MoKTsKICAkb2JqLT5uYW1lID0gJG9uZXJlbFsnbmFtZSddOwogICRvYmotPnNvcnRvcmRlciA9ICRvbmVyZWxbJ3NvcnRfa2V5J107CiAgJG9iai0+c3RhdHVzID0gJG9uZXJlbFsncmVxdWlyZWQnXTsKICAkb2JqLT5sb3N0dW5mbGFnID0gJG9uZXJlbFsnbG9zdHVuZmxhZyddOwogICRvYmotPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb2JqLT50eXBlID0gJGRlZm5bJ3R5cGUnXTsKICAkb2JqLT5sZW5ndGggPSAkZGVmblsnbGVuZ3RoJ107CiAgJG9iai0+bWF4bGVuZ3RoID0gJGRlZm5bJ21heGxlbmd0aCddOwogIGlmKCAkb2JqLT50eXBlID09IDQgfHwgJG9iai0+dHlwZSA9PSA1ICkgewogICAgJG9wcyA9IGFycmF5KCk7CiAgICAkc2VsZWN0X29wcyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCAkb2JqLT5uYW1lLCAyICk7CiAgICBmb3JlYWNoKCAkc2VsZWN0X29wcyBhcyAkc2VsX29wICkgewogICAgICAkb3AgPSBuZXcgU3RkQ2xhc3M7CiAgICAgICRvcC0+bmFtZSA9IHRyaW0oJHNlbF9vcFsnb3B0aW9uX25hbWUnXSk7CiAgICAgICRvcC0+dGV4dCA9IHRyaW0oJHNlbF9vcFsnb3B0aW9uX3RleHQnXSk7CiAgICAgICRvcHNbXSA9ICRvcDsKICAgIH0KICAgICRvYmotPm9wdGlvbnMgPSAkb3BzOwogIH0KCiAgJHByb3BlcnRpZXNbXSA9ICRvYmo7Cn0KJHNtYXJ0eS0+YXNzaWduKCdwcm9wZXJ0aWVzJywkcHJvcGVydGllcyk7CgppZihpbmlfZ2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicpKSBpbmlfc2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicsICdPZmYnKTsKc2V0X3RpbWVfbGltaXQoOTk5OSk7CgovLyBnZXQgdGhlIGRhdGEKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KJGRhdGEgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdncm91cF94bWwudHBsJyk7CgpoZWFkZXIoJ1ByYWdtYTogcHVibGljJyk7CmhlYWRlcignRXhwaXJlczogMCcpOwpoZWFkZXIoJ0NhY2hlLUNvbnRyb2w6IG11c3QtcmV2YWxpZGF0ZSwgcG9zdC1jaGVjaz0wLCBwcmUtY2hlY2s9MCcpOwpoZWFkZXIoJ0NhY2hlLUNvbnRyb2w6IHByaXZhdGUnLGZhbHNlKTsKaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CmhlYWRlcignQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKTsKaGVhZGVyKCJDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1cIiRmaWxlbmFtZVwiIiApOwpoZWFkZXIoJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJpbmFyeScpOwpoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gc3RybGVuKCRkYXRhKSk7CmVjaG8gJGRhdGE7CgpAZmx1c2goKTsgQG9iX2ZsdXNoKCk7IEBvYl9mbHVzaCgpOwovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_export_users.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnMnKSApIHJldHVybjsKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7Cgokb2Zmc2V0ID0gMDsKJGJhdGNoc2l6ZSA9IDUwOwokY291bnQgPSAkZGItPkdldE9uZSgnU0VMRUNUIENPVU5UKERJU1RJTkNUIHUuaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUnKTsKaWYoICRjb3VudCA9PSAwICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZXhwb3J0X25vdXNlcnMnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKfQokdXF1ZXJ5ID0gJ1NFTEVDVCBESVNUaU5DVCB1LmlkLHUudXNlcm5hbWUsdS5leHBpcmVzLHUuY3JlYXRlZGF0ZQogICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUgT1JERVIgQlkgdS5pZCc7CgokZ3JvdXBzID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0R3JvdXBMaXN0KCkpOwokcHJvcGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKJHJlbG5zID0gYXJyYXkoKTsKZm9yZWFjaCggJGdyb3VwcyBhcyAkZ2lkID0+ICRnbmFtZSApIHsKICAkcmVsbnNbJGdpZF0gPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucygkZ2lkKTsKfQoKLy8gYnVpbGQgdGhlIGZpZWxkIG1hcAokZmllbGRtYXAgPSBhcnJheSgndXNlcm5hbWUnPT5udWxsLCdleHBpcmVzJz0+bnVsbCwnY3JlYXRlZGF0ZSc9Pm51bGwsJ2dyb3VwbmFtZSc9Pm51bGwpOwokcHJvcGxpc3QgPSBhcnJheSgpOwpmb3JlYWNoKCAkcmVsbnMgYXMgJGdpZCA9PiAkcmVsbl9saXN0ICkgewogIGZvcmVhY2goICRyZWxuX2xpc3QgYXMgJHJlbG4gKSB7CiAgICBpZiggIWlzc2V0KCRwcm9wZGVmbnNbJHJlbG5bJ25hbWUnXV0pICkgY29udGludWU7CiAgICBpZiggJHByb3BkZWZuc1skcmVsblsnbmFtZSddXVsnZW5jcnlwdCddICkgY29udGludWU7CiAgICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiB8fCAkcmVsblsncmVxdWlyZWQnXSA9PSAxICkgewogICAgICAkZmllbGRtYXBbJHJlbG5bJ25hbWUnXV0gPSBudWxsOwogICAgICAkcHJvcGxpc3RbXSA9ICRyZWxuWyduYW1lJ107CiAgICB9CiAgfQp9CgovLyBjbGVhciBhbGwgYnVmZmVycwovLyBleHBvcnQgdGhlIGhlYWRlciBsaW5lCiRmbj0iZmV1c2Vycy0iLmRhdGUoJ1ktbS1kJykuJy5jc3YnOwokaGVhZGVyID0gJyMjJy5pbXBsb2RlKCcsJyxhcnJheV9rZXlzKCRmaWVsZG1hcCkpOwokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7CmZvciAoJGNudCA9IDA7ICRjbnQgPCBzaXplb2YoJGhhbmRsZXJzKTsgJGNudCsrKSB7IG9iX2VuZF9jbGVhbigpOyB9CmhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vZm9yY2UtZG93bmxvYWQnKTsKaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0nLiRmbik7CmVjaG8gJGhlYWRlci4iXG4iOwoKd2hpbGUoICRvZmZzZXQgPCAkY291bnQgKSB7CiAgICAkZGJyX3UgPSAkZGItPlNlbGVjdExpbWl0KCR1cXVlcnksJGJhdGNoc2l6ZSwkb2Zmc2V0KTsKCiAgICAvLyBnZXQgdGhlIHVzZXIgaWRzLgogICAgJHVpZHMgPSBhcnJheSgpOwogICAgd2hpbGUoICEkZGJyX3UtPkVPRigpICkgewogICAgICAgICR0bXAgPSAoaW50KSRkYnJfdS0+ZmllbGRzWydpZCddOwogICAgICAgIGlmKCAkdG1wID4gMCAmJiAhaW5fYXJyYXkoJHRtcCwkdWlkcykgKSAkdWlkc1tdID0gJHRtcDsKICAgICAgICAkZGJyX3UtPk1vdmVOZXh0KCk7CiAgICB9CiAgICAkZGJyX3UtPk1vdmVGaXJzdCgpOwoKICAgIC8vIGdldCB0aGUgYmVsb25ncyBzdHVmZiBmb3IgdGhlc2UgdXNlcnMKICAgICRicXVlcnkgPSAnU0VMRUNUIHVzZXJpZCxncm91cGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MKICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJykgT1JERVIgQlkgdXNlcmlkLGdyb3VwaWQnOwogICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJGJxdWVyeSk7CiAgICAkYmVsb25ncyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdG1wIGFzICRicm93ICkgewogICAgICAgIGlmKCAhaXNzZXQoJGJlbG9uZ3NbJGJyb3dbJ3VzZXJpZCddXSkgKSAkYmVsb25nc1skYnJvd1sndXNlcmlkJ11dID0gYXJyYXkoKTsKICAgICAgICAkYmVsb25nc1skYnJvd1sndXNlcmlkJ11dW10gPSAkYnJvd1snZ3JvdXBpZCddOwogICAgfQoKICAgIC8vIGdldCB0aGUgcHJvcGVydGllcyBmb3IgdGhlc2UgdXNlcnMKICAgICRwcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcwogICAgICAgICAgICAgV0hFUkUgdXNlcmlkIElOICgnLmltcGxvZGUoJywnLCR1aWRzKS4nKSBPUkRFUiBCWSB1c2VyaWQsdGl0bGUnOwogICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHBxdWVyeSk7CiAgICAkcHJvcGVydGllcyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdG1wIGFzICRwcm93ICkgewogICAgICAgIGlmKCAhaXNzZXQoJHByb3BlcnRpZXNbJHByb3dbJ3VzZXJpZCddXSkgKSAkcHJvcGVydGllc1skcHJvd1sndXNlcmlkJ11dID0gYXJyYXkoKTsKICAgICAgICAkcHJvcGVydGllc1skcHJvd1sndXNlcmlkJ11dW10gPSBhcnJheSgkcHJvd1sndGl0bGUnXSwkcHJvd1snZGF0YSddKTsKICAgIH0KCiAgICB3aGlsZSggISRkYnJfdS0+RU9GKCkgKSB7CiAgICAgICAgLy8gYWRkIHByaW1hcnkgZmllbGRzCiAgICAgICAgJHVpZCA9ICRkYnJfdS0+ZmllbGRzWydpZCddOwogICAgICAgICRyb3cgPSAkZmllbGRtYXA7CiAgICAgICAgJHJvd1sndXNlcm5hbWUnXSA9ICRkYnJfdS0+ZmllbGRzWyd1c2VybmFtZSddOwogICAgICAgICRyb3dbJ2V4cGlyZXMnXSA9ICRkYnJfdS0+ZmllbGRzWydleHBpcmVzJ107CiAgICAgICAgJHJvd1snY3JlYXRlZGF0ZSddID0gJGRicl91LT5maWVsZHNbJ2NyZWF0ZWRhdGUnXTsKCiAgICAgICAgLy8gYWRkIGdyb3VwbmFtZShzKQogICAgICAgIGlmKCBpc3NldCgkYmVsb25nc1skdWlkXSkgKSB7CiAgICAgICAgICAgICR0bXAgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkYmVsb25nc1skdWlkXSBhcyAkZ2lkICkgewogICAgICAgICAgICAgICAgaWYoIGlzc2V0KCRncm91cHNbJGdpZF0pICkgJHRtcFtdID0gJGdyb3Vwc1skZ2lkXTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkcm93Wydncm91cG5hbWUnXSA9IGltcGxvZGUoJywnLCR0bXApOwogICAgICAgIH0KCiAgICAgICAgLy8gYWRkIHByb3BlcnRpZXMKICAgICAgICBpZiggaXNzZXQoJHByb3BlcnRpZXNbJHVpZF0pICkgewogICAgICAgICAgICBmb3JlYWNoKCAkcHJvcGVydGllc1skdWlkXSBhcyAkcmVjICkgewogICAgICAgICAgICAgICAgaWYoIGFycmF5X2tleV9leGlzdHMoJHJlY1swXSwkcm93KSApIHsKICAgICAgICAgICAgICAgICAgICAkcm93WyRyZWNbMF1dID0gJHJlY1sxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAkZGJyX3UtPk1vdmVOZXh0KCk7CgogICAgICAgIC8vIG91dHB1dCB0aGUgcm93LgogICAgICAgIGVjaG8gY2dlX2FycmF5OjppbXBsb2RlX3F1b3RlZChhcnJheV92YWx1ZXMoJHJvdykpLiJcbiI7CiAgICB9CiAgICAkb2Zmc2V0ICs9ICRiYXRjaHNpemU7Cn0gLy8gd2hpbGUKCmV4aXQoKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_importgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRncm91cHMnKSApIHJldHVybjsKCmZ1bmN0aW9uIGNoZWNrX2dyb3VwX2NvbXBsZXRlKCAmJGdycCApCnsKICBpZiggIWlzX2FycmF5KCAkZ3JwICkgKSByZXR1cm4gZmFsc2U7CiAgaWYoIWlzc2V0KCRncnBbJ25hbWUnXSkgfHwgZW1wdHkoJGdycFsnbmFtZSddKSkgcmV0dXJuIGZhbHNlOwogIAogIC8vIHBhc3NlZAogIGlmKCAhaXNzZXQoJGdycFsncHJvcGVydGllcyddKSB8fCAhaXNfYXJyYXkoJGdycFsncHJvcGVydGllcyddKSB8fCAoY291bnQoJGdycFsncHJvcGVydGllcyddKSA9PSAwKSApIHJldHVybiBmYWxzZTsKCiAgZm9yZWFjaCggJGdycFsncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgaWYoICFjaGVja19wcm9wZXJ0eV9jb21wbGV0ZSggJG9uZXByb3AgKSApIHJldHVybiBmYWxzZTsKICB9CgogIHJldHVybiB0cnVlOwp9CgoKZnVuY3Rpb24gY2hlY2tfcHJvcGVydHlfY29tcGxldGUoICYkcHJvcCApCnsKICBpZiggIWlzX2FycmF5KCAkcHJvcCApICkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnbmFtZSddKSB8fCBlbXB0eSgkcHJvcFsnbmFtZSddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsndHlwZSddKSB8fCAkcHJvcFsndHlwZSddID09ICcnKSByZXR1cm4gRkFMU0U7CiAgaWYoIWlzc2V0KCRwcm9wWydwcm9tcHQnXSkgfHwgZW1wdHkoJHByb3BbJ3Byb21wdCddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnc29ydG9yZGVyJ10pIHx8ICRwcm9wWydzb3J0b3JkZXInXSA9PT0gJycgKSByZXR1cm4gRkFMU0U7CiAgaWYoIWlzc2V0KCRwcm9wWydzdGF0dXMnXSkgfHwgZW1wdHkoJHByb3BbJ3N0YXR1cyddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnbG9zdHVuZmxhZyddKSB8fCBlbXB0eSgkcHJvcFsnbG9zdHVuZmxhZyddKSkgcmV0dXJuIEZBTFNFOwoKICBpZihpc3NldCgkcHJvcFsnbGVuZ3RoJ10pKSB7CiAgICBpZihlbXB0eSgkcHJvcFsnbGVuZ3RoJ10pKSByZXR1cm4gRkFMU0U7CiAgICBpZihpbnR2YWwoJHByb3BbJ2xlbmd0aCddKSA9PSAwKSByZXR1cm4gRkFMU0U7CiAgfQogIGlmKGlzc2V0KCRwcm9wWydtYXhsZW5ndGgnXSkpIHsKICAgIGlmKGVtcHR5KCRwcm9wWydtYXhsZW5ndGgnXSkpIHJldHVybiBGQUxTRTsKICAgIGlmKGludHZhbCgkcHJvcFsnbWF4bGVuZ3RoJ10pID09IDApIHJldHVybiBGQUxTRTsKICB9CgogICR0eXBlID0gaW50dmFsKCRwcm9wWyd0eXBlJ10pOwogIGlmKCAkdHlwZSA+IDYgfHwgJHR5cGUgPCAwICkgcmV0dXJuIEZBTFNFOwogIGlmKCAkdHlwZSA9PSA0IHx8ICR0eXBlID09IDUgKSB7CiAgICAvLyBjaGVjayBmb3Igb3B0aW9ucwogICAgaWYoICFpc3NldCgkcHJvcFsnb3B0aW9ucyddKSB8fCAhaXNfYXJyYXkoJHByb3BbJ29wdGlvbnMnXSkgKSByZXR1cm4gRkFMU0U7CgogICAgZm9yZWFjaCggJHByb3BbJ29wdGlvbnMnXSBhcyAkb25lb3AgKSB7CiAgICAgIGlmKCAhaXNzZXQoJG9uZW9wWyduYW1lJ10pIHx8ICFpc3NldCgkb25lb3BbJ3RleHQnXSkgKSByZXR1cm4gRkFMU0U7CiAgICB9CiAgfQoKICByZXR1cm4gVFJVRTsKfQoKaWYoICFmZXVfdXRpbHM6OnVzaW5nX3N0ZF9jb25zdW1lcigpICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3Jfbm90c3VwcG9ydGVkJykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7Cn0KCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApIHsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9CgppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdCddICkgKSB7CiAgLy8KICAvLyBTdWJtaXQgd2FzIHByZXNzZWQKICAvLwogIGlmKCAhaXNzZXQoICRfRklMRVNbJGlkLid4bWxmaWxlJ10gKSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ191cGxvYWQnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIH0KICAkdGhlZmlsZSA9JiAkX0ZJTEVTWyRpZC4neG1sZmlsZSddOwogIGlmKCAkdGhlZmlsZVsndHlwZSddICE9ICd0ZXh0L3htbCcgfHwgJHRoZWZpbGVbJ3NpemUnXSA9PSAwIHx8ICR0aGVmaWxlWydlcnJvciddICE9IDAgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICB9CgogIC8vCiAgLy8gV2UgZ290IGFuIFhNTCBmaWxlIChob3BlIGl0J3MgdGhlIHJpZ2h0IG9uZQogIC8vIG5vdyB3ZSBjYW4gdHJ5IHRvIHBhcnNlIGl0IAogIC8vCgogICR4bWwgPSBmaWxlX2dldF9jb250ZW50cyggJHRoZWZpbGVbJ3RtcF9uYW1lJ10gKTsKICAkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKICAkcmV0ID0geG1sX3BhcnNlX2ludG9fc3RydWN0KCAkcGFyc2VyLCAkeG1sLCAkdmFsLCAkeHQgKTsKICB4bWxfcGFyc2VyX2ZyZWUoICRwYXJzZXIgKTsKCiAgaWYoICRyZXQgPT0gMCApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfYmFkX3htbCcpLicgMScpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICB9CgogIC8vCiAgLy8gV2UgaGF2ZSBzb21lIGtpbmQgb2YgdmFsaWQgWE1MCiAgLy8KICAkb25lcHJvcGVydHkgPSBhcnJheSgpOwogICRvbmVvcHRpb24gPSBhcnJheSgpOwogICRoYXZlX2NvbXBsZXRlX2dyb3VwID0gZmFsc2U7CiAgJGdycF9pbmZvID0gYXJyYXkoKTsKICBmb3JlYWNoKCAkdmFsIGFzICRlbGVtICkgewogICAgJHZhbHVlID0gKGlzc2V0KCRlbGVtWyd2YWx1ZSddKT8kZWxlbVsndmFsdWUnXTonJyk7CiAgICAkdHlwZSA9IChpc3NldCgkZWxlbVsndHlwZSddKT8kZWxlbVsndHlwZSddOicnKTsKICAgICR0YWcgPSBzdHJ0b2xvd2VyKCRlbGVtWyd0YWcnXSk7CiAgICAkZmxkID0gc3Vic3RyKCR0YWcsc3RycG9zKCR0YWcsJ18nKSsxKTsKCiAgICBzd2l0Y2goICR0YWcgKSB7CiAgICBjYXNlICdmZXVfZ3JvdXAnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CglpZiggIWNoZWNrX2dyb3VwX2NvbXBsZXRlKCRncnBfaW5mbykgKSB7CgkgIC8vIGFuIGVycm9yIHRoYXQgd2Ugc2hvdWxkIG5ldmVyIGdldAoJICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2JhZF94bWwnKS4nIDInKTsKCSAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKCSAgcmV0dXJuOwoJfQoJLy8gd2Ugc2hvdWxkIGhhdmUgYSBjb21wbGV0ZSBncm91cCBhdCB0aGlzIHBvaW50CgkkaGF2ZV9jb21wbGV0ZV9ncm91cCA9IHRydWU7CglicmVhazsKICAgICAgfQoKICAgIGNhc2UgJ2dycF9uYW1lJzoKICAgIGNhc2UgJ2dycF9kZXNjcmlwdGlvbic6CiAgICAgIHsKCWlmKCAkdHlwZSAhPSAnY29tcGxldGUnICYmICR0eXBlICE9ICdjbG9zZScgKSBjb250aW51ZTsKCWlmKCBpc3NldCgkZ3JwX2luZm9bJGZsZF0pICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyAzJyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCSRncnBfaW5mb1skZmxkXSA9ICR2YWx1ZTsKCWJyZWFrOwogICAgICB9CgoKICAgIGNhc2UgJ3Byb3BlcnR5JzoKICAgICAgewoJaWYoICR0eXBlICE9ICdjb21wbGV0ZScgJiYgJHR5cGUgIT0gJ2Nsb3NlJyApIGNvbnRpbnVlOwoJaWYoICFjaGVja19wcm9wZXJ0eV9jb21wbGV0ZSgkb25lcHJvcGVydHkpICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyA0Jyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCWlmKCAhaXNzZXQoJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10pICkgJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10gPSBhcnJheSgpOwoJJGdycF9pbmZvWydwcm9wZXJ0aWVzJ11bXSA9ICRvbmVwcm9wZXJ0eTsKCSRvbmVwcm9wZXJ0eSA9IGFycmF5KCk7CglicmVhazsKICAgICAgfQoKICAgIGNhc2UgJ3Byb3BfbmFtZSc6CiAgICBjYXNlICdwcm9wX3Byb21wdCc6CiAgICBjYXNlICdwcm9wX3ZhbHVlJzoKICAgIGNhc2UgJ3Byb3BfdHlwZSc6CiAgICBjYXNlICdwcm9wX2xlbmd0aCc6CiAgICBjYXNlICdwcm9wX21heGxlbmd0aCc6CiAgICBjYXNlICdwcm9wX3NvcnRvcmRlcic6CiAgICBjYXNlICdwcm9wX3N0YXR1cyc6CiAgICBjYXNlICdwcm9wX2xvc3R1bmZsYWcnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CglpZiggaXNzZXQoICRvbmVwcm9wZXJ0eVskZmxkXSApICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyA1Jyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCSRvbmVwcm9wZXJ0eVskZmxkXSA9ICR2YWx1ZTsKCWJyZWFrOwogICAgICB9CgogICAgY2FzZSAncHJvcF9vcHRpb24nOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7Cgkkb25lcHJvcGVydHlbJ29wdGlvbnMnXVtdID0gJG9uZW9wdGlvbjsKCSRvbmVvcHRpb24gPSBhcnJheSgpOwoJYnJlYWs7CiAgICAgIH0KCiAgICBjYXNlICdvcF9uYW1lJzoKICAgIGNhc2UgJ29wX3RleHQnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7Cgkkb25lb3B0aW9uWyRmbGRdID0gJHZhbHVlOwoJYnJlYWs7CiAgICAgIH0KICAgIH0gLy8gc3dpdGNoCiAgfSAvLyBmb3JlYWNoCgogIC8vCiAgLy8gSWYgd2UgZ290IGhlcmUsIHdlIHBhcnNlZCB0aGUgeG1sIGZpbGUgcHJvcGVybHkKICAvLyBhbmQgaXQgbG9va3MgZ29vZC4KICAvLwoKICAvLyBJZiB0aGUgbmV3bmFtZSBpcyBzZXQsIHdlJ2xsIHVzZSB0aGF0CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25ld25hbWUnXSkgJiYgJHBhcmFtc1snaW5wdXRfbmV3bmFtZSddICE9ICcnICkgJGdycF9pbmZvWyduYW1lJ10gPSAkcGFyYW1zWydpbnB1dF9uZXduYW1lJ107CgogIGlmKCAkdGhpcy0+R3JvdXBFeGlzdHNCeU5hbWUoICRncnBfaW5mb1snbmFtZSddICkgKSB7CiAgICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZ3JvdXBleGlzdHMnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgcmV0dXJuOwogIH0KCiAgaWYoICFpc3NldCgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgfHwgIWlzX2FycmF5KCRncnBfaW5mb1sncHJvcGVydGllcyddKSB8fCAoY291bnQoJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10pID09IDApICkgewogICAgLy8gbm8gcHJvcGVydGllcz8KICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfcHJvcGVydGllcycpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgICByZXR1cm47CiAgfQoKICAvLyBOb3cgYWRkIHRoZSBwcm9wZXJ0aWVzCiAgLy8gKGZpcnN0IHNjYW4gZm9yIG5hbWVzKQogICRwYXNzZWQgPSB0cnVlOwogIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgJHJlcyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRvbmVwcm9wWyduYW1lJ10gKTsKICAgIGlmKCBpc19hcnJheSgkcmVzKSApIHsKICAgICAgJHBhc3NlZCA9IGZhbHNlOwogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYoICEkcGFzc2VkICkgewogICAgLy8gbm8gcHJvcGVydGllcz8KICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZHVwX3Byb3BlcnRpZXMnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgcmV0dXJuOwogIH0KCiAgLy8KICAvLyBOb3cgcmVhbGx5IGFkZCB0aGVtCiAgLy8KICBmb3JlYWNoKCAkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSBhcyAkb25lcHJvcCApIHsKICAgICRyZXMgPSAkdGhpcy0+QWRkUHJvcGVydHlEZWZuKCRvbmVwcm9wWyduYW1lJ10sICRvbmVwcm9wWydwcm9tcHQnXSwgJG9uZXByb3BbJ3R5cGUnXSwgJG9uZXByb3BbJ2xlbmd0biddLCAkb25lcHJvcFsnbWF4bGVuZ3RoJ10pOwogICAgaWYoIGlzX2FycmF5KCAkcmVzICkgJiYgJHJlc1swXSA9PT0gRkFMU0UgKSB7CiAgICAgIC8vIGZvciBzb21lIGR1bWIgcmVhc29uLCB3ZSBzdGlsbCBjb3VsZG4ndCBpbnNlcnQgCiAgICAgIC8vIHRoZSBwcm9wZXJ0eQogICAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2NhbnRhZGRwcm9wJykpOwogICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgICByZXR1cm47CiAgICB9CgogICAgaWYoICRvbmVwcm9wWyd0eXBlJ10gPT0gNCB8fCAkb25lcHJvcFsndHlwZSddID09IDUgKSB7CiAgICAgIC8vIGl0J3MgYSBzZWxlY3QgdHlwZQogICAgICAkb3BzID0gYXJyYXkoKTsKICAgICAgZm9yZWFjaCggJG9uZXByb3BbJ29wdGlvbnMnXSBhcyAkb25lb3AgKSB7Cgkkb3BzW10gPSAkb25lb3BbJ3RleHQnXS4nPScuJG9uZW9wWyduYW1lJ107CiAgICAgIH0KICAgICAgJHJlcyA9ICR0aGlzLT5BZGRTZWxlY3RPcHRpb25zKCAkb25lcHJvcFsnbmFtZSddLCAkb3BzICk7CiAgICAgIGlmKCAkcmVzWzBdID09IEZBTFNFICkgewoJLy8gZm9yIHNvbWUgZHVtYiByZWFzb24sIHdlIHN0aWxsIGNvdWxkbid0IGluc2VydCAKCS8vIHRoZSBwcm9wZXJ0eQoJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9jYW50YWRkcHJvcCcpLicgMicpOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKCXJldHVybjsKICAgICAgfQogICAgfQogIH0KCiAgLy8gV29vaG9vLCB0aGUgcHJvcGVydGllcyB3ZXJlIGFkZGVkCiAgLy8gTm93IHRvIGFkZCB0aGUgZ3JvdXAgaXRzZWxmLgogICRyZXMgPSAkdGhpcy0+QWRkR3JvdXAoJGdycF9pbmZvWyduYW1lJ10sJGdycF9pbmZvWydkZXNjcmlwdGlvbiddKTsKICBpZiggaXNfYXJyYXkoICRyZXMgKSAmJiAkcmVzWzBdID09PSBGQUxTRSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICAgIHJldHVybjsKICB9CiAgJGdycGlkID0gJHJlc1sxXTsKCiAgLy8gYW5kIGFzc29jaWF0ZSB0aGUgcHJvcGVydGllcyB3aXRoIHRoZSBncm91cAogICRlcnJvciA9IGZhbHNlOwogIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgLy8gaWYgaXQncyBhbiBvcHRpb24gdHlwZSAodHlwZSA0IG9yIDUpIHRoZW4KICAgIC8vIGFkZCB0aGUgb3B0aW9ucwogICAgJHJlcyA9ICR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJG9uZXByb3BbJ25hbWUnXSwgJG9uZXByb3BbJ3NvcnRvcmRlciddLCAkb25lcHJvcFsnbG9zdHVuZmxhZyddLCAkb25lcHJvcFsnc3RhdHVzJ10gKTsKICAgIGlmKCAkcmVzWzBdID09PSBGQUxTRSApICRlcnJvciA9IHRydWU7CiAgfQogIGlmKCAkZXJyb3IgPT0gdHJ1ZSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwcmVscycpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgICByZXR1cm47CiAgfQoKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9IC8vIGlmCgovLyBQcm92aWRlIGEgc2ltcGxlIGZvcm0gdGhhdCBhbGxvd3MgcGVvcGxlIHRvIGNob29zZSB0aGUgZmlsZSB0byBpbXBvcnQKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9pbXBvcnRncm91cCcsJHJldHVybmlkLCdwb3N0JywnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9maWxlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9pbXBvcnR4bWxmaWxlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbGVuYW1lJywkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0KCRpZCwneG1sZmlsZScsJycsNDApKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbmV3bmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9uZXdncm91cG5hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbmV3bmFtZScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X25ld25hbWUnKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2ltcG9ydGdyb3VwLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_import_users.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnMnKSApIHJldHVybjsKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKCmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vdHN1cHBvcnRlZCcpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogIHJldHVybjsKfQoKJGltcG9ydHByZWZzID0gYXJyYXkoJ2RlbGV0ZV91c2Vycyc9PjAsJ2RlbGltaXRlcic9PicsJyk7CiR0bXAgPSAkdGhpcy0+Q0dHZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycpOwppZiggJHRtcCApICR0bXAgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKaWYoIGlzX2FycmF5KCR0bXApICkgJGltcG9ydHByZWZzID0gJHRtcDsKCmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgdHJ5IHsKICAgICRfZnAgPSAkaWQuJ2ZpbGUnOwogICAgLy8gY2hlY2sgdGhlIGZpbGUKICAgIGlmKCAhaXNzZXQoJF9GSUxFUykgfHwgIWlzc2V0KCRfRklMRVNbJF9mcF0pIHx8ICRfRklMRVNbJF9mcF1bJ25hbWUnXSA9PSAnJyApIHsKICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfcHJvYmxlbV91cGxvYWQnKSk7CiAgICB9CiAgICBpZiggJF9GSUxFU1skX2ZwXVsnc2l6ZSddID09IDAgfHwgJF9GSUxFU1skX2ZwXVsnZXJyb3InXSAhPSAwICkgewogICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9ibGVtX3VwbG9hZCcpKTsKICAgIH0KICAgICRmaCA9IGZvcGVuKCRfRklMRVNbJF9mcF1bJ3RtcF9uYW1lJ10sJ3InKTsKICAgIGlmKCAhJGZoICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3VwbG9hZCcpKTsKICAgIHdoaWxlKCAhZmVvZigkZmgpICkgewogICAgICAkbGluZSA9IGNnZV91dGlsczo6ZmdldHMoJGZoKTsKICAgICAgJGxpbmUgPSB0cmltKCRsaW5lKTsKICAgICAgaWYoICEkbGluZSApIGNvbnRpbnVlOwogICAgICBpZiggIXN0YXJ0c3dpdGgoJGxpbmUsJyMjJykgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWxlZm9ybWF0JykpOwogICAgICAkbGluZSA9IHRyaW0oc3Vic3RyKCRsaW5lLDIpKTsKICAgICAgJGZpZWxkcyA9IGNnZV9hcnJheTo6c21hcnRfZXhwbG9kZSgkbGluZSwkaW1wb3J0cHJlZnNbJ2RlbGltaXRlciddKTsKICAgICAgaWYoIGNvdW50KCRmaWVsZHMpIDwgMSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnKSk7CiAgICAgIGJyZWFrOwogICAgfQogICAgZmNsb3NlKCRmaCk7CgogICAgJGltcG9ydHByZWZzWydkZWxldGVfdXNlcnMnXSA9IChpbnQpY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywnZGVsZXRlX3VzZXJzJywwKTsKICAgICRpbXBvcnRwcmVmc1snZGVsaW1pdGVyJ10gPSB0cmltKGNnZV91dGlsczo6Z2V0X3BhcmFtKCRwYXJhbXMsJ2RlbGltaXRlcicpKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycsc2VyaWFsaXplKCRpbXBvcnRwcmVmcykpOwoKICAgICRmbiA9IHRlbXBuYW0oVE1QX0NBQ0hFX0xPQ0FUSU9OLCdmZXVfaW1wb3J0Jyk7CiAgICBpZiggISRmbiApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2NyZWF0ZXRtcGZpbGUnKSk7CiAgICBAY29weSgkX0ZJTEVTWyRfZnBdWyd0bXBfbmFtZSddLCRmbik7CgogICAgJHJldHVybl91cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkKTsKICAgICRzbWFydHktPmFzc2lnbigncmV0dXJuX3VybCcsJHJldHVybl91cmwpOwoKICAgICR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2FkbWluX2RvaW1wb3J0JywgJHJldHVybmlkLGFycmF5KCdmaWxlJz0+YmFzZW5hbWUoJGZuKSkpLicmc2hvd3RlbXBsYXRlPWZhbHNlJzsKICAgICRzbWFydHktPmFzc2lnbignaWZyYW1lX3NyYycsICR1cmwpOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9pbXBvcnRfdXNlcnMyLnRwbCcpOwogICAgcmV0dXJuOwogIH0KICBjYXRjaCggRXhjZXB0aW9uICRlICkgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZS0+R2V0TWVzc2FnZSgpKTsKICB9Cn0KCi8vIGJ1aWxkIHRoZSBmb3JtLgokZ3JvdXBsaXN0ID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0R3JvdXBMaXN0KCkpOwppZiggIWNvdW50KCRncm91cGxpc3QpICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnbm9ncm91cHMnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQoKJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2ltcG9ydF91c2VycycpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdvcHRpb25zJywkaW1wb3J0cHJlZnMpOwokc21hcnR5LT5hc3NpZ24oJ2dyb3VwbGlzdCcsJGdyb3VwbGlzdCk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5faW1wb3J0X3VzZXJzLnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojQkVHSU5fTElDRU5TRQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRnJvbnRFbmRVc2VycyAoYykgMjAwOC0yMDE0IGJ5IFJvYmVydCBDYW1wYmVsbAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkCiMgIHdlYnNpdGUuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFZpc2l0IHRoZSBDTVNNUyBIb21lcGFnZSBhdDogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHsKCWlmKCBpc3NldCgkcGFyYW1zWyd1c2VyX2lkJ10pICkgewoJCSR0aGlzLT5Mb2dvdXRVc2VyKCRwYXJhbXNbJ3VzZXJfaWQnXSwKCQkJCQkJCQkJCQkkdGhpcy0+TGFuZygnYWRtaW5fbG9nb3V0JykpOwoJfQp9CgkKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCd1c2VycycpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_resetsession_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSByZXR1cm47CgppZiggaXNzZXQoJHBhcmFtc1snZGVmYXVsdHMnXSkgKSB7CiAgJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ19yZXNldHNlc3Npb25fdGVtcGxhdGUudHBsJyk7CiAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX3Jlc2V0c2Vzc2lvbicsJHRlbXBsYXRlKTsKICB9CgogICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICdyZXNldF9zZXNzaW9uJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnICk7CiAgcmV0dXJuOwp9CgppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLHRyaW0oJHBhcmFtc1sncmVzZXRzZXNzaW9uX3RlbXBsYXRlJ10pKTsKICAkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygndGVtcGxhdGVfc2F2ZWQnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ3Jlc2V0X3Nlc3Npb24nLCAnJywgJ2FkbWluX3RlbXBsYXRlcycgKTsKICByZXR1cm47Cn0KCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_setlostun_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSByZXR1cm47CgppZiggaXNzZXQoICRwYXJhbXNbJ2RlZmF1bHRzJ10gKSApIHsKICAvLwogIC8vIFJlc2V0IHRvIGZhY3RvcnkgZGVmYXVsdHMKICAvLwogICRmbiA9IGNtc19qb2luX3BhdGgoX19ESVJfXywndGVtcGxhdGVzJywnb3JpZ19sb3N0dW5mb3JtX3RlbXBsYXRlLnRwbCcpOwogIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKSB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19sb3N0dW5mb3JtJywkdGVtcGxhdGUpOwogIH0KCiAgJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX2xvc3R1bmZvcm1fY29uZmlybV90ZW1wbGF0ZS50cGwnKTsKICBpZiggZmlsZV9leGlzdHMoICRmbiApICkgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJywkdGVtcGxhdGUpOwogIH0KCiAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ3RlbXBsYXRlX3Jlc2V0ZGVmYXVsdHMnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZScsICcnLCAnYWRtaW5fdGVtcGxhdGVzJyApOwogIHJldHVybjsKfQoKCmlmKCBpc3NldCggJHBhcmFtc1snc3VibWl0J10gKSApIHsKICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybScsdHJpbSgkcGFyYW1zWydsb3N0dW5mb3JtJ10pKTsKICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJyx0cmltKCRwYXJhbXNbJ2xvc3R1bmZvcm1fY29uZmlybSddKSk7CiAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ3RlbXBsYXRlX3NhdmVkJykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICdsb3N0dXNlcm5hbWVfdGVtcGxhdGUnICk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZScsICcnLCAnYWRtaW5fdGVtcGxhdGVzJyApOwogIHJldHVybjsKfQoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_settings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnc2l0ZXByZWZzJykgKTsKCmVjaG8gJzxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogODAlOyI+JzsKZWNobyAkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ2JhY2snKSwnaWNvbnMvc3lzdGVtL2JhY2suZ2lmJyxhcnJheSgpLCcnLCcnLGZhbHNlKTsKZWNobyAnPC9kaXY+JzsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdwcmVmcycsICR0aGlzLT5MYW5nKCdwcmVmZXJlbmNlcycpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnYXV0aCcsICR0aGlzLT5MYW5nKCdhdXRoZW50aWNhdGlvbicpKTsKZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7CmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdwcmVmcycsJHBhcmFtcyk7CmluY2x1ZGUoX19ESVJfXy4nL2Z1bmN0aW9uLmFkbWluX3ByZWZzdGFiLnBocCcpOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdhdXRoJywkcGFyYW1zKTsKaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fYXV0aHRhYi5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_setviewuser_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgcmV0dXJuOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHRzJ10pICkgewogICRmbiA9IGNtc19qb2luX3BhdGgoX19ESVJfXywndGVtcGxhdGVzJywnb3JpZ192aWV3dXNlcl90ZW1wbGF0ZS50cGwnKTsKICBpZiggZmlsZV9leGlzdHMoICRmbiApICkgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfdmlld3VzZXInLCR0ZW1wbGF0ZSk7CiAgfQoKICAkdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAndmlld191c2VyJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnICk7CiAgcmV0dXJuOwp9CgppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc192aWV3dXNlcicsdHJpbSgkcGFyYW1zWyd2aWV3dXNlcl90ZW1wbGF0ZSddKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ3ZpZXdfdXNlcicsICcnLCAnYWRtaW5fdGVtcGxhdGVzJyApOwogIHJldHVybjsKfQovKgogKiBFT0YKICovCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_set_auth.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKSByZXR1cm47CiR0aGlzLT5TZXRDdXJyZW50VGFiKCdhdXRoJyk7CgokcXVlcnkgPSAnU0VMRUNUIGNvdW50KGlkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2Vycyc7CiRudXNlcnMgPSAkZGItPkdldE9uZSgkcXVlcnkpOwppZiggJG51c2VycyA+IDAgJiYgaXNzZXQoJHBhcmFtc1sncHdzYWx0J10pICkKICB7CiAgICAkb2xkc2FsdCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwd3NhbHQnKTsKICAgIGlmKCAkb2xkc2FsdCAhPSAkcGFyYW1zWydwd3NhbHQnXSApCiAgICAgIHsKCSR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfYWRqdXN0c2FsdCcpKTsKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2F1dGgnLCAnJywgJ2FkbWluX3NldHRpbmdzJyk7CglyZXR1cm47CiAgICAgIH0KICB9CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgncHdzYWx0Jyx0cmltKCRwYXJhbXNbJ3B3c2FsdCddKSk7CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcsKGludCkkcGFyYW1zWydyZXF1aXJlX29uZWdyb3VwJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcsKGludCkkcGFyYW1zWydkZWZhdWx0X2dyb3VwJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0dW4nLChpbnQpJHBhcmFtc1snc3VwcG9ydF9sb3N0dW4nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19jaGFuZ2V1c2VybmFtZScsKGludCkkcGFyYW1zWydhbGxvd19jaGFuZ2V1c2VybmFtZSddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N1cHBvcnRfbG9zdHB3JywoaW50KSRwYXJhbXNbJ3N1cHBvcnRfbG9zdHB3J10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnLChpbnQpJHBhcmFtc1sncHdmbGRsZW4nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtaW5fcGFzc3dvcmRsZW5ndGgnLChpbnQpJHBhcmFtc1snbWlucHdsZW4nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnLChpbnQpJHBhcmFtc1snbWF4cHdsZW4nXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcsKGludCkkcGFyYW1zWyd1bmZsZGxlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ21pbl91c2VybmFtZWxlbmd0aCcsKGludCkkcGFyYW1zWydtaW51bmxlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcsKGludCkkcGFyYW1zWydtYXh1bmxlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnLHRyaW0oJHBhcmFtc1snY29va2llbmFtZSddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVfa2VlcGFsaXZlJywoaW50KSRwYXJhbXNbJ2Nvb2tpZV9rZWVwYWxpdmUnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcsKGludCkkcGFyYW1zWyd1c2VybmFtZV9pc19lbWFpbCddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnLChpbnQpJHBhcmFtc1snYWxsb3dfZHVwbGljYXRlX2VtYWlscyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnLChpbnQpJHBhcmFtc1snYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzaWduaW5fYnV0dG9uJyx0cmltKCRwYXJhbXNbJ3NpZ25pbl9idXR0b24nXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJyx0cmltKCRwYXJhbXNbJ3JlcXVpcmVkX2ZpZWxkX21hcmtlciddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsdHJpbSgkcGFyYW1zWydyZXF1aXJlZF9maWVsZF9jb2xvciddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfbWFya2VyJyx0cmltKCRwYXJhbXNbJ2hpZGRlbl9maWVsZF9tYXJrZXInXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJyx0cmltKCRwYXJhbXNbJ2hpZGRlbl9maWVsZF9jb2xvciddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfbWFya2VyJyx0cmltKCRwYXJhbXNbJ3NlY3VyZV9maWVsZF9tYXJrZXInXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2VjdXJlX2ZpZWxkX2NvbG9yJyx0cmltKCRwYXJhbXNbJ3NlY3VyZV9maWVsZF9jb2xvciddKSk7CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkZm9yZ290cGFzc3dkJyx0cmltKCRwYXJhbXNbJ3BhZ2VpZGZvcmdvdHBhc3N3ZCddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnLHRyaW0oJHBhcmFtc1sncGFnZWlkX2NoYW5nZXNldHRpbmdzJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsdHJpbSgkcGFyYW1zWydwYWdlaWRfbG9naW4nXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcsdHJpbSgkcGFyYW1zWydwYWdlaWRfbG9nb3V0J10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScsdHJpbSgkcGFyYW1zWydwYWdlaWRfYWZ0ZXJ2ZXJpZnknXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnLHRyaW0oJHBhcmFtc1sncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnXSkpOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2Vjb21tX29yZGVyY2FuY2VsbGVkJ10pICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbicsKGludCkkcGFyYW1zWydlY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10pOwogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdlY29tbV9wYWlkcmVnaXN0cmF0aW9uJykgKQogICAgICB7CgkkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlclVwZGF0ZWQnLGZhbHNlKTsKCSR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcsZmFsc2UpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyVXBkYXRlZCcpOwoJJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJEZWxldGVkJyk7CiAgICAgIH0KICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdlY29tbV9vcmRlcmNhbmNlbGxlZCcsdHJpbSgkcGFyYW1zWydlY29tbV9vcmRlcmNhbmNlbGxlZCddKSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJkZWxldGVkJyx0cmltKCRwYXJhbXNbJ2Vjb21tX29yZGVyZGVsZXRlZCddKSk7CiAgfQokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdhdXRoJywgJycsICdhZG1pbl9zZXR0aW5ncycpOw==]]></data>
	</file>
	<file>
	  <filename>/action.admin_templates.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSByZXR1cm47CgpmdW5jdGlvbiBfRGlzcGxheUFkbWluTG9naW5UZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCnsKICAgIGVjaG8gY2dlX3RlbXBsYXRlX2FkbWluOjpnZXRfc2luZ2xlX3RlbXBsYXRlX2Zvcm0oICRtb2R1bGUsICRpZCwgJHJldHVybmlkLCAnZmV1c2Vyc19sb2dpbmZvcm0nLCAnbG9naW50ZW1wbGF0ZScsICcnLCAnb3JpZ19sb2dpbmZvcm0udHBsJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnKTsKfQoKCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5Mb2dvdXRUZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCnsKICAgIGVjaG8gY2dlX3RlbXBsYXRlX2FkbWluOjpnZXRfc2luZ2xlX3RlbXBsYXRlX2Zvcm0oICRtb2R1bGUsICRpZCwgJHJldHVybmlkLCAnZmV1c2Vyc19sb2dvdXRmb3JtJywgJ2xvZ291dHRlbXBsYXRlJywgJycsICdvcmlnX2xvZ291dGZvcm0udHBsJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnKTsKfQoKCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5DaGFuZ2VTZXR0aW5nc1RlbXBsYXRlVGFiKCAmJG1vZHVsZSwgJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKewogICAgZWNobyBjZ2VfdGVtcGxhdGVfYWRtaW46OmdldF9zaW5nbGVfdGVtcGxhdGVfZm9ybSggJG1vZHVsZSwgJGlkLCAkcmV0dXJuaWQsICdmZXVzZXJzX2NoYW5nZXNldHRpbmdzZm9ybScsICdjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZScsICcnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29yaWdfY2hhbmdlc2V0dGluZ3MudHBsJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnKTsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldGNoYW5nZXNldHRpbmdzdGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZScsJG1vZHVsZS0+TGFuZygndGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlJywKCQkJICAkbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSggZmFsc2UsICRpZCwKCQkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdmZXVzZXJzX2NoYW5nZXNldHRpbmdzZm9ybScpLAoJCQkJCQkgICAndGVtcGxhdGVjb250ZW50JykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdzdWJtaXQnKSkpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdkZWZhdWx0cycsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRzJywKCQkJCQkJICAgICAgJG1vZHVsZS0+TGFuZygnZGVmYXVsdHMnKSkpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkbW9kdWxlLT5DcmVhdGVGb3JtRW5kKCkpOwogIGVjaG8gJG1vZHVsZS0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZWZvcm0udHBsJyk7Cn0KCgpmdW5jdGlvbiBfRGlzcGxheUFkbWluRm9yZ290UGFzc3dvcmRUZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCnsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldGZvcmdvdHB3dGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZTEnLCRtb2R1bGUtPkxhbmcoJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTEnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmRmb3JtJyksCgkJCQkJCSAgICd0ZW1wbGF0ZWNvbnRlbnQxJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUyJywkbW9kdWxlLT5MYW5nKCdmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTInLAoJCQkgICRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmRlbWFpbGZvcm0nKSwKCQkJCQkJICAgJ3RlbXBsYXRlY29udGVudDInKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZTMnLCRtb2R1bGUtPkxhbmcoJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTMnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmR2ZXJpZnlmb3JtJyksCgkJCQkJCSAgICd0ZW1wbGF0ZWNvbnRlbnQzJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdzdWJtaXQnKSkpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdkZWZhdWx0cycsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRzJywKCQkJCQkJICAgICAgJG1vZHVsZS0+TGFuZygnZGVmYXVsdHMnKSkpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkbW9kdWxlLT5DcmVhdGVGb3JtRW5kKCkpOwogIGVjaG8gJG1vZHVsZS0+UHJvY2Vzc1RlbXBsYXRlKCdmb3Jnb3Rwd190ZW1wbGF0ZWZvcm0udHBsJyk7Cn0KCmVjaG8gJzxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogODAlOyI+JzsKZWNobyAkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsCgkJCSAgICAkdGhpcy0+TGFuZygnYmFjaycpLCdpY29ucy9zeXN0ZW0vYmFjay5naWYnLGFycmF5KCksJycsJycsZmFsc2UpLic8L2Rpdj48YnIvPic7CmVjaG8gJzwvZGl2Pic7CgplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnbG9naW50ZW1wbGF0ZScsICR0aGlzLT5MYW5nKCdsb2dpbl90ZW1wbGF0ZScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnbG9nb3V0dGVtcGxhdGUnLCAkdGhpcy0+TGFuZygnbG9nb3V0X3RlbXBsYXRlJykpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZScsICR0aGlzLT5MYW5nKCdjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygnZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZScsICR0aGlzLT5MYW5nKCdsb3N0dXNlcm5hbWVfdGVtcGxhdGUnKSk7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ3ZpZXdfdXNlcicsICR0aGlzLT5MYW5nKCd2aWV3dXNlcl90ZW1wbGF0ZScpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAncmVzZXRfc2Vzc2lvbicsICR0aGlzLT5MYW5nKCdyZXNldHNlc3Npb25fdGVtcGxhdGUnKSk7CmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCgpOwplY2hvICR0aGlzLT5TdGFydFRhYignbG9naW50ZW1wbGF0ZScsJHBhcmFtcyk7Cl9EaXNwbGF5QWRtaW5Mb2dpblRlbXBsYXRlVGFiKCAkdGhpcywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignbG9nb3V0dGVtcGxhdGUnLCRwYXJhbXMpOwpfRGlzcGxheUFkbWluTG9nb3V0VGVtcGxhdGVUYWIoICR0aGlzLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZScsJHBhcmFtcyk7Cl9EaXNwbGF5QWRtaW5DaGFuZ2VTZXR0aW5nc1RlbXBsYXRlVGFiKCAkdGhpcywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYignZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnLCRwYXJhbXMpOwpfRGlzcGxheUFkbWluRm9yZ290UGFzc3dvcmRUZW1wbGF0ZVRhYiggJHRoaXMsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZScsJHBhcmFtcyk7CmluY2x1ZGUoX19ESVJfXy4nL2Z1bmN0aW9uLmFkbWluX2xvc3R1c2VybmFtZV90ZW1wbGF0ZS5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CgplY2hvICR0aGlzLT5TdGFydFRhYigndmlld191c2VyJywkcGFyYW1zKTsKaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fdmlld3VzZXJfdGVtcGxhdGUucGhwJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3Jlc2V0X3Nlc3Npb24nLCRwYXJhbXMpOwppbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9yZXNldHNlc3Npb25fdGVtcGxhdGUucGhwJyk7CmVjaG8gJHRoaXMtPkVuZFRhYigpOwplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIERPIFRIRSBBQ1RJT04KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKaWYgKCEgJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoKSkgIHsKICBlY2hvICJCcmVha2luZyBhbiBlbnRyeSwgYXJlIHdlPyI7CiAgcmV0dXJuOwogfQoKJGRiID0gJHRoaXMtPkdldERiKCk7CmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnc2l0ZXByZWZzJykgfHwgJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgewogIGVjaG8gJzxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyB3aWR0aDogODAlOyI+JzsKICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3NpdGVwcmVmcycpICkgewogICAgZWNobyAkdGhpcy0+Q3JlYXRlSW1hZ2VMaW5rKCRpZCwnYWRtaW5fc2V0dGluZ3MnLCRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2xibF9zZXR0aW5ncycpLAoJCQkJJ2ljb25zL3RvcGZpbGVzL3ByZWZlcmVuY2VzLmdpZicsYXJyYXkoKSwnJywnJyxmYWxzZSk7CiAgfQogIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSB7CiAgICBlY2hvICR0aGlzLT5DcmVhdGVJbWFnZUxpbmsoJGlkLCdhZG1pbl90ZW1wbGF0ZXMnLCRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2xibF90ZW1wbGF0ZXMnKSwKCQkJCSdpY29ucy90b3BmaWxlcy90ZW1wbGF0ZS5naWYnLGFycmF5KCksJycsJycsZmFsc2UpOwogIH0KICBlY2hvICc8L2Rpdj4nOwp9CgovLyB0aGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncHJvcGVydGllcycpICkgewogIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ3Byb3BlcnRpZXMnLCAkdGhpcy0+TGFuZygndXNlcl9wcm9wZXJ0aWVzJykpOwp9CmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZ3JvdXBzJykgKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZ3JvdXBzJywgJHRoaXMtPkxhbmcoJ2dyb3VwcycpKTsKfQppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzJykgKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndXNlcnMnLCAkdGhpcy0+TGFuZygndXNlcnMnKSk7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndXNlcmhpc3RvcnknLCAkdGhpcy0+TGFuZygndXNlcmhpc3RvcnknKSk7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnYWRtaW4nLCAkdGhpcy0+TGFuZygnYWRtaW4nKSk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKLy8gVGhlY29udGVudCBvZiB0aGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncHJvcGVydGllcycpICkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdwcm9wZXJ0aWVzJywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9wcm9wZXJ0aWVzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYigpOwp9CiAgICAKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdncm91cHMnKSApIHsKICBlY2hvICR0aGlzLT5TdGFydFRhYignZ3JvdXBzJywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9ncm91cHN0YWIucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7Cn0KaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd1c2VycycpICkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCd1c2VycycsJHBhcmFtcyk7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fdXNlcnN0YWIucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgCiAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3VzZXJoaXN0b3J5JywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9hY3Rpb24udXNlcmhpc3RvcnkucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgCiAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2FkbWluJywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9hZG1pbnRhYi5waHAnKTsKICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKfQoKZWNobyAkdGhpcy0+RW5kVGFiQ29udGVudCgpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwoKJGdpZCA9IGZhbHNlOwppZiggaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSAkZ2lkID0gKGludCkkcGFyYW1zWydncm91cF9pZCddOwoKJGdyb3VwbmFtZSA9ICcnOwokZ3JvdXBkZXNjID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10gKSApICRncm91cG5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSApICkgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRHUk9VUFMpICkgewogIC8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiAgaWYoICRncm91cG5hbWUgPT0gJycgfHwgJGdyb3VwZGVzYyA9PSAnJyApIHsKICAgIHVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQoKICAvLyBtYWtlIHN1cmUgdGhlIGdyb3VwIG5hbWUgZG9lc24ndCBhbHJlYWR5IGV4aXN0CiAgJHRtcCA9ICR0aGlzLT5HZXRHcm91cElEKCAkZ3JvdXBuYW1lICk7CiAgaWYoICR0bXAgIT0gJGdpZCAmJiAkdG1wICE9ICcnICkgewogICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgJHBhcmFtc1snZXJyb3InXSA9ICcxJzsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ncm91cGV4aXN0cycpOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQp9CgovLyBtYWtlIHN1cmUgbm90IGFsbCBwcm9wZXJ0aWVzIGFyZSBvZmYuCi8vIGFuZCB0aGF0IHdlJ3JlIG5vdCBzZXR0aW5nIGEgbG9zdHVuIGZsYWcgZm9yIGEgaGlkZGVuIG9yIG9wdGlvbmFsIGZpZWxkLgppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUFJPUFMpICkgewogICAgJHJlbG5hZGRlZCA9IDA7CiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pOyAkaSsrICkgewogICAgICAgIGlmKCAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXSAhPSAwICkgJHJlbG5hZGRlZCsrOwogICAgICAgIGlmKCAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXSAhPSAyICkgewogICAgICAgICAgICAvLyBpdCdzIG5vdCBhIHJlcXVpcmVkIGZpZWxkLi4uLiBzbyBjYW4ndCBiZSB1c2VkIGluIGxvc3R1bgogICAgICAgICAgICAkc3RyID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKICAgICAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2xvc3R1bl8nLiRzdHJdKSApIHsKICAgICAgICAgICAgICAgIHVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJyk7CiAgICAgICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGlmKCAkcmVsbmFkZGVkID09IDAgKSB7CiAgICAgICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vcmVsYXRpb25zJyk7CiAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgcmV0dXJuOwogICAgfQp9CgovLyB3ZSdyZSBjbGVhciB0byBhZGQgb3IgdXBkYXRlCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKSApIHsKICBpZiggJGdpZCAhPT0gZmFsc2UgKSB7CiAgICAkcmV0ID0gJHRoaXMtPlNldEdyb3VwKCAkZ2lkLCAkZ3JvdXBuYW1lLCAkZ3JvdXBkZXNjICk7CiAgICBpZiggJHJldFswXSA9PSBGQUxTRSApIHsKICAgICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgICAkcGFyYW1zWydlcnJvciddID0gJzEnOwogICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwogICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgcmV0dXJuOwogICAgfQogIH0KICBlbHNlIHsKICAgICRyZXQgPSAkdGhpcy0+QWRkR3JvdXAoICRncm91cG5hbWUsICRncm91cGRlc2MgKTsKICAgIGlmKCAkcmV0WzBdID09IEZBTFNFICkgewogICAgICB1bnNldCgkcGFyYW1zWydzdWJtaXQnXSk7CiAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXRbMV07CiAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICByZXR1cm47CiAgICB9CiAgICAkZ2lkID0gJHJldFsxXTsKICB9Cn0KCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUykgKSB7CiAgLy8gYWxzbyBhZGQgdGhlIHByb3BlcnR5IGNob2ljZXMKICAkdGhpcy0+RGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdpZCApOwogIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRwYXJhbXNbJ2lucHV0X25hbWUnXSk7ICRpKysgKSB7CiAgICAkcHJvcG5hbWUgPSAnJzsKICAgICRzb3J0b3JkZXIgPSAnJzsKICAgICRsb3N0dW4gPSAtMTsKICAgICRyZXF1aXJlZCA9IDA7CgogICAgJHByb3BuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKICAgICRyZXF1aXJlZCA9ICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ11bJGldOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kcHJvcG5hbWVdICkgKSB7CiAgICAgICRsb3N0dW4gPSAxOwogICAgfQoKICAgIGlmKCAkcmVxdWlyZWQgIT0gMCAmJiAkcHJvcG5hbWUgIT0gJycpIHsKICAgICAgJHJlcyA9ICR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRnaWQsICRwcm9wbmFtZSwgJGksICRsb3N0dW4sICRyZXF1aXJlZCApOwogICAgfQogIH0KfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ25hbWUnXSA9ICRncm91cG5hbWU7CiRwYXJtc1snZGVzY3JpcHRpb24nXSA9ICRncm91cGRlc2M7CiRwYXJtc1snaWQnXSA9ICRnaWQ7CiRzdHIgPSAnT25DcmVhdGVHcm91cCc7CmlmKCBpc3NldCgkcGFyYW1zWydncm91cF9pZCddKSApIHsKICAkc3RyID0gJ09uVXBkYXRlR3JvdXAnOwp9CiR0aGlzLT5TZW5kRXZlbnQoJHN0ciwkcGFybXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgkc3RyLCRwYXJtcyk7CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7Ci8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser1.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZHVzZXInICkgKSByZXR1cm47CgovLyBhcmUgd2UgY2FuY2VsbGluZwppZiAoaXNzZXQgKCRwYXJhbXNbJ2NhbmNlbCddKSkgewogICR0aGlzLT5TZXRDdXJyZW50VGFiKCd1c2VycycpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7Cn0KCi8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSk7CiRyZXBlYXQgICA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CgokcmV0ID0gJHRoaXMtPl9oYW5kbGVVc2VySW5mb1ZhbGlkYXRpb24oICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSwgdHJ1ZSApOwpzd2l0Y2goICRyZXQgKSB7CiBjYXNlIC0xOiAvLyBlcnJvcgogICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgJHBhcmFtc1snbWVzc2FnZSddID0gJG1lc3NhZ2U7CiAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKICAgcmV0dXJuOwogICBicmVhazsKIGNhc2UgMDogIC8vIG5vIGVycm9yLCBidXQgZG9uJ3QgY29udGludWUgb3BlcmF0aW9uCiAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKICAgcmV0dXJuOwogICBicmVhazsKIGNhc2UgMTogIC8vIGFsbCBpcyBnb29kLCBjb250aW51ZSBvcGVyYXRpb24KICAgYnJlYWs7Cn0KCgovLyBjb252ZXJ0IHRoZSBleHBpcmVzIGZpZWxkIHRvIGEgcmVhbCB0aW1lCiRleHBpcmVzID0gTlVMTDsKCi8vIGFuZCBzdG9yZSB0aGlzIGFsbCBpbiB0aGUgcGFyYW1zLCAKJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSA9ICR1c2VybmFtZTsKJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSA9ICRwYXNzd29yZDsKJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSA9ICRyZXBlYXQ7CgovLyBhbmQgZ28gdG8gc3RlcCAyCiR0aGlzLT5fcGFyYW1zX3RvX3Nlc3Npb24oJHBhcmFtcyk7ICAgIAokdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fYWRkdXNlcjInLCAkcmV0dXJuaWQsIGFycmF5KCksIHRydWUgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBqdXN0IGEgZHVtYiB3cmFwcGVyLgppbmNsdWRlIF9fRElSX18uJy9hY3Rpb24uZG9fZWRpdHVzZXIyLnBocCc7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser3.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZHVzZXInICkgKSB7CiAgcmV0dXJuOwp9Cgokc3RlcDFfcGFyYW1zID0gJyc7CiRzdGVwMV9wYXJhbXNfb3JpZyA9ICcnOwppZiggaXNzZXQoJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10pICkgewogICRzdGVwMV9wYXJhbXNfb3JpZyA9ICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddOwogICRzdGVwMV9wYXJhbXMgPSB1bnNlcmlhbGl6ZShiYXNlNjRfZGVjb2RlKCRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddKSk7CiAgdW5zZXQoJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10pOwp9CgovLyBkbyB3ZSB3YW50IHRvIGdvIGJhY2sKaWYoIGlzc2V0KCAkcGFyYW1zWydiYWNrJ10gKSApIHsKICAvLyB5dXAgd2UgZG8KICAkcGFyYW1zID0gJHN0ZXAxX3BhcmFtczsKICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkdXNlcicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwp9CmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApIHsKICAvLyB5dXAgd2UgZG8KICAkdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAndXNlcnMnLCAkcGFyYW1zICk7Cn0KCgovLyBnZXQgZmllbGQgZGVmaW5pdGlvbnMuCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CgovLyBnZXQgdGhlIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNlbGVjdGVkIGdyb3VwKHMpLgokcGFybXMxID0gJHN0ZXAxX3BhcmFtczsKJGdyb3VwcHJvcHMgPSBhcnJheSgpOwokZ3JvdXBpZHMgPSBhcnJheSgpOwpmb3JlYWNoKCAkcGFybXMxIGFzICRrZXkgPT4gJHZhbHVlICkgewogIGlmKCBzdGFydHN3aXRoKCRrZXksJ21lbWJlcm9mXycpICkgewogICAgJGdpZCA9IChpbnQpc3Vic3RyKCRrZXksc3RybGVuKCdtZW1iZXJvZl8nKSk7CiAgICAkZ3JvdXBpZHNbXSA9ICRnaWQ7CiAgICAKICAgICRyZWxucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CiAgICAkZ3JvdXBwcm9wcyA9IFJSVXRpbHM6OmFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRncm91cHByb3BzLCAkcmVsbnMgKTsKICAgIHVhc29ydCggJGdyb3VwcHJvcHMsYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7CiAgfQp9CiRncm91cHByb3BzID0gY2dlX2FycmF5Ojp0b19oYXNoKCRncm91cHByb3BzLCduYW1lJyk7CgovLyBnZXQgdGhlIGZpZWxkIGluZm8KJGZpZWxkbGlzdCA9IGFycmF5KCk7CmZvcmVhY2goICRwYXJhbXMgYXMgJGsgPT4gJHYgKSB7CiAgaWYoIHByZWdfbWF0Y2goJy9eaGlkZGVuXy8nLCAkayApICkgewogICAgJGZsZG5hbWUgPSBzdWJzdHIoICRrLCBzdHJsZW4oJ2hpZGRlbl8nKSk7CiAgICAkZmllbGRsaXN0WyRmbGRuYW1lXSA9ICR2OwogIH0KfQoKLy8gbm93IG1lcmdlIGZvcm0gdmFsdWVzIGZvciBlYWNoIG9mIHRoZSBmaWVsZHMKZm9yZWFjaCggJGZpZWxkbGlzdCBhcyAkZmxkbmFtZSA9PiAkcGFzc2VkX3ZhbHVlICkgewogICR2ID0gJyc7CiAgc3dpdGNoKCRkZWZuc1skZmxkbmFtZV1bJ3R5cGUnXSkgewogIGNhc2UgJzgnOiAvLyBkYXRlCiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nTW9udGgnXSkgKSB7CiAgICAgICR2ID0gbWt0aW1lKDAsMCwwLAoJCSAgKGludCkkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lLidNb250aCddLAoJCSAgKGludCkkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lLidEYXknXSwKCQkgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nWWVhciddKTsKICAgIH0KICAgIGJyZWFrOwoKICBkZWZhdWx0OgogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWVdKSApIHsKICAgICAgJHYgPSAkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lXTsKICAgIH0KICAgIGJyZWFrOwogIH0KICBpZiggJHYgIT0gJycgKSAkZmllbGRsaXN0WyRmbGRuYW1lXSA9ICR2Owp9CgovLyBub3cgdmFsaWRhdGUKZm9yZWFjaCggJGZpZWxkbGlzdCBhcyAkbmFtZSA9PiAkdmFsdWUgKSB7CiAgLy8gcHJvY2VzcyBlbXB0eSByZXF1aXJlZCBmaWVsZHMKICAvLyB3ZSBkb24ndCBjYXJlIGFib3V0IGVtcHR5IG9wdGlvbmFsIG9uZXMKICAkZGVmbiA9JiAkZGVmbnNbJG5hbWVdOwogICRyZWxuID0mICRncm91cHByb3BzWyRuYW1lXTsKCiAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgKSB7CiAgICAvLyByZXF1aXJlZCBmaWVsZC4KICAgIGlmKCAkZGVmblsndHlwZSddID09IDYgKSB7IC8vIEltYWdlIGZpZWxkCiAgICAgIGlmKCAoIWlzc2V0KCRfRklMRVNbJGlkLidpbnB1dF8nLiRuYW1lXSkgfHwgJF9GSUxFU1skaWQuJ2lucHV0XycuJG5hbWVdWydzaXplJ10gPT0gMCkgJiYKCSAgJHZhbHVlID09ICcnKSB7CgkvLyBhIHJlcXVpcmVkIGZpZWxkIGlzIGVtcHR5CgkkcGFyYW1zID0gJHN0ZXAxX3BhcmFtczsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwoJcmV0dXJuOwogICAgICB9CiAgICB9CiAgICBlbHNlIGlmKCAkdmFsdWUgPT0gJycgKSB7CiAgICAgIC8vIGEgcmVxdWlyZWQgZmllbGQgaXMgZW1wdHkKICAgICAgJHBhcmFtcyA9ICRzdGVwMV9wYXJhbXM7CiAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbScsJG5hbWUpOwogICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fYWRkdXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcywgdHJ1ZSApOwogICAgICByZXR1cm47CiAgICB9CiAgfQogIAogIC8vIHZhbGlkYXRlIGZpbGxlZCBpbiBmaWVsZHMKICAvLyBhbmQgZG8gcG9zdCBwcm9jZXNzaW5nCiAgaWYoICR2YWx1ZSAhPSAnJyAmJiAkZGVmblsndHlwZSddICE9IDYgKSB7CiAgICAvLyB2YWxpZGF0ZSB1bmlxdWUgdmFsdWVzCiAgICBpZiggJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddICkgewogICAgICAvLyBtYWtlIHN1cmUgdGhhdCB0aGlzIHZhbHVlIGRvZXNuJ3QgYWxyZWFkeSBleGlzdAogICAgICBpZiggISR0aGlzLT5Jc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKC0xLCRuYW1lLCR2YWx1ZSkgKSB7CgkkcGFyYW1zID0gJHN0ZXAxX3BhcmFtczsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZScsJG5hbWUsJHZhbHVlKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CglyZXR1cm47CiAgICAgIH0KICAgIH0KCiAgICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiAgICBjYXNlIDA6IC8vIHRleHQKICAgICAgLy8gbm90IG11Y2ggd2UgY2FuIGRvIHRvIHZhbGlkYXRlIGEgdGV4dCBmaWVsZC4KICAgICAgYnJlYWs7CgogICAgY2FzZSAxOiAvLyBjaGVja2JveAogICAgICAvLyBvciBhIGNoZWNrYm94CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgMjogLy8gZW1haWwKICAgICAgLy8gZW1haWwgYWRkcmVzc2VzIGNhbiBiZSB2YWxpZGF0ZWQgdGhvdWdoCiAgICAgICRyZXMgPSAkdGhpcy0+SXNWYWxpZEVtYWlsQWRkcmVzcygkdmFsdWUsLTEsVFJVRSk7CiAgICAgIGlmKCAhaXNfYXJyYXkoJHJlcykgfHwgJHJlc1swXSA9PSBGQUxTRSApIHsKCSRwYXJhbXMgPSAkc3RlcDFfcGFyYW1zOwoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfZW1haWxhbHJlYWR5dXNlZCcpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKCXJldHVybjsKICAgICAgfQogICAgICBicmVhazsKCiAgICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgIC8vIGEgdGV4dGFyZWEgY2FuIGJlIHZhbGlkYXRlZCBmb3IgbGVuZ3RoLgogICAgICBicmVhazsKCiAgICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAgIC8vIGhvdyBjYW4gd2UgdmFsaWRhdGUgYSBkcm9wZG93bj8KICAgICAgYnJlYWs7CgogICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICAvLyBpbWFnZSB0eXBlcyBkb24ndCBoYXZlIGEgcGFyYW0gKGV2ZW4gaWYgd2UgaGF2ZSB1cGxvYWRlZCBhIGZpbGUpCiAgICAgIGJyZWFrOwogICAgfQogIH0KfQoKCi8vIGdldCB0aGUgcGFybXMgZnJvbSB0aGUgZmlyc3Qgc3RlcAovLyBhbmQgbWVyZ2UgZW0gaW50byAkcGFyYW1zIHNvIHdlIGNhbiBhY3R1YWxseSBhZGQgdGhlIHVzZXIgYWNjb3VudAokcGFyYW1zID0gYXJyYXlfbWVyZ2UoICRwYXJhbXMsICRzdGVwMV9wYXJhbXMgKTsKCmlmKCAhaXNzZXQoJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSkgfHwgJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSA9PSAnJyApIHsKICAkcGFyYW1zWydlcnJvciddID0gMTsKICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJyk7CiAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKICByZXR1cm47Cn0KCi8vIG5vdyB3ZSBjYW4gYWN0dWFsbHkgYWRkIHRoZSB1c2VyCiRyZXQgPSAkdGhpcy0+QWRkVXNlciggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSwgCgkJICAgICAgICRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10sCgkJICAgICAgICRwYXJhbXNbJ2lucHV0X2V4cGlyZXNkYXRlJ10gKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKSB7CiAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgJHBhcmFtc1snbWVzc2FnZSddID0gJHJldFsxXTsKICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fYWRkdXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcywgdHJ1ZSApOwogIHJldHVybjsKfQokdWlkID0gJHJldFsxXTsKCi8vIGFuZCBhZGQgaGltIHRvIGhpcyBncm91cHMKZm9yZWFjaCggJGdyb3VwaWRzIGFzICRtZW0gKSB7CiAgaWYoICEkdGhpcy0+QXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRtZW0gKSApIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRncm91cGlkJywkbWVtKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CiAgICByZXR1cm47CiAgfQp9CgovLyBhbmQgYWRkIGhpcyBwcm9wZXJ0aWVzCiR0aGlzLT5TZXRFbmNyeXB0aW9uS2V5KCR1aWQpOwpmb3JlYWNoKCAkZmllbGRsaXN0IGFzICRrID0+ICR2ICkgewogICRkZWZuID0mICRkZWZuc1ska107CiAgJHJlbG4gPSYgJGdyb3VwcHJvcHNbJHZdOwoJCiAgaWYoICRkZWZuWyd0eXBlJ10gPT0gNiApIHsKICAgIC8vIGltYWdlIHR5cGUKICAgIGlmKCBpc3NldCgkX0ZJTEVTWyRpZC4naW5wdXRfJy4ka10pICYmICRfRklMRVNbJGlkLidpbnB1dF8nLiRrXVsnc2l6ZSddID4gMCApIHsKICAgICAgLy8gaXQncyBhbiB1cGxvYWRlZCBmaWxlIHR5cGUKICAgICAgJHJlc3VsdCA9ICR0aGlzLT5NYW5hZ2VJbWFnZVVwbG9hZCgkaWQsJ2lucHV0XycsICRrLCAkdWlkICk7CiAgICAgIGlmKCAkcmVzdWx0WzBdID09IGZhbHNlICkgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKS4nJm5ic3A7Jy4kcmVzdWx0OwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKCXJldHVybjsKICAgICAgfQogICAgICAkdiA9ICRyZXN1bHRbMV07CiAgICB9CiAgfQoKICBpZiggJHYgPT0gJycgKSBjb250aW51ZTsKICBpZiggaXNfYXJyYXkoICR2ICkgKSAkdiA9IGltcGxvZGUoJywnLCR2KTsKICAkcmV0ID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRrLCAkdiwgJHVpZCApOwogIGlmKCAkcmV0ID09IGZhbHNlICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogICAgcmV0dXJuOwogIH0KfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkdWlkOwokcGFybXNbJ25hbWUnXSA9ICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ107CiR0aGlzLT5TZW5kRXZlbnQoJ09uQ3JlYXRlVXNlcicsJHBhcm1zKTsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uQ3JlYXRlVXNlcicsJHBhcm1zKTsKCi8vIGtlZXAgYSBsb2cgb2YgaXQKYXVkaXQoICR1aWQsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwnQWRkZWQgVXNlciAnLiRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10uJyAoJy4kdWlkLicpJyk7CgovLyBhbmQgdGhhdCBzaG91bGQgYmUgaXQKJHBhcmFtcyA9ICRzdGVwMV9wYXJhbXM7CgppZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKSB7CiAgaWYoIHN0cnBvcygkcGFyYW1zWydyZXR1cm50byddLCcsJykgIT09IEZBTFNFICkgewogICAgbGlzdCgkbW9kdWxlLCRhY3Rpb24pID0gZXhwbG9kZSgnLCcsJHBhcmFtc1sncmV0dXJudG8nXSwyKTsKICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJG1vZHVsZSk7CiAgICAkbW9kdWxlLT5SZWRpcmVjdCgkaWQsJGFjdGlvbiwkcmV0dXJuaWQsCgkJICAgICAgYXJyYXkoJ3VpZCc9PiR1aWQsJ3VzZXJuYW1lJz0+JHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSkpOwogIH0KfQokdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAndXNlcnMnLCAkcGFyYW1zICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_admintasks.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnNuZ3JvdXBzJykgKSByZXR1cm47CgppZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeSddICkgKSB7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fZXhwb3J0dXNlcmhpc3RvcnkucGhwJyk7Cn0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9jbGVhcnVzZXJoaXN0b3J5J10gKSApIHsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9jbGVhcnVzZXJoaXN0b3J5LnBocCcpOwp9CiAgCi8vIEVPRg==]]></data>
	</file>
	<file>
	  <filename>/action.do_deletegroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3JlbW92ZWdyb3VwcycgKSApIHJldHVybjsKCmlmICghaXNzZXQgKCRwYXJhbXNbJ2dyb3VwX2lkJ10pIHx8ICRwYXJhbXNbJ2dyb3VwX2lkJ10gPT0gIiIpIHsKICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgJHRoaXMtPkxhbmcgKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSk7CiAgcmV0dXJuOwp9ICAKCiRncm91cCA9ICR0aGlzLT5HZXRHcm91cEluZm8oICRwYXJhbXNbJ2dyb3VwX2lkJ10gKTsKaWYoICFpc3NldCgkZ3JvdXBbJ2lkJ10pICYmICRncm91cFswXSA9PSBGQUxTRSApIHsKICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZ3JvdXBbMV0gKTsKICByZXR1cm47Cn0KCiRxdWVyeSA9IG5ldyBmZXVfdXNlcl9xdWVyeSgpOwokcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRCwkZ3JvdXBbJ2lkJ10pOwokcnMgPSAkcXVlcnktPmV4ZWN1dGUoKTsKaWYoICRycy0+Z2V0X2ZvdW5kX3Jvd3MoKSA+IDAgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICR0aGlzLT5MYW5nICgnZXJyb3Jfbm90ZW1wdHlncm91cCcpKTsKICByZXR1cm47Cn0KCiRyZXQgPSAkdGhpcy0+RGVsZXRlR3JvdXBGdWxsKCAkcGFyYW1zWydncm91cF9pZCddICk7CmlmKCAkcmV0WzBdID09IEZBTFNFICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRncm91cFsxXSApOwogIHJldHVybjsKfQoKJHBhcm1zID0gYXJyYXkoKTsKJHBhcm1zWydpZCddID0gJHBhcmFtc1snZ3JvdXBfaWQnXTsKJHBhcm1zWyduYW1lJ10gPSAkZ3JvdXBbJ2dyb3VwbmFtZSddOwokdGhpcy0+U2VuZEV2ZW50KCdPbkRlbGV0ZUdyb3VwJywkcGFybXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25EZWxldGVHcm91cCcsJHBhcm1zKTsKCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2dyb3VwcycgKTsKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_deleteprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICdkZWxldGVwcm9wJyApICkgewogICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICByZXR1cm47Cn0KCmlmKCAhaXNzZXQoICRwYXJhbXNbJ3Byb3BuYW1lJ10gKSApIHsKICAkcGFybXMgPSBhcnJheSgpOwogICRwYXJtc1snZXJyb3InXSA9IDE7CiAgJHBhcm1zWydtZXNhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3Byb3BlcnRpZXMnLCRwYXJtcyk7CiAgcmV0dXJuOwp9CgovLyBkZWxldGUgYWxsIG9jY3VyYW5jZXMgb2YgdGhpcyBwcm9wZXJ0eSBuYW1lIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlCiRyZXN1bHQgPSAkdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5QnlOYW1lKCAkcGFyYW1zWydwcm9wbmFtZSddICk7CgovLyBXZSBuZWVkIHRvIGRlbGV0ZSBzZWxlY3Qgb3B0aW9ucyByZWdhcmRsZXNzIG9mIHRoZSBjb250cm9sIHR5cGUsCi8vIGJlY2F1c2Ugd2UgZG9uJ3QgZGVsZXRlIHNlbGVjdCBvcHRpb25zIHdoZW4gY2hhbmdpbmcgY29udHJvbCB0eXBlcwokcmVzdWx0ID0gJHRoaXMtPkRlbGV0ZVNlbGVjdE9wdGlvbnMoICRwYXJhbXNbJ3Byb3BuYW1lJ10gKTsKLy8gbm93IHJlYWR5IHRvIGRlbGV0ZSB0aGUgcHJvcGVydHkKJHJlc3VsdCA9ICR0aGlzLT5EZWxldGVQcm9wZXJ0eURlZm4oICRwYXJhbXNbJ3Byb3BuYW1lJ10gKTsKaWYoICEkcmVzdWx0ICkgewogICRwYXJtcyA9IGFycmF5KCk7CiAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgJHBhcmFtc1snbWVzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eScpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwncHJvcGVydGllcycsJHBhcm1zKTsKICByZXR1cm47Cn0KCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwncHJvcGVydGllcycpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_deleteuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3JlbW92ZXVzZXJzJyApICkgcmV0dXJuOwoKaWYgKCFpc3NldCAoJHBhcmFtc1sndXNlcl9pZCddKSB8fCAkcGFyYW1zWyd1c2VyX2lkJ10gPT0gIiIpIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgcmV0dXJuOwp9CgokdXNlciA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHBhcmFtc1sndXNlcl9pZCddICk7CmlmKCAhaXNfYXJyYXkoJHVzZXIpIHx8ICR1c2VyWzBdID09IEZBTFNFICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykgKTsKICAgIHJldHVybjsKICB9CgovLyBHZXQgYWxsIG9mIHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucywgaWYgdGhleSdyZSBvZiB0eXBlIDYKLy8gYW5kIHRoZSBwcm9wZXJ0eSBpcyBub3QgZW1wdHksIHRoZW4gd2UgbWF5Ci8vIGhhdmUgdG8gZGVsZXRlIGEgZmlsZSBhcyB3ZWxsLgokZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwokcHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoICRwYXJhbXNbJ3VzZXJfaWQnXSApOwokcHJvcF9hcnkgPSBhcnJheSgpOwokZGVzdERpcjEgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwokZGVzdERpcjEgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuRElSRUNUT1JZX1NFUEFSQVRPUjsKaWYoICRwcm9wcyApCiAgewogICAgZm9yZWFjaCggJGRlZm5zIGFzICRvbmVkZWZuICkKICAgICAgewoJaWYoICRvbmVkZWZuWyd0eXBlJ10gIT0gNiApIGNvbnRpbnVlOwoKCWZvcmVhY2goICRwcm9wcyBhcyAkb25lcHJvcCApCgkgIHsKCSAgICBpZiggJG9uZXByb3BbJ3RpdGxlJ10gIT0gJG9uZWRlZm5bJ25hbWUnXSApIGNvbnRpbnVlOwoKCSAgICAvLyBmb3VuZCBhIG1hdGNoLCB3ZSBoYXZlIGEgdHlwZSA2IGZpZWxkLgoJICAgIGlmKCAkb25lcHJvcFsnZGF0YSddID09ICcnICkgY29udGludWU7CgoJICAgIC8vIGFuZCBvbmUgd2l0aCBhIHZhbHVlIHRvby4KCSAgICAkZmlsZTEgPSAkZGVzdERpcjEuJG9uZXByb3BbJ2RhdGEnXTsKCSAgICBAdW5saW5rKCAkZmlsZTEgKTsKCSAgfQogICAgICB9Cglmb3JlYWNoICgkcHJvcHMgYXMgJG9uZV9wcm9wKQoJewoJCSRwcm9wX2FyeVskb25lX3Byb3BbJ3RpdGxlJ11dID0gJG9uZV9wcm9wWydkYXRhJ107Cgl9CiAgfQoKJHJldCA9ICR0aGlzLT5EZWxldGVVc2VyRnVsbCggJHBhcmFtc1sndXNlcl9pZCddICk7CmlmKCAkcmV0WzBdID09IEZBTFNFICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkcmV0WzFdICk7CiAgICByZXR1cm47CiAgfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkcGFyYW1zWyd1c2VyX2lkJ107CiRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VyWzFdWyd1c2VybmFtZSddOwokcGFybXNbJ3Byb3BzJ10gPSAkcHJvcF9hcnk7CiR0aGlzLT5TZW5kRXZlbnQoICdPbkRlbGV0ZVVzZXInLCAkcGFybXMgKTsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uRGVsZXRlVXNlcicsJHBhcm1zKTsKCi8vIGFuZCBsb2cgaXQKJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksJ0RlbGV0ZWQgVXNlciAnLiRwYXJhbXNbJ3VzZXJfaWQnXSk7CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICd1c2VycycgKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser1.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2VkaXR1c2VycycgKSApIHsKICByZXR1cm47Cn0KCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKSB7CiAgJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQoKaWYgKCAhaXNzZXQoJHBhcmFtc1sndXNlcl9pZCddKSApIHsKICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogIHJldHVybjsKfQoKLy8gbWFrZSBzdXJlIHRoZSBwYXJhbWV0ZXJzIGFyZSBmaWxsZWQgaW4KJHVzZXJfaWQgICA9IHRyaW0oJHBhcmFtc1sndXNlcl9pZCddKTsKJHVzZXJuYW1lID0gdHJpbSgkcGFyYW1zWydpbnB1dF91c2VybmFtZSddKTsKJHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddKTsKJHJlcGVhdCAgID0gdHJpbSgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddKTsKCiRyZXQgPSAkdGhpcy0+X2hhbmRsZVVzZXJJbmZvVmFsaWRhdGlvbiggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlLCBmYWxzZSwgCgkJCQkJIHRydWUsIGZhbHNlICk7Cgpzd2l0Y2goICRyZXQgKSB7CiBjYXNlIC0xOiAvLyBlcnJvcgogICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdlcnJvcicsICIxIik7CiAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkbWVzc2FnZSApOwogICAkdGhpcy0+X0Rpc3BsYXlBZG1pbkVkaXRVc2VyU3RlcDFQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICByZXR1cm47CiBjYXNlIDA6ICAvLyBubyBlcnJvciwgYnV0IGRvbid0IGNvbnRpbnVlIG9wZXJhdGlvbgogICAkdGhpcy0+X0Rpc3BsYXlBZG1pblVzZXJQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICByZXR1cm47CiBjYXNlIDE6ICAvLyBhbGwgaXMgZ29vZCwgY29udGludWUgb3BlcmF0aW9uCiAgIGJyZWFrOwogfQoKLy8gbG9hZCBwcm9wZXJ0aWVzIGFuZCBzZXQgdGhlbSB1cAovLyBmb3IgdGhlIG5leHQgcGFnZQokcHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoICR1c2VyX2lkICk7CmlmKCBpc19hcnJheSgkcHJvcHMpICYmIGNvdW50KCRwcm9wcykgKSB7CiAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkgewogICAgJHBhcmFtc1snaW5wdXRfJy4kcHJvcFsndGl0bGUnXV0gPSB1cmxlbmNvZGUoJHByb3BbJ2RhdGEnXSk7CiAgfQp9CgovLyBBbmQgR28gdG8gc3RlcCAyCiR0aGlzLT5fcGFyYW1zX3RvX3Nlc3Npb24oJHBhcmFtcyk7CiR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdhZGR1c2VyJykgJiYgISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHJldHVybjsKCiR0bXAgPSAkdGhpcy0+X3Nlc3Npb25fdG9fcGFyYW1zKCk7CmlmKCAkdG1wICE9PSBmYWxzZSApICRwYXJhbXMgPSBhcnJheV9tZXJnZSgkcGFyYW1zLCR0bXApOwppZiggaXNzZXQoICRwYXJhbXNbJ21lc3NhZ2UnXSApICkgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywgJHBhcmFtc1snbWVzc2FnZSddICk7CmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10gKTsKCiRwcm9wZXJ0aWVzID0gYXJyYXkoKTsKJGdyb3VwcyA9IDA7CiRncm91cGxpc3QgPSBhcnJheSgpOwokdXNlcl9pZCA9IC0xOwppZiggaXNzZXQoJHBhcmFtc1sndXNlcl9pZCddKSApICR1c2VyX2lkID0gKGludCkkcGFyYW1zWyd1c2VyX2lkJ107Cgpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbCApIHsKICBpZiggcHJlZ19tYXRjaCggJy9ebWVtYmVyb2ZfLycsICRrZXkgKSApIHsKICAgICRncm91cHMrKzsKICAgIC8vIGdldCB0aGUgZ3JvdXBpZCBmcm9tIHRoZSBjaGVja2JveAogICAgJGdycGlkID0gc3Vic3RyKCRrZXksc3RybGVuKCdtZW1iZXJvZl8nKSk7CiAgICAkZ3JvdXBsaXN0W10gPSAoaW50KSRncnBpZDsKICB9Cn0JICAKaWYoICRncm91cHMgPT0gMCApIHsKICAvLyBoZXJlLCB3ZSBoYXZlbid0IGJlZW4gdG9sZCBhYm91dCBtZW1iZXJzaGlwIGluIGFueSBncm91cHMgeWV0CiAgLy8gbWF5YmUgb3VyIGNvbnN1bWVyIHdpbGwgdGVsbCB1cyBhYm91dCBvbmUuCiAgJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogIGlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9HUk9VUE1FTUJFUlNISVApICkgewogICAgJGdyb3VwbGlzdCA9ICRjb25zdW1lci0+Z2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJfaWQpOwogICAgaWYoIGlzX2FycmF5KCRncm91cGxpc3QpICYmIGNvdW50KCRncm91cGxpc3QpICkgICRncm91cHMgPSBjb3VudCgkZ3JvdXBsaXN0KTsKICB9Cn0KaWYoICRncm91cHMgPT0gMCApIHsKICAvLyBmaW5hbCBoYW5kbGluZyBvZiBubyBncm91cHMgc2l0dWF0aW9uLgogICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfb25lZ3JvdXAnKSA9PSAxICYmIGdldF9jbGFzcygkY29uc3VtZXIpID09ICdmZXVfc3RkX2NvbnN1bWVyJyApIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgICByZXR1cm47CiAgfQoKICAvLyBkb24ndCBuZWVkIHRvIGFzayBhYm91dCBhbnkgcHJvcGVydGllcy4uLiBzbyBsZXRzIGZpbmlzaCBpdCBvZmYuCiAgaWYoICR1c2VyX2lkID4gMCApIHsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjMnLCAkcmV0dXJuaWQsICRwYXJhbXMsIHRydWUgKTsKICB9CiAgZWxzZSB7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fYWRkdXNlcjMnLCAkcmV0dXJuaWQsICRwYXJhbXMsIHRydWUgKTsKICB9Cn0KCi8vIGNhbGN1bGF0ZSB0aGUgdW5pb24gKHllcCwgdW5pb24sIG5vdCBpbnRlcnNlY3Rpb24pCi8vIG9mIGFsbCBvZiB0aGUgcHJvcGVydGllcyBvZiBhbGwgb2YgdGhlIG1lbWJlciBncm91cHMKLy8gcHJlZmVycmluZyBhbGwgaXRlbXMgd2l0aCBhIHByaW9yaXR5IG9mIDIKZm9yZWFjaCggJGdyb3VwbGlzdCBhcyAkZ3JwaWQgKSB7CiAgLy8gaGF2ZSB0aGUgZ3JvdXAgaWQsIG5vdyBnZXQgYSBsaXN0IG9mIHRoZSBwcm9wZXJ0aWVzCiAgJHByb3ByZWxhdGlvbnMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICk7CiAgJHByb3BlcnRpZXMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkcHJvcGVydGllcywgJHByb3ByZWxhdGlvbnMgKTsKfQp1YXNvcnQoICRwcm9wZXJ0aWVzLCBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKCmlmKCBjb3VudCgkcHJvcGVydGllcykgPT0gMCApIHsKICAkcGFyYW1zWydlcnJvciddID0gMTsKICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcHJvcGVydGllcycpOwogICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgcmV0dXJuOwp9CgovLyBub3cgd2UncmUgcmVhZHkgdG8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCiRyb3dhcnJheSA9IGFycmF5KCk7CmZvcmVhY2goICRwcm9wZXJ0aWVzIGFzICRwcm9wICkgewogIC8vIGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbgogICRkZWZuID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbiggJHByb3BbJ25hbWUnXSApOwogIGlmKCAkZGVmblsnZW5jcnlwdCddICkgY29udGludWU7CiAgJGF0dHJpYnMgPSAnJzsKICBpZiggaXNzZXQoJGRlZm5bJ2F0dHJpYnMnXSkgKSAkYXR0cmlicyA9IHVuc2VyaWFsaXplKCRkZWZuWydhdHRyaWJzJ10pOwoKICAvLyBkZWZhdWx0IHZhbHVlIGZvciB0aGUgcHJvcGVydHkuCiAgJHByb3B2YWwgPSAnJzsKICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiAgY2FzZSAxOgogICAgaWYoIGlzc2V0KCRhdHRyaWJzWydjaGVja2VkJ10pICkgJHByb3B2YWwgPSAkYXR0cmlic1snY2hlY2tlZCddOwogICAgYnJlYWs7CiAgfQoKICBpZiggJHVzZXJfaWQgPiAwICkgewogICAgJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVzZXJfaWQpOwogICAgJHByb3B2YWwgPSAkdGhpcy0+R2V0VXNlclByb3BlcnR5RnVsbCggJHByb3BbJ25hbWUnXSwgJHVzZXJfaWQgKTsKICB9CgogICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKCiAgJGNvbG9yID0gJyc7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDIgKSAkY29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdXJpZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDMgKSAkY29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJywnZ3JlZW4nKTsKICAkbWFya2VyID0gJyc7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDIgKSAkbWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVyaWVkX2ZpZWxkX21hcmtlcicsJyonKTsKICBpZiggJHByb3BbJ3JlcXVpcmVkJ10gPT0gMyApICRtYXJrZXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX21hcmtlcicsJyEhJyk7CiAgJG9uZXJvdy0+cmVxdWlyZWQgPSAoJHByb3BbJ3JlcXVpcmVkJ10gPT0gMik7CiAgJG9uZXJvdy0+dHlwZSAgICAgPSAkZGVmblsndHlwZSddOwogICRvbmVyb3ctPmNvbG9yICAgID0gJGNvbG9yOwogICRvbmVyb3ctPm1hcmtlciAgID0gJG1hcmtlcjsKICAkb25lcm93LT5oaWRkZW4gPSBSUlV0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaGlkZGVuXycuJHByb3BbJ25hbWUnXSwkcHJvcHZhbCk7CgogICR2YWwgPSBpc3NldCgkcGFyYW1zWydpbnB1dF8nLiRwcm9wWyduYW1lJ11dKSA/ICRwYXJhbXNbJ2lucHV0XycuJHByb3BbJ25hbWUnXV0gOiAkcHJvcHZhbDsKICAkdmFsID0gdXJsZGVjb2RlKCR2YWwpOwogICRzZWxvcHRpb25zID0gJHRoaXMtPkdldFNlbGVjdE9wdGlvbnMoJHByb3BbJ25hbWUnXSk7CiAgJHNlbGVjdGVkID0gYXJyYXkoKTsKICBpZiggJGRlZm5bJ3R5cGUnXSA9PSA1KSB7CiAgICAvLyBoYW5kbGUgY29tbWEgc2VwYXJhdGVkIGFycmF5cyBvZiBzZWxlY3RlZCB2YWx1ZXMKICAgIGlmKCBzdHJwb3MoJHZhbCwnLCcpICE9PSBGQUxTRSApIHsKICAgICAgJHNlbGVjdGVkID0gZXhwbG9kZSgnLCcsJHZhbCk7CiAgICB9CiAgICBlbHNlIGlmKCBzdHJwb3MoJHZhbCwnOicpICE9PSBGQUxTRSApIHsKICAgICAgJHNlbGVjdGVkID0gZXhwbG9kZSgnOicsJHZhbCk7CiAgICB9CiAgfQogIGVsc2UgaWYgKCRkZWZuWyd0eXBlJ10gPT0gNykgewogICAgJHNlbGVjdGVkID0gJHZhbDsKICB9CgogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiAgY2FzZSAwOiAvLyB0ZXh0CiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfJy4kcHJvcFsnbmFtZSddLCR2YWwsICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddICk7CiAgICBicmVhazsKCiAgY2FzZSAxOiAvLyBjaGVja2JveAogICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10sIDApIC4gCiAgICAgIFJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfJy4kcHJvcFsnbmFtZSddLCAxLCAkdmFsICk7CiAgICBicmVhazsKCiAgY2FzZSAyOiAvLyBlbWFpbAogICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0XycuJHByb3BbJ25hbWUnXSwgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAkZGVmblsnbWF4bGVuZ3RoJ10gKTsKICAgIGJyZWFrOwoKICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGlzX2FycmF5KCRhdHRyaWJzKSAmJiBpc3NldCgkYXR0cmlic1snd3lzaXd5ZyddKT8kYXR0cmlic1snd3lzaXd5ZyddOjAsCgkJCQkJICAgICAkaWQsICR2YWwsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10pOwogICAgYnJlYWs7CgogIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10sICRzZWxvcHRpb25zLC0xLCAkdmFsKTsKICAgIGJyZWFrOwoKICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10uJ1tdJywgJHNlbG9wdGlvbnMsICRzZWxlY3RlZCwgJGRlZm5bJ2xlbmd0aCddKTsKICAgIGJyZWFrOwoKICBjYXNlIDY6IC8vIGltYWdlCiAgICBpZiggJHVzZXJfaWQgPiAwICkgewogICAgICAkZGVzdERpcjEgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwogICAgICAkZGVzdERpcjEgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuRElSRUNUT1JZX1NFUEFSQVRPUjsKICAgICAgJGRlc3REaXIyID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc191cmwnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwogICAgICAkZGVzdERpcjIgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuRElSRUNUT1JZX1NFUEFSQVRPUjsKICAgICAgJGZpbGUxID0gJGRlc3REaXIxLiR2YWw7CiAgICAgICRmaWxlMiA9ICRkZXN0RGlyMi4kdmFsOwogICAgICBpZiggaXNfcmVhZGFibGUoJGZpbGUxKSAmJiBpc19maWxlKCRmaWxlMSkgKSB7CgkvLyBUT0RPOiBoZXJlIHdlIGNvdWxkIGlkZWFsbHkgcmVzaXplIHRoZSBpbWFnZSB1c2luZyBDR1NJLi4gYnV0IGxhdGVyLgoJJG9uZXJvdy0+aW1hZ2UgPSAnPGltZyBzcmM9IicuJGZpbGUyLiciIGFsdD0iJy4kdmFsLiciLz4nOwoJaWYoICEkb25lcm93LT5yZXF1aXJlZCAgJiYgaXNzZXQoJHVzZXJfaWQpICkgewoJICAkb25lcm93LT5wcm9tcHQyID0gJHRoaXMtPkxhbmcoJ3Byb21wdF9jbGVhcicpOwoJICAkb25lcm93LT5jb250cm9sMiA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwnaW5wdXRfJy4kcHJvcFsnbmFtZSddLidfY2xlYXInLCdjbGVhcicsJycpOwoJfQogICAgICB9CiAgICB9CiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2lucHV0XycuJHByb3BbJ25hbWUnXSwgJycsICRkZWZuWydsZW5ndGgnXSk7CiAgICBicmVhazsKCiAgY2FzZSA3OiAvLyByYWRpbyBidXR0b24gZ3JvdXAKICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJ2lucHV0XycuJHByb3BbJ25hbWUnXSwgJHNlbG9wdGlvbnMsICR2YWwsICcnLCAnPGJyLz4nKTsKICAgIGJyZWFrOwoKICBjYXNlIDg6IC8vIGRhdGUKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAkcGFybXNbJ3ByZWZpeCddID0gJGlkLidpbnB1dF8nLiRwcm9wWyduYW1lJ107CiAgICBpZiggJHZhbCApICAkcGFybXNbJ3RpbWUnXSA9ICR2YWw7CiAgICAkcGFybXNbJ3N0YXJ0X3llYXInXSA9IChpc19hcnJheSgkYXR0cmlicykgJiYgaXNzZXQoJGF0dHJpYnNbJ3N0YXJ0eWVhciddKSk/JGF0dHJpYnNbJ3N0YXJ0eWVhciddOiItNSI7CiAgICAkcGFybXNbJ2VuZF95ZWFyJ10gPSAoaXNfYXJyYXkoJGF0dHJpYnMpICYmIGlzc2V0KCRhdHRyaWJzWydlbmR5ZWFyJ10pKT8kYXR0cmlic1snZW5keWVhciddOiIrMTAiOwogICAgJHN0ciA9ICd7aHRtbF9zZWxlY3RfZGF0ZSAnOwogICAgZm9yZWFjaCggJHBhcm1zIGFzICRrZXk9PiR2YWx1ZSApIHsKICAgICAgJHN0ciAuPSAka2V5Lic9IicuJHZhbHVlLiciICc7CiAgICB9CiAgICAkc3RyIC49ICd9JzsKICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHN0cik7CiAgICBicmVhazsKICB9CgogICRyb3dhcnJheVtdID0gJG9uZXJvdzsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pICkgewogICRzbWFydHktPmFzc2lnbignZWRpdHRleHQnLCR0aGlzLT5MYW5nKCdlZGl0aW5nX3VzZXInKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZScsdHJpbSgkcGFyYW1zWydpbnB1dF91c2VybmFtZSddKSk7Cn0KJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCBSUlV0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdzdGVwMV9wYXJhbXMnLCBiYXNlNjRfZW5jb2RlKHNlcmlhbGl6ZSgkcGFyYW1zKSkgKSk7CiRzbWFydHktPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwokc21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xjb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdiYWNrJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdiYWNrJywgJHRoaXMtPkxhbmcoJ2JhY2snKSkpOwppZiggJHVzZXJfaWQgPiAwICkgewogICRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnZWRpdHVzZXInKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4yJywgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwndXNlcl9pZCcsJHVzZXJfaWQpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwnZG9fZWRpdHVzZXIzJywkcmV0dXJuaWQsJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKfQplbHNlIHsKICAkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPkxhbmcoJ2FkZHVzZXInKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsJ2RvX2FkZHVzZXIzJywkcmV0dXJuaWQsJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKfQogICAgCiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCAnYWRkdXNlcjIudHBsJyApOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser3.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2VkaXR1c2VycycgKSApIHJldHVybjsKaWYoICFpc3NldCggJHBhcmFtc1sndXNlcl9pZCddICkgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogIHJldHVybjsKfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddKSApICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddID0gdW5zZXJpYWxpemUoYmFzZTY0X2RlY29kZSgkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSkpOwoKLy8gZG8gd2Ugd2FudCB0byBnbyBiYWNrCmlmKCBpc3NldCggJHBhcmFtc1snYmFjayddICkgKSB7CiAgLy8geXVwIHdlIGRvCiAgJHBhcmFtcyA9ICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddOwogICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdlZGl0dXNlcicsICRyZXR1cm5pZCwkcGFyYW1zICk7Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3VzZXJzJyApOwoKJHVzZXJfaWQgPSAoaW50KSRwYXJhbXNbJ3VzZXJfaWQnXTsKCi8vIGdldCBmaWVsZCBkZWZpbml0aW9ucy4KJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKCi8vIGdldCB0aGUgcHJvcGVydHkgcmVsYXRpb25zIGZvciB0aGUgc2VsZWN0ZWQgZ3JvdXAocykuCiRncm91cHByb3BzID0gYXJyYXkoKTsKJGdyb3VwaWRzID0gYXJyYXkoKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddKSApIHsKICAkcGFybXMxID0gJHBhcmFtc1snc3RlcDFfcGFyYW1zJ107CiAgZm9yZWFjaCggJHBhcm1zMSBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICAgIGlmKCBzdGFydHN3aXRoKCRrZXksJ21lbWJlcm9mXycpICkgewogICAgICAkZ2lkID0gKGludClzdWJzdHIoJGtleSxzdHJsZW4oJ21lbWJlcm9mXycpKTsKICAgICAgJGdyb3VwaWRzW10gPSAkZ2lkOwogICAgfQogIH0KfQoKaWYoIGNvdW50KCRncm91cGlkcykgPT0gMCApIHsKICAvLyBoZXJlLCB3ZSBoYXZlbid0IGJlZW4gdG9sZCBhYm91dCBtZW1iZXJzaGlwIGluIGFueSBncm91cHMgeWV0CiAgLy8gbWF5YmUgb3VyIGNvbnN1bWVyIHdpbGwgdGVsbCB1cyBhYm91dCBvbmUuCiAgJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogIGlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9HUk9VUE1FTUJFUlNISVApICkgewogICAgJGdyb3VwaWRzID0gJGNvbnN1bWVyLT5nZXRfZ3JvdXBfbWVtYmVyc2hpcCgkdXNlcl9pZCk7CiAgfQp9Cgpmb3JlYWNoKCAkZ3JvdXBpZHMgYXMgJGdpZCApIHsKICAkcmVsbnMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdpZCApOwogICRncm91cHByb3BzID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCggJGdyb3VwcHJvcHMsICRyZWxucyApOwogIHVhc29ydCggJGdyb3VwcHJvcHMsIGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSApOwp9CiRncm91cHByb3BzID0gY2dlX2FycmF5Ojp0b19oYXNoKCRncm91cHByb3BzLCduYW1lJyk7CgovLyBnZXQgdGhlIGZpZWxkIGluZm8KJGZpZWxkbGlzdCA9IGFycmF5KCk7CmZvcmVhY2goICRwYXJhbXMgYXMgJGsgPT4gJHYgKSB7CiAgaWYoIHByZWdfbWF0Y2goJy9eaGlkZGVuXy8nLCAkayApICkgewogICAgJGZsZG5hbWUgPSBzdWJzdHIoICRrLCBzdHJsZW4oJ2hpZGRlbl8nKSk7CiAgICAkZmllbGRsaXN0WyRmbGRuYW1lXSA9ICR2OwogIH0KfQoKLy8gbm93IG1lcmdlIGZvcm0gdmFsdWVzIGZvciBlYWNoIG9mIHRoZSBmaWVsZHMKZm9yZWFjaCggJGdyb3VwcHJvcHMgYXMgJGZsZG5hbWUgPT4gJHJlbG4gKSB7CiAgJHYgPSAnJzsKICBzd2l0Y2goJGRlZm5zWyRmbGRuYW1lXVsndHlwZSddKSB7CiAgY2FzZSAnNic6IC8vIGltYWdlCiAgICAvLyB3ZSdsbCBoYW5kbGUgc2V0dGluZyB0aGUgdmFsdWUgZm9yIHRoaXMgYmVsb3cuLi4uIHRoaXMgaXMganVzdCBhIHBsYWNlaG9sZGVyLgogICAgJHYgPSAnOjppbWFnZTo6JzsKICAgIGJyZWFrOwoKICBjYXNlICc4JzogLy8gZGF0ZQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWUuJ01vbnRoJ10pICkgewogICAgICAkdiA9IG1rdGltZSgwLDAsMCwKCQkgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nTW9udGgnXSwKCQkgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nRGF5J10sCgkJICAoaW50KSRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWUuJ1llYXInXSk7CiAgICB9CiAgICBicmVhazsKCiAgZGVmYXVsdDoKICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lXSkgKSB7CiAgICAgICR2ID0gJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZV07CiAgICB9CiAgICBicmVhazsKICB9CgogICRmaWVsZGxpc3RbJGZsZG5hbWVdID0gJHY7Cn0KCi8vIG5vdyB2YWxpZGF0ZQpmb3JlYWNoKCAkZmllbGRsaXN0IGFzICRuYW1lID0+ICR2YWx1ZSApCnsKICAgICRkZWZuID0gJGRlZm5zWyRuYW1lXTsKICAgICRyZWxuID0gJGdyb3VwcHJvcHNbJG5hbWVdOwoKICAgIC8vIHByb2Nlc3MgZW1wdHkgcmVxdWlyZWQgZmllbGRzCiAgICAvLyB3ZSBkb24ndCBjYXJlIGFib3V0IGVtcHR5IG9wdGlvbmFsIG9uZXMKICAgIGlmKCAkcmVsblsncmVxdWlyZWQnXSA9PSAyICkgewogICAgICAgIC8vIHByb2Nlc3MgZW1wdHkgcmVxdWlyZWQgZmllbGRzCiAgICAgICAgaWYoICRkZWZuWyd0eXBlJ10gPT0gNiApIHsKICAgICAgICAgICAgLy8gaW1hZ2UgdXBsb2Fkcz8KICAgICAgICAgICAgaWYoICghaXNzZXQoJF9GSUxFU1skaWQuJ2lucHV0XycuJG5hbWVdKSB8fCAkX0ZJTEVTWyRpZC4naW5wdXRfJy4kbmFtZV1bJ3NpemUnXSA9PSAwKSAmJgogICAgICAgICAgICAgICAgJHZhbHVlID09ICcnKSB7CiAgICAgICAgICAgICAgICAvLyBhIHJlcXVpcmVkIGltYWdlIGZpZWxkIGlzIGVtcHR5CiAgICAgICAgICAgICAgICAvLyBhbmQgbm8gZmlsZSBiZWluZyB1cGxvYWRlZC4KICAgICAgICAgICAgICAgICRwYXJhbXMgPSAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKTsKICAgICAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoICR2YWx1ZSA9ICcnICkgewogICAgICAgICAgICAvLyBhIHJlcXVpcmVkIG90aGVyIHR5cGUgZmllbGQgaXMgZW1wdHkKICAgICAgICAgICAgJHBhcmFtcyA9ICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddOwogICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zICk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9CgogICAgLy8gaGFuZGxlIGNsZWFyIGJ1dHRvbnMgZm9yIGltYWdlIGZpZWxkcy4KICAgIGlmKCAkZGVmblsndHlwZSddID09IDYgKSB7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJG5hbWUuJ19jbGVhciddKSAmJgogICAgICAgICAgICAkcGFyYW1zWydpbnB1dF8nLiRuYW1lLidfY2xlYXInXSA9PSAnY2xlYXInICYmCiAgICAgICAgICAgICR2YWx1ZSAhPSAnJyApIHsKICAgICAgICAgICAgLy8gd2UncmUgdG9sZCB0byBjbGVhciBhbiBpbWFnZSBwcm9wZXJ0eSwgd2UgbXVzdCBhbHNvCiAgICAgICAgICAgIC8vIGRlbGV0ZSB0aGUgaW1hZ2UKICAgICAgICAgICAgJGRlc3REaXIxID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKICAgICAgICAgICAgJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiAgICAgICAgICAgICRmaWxlMSA9ICRkZXN0RGlyMS4kdmFsdWU7CiAgICAgICAgICAgIEB1bmxpbmsoICRmaWxlMSApOwogICAgICAgICAgICB1bnNldCgkZmllbGRsaXN0WyRuYW1lXSk7CiAgICAgICAgICAgICR2YWx1ZSA9ICcnOwogICAgICAgIH0KICAgIH0KCiAgICAvLyB2YWxpZGF0ZSBmaWxsZWQgaW4gZmllbGRzCiAgICAvLyBvcHRpb25hbCxvciByZXF1aXJlZC4KICAgIC8vIGFuZCBkbyBwb3N0IHByb2Nlc3NpbmcKICAgIGlmKCAkdmFsdWUgIT0gJycgKSB7CiAgICAgICAgLy8gdmFsaWRhdGUgdW5pcXVlIHZhbHVlcwogICAgICAgIGlmKCAkZGVmblsnZm9yY2VfdW5pcXVlJ10gKSB7CiAgICAgICAgICAgIC8vIG1ha2Ugc3VyZSB0aGF0IHRoaXMgdmFsdWUgZG9lc24ndCBhbHJlYWR5IGV4aXN0CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPklzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVzZXJfaWQsJG5hbWUsJHZhbHVlKSApIHsKICAgICAgICAgICAgICAgICRwYXJhbXMgPSAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZScsJG5hbWUsJHZhbHVlKTsKICAgICAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcywgdHJ1ZSApOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiAgICAgICAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICAgICAgIC8vIG5vdCBtdWNoIHdlIGNhbiBkbyB0byB2YWxpZGF0ZSBhIHRleHQgZmllbGQuCiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgMTogLy8gY2hlY2tib3gKICAgICAgICAgICAgLy8gb3IgYSBjaGVja2JveAogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICAgICAgIC8vIGVtYWlsIGFkZHJlc3NlcyBjYW4gYmUgdmFsaWRhdGVkIHRob3VnaAogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgICAgICAgIC8vIG1heWJlIHNpemU/CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICAgICAgICAgLy8gSG93IGNhbiB3ZSB2YWxpZGF0ZSBhIGRyb3Bkb3duPwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAgICAgICAgIC8vIEhvdyBjYW4gd2UgdmFsaWRhdGUgYSBtdWx0aS1zZWxlY3QKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCAkZmllbGRsaXN0WyRuYW1lXSApICkgewogICAgICAgICAgICAgICAgLy8gY29udmVydCBpdCB0byBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IGZvciBzdG9yYWdlCiAgICAgICAgICAgICAgICAkZmllbGRsaXN0WyRuYW1lXSA9IGltcGxvZGUoJywnLCRmaWVsZGxpc3RbJG5hbWVdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDY6IC8vIGltYWdlCiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgODogLy8gZGF0ZQogICAgICAgICAgICAvLyB0b2RvLCB2YWxpZGF0ZS4uLiBhZ2FpbnN0IGF0dHJpYnMuCiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KfQoKCi8vIGdldCB0aGUgcGFybXMgZnJvbSB0aGUgZmlyc3Qgc3RlcAovLyBhbmQgbWVyZ2UgZW0gaW50byAkcGFyYW1zIHNvIHdlIGNhbiBhY3R1YWxseSBhZGQgdGhlIHVzZXIgYWNjb3VudAppZiggaXNzZXQoJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10pICkgewogICAgJHBhcm1zMSA9ICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddOwogICAgdW5zZXQoJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10pOwogICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCAkcGFyYW1zLCAkcGFybXMxICk7Cn0KCi8vIG5vdyBmaW5kIG91dCB3aGljaCBncm91cHMgaGUncyBhIG1lbWJlciBvZgokdXNlcm5hbWUgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKSAkdXNlcm5hbWUgPSAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddOwokcGFzc3dvcmQgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddICkgJiYgJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSAhPSAnJyApICRwYXNzd29yZCA9ICRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ107CiRleHBpcmVzZGF0ZSA9IHN0cnRvdGltZSgnKzEwIHllYXJzJywgdGltZSgpKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddICkgKSAkZXhwaXJlc2RhdGUgPSAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddOwoKLy8gYW5kIFNldCB0aGUgdXNlcgokcmV0ID0gJHRoaXMtPlNldFVzZXIoICR1c2VyX2lkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXNkYXRlICk7CmlmKCAkcmV0WzBdID09IGZhbHNlICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAnUHJvYmxlbSBBdHRlbXB0aW5nIHRvIFNldCBVc2VyOiAnLiRyZXRbMV07CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fZWRpdHVzZXIyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgICByZXR1cm47Cn0KCi8vIHJlbW92ZSBhbnkgdXNlciB0ZW1wIGNvZGUgdGhhdCBtYXkgZXhpc3QuLi4KJHRoaXMtPlJlbW92ZVVzZXJUZW1wQ29kZSgkdXNlcl9pZCk7CgovLyBhbmQgdGhlbiBhZGQgaGltIHRvIGhpcyBncm91cHMKJHJldCA9ICR0aGlzLT5TZXRVc2VyR3JvdXBzKCAkdXNlcl9pZCwgJGdyb3VwaWRzICk7CmlmKCAkcmV0WzBdID09IGZhbHNlICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFzc2lnbnVzZXInKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsICRwYXJhbXMsIHRydWUgKTsKICAgIHJldHVybjsKfQoKLy8gYW5kIHRoZW4gYWRkIGhpcyBwcm9wZXJ0aWVzCi8vIGRlbGV0ZSB0aGVtIGFsbCBmaXJzdCB0aG91Z2ggKHNvIHdlIGRvbid0IGtlZXAgcHJvcGVydGllcyB3aXRoIGVtcHR5IHZhbHVlcykKJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVzZXJfaWQpOwokdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCggIiIsICR1c2VyX2lkLCB0cnVlICk7CmZvcmVhY2goICRmaWVsZGxpc3QgYXMgJGsgPT4gJHYgKSB7CiAgICAkZGVmbiA9JiAkZGVmbnNbJGtdOwogICAgJHJlbG4gPSYgJGdyb3VwcHJvcHNbJGtdOwoKICAgIGlmKCAkZGVmblsndHlwZSddID09IDYgKSB7CiAgICAgICAgLy8gaW1hZ2UgdHlwZQogICAgICAgIGlmKCBpc3NldCgkX0ZJTEVTWyRpZC4naW5wdXRfJy4ka10pICYmICRfRklMRVNbJGlkLidpbnB1dF8nLiRrXVsnc2l6ZSddID4gMCApIHsKICAgICAgICAgICAgLy8gaXQncyBhbiB1cGxvYWRlZCBmaWxlIHR5cGUKICAgICAgICAgICAgJHJlc3VsdCA9ICR0aGlzLT5NYW5hZ2VJbWFnZVVwbG9hZCgkaWQsJ2lucHV0XycsICRrLCAkdXNlcl9pZCApOwogICAgICAgICAgICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApIHsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yJykuJyZuYnNwOycuJHJlc3VsdFsxXTsKICAgICAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsICRwYXJhbXMsIHRydWUgKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdiA9ICRyZXN1bHRbMV07CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2hpZGRlbl8nLiRrXSkgKSB7CiAgICAgICAgICAgIC8vIGltYWdlIHdhcyBub3QgdXBsb2FkZWQsIHVzZSB0aGUgb2xkIHZhbHVlLgogICAgICAgICAgICAkdiA9IHRyaW0oJHBhcmFtc1snaGlkZGVuXycuJGtdKTsKICAgICAgICB9CiAgICB9CgogICAgaWYoICR2ID09ICcnICkgY29udGludWU7CiAgICBpZiggaXNfYXJyYXkoJHYpICkgJHYgPSBpbXBsb2RlKCcsJywkdik7CiAgICAkcmV0ID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRrLCAkdiwgJHVzZXJfaWQgKTsKICAgIGlmKCAkcmV0ID09IGZhbHNlICkgewogICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICdFcnJvciBTZXR0aW5nIFByb3BlcnR5ICcuJGsuJyB0byAnLiR2LicgZm9yIHVzZXIgJy4kdXNlcl9pZDsKICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fZWRpdHVzZXIyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgICAgICAgcmV0dXJuOwogICAgfQp9CgovLyBhbmQgd2UncmUgZG9uZQovLyBzZW5kIHRoZSBldmVudAokZXZlbnRfcGFyYW1zID0gYXJyYXkoKTsKJGV2ZW50X3BhcmFtc1snbmFtZSddID0gJHVzZXJuYW1lOwokZXZlbnRfcGFyYW1zWydpZCddID0gJHVzZXJfaWQ7CiR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CiR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICd1c2VycycgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_forgotpw.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSApICkgewogIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmV0dXJudG8nXSApICkgewogICAgJHJldHVybmlkID0gJHBhcmFtc1snaW5wdXRfcmV0dXJudG8nXTsKICB9CiAgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOwogIHJldHVybjsKIH0KCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gKSAgKSB7CiAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpOwogICRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CiAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogIHJldHVybjsKIH0KICAgIAokY2FwdGNoYSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewogIGlmKCAhJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYSgkcGFyYW1zWydpbnB1dF9jYXB0Y2hhJ10pICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJyk7CiAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgJHRoaXMtPm15UmVkaXJlY3QoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQogfQoKLy8gc2VlIGlmIHdlIGNhbiBmaW5kIHRoaXMgdXNlcgokdWlkID0gJHRoaXMtPkdldFVzZXJJRCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApOwppZiggISR1aWQgKSB7CiAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpOwogICRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CiAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogIHJldHVybjsKIH0KCi8vIHNlZSBpZiB3ZSBjYW4gZGlnIHVwIGFuIGVtYWlsIGFkZHJlc3MgZm9yIGhpbQokZW1haWwgPSAkdGhpcy0+R2V0RW1haWwoJHVpZCk7CmlmKCAhZW1wdHkoJGVtYWlsKSApIHsKICAkY21zbWFpbGVyID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CiAgaWYoICEkY21zbWFpbGVyICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9tYWlsZXJtb2R1bGUnKTsKICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQogICAgCiAgLy8gd2UgZm91bmQgYW5lIG1haWwgYWRkcmVzcwogIC8vIGdlbmVyYXRlIGEgY29kZSwgYW5kIHN0b3JlIGl0IHNvbWVwbGFjZQogIC8vIGJ1dCB0aGF0IG1lYW5zIHdlIGdvdHRhIGNsZWFuIHRoZXNlIHRoaW5ncyB1cAogIC8vIGZyb20gdGltZSB0byB0aW1lLgogICRjb2RlID0gJHRoaXMtPkdlbmVyYXRlUmFuZG9tUHJpbnRhYmxlU3RyaW5nKCk7CiAgaWYoICEkdGhpcy0+U2V0VXNlclRlbXBDb2RlKCAkdWlkLCAkY29kZSApICkgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVzZXRhbHJlYWR5c2VudCcpOwogICAgJHBhcmFtc1snZm9ybSddID0gJ2ZvcmdvdHB3JzsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCRwYXJhbXMgKTsKICAgIHJldHVybjsKICB9CiAgICAKICAvLyBzZW5kIG91ciBmdW5reSBlbWFpbAogICRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpOwogICRwaWQgPSAkcmV0dXJuaWQ7CiAgaWYoICRwYWdlICkgewogICAgJHRwaWQgPSBDb250ZW50T3BlcmF0aW9uczo6Z2V0X2luc3RhbmNlKCktPkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKICAgIGlmKCAkdHBpZCAhPSBmYWxzZSApICRwaWQgPSAkdHBpZDsKICB9CiAgICAKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcsCgkJCSR0aGlzLT5MYW5nKCdtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnKSk7CiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfY29kZScsJHRoaXMtPkxhbmcoJ21lc3NhZ2VfY29kZScpKTsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RhdGFfY29kZScsJGNvZGUpOwogICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2xpbmsnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbGluaycpKTsKICAkcGFybXMgPSBhcnJheSggJ2lucHV0X3VpZCcgPT4gJHVpZCwgJ2lucHV0X2NvZGUnID0+ICRjb2RlICk7CiAgCiAgJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgJHByZXR0eXVybCA9ICJmZXUvdmVyaWZ5L3skcGlkfS97JHVpZH0veyRjb2RlfSI7CiAgJGxpbmsgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ3ZlcmlmeWNvZGUnLCRwaWQsJycsJHBhcm1zLCAnJywgdHJ1ZSwgZmFsc2UsICcnLCBmYWxzZSwgJHByZXR0eXVybCk7CiAgCiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkYXRhX2xpbmsnLAoJCQkkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ3ZlcmlmeWNvZGUnLCRwaWQsJGxpbmssJHBhcm1zKSk7CiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkYXRhX3VybCcsJGxpbmspOwogIAogICRib2R5ID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScpOwogIAogICRjbXNtYWlsZXItPkFkZEFkZHJlc3MoICRlbWFpbCApOwogICRjbXNtYWlsZXItPlNldEJvZHkoICRib2R5ICk7CiAgJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwogIGlmKCBzdHJpcF90YWdzKCRib2R5KSAhPSAkYm9keSApIHsKICAgICRjbXNtYWlsZXItPklzSFRNTCh0cnVlKTsKICB9CiAgJGNtc21haWxlci0+U2V0U3ViamVjdCgkdGhpcy0+TGFuZygnbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCcpKTsKICAkY21zbWFpbGVyLT5TZW5kKCk7CiAgICAKICAvLyBhbmQgdGVsbCB0aGUgdXNlciBzb21ldGhpbmcKICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50JywkZW1haWwpOwogICRwYXJhbXNbJ3NraXBmb3JtZGlzcGxheSddID0gMTsKICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgCiAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZXR1cm50byddICkgKSB7CiAgICAkcmV0dXJuaWQgPSAkcGFyYW1zWydpbnB1dF9yZXR1cm50byddOwogIH0KICAgIAogICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCRwYXJhbXMgKTsKICByZXR1cm47CiB9CgovLyB3ZSBmb3VuZCBubyBlbWFpbCBhZGRyZXNzCiRwYXJhbXNbJ2Vycm9yJ10gPSAxOwokcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY291bGRub3RmaW5kZW1haWwnKTsKJHBhcmFtc1snZm9ybSddID0gJ2ZvcmdvdHB3JzsKJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_login.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIGhvbmV5cG90IGNhcHRjaGEgdGVzdAppZiggaXNzZXQoJHBhcmFtc1snZmV1X19kYXRhJ10pICYmICRwYXJhbXNbJ2ZldV9fZGF0YSddICE9ICcnICkgewogICRwYXJhbXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJyk7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgcmV0dXJuOwp9CgokY2FwdGNoYSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewogIGlmICghJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYSgkcGFyYW1zWydpbnB1dF9jYXB0Y2hhJ10pKSB7CiAgICAkcGFyYW1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCcpOwogICAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgICByZXR1cm47CiAgfQp9CgppZiggIWlzc2V0KCAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSApIHx8ICRwYXJhbXNbJ2ZldV9pbnB1dF91c2VybmFtZSddID09ICcnICkgewogICRwYXJhbXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3VzZXJuYW1lJyk7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgcmV0dXJuOwp9CgppZiggIWlzc2V0KCAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSApIHx8ICRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddID09ICcnICkgewogICRwYXJhbXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJyk7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgcmV0dXJuOwp9CgovLyBub3cgdmFsaWRhdGUgdGhlIHBhc3N3b3JkIGFuZCB1c2VybmFtZQppZiAoaXNzZXQoJHBhcmFtc1snb25seV9ncm91cHMnXSkpIHsKICAkcmVzdWx0ID0gJHRoaXMtPkxvZ2luKCAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSwgJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10sICRwYXJhbXNbJ29ubHlfZ3JvdXBzJ10gKTsKfQplbHNlIHsKICAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUoJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10pOwogICRwYXJhbXNbJ2ZldV9pbnB1dF91c2VybmFtZSddID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk7CiAgJHJlc3VsdCA9ICR0aGlzLT5Mb2dpbiggJHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ10sICRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddICk7Cn0KaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKSB7CiAgJHBhcmFtc1snZXJyb3InXSA9ICRyZXN1bHRbMV07CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgcmV0dXJuOwp9CiR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygnZnJvbnRlbmR1c2VyX2xvZ2dlZGluJykuIjogIi4kcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSApOwoKLy8KLy8gd2UncmUgbG9nZ2VkIGluCi8vCgovLyBzdG9yZSBhIGNvb2tpZSA/CmlmKCBpc3NldCgkcGFyYW1zWydmZXVfcmVtZW1iZXJtZSddKSAmJiAkcGFyYW1zWydmZXVfcmVtZW1iZXJtZSddID09IDEpIHsKICBpZiggKCRuYW1lID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKSkgIT0gJycgKSB7CiAgICAvLyB0aGlzIGlzIHRoZSBvbmx5IHBsYWNlIHRoaXMgZGF0YSBpcyBzZXQuCiAgICAkZGF0YSA9IGFycmF5KCd1aWQnPT4oaW50KSR1aWQsJ3RpbWUnPT50aW1lKCksJ3Nlc3Npb25pZCc9PiRzZXNzaW9uaWQpOwogICAgQHNldGNvb2tpZSgkbmFtZSxiYXNlNjRfZW5jb2RlKHNlcmlhbGl6ZSgkZGF0YSkpLHRpbWUoKSs2MCoyNCozNjAwLCcvJyk7CiAgfQp9CgovLyByZWRpcmVjdCBzb21ld2hlcmUgPwokdXNlcmlkID0gJHJlc3VsdFswXTsKJHBhZ2UgPSAnJzsKJHJldHVybl91cmwgPSAnJzsKaWYoICgkdXJsID0gJHRoaXMtPnNlc3Npb25fZ2V0KCdwb3N0bG9naW5fdXJsJykpICkgewogICRyZXR1cm5fdXJsID0gdHJpbSgkdXJsKTsKICAkdGhpcy0+c2Vzc2lvbl9jbGVhcigncG9zdGxvZ2luX3VybCcpOwp9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3JldHVybmxhc3QnXSkgJiYgaXNzZXQoJF9TRVNTSU9OWydmZXVfcHJlbG9naW5fdXJsJ10pICkgewogICRyZXR1cm5fdXJsID0gdHJpbSgkX1NFU1NJT05bJ2ZldV9wcmVsb2dpbl91cmwnXSk7CiAgdW5zZXQoJF9TRVNTSU9OWydmZXVfcHJlbG9naW5fdXJsJ10pOwp9CmVsc2UgewogICRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicpOwogIGlmKCBpc3NldCggJHBhcmFtc1sncmV0dXJudG8nXSApICkgJHBhZ2UgPSAkcGFyYW1zWydyZXR1cm50byddOwoKICAvLyByZXBsYWNlIHskZ3JvdXBuYW1lfSB3aXRoIHRoZSBmaXJzdCBncm91cG5hbWUgd2UgY2FuIGZpbmQgdGhhdCBtYXRjaGVzCiAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVzZXJpZCApOwogICRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdncm91cCcsJGdyb3VwbmFtZSk7CiAgJHBhZ2UgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHBhZ2UpOwp9CgovLyBzZW5kIHRoZSBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkdXNlcmlkOwokcGFybXNbJ3VzZXJuYW1lJ10gPSAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXTsKJHBhcm1zWydpcCddID0gY2dlX3V0aWxzOjpnZXRfcmVhbF9pcCgpOwokdGhpcy0+U2VuZEV2ZW50KCAnT25Mb2dpbicsICRwYXJtcyApOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25Mb2dpbicsJHBhcm1zKTsKCmlmKCAkcmV0dXJuX3VybCAhPSAnJyApIHsKICByZWRpcmVjdCgkcmV0dXJuX3VybCk7Cn0KZWxzZSBpZiggJHBhZ2UgKSB7CiAgJGlkID0gQ29udGVudE1hbmFnZXI6OmdldF9pbnN0YW5jZSgpLT5HZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgaWYoICRpZCApIHsKICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoICRpZCApOwogICAgcmV0dXJuOwogIH0KICBkaWUoICJjb3VsZG4ndCBnZXQgcGFnZWlkIGZvciAkcGFnZSIgKTsKfQplbHNlIHsKICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkcmV0dXJuaWQgKTsKfQoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_lostusername.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CgppZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JldHVybnRvJ10gKSApCiAgewogICAgJHJldHVybmlkID0gJHBhcmFtc1snaW5wdXRfcmV0dXJudG8nXTsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOwogICAgcmV0dXJuOwogIH0KCi8vIGlmKCAhaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdCddICkgKQovLyAgIHsKLy8gICAgIC8vIHNob3VsZCBuZXZlciBoYXBwZW4KLy8gICAgIHJldHVybjsKLy8gICB9CgpmdW5jdGlvbiBfaGFuZGxlRXJyb3IoICRpZCwgJiRtb2R1bGUsICRyZXR1cm5pZCwgJG1lc3NhZ2UsICRwYXJhbXMgKQp7CiAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgJHBhcmFtc1snbWVzc2FnZSddID0gJG1lc3NhZ2U7CiAgJHBhcmFtc1snZm9ybSddID0gJ2xvc3R1c2VybmFtZSc7CiAgJG1vZHVsZS0+UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKfQoKLy8KLy8gUHJvY2VzcyBjYXB0Y2hhCi8vCiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoICRwYXJhbXNbJ25vY2FwdGNoYSddKSApCiAgewogICAgaWYoICEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkgKQogICAgICB7CgkgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkJJHRoaXMtPkxhbmcoJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCcpLAoJCQkkcGFyYW1zKTsKCSAgcmV0dXJuOwogICAgICB9CiAgfQoKLy8KLy8gQ2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBwYXNzd29yZCB3YXMgZmlsbGVkIG91dCAKLy8KaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSkgfHwgCiAgICB0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddKSA9PSAnJyApCiAgewogICAgX2hhbmRsZUVycm9yKCAkaWQsICR0aGlzLCAkcmV0dXJuaWQsIAoJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpLAoJCSAgJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKLy8KLy8gUHJvY2VzcyBhbGwgb2YgdGhlIHBhcmFtcywgdGhhdCBoYXZlIGJvdGggYW4gZmV1X2hpZGRlbiBhbmQgZmV1X2lucHV0IGZpZWxkCi8vIGV4dHJhY3QgdGhlIHByb3BlcnR5IG5hbWVzIG91dCBvZiB0aGVtCi8vCiRmaWVsZHMgPSBhcnJheSgpOwokZmlyc3Rwcm9wID0gJyc7CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKQp7CiAgaWYoIHByZWdfbWF0Y2goICcvXmZldV9oaWRkZW5fLycsICRrZXkgKSApCiAgICB7CiAgICAgICRwcm9wbmFtZSA9IHN1YnN0ciggJGtleSwgc3RybGVuKCdmZXVfaGlkZGVuXycpKTsKICAgICAgJGFyciA9IGV4cGxvZGUoIjsiLCR2YWx1ZSk7CgogICAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pIHx8CgkgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPT0gJycpCgl7CgkgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkJJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSksCgkJCSRwYXJhbXMpOwoJICByZXR1cm47Cgl9CgogICAgICBpZiggJGZpcnN0cHJvcCA9PSAnJyApICRmaXJzdHByb3AgPSAkcHJvcG5hbWU7CiAgICAgICRmaWVsZHNbJHByb3BuYW1lXSA9IGFycmF5KCk7CiAgICAgICRmaWVsZHNbJHByb3BuYW1lXVsnaW5wdXQnXSA9ICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV07CiAgICB9Cn0KCi8vCi8vIE5vdywgdHJ5IHRvIGZpbmQgYSB1c2VyaWQvdXNlcm5hbWUKLy8gdGhhdCBtYXRjaCB0aGVzZSBwcm9wZXJ0aWVzCi8vCiRxdWVyeSA9ICJTRUxFQ1QgdXNlcmlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMKICAgICAgICAgICBXSEVSRSB0aXRsZSA9ID8gQU5EIGRhdGEgPSA/IjsKJG5ld2ZpZWxkcyA9IGFycmF5KCk7CmZvcmVhY2goICRmaWVsZHMgYXMgJHByb3BuYW1lID0+ICRkYXRhICkKewogICRtYXRjaGVzID0gYXJyYXkoKTsKICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSwgYXJyYXkoJHByb3BuYW1lLCRkYXRhWydpbnB1dCddKSApOwogIHdoaWxlKCAkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCiAgICB7CiAgICAgICRtYXRjaGVzW10gPSAkcm93Wyd1c2VyaWQnXTsKICAgIH0KCiAgaWYoIGNvdW50KCRtYXRjaGVzKSA9PSAwICkKICAgIHsKICAgICAgLy8gbm8gbWF0Y2hlcywgd2UgY2FuIHN0b3AgaGVyZQogICAgICBfaGFuZGxlRXJyb3IoICRpZCwgJHRoaXMsICRyZXR1cm5pZCwgCgkJICAgICR0aGlzLT5MYW5nKCdlcnJvcl9jYW50ZmluZHVzZXInKSwgJHBhcmFtcyApOwogICAgICByZXR1cm47CiAgICB9CgogIC8vIHN0b3JlIHRoZSByZXN1bHRzCiAgJGRhdGFbJ21hdGNoZXMnXSA9ICRtYXRjaGVzOwogICRuZXdmaWVsZHNbJHByb3BuYW1lXSA9ICRkYXRhOwp9CgokZmllbGRzID0gJG5ld2ZpZWxkczsKCi8vIG5vdyBnbyB0aHJvdWdoIGVhY2ggb2YgdGhlIG1hdGNoZXMgYXJyYXlzLCBhbmQgZmluZCBhbGwgb2YgdGhlCi8vIHVzZXJpZHMgdGhhdCBhcmUgdGhlIHNhbWUgaW4gZWFjaCByb3cKJGdvb2R1aWRzID0gYXJyYXkoKTsKJGZpcnN0dWlkcyA9JiAkZmllbGRzWyRmaXJzdHByb3BdWydtYXRjaGVzJ107CmZvcmVhY2goICRmaXJzdHVpZHMgYXMgJGZpcnN0dWlkICkKewogICRmb3VuZCA9IHRydWU7CiAgZm9yZWFjaCggJGZpZWxkcyBhcyAkcHJvcG5hbWUgPT4gJGRhdGEgKQogICAgewogICAgICBpZiggJHByb3BuYW1lID09ICRmaXJzdHByb3AgKQoJewoJICBjb250aW51ZTsKCX0KCiAgICAgIGlmKCBhcnJheV9zZWFyY2goICRmaXJzdHVpZCwgJGRhdGFbJ21hdGNoZXMnXSwgdHJ1ZSApID09PSBGQUxTRSApCgl7CgkgIC8vIHRoaXMgZmlyc3R1aWQgdWlkIGZhaWxzLgoJICAkZm91bmQgPSBmYWxzZTsKCSAgYnJlYWs7Cgl9CiAgICB9CiAgaWYoICRmb3VuZCA9PSB0cnVlICkKICAgIHsKICAgICAgJGdvb2R1aWRzW10gPSAkZmlyc3R1aWQ7CiAgICB9Cn0KCmlmKCBjb3VudCggJGdvb2R1aWRzICkgPiAxICkKICB7CiAgICAvLyBub24gdW5pcXVlIG1hdGNoCiAgICBfaGFuZGxlRXJyb3IoICRpZCwgJHRoaXMsICRyZXR1cm5pZCwgCgkJICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9udW5pcXVlbWF0Y2gnKSwgJHBhcmFtcyk7CiAgICByZXR1cm47CiAgfQoKJHVpZCA9ICRnb29kdWlkc1swXTsKCi8vCi8vIENvbmZpcm0gdGhlIHBhc3N3b3JkCi8vCiR1c2VybmFtZSA9ICR0aGlzLT5HZXRVc2VyTmFtZSgkdWlkKTsKaWYoICEkdXNlcm5hbWUgKQogIHsKICAgIC8vIG5vdyB0aGlzIGlzIHdhcnBlZAogICAgX2hhbmRsZUVycm9yKCAkaWQsICR0aGlzLCAkcmV0dXJuaWQsIAoJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpLCAkcGFyYW1zKTsKICAgIHJldHVybjsKICB9CiRwdyA9ICRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddOwppZiggISR0aGlzLT5DaGVja1Bhc3N3b3JkKCAkdXNlcm5hbWUsICRwdyApICkKICB7CiAgICAvLyBub3cgdGhpcyBpcyB3YXJwZWQKICAgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkgICR0aGlzLT5MYW5nKCdlcnJvcl9sb2dpbmZhaWxlZCcpLCAkcGFyYW1zKTsKICAgIHJldHVybjsKICB9CgovLwovLyBZYWhvbywgd2UgbWFkZSBpdAovLwoKLy8gZGlzcGxheSBhIHdhcm0gYW5kIGZ1enp5IG1lc3NhZ2UKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfeW91cnVzZXJuYW1laXMnLCR0aGlzLT5MYW5nKCd5b3VyX3VzZXJuYW1lX2lzJykpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwokc21hcnR5LT5hc3NpZ24oJ3ByZW1zZycsJHRoaXMtPkxhbmcoJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJykpOwokc21hcnR5LT5hc3NpZ24oJ3Bvc3Rtc2cnLCR0aGlzLT5MYW5nKCdsb3N0dW5jb25maXJtX3Bvc3Rtc2cnKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJyk7Ci8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_setforgotpwtemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3RlbXBsYXRlcycgKSApIHJldHVybjsKCmlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdHMnXSApICkgewogICRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfZm9yZ290cGFzc3dvcmQxLnRwbCc7CiAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKICAKICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMi50cGwnOwogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKICAKICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMy50cGwnOwogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nLGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikpOwogICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJykpOwp9CmVsc2UgewogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQxJ10pOwogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScsICRwYXJhbXNbJ3RlbXBsYXRlY29udGVudDInXSk7OwogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQzJ10pOzsKICAkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygndGVtcGxhdGVfc2F2ZWQnKSk7CiB9CiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJywgJycsICdhZG1pbl90ZW1wbGF0ZXMnICk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_setprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2VkaXRwcmVmcycgKSApIHJldHVybjsKCmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVtb3ZlYWxsJ10gKSApCiAgewogICAgJHRoaXMtPkV4cGlyZVRlbXBDb2RlcygnLTUgeWVhcnMnKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlbW92ZTF3ZWVrJ10gKSApCiAgewogICAgJHRoaXMtPkV4cGlyZVRlbXBDb2RlcygnLTEgd2VlaycpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAncHJlZnMnLCAnJywgJ2FkbWluX3NldHRpbmdzJyk7CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVtb3ZlMW1vbnRoJ10gKSApCiAgewogICAgJHRoaXMtPkV4cGlyZVRlbXBDb2RlcygnLTEgbW9udGgnKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2NhbmNlbCddICkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwogIH0KCgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYXV0b19jcmVhdGVfdW5rbm93bicsKGludCkkcGFyYW1zWydhdXRvX2NyZWF0ZV91bmtub3duJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYXV0aF9tb2R1bGUnLHRyaW0oJHBhcmFtc1snYXV0aF9tb2R1bGUnXSkpOwoKJHJhbmRvbXVzZXJuYW1lID0gMDsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yYW5kb211c2VybmFtZSddKSApCiAgewogICAgJHJhbmRvbXVzZXJuYW1lID0gKGludCkkcGFyYW1zWydpbnB1dF9yYW5kb211c2VybmFtZSddOwogIH0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZV9yYW5kb211c2VybmFtZScsJHJhbmRvbXVzZXJuYW1lKTsKCmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlYWdlJ10pICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsKGludCkkcGFyYW1zWydpbnB1dF9leHBpcmVhZ2UnXSk7CiAgfQoKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycsICRwYXJhbXNbJ2lucHV0X3Nlc3Npb250aW1lb3V0J10pOwoKJGNvb2tpZV9rZWVwYWxpdmUgPSAwOwppZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2Nvb2tpZWtlZXBhbGl2ZSddICkgKSB7CiAgJGNvb2tpZV9rZWVwYWxpdmUgPSAkcGFyYW1zWydpbnB1dF9jb29raWVrZWVwYWxpdmUnXTsKfQokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsJGNvb2tpZV9rZWVwYWxpdmUpOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3NpZ25pbl9idXR0b24nXSkgKSB7CiAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NpZ25pbl9idXR0b24nLCAkcGFyYW1zWydpbnB1dF9zaWduaW5fYnV0dG9uJ10pOwp9CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywoaXNzZXQoJHBhcmFtc1snaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10pPyRwYXJhbXNbJ2lucHV0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddOjApKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCRwYXJhbXNbJ2lucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLCRwYXJhbXNbJ2lucHV0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddKTsKaWYgKGlzc2V0KCRwYXJhbXNbJ25vdGlmaWNhdGlvbnMnXSkpIHsKICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9ucycsaW1wbG9kZSgnLCcsJHBhcmFtc1snbm90aWZpY2F0aW9ucyddKSk7Cn0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJywkcGFyYW1zWydub3RpZmljYXRpb25fYWRkcmVzcyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkcGFyYW1zWydub3RpZmljYXRpb25fc3ViamVjdCddKTsKJHRoaXMtPlNldFRlbXBsYXRlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnLCRwYXJhbXNbJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddKTsKICAgIAokcXVlcnkgPSAiU0VMRUNUIHBlcm1pc3Npb25faWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4icGVybWlzc2lvbnMgV0hFUkUgcGVybWlzc2lvbl9uYW1lIExJS0UgJ0ZFVSAlJyI7CiRjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CgokZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyA9IDA7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddICkgKQogICRmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zID0gJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsJGZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMpOwoKaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSkgJiYgJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddPT0xKQogIHsKICAgIC8vIHVzaW5nIEZFVXNlci1zcGVjaWZpYyBwZXJtaXNzaW9ucywgc28gY3JlYXRlIHRoZW0gaWYgbmVjZXNzYXJ5CiAgICBpZiAoaW50dmFsKCRjb3VudCkgPT0gMCkKICAgICAgewoJLy8gY3JlYXRlICdlbQoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgVXNlcnMnLCdBZGQgRnJvbnQtRW5kIFVzZXJzJyk7CgkkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignRkVVIE1vZGlmeSBVc2VycycsJ01vZGlmeSBGcm9udC1FbmQgVXNlcnMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJywnUmVtb3ZlIEZyb250LUVuZCBVc2VycycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgR3JvdXBzJywnQWRkIEZyb250LUVuZCBVc2VyIEdyb3VwcycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXBzJywnTW9kaWZ5IEZyb250LUVuZCBVc2VyIEdyb3VwcycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXIgR3JvdXAgQXNzaWdubWVudHMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIEdyb3VwcycsJ1JlbW92ZSBGcm9udC1FbmQgVXNlciBHcm91cHMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXJzIFNpdGUgUHJlZnMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEZyb250RW5kVXNlclByb3BzJywnTW9kaWZ5IEZyb250LUVuZCBVc2VyIFByb3BlcnRpZXMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFRlbXBsYXRlcycsJ01vZGlmeSBGcm9udC1FbmQgVXNlciBUZW1wbGF0ZXMnKTsKICAgICAgfQogIH0KCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF90aW1lcycsdHJpbSgkcGFyYW1zWydmb3JjZWxvZ291dF90aW1lcyddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF9zZXNzaW9uYWdlJywoaW50KSRwYXJhbXNbJ2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdleHBpcmV1c2Vyc19pbnRlcnZhbCcsKGludCkkcGFyYW1zWydleHBpcmV1c2Vyc19pbnRlcnZhbCddKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ3BhZ2V0eXBlX2dyb3VwcyddKSApIHsKICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZXR5cGVfZ3JvdXBzJyxpbXBsb2RlKCcsJywkcGFyYW1zWydwYWdldHlwZV9ncm91cHMnXSkpOwp9CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9hY3Rpb24nLHRyaW0oJHBhcmFtc1sncGFnZXR5cGVfYWN0aW9uJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nLChpbnQpJHBhcmFtc1sncGFnZXR5cGVfcmVkaXJlY3R0byddKTsKICAgIAokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_userchangesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCBpc3NldCgkcGFyYW1zWydmZXVfY2FuY2VsJ10pICkgewogIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X3JldHVybnRvJ10gKSApICRyZXR1cm5pZCA9IChpbnQpJHBhcmFtc1snZmV1X3JldHVybnRvJ107CiAgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOwp9CgokdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKaWYoICR1aWQgPT0gZmFsc2UgKSB7CiAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3Jfbm90bG9nZ2VkaW4nKSk7CiAgcmV0dXJuOwp9CiRyZXN1bHQgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1aWQgKTsKaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKSB7CiAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkcmVzdWx0WzFdKTsKICByZXR1cm47Cn0KJHVpbmZvID0gJHJlc3VsdFsxXTsKCiR1c2VybmFtZSA9ICR1aW5mb1sndXNlcm5hbWUnXTsKJHBhc3N3b3JkID0gJyc7CgovLyBjaGVjayBpZiB1c2VyIGlzIGFsbG93ZWQgdG8gY2hhbmdlIGhpcyB1c2VybmFtZQokY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0NIQU5HRVVTRVJOQU1FKSApIHsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSkgKSB7CiAgICAgICAgLy8gdXNlciBpcyBjaGFuZ2luZyBoaXMgdXNlcm5hbWUKICAgICAgICAkdG1wID0gdHJpbSgkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAgICAgaWYoICEkdGhpcy0+SXNWYWxpZFVzZXJuYW1lKCR0bXAsRkFMU0UsJHVpZCkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHVzZXJuYW1lJyk7CiAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBpZiggJHRtcCApICR1c2VybmFtZSA9ICR0bXA7CiAgICB9Cn0KCi8vIGNoZWNrIGlmIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gY2hhbmdlIGhpcyBwYXNzd29yZAppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VQQVNTV0QpICkgewogICAgLy8gY2hhbmdlIHRoaXMgcGFzc3dvcmQKICAgICRwYXNzd29yZCA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSkpOwogICAgJHJlcGVhdCAgID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF9yZXBlYXRwYXNzd29yZCddKSk7CiAgICBpZiggJHBhc3N3b3JkICE9ICRyZXBlYXQgJiYgJHBhc3N3b3JkICE9ICcnKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnKTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgIH0KCiAgICBpZiggJHBhc3N3b3JkICE9ICcnICYmICEkdGhpcy0+SXNWYWxpZFBhc3N3b3JkKCRwYXNzd29yZCkgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpOwogICAgICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgfQp9CgovLyBnZXQgcHJvcGVydHkgZGVmaW5pdGlvbnMKJGRlZm5zYnluYW1lID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKCi8vIEdldCBtZW1iZXIgZ3JvdXBzCiRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CgovLyBHZXQgZ3JvdXAgcHJvcGVydHkgcmVsYXRpb25zIGludG8gYSB1bmlvbi4KJHByb3BlcnRpZXMgPSBhcnJheSgpOwokdG1wID0gYXJyYXkoKTsKZm9yZWFjaCggJGdyb3VwcyBhcyAkb25lZ3JvdXAgKSB7CiAgICAkcHJvcHJlbGF0aW9ucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkb25lZ3JvdXBbJ2dyb3VwaWQnXSApOwogICAgJHRtcCA9IFJSVXRpbHM6OmFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICR0bXAsICRwcm9wcmVsYXRpb25zICk7CiAgICB1YXNvcnQoICR0bXAsIGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSApOwp9CiRwcm9wZXJ0aWVzID0gY2dlX2FycmF5Ojp0b19oYXNoKCR0bXAsJ25hbWUnKTsKCiR1c2VycHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoJHVpZCk7CiRkZWxldGVwcm9wcyA9IGFycmF5KCk7CgovLyBkbyB2YWxpZGF0aW9uIG9mIHRoZSBmaWVsZHMuCmZvcmVhY2goICRwcm9wZXJ0aWVzIGFzICRwcm9wbmFtZSA9PiAkcHJvcCApIHsKICAgICRmbGR0eXBlID0gJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3R5cGUnXTsKICAgICRyZXF1aXJlZCA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSAyKTsKICAgICRoaWRkZW4gICA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSAzKTsKICAgICRyZWFkb25seSA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSA0KTsKCiAgICBzd2l0Y2goICRmbGR0eXBlICkgewogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfVEVYVDoKICAgICAgICBpZiggJHJlcXVpcmVkICkgewogICAgICAgICAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pIHx8IGVtcHR5KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pICkgewogICAgICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3Byb21wdCddKTsKICAgICAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBicmVhazsKCiAgICBjYXNlIEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9DSEVDS0JPWDoKICAgICAgICBpZiggJHJlcXVpcmVkICkgewogICAgICAgICAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pIHx8ICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPT0gMCApIHsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWydwcm9tcHQnXSk7CiAgICAgICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfRU1BSUw6CiAgICAgICAgaWYoICRyZXF1aXJlZCApIHsKICAgICAgICAgICAgaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKS4nICcuJHJlc3VsdFsxXTsKICAgICAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRyZXN1bHQgPSAkdGhpcy0+SXNWYWxpZEVtYWlsQWRkcmVzcyggJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSwgJHVpZCApOwogICAgICAgICAgICAgICAgaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKSB7CiAgICAgICAgICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKS4nICcuJHJlc3VsdFsxXTsKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfVEVYVEFSRUE6CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3Byb21wdCddKTsKICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBpZiggJHJlcXVpcmVkICYmIGVtcHR5KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pICkgewogICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWydwcm9tcHQnXSk7CiAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfTVVMVElTRUxFQ1Q6CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3Byb21wdCddKTsKICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICAvLyBlbmNvZGUgaXQgaW50byBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0LgogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPSAnJzsKICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfSU1BR0U6CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nX2NsZWFyJ10pICYmCiAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nX2NsZWFyJ10gPT0gJ2NsZWFyJyApIHsKICAgICAgICAgICAgLy8gd2UncmUgdG9sZCB0byBjbGVhciBhbiBpbWFnZSBwcm9wZXJ0eSwgd2UgbXVzdCBhbHNvCiAgICAgICAgICAgIC8vIGRlbGV0ZSB0aGUgaW1hZ2UKICAgICAgICAgICAgJGRlc3REaXIxID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uJy8nOwogICAgICAgICAgICAkZGVzdERpcjEgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuJy8nOwogICAgICAgICAgICAkZmlsZTEgPSAkZGVzdERpcjEuJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXTsKICAgICAgICAgICAgQHVubGluayggJGZpbGUxICk7CgogICAgICAgICAgICAvLyB1bnNldCB0aGUgaGlkZGVuIHBhcmFtIHRvIHByZXZlbnQgYW55IGZ1cnRoZXIgcHJvY2Vzc2luZwogICAgICAgICAgICAkZGVsZXRlcHJvcHNbXSA9ICRwcm9wbmFtZTsKICAgICAgICAgICAgdW5zZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKTsKICAgICAgICB9CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJgogICAgICAgICAgICAoKCFpc3NldCgkX0ZJTEVTWyRpZC4nZmV1X2lucHV0XycuJHByb3BuYW1lXSkgfHwgJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV1bJ3NpemUnXSA9PSAwKSAmJgogICAgICAgICAgICAgKCFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSB8fCAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdID09ICcnKSkgKSB7CiAgICAgICAgICAgIC8vIGJ1dCB3ZSBjYW4ndCBmaW5kIGEgdmFsdWUKICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkcHJvcG5hbWUpOwogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX0RBVEU6CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPQogICAgICAgICAgICAgICAgbWt0aW1lKDAsMCwwLAogICAgICAgICAgICAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSwKICAgICAgICAgICAgICAgICAgICAgICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ0RheSddLAogICAgICAgICAgICAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKICAgICAgICAgICAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidNb250aCddKTsKICAgICAgICAgICAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidEYXknXSk7CiAgICAgICAgICAgIHVuc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKICAgICAgICB9CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBicmVhazsKCiAgICBjYXNlIEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9EUk9QRE9XTjoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX1JBRElPQlVUTlM6CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICAgIC8vIHdlIGRvbid0IGFjY2VwdCBmaWVsZCB0eXBlcyBsaWtlIHRoaXMKICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudHNldHByb3BlcnR5dHlwZScsJHByb3BuYW1lKTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgYnJlYWs7CiAgICB9Cn0KCgovLwovLyBub3cgd2UgYWN0dWFsbHkgY2hhbmdlIHRoZSB1c2VyIHNldHRpbmdzCi8vCgovLyBwYXNzd29yZAppZiggJHBhc3N3b3JkICE9ICcnIHx8ICR1c2VybmFtZSAhPSAnJyApIHsKICAkcmVzdWx0ID0gJHRoaXMtPlNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkICk7CiAgaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKSB7CiAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nKS4nICcuJHJlc3VsdFsxXTsKICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICB9Cn0KCi8vCi8vIG5vdyBkZWxldGUgYWxsIHRoZSBwcm9wZXJ0aWVzIGZvciB0aGlzIHVzZXIKLy8gaW4gcHJlcGFyYXRpb24gZm9yIHNldHRpbmcgbmV3IG9uZXMuCi8vCiR0aGlzLT5TZXRFbmNyeXB0aW9uS2V5KCR1aWQpOwpmb3JlYWNoKCAkZGVsZXRlcHJvcHMgYXMgJG9uZSApIHsKICAkdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCggJG9uZSwgJHVpZCwgZmFsc2UgKTsKfQpmb3JlYWNoKCAkcHJvcGVydGllcyBhcyAkcHJvcG5hbWUgPT4gJHByb3AgKSB7CiAgICAvLyRwcm9wbmFtZSA9ICdmZXVfaW5wdXRfJy4kcHJvcG5hbWU7CiAgICAkcmVxdWlyZWQgPSAoJHByb3BbJ3JlcXVpcmVkJ10gPT0gMik7CiAgICAkaGlkZGVuID0gKCRwcm9wWydyZXF1aXJlZCddID09IDMpOwogICAgJHJlYWRvbmx5ID0gKCRwcm9wWydyZXF1aXJlZCddID09IDQpOwogICAgJGZsZHR5cGUgID0gJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3R5cGUnXTsKICAgICRmb3JjZV91bmlxdWUgPSAkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsnZm9yY2VfdW5pcXVlJ107CgogICAgaWYoICRyZWFkb25seSB8fCAkaGlkZGVuICkgY29udGludWU7IC8vIGNhbm5vdCBzZXQgcmVhZG9ubHkgb3IgaGlkZGVuIGZpZWxkcwoKICAgIGlmKCAkZmxkdHlwZSA9PSA2ICkgewogICAgICAgIC8vIGltYWdlIHR5cGUKICAgICAgICAkdmFsID0gJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXTsKICAgICAgICBpZiggaXNzZXQoICRfRklMRVNbJGlkLidmZXVfaW5wdXRfJy4kcHJvcG5hbWVdICkgJiYgJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV1bJ3NpemUnXSA+IDApIHsKICAgICAgICAgICAgLy8gSXQgaXMgYW4gdXBsb2FkIGZpbGUgdHlwZQogICAgICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPk1hbmFnZUltYWdlVXBsb2FkKCRpZCwgJ2ZldV9pbnB1dF8nLCAkcHJvcG5hbWUsICR1aWQgKTsKICAgICAgICAgICAgaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcicpLicmbmJzcDsnLiRyZXN1bHRbMV07CiAgICAgICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHZhbCA9ICRyZXN1bHRbMV07CiAgICAgICAgfQogICAgfQogICAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKSApIHsKICAgICAgICAkdmFsID0gdHJpbSgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKTsKICAgICAgICAkdmFsID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkdmFsKTsKICAgIH0KICAgIGVsc2UgewogICAgICAgIGNvbnRpbnVlOwogICAgfQoKICAgIC8vIGNoZWNrIGZvciBmb3JjZWQgdW5pcXVlIHZhbHVlcy4KICAgIGlmKCAkdmFsICkgewogICAgICAgIGlmKCAkZm9yY2VfdW5pcXVlICYmICEkdGhpcy0+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSggJHVpZCwgJHByb3BuYW1lLCAkdmFsICkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnLCRwcm9wbmFtZSk7CiAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgJHJldCA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydHlGdWxsKCAkcHJvcG5hbWUsICR2YWwsICR1aWQgKTsKICAgICAgICBpZiggJHJldCA9PSBmYWxzZSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9zZXR0aW5ncHJvcGVydHknKS4nICcuJHByb3BuYW1lOwogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICB9Cn0KCi8vIHNlbmQgdGhlIGV2ZW50CiR0aGlzLT5hZGRfaGlzdG9yeSgkdWlkLCdjaGFuZ2Ugc2V0dGluZ3MnKTsKCiRldmVudF9wYXJhbXMgPSBhcnJheSgpOwokZXZlbnRfcGFyYW1zWyduYW1lJ10gPSAkdWluZm9bJ3VzZXJuYW1lJ107CiRldmVudF9wYXJhbXNbJ2lkJ10gPSAkdWlkOwokdGhpcy0+U2VuZEV2ZW50KCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25VcGRhdGVVc2VyJywkZXZlbnRfcGFyYW1zKTsKCmlmKCBpc3NldCggJHBhcmFtc1snZmV1X3JldHVybnRvJ10gKSApIHsKICAgICRwYWdlID0gQ29udGVudE9wZXJhdGlvbnM6OmdldF9pbnN0YW5jZSgpLT5HZXRQYWdlSURGcm9tQWxpYXMoICRwYXJhbXNbJ2ZldV9yZXR1cm50byddICk7CiAgICBpZiggJHBhZ2UgKSB7CiAgICAgICAgJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJHBhZ2UgKTsKICAgICAgICByZXR1cm47CiAgICB9Cn0KCiRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzJyk7CmlmKCAhZW1wdHkoJHBhZ2UpICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZScsJHVpbmZvWyd1c2VybmFtZSddKTsKICAgICRzbWFydHktPmFzc2lnbigndXNlcmluZm8nLCR1aW5mbyk7CiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdGhpcy0+TG9nZ2VkaW5JZCgpICk7CiAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2dyb3VwJywkZ3JvdXBuYW1lKTsKICAgICRwYWdlID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRwYWdlKTsKCiAgICAkcGFnZWlkID0gQ29udGVudE9wZXJhdGlvbnM6OmdldF9pbnN0YW5jZSgpLT5HZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgICBpZiggJHBhZ2VpZCApIHsKICAgICAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkcGFnZWlkICk7CiAgICAgICAgcmV0dXJuOwogICAgfQp9CgovLyBvbGQgYmVoYXZpb3IKLy8gJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJHJldHVybmlkICk7CgovLyBuZXcgYmVoYXZpb3IKJHBhcm1zID0gYXJyYXkoJ21lc3NhZ2UnPT4kdGhpcy0+TGFuZygnbXNnX3NldHRpbmdzY2hhbmdlZCcpKTsKJHRoaXMtPl9Eb1VzZXJBY3Rpb24oICRpZCwgJHBhcm1zLCAkcmV0dXJuaWQgKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_verifycode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiAgICAkdWlkID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3VpZCddICkgKQogICAgICB7CgkkdWlkID0gdHJpbSgkcGFyYW1zWydpbnB1dF91aWQnXSk7CiAgICAgIH0KICAgICRjb2RlID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2NvZGUnXSApICkKICAgICAgewoJJGNvZGUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2NvZGUnXSk7CiAgICAgIH0KICAgICRwYXNzd29yZCA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddICkgKQogICAgICB7CgkkcGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pOwogICAgICB9CiAgICAkcmVwZWF0cGFzc3dvcmQgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSApICkKICAgICAgewoJJHJlcGVhdHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddKTsKICAgICAgfQoKICAgIGlmKCAkcGFzc3dvcmQgPT0gJycgfHwgJHJlcGVhdHBhc3N3b3JkID09ICcnIHx8IAoJJHBhc3N3b3JkICE9ICRyZXBlYXRwYXNzd29yZCB8fCAhJHRoaXMtPklzVmFsaWRQYXNzd29yZCgkcGFzc3dvcmQpKQogICAgICB7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkcGFzc3dvcmQnKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICd2ZXJpZnljb2RlJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyBub3cgd2UgaGF2ZSB0byB2ZXJpZnkgdGhlIGNvZGUKICAgICRyZXN1bHQgPSAkdGhpcy0+R2V0VXNlclRlbXBDb2RlKCAkdWlkICk7CiAgICBpZiggJHJlc3VsdFswXSA9PSBGQUxTRSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICd2ZXJpZnljb2RlJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgICRkYmNvZGUgPSAkcmVzdWx0WzFdWydjb2RlJ107CgogICAgaWYoICRkYmNvZGUgIT0gJGNvZGUgKQogICAgICB7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkY29kZScpOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ3ZlcmlmeWNvZGUnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vIHdoZXcsIHdlIGdvdCBpdC4uLiBub3cgd2UgY2FuIHJlc2V0IHRoZSBwYXNzd29yZAogICAgJHJldCA9ICR0aGlzLT5TZXRVc2VyUGFzc3dvcmQoICR1aWQsICRwYXNzd29yZCApOwogICAgaWYoICRyZXRbMF0gIT0gVFJVRSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHJldFsxXTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICd2ZXJpZnljb2RlJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyBhbmQgZGVsZXRlIHRoZSBjb2RlCiAgICAkdGhpcy0+UmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICk7CgogICAgLy8gYW5kIHNlbmQgYW4gZXZlbnQKICAgICRldmVudF9wYXJhbXMgPSBhcnJheSgpOwogICAgJGV2ZW50X3BhcmFtc1snbmFtZSddID0gJHRoaXMtPkdldFVzZXJuYW1lKCR1aWQpOwogICAgJGV2ZW50X3BhcmFtc1snaWQnXSA9ICR1aWQ7CiAgICAkdGhpcy0+U2VuZEV2ZW50KCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwogICAgJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CgogICAgLy8gQW5kIHJlZGlyZWN0IHRvIGEgc3BlY2lmaWVkIHBhZ2UKICAgICRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScpOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydyZXR1cm50byddICkgKQogICAgICB7CgkkcGFnZSA9ICRwYXJhbXNbJ3JldHVybnRvJ107CiAgICAgIH0KCiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkZXZlbnRfcGFyYW1zWyduYW1lJ10pOwogICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwogICAgJGdyb3VwbmFtZSA9ICR0aGlzLT5HZXRHcm91cE5hbWUoICRncm91cHNbMF1bJ2dyb3VwaWQnXSApOwogICAgJHNtYXJ0eS0+YXNzaWduKCdncm91cG5hbWUnLCRncm91cG5hbWUpOwogICAgJHBhZ2UgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHBhZ2UpOwoKICAgIGlmKCAkcGFnZSApCiAgICAgIHsKCSRwYWdlaWQgPSBDb250ZW50TWFuYWdlcjo6Z2V0X2luc3RhbmNlKCktPkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKCWlmKCAkcGFnZWlkICkKCSAgewoJICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoICRwYWdlaWQgKTsKCSAgICByZXR1cm47CgkgIH0KCWRpZSggImNvdWxkbid0IGdldCBwYWdlaWQgZm9yICRwYWdlIiApOwogICAgICB9CiAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRyZXR1cm5pZCk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1c2VybmFtZSA9ICR0aGlzLT5Mb2dnZWRJbk5hbWUoKTsKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CgokdGhpcy0+TG9nb3V0KCk7CgokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ2Zyb250ZW5kdXNlcl9sb2dvdXQnKS4iOiAkdXNlcm5hbWUiKTsKCiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VybmFtZTsKJHBhcm1zWydpZCddID0gJHVpZDsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uTG9nb3V0JywkcGFybXMpOwoKLy8gd2UncmUgbG9nZ2VkIG91dAovLyByZWRpcmVjdCBzb21ld2hlcmUgCi8vIHRvZG8sIGFkZCBtb3JlIG9wdGlvbnMgaGVyZS4KJHBhZ2UgPSAnJzsKJHJldHVybl91cmwgPSAnJzsKaWYoIGlzc2V0KCRfU0VTU0lPTlsnZmV1X3ByZWxvZ291dF91cmwnXSkgKQogIHsKICAgICRyZXR1cm5fdXJsID0gJF9TRVNTSU9OWydmZXVfcHJlbG9nb3V0X3VybCddOwogICAgdW5zZXQoJF9TRVNTSU9OWydmZXVfcHJlbG9nb3V0X3VybCddKTsKICB9CmlmKCAkcmV0dXJuX3VybCA9PSAnJyApCiAgewogICAgJHBhZ2UgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcpOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydyZXR1cm50byddICkgKQogICAgICB7CgkkcGFnZSA9ICRwYXJhbXNbJ3JldHVybnRvJ107CiAgICAgIH0KICB9Cgokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwokcGFnZSA9IHN0cl9yZXBsYWNlKCAie1wkdXNlcm5hbWV9IiwgJHVzZXJuYW1lLCAkcGFnZSApOwokZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CiRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKJHNtYXJ0eS0+YXNzaWduKCdncm91cG5hbWUnLCRncm91cG5hbWUpOwokcGFnZSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkcGFnZSk7CgppZiggJHJldHVybl91cmwgIT0gJycgKQogIHsKICAgIHJlZGlyZWN0KCRyZXR1cm5fdXJsKTsKICB9CmlmKCAkcGFnZSApCiAgewogICAgJGlkID0gQ29udGVudE1hbmFnZXI6OkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKICAgIGlmKCAkaWQgKQogICAgICB7CgkkdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkaWQgKTsKCXJldHVybjsKICAgICAgfQogIH0KJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJHJldHVybmlkICk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.reset_session.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwokdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKaWYoICR1aWQgPT09IGZhbHNlICkgcmV0dXJuOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NoZWNrb25seSddKSAmJiAkcGFyYW1zWydjaGVja29ubHknXSA9PSAxICkKICB7CiAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ3VpZCddKSApIHJldHVybjsKICAgIC8vIG5vdGhpbmcgdG8gZG8gaGVyZS4KICB9CmVsc2UKICB7CiAgICAkcHJldHR5dXJsID0gImZldS9yZXNldC97JHVpZH0iOwogICAgJHNtYXJ0eS0+YXNzaWduKCdzZXNzaW9uX3RpbWVvdXQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpKTsKICAgICRzbWFydHktPmFzc2lnbigncmVzZXRfdXJsJywKCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdyZXNldF9zZXNzaW9uJywkcmV0dXJuaWQsJycsCgkJCQkgICAgICBhcnJheSgndWlkJz0+JHVpZCwnY2hlY2tvbmx5Jz0+MSwKCQkJCQkgICAgJ3Nob3d0ZW1wbGF0ZSc9PidmYWxzZScpLAoJCQkJICAgICAgJycsdHJ1ZSxmYWxzZSwnJyxmYWxzZSwkcHJldHR5dXJsKSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfcmVzZXRzZXNzaW9uJyk7CiAgfQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.userhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICdsaXN0dXNlcnMnICkgKQogIHsKICAgIHJldHVybjsKICB9CgokdXNlcmlkID0gJyc7CmlmIChpc3NldCAoJHBhcmFtc1sndXNlcl9pZCddKSAmJiAkcGFyYW1zWyd1c2VyX2lkJ10gIT0gIiIpCiAgewogICAgJHVzZXJpZCA9ICRwYXJhbXNbJ3VzZXJfaWQnXTsKICB9ICAKCiRwYWdlbGltaXRzID0gYXJyYXkoKTsKJHBhZ2VsaW1pdHNbJzUnXSA9IDU7CiRwYWdlbGltaXRzWycxMCddID0gMTA7CiRwYWdlbGltaXRzWycyNSddID0gMjU7CiRwYWdlbGltaXRzWyc1MCddID0gNTA7CiRwYWdlbGltaXRzWycxMDAnXSA9IDEwMDsKJHBhZ2VsaW1pdHNbJzI1MCddID0gMjUwOwokcGFnZWxpbWl0c1snNTAwJ10gPSA1MDA7CgokZGF0ZWxpc3QgPSBhcnJheSgpOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfYWxscmVjb3JkcycpXSA9IC0xOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25laG91cm9sZCcpXSA9ICcxaCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9zaXhob3Vyb2xkJyldID0gJzZoJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3ZWx2ZWhvdXJvbGQnKV0gPSAnMTJoJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZWRheW9sZCcpXSA9ICcxZCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmV3ZWVrb2xkJyldID0gJzF3JzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3b3dlZWtzb2xkJyldID0gJzJ3JzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZW1vbnRob2xkJyldID0gJzFtJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3RocmVlbW9udGhzb2xkJyldID0gJzNtJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3NpeG1vbnRoc29sZCcpXSA9ICc2bSc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmV5ZWFyb2xkJyldID0gJzF5JzsKCiRzb3J0b3JkZXJzID0gYXJyYXkoKTsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnKV0gPSAncmVmZGF0ZSBERVNDJzsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9kYXRlX2FzYycpXSA9ICdyZWZkYXRlIEFTQyc7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnKV0gPSAnYWN0aW9uIERFU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2FjdGlvbl9hc2MnKV0gPSAnYWN0aW9uIEFTQyc7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnKV0gPSAnaXBhZGRyZXNzIERFU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnKV0gPSAnaXBhZGRyZXNzIEFTQyc7CmlmKCAkdXNlcmlkID09ICcnICkKICB7CiAgICAkc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnKV0gPSAndXNlcm5hbWUgREVTQyc7CiAgICAkc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX3VzZXJuYW1lX2FzYycpXSA9ICd1c2VybmFtZSBBU0MnOwogIH0KCiRldmVudHR5cGVzID0gYXJyYXkoKTsKJGV2ZW50dHlwZXNbJ2FsbCddID0gJ2FsbCc7CiRldmVudHR5cGVzWydmYWlsJ10gPSAnZmFpbCc7CiRldmVudHR5cGVzWydsb2dpbiddID0gJ2xvZ2luJzsKJGV2ZW50dHlwZXNbJ2xvZ291dCddID0gJ2xvZ291dCc7CiRldmVudHR5cGVzWydleHBpcmUnXSA9ICdleHBpcmUnOwppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdHVzZXJoaXN0b3J5J10gKSApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9wYWdlbGltaXQnXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3BhZ2VsaW1pdCcsJHBhcmFtc1snaW5wdXRfcGFnZWxpbWl0J10pOwogICAgICB9CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3NvcnRvcmRlciddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3Rvcnlfc29ydG9yZGVyJywkcGFyYW1zWydpbnB1dF9zb3J0b3JkZXInXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXZlbnR0eXBlJ10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ldmVudHR5cGUnLCRwYXJhbXNbJ2lucHV0X2V2ZW50dHlwZSddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9maWx0ZXJfZGF0ZSddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZGF0ZScsJHBhcmFtc1snaW5wdXRfZmlsdGVyX2RhdGUnXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZ3JvdXBfaXAnXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2dyb3VwX2lwJywkcGFyYW1zWydpbnB1dF9ncm91cF9pcCddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZV9yZWdleCddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfdXNlcm5hbWVfcmVnZXgnLCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lX3JlZ2V4J10pOwogICAgICB9CiAgICBpZiggJHVzZXJpZCA9PSAnJyApIAogICAgICB7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3VzZXJoaXN0b3J5Jyk7CiAgICAgIH0KICB9CmVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWydyZXNldCddICkgKQogIHsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9wYWdlbGltaXQnLDEwKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ldmVudHR5cGUnLCdhbGwnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9kYXRlJywnLTEnKTsgLy8gdG9kbwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2dyb3VwX2lwJywwKTsgLy8gdG9kbwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3NvcnRvcmRlcicsJ3JlZmRhdGUgREVTQycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3VzZXJuYW1lX3JlZ2V4JywnJyk7CiAgICBpZiggJHVzZXJpZCA9PSAnJyApICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwndXNlcmhpc3RvcnknKTsKICB9CgokaW5wdXRfcGFnZWxpbWl0ID0gKGludCkkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfcGFnZWxpbWl0JywxMCk7CiRpbnB1dF9zb3J0b3JkZXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcmhpc3Rvcnlfc29ydG9yZGVyJywncmVmZGF0ZSBERVNDJyk7CiRpbnB1dF9ldmVudHR5cGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZXZlbnR0eXBlJywnYWxsJyk7CiRpbnB1dF9maWx0ZXJfZGF0ZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9kYXRlJywnLTEnKTsKJGlucHV0X2dyb3VwX2lwID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2dyb3VwX2lwJywwKTsKJGlucHV0X3VzZXJuYW1lX3JlZ2V4ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3VzZXJuYW1lX3JlZ2V4Jyk7CgoKLy8gQWRkIHRoZSB1c2VyIGluZm8gdG8gc21hcnR5CmlmKCAkdXNlcmlkICE9ICcnICkKICB7CiAgICAkdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdXNlcmlkKTsKICAgICRyZXN1bHRzID0gJHRoaXMtPkdldFVzZXJJbmZvKCRwYXJhbXNbJ3VzZXJfaWQnXSk7CiAgICAkdXNlcmluZm8gPSAnJzsKICAgIGlmKCAkcmVzdWx0c1swXSA9PT0gVFJVRSApCiAgICAgIHsKCSR1c2VyaW5mbyA9ICRyZXN1bHRzWzFdOwogICAgICB9CiAgICBmb3JlYWNoKCAkdXNlcmluZm8gYXMgJGsgPT4gJHYgKQogICAgICB7Cgkkc21hcnR5LT5hc3NpZ24oJ3VzZXJfJy4kaywkdik7CiAgICAgIH0KICAgICRwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcygkcGFyYW1zWyd1c2VyX2lkJ10pOwogICAgZm9yZWFjaCggJHByb3BzIGFzICRvbmVwcm9wICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCd1c2VycHJvcF8nLiRvbmVwcm9wWyd0aXRsZSddLCRvbmVwcm9wWydkYXRhJ10pOwogICAgICB9CiAgfQoKLy8gZmlndXJlIG91dCB3aGF0IHBhZ2Ugd2UncmUgb24KJHBhZ2VudW1iZXIgPSAxOwppZiggaXNzZXQoICRwYXJhbXNbJ3BhZ2VudW1iZXInXSApICkKICB7CiAgICAkcGFnZW51bWJlciA9IChpbnQpJHBhcmFtc1sncGFnZW51bWJlciddOwogIH0KJHN0YXJ0ZWxlbWVudCA9ICgkcGFnZW51bWJlci0xKSAqICRpbnB1dF9wYWdlbGltaXQ7CgovLwovLyBBZGQgdGhlIGhpc3RvcnkgdG8gc21hcnR5Ci8vCiR3aGVyZSA9IGFycmF5KCk7CiRwYXJtcyA9IGFycmF5KCk7CiRxdWVyeTEgPSAiU0VMRUNUIEEuKixCLnVzZXJuYW1lIAogICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBBLCAKICAgICAgICAgICAgICAgICAgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIEIKICAgICAgICAgICAgV0hFUkUgQS51c2VyaWQgPSBCLmlkIjsKJHF1ZXJ5MiA9ICJTRUxFQ1QgY291bnQodXNlcmlkKSBhcyBjb3VudCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IjsKaWYoICR1c2VyaWQgIT0gJycgKQogIHsKICAgICR3aGVyZVtdID0gJ3VzZXJpZCA9ID8nOwogICAgJHBhcm1zW10gPSAkdXNlcmlkOwogIH0KZWxzZQogIHsKICAgIC8vIG9ubHkgdXNlIHRoZSB1c2VybmFtZSByZWdleCBpZiB0aGUgdXNlcmlkIGlzIGVtcHR5CiAgICBpZiggJGlucHV0X3VzZXJuYW1lX3JlZ2V4ICE9ICcnICkKICAgICAgewoJJHdoZXJlW10gPSAndXNlcm5hbWUgUkVHRVhQID8nOwoJJHBhcm1zW10gPSAkaW5wdXRfdXNlcm5hbWVfcmVnZXg7CiAgICAgIH0KICB9CmlmKCAkaW5wdXRfZXZlbnR0eXBlICE9ICdhbGwnICkgCiAgewogICAgJHdoZXJlW10gPSAnYWN0aW9uID0gPyc7CiAgICAkcGFybXNbXSA9ICRpbnB1dF9ldmVudHR5cGU7CiAgfQppZiggJGlucHV0X2ZpbHRlcl9kYXRlICE9IC0xICkKICB7CiAgICAkZGF0ZSA9ICcnOwogICAgc3dpdGNoKCAkaW5wdXRfZmlsdGVyX2RhdGUgKQogICAgICB7CiAgICAgIGNhc2UgJzFoJzoKCSRkYXRlID0gc3RydG90aW1lKCcxIGhvdXIgYWdvJyk7CglicmVhazsKICAgICAgY2FzZSAnNmgnOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzYgaG91cnMgYWdvJyk7CglicmVhazsKICAgICAgY2FzZSAnMTJoJzoKCSRkYXRlID0gc3RydG90aW1lKCcxMiBob3VycyBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICcxZCc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnMSBkYXkgYWdvJyk7CglicmVhazsKICAgICAgY2FzZSAnMXcnOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzEgd2VlayBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICcydyc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnMiB3ZWVrcyBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICcxbSc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnMSBtb250aCBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICczbSc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnMyBtb250aHMgYWdvJyk7CglicmVhazsKICAgICAgY2FzZSAnNm0nOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzYgbW9udGhzIGFnbycpOwoJYnJlYWs7CiAgICAgIGNhc2UgJzF5JzoKCSRkYXRlID0gc3RydG90aW1lKCcxIHllYXIgYWdvJyk7CglicmVhazsKICAgICAgfQogICAgaWYoICRkYXRlICE9ICcnICkKICAgICAgewoJJHdoZXJlW10gPSAncmVmZGF0ZSA+ID8nOwoJJHBhcm1zW10gPSB0cmltKCRkYi0+RGJUaW1lU3RhbXAoJGRhdGUpLCInIik7CiAgICAgIH0KICB9CmlmKCBjb3VudCgkd2hlcmUpID4gMCApCiAgewogICAgJHF1ZXJ5MSAuPSAnIEFORCAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogICAgJHF1ZXJ5MiAuPSAnIEFORCAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogIH0KaWYoICRpbnB1dF9ncm91cF9pcCA9PSAxICkKICB7CiAgICAkcXVlcnkxIC49ICcgR1JPVVAgQlkgaXBhZGRyZXNzJzsKICAgICRxdWVyeTIgLj0gJyBHUk9VUCBCWSBpcGFkZHJlc3MnOwogIH0KJHF1ZXJ5MSAuPSAiIE9SREVSIEJZICIuJGlucHV0X3NvcnRvcmRlcjsKJHF1ZXJ5MSAuPSAiIExJTUlUICRzdGFydGVsZW1lbnQsJGlucHV0X3BhZ2VsaW1pdCI7CgovLyBOb3cgZ2V0IHRoZSBjb3VudCwgYW5kIG51bWJlciBvZiBwYWdlcwokdG1wcm93ID0gJGRiLT5HZXRSb3coICRxdWVyeTIsICRwYXJtcyApOwokcmVjb3JkY291bnQgPSAkdG1wcm93Wydjb3VudCddOwokcGFnZWNvdW50ID0gKGludCkoJHJlY29yZGNvdW50IC8gJGlucHV0X3BhZ2VsaW1pdCk7CmlmKCAoJHJlY29yZGNvdW50ICUgJGlucHV0X3BhZ2VsaW1pdCkgIT0gMCApICRwYWdlY291bnQrKzsKJHNtYXJ0eS0+YXNzaWduKCdyZWNvcmRjb3VudCcsJHJlY29yZGNvdW50KTsKCi8vIHNvbWUgcGFnaW5hdGlvbiB2YXJpYWJsZXMgdG8gc21hcnR5LgppZiggJHBhZ2VudW1iZXIgPT0gMSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZScsJzwnKTsKICAgICRzbWFydHktPmFzc2lnbignZmlyc3RwYWdlJywnPDwnKTsKICB9CmVsc2UKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywKCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCRwYXJhbXNbJ2FjdGlvbiddLAoJCQkJICAgICAgJHJldHVybmlkLCc8JywKCQkJCSAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+JHBhZ2VudW1iZXItMSwKCQkJCQkgICAgJ3VzZXJfaWQnPT4kdXNlcmlkKSkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdmaXJzdHBhZ2UnLAoJCSAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJHBhcmFtc1snYWN0aW9uJ10sCgkJCQkgICAgICAkcmV0dXJuaWQsJzw8JywKCQkJCSAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+MSwKCQkJCQkgICAgJ3VzZXJfaWQnPT4kdXNlcmlkKSkpOwogIH0KaWYoICRwYWdlbnVtYmVyID49ICRwYWdlY291bnQgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignbmV4dHBhZ2UnLCc+Jyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2xhc3RwYWdlJywnPj4nKTsKICB9CmVsc2UKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ25leHRwYWdlJywKCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCRwYXJhbXNbJ2FjdGlvbiddLAoJCQkJICAgICAgJHJldHVybmlkLCc+JywKCQkJCSAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+JHBhZ2VudW1iZXIrMSwKCQkJCQkgICAgJ3VzZXJfaWQnPT4kdXNlcmlkKSkpOwoKICAgICRzbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLAoJCSAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJHBhcmFtc1snYWN0aW9uJ10sCgkJCQkgICAgICAkcmV0dXJuaWQsJz4+JywKCQkJCSAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+JHBhZ2Vjb3VudCwKCQkJCQkgICAgJ3VzZXJfaWQnPT4kdXNlcmlkKSkpOwoKICB9CiRzbWFydHktPmFzc2lnbigncGFnZW51bWJlcicsJHBhZ2VudW1iZXIpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2Vjb3VudCcsJHBhZ2Vjb3VudCk7CiRzbWFydHktPmFzc2lnbignb2Z0ZXh0JywkdGhpcy0+TGFuZygncHJvbXB0X29mJykpOwoKaWYoICR1c2VyaWQgPT0gJycgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignbXVsdGl1c2VyJywxKTsKICB9CgovLyBUaGUgZGF0YWJhc2UgcXVlcnkKJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnkxLCAkcGFybXMgKTsKJHJvd2FycmF5ID0gYXJyYXkoKTsKJHJvd2NsYXNzID0gJ3JvdzEnOwp3aGlsZSggJGRicmVzdWx0ICYmICEkZGJyZXN1bHQtPkVPRiApCiAgewogICAgJGZpZWxkcyA9JiAkZGJyZXN1bHQtPmZpZWxkczsKICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsKICAgIGZvcmVhY2goICRmaWVsZHMgYXMgJGtleSA9PiAkdmFsdWUgKQogICAgICB7Cgkkb25lcm93LT4ka2V5ID0gJHZhbHVlOwogICAgICB9CgogICAgLy8gZml4IHNvbWUgZmllbGRzIHVwCiAgICAkb25lcm93LT5yZWZkYXRlID0gJGRiLT5Vbml4VGltZVN0YW1wKCRvbmVyb3ctPnJlZmRhdGUpOwogICAgaWYoICRvbmVyb3ctPmlwYWRkcmVzcyA9PSAnJyApCiAgICAgIHsKCSRvbmVyb3ctPmlwYWRkcmVzcyA9ICR0aGlzLT5MYW5nKCd1bmtub3duJyk7CiAgICAgIH0KICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKICAgICRyb3dhcnJheVtdID0gJG9uZXJvdzsKICAgICRyb3djbGFzcyA9ICgkcm93Y2xhc3MgPT0gJ3JvdzEnKSA/ICdyb3cyJyA6ICdyb3cxJzsKICAgICRkYnJlc3VsdC0+TW92ZU5leHQoKTsKICB9CgppZiggY291bnQoJHJvd2FycmF5KSA9PSAwICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCR0aGlzLT5MYW5nKCdpbmZvX25vaGlzdG9yeWRldGVjdGVkJykpOwogIH0KCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3JlY29yZHNmb3VuZCcsJHRoaXMtPkxhbmcoJ3Byb21wdF9yZWNvcmRzZm91bmQnKSk7CiRzbWFydHktPmFzc2lnbigndGl0bGVfbGVnZW5kX2ZpbHRlcicsJHRoaXMtPkxhbmcoJ2ZpbHRlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9sZWdlbmRfZ3JvdXBzb3J0JywkdGhpcy0+TGFuZygndGl0bGVfZ3JvdXBzb3J0JykpOwokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJHBhcmFtc1snYWN0aW9uJ10sJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXR1c2VyaGlzdG9yeScsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbigncmVzZXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3Jlc2V0JywkdGhpcy0+TGFuZygncmVzZXQnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcGFnZWxpbWl0JywkdGhpcy0+TGFuZygncHJvbXB0X3BhZ2VsaW1pdCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9wYWdlbGltaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfcGFnZWxpbWl0JywkcGFnZWxpbWl0cywKCQkJCQkgICAtMSwgJGlucHV0X3BhZ2VsaW1pdCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfc29ydG9yZGVyJywkdGhpcy0+TGFuZygnc29ydGJ5JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3NvcnRvcmRlcicsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9zb3J0b3JkZXInLCRzb3J0b3JkZXJzLAoJCQkJCSAgIC0xLCRpbnB1dF9zb3J0b3JkZXIpKTsKCQkJCSAgICAgICAKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZ3JvdXBfaXAnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZ3JvdXBfaXAnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZ3JvdXBfaXAnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfZ3JvdXBfaXAnLAoJCQkJCSAgIGFycmF5KCR0aGlzLT5MYW5nKCd5ZXMnKT0+MSwKCQkJCQkJICR0aGlzLT5MYW5nKCdubycpPT4wKSwKCQkJCQkgICAtMSwgJGlucHV0X2dyb3VwX2lwKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZV9yZWdleCcsJHRoaXMtPkxhbmcoJ3VzZXJmaWx0ZXInKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdXNlcm5hbWVfcmVnZXgnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF91c2VybmFtZV9yZWdleCcsCgkJCQkgICAgICAgJGlucHV0X3VzZXJuYW1lX3JlZ2V4LCAyNSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbHRlcl9ldmVudHR5cGUnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfZXZlbnR0eXBlJywKCQkJCQkgICAkZXZlbnR0eXBlcywKCQkJCQkgICAtMSwkaW5wdXRfZXZlbnR0eXBlKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2ZpbHRlcl9kYXRlJywkdGhpcy0+TGFuZygncHJvbXB0X2ZpbHRlcl9kYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbHRlcl9kYXRlJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2ZpbHRlcl9kYXRlJywKCQkJCQkgICAkZGF0ZWxpc3QsCgkJCQkJICAgLTEsJGlucHV0X2ZpbHRlcl9kYXRlKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3RpdGxlX3VzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygndGl0bGVfdXNlcmhpc3RvcnknKSk7CiRzbWFydHktPmFzc2lnbignZm9yJywkdGhpcy0+TGFuZygnZm9yJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF91c2VybmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZm9yJywkdGhpcy0+TGFuZygncHJvbXB0X2ZvcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJHJvd2FycmF5KTsKJHNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLGNvdW50KCRyb3dhcnJheSkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9yZWZkYXRlJywkdGhpcy0+TGFuZygncHJvbXB0X2RhdGUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2FjdGlvbicsJHRoaXMtPkxhbmcoJ3Byb21wdF9ldmVudHR5cGUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2lwYWRkcmVzcycsJHRoaXMtPkxhbmcoJ3Byb21wdF9pcGFkZHJlc3MnKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3VzZXJoaXN0b3J5LnRwbCcpOwovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.verifycode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIGZpbGwgaW4gdGhlIHRlbXBsYXRlCiR1aWQgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91aWQnXSApICkKICB7CiAgICAkdWlkID0gKGludCkkcGFyYW1zWydpbnB1dF91aWQnXTsKICB9CmVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3VpZCddKSApCiAgewogICAgJHVpZCA9IChpbnQpJHBhcmFtc1sndWlkJ107CiAgfQokdXNlcm5hbWUgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKQogIHsKICAgICR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgfQogZWxzZQogICB7CiAgICAgJHVzZXJuYW1lID0gJHRoaXMtPkdldFVzZXJOYW1lKCAkdWlkICk7CiAgIH0KJGNvZGUgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9jb2RlJ10gKSApCiAgewogICAgJGNvZGUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2NvZGUnXSk7CiAgfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydjb2RlJ10pICkKICB7CiAgICAkY29kZSA9IHRyaW0oJHBhcmFtc1snY29kZSddKTsKICB9CgppZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJHBhcmFtc1snZXJyb3InXSk7CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ21lc3NhZ2UnXSApICkKICB7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRwYXJhbXNbJ21lc3NhZ2UnXSk7CiAgfQoKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCSAgICAgICR0aGlzLT5mZUNyZWF0ZUZvcm1TdGFydCgkaWQsJ2RvX3ZlcmlmeWNvZGUnLCRyZXR1cm5pZCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLAoJCSAgICAgICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaW5wdXRfdWlkJywkdWlkKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdXNlcm5hbWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdXNlcm5hbWUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfdXNlcm5hbWUnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0X3VzZXJuYW1lJywgJHVzZXJuYW1lLAoJCQkJCSAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpLCAKCQkJCQkgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJyksCgkJCQkJICAgICAgJ2Rpc2FibGVkPSJkaXNhYmxlZCInKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2NvZGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfY29kZScpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jb2RlJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF9jb2RlJywgJGNvZGUsIDEwLCAxMCApKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcGFzc3dvcmQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfcGFzc3dvcmQnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfcGFzc3dvcmQnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2lucHV0X3Bhc3N3b3JkJywgJycsCgkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSwKCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9yZXBlYXRwYXNzd29yZCcsJHRoaXMtPkxhbmcoJ3JlcGVhdHBhc3N3b3JkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlcGVhdHBhc3N3b3JkJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsICdpbnB1dF9yZXBlYXRwYXNzd29yZCcsICcnLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkdmVyaWZ5Zm9ybScpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.viewuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1aWQgPSAoaW50KSR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCBpc3NldCgkcGFyYW1zWyd1aWQnXSkgKSAkdWlkID0gKGludCkkcGFyYW1zWyd1aWQnXTsKaWYoICEkdWlkICkgcmV0dXJuOwoKCiRzbWFydHktPmFzc2lnbl9ieV9yZWYoJ2ZldScsJHRoaXMpOwovLyBIZXJlIHdlIGdldCBhIHVuaW9uICh5ZXAsIGEgdW5pb24pIG9mIGFsbCBvZiB0aGUgdXNlcgovLyBwcm9wZXJ0aWVzIGFuZCBkaXNwbGF5IHRoZW0gYWxvbmcgd2l0aCB0aGUgdmFsdWVzCiR1c2VyaW5mbyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKaWYoICR1c2VyaW5mb1swXSA9PT0gRkFMU0UgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHVzZXJpbmZvWzFdKTsKICByZXR1cm47Cn0KJHNtYXJ0eS0+YXNzaWduKCd1c2VyaW5mbycsJHVzZXJpbmZvWzFdKTsKJHNtYXJ0eS0+YXNzaWduKCdlbWFpbF9hZGRyZXNzJywkdGhpcy0+R2V0RW1haWwoJHVpZCkpOwoKJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwppZiggISRncm91cHMgKSByZXR1cm47CgovLyBub3cgd2UgaGF2ZSB0aGUgZ3JvdXBzLCB3ZSBidWlsZCBhIHVuaW9uIG9mIGFsbCBvZiB0aGUgZ3JvdXBzIHByb3BlcnRpZXMKJHByb3AyID0gYXJyYXkoKTsKZm9yZWFjaCggJGdyb3VwcyBhcyAkZ3JwcmVjb3JkICkKewogICRnaWQgPSAkZ3JwcmVjb3JkWydncm91cGlkJ107CiAgJHByb3ByZWxhdGlvbnMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdpZCApOwogICRwcm9wMiA9IFJSVXRpbHM6OmFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRwcm9wMiwgJHByb3ByZWxhdGlvbnMgKTsKICB1YXNvcnQoICRwcm9wMiwgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7Cn0KCi8vIG5vdyB3ZSBtZXJnZSBpbiBhbGwgb2YgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiRwcm9wMyA9IGFycmF5KCk7CmZvcmVhY2goICRwcm9wMiBhcyAkb25lcHJvcCApIHsKICBmb3JlYWNoKCAkZGVmbnMgYXMgJG9uZWRlZm4gKSB7CiAgICBpZiggJG9uZWRlZm5bJ25hbWUnXSA9PSAkb25lcHJvcFsnbmFtZSddICkgewogICAgICAkb25lcHJvcFsncHJvbXB0J10gPSAkb25lZGVmblsncHJvbXB0J107CiAgICAgICRvbmVwcm9wWyd0eXBlJ10gPSAkb25lZGVmblsndHlwZSddOwogICAgICBicmVhazsKICAgIH0KICB9CiAgJHByb3AzW10gPSAkb25lcHJvcDsKfQoKLy8gQW5kIG5vdyBtZXJnZSBpbiB0aGUgdmFsdWVzCiR1c2VycHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoJHVpZCk7CiRwcm9wc2J5bmFtZSA9IGFycmF5KCk7CmZvcmVhY2goICRwcm9wMyBhcyAkb25lcHJvcCApIHsKICBpZiggaXNfYXJyYXkoJHVzZXJwcm9wcykgKSB7CiAgICBmb3JlYWNoKCAkdXNlcnByb3BzIGFzICRvbmV2YWwgKSB7CiAgICAgIGlmKCAkb25lcHJvcFsnbmFtZSddID09ICRvbmV2YWxbJ3RpdGxlJ10gJiYgaXNzZXQoJG9uZXZhbFsnZGF0YSddKSAmJiAhZW1wdHkoJG9uZXZhbFsnZGF0YSddKSApIHsKCSRvbmVwcm9wWydkYXRhJ10gPSAkb25ldmFsWydkYXRhJ107CglicmVhazsKICAgICAgfQogICAgfQogIH0KCiAgaWYoIGlzc2V0KCRvbmVwcm9wWydkYXRhJ10pICkgJHByb3BzYnluYW1lWyRvbmVwcm9wWyduYW1lJ11dID0gJG9uZXByb3A7Cn0KCiRzbWFydHktPmFzc2lnbigndXNlcl9wcm9wZXJ0aWVzJywkcHJvcHNieW5hbWUpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX3ZpZXd1c2VyJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+MC4wLjEgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2U8L2xpPgo8bGk+MC4xLjAgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCByZWxlYXNlPC9saT4KPGxpPjAuMS4xIC0gT2N0b2JlciwgMjAwNSAtIEZpeGVkIGlzc3VlcyB3aXRoIHByb3BlcnRpZXM8L2xpPgo8bGk+MC4xLjIgLSBPY3RvYmVyLCAyMDA1IC0gQWRkZWQgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHk8L2xpPgo8bGk+MC4xLjMgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHJlZGlyZWN0IHBhZ2Ugb24gbG9naW4sIGxvZ291dCwgZm9yZ290IHBhc3N3b3JkLCBhbmQgY2hhbmdlIHNldHRpbmdzLCBhbmQgYWRkZWQgdGhlIHJldHVybnRvIGFuZCBmb3JtIHBhcmFtZXRlcnMgdG8gdGhlIHVzZXIgc2lkZSBvZiB0aGluZ3MsIGFsc28gZGlkIGEgY291cGxlIGxmIGxpdHRsZSBjbGVhbnVwcy4gIFRoaXMgdmVyc2lvbiByZXF1aXJlcyB2MC4xMSBhbmQgYWJvdmUgZm9yIGNlcnRhaW4uPC9wPjwvbGk+CjxsaT4wLjEuNCAtIE5vdmVtYmVyLCAyMDA1IC0gVmVyeSBtaW5vciBjaGFuZ2Ugd2l0aCByZXNwZWN0IHRvIGEgZm9yZ290dGVuIGFuZCBubyBsb25nZXIgbmVlZGVkIGZ1bmN0aW9uIGNhbGw8L2xpPgo8bGk+MC4xLjUgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QW5vdGhlciB2ZXJ5IG1pbm9yIGNoYW5nZSwgYWRkZWQgc29tZSB0ZXh0IHRvIHRoZSBQb3N0SW5zdGFsbCBtZXNzYWdlLjwvcD48L2xpPgo8bGk+MC4xLjYgLSBKYW51YXJ5LCAyMDA2CiAgICA8cD5DaGFuZ2VzIHRvIHRoZSBwZXJtaXNzaW9uIG1vZGVsLCBhbmQgbWlub3IgYnVnIGZpeGVzIHRvIHRoZSBwcmVmZXJlbmNlcy4gIEFsc28gc29tZSBwaHA1IGZpeGVzIGJ1dCBJIGFtIHN1cmUgdGhhdCB0aGVyZSBhcmUgbW9yZSBvdXQgdGhlcmUuPC9wPjwvbGk+CjxsaT4wLjEuNyAtIEphbnVhcnksIDIwMDYKICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPgogICAgPHA+Rml4ZXMgdG8gdGhlIHByb3BlcnR5IGFkZGluZyB0byBmaXggcHJvYmxlbXMgd2l0aCBzcGFjZXMgaW4gcHJvcGVydHkgbmFtZXMgKHdlIG5vIGxvbmdlciBsZXQgdGhhdCBoYXBwZW4pLjwvcD4KPC9saT4KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4KICAgIDxwPkFkZGVkIGZpbHRlcmluZyBhbmQgcm93IGxpbWl0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbC4gVGhpcyB3aWxsIGhhdmUgYmlnIGJlbmVmaXRzIHRvIHRob3NlIHRoYXQgYXJlIHVzaW5nIHRoaXMgbW9kdWxlIGZvciBoaWdoIHRyYWZpYywgYW5kIGhpZ2ggdXNlciBzaXRlcy48L3A+CiAgICA8cD5BZGRlZCBzb3J0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbDwvcD4KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+CiAgICA8cD5GaXhlZCBhIHNtYWxsIHByb2JsZW0gd2l0aCB0aGUgZGVmYXVsdCBncm91cCBub3QgYmVpbmcgY2hlY2tlZCB3aGVuIGFkZGluZyBhIHVzZXI8L3A+CiAgICA8cD5TYXZlIGZpbHRlciBzZXR0aW5ncyBpbiBwcmVmZXJlbmNlcywgYW5kIHRoZSBhY3RpdmUgdGFiIHRvby48L3A+CiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4KICAgIDxwPkFkZCBjb25maXJtYXRpb24gbWVzc2FnZSBpbiBlZGl0IGdyb3Vwcy48L3A+CiAgICA8cD5BZGRlZCBhIGNvdXBsZSBtb3JlIGNvbmZpcm1hdGlvbiBtZXNzYWdlcy48L3A+CiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4KICAgIDxwPlRvZG8gLSBBZGQgcHJlZmVyZW5jZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZGxlbmd0aDwvcD4KPC9saT4KPGxpPjEuMC4xIC0gTWFyY2gsIDIwMDYKICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGNoZWNrIGZvciBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzPC9wPgogICAgPHA+Rml4IHByb2JsZW0gd2hlcmUgZXhwaXJ5IGRhdGUgd2FzIGJlaW5nIG1vZGlmaWVkIHdoZW4gYWRtaW4gbW9kaWZpZWQgdXNlciBzZXR0aW5nczwvcD4KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPgogICAgPHA+Rml4ZWQgYSBtaW5vciBidWcgd2hlbiBjb3V0aW5nIHRoZSBudW1iZXIgb2YgdXNlcnMgaW4gYSBncm91cDwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBzaXplIG9mIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZHMsIGFuZCBtYXhsZW5ndGg8L3A+CiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4KICAgIDxwPkNoYW5nZXMgdG8gbGFiZWxpbmcgaW4gYWRkIG9yIGVkaXQgdXNlcjwvcD4KICAgIDxwPkZpeGVzIHRvIHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24gaW5saW5lIGZvcm1zLCB0aGUgcGFzc3dvcmQgaXMgbmV2ZXIgc2VudCBvbiB0aGUgZ2V0IGxpbmU8L3A+CiAgICA8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4KPC9saT4KPGxpPjEuMC4yIC0gTWFyY2gsIDIwMDYKICAgIDxwPk1vcmUgZmllbGQgbGVuZ3RoIGZpeGVzPC9wPgo8L2xpPgo8bGk+MS4wLjMgLSBNYXJjaCwgMjAwNgogICAgPHA+RXhwb3J0IHRvIHNtYXJ0eSBhbGwgb2YgdGhlIHVzZXIgcHJvcGVydGllcyB3aGVuIHRoZXkgYXJlIGxvZ2dlZCBpbjwvcD4KPC9saT4KPGxpPjEuMC40IC0gTWF5LCAyMDA2CiAgICA8cD5GaXhlcyB0byB0aGUgZXhwb3J0IGNvZGU8L3A+CiAgICA8cD5Db2RlIGNsZWFudXAgKGFscGhhYmV0aXplIGZ1bmN0aW9ucyk8L3A+CiAgICA8cD5NaW5vciBmaXhlcyBhbmQgZW5oYW5jZW1lbnRzIChyZWNvbW1lbmRlZCBieSBuaWxzNzMpIGZvciBkZWFsaW5nIHdpdGggdGhlIGNoYW5nZSBwYXNzd29yZCBzdHVmZi48L3A+CiAgICA8cD5SZW1vdmVkIHRoZSByZXF1aXJlbWVudCBmb3IgQ01TIDAuMTIsIGFuZCBwdXQgaXQgYmFjayB0byAwLjExLjI8L3A+CiAgICA8cD5BZGRlZCB0aGUgXCdzaWxlbnRcJyBmb3JtPC9wPgogICAgPHA+Q2xlYW5lZCB1cCBkYXRhYmFzZSBhY2Nlc3Mgc3R1ZmYgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMgKGhvcGVmdWxseSk8L3A+CiAgICA8cD5BZGRlZCBjb3B5cmlnaHQgaW5mbzwvcD4KICAgIDxwPkFkZGVkIG1hY3JvcyBmb3IgcmVkaXJlY3RvIHRvIGEgdXNlciBzcGVjaWZpYyBwYWdlIG9uIGxvZ2luIG9yIGxvZ291dDwvcD4KICAgIDxwPlR3ZWFrcyB0byB0aGUgYWRtaW4gcHJlZmVyZW5jZXMgdGFiPC9wPgo8L2xpPgo8bGk+MS4wLjUgLSBNYXksIDIwMDYKICAgIDxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIGV4cGlyeSBkYXRlczwvcD4KICAgIDxwPlN0YXJ0IHNwbGl0dGluZyB0aGUgY29kZSB1cCBpbnRvIHNldmVyYWwgZmlsZXM8L3A+CjxsaT4xLjAuNiAtIE1heSwgMjAwNgogICAgPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggZWRpdGluZyBkcm9wZG93bnM8L3A+CjwvbGk+CjxsaT4xLjEuMCAtIE1heSwgMjAwNgogICAgPHA+RXZlbnRzPC9wPgogICAgPHA+T3B0aW9uYWxseSBkaXNhbGxvdyByZXBlYXRlZCBsb2dpbnM8L3A+CiAgICA8cD5FeHBvcnQgdGhlIHVzZXIgaWQgdG8gc21hcnR5PC9wPgogICAgPHA+QWRkZWQgb3B0aW9uYWxseSBce1wkZ3JvdXBcfSBmb3IgdGhlIHBhZ2VzIHRvIGp1bXAgdG8gb24gbG9naW48L3A+CjwvbGk+CjxsaT4xLjEuMSAtIFNlcHQsIDIwMDYKICAgIDxwPkZpeGVkIGEgYnVnIHdoZW4gYSB1c2VyIHdhcyBlZGl0aW5nIGhpcyBzZXR0aW5ncyB3aXRoIFwnYWxsb3cgZHVwbGljYXRlIGVtYWlsc1wnIHdhcyBvZmY8L3A+CiAgICA8cD5DaGFuZ2VkIHRoZSBkcm9wZG93biB0YWJsZSB0byAyNTUgY2hhcmFjdGVyczwvcD4KICAgIDxwPk1pbm9yIGNsZWFudXBzPC9wPgo8L2xpPgo8bGk+MS4xLjIgLSBEZWMsIDIwMDYKICAgIDxwPkZpeGVzIChob3BlZnVseSkgdG8gdGhlIGFkb2RiL2Fkb2RiLWxpdGUgREFURVRJTUUgaXNzdWU8L3A+CiAgICA8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSBsb2dpbiBzY3JlZW4gKG9wdGlvbmFsKSwgdGhhbmtzIGRpdHRtYW48L3A+CiAgICA8cD5GaXhlcyB0byBjYW5jZWwgaGFuZGxpbmcgb24gdGhlIGxvc3QgcGFzc3dvcmQgYW5kIGNoYW5nZSBzZXR0aW5ncyBzY3JlZW5zPC9wPgogICAgPHA+Rml4ZXMgdG8gdXNlciBleHBpcnkgKG1vcmUgREJUaW1lc3RhbXAgaXNzdWVzKSwgdGhhbmtzIGFnYWluIGRpdHRtYW48L3A+CiAgICA8cD5PcHRpb24gdG8gYWxsb3cgRkVVc2VycyB0byBoYXZlIGl0cyBvd24gc2V0IG9mIHBlcm1pc3Npb25zIGFzc2lkZSBmcm9tIHRoZSBhZG1pbiBwZXJtaXNzaW9ucy4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPk9wdGlvbiB0byBhbGxvdyBkdXBsaWNhdGUgcGFzc3dvcmQgcmVtaW5kZXIgcmVxdWVzdHMgYW5kIHRvIHNwZWNpZnkgdGV4dCBvbiB0aGUgc2lnbmluIGJ1dHRvbi4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPkdlbmVyYWwgY2xlYW51cCBvZiBmdW5jdGlvbnMgdGhhdCB3ZXJlIG5vdCBiZWluZyB1c2VkIGFuZCBub3RpY2VzL3dhcm5pbmdzPC9wPgogICAgPHA+QWRkZWQgdGhlIG9ubHlfZ3JvdXBzIHBhcmFtIGZvciBsb2dpbiBmb3Jtcy4gIFRoYW5rcyB3aXNoeTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBsZW5ndGggb2YgdGhlIGVtYWlsIGZpZWxkIGluIHRoZSBjaGFuZ2UgcGFzc3dvcmQgZm9ybTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBlbWFpbCB2YWxpZGF0aW9uIHN0dWZmPC9wPgo8L2xpPgogICAgPGxpPjEuMi4wIC0gQXByaWwsIDIwMDcKICAgIDxwPmVsaWphaGxvZmdyZW4gLSBGaXhlcyB0byBjYXB0Y2hhIHN1cHBvcnQsIGFuZCBzb21lIHRlbXBsYXRlIGNsZWFudXBzLjwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBtdWx0aSBzZWxlY3QgbGlzdHM8L3A+CiAgICA8cD5UZW1wbGF0ZSBjbGVhbnVwcyAobW9yZSBvZiBlbSk8L3A+CiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgdmFsdWU9a2V5IHN0dWZmIGluIHRoZSBkcm9wZG93biBhbmQgbXVsdGkgc2VsZWN0IGxpc3RzLjwvcD4KICAgIDxwPmJldHRlciBjaGVja2luZyBvZiB0aGUgImF0IGxlYXN0IG9uZSBncm91cCByZXF1aXJlZCIgc3R1ZmY8L3A+CiAgICA8cD5PdXRwdXQgbW9yZSBzbWFydHkgdmFyaWFibGVzIG9uIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIHRvIGFsbG93IHBlb3BsZSB0byBtb2RpZnkgdGhlIHRlbXBsYXRlIHRvIHNvbWV0aGluZyB0aGF0IGlzIG1vcmUgYWNjZXNzaWJpbGU8L3A+CiAgICA8cD5TcGxpdCBpbnRvIG1vcmUgZmlsZXMgZm9yIHBlcmZvcm1hbmNlPC9wPgogICAgPHA+WW91IGNhbiBub3cgbm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzPC9wPgogICAgPHA+Tm93IGhhbmRsZSByZWdleCBwcm9ibGVtcyBiZXR0ZXIgaW4gdGhlIGFkbWluIHNlY3Rpb24gdXNlcnMgdGFiPC9wPgogICAgPHA+RW1haWwgZmllbGRzLCB3aGVuIHNwZWNpZmllZCBhcyBvcHRpb25hbCwgbWFrZSBlbSBhY3R1YWxseSBvcHRpb25hbDwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBpbWFnZSB1cGxvYWRzLCB0aGlzIGlzIGEgYmlnIGZlYXR1cmUuICBJbWFnZXMgYXJlIHNjYWxlZCB0byBhIG1heGltdW0gc2l6ZSBpbiBvbmUgZGltZW5zaW9uLCBhbmQgc3RvcmVkIGFzIGZpbGVzIGluIGEgY29uZmlndXJhYmxlIGRpcmVjdG9yeSB1bmRlciB0aGUgdXBsb2Fkc19wYXRoLjwvcD4KICAgIDxwPkNhcHRjaGEgbW9kZSBpcyBub3cgb24gYnkgZGVmYXVsdCwgdW5sZXNzIHlvdSB1c2UgdGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgaW4gdGhlIHRhZy48L3A+CiAgICA8cD5GaXhlcyB0byBDU1YgZXhwb3J0Li4uIGl0IHdhcyBhc3N1bWluZyB0aGUgZGJfcHJlZml4IGlzIGNtc188L3A+CiAgICA8cD5JbXBvcnQgVXNlcnMgZnJvbSBDU1Y8L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgaW5zdGFsbCBhbmQgdW5pbnN0YWxsIG1ldGhvZHMsIGFuZCBub3cgdGhlIGFsbG93X3JlcGVhdGVkX2xvZ2lucyBwcmVmZXJlbmNlIHNob3VsZCB3b3JrPC9wPgogICAgPHA+QWRkcyBwcm9wZXIgdXNlciBoaXN0b3J5IHRyYWNraW5nLiAgTm93IHRyYWNrIGZhaWxlZCBsb2dpbnMsIGxvZ2lucywgZXhwaXJpZXMsIGFuZCBsb2dvdXRzLCBvbiBhIHBlciB1c2VyIGJhc2lzLjwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBjYW5jZWwgYnV0dG9uIG9mIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIGlmIHRoZSB1c2VyIHNldHRpbmdzIGZvcm0gaXMgb24gYSBkaWZmZXJlbnQgcGFnZS48L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgZm9yZ290IHBhc3N3b3JkIHBhZ2UsIGlmIHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybSBpcyBvbiBhIGRpZmZlcmVudCBwYWdlLjwvcD4KICAgIDxwPk1pbm9yIGZpeGVzIHRvIGJlaGF2aW91ciBvYWYgdGhlIHByZWZlcmVuY2VzIHBhbmVscy48L3A+CjwvbGk+CjxsaT4xLjIuMSAtIEp1bmUsIDIwMDcKCTxwPkEgY29va2llIGlzIG5vdyB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgbG9naW4gc3RhdGUgYmV0d2VlbiBzZXNzaW9ucywgaG93ZXZlciB0aGUgY29va2llIGRvZXMgbm90IGxhc3QgYW55IGxvbmdlciB0aGFuIHRoZSB0aW1lb3V0IHNwZWNpZmllZCBpbiB0aGUgdXNlciBzZXR0aW5ncy48L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgYW4gYWRtaW5pc3RyYXRvciB0byBsb2dvdXQgdXNlcnM8L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBmaWx0ZXIgYnkgbG9nZ2VkIGluIHN0YXR1czwvcD4KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciByZWFkLW9ubHkgcHJvcGVydGllcy48L3A+Cgk8cD5BZGRlZCBtb3JlIHZhcmlhYmxlcyBpbiBlYWNoIG9iamVjdCBpbiB0aGUgY2hhbmdlc2V0dGluZ3MgZm9ybTwvcD4KPC9saT4KPGxpPgoJPHA+MS4yLjIgLSBKdW5lLCAyMDA3PC9wPgoJPHA+dHN3IC0gQWRkZWQgZXZlbnQgT25VcGRhdGVVc2VyIHdoaWNoIGdldHMgY2FsbGVkIHdoZW4gdXNlciAob3IgYWRtaW4pIHVwZGF0ZXMgdXNlciBpbmZvPC9wPgoKPC9saT4KPGxpPjEuMyAtIE9jdG9iZXIsIDIwMDcKPHA+QWRkZWQgc3VwcG9ydCBmb3IgJ3JlbWVtYmVyIG1lJyBzbyB0aGF0IGxvZ2luIGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiBhIGNvb2tpZS4gIEFuZCBzdXBwb3J0IGZvciBhIGZvcm0gdG8gYWxsb3cgdGhhdCBjb29raWUgdG8gYmUgcmVzZXQuPC9wPgo8cD5ObyBsb25nZXIgc3VwcG9ydCBub24gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgaW4gcHJvcGVydHkgbmFtZXMuPC9wPgo8cD5OdW1lcm91cyBzbWFsbCBidWdmaXhlcy48L3A+CjxwPlJlcXVpcmUgQ01TIDEuMiBvciBncmVhdGVyLjwvcD4KPC9saT4KPGxpPjEuMy4xIC0gTm92ZW1iZXIsIDIwMDcKPHA+Rml4ZXMgcHJvYmxlbXMgd2l0aCBwYXJhbWV0ZXJzIG5vdCBiZWluZyBjbGVhbmVkIGluIHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZGlhbG9nIG9uIHRoZSBmcm9udCBlbmQuPC9wPgo8cD5GaXhlcyBhbiB1cGRyYWRlIGlzc3VlIGluIHRoZSBkYXRhYmFzZSBzY2hlbWE8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIGluIGEgR2V0U21hcnR5KCkgY2FsbCB0aGF0IHdhcyBhcHBhcmVudGx5IGNhdXNpbmcgcGVvcGxlIGRpZmZpY3VsdGllcyB3aXRoIHRoZSBsb2dpbiBmb3JtLjwvcD4KPHA+QWRkIGEgcHJlZmVyZW5jZSB0aGF0IGFsbG93cyBhZG1pbnMgdG8gc3BlY2lmeSBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgdGhlIGZvcmdvdCBwYXNzd29yZCB2YWxpZGF0aW9uIGZvcm0gaXMgY29tcGxldGUuPC9wPgo8cD5GaXhlcyBhIHByb2JsZW0gd2l0aCBoaWRkZW4gcHJvcGVydGllcyBiZWluZyBsb3N0IGFmdGVyIGEgdXNlciBjaGFuZ2VkIHRoZWlyIHNldHRpbmdzLjwvcD4KPHA+VGhlIEZvcmdvdCBQYXNzd29yZCBhbmQgTG9zdCBVc2VybmFtZSBmb3JtcyBhcmUgbm93IGlubGluZTwvcD4KPHA+Rml4ZXMgdG8gZXJyb3JzIGluIGVuY3J5cHRpb24gd2l0aCB0aGUgc2Vzc2lvbmluZzwvcD4KPHA+Rml4ZXMgdG8gdGhlIGxvc3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS48L3A+CjwvbGk+CjxsaT4xLjMuMyAtIERlY2VtYmVyLCAyMDA3CjxwPk5vdyBvcHRpb25hbGx5IGFsbG93IHNvbWUgZnJvbnRlbmQgZm9ybXMgdG8gYmUgaW5saW5lZC48L3A+CjxwPkFkZCBlbWFpbCBub3RpZmljYXRpb25zIHdoZW4gdXNlciBjaGFuZ2VzIHRoZWlyIHNldHRpbmdzLCBvciBvbiBhbnkgb3RoZXIgZXZlbnQuPC9wPgo8cD5DaGFuZ2UgdGhlIG1heGltdW0gZGF0YSBzaXplIGZvciBwcm9wZXJ0aWVzIGZyb20gMjU1IGNoYXJhY3RlcnMgdG8gbG9uZ3RleHQ8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIHdoZXJlIHRoZSBsb2dvdXQgbGlua3MgZGlkIG5vdCBvYmV5IHRoZSBwcmVmZXJlbmNlIHdoaWNoIGRpY3RhdGVkIHdoaWNoIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgbG9nb3V0LjwvcD4KPC9sST4KPGxpPjEuNCAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIHZpZXd1c2VyIGFjdGlvbiB0byB2aWV3IHRoZSBwcm9wZXJ0aWVzIGZvciBhIHNwZWNpZmljIHVzZXI8L3A+CjxsaT4xLjQuMSAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIEdldFVzZXJIaXN0b3J5IG1ldGhvZCB0byB0aGUgYXBpPC9wPgo8cD5BZGRzIGEgcHJlZmVyZW5jZSBmb3IgcGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3M8L3A+CjxwPlVzZSB0aGUgYWZ0ZXJfdmVyaWZ5Y29kZSBwcmVmZXJlbmNlPC9wPgo8L2xpPgo8bGk+MS40LjIgLSBNYXJjaCwgMjAwOAo8cD5GaXhlcyBwcm9ibGVtcyB3aXRoIGNhbmNlbCBidXR0b25zPC9wPgo8cD5NYWtlcyBpdCBlYXNpZXIgZm9yIHRleHQgb24gdmFyaW91cyBidXR0b25zIGFuZCBsaW5rcyB0byBiZSBjaGFuZ2VkPC9wPgo8cD5VcGRhdGUgZGVwZW5kZW5jaWVzLCBldGMuPC9wPgo8cD5VcGRhdGUgYWxsIGZpbGVzIGFuZCB0aGUgaGVscCB0byByZWZsZWN0IHRoZSBuZXcgbGljZW5zZTwvcD4KPHA+QWRqdXN0bWVudHMgc28gdGhlIHNpZ25pbiBhbmQgc2lnbm91dCB0ZXh0IGNhbiBiZSBjaGFuZ2VkIGVhc2lseTwvcD4KPHA+Q2xlYW51cHMgYW5kIGJ1ZyBmaXhlczwvcD4KPC9saT4KPGxpPjEuNC4zIC0gSnVuZSwgMjAwOAo8cD5Ob3cgdXNlIHNlc3Npb24gdmFyaWFibGVzIHRvIGtlZXAgdHJhY2sgb2YgdXNlciB2YXJpYWJsZXMgYmV0d2VlbiBzdGVwcyBvZiB0aGUgZm9ybXMgZm9yIGFkZGluZyBhbmQgZWRpdGluZyB1c2Vycy48L3A+CjxwPkdldCByaWQgb2YgdGhlIHRpbWUgZmllbGRzIGZvciB0aGUgZXhwaXJ5IGRhdGUsIGFuZCBqdXN0IGV4cGlyZSBhdCAyMzo1OTo1OSBvbiB0aGF0IHNwZWNpZmllZCBkYXk8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBleHRlcm5hbCBtb2R1bGVzIHRvIGludGVyYWN0IChzb21ld2hhdCkgd2l0aCBmZXUsIGFuZCBzcGVjaWZ5IGEgcmV0dXJuIGxvY2F0aW9uPC9wPgo8cD5BZGRlZCB0aGUgR2V0RnVsbFVzZXJzSW5Hcm91cCgpIG1ldGhvZCBpbnRvIHRoZSBhcGk8L3A+CjwvbGk+CjxsaT4xLjQuNCAtIEF1Z3VzdCwgMjAwOAo8cD5UaGFua3MgdG8gX1NqR18gd2Ugbm93IHN1cHBvcnQgdXNpbmcgZW1haWwgYWRkcmVzc2VzIGFzIHVzZXJuYW1lICh0aGVyZSBpcyBhIHByZWZlcmVuY2UgaW4gdGhlIGFkbWluKS48L3A+CjxwPkFkZHMgYSBHZXRFbWFpbCBtZXRob2QgdG8gdGhlIGFwaSB0byByZXR1cm4gdGhlIGZpcnN0IGVtYWlsIGFkZHJlc3MgZm91bmQgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci48L3A+CjwvbGk+CjxsaT4xLjUgLSBBdWd1c3QsIDIwMDgKPHA+QWRkIHRoZSBmZXVfc21hcnR5IGNsYXNzIHdpdGggYSBmZXcgZnVuY3Rpb25zIGluIGl0LCBmb3IgaXRlcmF0aW5nIHRocm91Z2ggdXNlcnMgaW4gc21hcnR5LjwvcD4KPC9saT4KPGxpPjEuNS4xIC0gQXVndXN0LCAyMDA4CjxwPktlZXAgdGhlIGxvZ2luaWQgaW4gYSB2YXJpYWJsZSwgdG8gY3V0IGRvd24gb24gdGhlIG51bWJlciBvZiByZXBlYXQgcXVlcmllcy48L3A+CjxwPkZpeGVzIHRvIHByb3BlcnRpZXMgd2l0aCBzcGFjZXMgaW4gdGhlIHZhbHVlcy48L3A+CjwvbGk+CjxsaT4xLjUuMiAtIEF1Z3VzdCwgMjAwOAo8cD5TcGxpdCBvdXQgYSBmZXcgbW9yZSBmaWxlcyB0byBzaHJpbmsgbWVtb3J5IGZvb3RwcmludCBhIGJpdCBtb3JlPC9wPgo8cD5GaXhlcyBzb21lIHRhYiBuYW1lIHN0dWZmPC9wPgo8cD5TbWFsbCB2YWxpZGF0aW9uIGlzc3VlIHdpdGggZGVmYXVsdCB0ZW1wbGF0ZTwvcD4KPHA+TWlub3IgZW5oYW5jZW1ldG5zIHRvIHRoZSB2aWV3dXNlciB0ZW1wbGF0ZS48L3A+CjxwPkdldCByaWQgb2YgY29tbWVudGVkIG91dCBjb2RlIHRvIHNocmluayB0aGUgZmlsZSBkb3duIGEgYml0LjwvcD4KPHA+Rml4IGZvcmdvdCBwYXNzd29yZCBmb3JtIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB1c2VybmFtZSA9PSBlbWFpbCBhZGRyZXNzLjwvcD4KPHA+QWRkIHByZXR0eSB1cmwgc3VwcG9ydCBpbnRvIHRoZSBsb3N0IHBhc3N3b3JkIGVtYWlsLjwvcD4KPC9saT4KPGxpPjEuNS4zIC0gU2VwdGVtYmVyLCAyMDA4CjxwPk51bWVyb3VzIHNtYWxsLCBidXQgYW5ub3lpbmcgYnVnIGZpeGVzPC9wPgo8bGk+MS41LjQgLSBEZWNlbWJlciwgMjAwOAo8cD5Nb3JlIGFuZCBtb3JlIGJ1ZyBmaXhlcy48L3A+CjxwPlRoZSBzdGFydHMgb2YgcHJldHR5IHVybCBzdXBwb3J0ICh0aGFuayB5b3UgTnVubyk8L3A+CjwvbGk+CjxsaT4xLjYgLSBKYW51c2FyeSwgMjAwOQogIDx1bD4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBwcm9wZXJ0eSBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi48L2xpPgogIDxsaT5BZGQgdGhlIGFiaWxpdHkgdG8gb3B0aW9uYWxseSBlbmFibGUgYSB3eXNpd3lnIGZvciB0ZXh0IGFyZWEgcHJvcGVydGllcy48L2xpPgogIDxsaT5ObyBsb25nZXIgYWxsb3cgYXV0byBpbnN0YWxsIG9yIHVwZ3JhZGUuPC9saT4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBncm91cCBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi4uLi4gcmUtb3JkZXJpbmcgaXMgc2ltcGxlciBub3cuPC9saT4KICA8bGk+UmUtb3JnYW5pemUgdGhlIHByZWZlcmVuY2VzIHRhYiwgYW5kIHRoZSB1c2VycyBmaWx0ZXJpbmcgc3R1ZmYgdG8gYmUgYSBiaXQgbW9yZSBwcmVzZW50YWJsZS48L2xpPgogIDxsaT5BZGQgbmV3IHByZWZlcmVuY2UgZm9yIHRoZSBkZWZhdWx0IGV4cGlyeSBhZ2UgZm9yIHVzZXJzLjwvbGk+CiAgPGxpPkFkZCBuZXcgcHJlZmVyZW5jZSBpbmRpY2F0aW5nIHdldGhlciB3ZSBzaG91bGQgYXR0ZW1wdCB0byBjcmVhdGUgcmFuZG9tIHVzZXJuYW1lcyBvciBub3QuPC9saT4KICA8bGk+QWRkIGJ1bGsgdXNlciBkZWxldGUgY2FwYWJpbGl0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgdGVtcGxhdGUgY2hhbmdlcyB0byB0aGUgY2hhbmdlIHNldHRpbmdzIHN0dWZmLjwvbGk+CiAgICA8bGk+Rml4IHRleHQgcHJvcGVydHkgbGVuZ3RoIGlzc3Vlcy48L2xpPgogICAgPGxpPlJlbW92ZSBzdHVwaWQgZGllIGFuZCBkZWJ1ZyBzdGF0ZW1lbnRzIGZyb20gdGhlIHJlbWVtYmVyIG1lIHN0dWZmLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4yIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+QmVnaW4gaW1wbGVtZW50aW5nIHRoZSB0YWJsZXNvcnRlciBzdHVmZjwvbGk+CiAgICA8bGk+Rml4IHByb2JsZW1zIHdpdGggaW1hZ2UgZmllbGRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4zIC0gRmVicnVhcnksIDIwMDkKICA8dWw+CiAgPGxpPkZpeCBjb29raWUgaXNzdWVzIHBlcm1hbmVudGx5LiAoSSBob3BlKS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNCAtIEFwcmlsLCAyMDA5CiAgPHVsPgogIDxsaT5BZGQgZmllbGQgdHlwZSBhcyBhIG1lbWJlciBvZiB0aGUgY29udHJvbCBvYmplY3QgaW4gdmFyaW91cyBmb3Jtcy48L2xpPgogIDxsaT5BZGRlZCByYWRpbyBidXR0b25zIGZpZWxkIHR5cGUgKF9TakdfKTwvbGk+CiAgPGxpPk1vcmUgZml4ZXMgdG8gdXNlciBleHBvcnQgc3R1ZmYuPC9sPmkKICA8bGk+Rml4IGZvciByZXR1cm50byBwYXJhbSBpbiBsb2dpbiBmb3JtPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjUgLSBNYXksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNiAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDxsaT5BZGQgRGF0ZSBmaWVsZCB0eXBlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi43IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPGxpPkFkZCBtb3JlIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIGZldV9zbWFydHkgb2JqZWN0LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44LjEgLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjkgLSBBdWd1c3QsIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTAgLSBPY3RvYmVyLCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjExIC0gTm92ZW1iZXIsIDIwMDkKICA8dWw+CiAgPGxpPk5vdyBjb252ZXJ0IHByb3BlcnR5IG5hbWVzIHRvIGNvbnRhaW4gb25seSB2YWxpZCBjaGFycyBob3BlZnVsbHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEyIC0gSmFudWFyeSwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgaW1wcm92ZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMyAtIEZlYnJ1YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5Nb3JlIE1pbm9yIGltcHJvdmVtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+QWRkcyB0aGUgcmVzZXRfc2Vzc2lvbiBhY3Rpb24uPC9saT4KICA8bGk+QnVnIGZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+Rml4ZXMgYW5kIGVuaGFuY2VtZW50cyB0byB0aGUganF1ZXJ5IHJlc2V0IHNlc3Npb24gdGVtcGxhdGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNy4zIC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjggLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+Tm93IHRoZSByZWRpcmVjdF90byBwYWdlIHByZWZlcmVuY2VzIGFyZSBzbWFydHkgdGVtcGxhdGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC4yIC0gQXByaWwsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguMyAtIEFwcmlsLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjQgLSBBcHJpbCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC41IC0gTWF5LCAyMDEwCiAgPHVsPgogIDxsaT5BZGRzIHRoZSByZXR1cm5sYXN0IHBhcmFtZXRlciB0byBhbGxvdyByZXR1cm5pbmcgYmFjayB0byB0aGUgcHJldmlvdXMgdXJsIG9uIGxvZ2luIG9yIGxvZ291dC48L2xpPgogIDxsaT5GaXhlcyB0aGUgcmVzZXQgdG8gZGVmYXVsdHMgYnV0dG9uIGluIHRoZSBsb3N0IHVzZXJuYW1lIHRlbXBsYXRlKHMpIGZvcm0uPC9saT4KPGxpPjEuOSAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgdW5pcXVlIGZpZWxkcy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4xIC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPlJlLWFkZHMgYSBmdW5jdGlvbiBuZWVkZWQgYnkgQXZhaWxhYmlsaXR5LjwvbGk+CiAgICA8bGk+TWlub3IgYWRkaXRpb24gdG8gdGhlIHZpZXcgdXNlciB0ZW1wbGF0ZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjkuMiAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5SZW1vdmUgcHJldHR5IHVybHMgZm9yIGxvc3QgdXNlcm5hbWUsIGFuZCBjaGFuZ2Ugc2V0dGluZ3MgZm9ybXMgYmVjYXVzZSB0aGV5IHdlcmUgbG9zaW5nIHBhcmFtZXRlcnMgbGlrZSB0aGUgbGFuZyBwYXJhbWV0ZXIuPC9saT4KICAgIDxsaT4oVGVkKTogRml4IGFiaWxpdHkgdG8gdW5jaGVjayBjaGVja2JveGVzIHdoaWxlIGVkaXRpbmcgYSB1c2VyIGluIHRoZSBhZG1pbjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4zIC0gSnVuZSwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMCAtIEp1bmUsIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBzdXBwcG9ydCBmb3IgYWRkaXRpb25hbCBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIChzdGlsbCB0ZXN0aW5nKS48L2xpPgogICAgPGxpPkZpeGVzIGEgbWlub3IgaXNzdWUgd2l0aCByZXR1cm50by48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjEgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjIgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIEdldEV4cHJpcnlEYXRlIGFwaSBtZXRob2QuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMSAtIEp1bHksIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBvcHRpb25hbCBlbmNyeXB0aW9uIGZvciBwcm9wZXJ0eSBkZWZpbml0aW9ucy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+SW1wcm92ZW1lbnQgdG8gdGhlIENTViBleHBvcnQgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMiAtIEF1Z3VzdCwgMjAxMAogIDx1bD4KICAgIDxsaT5Ob3cgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCBTZWxmUmVnaXN0cmF0aW9uIHRvIGhhbmRsZSBwYWlkIHN1YnNjcmlwdGlvbnMuPC9saT4KICAgIDxsaT5UaGUgY29udGVudF9tb2R1bGUgdGFnIG5vdyBwcm92aWRlcyBhIG11bHRpLXNlbGVjdCBsaXN0IChUZWQpPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4zIC0gU2VwdGVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgYW4gb3ZlcmFsbCBwcmVmZXJlbmNlIGZvciBwYWlkIHJlZ2lzdHJhdGlvbiwgd2hpY2ggdHJpZ2dlcnMgdGhlIGV2ZW50IGhhbmRsZXJzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+Rml4ZXMgZm9yIHN1cHBvcnQgZm9yIENNU01TIDEuOTwvbGk+CiAgICA8bGk+UmVxdWlyZXMgQ0dFeHRlaW9ucyAxLjIxIG9yIGJldHRlcjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNiAtIE5vdmVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjcgLSBEZWNlbWJlciwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi44IC0gRGVjZW1iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+U29tZSBtaW5vciBidWcgZml4ZXMgcmVsYXRlZCB0byBFX1NUUklDVCBhbmQgRV9ERVBSRUNBVEVELjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTAgLSBKYW51YXJ5LCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBhZGQvZWRpdCBncm91cCB3aXRoIGxvdHMgb2YgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEyIC0gRmVicnVhcnksIDIwMTEKICA8dWw+CiAgICA8bGk+TWlub3IgQVBJIEZpeGVzLjwvbGk+CiAgICA8bGk+QWRkcyBhIG1ldGhvZCB0byBjbGVhciB0aGUgcHJvcGVydHkgY2FjaGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4xMyAtIE1hcmNoLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGV4cG9ydC48L2xpPgogICAgPGxpPkZpeGVzIHRvIHVzZXIgZWRpdGluZy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEzIC0gTWFyY2gsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgcHJvYmxlbSB3aXRoIGltYWdlIGZpZWxkcyB3aGVuIGVkaXRpbmcgYSB1c2VyLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTUgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgc21hbGwgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTYgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzIHdydCBsb3N0IHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMyAtIEp1bmUsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgaW4gdGhlIExvZ291dCgpIG1ldGhvZC48L2xpPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZm9yY2UgbG9nb3V0IHVzZXJzIGF0IHNwZWNpZmllZCB0aW1lcy48L2xpPgogICAgPGxpPk1vZGlmaWVzIHRoZSBiZWhhdmlvciBvZiB0aGUgKGRlZmF1bHQpIGNoYW5nZSBzZXR0aW5ncyBmb3JtIHRvIGRpc3BsYXkgdGhlIGxvZ291dCBmb3JtIHdoZW4gY29tcGxldGVkLjwvbGk+CiAgICA8bGk+QWRkcyBhIHByZWZlcmVuY2UgdG8gc3BlY2lmeSBhIChtaW5pbXVtKSB0aW1lIGludGVydmFsIGJldHdlZW4gZXhwaXJ5IGFjdGlvbnMuICBUaGlzIHNob3VsZCBzYXZlIGEgZmV3IHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICAgIDxsaT5BZGRzIGEgcHJlZmVyZW5jZSB0byBzcGVjaWZ5IGEgdGltZSBpbnRlcnZhbCBiZXR3ZWVuIHVzZXIgY2hlY2tpbnMgdG91Y2hpbmcgdGhlIGRhdGFiYXNlLiAgVGhpcyBzaG91bGQgc2F2ZSBhIGZldyBtb3JlIGRiIHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNCAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGp1c3QgdGhlIHBhc3N3b3JkIHNhbHQgKG9ubHkgaWYgdGhlcmUgYXJlIG5vIHVzZXJzKS48L2xpPgogICAgPGxpPkltcHJvdmVtZXRucyB0byB0aGUgQ1NWIGV4cG9ydC9pbXBvcnQgcm91dGluZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNSAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGQgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIHRoZSB2aWV3LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuMSAtIEF1Z3VzdCAyMDExCiA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4LjwvbGk+CiA8L3VsPgo8bGk+MS4xNS40IC0gT2N0b2JlciAyMDExCiAgPHVsPgogICAgPGxpPk9wdGltaXphdGlvbnMuPC9saT4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5NaW5vciBBUEkgZW5oYW5jZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuNSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkFkZHMgYSBuZXcgJnF1b3Q7UHJvdGVjdGVkIENvbnRlbnQmcXVvdDsgY29udGVudCB0eXBlLiAgQWxvbmcgd2l0aCBhIGZldyByZWxhdGVkIHByZWZlcmVuY2VzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgd3J0IGNhY2hpbmcgb2YgdXNlciBwcm9wZXJ0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMiAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYW4gdXBncmFkZSBpc3N1ZS48L2xpPgogICAgPGxpPkZpeGVzIGEgcmVkaXJlY3QgY2FsbC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2LjQgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGZvciBhZGRpdGlvbmFsIGNvbnRlbnQgYmxvY2tzLjwvbGk+CiAgICA8bGk+Rml4IGZvciBub3RpY2UgZ2VuZXJhdGVkIGluIHRoZSBBUEkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNi42IC0gRGVjZW1iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgYnVnIGZpeC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE3IC0gRmVicnVhcnksIDIwMTIKICA8dWw+CiAgICA8bGk+TWFueSBtZXRob2RzIGFyZSBwcm90ZWN0ZWQgbm93Li4uIGZvciBiZXR0ZXIgc2VjdXJpdHkuPC9saT4KICAgIDxsaT5BZGRzIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0uPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNy4xIC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xOC54IC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5JbXByb3ZlZCB1c2VycyB0YWIuPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gY2hhbmdlIHRoZWlyIHVzZXJuYW1lLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTgueCAtIE1hcmNoLCAyMDEyCiAgPHVsPgogICAgPGxpPkFkZGVkIHRoZSBkYXRhIHByb3BlcnR5IHR5cGUgKG5vdCBlZGl0YWJsZSBieSBhZG1pbnMpLjwvbGk+CiAgICA8bGk+TW9kaWZpZWQgdGhlIGFwaSB0byBhbGxvdyBkZWxldGluZyBkYXRhIGZyb20gdGhlIHVzZXJzIHdoZW4gZGVsZXRpbmcgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE5IC0gU2VwdGVtYmVyLCAyMDEyCiAgPHVsPgogICAgPGxpPk51bWVyb3VzIGd1aSBpbXByb3ZlbWVudHMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBidWcgZml4ZXMgYW5kIG1pbm9yIGVuaGFuY2VtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjIwIC0gT2N0b2JlciwgMjAxMgogIDx1bD4KICAgIDxsaT5GeHhlcyB0byB0aGUgYmVoYXZpb3Igb2YgY2hlY2tib3ggZmllbGRzLjwvbGk+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGNoZWNrYm94ZXMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBvdGhlciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMS54CiAgPHVsPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGFsbG93IGFsdGVybmF0ZSBmb3JtcyBvZiBhdXRoZW50aWNhdGlvbi48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGV4cGFuZCB0aGUgdXNlIG9mIHRoZSBjb25zdW1lciBjbGFzcy48L2xpPgogICAgPGxpPk5vdyBhbGxvdyBvdGhlciBtb2R1bGVzIHRvIGNvbnRyb2wgZ3JvdXAgbWVtYmVyc2hpcC48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIHByZWZlcmVuY2VzIGFuZCBzZXR0aW5ncy48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIGNvb2tpZSwgc2Vzc2lvbiwgbG9nZ2luZywgYW5kIGhpc3RvcnkgZnVuY3Rpb25hbGl0aWVzLjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgZW5oYW5jZW1lbnRzIGFuZCBidWcgZml4ZXMuPC9saT4KICAgIDxsaT4qKiAxLjIxLjExIC0gRml4ZWQgc2lnbmlmaWNhbnQgcHJvYmxlbSB3aXRoIHRoZSBwcm90ZWN0ZWQgY29udGVudCBjb250ZW50IHR5cGUgLi4uIGV2ZXJ5Ym9keSBzaG91bGQgdXBncmFkZSBBU0FQICoqPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMi54CiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGFzY2lpIGltcG9ydDwvbGk+CiAgICA8bGk+RW5jcnlwdGVkIHByb3BlcnRpZXMgYXJlIG5vIGxvbmdlciBleHBvcnRlZCB0byBBU0NJSTwvbGk+CiAgICA8bGk+Rml4ZXMgdG8gZ3JvdXAgZXhwb3J0L2ltcG9ydDwvbGk+CiAgICA8bGk+QWRtaW5pc3RyYXRvcnMgY2FuIG5vIGxvbmdlciBzZWUgYW5kL29yIGVkaXQgZW5jcnlwdGVkIHByb3BlcnRpZXMuPC9saT4KICAgIDxsaT5BZG1pbiB1c2VycyB0YWIgZmlsdGVyaW5nIGhhcyBiZWVuIHJld3JpdHRlbiwgaXMgbm93IGEgdXNlciBwcmVmZXJlbmNlLjwvbGk+CiAgICA8bGk+SW1wcm92ZWQgZXJyb3IgY2hlY2tpbmcgaW4gdGhlIGFkbWluIHVzZXJzIHRhYi48L2xpPgogICAgPGxpPkltcHJvdmVtZW50cyB0byB0aGUgZmV1X3VzZXJfcXVlcnkgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMy54CiAgPHVsPgoJPGxpPlJld3JpdGUgQVNDSUkgZXhwb3J0IGFuZCBpbXBvcnQgY29kZS48L2xpPgoJPGxpPlJld3JpdGUgRkVVIENoYW5nZSBzZXR0aW5ncyB0ZW1wbGF0ZTogIE5PVEU6IFlvdSBtYXkgbmVlZCB0byBhZGp1c3QgeW91ciBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUuPC9saT4KCTxsaT5SZXdyaXRlIEZFVSBsb2dpbiBmb3JtIHRlbXBsYXRlLjwvbGk+Cgk8bGk+QWRkcyBhIHRyaXZpYWwsIG9wdGlvbmFsIGhvbmV5cG90IGNhcHRjaGEgZmllbGQgdG8gdGhlIGxvZ2luIGZvcm0uICBSZXNldCB5b3VyIGxvZ2luIGZvcm0gdG8gZGVmYXVsdCB2YWx1ZXMgdG8gc2VlIGl0LCBhbmQgaXRzIHVzZS48L2xpPgogIDwvdWw+CjwvbGk+CjwvdWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/COPYING</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ICAgICAgICAgICAgICAgICAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQogICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMywgMjkgSnVuZSAyMDA3CgogQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiA8aHR0cDovL2ZzZi5vcmcvPgogRXZlcnlvbmUgaXMgcGVybWl0dGVkIHRvIGNvcHkgYW5kIGRpc3RyaWJ1dGUgdmVyYmF0aW0gY29waWVzCiBvZiB0aGlzIGxpY2Vuc2UgZG9jdW1lbnQsIGJ1dCBjaGFuZ2luZyBpdCBpcyBub3QgYWxsb3dlZC4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmVhbWJsZQoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaXMgYSBmcmVlLCBjb3B5bGVmdCBsaWNlbnNlIGZvcgpzb2Z0d2FyZSBhbmQgb3RoZXIga2luZHMgb2Ygd29ya3MuCgogIFRoZSBsaWNlbnNlcyBmb3IgbW9zdCBzb2Z0d2FyZSBhbmQgb3RoZXIgcHJhY3RpY2FsIHdvcmtzIGFyZSBkZXNpZ25lZAp0byB0YWtlIGF3YXkgeW91ciBmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgdGhlIHdvcmtzLiAgQnkgY29udHJhc3QsCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvCnNoYXJlIGFuZCBjaGFuZ2UgYWxsIHZlcnNpb25zIG9mIGEgcHJvZ3JhbS0tdG8gbWFrZSBzdXJlIGl0IHJlbWFpbnMgZnJlZQpzb2Z0d2FyZSBmb3IgYWxsIGl0cyB1c2Vycy4gIFdlLCB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCB1c2UgdGhlCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3N0IG9mIG91ciBzb2Z0d2FyZTsgaXQgYXBwbGllcyBhbHNvIHRvCmFueSBvdGhlciB3b3JrIHJlbGVhc2VkIHRoaXMgd2F5IGJ5IGl0cyBhdXRob3JzLiAgWW91IGNhbiBhcHBseSBpdCB0bwp5b3VyIHByb2dyYW1zLCB0b28uCgogIFdoZW4gd2Ugc3BlYWsgb2YgZnJlZSBzb2Z0d2FyZSwgd2UgYXJlIHJlZmVycmluZyB0byBmcmVlZG9tLCBub3QKcHJpY2UuICBPdXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZXMgYXJlIGRlc2lnbmVkIHRvIG1ha2Ugc3VyZSB0aGF0IHlvdQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yCnRoZW0gaWYgeW91IHdpc2gpLCB0aGF0IHlvdSByZWNlaXZlIHNvdXJjZSBjb2RlIG9yIGNhbiBnZXQgaXQgaWYgeW91CndhbnQgaXQsIHRoYXQgeW91IGNhbiBjaGFuZ2UgdGhlIHNvZnR3YXJlIG9yIHVzZSBwaWVjZXMgb2YgaXQgaW4gbmV3CmZyZWUgcHJvZ3JhbXMsIGFuZCB0aGF0IHlvdSBrbm93IHlvdSBjYW4gZG8gdGhlc2UgdGhpbmdzLgoKICBUbyBwcm90ZWN0IHlvdXIgcmlnaHRzLCB3ZSBuZWVkIHRvIHByZXZlbnQgb3RoZXJzIGZyb20gZGVueWluZyB5b3UKdGhlc2UgcmlnaHRzIG9yIGFza2luZyB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuICBUaGVyZWZvcmUsIHlvdSBoYXZlCmNlcnRhaW4gcmVzcG9uc2liaWxpdGllcyBpZiB5b3UgZGlzdHJpYnV0ZSBjb3BpZXMgb2YgdGhlIHNvZnR3YXJlLCBvciBpZgp5b3UgbW9kaWZ5IGl0OiByZXNwb25zaWJpbGl0aWVzIHRvIHJlc3BlY3QgdGhlIGZyZWVkb20gb2Ygb3RoZXJzLgoKICBGb3IgZXhhbXBsZSwgaWYgeW91IGRpc3RyaWJ1dGUgY29waWVzIG9mIHN1Y2ggYSBwcm9ncmFtLCB3aGV0aGVyCmdyYXRpcyBvciBmb3IgYSBmZWUsIHlvdSBtdXN0IHBhc3Mgb24gdG8gdGhlIHJlY2lwaWVudHMgdGhlIHNhbWUKZnJlZWRvbXMgdGhhdCB5b3UgcmVjZWl2ZWQuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUKb3IgY2FuIGdldCB0aGUgc291cmNlIGNvZGUuICBBbmQgeW91IG11c3Qgc2hvdyB0aGVtIHRoZXNlIHRlcm1zIHNvIHRoZXkKa25vdyB0aGVpciByaWdodHMuCgogIERldmVsb3BlcnMgdGhhdCB1c2UgdGhlIEdOVSBHUEwgcHJvdGVjdCB5b3VyIHJpZ2h0cyB3aXRoIHR3byBzdGVwczoKKDEpIGFzc2VydCBjb3B5cmlnaHQgb24gdGhlIHNvZnR3YXJlLCBhbmQgKDIpIG9mZmVyIHlvdSB0aGlzIExpY2Vuc2UKZ2l2aW5nIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSBpdC4KCiAgRm9yIHRoZSBkZXZlbG9wZXJzJyBhbmQgYXV0aG9ycycgcHJvdGVjdGlvbiwgdGhlIEdQTCBjbGVhcmx5IGV4cGxhaW5zCnRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoaXMgZnJlZSBzb2Z0d2FyZS4gIEZvciBib3RoIHVzZXJzJyBhbmQKYXV0aG9ycycgc2FrZSwgdGhlIEdQTCByZXF1aXJlcyB0aGF0IG1vZGlmaWVkIHZlcnNpb25zIGJlIG1hcmtlZCBhcwpjaGFuZ2VkLCBzbyB0aGF0IHRoZWlyIHByb2JsZW1zIHdpbGwgbm90IGJlIGF0dHJpYnV0ZWQgZXJyb25lb3VzbHkgdG8KYXV0aG9ycyBvZiBwcmV2aW91cyB2ZXJzaW9ucy4KCiAgU29tZSBkZXZpY2VzIGFyZSBkZXNpZ25lZCB0byBkZW55IHVzZXJzIGFjY2VzcyB0byBpbnN0YWxsIG9yIHJ1bgptb2RpZmllZCB2ZXJzaW9ucyBvZiB0aGUgc29mdHdhcmUgaW5zaWRlIHRoZW0sIGFsdGhvdWdoIHRoZSBtYW51ZmFjdHVyZXIKY2FuIGRvIHNvLiAgVGhpcyBpcyBmdW5kYW1lbnRhbGx5IGluY29tcGF0aWJsZSB3aXRoIHRoZSBhaW0gb2YKcHJvdGVjdGluZyB1c2VycycgZnJlZWRvbSB0byBjaGFuZ2UgdGhlIHNvZnR3YXJlLiAgVGhlIHN5c3RlbWF0aWMKcGF0dGVybiBvZiBzdWNoIGFidXNlIG9jY3VycyBpbiB0aGUgYXJlYSBvZiBwcm9kdWN0cyBmb3IgaW5kaXZpZHVhbHMgdG8KdXNlLCB3aGljaCBpcyBwcmVjaXNlbHkgd2hlcmUgaXQgaXMgbW9zdCB1bmFjY2VwdGFibGUuICBUaGVyZWZvcmUsIHdlCmhhdmUgZGVzaWduZWQgdGhpcyB2ZXJzaW9uIG9mIHRoZSBHUEwgdG8gcHJvaGliaXQgdGhlIHByYWN0aWNlIGZvciB0aG9zZQpwcm9kdWN0cy4gIElmIHN1Y2ggcHJvYmxlbXMgYXJpc2Ugc3Vic3RhbnRpYWxseSBpbiBvdGhlciBkb21haW5zLCB3ZQpzdGFuZCByZWFkeSB0byBleHRlbmQgdGhpcyBwcm92aXNpb24gdG8gdGhvc2UgZG9tYWlucyBpbiBmdXR1cmUgdmVyc2lvbnMKb2YgdGhlIEdQTCwgYXMgbmVlZGVkIHRvIHByb3RlY3QgdGhlIGZyZWVkb20gb2YgdXNlcnMuCgogIEZpbmFsbHksIGV2ZXJ5IHByb2dyYW0gaXMgdGhyZWF0ZW5lZCBjb25zdGFudGx5IGJ5IHNvZnR3YXJlIHBhdGVudHMuClN0YXRlcyBzaG91bGQgbm90IGFsbG93IHBhdGVudHMgdG8gcmVzdHJpY3QgZGV2ZWxvcG1lbnQgYW5kIHVzZSBvZgpzb2Z0d2FyZSBvbiBnZW5lcmFsLXB1cnBvc2UgY29tcHV0ZXJzLCBidXQgaW4gdGhvc2UgdGhhdCBkbywgd2Ugd2lzaCB0bwphdm9pZCB0aGUgc3BlY2lhbCBkYW5nZXIgdGhhdCBwYXRlbnRzIGFwcGxpZWQgdG8gYSBmcmVlIHByb2dyYW0gY291bGQKbWFrZSBpdCBlZmZlY3RpdmVseSBwcm9wcmlldGFyeS4gIFRvIHByZXZlbnQgdGhpcywgdGhlIEdQTCBhc3N1cmVzIHRoYXQKcGF0ZW50cyBjYW5ub3QgYmUgdXNlZCB0byByZW5kZXIgdGhlIHByb2dyYW0gbm9uLWZyZWUuCgogIFRoZSBwcmVjaXNlIHRlcm1zIGFuZCBjb25kaXRpb25zIGZvciBjb3B5aW5nLCBkaXN0cmlidXRpb24gYW5kCm1vZGlmaWNhdGlvbiBmb2xsb3cuCgogICAgICAgICAgICAgICAgICAgICAgIFRFUk1TIEFORCBDT05ESVRJT05TCgogIDAuIERlZmluaXRpb25zLgoKICAiVGhpcyBMaWNlbnNlIiByZWZlcnMgdG8gdmVyc2lvbiAzIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KCiAgIkNvcHlyaWdodCIgYWxzbyBtZWFucyBjb3B5cmlnaHQtbGlrZSBsYXdzIHRoYXQgYXBwbHkgdG8gb3RoZXIga2luZHMgb2YKd29ya3MsIHN1Y2ggYXMgc2VtaWNvbmR1Y3RvciBtYXNrcy4KCiAgIlRoZSBQcm9ncmFtIiByZWZlcnMgdG8gYW55IGNvcHlyaWdodGFibGUgd29yayBsaWNlbnNlZCB1bmRlciB0aGlzCkxpY2Vuc2UuICBFYWNoIGxpY2Vuc2VlIGlzIGFkZHJlc3NlZCBhcyAieW91Ii4gICJMaWNlbnNlZXMiIGFuZAoicmVjaXBpZW50cyIgbWF5IGJlIGluZGl2aWR1YWxzIG9yIG9yZ2FuaXphdGlvbnMuCgogIFRvICJtb2RpZnkiIGEgd29yayBtZWFucyB0byBjb3B5IGZyb20gb3IgYWRhcHQgYWxsIG9yIHBhcnQgb2YgdGhlIHdvcmsKaW4gYSBmYXNoaW9uIHJlcXVpcmluZyBjb3B5cmlnaHQgcGVybWlzc2lvbiwgb3RoZXIgdGhhbiB0aGUgbWFraW5nIG9mIGFuCmV4YWN0IGNvcHkuICBUaGUgcmVzdWx0aW5nIHdvcmsgaXMgY2FsbGVkIGEgIm1vZGlmaWVkIHZlcnNpb24iIG9mIHRoZQplYXJsaWVyIHdvcmsgb3IgYSB3b3JrICJiYXNlZCBvbiIgdGhlIGVhcmxpZXIgd29yay4KCiAgQSAiY292ZXJlZCB3b3JrIiBtZWFucyBlaXRoZXIgdGhlIHVubW9kaWZpZWQgUHJvZ3JhbSBvciBhIHdvcmsgYmFzZWQKb24gdGhlIFByb2dyYW0uCgogIFRvICJwcm9wYWdhdGUiIGEgd29yayBtZWFucyB0byBkbyBhbnl0aGluZyB3aXRoIGl0IHRoYXQsIHdpdGhvdXQKcGVybWlzc2lvbiwgd291bGQgbWFrZSB5b3UgZGlyZWN0bHkgb3Igc2Vjb25kYXJpbHkgbGlhYmxlIGZvcgppbmZyaW5nZW1lbnQgdW5kZXIgYXBwbGljYWJsZSBjb3B5cmlnaHQgbGF3LCBleGNlcHQgZXhlY3V0aW5nIGl0IG9uIGEKY29tcHV0ZXIgb3IgbW9kaWZ5aW5nIGEgcHJpdmF0ZSBjb3B5LiAgUHJvcGFnYXRpb24gaW5jbHVkZXMgY29weWluZywKZGlzdHJpYnV0aW9uICh3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uKSwgbWFraW5nIGF2YWlsYWJsZSB0byB0aGUKcHVibGljLCBhbmQgaW4gc29tZSBjb3VudHJpZXMgb3RoZXIgYWN0aXZpdGllcyBhcyB3ZWxsLgoKICBUbyAiY29udmV5IiBhIHdvcmsgbWVhbnMgYW55IGtpbmQgb2YgcHJvcGFnYXRpb24gdGhhdCBlbmFibGVzIG90aGVyCnBhcnRpZXMgdG8gbWFrZSBvciByZWNlaXZlIGNvcGllcy4gIE1lcmUgaW50ZXJhY3Rpb24gd2l0aCBhIHVzZXIgdGhyb3VnaAphIGNvbXB1dGVyIG5ldHdvcmssIHdpdGggbm8gdHJhbnNmZXIgb2YgYSBjb3B5LCBpcyBub3QgY29udmV5aW5nLgoKICBBbiBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZSBkaXNwbGF5cyAiQXBwcm9wcmlhdGUgTGVnYWwgTm90aWNlcyIKdG8gdGhlIGV4dGVudCB0aGF0IGl0IGluY2x1ZGVzIGEgY29udmVuaWVudCBhbmQgcHJvbWluZW50bHkgdmlzaWJsZQpmZWF0dXJlIHRoYXQgKDEpIGRpc3BsYXlzIGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2UsIGFuZCAoMikKdGVsbHMgdGhlIHVzZXIgdGhhdCB0aGVyZSBpcyBubyB3YXJyYW50eSBmb3IgdGhlIHdvcmsgKGV4Y2VwdCB0byB0aGUKZXh0ZW50IHRoYXQgd2FycmFudGllcyBhcmUgcHJvdmlkZWQpLCB0aGF0IGxpY2Vuc2VlcyBtYXkgY29udmV5IHRoZQp3b3JrIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzIExpY2Vuc2UuICBJZgp0aGUgaW50ZXJmYWNlIHByZXNlbnRzIGEgbGlzdCBvZiB1c2VyIGNvbW1hbmRzIG9yIG9wdGlvbnMsIHN1Y2ggYXMgYQptZW51LCBhIHByb21pbmVudCBpdGVtIGluIHRoZSBsaXN0IG1lZXRzIHRoaXMgY3JpdGVyaW9uLgoKICAxLiBTb3VyY2UgQ29kZS4KCiAgVGhlICJzb3VyY2UgY29kZSIgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsKZm9yIG1ha2luZyBtb2RpZmljYXRpb25zIHRvIGl0LiAgIk9iamVjdCBjb2RlIiBtZWFucyBhbnkgbm9uLXNvdXJjZQpmb3JtIG9mIGEgd29yay4KCiAgQSAiU3RhbmRhcmQgSW50ZXJmYWNlIiBtZWFucyBhbiBpbnRlcmZhY2UgdGhhdCBlaXRoZXIgaXMgYW4gb2ZmaWNpYWwKc3RhbmRhcmQgZGVmaW5lZCBieSBhIHJlY29nbml6ZWQgc3RhbmRhcmRzIGJvZHksIG9yLCBpbiB0aGUgY2FzZSBvZgppbnRlcmZhY2VzIHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvbmUgdGhhdAppcyB3aWRlbHkgdXNlZCBhbW9uZyBkZXZlbG9wZXJzIHdvcmtpbmcgaW4gdGhhdCBsYW5ndWFnZS4KCiAgVGhlICJTeXN0ZW0gTGlicmFyaWVzIiBvZiBhbiBleGVjdXRhYmxlIHdvcmsgaW5jbHVkZSBhbnl0aGluZywgb3RoZXIKdGhhbiB0aGUgd29yayBhcyBhIHdob2xlLCB0aGF0IChhKSBpcyBpbmNsdWRlZCBpbiB0aGUgbm9ybWFsIGZvcm0gb2YKcGFja2FnaW5nIGEgTWFqb3IgQ29tcG9uZW50LCBidXQgd2hpY2ggaXMgbm90IHBhcnQgb2YgdGhhdCBNYWpvcgpDb21wb25lbnQsIGFuZCAoYikgc2VydmVzIG9ubHkgdG8gZW5hYmxlIHVzZSBvZiB0aGUgd29yayB3aXRoIHRoYXQKTWFqb3IgQ29tcG9uZW50LCBvciB0byBpbXBsZW1lbnQgYSBTdGFuZGFyZCBJbnRlcmZhY2UgZm9yIHdoaWNoIGFuCmltcGxlbWVudGF0aW9uIGlzIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluIHNvdXJjZSBjb2RlIGZvcm0uICBBCiJNYWpvciBDb21wb25lbnQiLCBpbiB0aGlzIGNvbnRleHQsIG1lYW5zIGEgbWFqb3IgZXNzZW50aWFsIGNvbXBvbmVudAooa2VybmVsLCB3aW5kb3cgc3lzdGVtLCBhbmQgc28gb24pIG9mIHRoZSBzcGVjaWZpYyBvcGVyYXRpbmcgc3lzdGVtCihpZiBhbnkpIG9uIHdoaWNoIHRoZSBleGVjdXRhYmxlIHdvcmsgcnVucywgb3IgYSBjb21waWxlciB1c2VkIHRvCnByb2R1Y2UgdGhlIHdvcmssIG9yIGFuIG9iamVjdCBjb2RlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGl0LgoKICBUaGUgIkNvcnJlc3BvbmRpbmcgU291cmNlIiBmb3IgYSB3b3JrIGluIG9iamVjdCBjb2RlIGZvcm0gbWVhbnMgYWxsCnRoZSBzb3VyY2UgY29kZSBuZWVkZWQgdG8gZ2VuZXJhdGUsIGluc3RhbGwsIGFuZCAoZm9yIGFuIGV4ZWN1dGFibGUKd29yaykgcnVuIHRoZSBvYmplY3QgY29kZSBhbmQgdG8gbW9kaWZ5IHRoZSB3b3JrLCBpbmNsdWRpbmcgc2NyaXB0cyB0bwpjb250cm9sIHRob3NlIGFjdGl2aXRpZXMuICBIb3dldmVyLCBpdCBkb2VzIG5vdCBpbmNsdWRlIHRoZSB3b3JrJ3MKU3lzdGVtIExpYnJhcmllcywgb3IgZ2VuZXJhbC1wdXJwb3NlIHRvb2xzIG9yIGdlbmVyYWxseSBhdmFpbGFibGUgZnJlZQpwcm9ncmFtcyB3aGljaCBhcmUgdXNlZCB1bm1vZGlmaWVkIGluIHBlcmZvcm1pbmcgdGhvc2UgYWN0aXZpdGllcyBidXQKd2hpY2ggYXJlIG5vdCBwYXJ0IG9mIHRoZSB3b3JrLiAgRm9yIGV4YW1wbGUsIENvcnJlc3BvbmRpbmcgU291cmNlCmluY2x1ZGVzIGludGVyZmFjZSBkZWZpbml0aW9uIGZpbGVzIGFzc29jaWF0ZWQgd2l0aCBzb3VyY2UgZmlsZXMgZm9yCnRoZSB3b3JrLCBhbmQgdGhlIHNvdXJjZSBjb2RlIGZvciBzaGFyZWQgbGlicmFyaWVzIGFuZCBkeW5hbWljYWxseQpsaW5rZWQgc3VicHJvZ3JhbXMgdGhhdCB0aGUgd29yayBpcyBzcGVjaWZpY2FsbHkgZGVzaWduZWQgdG8gcmVxdWlyZSwKc3VjaCBhcyBieSBpbnRpbWF0ZSBkYXRhIGNvbW11bmljYXRpb24gb3IgY29udHJvbCBmbG93IGJldHdlZW4gdGhvc2UKc3VicHJvZ3JhbXMgYW5kIG90aGVyIHBhcnRzIG9mIHRoZSB3b3JrLgoKICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgbmVlZCBub3QgaW5jbHVkZSBhbnl0aGluZyB0aGF0IHVzZXJzCmNhbiByZWdlbmVyYXRlIGF1dG9tYXRpY2FsbHkgZnJvbSBvdGhlciBwYXJ0cyBvZiB0aGUgQ29ycmVzcG9uZGluZwpTb3VyY2UuCgogIFRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBmb3IgYSB3b3JrIGluIHNvdXJjZSBjb2RlIGZvcm0gaXMgdGhhdApzYW1lIHdvcmsuCgogIDIuIEJhc2ljIFBlcm1pc3Npb25zLgoKICBBbGwgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFyZSBncmFudGVkIGZvciB0aGUgdGVybSBvZgpjb3B5cmlnaHQgb24gdGhlIFByb2dyYW0sIGFuZCBhcmUgaXJyZXZvY2FibGUgcHJvdmlkZWQgdGhlIHN0YXRlZApjb25kaXRpb25zIGFyZSBtZXQuICBUaGlzIExpY2Vuc2UgZXhwbGljaXRseSBhZmZpcm1zIHlvdXIgdW5saW1pdGVkCnBlcm1pc3Npb24gdG8gcnVuIHRoZSB1bm1vZGlmaWVkIFByb2dyYW0uICBUaGUgb3V0cHV0IGZyb20gcnVubmluZyBhCmNvdmVyZWQgd29yayBpcyBjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZSBvbmx5IGlmIHRoZSBvdXRwdXQsIGdpdmVuIGl0cwpjb250ZW50LCBjb25zdGl0dXRlcyBhIGNvdmVyZWQgd29yay4gIFRoaXMgTGljZW5zZSBhY2tub3dsZWRnZXMgeW91cgpyaWdodHMgb2YgZmFpciB1c2Ugb3Igb3RoZXIgZXF1aXZhbGVudCwgYXMgcHJvdmlkZWQgYnkgY29weXJpZ2h0IGxhdy4KCiAgWW91IG1heSBtYWtlLCBydW4gYW5kIHByb3BhZ2F0ZSBjb3ZlcmVkIHdvcmtzIHRoYXQgeW91IGRvIG5vdApjb252ZXksIHdpdGhvdXQgY29uZGl0aW9ucyBzbyBsb25nIGFzIHlvdXIgbGljZW5zZSBvdGhlcndpc2UgcmVtYWlucwppbiBmb3JjZS4gIFlvdSBtYXkgY29udmV5IGNvdmVyZWQgd29ya3MgdG8gb3RoZXJzIGZvciB0aGUgc29sZSBwdXJwb3NlCm9mIGhhdmluZyB0aGVtIG1ha2UgbW9kaWZpY2F0aW9ucyBleGNsdXNpdmVseSBmb3IgeW91LCBvciBwcm92aWRlIHlvdQp3aXRoIGZhY2lsaXRpZXMgZm9yIHJ1bm5pbmcgdGhvc2Ugd29ya3MsIHByb3ZpZGVkIHRoYXQgeW91IGNvbXBseSB3aXRoCnRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UgaW4gY29udmV5aW5nIGFsbCBtYXRlcmlhbCBmb3Igd2hpY2ggeW91IGRvCm5vdCBjb250cm9sIGNvcHlyaWdodC4gIFRob3NlIHRodXMgbWFraW5nIG9yIHJ1bm5pbmcgdGhlIGNvdmVyZWQgd29ya3MKZm9yIHlvdSBtdXN0IGRvIHNvIGV4Y2x1c2l2ZWx5IG9uIHlvdXIgYmVoYWxmLCB1bmRlciB5b3VyIGRpcmVjdGlvbgphbmQgY29udHJvbCwgb24gdGVybXMgdGhhdCBwcm9oaWJpdCB0aGVtIGZyb20gbWFraW5nIGFueSBjb3BpZXMgb2YKeW91ciBjb3B5cmlnaHRlZCBtYXRlcmlhbCBvdXRzaWRlIHRoZWlyIHJlbGF0aW9uc2hpcCB3aXRoIHlvdS4KCiAgQ29udmV5aW5nIHVuZGVyIGFueSBvdGhlciBjaXJjdW1zdGFuY2VzIGlzIHBlcm1pdHRlZCBzb2xlbHkgdW5kZXIKdGhlIGNvbmRpdGlvbnMgc3RhdGVkIGJlbG93LiAgU3VibGljZW5zaW5nIGlzIG5vdCBhbGxvd2VkOyBzZWN0aW9uIDEwCm1ha2VzIGl0IHVubmVjZXNzYXJ5LgoKICAzLiBQcm90ZWN0aW5nIFVzZXJzJyBMZWdhbCBSaWdodHMgRnJvbSBBbnRpLUNpcmN1bXZlbnRpb24gTGF3LgoKICBObyBjb3ZlcmVkIHdvcmsgc2hhbGwgYmUgZGVlbWVkIHBhcnQgb2YgYW4gZWZmZWN0aXZlIHRlY2hub2xvZ2ljYWwKbWVhc3VyZSB1bmRlciBhbnkgYXBwbGljYWJsZSBsYXcgZnVsZmlsbGluZyBvYmxpZ2F0aW9ucyB1bmRlciBhcnRpY2xlCjExIG9mIHRoZSBXSVBPIGNvcHlyaWdodCB0cmVhdHkgYWRvcHRlZCBvbiAyMCBEZWNlbWJlciAxOTk2LCBvcgpzaW1pbGFyIGxhd3MgcHJvaGliaXRpbmcgb3IgcmVzdHJpY3RpbmcgY2lyY3VtdmVudGlvbiBvZiBzdWNoCm1lYXN1cmVzLgoKICBXaGVuIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIHlvdSB3YWl2ZSBhbnkgbGVnYWwgcG93ZXIgdG8gZm9yYmlkCmNpcmN1bXZlbnRpb24gb2YgdGVjaG5vbG9naWNhbCBtZWFzdXJlcyB0byB0aGUgZXh0ZW50IHN1Y2ggY2lyY3VtdmVudGlvbgppcyBlZmZlY3RlZCBieSBleGVyY2lzaW5nIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2Ugd2l0aCByZXNwZWN0IHRvCnRoZSBjb3ZlcmVkIHdvcmssIGFuZCB5b3UgZGlzY2xhaW0gYW55IGludGVudGlvbiB0byBsaW1pdCBvcGVyYXRpb24gb3IKbW9kaWZpY2F0aW9uIG9mIHRoZSB3b3JrIGFzIGEgbWVhbnMgb2YgZW5mb3JjaW5nLCBhZ2FpbnN0IHRoZSB3b3JrJ3MKdXNlcnMsIHlvdXIgb3IgdGhpcmQgcGFydGllcycgbGVnYWwgcmlnaHRzIHRvIGZvcmJpZCBjaXJjdW12ZW50aW9uIG9mCnRlY2hub2xvZ2ljYWwgbWVhc3VyZXMuCgogIDQuIENvbnZleWluZyBWZXJiYXRpbSBDb3BpZXMuCgogIFlvdSBtYXkgY29udmV5IHZlcmJhdGltIGNvcGllcyBvZiB0aGUgUHJvZ3JhbSdzIHNvdXJjZSBjb2RlIGFzIHlvdQpyZWNlaXZlIGl0LCBpbiBhbnkgbWVkaXVtLCBwcm92aWRlZCB0aGF0IHlvdSBjb25zcGljdW91c2x5IGFuZAphcHByb3ByaWF0ZWx5IHB1Ymxpc2ggb24gZWFjaCBjb3B5IGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2U7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIHN0YXRpbmcgdGhhdCB0aGlzIExpY2Vuc2UgYW5kIGFueQpub24tcGVybWlzc2l2ZSB0ZXJtcyBhZGRlZCBpbiBhY2NvcmQgd2l0aCBzZWN0aW9uIDcgYXBwbHkgdG8gdGhlIGNvZGU7CmtlZXAgaW50YWN0IGFsbCBub3RpY2VzIG9mIHRoZSBhYnNlbmNlIG9mIGFueSB3YXJyYW50eTsgYW5kIGdpdmUgYWxsCnJlY2lwaWVudHMgYSBjb3B5IG9mIHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIHRoZSBQcm9ncmFtLgoKICBZb3UgbWF5IGNoYXJnZSBhbnkgcHJpY2Ugb3Igbm8gcHJpY2UgZm9yIGVhY2ggY29weSB0aGF0IHlvdSBjb252ZXksCmFuZCB5b3UgbWF5IG9mZmVyIHN1cHBvcnQgb3Igd2FycmFudHkgcHJvdGVjdGlvbiBmb3IgYSBmZWUuCgogIDUuIENvbnZleWluZyBNb2RpZmllZCBTb3VyY2UgVmVyc2lvbnMuCgogIFlvdSBtYXkgY29udmV5IGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSwgb3IgdGhlIG1vZGlmaWNhdGlvbnMgdG8KcHJvZHVjZSBpdCBmcm9tIHRoZSBQcm9ncmFtLCBpbiB0aGUgZm9ybSBvZiBzb3VyY2UgY29kZSB1bmRlciB0aGUKdGVybXMgb2Ygc2VjdGlvbiA0LCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIG1lZXQgYWxsIG9mIHRoZXNlIGNvbmRpdGlvbnM6CgogICAgYSkgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgeW91IG1vZGlmaWVkCiAgICBpdCwgYW5kIGdpdmluZyBhIHJlbGV2YW50IGRhdGUuCgogICAgYikgVGhlIHdvcmsgbXVzdCBjYXJyeSBwcm9taW5lbnQgbm90aWNlcyBzdGF0aW5nIHRoYXQgaXQgaXMKICAgIHJlbGVhc2VkIHVuZGVyIHRoaXMgTGljZW5zZSBhbmQgYW55IGNvbmRpdGlvbnMgYWRkZWQgdW5kZXIgc2VjdGlvbgogICAgNy4gIFRoaXMgcmVxdWlyZW1lbnQgbW9kaWZpZXMgdGhlIHJlcXVpcmVtZW50IGluIHNlY3Rpb24gNCB0bwogICAgImtlZXAgaW50YWN0IGFsbCBub3RpY2VzIi4KCiAgICBjKSBZb3UgbXVzdCBsaWNlbnNlIHRoZSBlbnRpcmUgd29yaywgYXMgYSB3aG9sZSwgdW5kZXIgdGhpcwogICAgTGljZW5zZSB0byBhbnlvbmUgd2hvIGNvbWVzIGludG8gcG9zc2Vzc2lvbiBvZiBhIGNvcHkuICBUaGlzCiAgICBMaWNlbnNlIHdpbGwgdGhlcmVmb3JlIGFwcGx5LCBhbG9uZyB3aXRoIGFueSBhcHBsaWNhYmxlIHNlY3Rpb24gNwogICAgYWRkaXRpb25hbCB0ZXJtcywgdG8gdGhlIHdob2xlIG9mIHRoZSB3b3JrLCBhbmQgYWxsIGl0cyBwYXJ0cywKICAgIHJlZ2FyZGxlc3Mgb2YgaG93IHRoZXkgYXJlIHBhY2thZ2VkLiAgVGhpcyBMaWNlbnNlIGdpdmVzIG5vCiAgICBwZXJtaXNzaW9uIHRvIGxpY2Vuc2UgdGhlIHdvcmsgaW4gYW55IG90aGVyIHdheSwgYnV0IGl0IGRvZXMgbm90CiAgICBpbnZhbGlkYXRlIHN1Y2ggcGVybWlzc2lvbiBpZiB5b3UgaGF2ZSBzZXBhcmF0ZWx5IHJlY2VpdmVkIGl0LgoKICAgIGQpIElmIHRoZSB3b3JrIGhhcyBpbnRlcmFjdGl2ZSB1c2VyIGludGVyZmFjZXMsIGVhY2ggbXVzdCBkaXNwbGF5CiAgICBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzOyBob3dldmVyLCBpZiB0aGUgUHJvZ3JhbSBoYXMgaW50ZXJhY3RpdmUKICAgIGludGVyZmFjZXMgdGhhdCBkbyBub3QgZGlzcGxheSBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzLCB5b3VyCiAgICB3b3JrIG5lZWQgbm90IG1ha2UgdGhlbSBkbyBzby4KCiAgQSBjb21waWxhdGlvbiBvZiBhIGNvdmVyZWQgd29yayB3aXRoIG90aGVyIHNlcGFyYXRlIGFuZCBpbmRlcGVuZGVudAp3b3Jrcywgd2hpY2ggYXJlIG5vdCBieSB0aGVpciBuYXR1cmUgZXh0ZW5zaW9ucyBvZiB0aGUgY292ZXJlZCB3b3JrLAphbmQgd2hpY2ggYXJlIG5vdCBjb21iaW5lZCB3aXRoIGl0IHN1Y2ggYXMgdG8gZm9ybSBhIGxhcmdlciBwcm9ncmFtLAppbiBvciBvbiBhIHZvbHVtZSBvZiBhIHN0b3JhZ2Ugb3IgZGlzdHJpYnV0aW9uIG1lZGl1bSwgaXMgY2FsbGVkIGFuCiJhZ2dyZWdhdGUiIGlmIHRoZSBjb21waWxhdGlvbiBhbmQgaXRzIHJlc3VsdGluZyBjb3B5cmlnaHQgYXJlIG5vdAp1c2VkIHRvIGxpbWl0IHRoZSBhY2Nlc3Mgb3IgbGVnYWwgcmlnaHRzIG9mIHRoZSBjb21waWxhdGlvbidzIHVzZXJzCmJleW9uZCB3aGF0IHRoZSBpbmRpdmlkdWFsIHdvcmtzIHBlcm1pdC4gIEluY2x1c2lvbiBvZiBhIGNvdmVyZWQgd29yawppbiBhbiBhZ2dyZWdhdGUgZG9lcyBub3QgY2F1c2UgdGhpcyBMaWNlbnNlIHRvIGFwcGx5IHRvIHRoZSBvdGhlcgpwYXJ0cyBvZiB0aGUgYWdncmVnYXRlLgoKICA2LiBDb252ZXlpbmcgTm9uLVNvdXJjZSBGb3Jtcy4KCiAgWW91IG1heSBjb252ZXkgYSBjb3ZlcmVkIHdvcmsgaW4gb2JqZWN0IGNvZGUgZm9ybSB1bmRlciB0aGUgdGVybXMKb2Ygc2VjdGlvbnMgNCBhbmQgNSwgcHJvdmlkZWQgdGhhdCB5b3UgYWxzbyBjb252ZXkgdGhlCm1hY2hpbmUtcmVhZGFibGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSwKaW4gb25lIG9mIHRoZXNlIHdheXM6CgogICAgYSkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdAogICAgKGluY2x1ZGluZyBhIHBoeXNpY2FsIGRpc3RyaWJ1dGlvbiBtZWRpdW0pLCBhY2NvbXBhbmllZCBieSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGZpeGVkIG9uIGEgZHVyYWJsZSBwaHlzaWNhbCBtZWRpdW0KICAgIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLgoKICAgIGIpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgaW4sIG9yIGVtYm9kaWVkIGluLCBhIHBoeXNpY2FsIHByb2R1Y3QKICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgYQogICAgd3JpdHRlbiBvZmZlciwgdmFsaWQgZm9yIGF0IGxlYXN0IHRocmVlIHllYXJzIGFuZCB2YWxpZCBmb3IgYXMKICAgIGxvbmcgYXMgeW91IG9mZmVyIHNwYXJlIHBhcnRzIG9yIGN1c3RvbWVyIHN1cHBvcnQgZm9yIHRoYXQgcHJvZHVjdAogICAgbW9kZWwsIHRvIGdpdmUgYW55b25lIHdobyBwb3NzZXNzZXMgdGhlIG9iamVjdCBjb2RlIGVpdGhlciAoMSkgYQogICAgY29weSBvZiB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgZm9yIGFsbCB0aGUgc29mdHdhcmUgaW4gdGhlCiAgICBwcm9kdWN0IHRoYXQgaXMgY292ZXJlZCBieSB0aGlzIExpY2Vuc2UsIG9uIGEgZHVyYWJsZSBwaHlzaWNhbAogICAgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLCBmb3IgYSBwcmljZSBubwogICAgbW9yZSB0aGFuIHlvdXIgcmVhc29uYWJsZSBjb3N0IG9mIHBoeXNpY2FsbHkgcGVyZm9ybWluZyB0aGlzCiAgICBjb252ZXlpbmcgb2Ygc291cmNlLCBvciAoMikgYWNjZXNzIHRvIGNvcHkgdGhlCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBmcm9tIGEgbmV0d29yayBzZXJ2ZXIgYXQgbm8gY2hhcmdlLgoKICAgIGMpIENvbnZleSBpbmRpdmlkdWFsIGNvcGllcyBvZiB0aGUgb2JqZWN0IGNvZGUgd2l0aCBhIGNvcHkgb2YgdGhlCiAgICB3cml0dGVuIG9mZmVyIHRvIHByb3ZpZGUgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhpcwogICAgYWx0ZXJuYXRpdmUgaXMgYWxsb3dlZCBvbmx5IG9jY2FzaW9uYWxseSBhbmQgbm9uY29tbWVyY2lhbGx5LCBhbmQKICAgIG9ubHkgaWYgeW91IHJlY2VpdmVkIHRoZSBvYmplY3QgY29kZSB3aXRoIHN1Y2ggYW4gb2ZmZXIsIGluIGFjY29yZAogICAgd2l0aCBzdWJzZWN0aW9uIDZiLgoKICAgIGQpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgYnkgb2ZmZXJpbmcgYWNjZXNzIGZyb20gYSBkZXNpZ25hdGVkCiAgICBwbGFjZSAoZ3JhdGlzIG9yIGZvciBhIGNoYXJnZSksIGFuZCBvZmZlciBlcXVpdmFsZW50IGFjY2VzcyB0byB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGluIHRoZSBzYW1lIHdheSB0aHJvdWdoIHRoZSBzYW1lIHBsYWNlIGF0IG5vCiAgICBmdXJ0aGVyIGNoYXJnZS4gIFlvdSBuZWVkIG5vdCByZXF1aXJlIHJlY2lwaWVudHMgdG8gY29weSB0aGUKICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLiAgSWYgdGhlIHBsYWNlIHRvCiAgICBjb3B5IHRoZSBvYmplY3QgY29kZSBpcyBhIG5ldHdvcmsgc2VydmVyLCB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UKICAgIG1heSBiZSBvbiBhIGRpZmZlcmVudCBzZXJ2ZXIgKG9wZXJhdGVkIGJ5IHlvdSBvciBhIHRoaXJkIHBhcnR5KQogICAgdGhhdCBzdXBwb3J0cyBlcXVpdmFsZW50IGNvcHlpbmcgZmFjaWxpdGllcywgcHJvdmlkZWQgeW91IG1haW50YWluCiAgICBjbGVhciBkaXJlY3Rpb25zIG5leHQgdG8gdGhlIG9iamVjdCBjb2RlIHNheWluZyB3aGVyZSB0byBmaW5kIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UuICBSZWdhcmRsZXNzIG9mIHdoYXQgc2VydmVyIGhvc3RzIHRoZQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UsIHlvdSByZW1haW4gb2JsaWdhdGVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzCiAgICBhdmFpbGFibGUgZm9yIGFzIGxvbmcgYXMgbmVlZGVkIHRvIHNhdGlzZnkgdGhlc2UgcmVxdWlyZW1lbnRzLgoKICAgIGUpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbiwgcHJvdmlkZWQKICAgIHlvdSBpbmZvcm0gb3RoZXIgcGVlcnMgd2hlcmUgdGhlIG9iamVjdCBjb2RlIGFuZCBDb3JyZXNwb25kaW5nCiAgICBTb3VyY2Ugb2YgdGhlIHdvcmsgYXJlIGJlaW5nIG9mZmVyZWQgdG8gdGhlIGdlbmVyYWwgcHVibGljIGF0IG5vCiAgICBjaGFyZ2UgdW5kZXIgc3Vic2VjdGlvbiA2ZC4KCiAgQSBzZXBhcmFibGUgcG9ydGlvbiBvZiB0aGUgb2JqZWN0IGNvZGUsIHdob3NlIHNvdXJjZSBjb2RlIGlzIGV4Y2x1ZGVkCmZyb20gdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGFzIGEgU3lzdGVtIExpYnJhcnksIG5lZWQgbm90IGJlCmluY2x1ZGVkIGluIGNvbnZleWluZyB0aGUgb2JqZWN0IGNvZGUgd29yay4KCiAgQSAiVXNlciBQcm9kdWN0IiBpcyBlaXRoZXIgKDEpIGEgImNvbnN1bWVyIHByb2R1Y3QiLCB3aGljaCBtZWFucyBhbnkKdGFuZ2libGUgcGVyc29uYWwgcHJvcGVydHkgd2hpY2ggaXMgbm9ybWFsbHkgdXNlZCBmb3IgcGVyc29uYWwsIGZhbWlseSwKb3IgaG91c2Vob2xkIHB1cnBvc2VzLCBvciAoMikgYW55dGhpbmcgZGVzaWduZWQgb3Igc29sZCBmb3IgaW5jb3Jwb3JhdGlvbgppbnRvIGEgZHdlbGxpbmcuICBJbiBkZXRlcm1pbmluZyB3aGV0aGVyIGEgcHJvZHVjdCBpcyBhIGNvbnN1bWVyIHByb2R1Y3QsCmRvdWJ0ZnVsIGNhc2VzIHNoYWxsIGJlIHJlc29sdmVkIGluIGZhdm9yIG9mIGNvdmVyYWdlLiAgRm9yIGEgcGFydGljdWxhcgpwcm9kdWN0IHJlY2VpdmVkIGJ5IGEgcGFydGljdWxhciB1c2VyLCAibm9ybWFsbHkgdXNlZCIgcmVmZXJzIHRvIGEKdHlwaWNhbCBvciBjb21tb24gdXNlIG9mIHRoYXQgY2xhc3Mgb2YgcHJvZHVjdCwgcmVnYXJkbGVzcyBvZiB0aGUgc3RhdHVzCm9mIHRoZSBwYXJ0aWN1bGFyIHVzZXIgb3Igb2YgdGhlIHdheSBpbiB3aGljaCB0aGUgcGFydGljdWxhciB1c2VyCmFjdHVhbGx5IHVzZXMsIG9yIGV4cGVjdHMgb3IgaXMgZXhwZWN0ZWQgdG8gdXNlLCB0aGUgcHJvZHVjdC4gIEEgcHJvZHVjdAppcyBhIGNvbnN1bWVyIHByb2R1Y3QgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcm9kdWN0IGhhcyBzdWJzdGFudGlhbApjb21tZXJjaWFsLCBpbmR1c3RyaWFsIG9yIG5vbi1jb25zdW1lciB1c2VzLCB1bmxlc3Mgc3VjaCB1c2VzIHJlcHJlc2VudAp0aGUgb25seSBzaWduaWZpY2FudCBtb2RlIG9mIHVzZSBvZiB0aGUgcHJvZHVjdC4KCiAgIkluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiIgZm9yIGEgVXNlciBQcm9kdWN0IG1lYW5zIGFueSBtZXRob2RzLApwcm9jZWR1cmVzLCBhdXRob3JpemF0aW9uIGtleXMsIG9yIG90aGVyIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGluc3RhbGwKYW5kIGV4ZWN1dGUgbW9kaWZpZWQgdmVyc2lvbnMgb2YgYSBjb3ZlcmVkIHdvcmsgaW4gdGhhdCBVc2VyIFByb2R1Y3QgZnJvbQphIG1vZGlmaWVkIHZlcnNpb24gb2YgaXRzIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhlIGluZm9ybWF0aW9uIG11c3QKc3VmZmljZSB0byBlbnN1cmUgdGhhdCB0aGUgY29udGludWVkIGZ1bmN0aW9uaW5nIG9mIHRoZSBtb2RpZmllZCBvYmplY3QKY29kZSBpcyBpbiBubyBjYXNlIHByZXZlbnRlZCBvciBpbnRlcmZlcmVkIHdpdGggc29sZWx5IGJlY2F1c2UKbW9kaWZpY2F0aW9uIGhhcyBiZWVuIG1hZGUuCgogIElmIHlvdSBjb252ZXkgYW4gb2JqZWN0IGNvZGUgd29yayB1bmRlciB0aGlzIHNlY3Rpb24gaW4sIG9yIHdpdGgsIG9yCnNwZWNpZmljYWxseSBmb3IgdXNlIGluLCBhIFVzZXIgUHJvZHVjdCwgYW5kIHRoZSBjb252ZXlpbmcgb2NjdXJzIGFzCnBhcnQgb2YgYSB0cmFuc2FjdGlvbiBpbiB3aGljaCB0aGUgcmlnaHQgb2YgcG9zc2Vzc2lvbiBhbmQgdXNlIG9mIHRoZQpVc2VyIFByb2R1Y3QgaXMgdHJhbnNmZXJyZWQgdG8gdGhlIHJlY2lwaWVudCBpbiBwZXJwZXR1aXR5IG9yIGZvciBhCmZpeGVkIHRlcm0gKHJlZ2FyZGxlc3Mgb2YgaG93IHRoZSB0cmFuc2FjdGlvbiBpcyBjaGFyYWN0ZXJpemVkKSwgdGhlCkNvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkIHVuZGVyIHRoaXMgc2VjdGlvbiBtdXN0IGJlIGFjY29tcGFuaWVkCmJ5IHRoZSBJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24uICBCdXQgdGhpcyByZXF1aXJlbWVudCBkb2VzIG5vdCBhcHBseQppZiBuZWl0aGVyIHlvdSBub3IgYW55IHRoaXJkIHBhcnR5IHJldGFpbnMgdGhlIGFiaWxpdHkgdG8gaW5zdGFsbAptb2RpZmllZCBvYmplY3QgY29kZSBvbiB0aGUgVXNlciBQcm9kdWN0IChmb3IgZXhhbXBsZSwgdGhlIHdvcmsgaGFzCmJlZW4gaW5zdGFsbGVkIGluIFJPTSkuCgogIFRoZSByZXF1aXJlbWVudCB0byBwcm92aWRlIEluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiBkb2VzIG5vdCBpbmNsdWRlIGEKcmVxdWlyZW1lbnQgdG8gY29udGludWUgdG8gcHJvdmlkZSBzdXBwb3J0IHNlcnZpY2UsIHdhcnJhbnR5LCBvciB1cGRhdGVzCmZvciBhIHdvcmsgdGhhdCBoYXMgYmVlbiBtb2RpZmllZCBvciBpbnN0YWxsZWQgYnkgdGhlIHJlY2lwaWVudCwgb3IgZm9yCnRoZSBVc2VyIFByb2R1Y3QgaW4gd2hpY2ggaXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgaW5zdGFsbGVkLiAgQWNjZXNzIHRvIGEKbmV0d29yayBtYXkgYmUgZGVuaWVkIHdoZW4gdGhlIG1vZGlmaWNhdGlvbiBpdHNlbGYgbWF0ZXJpYWxseSBhbmQKYWR2ZXJzZWx5IGFmZmVjdHMgdGhlIG9wZXJhdGlvbiBvZiB0aGUgbmV0d29yayBvciB2aW9sYXRlcyB0aGUgcnVsZXMgYW5kCnByb3RvY29scyBmb3IgY29tbXVuaWNhdGlvbiBhY3Jvc3MgdGhlIG5ldHdvcmsuCgogIENvcnJlc3BvbmRpbmcgU291cmNlIGNvbnZleWVkLCBhbmQgSW5zdGFsbGF0aW9uIEluZm9ybWF0aW9uIHByb3ZpZGVkLAppbiBhY2NvcmQgd2l0aCB0aGlzIHNlY3Rpb24gbXVzdCBiZSBpbiBhIGZvcm1hdCB0aGF0IGlzIHB1YmxpY2x5CmRvY3VtZW50ZWQgKGFuZCB3aXRoIGFuIGltcGxlbWVudGF0aW9uIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluCnNvdXJjZSBjb2RlIGZvcm0pLCBhbmQgbXVzdCByZXF1aXJlIG5vIHNwZWNpYWwgcGFzc3dvcmQgb3Iga2V5IGZvcgp1bnBhY2tpbmcsIHJlYWRpbmcgb3IgY29weWluZy4KCiAgNy4gQWRkaXRpb25hbCBUZXJtcy4KCiAgIkFkZGl0aW9uYWwgcGVybWlzc2lvbnMiIGFyZSB0ZXJtcyB0aGF0IHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMKTGljZW5zZSBieSBtYWtpbmcgZXhjZXB0aW9ucyBmcm9tIG9uZSBvciBtb3JlIG9mIGl0cyBjb25kaXRpb25zLgpBZGRpdGlvbmFsIHBlcm1pc3Npb25zIHRoYXQgYXJlIGFwcGxpY2FibGUgdG8gdGhlIGVudGlyZSBQcm9ncmFtIHNoYWxsCmJlIHRyZWF0ZWQgYXMgdGhvdWdoIHRoZXkgd2VyZSBpbmNsdWRlZCBpbiB0aGlzIExpY2Vuc2UsIHRvIHRoZSBleHRlbnQKdGhhdCB0aGV5IGFyZSB2YWxpZCB1bmRlciBhcHBsaWNhYmxlIGxhdy4gIElmIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMKYXBwbHkgb25seSB0byBwYXJ0IG9mIHRoZSBQcm9ncmFtLCB0aGF0IHBhcnQgbWF5IGJlIHVzZWQgc2VwYXJhdGVseQp1bmRlciB0aG9zZSBwZXJtaXNzaW9ucywgYnV0IHRoZSBlbnRpcmUgUHJvZ3JhbSByZW1haW5zIGdvdmVybmVkIGJ5CnRoaXMgTGljZW5zZSB3aXRob3V0IHJlZ2FyZCB0byB0aGUgYWRkaXRpb25hbCBwZXJtaXNzaW9ucy4KCiAgV2hlbiB5b3UgY29udmV5IGEgY29weSBvZiBhIGNvdmVyZWQgd29yaywgeW91IG1heSBhdCB5b3VyIG9wdGlvbgpyZW1vdmUgYW55IGFkZGl0aW9uYWwgcGVybWlzc2lvbnMgZnJvbSB0aGF0IGNvcHksIG9yIGZyb20gYW55IHBhcnQgb2YKaXQuICAoQWRkaXRpb25hbCBwZXJtaXNzaW9ucyBtYXkgYmUgd3JpdHRlbiB0byByZXF1aXJlIHRoZWlyIG93bgpyZW1vdmFsIGluIGNlcnRhaW4gY2FzZXMgd2hlbiB5b3UgbW9kaWZ5IHRoZSB3b3JrLikgIFlvdSBtYXkgcGxhY2UKYWRkaXRpb25hbCBwZXJtaXNzaW9ucyBvbiBtYXRlcmlhbCwgYWRkZWQgYnkgeW91IHRvIGEgY292ZXJlZCB3b3JrLApmb3Igd2hpY2ggeW91IGhhdmUgb3IgY2FuIGdpdmUgYXBwcm9wcmlhdGUgY29weXJpZ2h0IHBlcm1pc3Npb24uCgogIE5vdHdpdGhzdGFuZGluZyBhbnkgb3RoZXIgcHJvdmlzaW9uIG9mIHRoaXMgTGljZW5zZSwgZm9yIG1hdGVyaWFsIHlvdQphZGQgdG8gYSBjb3ZlcmVkIHdvcmssIHlvdSBtYXkgKGlmIGF1dGhvcml6ZWQgYnkgdGhlIGNvcHlyaWdodCBob2xkZXJzIG9mCnRoYXQgbWF0ZXJpYWwpIHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSB3aXRoIHRlcm1zOgoKICAgIGEpIERpc2NsYWltaW5nIHdhcnJhbnR5IG9yIGxpbWl0aW5nIGxpYWJpbGl0eSBkaWZmZXJlbnRseSBmcm9tIHRoZQogICAgdGVybXMgb2Ygc2VjdGlvbnMgMTUgYW5kIDE2IG9mIHRoaXMgTGljZW5zZTsgb3IKCiAgICBiKSBSZXF1aXJpbmcgcHJlc2VydmF0aW9uIG9mIHNwZWNpZmllZCByZWFzb25hYmxlIGxlZ2FsIG5vdGljZXMgb3IKICAgIGF1dGhvciBhdHRyaWJ1dGlvbnMgaW4gdGhhdCBtYXRlcmlhbCBvciBpbiB0aGUgQXBwcm9wcmlhdGUgTGVnYWwKICAgIE5vdGljZXMgZGlzcGxheWVkIGJ5IHdvcmtzIGNvbnRhaW5pbmcgaXQ7IG9yCgogICAgYykgUHJvaGliaXRpbmcgbWlzcmVwcmVzZW50YXRpb24gb2YgdGhlIG9yaWdpbiBvZiB0aGF0IG1hdGVyaWFsLCBvcgogICAgcmVxdWlyaW5nIHRoYXQgbW9kaWZpZWQgdmVyc2lvbnMgb2Ygc3VjaCBtYXRlcmlhbCBiZSBtYXJrZWQgaW4KICAgIHJlYXNvbmFibGUgd2F5cyBhcyBkaWZmZXJlbnQgZnJvbSB0aGUgb3JpZ2luYWwgdmVyc2lvbjsgb3IKCiAgICBkKSBMaW1pdGluZyB0aGUgdXNlIGZvciBwdWJsaWNpdHkgcHVycG9zZXMgb2YgbmFtZXMgb2YgbGljZW5zb3JzIG9yCiAgICBhdXRob3JzIG9mIHRoZSBtYXRlcmlhbDsgb3IKCiAgICBlKSBEZWNsaW5pbmcgdG8gZ3JhbnQgcmlnaHRzIHVuZGVyIHRyYWRlbWFyayBsYXcgZm9yIHVzZSBvZiBzb21lCiAgICB0cmFkZSBuYW1lcywgdHJhZGVtYXJrcywgb3Igc2VydmljZSBtYXJrczsgb3IKCiAgICBmKSBSZXF1aXJpbmcgaW5kZW1uaWZpY2F0aW9uIG9mIGxpY2Vuc29ycyBhbmQgYXV0aG9ycyBvZiB0aGF0CiAgICBtYXRlcmlhbCBieSBhbnlvbmUgd2hvIGNvbnZleXMgdGhlIG1hdGVyaWFsIChvciBtb2RpZmllZCB2ZXJzaW9ucyBvZgogICAgaXQpIHdpdGggY29udHJhY3R1YWwgYXNzdW1wdGlvbnMgb2YgbGlhYmlsaXR5IHRvIHRoZSByZWNpcGllbnQsIGZvcgogICAgYW55IGxpYWJpbGl0eSB0aGF0IHRoZXNlIGNvbnRyYWN0dWFsIGFzc3VtcHRpb25zIGRpcmVjdGx5IGltcG9zZSBvbgogICAgdGhvc2UgbGljZW5zb3JzIGFuZCBhdXRob3JzLgoKICBBbGwgb3RoZXIgbm9uLXBlcm1pc3NpdmUgYWRkaXRpb25hbCB0ZXJtcyBhcmUgY29uc2lkZXJlZCAiZnVydGhlcgpyZXN0cmljdGlvbnMiIHdpdGhpbiB0aGUgbWVhbmluZyBvZiBzZWN0aW9uIDEwLiAgSWYgdGhlIFByb2dyYW0gYXMgeW91CnJlY2VpdmVkIGl0LCBvciBhbnkgcGFydCBvZiBpdCwgY29udGFpbnMgYSBub3RpY2Ugc3RhdGluZyB0aGF0IGl0IGlzCmdvdmVybmVkIGJ5IHRoaXMgTGljZW5zZSBhbG9uZyB3aXRoIGEgdGVybSB0aGF0IGlzIGEgZnVydGhlcgpyZXN0cmljdGlvbiwgeW91IG1heSByZW1vdmUgdGhhdCB0ZXJtLiAgSWYgYSBsaWNlbnNlIGRvY3VtZW50IGNvbnRhaW5zCmEgZnVydGhlciByZXN0cmljdGlvbiBidXQgcGVybWl0cyByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcgdW5kZXIgdGhpcwpMaWNlbnNlLCB5b3UgbWF5IGFkZCB0byBhIGNvdmVyZWQgd29yayBtYXRlcmlhbCBnb3Zlcm5lZCBieSB0aGUgdGVybXMKb2YgdGhhdCBsaWNlbnNlIGRvY3VtZW50LCBwcm92aWRlZCB0aGF0IHRoZSBmdXJ0aGVyIHJlc3RyaWN0aW9uIGRvZXMKbm90IHN1cnZpdmUgc3VjaCByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcuCgogIElmIHlvdSBhZGQgdGVybXMgdG8gYSBjb3ZlcmVkIHdvcmsgaW4gYWNjb3JkIHdpdGggdGhpcyBzZWN0aW9uLCB5b3UKbXVzdCBwbGFjZSwgaW4gdGhlIHJlbGV2YW50IHNvdXJjZSBmaWxlcywgYSBzdGF0ZW1lbnQgb2YgdGhlCmFkZGl0aW9uYWwgdGVybXMgdGhhdCBhcHBseSB0byB0aG9zZSBmaWxlcywgb3IgYSBub3RpY2UgaW5kaWNhdGluZwp3aGVyZSB0byBmaW5kIHRoZSBhcHBsaWNhYmxlIHRlcm1zLgoKICBBZGRpdGlvbmFsIHRlcm1zLCBwZXJtaXNzaXZlIG9yIG5vbi1wZXJtaXNzaXZlLCBtYXkgYmUgc3RhdGVkIGluIHRoZQpmb3JtIG9mIGEgc2VwYXJhdGVseSB3cml0dGVuIGxpY2Vuc2UsIG9yIHN0YXRlZCBhcyBleGNlcHRpb25zOwp0aGUgYWJvdmUgcmVxdWlyZW1lbnRzIGFwcGx5IGVpdGhlciB3YXkuCgogIDguIFRlcm1pbmF0aW9uLgoKICBZb3UgbWF5IG5vdCBwcm9wYWdhdGUgb3IgbW9kaWZ5IGEgY292ZXJlZCB3b3JrIGV4Y2VwdCBhcyBleHByZXNzbHkKcHJvdmlkZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgQW55IGF0dGVtcHQgb3RoZXJ3aXNlIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgaXQgaXMgdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXIKdGhpcyBMaWNlbnNlIChpbmNsdWRpbmcgYW55IHBhdGVudCBsaWNlbnNlcyBncmFudGVkIHVuZGVyIHRoZSB0aGlyZApwYXJhZ3JhcGggb2Ygc2VjdGlvbiAxMSkuCgogIEhvd2V2ZXIsIGlmIHlvdSBjZWFzZSBhbGwgdmlvbGF0aW9uIG9mIHRoaXMgTGljZW5zZSwgdGhlbiB5b3VyCmxpY2Vuc2UgZnJvbSBhIHBhcnRpY3VsYXIgY29weXJpZ2h0IGhvbGRlciBpcyByZWluc3RhdGVkIChhKQpwcm92aXNpb25hbGx5LCB1bmxlc3MgYW5kIHVudGlsIHRoZSBjb3B5cmlnaHQgaG9sZGVyIGV4cGxpY2l0bHkgYW5kCmZpbmFsbHkgdGVybWluYXRlcyB5b3VyIGxpY2Vuc2UsIGFuZCAoYikgcGVybWFuZW50bHksIGlmIHRoZSBjb3B5cmlnaHQKaG9sZGVyIGZhaWxzIHRvIG5vdGlmeSB5b3Ugb2YgdGhlIHZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMKcHJpb3IgdG8gNjAgZGF5cyBhZnRlciB0aGUgY2Vzc2F0aW9uLgoKICBNb3Jlb3ZlciwgeW91ciBsaWNlbnNlIGZyb20gYSBwYXJ0aWN1bGFyIGNvcHlyaWdodCBob2xkZXIgaXMKcmVpbnN0YXRlZCBwZXJtYW5lbnRseSBpZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3RpZmllcyB5b3Ugb2YgdGhlCnZpb2xhdGlvbiBieSBzb21lIHJlYXNvbmFibGUgbWVhbnMsIHRoaXMgaXMgdGhlIGZpcnN0IHRpbWUgeW91IGhhdmUKcmVjZWl2ZWQgbm90aWNlIG9mIHZpb2xhdGlvbiBvZiB0aGlzIExpY2Vuc2UgKGZvciBhbnkgd29yaykgZnJvbSB0aGF0CmNvcHlyaWdodCBob2xkZXIsIGFuZCB5b3UgY3VyZSB0aGUgdmlvbGF0aW9uIHByaW9yIHRvIDMwIGRheXMgYWZ0ZXIKeW91ciByZWNlaXB0IG9mIHRoZSBub3RpY2UuCgogIFRlcm1pbmF0aW9uIG9mIHlvdXIgcmlnaHRzIHVuZGVyIHRoaXMgc2VjdGlvbiBkb2VzIG5vdCB0ZXJtaW5hdGUgdGhlCmxpY2Vuc2VzIG9mIHBhcnRpZXMgd2hvIGhhdmUgcmVjZWl2ZWQgY29waWVzIG9yIHJpZ2h0cyBmcm9tIHlvdSB1bmRlcgp0aGlzIExpY2Vuc2UuICBJZiB5b3VyIHJpZ2h0cyBoYXZlIGJlZW4gdGVybWluYXRlZCBhbmQgbm90IHBlcm1hbmVudGx5CnJlaW5zdGF0ZWQsIHlvdSBkbyBub3QgcXVhbGlmeSB0byByZWNlaXZlIG5ldyBsaWNlbnNlcyBmb3IgdGhlIHNhbWUKbWF0ZXJpYWwgdW5kZXIgc2VjdGlvbiAxMC4KCiAgOS4gQWNjZXB0YW5jZSBOb3QgUmVxdWlyZWQgZm9yIEhhdmluZyBDb3BpZXMuCgogIFlvdSBhcmUgbm90IHJlcXVpcmVkIHRvIGFjY2VwdCB0aGlzIExpY2Vuc2UgaW4gb3JkZXIgdG8gcmVjZWl2ZSBvcgpydW4gYSBjb3B5IG9mIHRoZSBQcm9ncmFtLiAgQW5jaWxsYXJ5IHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZCB3b3JrCm9jY3VycmluZyBzb2xlbHkgYXMgYSBjb25zZXF1ZW5jZSBvZiB1c2luZyBwZWVyLXRvLXBlZXIgdHJhbnNtaXNzaW9uCnRvIHJlY2VpdmUgYSBjb3B5IGxpa2V3aXNlIGRvZXMgbm90IHJlcXVpcmUgYWNjZXB0YW5jZS4gIEhvd2V2ZXIsCm5vdGhpbmcgb3RoZXIgdGhhbiB0aGlzIExpY2Vuc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIHByb3BhZ2F0ZSBvcgptb2RpZnkgYW55IGNvdmVyZWQgd29yay4gIFRoZXNlIGFjdGlvbnMgaW5mcmluZ2UgY29weXJpZ2h0IGlmIHlvdSBkbwpub3QgYWNjZXB0IHRoaXMgTGljZW5zZS4gIFRoZXJlZm9yZSwgYnkgbW9kaWZ5aW5nIG9yIHByb3BhZ2F0aW5nIGEKY292ZXJlZCB3b3JrLCB5b3UgaW5kaWNhdGUgeW91ciBhY2NlcHRhbmNlIG9mIHRoaXMgTGljZW5zZSB0byBkbyBzby4KCiAgMTAuIEF1dG9tYXRpYyBMaWNlbnNpbmcgb2YgRG93bnN0cmVhbSBSZWNpcGllbnRzLgoKICBFYWNoIHRpbWUgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywgdGhlIHJlY2lwaWVudCBhdXRvbWF0aWNhbGx5CnJlY2VpdmVzIGEgbGljZW5zZSBmcm9tIHRoZSBvcmlnaW5hbCBsaWNlbnNvcnMsIHRvIHJ1biwgbW9kaWZ5IGFuZApwcm9wYWdhdGUgdGhhdCB3b3JrLCBzdWJqZWN0IHRvIHRoaXMgTGljZW5zZS4gIFlvdSBhcmUgbm90IHJlc3BvbnNpYmxlCmZvciBlbmZvcmNpbmcgY29tcGxpYW5jZSBieSB0aGlyZCBwYXJ0aWVzIHdpdGggdGhpcyBMaWNlbnNlLgoKICBBbiAiZW50aXR5IHRyYW5zYWN0aW9uIiBpcyBhIHRyYW5zYWN0aW9uIHRyYW5zZmVycmluZyBjb250cm9sIG9mIGFuCm9yZ2FuaXphdGlvbiwgb3Igc3Vic3RhbnRpYWxseSBhbGwgYXNzZXRzIG9mIG9uZSwgb3Igc3ViZGl2aWRpbmcgYW4Kb3JnYW5pemF0aW9uLCBvciBtZXJnaW5nIG9yZ2FuaXphdGlvbnMuICBJZiBwcm9wYWdhdGlvbiBvZiBhIGNvdmVyZWQKd29yayByZXN1bHRzIGZyb20gYW4gZW50aXR5IHRyYW5zYWN0aW9uLCBlYWNoIHBhcnR5IHRvIHRoYXQKdHJhbnNhY3Rpb24gd2hvIHJlY2VpdmVzIGEgY29weSBvZiB0aGUgd29yayBhbHNvIHJlY2VpdmVzIHdoYXRldmVyCmxpY2Vuc2VzIHRvIHRoZSB3b3JrIHRoZSBwYXJ0eSdzIHByZWRlY2Vzc29yIGluIGludGVyZXN0IGhhZCBvciBjb3VsZApnaXZlIHVuZGVyIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgsIHBsdXMgYSByaWdodCB0byBwb3NzZXNzaW9uIG9mIHRoZQpDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBmcm9tIHRoZSBwcmVkZWNlc3NvciBpbiBpbnRlcmVzdCwgaWYKdGhlIHByZWRlY2Vzc29yIGhhcyBpdCBvciBjYW4gZ2V0IGl0IHdpdGggcmVhc29uYWJsZSBlZmZvcnRzLgoKICBZb3UgbWF5IG5vdCBpbXBvc2UgYW55IGZ1cnRoZXIgcmVzdHJpY3Rpb25zIG9uIHRoZSBleGVyY2lzZSBvZiB0aGUKcmlnaHRzIGdyYW50ZWQgb3IgYWZmaXJtZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgRm9yIGV4YW1wbGUsIHlvdSBtYXkKbm90IGltcG9zZSBhIGxpY2Vuc2UgZmVlLCByb3lhbHR5LCBvciBvdGhlciBjaGFyZ2UgZm9yIGV4ZXJjaXNlIG9mCnJpZ2h0cyBncmFudGVkIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIHlvdSBtYXkgbm90IGluaXRpYXRlIGxpdGlnYXRpb24KKGluY2x1ZGluZyBhIGNyb3NzLWNsYWltIG9yIGNvdW50ZXJjbGFpbSBpbiBhIGxhd3N1aXQpIGFsbGVnaW5nIHRoYXQKYW55IHBhdGVudCBjbGFpbSBpcyBpbmZyaW5nZWQgYnkgbWFraW5nLCB1c2luZywgc2VsbGluZywgb2ZmZXJpbmcgZm9yCnNhbGUsIG9yIGltcG9ydGluZyB0aGUgUHJvZ3JhbSBvciBhbnkgcG9ydGlvbiBvZiBpdC4KCiAgMTEuIFBhdGVudHMuCgogIEEgImNvbnRyaWJ1dG9yIiBpcyBhIGNvcHlyaWdodCBob2xkZXIgd2hvIGF1dGhvcml6ZXMgdXNlIHVuZGVyIHRoaXMKTGljZW5zZSBvZiB0aGUgUHJvZ3JhbSBvciBhIHdvcmsgb24gd2hpY2ggdGhlIFByb2dyYW0gaXMgYmFzZWQuICBUaGUKd29yayB0aHVzIGxpY2Vuc2VkIGlzIGNhbGxlZCB0aGUgY29udHJpYnV0b3IncyAiY29udHJpYnV0b3IgdmVyc2lvbiIuCgogIEEgY29udHJpYnV0b3IncyAiZXNzZW50aWFsIHBhdGVudCBjbGFpbXMiIGFyZSBhbGwgcGF0ZW50IGNsYWltcwpvd25lZCBvciBjb250cm9sbGVkIGJ5IHRoZSBjb250cmlidXRvciwgd2hldGhlciBhbHJlYWR5IGFjcXVpcmVkIG9yCmhlcmVhZnRlciBhY3F1aXJlZCwgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgYnkgc29tZSBtYW5uZXIsIHBlcm1pdHRlZApieSB0aGlzIExpY2Vuc2UsIG9mIG1ha2luZywgdXNpbmcsIG9yIHNlbGxpbmcgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24sCmJ1dCBkbyBub3QgaW5jbHVkZSBjbGFpbXMgdGhhdCB3b3VsZCBiZSBpbmZyaW5nZWQgb25seSBhcyBhCmNvbnNlcXVlbmNlIG9mIGZ1cnRoZXIgbW9kaWZpY2F0aW9uIG9mIHRoZSBjb250cmlidXRvciB2ZXJzaW9uLiAgRm9yCnB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwgImNvbnRyb2wiIGluY2x1ZGVzIHRoZSByaWdodCB0byBncmFudApwYXRlbnQgc3VibGljZW5zZXMgaW4gYSBtYW5uZXIgY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YKdGhpcyBMaWNlbnNlLgoKICBFYWNoIGNvbnRyaWJ1dG9yIGdyYW50cyB5b3UgYSBub24tZXhjbHVzaXZlLCB3b3JsZHdpZGUsIHJveWFsdHktZnJlZQpwYXRlbnQgbGljZW5zZSB1bmRlciB0aGUgY29udHJpYnV0b3IncyBlc3NlbnRpYWwgcGF0ZW50IGNsYWltcywgdG8KbWFrZSwgdXNlLCBzZWxsLCBvZmZlciBmb3Igc2FsZSwgaW1wb3J0IGFuZCBvdGhlcndpc2UgcnVuLCBtb2RpZnkgYW5kCnByb3BhZ2F0ZSB0aGUgY29udGVudHMgb2YgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24uCgogIEluIHRoZSBmb2xsb3dpbmcgdGhyZWUgcGFyYWdyYXBocywgYSAicGF0ZW50IGxpY2Vuc2UiIGlzIGFueSBleHByZXNzCmFncmVlbWVudCBvciBjb21taXRtZW50LCBob3dldmVyIGRlbm9taW5hdGVkLCBub3QgdG8gZW5mb3JjZSBhIHBhdGVudAooc3VjaCBhcyBhbiBleHByZXNzIHBlcm1pc3Npb24gdG8gcHJhY3RpY2UgYSBwYXRlbnQgb3IgY292ZW5hbnQgbm90IHRvCnN1ZSBmb3IgcGF0ZW50IGluZnJpbmdlbWVudCkuICBUbyAiZ3JhbnQiIHN1Y2ggYSBwYXRlbnQgbGljZW5zZSB0byBhCnBhcnR5IG1lYW5zIHRvIG1ha2Ugc3VjaCBhbiBhZ3JlZW1lbnQgb3IgY29tbWl0bWVudCBub3QgdG8gZW5mb3JjZSBhCnBhdGVudCBhZ2FpbnN0IHRoZSBwYXJ0eS4KCiAgSWYgeW91IGNvbnZleSBhIGNvdmVyZWQgd29yaywga25vd2luZ2x5IHJlbHlpbmcgb24gYSBwYXRlbnQgbGljZW5zZSwKYW5kIHRoZSBDb3JyZXNwb25kaW5nIFNvdXJjZSBvZiB0aGUgd29yayBpcyBub3QgYXZhaWxhYmxlIGZvciBhbnlvbmUKdG8gY29weSwgZnJlZSBvZiBjaGFyZ2UgYW5kIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UsIHRocm91Z2ggYQpwdWJsaWNseSBhdmFpbGFibGUgbmV0d29yayBzZXJ2ZXIgb3Igb3RoZXIgcmVhZGlseSBhY2Nlc3NpYmxlIG1lYW5zLAp0aGVuIHlvdSBtdXN0IGVpdGhlciAoMSkgY2F1c2UgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIHRvIGJlIHNvCmF2YWlsYWJsZSwgb3IgKDIpIGFycmFuZ2UgdG8gZGVwcml2ZSB5b3Vyc2VsZiBvZiB0aGUgYmVuZWZpdCBvZiB0aGUKcGF0ZW50IGxpY2Vuc2UgZm9yIHRoaXMgcGFydGljdWxhciB3b3JrLCBvciAoMykgYXJyYW5nZSwgaW4gYSBtYW5uZXIKY29uc2lzdGVudCB3aXRoIHRoZSByZXF1aXJlbWVudHMgb2YgdGhpcyBMaWNlbnNlLCB0byBleHRlbmQgdGhlIHBhdGVudApsaWNlbnNlIHRvIGRvd25zdHJlYW0gcmVjaXBpZW50cy4gICJLbm93aW5nbHkgcmVseWluZyIgbWVhbnMgeW91IGhhdmUKYWN0dWFsIGtub3dsZWRnZSB0aGF0LCBidXQgZm9yIHRoZSBwYXRlbnQgbGljZW5zZSwgeW91ciBjb252ZXlpbmcgdGhlCmNvdmVyZWQgd29yayBpbiBhIGNvdW50cnksIG9yIHlvdXIgcmVjaXBpZW50J3MgdXNlIG9mIHRoZSBjb3ZlcmVkIHdvcmsKaW4gYSBjb3VudHJ5LCB3b3VsZCBpbmZyaW5nZSBvbmUgb3IgbW9yZSBpZGVudGlmaWFibGUgcGF0ZW50cyBpbiB0aGF0CmNvdW50cnkgdGhhdCB5b3UgaGF2ZSByZWFzb24gdG8gYmVsaWV2ZSBhcmUgdmFsaWQuCgogIElmLCBwdXJzdWFudCB0byBvciBpbiBjb25uZWN0aW9uIHdpdGggYSBzaW5nbGUgdHJhbnNhY3Rpb24gb3IKYXJyYW5nZW1lbnQsIHlvdSBjb252ZXksIG9yIHByb3BhZ2F0ZSBieSBwcm9jdXJpbmcgY29udmV5YW5jZSBvZiwgYQpjb3ZlcmVkIHdvcmssIGFuZCBncmFudCBhIHBhdGVudCBsaWNlbnNlIHRvIHNvbWUgb2YgdGhlIHBhcnRpZXMKcmVjZWl2aW5nIHRoZSBjb3ZlcmVkIHdvcmsgYXV0aG9yaXppbmcgdGhlbSB0byB1c2UsIHByb3BhZ2F0ZSwgbW9kaWZ5Cm9yIGNvbnZleSBhIHNwZWNpZmljIGNvcHkgb2YgdGhlIGNvdmVyZWQgd29yaywgdGhlbiB0aGUgcGF0ZW50IGxpY2Vuc2UKeW91IGdyYW50IGlzIGF1dG9tYXRpY2FsbHkgZXh0ZW5kZWQgdG8gYWxsIHJlY2lwaWVudHMgb2YgdGhlIGNvdmVyZWQKd29yayBhbmQgd29ya3MgYmFzZWQgb24gaXQuCgogIEEgcGF0ZW50IGxpY2Vuc2UgaXMgImRpc2NyaW1pbmF0b3J5IiBpZiBpdCBkb2VzIG5vdCBpbmNsdWRlIHdpdGhpbgp0aGUgc2NvcGUgb2YgaXRzIGNvdmVyYWdlLCBwcm9oaWJpdHMgdGhlIGV4ZXJjaXNlIG9mLCBvciBpcwpjb25kaXRpb25lZCBvbiB0aGUgbm9uLWV4ZXJjaXNlIG9mIG9uZSBvciBtb3JlIG9mIHRoZSByaWdodHMgdGhhdCBhcmUKc3BlY2lmaWNhbGx5IGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlLiAgWW91IG1heSBub3QgY29udmV5IGEgY292ZXJlZAp3b3JrIGlmIHlvdSBhcmUgYSBwYXJ0eSB0byBhbiBhcnJhbmdlbWVudCB3aXRoIGEgdGhpcmQgcGFydHkgdGhhdCBpcwppbiB0aGUgYnVzaW5lc3Mgb2YgZGlzdHJpYnV0aW5nIHNvZnR3YXJlLCB1bmRlciB3aGljaCB5b3UgbWFrZSBwYXltZW50CnRvIHRoZSB0aGlyZCBwYXJ0eSBiYXNlZCBvbiB0aGUgZXh0ZW50IG9mIHlvdXIgYWN0aXZpdHkgb2YgY29udmV5aW5nCnRoZSB3b3JrLCBhbmQgdW5kZXIgd2hpY2ggdGhlIHRoaXJkIHBhcnR5IGdyYW50cywgdG8gYW55IG9mIHRoZQpwYXJ0aWVzIHdobyB3b3VsZCByZWNlaXZlIHRoZSBjb3ZlcmVkIHdvcmsgZnJvbSB5b3UsIGEgZGlzY3JpbWluYXRvcnkKcGF0ZW50IGxpY2Vuc2UgKGEpIGluIGNvbm5lY3Rpb24gd2l0aCBjb3BpZXMgb2YgdGhlIGNvdmVyZWQgd29yawpjb252ZXllZCBieSB5b3UgKG9yIGNvcGllcyBtYWRlIGZyb20gdGhvc2UgY29waWVzKSwgb3IgKGIpIHByaW1hcmlseQpmb3IgYW5kIGluIGNvbm5lY3Rpb24gd2l0aCBzcGVjaWZpYyBwcm9kdWN0cyBvciBjb21waWxhdGlvbnMgdGhhdApjb250YWluIHRoZSBjb3ZlcmVkIHdvcmssIHVubGVzcyB5b3UgZW50ZXJlZCBpbnRvIHRoYXQgYXJyYW5nZW1lbnQsCm9yIHRoYXQgcGF0ZW50IGxpY2Vuc2Ugd2FzIGdyYW50ZWQsIHByaW9yIHRvIDI4IE1hcmNoIDIwMDcuCgogIE5vdGhpbmcgaW4gdGhpcyBMaWNlbnNlIHNoYWxsIGJlIGNvbnN0cnVlZCBhcyBleGNsdWRpbmcgb3IgbGltaXRpbmcKYW55IGltcGxpZWQgbGljZW5zZSBvciBvdGhlciBkZWZlbnNlcyB0byBpbmZyaW5nZW1lbnQgdGhhdCBtYXkKb3RoZXJ3aXNlIGJlIGF2YWlsYWJsZSB0byB5b3UgdW5kZXIgYXBwbGljYWJsZSBwYXRlbnQgbGF3LgoKICAxMi4gTm8gU3VycmVuZGVyIG9mIE90aGVycycgRnJlZWRvbS4KCiAgSWYgY29uZGl0aW9ucyBhcmUgaW1wb3NlZCBvbiB5b3UgKHdoZXRoZXIgYnkgY291cnQgb3JkZXIsIGFncmVlbWVudCBvcgpvdGhlcndpc2UpIHRoYXQgY29udHJhZGljdCB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsIHRoZXkgZG8gbm90CmV4Y3VzZSB5b3UgZnJvbSB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UuICBJZiB5b3UgY2Fubm90IGNvbnZleSBhCmNvdmVyZWQgd29yayBzbyBhcyB0byBzYXRpc2Z5IHNpbXVsdGFuZW91c2x5IHlvdXIgb2JsaWdhdGlvbnMgdW5kZXIgdGhpcwpMaWNlbnNlIGFuZCBhbnkgb3RoZXIgcGVydGluZW50IG9ibGlnYXRpb25zLCB0aGVuIGFzIGEgY29uc2VxdWVuY2UgeW91IG1heQpub3QgY29udmV5IGl0IGF0IGFsbC4gIEZvciBleGFtcGxlLCBpZiB5b3UgYWdyZWUgdG8gdGVybXMgdGhhdCBvYmxpZ2F0ZSB5b3UKdG8gY29sbGVjdCBhIHJveWFsdHkgZm9yIGZ1cnRoZXIgY29udmV5aW5nIGZyb20gdGhvc2UgdG8gd2hvbSB5b3UgY29udmV5CnRoZSBQcm9ncmFtLCB0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCB0aG9zZSB0ZXJtcyBhbmQgdGhpcwpMaWNlbnNlIHdvdWxkIGJlIHRvIHJlZnJhaW4gZW50aXJlbHkgZnJvbSBjb252ZXlpbmcgdGhlIFByb2dyYW0uCgogIDEzLiBVc2Ugd2l0aCB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgoKICBOb3R3aXRoc3RhbmRpbmcgYW55IG90aGVyIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UsIHlvdSBoYXZlCnBlcm1pc3Npb24gdG8gbGluayBvciBjb21iaW5lIGFueSBjb3ZlcmVkIHdvcmsgd2l0aCBhIHdvcmsgbGljZW5zZWQKdW5kZXIgdmVyc2lvbiAzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgaW50byBhIHNpbmdsZQpjb21iaW5lZCB3b3JrLCBhbmQgdG8gY29udmV5IHRoZSByZXN1bHRpbmcgd29yay4gIFRoZSB0ZXJtcyBvZiB0aGlzCkxpY2Vuc2Ugd2lsbCBjb250aW51ZSB0byBhcHBseSB0byB0aGUgcGFydCB3aGljaCBpcyB0aGUgY292ZXJlZCB3b3JrLApidXQgdGhlIHNwZWNpYWwgcmVxdWlyZW1lbnRzIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsCnNlY3Rpb24gMTMsIGNvbmNlcm5pbmcgaW50ZXJhY3Rpb24gdGhyb3VnaCBhIG5ldHdvcmsgd2lsbCBhcHBseSB0byB0aGUKY29tYmluYXRpb24gYXMgc3VjaC4KCiAgMTQuIFJldmlzZWQgVmVyc2lvbnMgb2YgdGhpcyBMaWNlbnNlLgoKICBUaGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIG1heSBwdWJsaXNoIHJldmlzZWQgYW5kL29yIG5ldyB2ZXJzaW9ucyBvZgp0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZnJvbSB0aW1lIHRvIHRpbWUuICBTdWNoIG5ldyB2ZXJzaW9ucyB3aWxsCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bwphZGRyZXNzIG5ldyBwcm9ibGVtcyBvciBjb25jZXJucy4KCiAgRWFjaCB2ZXJzaW9uIGlzIGdpdmVuIGEgZGlzdGluZ3Vpc2hpbmcgdmVyc2lvbiBudW1iZXIuICBJZiB0aGUKUHJvZ3JhbSBzcGVjaWZpZXMgdGhhdCBhIGNlcnRhaW4gbnVtYmVyZWQgdmVyc2lvbiBvZiB0aGUgR05VIEdlbmVyYWwKUHVibGljIExpY2Vuc2UgIm9yIGFueSBsYXRlciB2ZXJzaW9uIiBhcHBsaWVzIHRvIGl0LCB5b3UgaGF2ZSB0aGUKb3B0aW9uIG9mIGZvbGxvd2luZyB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgZWl0aGVyIG9mIHRoYXQgbnVtYmVyZWQKdmVyc2lvbiBvciBvZiBhbnkgbGF0ZXIgdmVyc2lvbiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbi4gIElmIHRoZSBQcm9ncmFtIGRvZXMgbm90IHNwZWNpZnkgYSB2ZXJzaW9uIG51bWJlciBvZiB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHlvdSBtYXkgY2hvb3NlIGFueSB2ZXJzaW9uIGV2ZXIgcHVibGlzaGVkCmJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCgogIElmIHRoZSBQcm9ncmFtIHNwZWNpZmllcyB0aGF0IGEgcHJveHkgY2FuIGRlY2lkZSB3aGljaCBmdXR1cmUKdmVyc2lvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGNhbiBiZSB1c2VkLCB0aGF0IHByb3h5J3MKcHVibGljIHN0YXRlbWVudCBvZiBhY2NlcHRhbmNlIG9mIGEgdmVyc2lvbiBwZXJtYW5lbnRseSBhdXRob3JpemVzIHlvdQp0byBjaG9vc2UgdGhhdCB2ZXJzaW9uIGZvciB0aGUgUHJvZ3JhbS4KCiAgTGF0ZXIgbGljZW5zZSB2ZXJzaW9ucyBtYXkgZ2l2ZSB5b3UgYWRkaXRpb25hbCBvciBkaWZmZXJlbnQKcGVybWlzc2lvbnMuICBIb3dldmVyLCBubyBhZGRpdGlvbmFsIG9ibGlnYXRpb25zIGFyZSBpbXBvc2VkIG9uIGFueQphdXRob3Igb3IgY29weXJpZ2h0IGhvbGRlciBhcyBhIHJlc3VsdCBvZiB5b3VyIGNob29zaW5nIHRvIGZvbGxvdyBhCmxhdGVyIHZlcnNpb24uCgogIDE1LiBEaXNjbGFpbWVyIG9mIFdhcnJhbnR5LgoKICBUSEVSRSBJUyBOTyBXQVJSQU5UWSBGT1IgVEhFIFBST0dSQU0sIFRPIFRIRSBFWFRFTlQgUEVSTUlUVEVEIEJZCkFQUExJQ0FCTEUgTEFXLiAgRVhDRVBUIFdIRU4gT1RIRVJXSVNFIFNUQVRFRCBJTiBXUklUSU5HIFRIRSBDT1BZUklHSFQKSE9MREVSUyBBTkQvT1IgT1RIRVIgUEFSVElFUyBQUk9WSURFIFRIRSBQUk9HUkFNICJBUyBJUyIgV0lUSE9VVCBXQVJSQU5UWQpPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1NFRCBPUiBJTVBMSUVELCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgpQVVJQT1NFLiAgVEhFIEVOVElSRSBSSVNLIEFTIFRPIFRIRSBRVUFMSVRZIEFORCBQRVJGT1JNQU5DRSBPRiBUSEUgUFJPR1JBTQpJUyBXSVRIIFlPVS4gIFNIT1VMRCBUSEUgUFJPR1JBTSBQUk9WRSBERUZFQ1RJVkUsIFlPVSBBU1NVTUUgVEhFIENPU1QgT0YKQUxMIE5FQ0VTU0FSWSBTRVJWSUNJTkcsIFJFUEFJUiBPUiBDT1JSRUNUSU9OLgoKICAxNi4gTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuCgogIElOIE5PIEVWRU5UIFVOTEVTUyBSRVFVSVJFRCBCWSBBUFBMSUNBQkxFIExBVyBPUiBBR1JFRUQgVE8gSU4gV1JJVElORwpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1PRElGSUVTIEFORC9PUiBDT05WRVlTClRIRSBQUk9HUkFNIEFTIFBFUk1JVFRFRCBBQk9WRSwgQkUgTElBQkxFIFRPIFlPVSBGT1IgREFNQUdFUywgSU5DTFVESU5HIEFOWQpHRU5FUkFMLCBTUEVDSUFMLCBJTkNJREVOVEFMIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBBUklTSU5HIE9VVCBPRiBUSEUKVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gTE9TUyBPRgpEQVRBIE9SIERBVEEgQkVJTkcgUkVOREVSRUQgSU5BQ0NVUkFURSBPUiBMT1NTRVMgU1VTVEFJTkVEIEJZIFlPVSBPUiBUSElSRApQQVJUSUVTIE9SIEEgRkFJTFVSRSBPRiBUSEUgUFJPR1JBTSBUTyBPUEVSQVRFIFdJVEggQU5ZIE9USEVSIFBST0dSQU1TKSwKRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgpTVUNIIERBTUFHRVMuCgogIDE3LiBJbnRlcnByZXRhdGlvbiBvZiBTZWN0aW9ucyAxNSBhbmQgMTYuCgogIElmIHRoZSBkaXNjbGFpbWVyIG9mIHdhcnJhbnR5IGFuZCBsaW1pdGF0aW9uIG9mIGxpYWJpbGl0eSBwcm92aWRlZAphYm92ZSBjYW5ub3QgYmUgZ2l2ZW4gbG9jYWwgbGVnYWwgZWZmZWN0IGFjY29yZGluZyB0byB0aGVpciB0ZXJtcywKcmV2aWV3aW5nIGNvdXJ0cyBzaGFsbCBhcHBseSBsb2NhbCBsYXcgdGhhdCBtb3N0IGNsb3NlbHkgYXBwcm94aW1hdGVzCmFuIGFic29sdXRlIHdhaXZlciBvZiBhbGwgY2l2aWwgbGlhYmlsaXR5IGluIGNvbm5lY3Rpb24gd2l0aCB0aGUKUHJvZ3JhbSwgdW5sZXNzIGEgd2FycmFudHkgb3IgYXNzdW1wdGlvbiBvZiBsaWFiaWxpdHkgYWNjb21wYW5pZXMgYQpjb3B5IG9mIHRoZSBQcm9ncmFtIGluIHJldHVybiBmb3IgYSBmZWUuCgogICAgICAgICAgICAgICAgICAgICBFTkQgT0YgVEVSTVMgQU5EIENPTkRJVElPTlMKCiAgICAgICAgICAgIEhvdyB0byBBcHBseSBUaGVzZSBUZXJtcyB0byBZb3VyIE5ldyBQcm9ncmFtcwoKICBJZiB5b3UgZGV2ZWxvcCBhIG5ldyBwcm9ncmFtLCBhbmQgeW91IHdhbnQgaXQgdG8gYmUgb2YgdGhlIGdyZWF0ZXN0CnBvc3NpYmxlIHVzZSB0byB0aGUgcHVibGljLCB0aGUgYmVzdCB3YXkgdG8gYWNoaWV2ZSB0aGlzIGlzIHRvIG1ha2UgaXQKZnJlZSBzb2Z0d2FyZSB3aGljaCBldmVyeW9uZSBjYW4gcmVkaXN0cmlidXRlIGFuZCBjaGFuZ2UgdW5kZXIgdGhlc2UgdGVybXMuCgogIFRvIGRvIHNvLCBhdHRhY2ggdGhlIGZvbGxvd2luZyBub3RpY2VzIHRvIHRoZSBwcm9ncmFtLiAgSXQgaXMgc2FmZXN0CnRvIGF0dGFjaCB0aGVtIHRvIHRoZSBzdGFydCBvZiBlYWNoIHNvdXJjZSBmaWxlIHRvIG1vc3QgZWZmZWN0aXZlbHkKc3RhdGUgdGhlIGV4Y2x1c2lvbiBvZiB3YXJyYW50eTsgYW5kIGVhY2ggZmlsZSBzaG91bGQgaGF2ZSBhdCBsZWFzdAp0aGUgImNvcHlyaWdodCIgbGluZSBhbmQgYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBmdWxsIG5vdGljZSBpcyBmb3VuZC4KCiAgICA8b25lIGxpbmUgdG8gZ2l2ZSB0aGUgcHJvZ3JhbSdzIG5hbWUgYW5kIGEgYnJpZWYgaWRlYSBvZiB3aGF0IGl0IGRvZXMuPgogICAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KCiAgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQogICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCiAgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgoKICAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCgogICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKQWxzbyBhZGQgaW5mb3JtYXRpb24gb24gaG93IHRvIGNvbnRhY3QgeW91IGJ5IGVsZWN0cm9uaWMgYW5kIHBhcGVyIG1haWwuCgogIElmIHRoZSBwcm9ncmFtIGRvZXMgdGVybWluYWwgaW50ZXJhY3Rpb24sIG1ha2UgaXQgb3V0cHV0IGEgc2hvcnQKbm90aWNlIGxpa2UgdGhpcyB3aGVuIGl0IHN0YXJ0cyBpbiBhbiBpbnRlcmFjdGl2ZSBtb2RlOgoKICAgIDxwcm9ncmFtPiAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KICAgIFRoaXMgcHJvZ3JhbSBjb21lcyB3aXRoIEFCU09MVVRFTFkgTk8gV0FSUkFOVFk7IGZvciBkZXRhaWxzIHR5cGUgYHNob3cgdycuCiAgICBUaGlzIGlzIGZyZWUgc29mdHdhcmUsIGFuZCB5b3UgYXJlIHdlbGNvbWUgdG8gcmVkaXN0cmlidXRlIGl0CiAgICB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnM7IHR5cGUgYHNob3cgYycgZm9yIGRldGFpbHMuCgpUaGUgaHlwb3RoZXRpY2FsIGNvbW1hbmRzIGBzaG93IHcnIGFuZCBgc2hvdyBjJyBzaG91bGQgc2hvdyB0aGUgYXBwcm9wcmlhdGUKcGFydHMgb2YgdGhlIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuICBPZiBjb3Vyc2UsIHlvdXIgcHJvZ3JhbSdzIGNvbW1hbmRzCm1pZ2h0IGJlIGRpZmZlcmVudDsgZm9yIGEgR1VJIGludGVyZmFjZSwgeW91IHdvdWxkIHVzZSBhbiAiYWJvdXQgYm94Ii4KCiAgWW91IHNob3VsZCBhbHNvIGdldCB5b3VyIGVtcGxveWVyIChpZiB5b3Ugd29yayBhcyBhIHByb2dyYW1tZXIpIG9yIHNjaG9vbCwKaWYgYW55LCB0byBzaWduIGEgImNvcHlyaWdodCBkaXNjbGFpbWVyIiBmb3IgdGhlIHByb2dyYW0sIGlmIG5lY2Vzc2FyeS4KRm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhpcywgYW5kIGhvdyB0byBhcHBseSBhbmQgZm9sbG93IHRoZSBHTlUgR1BMLCBzZWUKPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgoKICBUaGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZG9lcyBub3QgcGVybWl0IGluY29ycG9yYXRpbmcgeW91ciBwcm9ncmFtCmludG8gcHJvcHJpZXRhcnkgcHJvZ3JhbXMuICBJZiB5b3VyIHByb2dyYW0gaXMgYSBzdWJyb3V0aW5lIGxpYnJhcnksIHlvdQptYXkgY29uc2lkZXIgaXQgbW9yZSB1c2VmdWwgdG8gcGVybWl0IGxpbmtpbmcgcHJvcHJpZXRhcnkgYXBwbGljYXRpb25zIHdpdGgKdGhlIGxpYnJhcnkuICBJZiB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8sIHVzZSB0aGUgR05VIExlc3NlciBHZW5lcmFsClB1YmxpYyBMaWNlbnNlIGluc3RlYWQgb2YgdGhpcyBMaWNlbnNlLiAgQnV0IGZpcnN0LCBwbGVhc2UgcmVhZAo8aHR0cDovL3d3dy5nbnUub3JnL3BoaWxvc29waHkvd2h5LW5vdC1sZ3BsLmh0bWw+Lgo=]]></data>
	</file>
	<file>
	  <filename>/event.CGEcommerceBase.OrderDeleted.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhbiBvcmRlciBoYXMgYmVlbiBkZWxldGVkLgppZiggIWlzc2V0KCRwYXJhbXNbJ29yZGVyX2lkJ10pICkgcmV0dXJuOwoKLy8gaGFuZGxlIHRoZSBjYXNlIG9mIGF0dGVtcHRlZCByZWN1cnNpb24uCmlmKCBjZ2VfdG1wZGF0YTo6ZXhpc3RzKF9fRklMRV9fKSApIHJldHVybjsKY2dlX3RtcGRhdGE6OnNldChfX0ZJTEVfXywxKTsKCi8vIGhlcmUgd2UgZ3JhYiB0aGUgb3JkZXIgZGlyZWN0bHkuCiRvcmRlcl9pZCA9IChpbnQpJHBhcmFtc1snb3JkZXJfaWQnXTsKJG9yZGVyX29iaiA9IG9yZGVyc19vcHM6OmxvYWRfYnlfaWQoJG9yZGVyX2lkKTsKaWYoICEkb3JkZXJfb2JqICkKICB7CiAgICByZXR1cm47CiAgfQoKLy8gZmluZCB0aGUgbGluZSBpdGVtIHdpdGggYSBTZWxmUmVnIFN1YnNjcmlwdGlvbi4KZm9yKCAkcyA9IDA7ICRzIDwgJG9yZGVyX29iai0+Y291bnRfZGVzdGluYXRpb25zKCk7ICRzKysgKQogIHsKICAgICRzaGlwcGluZyA9ICRvcmRlcl9vYmotPmdldF9zaGlwcGluZygkcyk7CiAgICBmb3IoICRpID0gMDsgJGkgPCAkc2hpcHBpbmctPmNvdW50X2FsbF9pdGVtcygpOyAkaSsrICkKICAgICAgewoJJGl0ZW0gPSAkc2hpcHBpbmctPmdldF9pdGVtKCRpKTsKCWlmKCAkaXRlbS0+Z2V0X3NvdXJjZSgpICE9ICdTZWxmUmVnaXN0cmF0aW9uJyApCgkgIHsKCSAgICBjb250aW51ZTsKCSAgfQoJaWYoICRpdGVtLT5nZXRfaXRlbV90eXBlKCkgIT0gbGluZV9pdGVtOjpJVEVNVFlQRV9TRVJWSUNFICkgY29udGludWU7CglpZiggISRpdGVtLT5pc19zdWJzY3JpcHRpb24oKSApIGNvbnRpbnVlOwoKCSR1aWQgPSAkaXRlbS0+Z2V0X2V4dHJhKCdmZXVfdWlkJyk7CglpZiggISR1aWQgKSBjb250aW51ZTsgIC8vIG5vIGFzc29jZGF0YSwgbWF5YmUgdGhpcyB1c2VyIG5ldmVyIHBhaWQuCgoJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CglpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgJHVpbmZvWzBdID09IEZBTFNFICkKCSAgewoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwoJICAgIHJldHVybjsKCSAgfQoJJHVpbmZvID0gJHVpbmZvWzFdOwoKCXN3aXRjaCggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyZGVsZXRlZCcpICkKCSAgewoJICBjYXNlICdkZWxldGUnOgoJICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllcygnJywkdWlkLHRydWUpOwoJICAgICR0aGlzLT5EZWxldGVVc2VyRnVsbCgkdWlkKTsKCSAgICAkdGhpcy0+QXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLAoJCQkgc3ByaW50ZignRGVsZXRlZCB1c2VyICVzIGJlY2F1c2Ugb3JkZXIgJWQgd2FzIGRlbGV0ZWQnLCR1aW5mb1sndXNlcm5hbWUnXSwkb3JkZXJfaWQpKTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ2V4cGlyZSc6CgkgICAgJHRoaXMtPlNldFVzZXIoJHVpZCwkdWluZm9bJ3VzZXJuYW1lJ10sJHVpbmZvWydwYXNzd29yZCddLHRpbWUoKS0zNjAwLGZhbHNlKTsKCSAgICAkdGhpcy0+QXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLAoJCQkgc3ByaW50ZignRXhwaXJlZCB1c2VyICVzIGJlY2F1c2Ugb3JkZXIgJWQgd2FzIGRlbGV0ZWQnLCR1aW5mb1sndXNlcm5hbWUnXSwkb3JkZXJfaWQpKTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ25vbmUnOgoJICBkZWZhdWx0OgoJICAgIGJyZWFrOwoJICB9CgogICAgICB9CiAgfQoKLy8gc2V0dXAgZm9yIGFub3RoZXIgb3JkZXIuLi4gc2hvdWxkbid0IGhhcHBlbiwgYnV0IGp1c3QgaW4gY2FzZS4KY2dlX3RtcGRhdGE6OmVyYXNlKF9fRklMRV9fKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/event.CGEcommerceBase.OrderUpdated.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhbiBvcmRlciBoYXMgYmVlbiBkZWxldGVkLgppZiggIWlzc2V0KCRwYXJhbXNbJ29yZGVyX2lkJ10pICkgcmV0dXJuOwoKLy8gaGFuZGxlIHRoZSBjYXNlIG9mIGF0dGVtcHRlZCByZWN1cnNpb24uCgppZiggY2dlX3RtcGRhdGE6OmV4aXN0cyhfX0ZJTEVfXykgKSByZXR1cm47CmNnZV90bXBkYXRhOjpzZXQoX19GSUxFX18sMSk7CgovLyBoZXJlIHdlIGdyYWIgdGhlIG9yZGVyIGRpcmVjdGx5Lgokb3JkZXJfaWQgPSAoaW50KSRwYXJhbXNbJ29yZGVyX2lkJ107CiRvcmRlcl9vYmogPSBvcmRlcnNfb3BzOjpsb2FkX2J5X2lkKCRvcmRlcl9pZCk7CmlmKCAhJG9yZGVyX29iaiApIHJldHVybjsKaWYoICRvcmRlcl9vYmotPmdldF9zdGF0dXMoKSAhPSAnY2FuY2VsbGVkJyApIHJldHVybjsKCi8vIGZpbmQgdGhlIGxpbmUgaXRlbSB3aXRoIGEgU2VsZlJlZyBTdWJzY3JpcHRpb24uCmZvciggJHMgPSAwOyAkcyA8ICRvcmRlcl9vYmotPmNvdW50X2Rlc3RpbmF0aW9ucygpOyAkcysrICkgewogICRzaGlwcGluZyA9ICRvcmRlcl9vYmotPmdldF9zaGlwcGluZygkcyk7CiAgZm9yKCAkaSA9IDA7ICRpIDwgJHNoaXBwaW5nLT5jb3VudF9hbGxfaXRlbXMoKTsgJGkrKyApIHsKICAgICRpdGVtID0gJHNoaXBwaW5nLT5nZXRfaXRlbSgkaSk7CiAgICBpZiggJGl0ZW0tPmdldF9zb3VyY2UoKSAhPSAnU2VsZlJlZ2lzdHJhdGlvbicgKSBjb250aW51ZTsKICAgIGlmKCAkaXRlbS0+Z2V0X2l0ZW1fdHlwZSgpICE9IGxpbmVfaXRlbTo6SVRFTVRZUEVfU0VSVklDRSApIGNvbnRpbnVlOwogICAgaWYoICEkaXRlbS0+aXNfc3Vic2NyaXB0aW9uKCkgKSBjb250aW51ZTsKCiAgICAkdWlkID0gJGl0ZW0tPmdldF9leHRyYSgnZmV1X3VpZCcpOwogICAgaWYoICEkdWlkICkgY29udGludWU7ICAvLyBubyBhc3NvY2RhdGEsIG1heWJlIHRoaXMgdXNlciBuZXZlciBwYWlkLgoKICAgICR1aW5mbyA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgaWYoICFpc19hcnJheSgkdWluZm8pIHx8ICR1aW5mb1swXSA9PSBGQUxTRSApIHsKICAgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSxzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwogICAgICByZXR1cm47CiAgICB9CiAgICAkdWluZm8gPSAkdWluZm9bMV07CgogICAgc3dpdGNoKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJjYW5jZWxsZWQnKSApIHsKICAgIGNhc2UgJ2RlbGV0ZSc6CiAgICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllcygnJywkdWlkLHRydWUpOwogICAgICAkdGhpcy0+RGVsZXRlVXNlcihGdWxsJHVpZCk7CiAgICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJICAgc3ByaW50ZignRGVsZXRlZCB1c2VyICVzIGJlY2F1c2Ugb3JkZXIgJWQgd2FzIGRlbGV0ZWQnLCR1aW5mb1sndXNlcm5hbWUnXSwkb3JkZXJfaWQpKTsKICAgICAgYnJlYWs7CgogICAgY2FzZSAnZXhwaXJlJzoKICAgICAgJHRoaXMtPlNldFVzZXIoJHVpZCwkdWluZm9bJ3VzZXJuYW1lJ10sJHVpbmZvWydwYXNzd29yZCddLHRpbWUoKS0zNjAwLGZhbHNlKTsKICAgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSwKCQkgICBzcHJpbnRmKCdFeHBpcmVkIHVzZXIgJXMgYmVjYXVzZSBvcmRlciAlZCB3YXMgZGVsZXRlZCcsJHVpbmZvWyd1c2VybmFtZSddLCRvcmRlcl9pZCkpOwogICAgICBicmVhazsKCiAgICBjYXNlICdub25lJzoKICAgIGRlZmF1bHQ6CiAgICAgIGJyZWFrOwogICAgfQogIH0KfQoKLy8gc2V0dXAgZm9yIGFub3RoZXIgb3JkZXIuLi4gc2hvdWxkbid0IGhhcHBlbiwgYnV0IGp1c3QgaW4gY2FzZS4KY2dlX3RtcGRhdGE6OmVyYXNlKF9fRklMRV9fKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwpyZXR1cm47CgovLyAwLiAgQ2hlY2sgY21zIHZlcnNpb24KZ2xvYmFsICRDTVNfVkVSU0lPTjsKaWYoIHZlcnNpb25fY29tcGFyZSgkQ01TX1ZFUlNJT04sJzIuMC1iZXRhMScpIDwgMCApIHsKICAvLyBub3QgQ01TIDIuMCwgZG9uJ3QgZ28gYW55IGZ1cnRoZXIuCiAgcmV0dXJuOwp9CgovLyAxLiAgR2V0IHRoZSBjb250ZW50X2lkCiRjb250ZW50X2lkID0gY21zX3V0aWxzOjpnZXRfY3VycmVudF9wYWdlaWQoKTsKaWYoICRjb250ZW50X2lkIDw9IDAgKSByZXR1cm47CgovLyAyLiAgR2V0IHRoZSBjb250ZW50IG9iamVjdAppZiggY2xhc3NfZXhpc3RzKCdDTVNDb250ZW50JykpCiRjb250ZW50X29iaiA9IENtc0NvbnRlbnRPcGVyYXRpb25zOjpsb2FkX2NvbnRlbnRfZnJvbV9pZCgkY29udGVudF9pZCk7CmlmKCAhaXNfb2JqZWN0KCRjb250ZW50X29iaikgKQogIHsKICAgIHJldHVybjsKICB9CgovLyAzLiAgR2V0IHRoZSBwcm9wZXJ0aWVzLgokY29udGVudF9vYmotPmxvYWRfcHJvcGVydGllcygpOwokZmV1X2dyb3VwcyA9ICRjb250ZW50X29iai0+Z2V0X3Byb3BlcnR5X3ZhbHVlKCdmZXVfZ3JvdXBzJyk7CiRmZXVfcmVkaXJlY3QgPSAkY29udGVudF9vYmotPmdldF9wcm9wZXJ0eV92YWx1ZSgnZmV1X3JlZGlyZWN0Jyk7CgovLyBpZiB0aGUgZ3JvdXBzIGxpc3QgaXMgZW1wdHksIHJldHVybi4KaWYoICRmZXVfZ3JvdXBzID09ICcnICkgcmV0dXJuOwoKLy8gY2hlY2sgdGhpcyB1c2VycyBtZW1iZXIgZ3JvdXBzCiRwYXNzZWQgPSBmYWxzZTsKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCAkdWlkICkKICB7CiAgICAvLyBnZXQgdGhlIG1lbWJlciBncm91cHMuCiAgICAkdDEgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzKCR1aWQpOwogICAgaWYoIGlzX2FycmF5KCAkdDEgKSApCiAgICAgIHsKCS8vIHVzZXIgaXMgYSBtZW1iZXIgb2YgYXQgbGVhc3Qgb25lIGdyb3VwCgkkbWVtYmVyZ3JvdXBzID0gYXJyYXkoKTsKCWZvcmVhY2goICR0MSBhcyAkcm93ICkKCSAgewoJICAgICRtZW1iZXJncm91cHNbXSA9ICRyb3dbJ2dyb3VwaWQnXTsKCSAgfQoKCS8vIHRlc3QgbWVtYmVyc2hpcC4KCSR0MSA9IGV4cGxvZGUoJywnLCRmZXVfZ3JvdXBzKTsKCWlmKCBpbl9hcnJheSgkdDEsJy0xJykgKQoJICB7CgkgICAgLy8gYW55IGdyb3VwIHdpbGwgZG8uCgkgICAgJHBhc3NlZCA9IHRydWU7CgkgIH0KCWVsc2UKCSAgewoJICAgICR0bXAgPSBhcnJheV9pbnRlcnNlY3QoJG1lbWJlcmdyb3VwcywkdDIpOwoJICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSA+IDAgKQoJICAgICAgewoJCSRwYXNzZWQgPSB0cnVlOwoJICAgICAgfQoJICB9CiAgICAgIH0KICB9CgppZiggISRwYXNzZWQgKQogIHsKICAgIGlmKCAkZmV1X3JlZGlyZWN0ICE9IC0xICkKICAgICAgewoJcmVkaXJlY3RfdG9fYWxpYXMoJGZldV9yZWRpcmVjdCk7CiAgICAgIH0KICB9CiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/FrontEndUsers.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhIHZlcnkgaW1wb3J0YW50IGxpbmUgdGhhdCBpbmNsdWRlcyBhbGwgb2Ygb3VyIGFwaSBmdW5jdGlvbnMKZmluYWwgY2xhc3MgRnJvbnRFbmRVc2VycyBleHRlbmRzIENHRXh0ZW5zaW9ucwp7CiAgICBjb25zdCBGSUVMRFRZUEVfVEVYVCA9IDA7CiAgICBjb25zdCBGSUVMRFRZUEVfQ0hFQ0tCT1ggPSAxOwogICAgY29uc3QgRklFTERUWVBFX0VNQUlMID0gMjsKICAgIGNvbnN0IEZJRUxEVFlQRV9URVhUQVJFQSA9IDM7CiAgICBjb25zdCBGSUVMRFRZUEVfRFJPUERPV04gPSA0OwogICAgY29uc3QgRklFTERUWVBFX01VTFRJU0VMRUNUID0gNTsKICAgIGNvbnN0IEZJRUxEVFlQRV9JTUFHRSA9IDY7CiAgICBjb25zdCBGSUVMRFRZUEVfUkFESU9CVVROUyA9IDc7CiAgICBjb25zdCBGSUVMRFRZUEVfREFURSA9IDg7CiAgICBjb25zdCBGSUVMRFRZUEVfREFUQSA9IDk7CgogICAgLyoqCiAgICAgKiBUaGUgZGVmYXVsdCB0ZW1wbGF0ZSB1c2VkIGZvciB0aGUgbG9naW4gZm9ybQogICAgICovCgogICAgLy9Ib3cgbWFueSBzZWNvbmRzIG9mIGluYWN0aXZpdHkgYmVmb3JlIGEgdXNlciBpcyBhdXRvbWF0aWNhbGx5IGxvZ2dlZCBvdXQuCiAgICBwcm90ZWN0ZWQgJGV4cGlyeXRpbWU7CgogICAgLy9TZXQgdGhpcyB0byB0cnVlIGlmIHVzZXIgc2hvdWxkIGJlIHJlZGlyZWN0ZWQgdG8gZGVmYXVsdCBwYWdlIGFmdGVyCiAgICAvLyBsb2dnaW5nIGluL291dC4KICAgIHByb3RlY3RlZCAkbG9naW50YXJnZXQ7CiAgICBwcm90ZWN0ZWQgJG90aGVyaW50YXJnZXQ7CiAgICBwcm90ZWN0ZWQgJGxvZ291dHRhcmdldDsKICAgIHByb3RlY3RlZCAkb3RoZXJvdXR0YXJnZXQ7CiAgICBwcm90ZWN0ZWQgJGFsbG93dXNlcmFkbWluOwogICAgcHJvdGVjdGVkICRlbmFibGVlbWFpbHB3OwogICAgcHJvdGVjdGVkICRsYW5nPSIiOwogICAgcHJpdmF0ZSAkdXNlcm1hbmlwID0gZmFsc2U7CiAgICBwcm90ZWN0ZWQgJHR5cGVzID0gZmFsc2U7CgogICAgLy8gY29uc3RydWN0b3IKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpCiAgICB7CiAgICAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgpOwogICAgICAgICR0aGlzLT50eXBlcyA9IGFycmF5KCAndGV4dCcgPT4gc2VsZjo6RklFTERUWVBFX1RFWFQsCiAgICAgICAgJ2NoZWNrYm94JyA9PiBzZWxmOjpGSUVMRFRZUEVfQ0hFQ0tCT1gsCiAgICAgICAgJ2VtYWlsJyA9PiBzZWxmOjpGSUVMRFRZUEVfRU1BSUwsCiAgICAgICAgJ3RleHRhcmVhJyA9PiBzZWxmOjpGSUVMRFRZUEVfVEVYVEFSRUEsCiAgICAgICAgJ2Ryb3Bkb3duJyA9PiBzZWxmOjpGSUVMRFRZUEVfRFJPUERPV04sCiAgICAgICAgJ211bHRpc2VsZWN0JyA9PiBzZWxmOjpGSUVMRFRZUEVfTVVMVElTRUxFQ1QsCiAgICAgICAgJ2ltYWdlJyA9PiBzZWxmOjpGSUVMRFRZUEVfSU1BR0UsCiAgICAgICAgJ3JhZGlvYnV0dG9ucycgPT4gc2VsZjo6RklFTERUWVBFX1JBRElPQlVUTlMsCiAgICAgICAgJ2RhdGUnID0+IHNlbGY6OkZJRUxEVFlQRV9EQVRFLAogICAgICAgICdkYXRhJyA9PiBzZWxmOjpGSUVMRFRZUEVfREFUQSk7CgogICAgICAgIGdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CiAgICAgICAgaWYoICFpc3NldCgkQ01TX0FETUlOX1BBR0UpICkgewogICAgICAgICAgICByZXF1aXJlX29uY2UoX19ESVJfXy4iL2xpYi9jbGFzcy5mZXVfc21hcnR5LnBocCIgKTsKICAgICAgICAgICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgICAgICAgICBpZiggISRzbWFydHkgKSByZXR1cm47CiAgICAgICAgICAgICRvYmogPSBuZXcgZmV1X3NtYXJ0eSgkdGhpcyk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbignZmV1X3NtYXJ0eScsJG9iaik7CiAgICAgICAgfQogICAgICAgICR0aGlzLT5BZGRJbWFnZURpcignaWNvbnMnKTsKCiAgICAgICAgJGNvbnRlbnRvcHMgPSBjbXNtcygpLT5HZXRDb250ZW50T3BlcmF0aW9ucygpOwogICAgICAgICRvYmogPSBuZXcgQ21zQ29udGVudFR5cGVQbGFjZWhvbGRlcigpOwogICAgICAgICRvYmotPmNsYXNzID0gJ2ZldV9wcm90ZWN0ZWRfcGFnZSc7CiAgICAgICAgJG9iai0+dHlwZSAgPSBzdHJ0b2xvd2VyKCRvYmotPmNsYXNzKTsKICAgICAgICAkb2JqLT5maWxlbmFtZSA9IF9fRElSX18uJy9saWIvY2xhc3MuZmV1X3Byb3RlY3RlZF9wYWdlLnBocCc7CiAgICAgICAgJG9iai0+bG9hZGVkID0gZmFsc2U7CiAgICAgICAgJG9iai0+ZnJpZW5kbHluYW1lID0gJHRoaXMtPkxhbmcoJ2ZldV9wcm90ZWN0ZWRfcGFnZScpOwogICAgICAgICRjb250ZW50b3BzLT5yZWdpc3Rlcl9jb250ZW50X3R5cGUoJG9iaik7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfbG9hZCgpCiAgICB7CiAgICAgICAgaWYoICR0aGlzLT51c2VybWFuaXAgPT0gTlVMTCApIHsKICAgICAgICAgICAgLy8gY2hlY2sgYSBwcmVmZXJlbmNlIHRvIHNlZSB3aGljaCB1c2VyIG1hbmlwdWxhdG9yIGNsYXNzCiAgICAgICAgICAgIC8vIHdlIHNob3VsZCB1c2UuCiAgICAgICAgICAgICRtYW5pcHVsYXRvciA9ICdGcm9udEVuZFVzZXJzTWFuaXB1bGF0b3InOwogICAgICAgICAgICAkdGhpcy0+dXNlcm1hbmlwID0gbmV3IEZyb250RW5kVXNlcnNNYW5pcHVsYXRvciggJHRoaXMgKTsKICAgICAgICAgICAgaWYoICFpc19vYmplY3QoICR0aGlzLT51c2VybWFuaXAgKSApIGRpZSgiRXJyb3IgaW5zdGFudGlhdGlvbmcgJG1hbmlwdWxhdG9yIG9iamVjdCIpOwogICAgICAgICAgICAkdGhpcy0+dXNlcm1hbmlwLT5TZXRFeHBpcmVOb3RpZmllcihhcnJheSgkdGhpcywnTm90aWZ5RXhwaXJlZFVzZXInKSk7CiAgICAgICAgfQogICAgfQoKICAgIC8qKgogICAgICogR2V0IHRoZSBVc2VyIE1hbmlwdWxhdG9yIE9iamVjdAogICAgICogTk9UIEZPUiBFWFRFUk5BTCBVU0UKICAgICAqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEByZXR1cm4gb2JqZWN0CiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiAmR2V0TWFuaXB1bGF0b3IoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwOwogICAgfQoKICAgIC8qKgogICAgICogR2VuZXJhdGUgYSByYW5kb20sIHByaW50YWJsZSBzdHJpbmcKICAgICAqCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gR2VuZXJhdGVSYW5kb21QcmludGFibGVTdHJpbmcoICRsZW4gPSAxMCApCiAgICB7CiAgICAgICAgcmV0dXJuIGZldV91dGlsczo6Z2VuZXJhdGVfcmFuZG9tX3ByaW50YWJsZV9zdHJpbmcoJGxlbik7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0TmFtZSgpIHsgcmV0dXJuICdGcm9udEVuZFVzZXJzJzsgfQogICAgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsgcmV0dXJuICcxLjIzLjQnOyB9CiAgICBmdW5jdGlvbiBIYXNDb250ZW50VHlwZSgpIHsgcmV0dXJuIFRSVUU7IH0KICAgIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCkgeyByZXR1cm4gVFJVRTsgfQogICAgZnVuY3Rpb24gQWxsb3dBdXRvSW5zdGFsbCgpIHsgcmV0dXJuIEZBTFNFOyB9CiAgICBmdW5jdGlvbiBBbGxvd0F1dG9VcGdyYWRlKCkgeyByZXR1cm4gRkFMU0U7IH0KICAgIGZ1bmN0aW9uIExhenlMb2FkQWRtaW4oKSB7IHJldHVybiBUUlVFOyB9CiAgICBmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpIHsgcmV0dXJuICcxLjExLjknOyB9CiAgICBmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uICgpIHsgcmV0dXJuICR0aGlzLT5MYW5nICgnbW9kZGVzY3JpcHRpb24nKTsgfQogICAgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uICgpIHsgcmV0dXJuICd1c2Vyc2dyb3Vwcyc7IH0KICAgIGZ1bmN0aW9uIEdldERlcGVuZGVuY2llcygpIHsgcmV0dXJuIGFycmF5KCAnQ01TTWFpbGVyJyA9PiAnMS43My45JywnQ0dFeHRlbnNpb25zJyA9PiAnMS4zOC4xMCcgKTsgfQogICAgZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiAoICRldmVudG5hbWUgKSB7IHJldHVybiAkdGhpcy0+TGFuZygnZXZlbnRfaW5mb18nLiRldmVudG5hbWUgKTsgfQogICAgZnVuY3Rpb24gR2V0RXZlbnRIZWxwICggJGV2ZW50bmFtZSApIHsgcmV0dXJuICR0aGlzLT5MYW5nKCdldmVudF9oZWxwXycuJGV2ZW50bmFtZSApOyB9CiAgICBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUgKCkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpOyB9CiAgICBmdW5jdGlvbiBIYXNBZG1pbiAoKSB7IHJldHVybiBUUlVFOyB9CiAgICBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKSB7IHJldHVybiAkdGhpcy0+TGFuZygncG9zdGluc3RhbGxtZXNzYWdlJyk7IH0KICAgIGZ1bmN0aW9uIEdldEhlbHAoKSB7IHJldHVybiBmaWxlX2dldF9jb250ZW50cyhfX0RJUl9fLicvaGVscC5pbmMnKTsgfQogICAgZnVuY3Rpb24gR2V0QXV0aG9yKCkgeyByZXR1cm4gJ2NhbGd1eTEwMDAnOyB9CiAgICBmdW5jdGlvbiBHZXRBdXRob3JFbWFpbCgpIHsgcmV0dXJuICdjYWxndXkxMDAwQGhvdG1haWwuY29tJzsgfQogICAgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkgeyByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoX19ESVJfXy4nL2NoYW5nZWxvZy5pbmMnKTsgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBsYW5naWZ5S2V5cyggJGFyciApCiAgICB7CiAgICAgICAgJG91dCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJGFyciBhcyAkaz0+JHYgKSB7CiAgICAgICAgICAgICRrID0gJHRoaXMtPkxhbmcoJGspOwogICAgICAgICAgICAkb3V0WyAkayBdID0gJHY7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQogICAgewogICAgICAgICR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY29kZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZm9ybScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncmV0dXJudG8nLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ29ubHlfZ3JvdXBzJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub2NhcHRjaGEnLENMRUFOX0lOVCk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3VzZXJuYW1lJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9wYXNzd29yZCcsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2Vycm9yJyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdtZXNzYWdlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5fZ3JvdXAnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2NhcHRjaGEnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3N1Ym1pdCcsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2FuY2VsJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9yZXR1cm50bycsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfdWlkJyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jb2RlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdza2lwZm9ybWRpc3BsYXknLENMRUFOX0lOVCk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VpZCcsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2hlY2tvbmx5JyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm5sYXN0JyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ3JldHVybmxhc3QnLCcnLCR0aGlzLT5MYW5nKCdoZWxwX3JldHVybmxhc3QnKSk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vaW5saW5lJyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoJ25vaW5saW5lJywnJywkdGhpcy0+TGFuZygnaGVscF9ub2lubGluZScpKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9mZXVfLiovJyxDTEVBTl9TVFJJTkcpOwoKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvdmVyaWZ5XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPHVpZD5bMC05XSspXC8oP1A8Y29kZT4uKj8pJC8nLGFycmF5KCdhY3Rpb24nPT4ndmVyaWZ5Y29kZScpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvcmVzZXRcLyg/UDx1aWQ+WzAtOV0rKSQvJyxhcnJheSgnYWN0aW9uJz0+J3Jlc2V0X3Nlc3Npb24nLCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLCdjaGVja29ubHknPT4nMScpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvZWRpdFwvKD9QPHJldHVybmlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9PidjaGFuZ2VzZXR0aW5ncycpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvbG9nb3V0XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJyxhcnJheSgnYWN0aW9uJz0+J2xvZ291dCcpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvZm9yZ290XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJyxhcnJheSgnYWN0aW9uJz0+J2ZvcmdvdHB3JykpOwogICAgICAgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2ZGXWV1XC9sb3N0dXNlcm5hbWVcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLGFycmF5KCdhY3Rpb24nPT4nbG9zdHVzZXJuYW1lJykpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX0V4cG9ydExvZ2dlZEluVXNlclZhcmlhYmxlcygkaWQsJiRwYXJhbXMsJHJldHVybmlkKQogICAgewogICAgICAgIC8vIHJlcGxhY2UgeyR1c2VybmFtZX0gd2l0aCB0aGUgdXNlciBuYW1lCiAgICAgICAgJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuOwogICAgICAgICR1c2VybmFtZSA9ICR0aGlzLT5Mb2dnZWRJbk5hbWUoKTsKCiAgICAgICAgLy8gcmVwbGFjZSB7JGdyb3VwbmFtZX0gd2l0aCB0aGUgZmlyc3QgZ3JvdXBuYW1lIHdlIGNhbiBmaW5kIHRoYXQgbWF0Y2hlcwogICAgICAgICRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKICAgICAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CiAgICAgICAgJGdyb3VwbmFtZSA9ICR0aGlzLT5HZXRHcm91cE5hbWUoICRncm91cHNbMF1bJ2dyb3VwaWQnXSApOwoKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJpZCcsICR1aWQpOwogICAgICAgICRzbWFydHktPmFzc2lnbigndXNlcm5hbWUnLCAkdXNlcm5hbWUgKTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfbG9nb3V0JywgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCJsb2dvdXQiLCRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2xvZ291dCcpKSk7CiAgICAgICAgJHByZXR0eXVybF9sb2dvdXQgPSAnZmV1L2xvZ291dC8nLiRyZXR1cm5pZDsKICAgICAgICAkbG9nb3V0X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xvZ291dCcsICRyZXR1cm5pZCwgJycsIGFycmF5KCksICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsX2xvZ291dCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCd1cmxfbG9nb3V0JywgJGxvZ291dF9mZXUpOwoKICAgICAgICAkcGFnZSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJykpOwogICAgICAgIGlmKCAkcGFnZSApIHsKICAgICAgICAgICAgJHBhZ2VpZCA9IENvbnRlbnRNYW5hZ2VyOjpnZXRfaW5zdGFuY2UoKS0+R2V0UGFnZUlERnJvbUFsaWFzKCAkcGFnZSApOwogICAgICAgICAgICBpZiggJHBhZ2VpZCA9PSBmYWxzZSApIHsKICAgICAgICAgICAgICAgICRzbWFydHktPmFzc2lnbignbGlua19jaGFuZ2VzZXR0aW5ncycsJzwhLS0gRXJyb3IgY291bGQgbm90IGRldGVybWluZSBwYWdlIGZyb20gYWxpYXMvaWQgLS0+Jyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfY2hhbmdlc2V0dGluZ3MnLAogICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcGFnZWlkLCR0aGlzLT5MYW5nKCdwcm9tcHRfY2hhbmdlc2V0dGluZ3MnKSxhcnJheSgnZm9ybSc9PidjaGFuZ2VzZXR0aW5ncycpKSk7CiAgICAgICAgICAgICAgICAvL251bm8tZGV2LVByZXR0eSBVcmwncwogICAgICAgICAgICAgICAgJHByZXR0eXVybF9jaGFuZ2VzZXR0aW5ncyA9ICdmZXUvZWRpdC8nLiRwYWdlaWQ7CiAgICAgICAgICAgICAgICAkY2hhbmdlc2V0dGluZ3NfZmV1ID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVmYXVsdCcsICRwYWdlaWQsICcnLCBhcnJheSgnZm9ybSc9PidjaGFuZ2VzZXR0aW5ncycpLCAnJywKICAgICAgICAgICAgICAgIHRydWUsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmxfY2hhbmdlc2V0dGluZ3MpOwogICAgICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCd1cmxfY2hhbmdlc2V0dGluZ3MnLCRjaGFuZ2VzZXR0aW5nc19mZXUpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfY2hhbmdlc2V0dGluZ3MnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncycpLCBhcnJheSgnZm9ybSc9PidjaGFuZ2VzZXR0aW5ncycpKSk7CiAgICAgICAgICAgIC8vbnVuby1kZXYtUHJldHR5IFVybCdzCiAgICAgICAgICAgICRwcmV0dHl1cmxfY2hhbmdlc2V0dGluZ3MgPSAnZmV1L2VkaXQvJy4kcmV0dXJuaWQ7CiAgICAgICAgICAgICRjaGFuZ2VzZXR0aW5nc19mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAgJycsIGFycmF5KCdmb3JtJz0+J2NoYW5nZXNldHRpbmdzJyksICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsX2NoYW5nZXNldHRpbmdzKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCd1cmxfY2hhbmdlc2V0dGluZ3MnLCRjaGFuZ2VzZXR0aW5nc19mZXUpOwogICAgICAgIH0KICAgICAgICAkcHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoICR0aGlzLT5Mb2dnZWRJbklkKCkgKTsKICAgICAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJHAgKSB7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigkcFsndGl0bGUnXSwkcFsnZGF0YSddKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gZ2V0X3Rhc2tzKCkKICAgIHsKICAgICAgICAkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3RpbWVzJyk7CiAgICAgICAgaWYoICR0bXAgIT0gJycgKSB7CiAgICAgICAgICAgICRvYmogPSBuZXcgRkVVRm9yY2VkTG9nb3V0VGFzaygpOwogICAgICAgICAgICByZXR1cm4gJG9iajsKICAgICAgICB9CiAgICAgICAgJHRtcCA9IG51bGw7CiAgICAgICAgcmV0dXJuICR0bXA7CiAgICB9CgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICRwZXJtID0gJycgKQogICAgewogICAgICAgIGlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsJzAnKSA9PSAnMScpIHsKICAgICAgICAgICAgJHAxID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBBZGQgVXNlcnMnICk7CiAgICAgICAgICAgICRwMiA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IFVzZXJzJyApOwogICAgICAgICAgICAkcDMgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIFJlbW92ZSBVc2VycycgKTsKICAgICAgICAgICAgJHA0ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBBZGQgR3JvdXBzJyApOwogICAgICAgICAgICAkcDUgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIE1vZGlmeSBHcm91cHMnICk7CiAgICAgICAgICAgICRwNiA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IEdyb3VwIEFzc2lnbm1lbnRzJyApOwogICAgICAgICAgICAkcDcgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIFJlbW92ZSBHcm91cHMnICk7CiAgICAgICAgICAgICRwOCA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnICk7CiAgICAgICAgICAgICRwOSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IEZyb250RW5kVXNlclByb3BzJyApOwogICAgICAgICAgICAkcDEwID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgVGVtcGxhdGVzJyApOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHAxID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0FkZCBVc2VycycgKTsKICAgICAgICAgICAgJHAyID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBVc2VycycgKTsKICAgICAgICAgICAgJHAzID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ1JlbW92ZSBVc2VycycgKTsKICAgICAgICAgICAgJHA0ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0FkZCBHcm91cHMnICk7CiAgICAgICAgICAgICRwNSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgR3JvdXBzJyApOwogICAgICAgICAgICAkcDYgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTW9kaWZ5IEdyb3VwIEFzc2lnbm1lbnRzJyApOwogICAgICAgICAgICAkcDcgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnUmVtb3ZlIEdyb3VwcycgKTsKICAgICAgICAgICAgJHA4ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJyApOwogICAgICAgICAgICAkcDkgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTW9kaWZ5IEZyb250RW5kVXNlclByb3BzJyApOwogICAgICAgICAgICAkcDEwID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBUZW1wbGF0ZXMnICk7CiAgICAgICAgfQoKICAgICAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgJHJldCA9IDA7CiAgICAgICAgc3dpdGNoKCAkcGVybSApIHsKICAgICAgICBjYXNlICcnOiAgLy8gYW55IHBlcm1pc3Npb24KICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcgfHwgJHA4IHx8ICRwOSB8fCAkcDEwICk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICd1c2Vycyc6CiAgICAgICAgICAgICRyZXQgPSAoJHAxIHx8ICRwMiB8fCAkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnYWRkdXNlcic6CiAgICAgICAgICAgICRyZXQgPSAoJHAxKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2FkZHByb3AnOgogICAgICAgIGNhc2UgJ2FkZHByb3AyJzoKICAgICAgICBjYXNlICdlZGl0cHJvcCc6CiAgICAgICAgY2FzZSAnZGVsZXRlcHJvcCc6CiAgICAgICAgICAgICRyZXQgPSAoJHA5KSAmJiAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUUFJPUFMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAncHJvcGVydGllcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA5KSAmJiAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9MSVNUUFJPUFMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnbGlzdHVzZXJzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDIgfHwgJHAzKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2xpc3Rncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNSB8fCAkcDYpICYmCiAgICAgICAgICAgICAgICAoJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSB8fCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNCB8fCAkcDUgfHwgJHA3KSAmJgogICAgICAgICAgICAgICAgKCRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUykgfHwgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfTElTVEdST1VQUykpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnYWRkZ3JvdXAnOgogICAgICAgICAgICAkcmV0ID0gKCRwNCkgJiYgKCRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUykgfHwgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUykpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnc3RyaWN0X2VkaXRncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNSB8fCAkcDYpICYmICgkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERHUk9VUFMpIHx8ICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRHUk9VUFMpKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2VkaXRncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNSB8fCAkcDYpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUywkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUywkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUFJPUFMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnZWRpdHVzZXJzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDIpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAncmVtb3ZlZ3JvdXBzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDcpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUywkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdyZW1vdmV1c2Vycyc6CiAgICAgICAgICAgICRyZXQgPSAoJHAzKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2VkaXRwcmVmcyc6CiAgICAgICAgY2FzZSAnc2l0ZXByZWZzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDgpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAndXNlcnNuZ3JvdXBzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAndGVtcGxhdGVzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDEwKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICRyZXQgPSAwOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CgogICAgICAgIHJldHVybiAkcmV0OwogICAgfQoKICAgIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVGVtcGxhdGVzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBBZGQgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBSZW1vdmUgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBBZGQgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IEdyb3VwcycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdSZW1vdmUgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignUmVtb3ZlIFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICAgIH0KICAgIH0KCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZT0nJykKICAgIHsKICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9lcnJvcicsICR0aGlzLT5MYW5nKCdlcnJvcicpKTsKICAgICAgICBpZiAoJG1lc3NhZ2UgIT0gJycpICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsICRtZXNzYWdlKTsKCiAgICAgICAgLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCiAgICAgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsKICAgIH0KCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0RvVXNlckFjdGlvbiggJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKICAgIHsKICAgICAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICAgICAgJGZvcm0gPSAnbG9naW4nOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydmb3JtJ10pICkgJGZvcm0gPSAkcGFyYW1zWydmb3JtJ107CgogICAgICAgIGlmKCAhaXNzZXQoJHBhcmFtc1snZm9ybSddKSkgewogICAgICAgICAgICAkdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgICAgICAgICAgaWYoICR1aWQgPD0gMCApIHsKICAgICAgICAgICAgICAgICRmb3JtID0gJ2xvZ2luJzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRmb3JtID0gJ2xvZ291dCc7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgIHN3aXRjaCggJGZvcm0gKSB7CiAgICAgICAgY2FzZSAnbG9naW4nOgogICAgICAgICAgICBpbmNsdWRlIF9fRElSX18uJy9mdW5jdGlvbi51c2VyX2xvZ2luZm9ybS5waHAnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdsb2dvdXQnOgogICAgICAgICAgICBpbmNsdWRlIF9fRElSX18uJy9mdW5jdGlvbi51c2VyX2xvZ291dGZvcm0ucGhwJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbG9zdHVzZXJuYW1lJzoKICAgICAgICAgICAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uZGVmYXVsdF9sb3N0dXNlcm5hbWVmb3JtLnBocCcpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdmb3Jnb3Rwdyc6CiAgICAgICAgICAgIGluY2x1ZGUoX19ESVJfXy4nL2Z1bmN0aW9uLnVzZXJfZm9yZ290cGFzc3dvcmQucGhwJyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2NoYW5nZXNldHRpbmdzJzoKICAgICAgICAgICAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24udXNlcl9jaGFuZ2VzZXR0aW5ncy5waHAnKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnc2lsZW50JzoKICAgICAgICAgICAgJHRoaXMtPl9FeHBvcnRMb2dnZWRJblVzZXJWYXJpYWJsZXMoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0Rpc3BsYXlBZG1pblVzZXJQYWdlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogICAgewogICAgICAgICRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKICAgICAgICAvLyBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKICAgICAgICAkZWRpdGluZyA9IDA7CiAgICAgICAgJGhpZGRlbiA9IGFycmF5KCk7CiAgICAgICAgJHVzZXJuYW1lID0gJyc7CiAgICAgICAgJHBhc3N3b3JkID0gJyc7CiAgICAgICAgJHJlcGVhdHBhc3N3b3JkID0gJyc7CiAgICAgICAgJGV4cGlyZXMgPSAnJzsKICAgICAgICAkdWluZm8gPSBudWxsOwoKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKSAkaGlkZGVuWydyZXR1cm50byddID0gJHBhcmFtc1sncmV0dXJudG8nXTsKICAgICAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2FjdGlvbiddICkgJiYgKCRwYXJhbXNbJ2FjdGlvbiddID09ICdlZGl0dXNlcid8fCAkcGFyYW1zWydhY3Rpb24nXSA9PSAnZG9fZWRpdHVzZXIxJyApICkgewogICAgICAgICAgICAkZWRpdGluZyA9IDE7CiAgICAgICAgICAgICRoaWRkZW5bJ3VzZXJfaWQnXSA9ICRwYXJhbXNbJ3VzZXJfaWQnXTsKICAgICAgICAgICAgJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCRwYXJhbXNbJ3VzZXJfaWQnXSk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnZWRpdHVzZXInKSk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fZWRpdHVzZXIxJywkcmV0dXJuaWQpKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnYWRkdXNlcicpKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdkb19hZGR1c2VyMScsJHJldHVybmlkKSk7CiAgICAgICAgfQoKICAgICAgICBpZiggIWVtcHR5KCRoaWRkZW4pICkgewogICAgICAgICAgICAkdHh0ID0gJyc7CiAgICAgICAgICAgIGZvcmVhY2goICRoaWRkZW4gYXMgJGtleSA9PiAkdmFsdWUgKSB7CiAgICAgICAgICAgICAgICAkdHh0IC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJGtleSwkdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbignaGlkZGVuJywkdHh0KTsKICAgICAgICB9CgogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydlcnJvciddKSApICRzbWFydHktPmFzc2lnbignZXJyb3InLCRwYXJhbXNbJ2Vycm9yJ10pOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydtZXNzYWdlJ10pICkgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkcGFyYW1zWydtZXNzYWdlJ10pOwoKICAgICAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZV9yYW5kb211c2VybmFtZScsMCkgPT0gMSApICR1c2VybmFtZSA9ICR0aGlzLT5HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pICkgICR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pICkgJHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddKTsKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSkgKSAkcmVwZWF0cGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3JlcGVhdHBhc3N3b3JkJ10pOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9leHBpcmVzJ10pICkgJGV4cGlyZXMgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2V4cGlyZXMnXSk7CgogICAgICAgICRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwogICAgICAgICRzbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsICR0aGlzLT5MYW5nKCduZXh0JykpKTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKCiAgICAgICAgJGF1dGhfY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgJGFkZHRleHQgPSAnJzsKICAgICAgICBpZiggJGVkaXRpbmcgJiYgJHVpbmZvWzFdWydub25zdGQnXSApIHsKICAgICAgICAgICAgJGFkZHRleHQgPSAncmVhZG9ubHk9InJlYWRvbmx5Iic7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigndXNlcm5hbWVfcmVhZG9ubHknLDEpOwogICAgICAgIH0KICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZScsJGF1dGhfY29uc3VtZXItPmdldF91c2VybmFtZV9wcm9tcHQoKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZScsCiAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdpbnB1dF91c2VybmFtZScsJHVzZXJuYW1lLAogICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpLAogICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSwKICAgICAgICAkYWRkdGV4dCkpOwoKICAgICAgICAkYWRkdGV4dCA9ICcnOwogICAgICAgIGlmKCAkZWRpdGluZyAmJiAkdWluZm9bMV1bJ25vbnN0ZCddICkgewogICAgICAgICAgICAkYWRkdGV4dCA9ICdyZWFkb25seT0icmVhZG9ubHkiJzsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwYXNzd29yZF9yZWFkb25seScsMSk7CiAgICAgICAgfQogICAgICAgICRzbWFydHktPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywkdGhpcy0+TGFuZygncGFzc3dvcmQnKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9wYXNzd29yZCcsCiAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnaW5wdXRfcGFzc3dvcmQnLCAkcGFzc3dvcmQsCiAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpLAogICAgICAgICRhZGR0ZXh0KSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVwZWF0cGFzc3dvcmQnLCR0aGlzLT5MYW5nICgncmVwZWF0cGFzc3dvcmQnKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZXBlYXRwYXNzd29yZCcsCiAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLCAkcmVwZWF0cGFzc3dvcmQsCiAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpLAogICAgICAgICRhZGR0ZXh0KSk7CgogICAgICAgIGlmKCAkZWRpdGluZyA9PSAxICkgewogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2luZm9fcGFzc3dvcmQnLCR0aGlzLT5MYW5nKCdpbmZvX2FkbWluX3Bhc3N3b3JkJykpOwogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2luZm9fcmVwZWF0cGFzc3dvcmQnLCR0aGlzLT5MYW5nKCdpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJykpOwogICAgICAgIH0KCiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZXhwaXJlcycsJHRoaXMtPkxhbmcoJ2V4cGlyZXMnKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdleHBpcmVzX2RhdGVwcmVmaXgnLCRpZC4nZXhwaXJlc2RhdGVfJyk7CiAgICAgICAgJHRtcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdleHBpcmVhZ2VfbW9udGhzJyw1MjApOwogICAgICAgICRleHBpcmVzZGF0ZSA9IHN0cnRvdGltZSgiK3skdG1wfSBtb250aHMiLCB0aW1lKCkpOwogICAgICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXSApICkgJGV4cGlyZXNkYXRlID0gJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24gKCdleHBpcmVzZGF0ZScsICRleHBpcmVzZGF0ZSApOwoKICAgICAgICAvLyBkaXNwbGF5IGFuZCBlZGl0IGdyb3VwcwogICAgICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnc3RyaWN0X2VkaXRncm91cHMnKSApIHsKICAgICAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ21lbWJlcm9mJ10gKSApIHsKICAgICAgICAgICAgICAgICR0bXAgPSAoaW50KSRwYXJhbXNbJ21lbWJlcm9mJ107CiAgICAgICAgICAgICAgICAkcGFyYW1zWydtZW1iZXJvZl8nLiR0bXBdID0gMTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gbm93IGRpc3BsYXkgYSBsaXN0IG9mIGdyb3VwcyB0aGF0IHRoaXMgdXNlciBtYXkgb3B0aW9uYWxseSBiZSBpbgogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oICdpZHRleHQnLCAkdGhpcy0+TGFuZygnaWQnKSApOwogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oICduYW1ldGV4dCcsICR0aGlzLT5MYW5nKCduYW1lJykgKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCAnZGVzY3RleHQnLCAkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSApOwoKICAgICAgICAgICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRHcm91cExpc3RGdWxsKCk7CiAgICAgICAgICAgICRjaGVja2VkID0gLTE7CiAgICAgICAgICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcpICYmICBjb3VudCgkZ3JvdXBzKSA9PSAxICkgewogICAgICAgICAgICAgICAgJGtleXMgPSBhcnJheV9rZXlzKCRncm91cHMpOwogICAgICAgICAgICAgICAgJGNoZWNrZWQgPSAka2V5c1swXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHJvd2FycmF5ID0gYXJyYXkoKTsKICAgICAgICAgICAgJHJvd2NsYXNzID0gJ3JvdzEnOwogICAgICAgICAgICBmb3JlYWNoKCAkZ3JvdXBzIGFzICRncm91cCApIHsKICAgICAgICAgICAgICAgICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKICAgICAgICAgICAgICAgICRvbmVyb3ctPmlkID0gJGdyb3VwWydpZCddOwogICAgICAgICAgICAgICAgJG9uZXJvdy0+bmFtZSA9ICRncm91cFsnZ3JvdXBuYW1lJ107CiAgICAgICAgICAgICAgICAkb25lcm93LT5kZXNjID0gJGdyb3VwWydncm91cGRlc2MnXTsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydtZW1iZXJvZl8nLiRncm91cFsnaWQnXV0pICkgJGNoZWNrZWQgPSAkcGFyYW1zWydtZW1iZXJvZl8nLiRncm91cFsnaWQnXV07CiAgICAgICAgICAgICAgICAkb25lcm93LT5tZW1iZXIgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ21lbWJlcm9mXycuJGdyb3VwWydpZCddLCAkZ3JvdXBbJ2lkJ10sJGNoZWNrZWQpOwogICAgICAgICAgICAgICAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgogICAgICAgICAgICAgICAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICAgICAgICAgICAgICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJHJvd2FycmF5KTsKICAgICAgICB9CgogICAgICAgICRzbWFydHktPmFzc2lnbigncHJvcGFkZCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCggJGlkLCAncHJvcGFkZCcsJHRoaXMtPkxhbmcoJ2FkZCcpKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdncm91cHN0aXRsZScsICR0aGlzLT5MYW5nKCdncm91cHMnKSk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9wZXJ0aWVzdGl0bGUnLCAkdGhpcy0+TGFuZygncHJvcGVydGllcycpKTsKCiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9wcycsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdwcm9wcycsICR0aGlzLT5MYW5nKCdwcm9wZXJ0aWVzJykuIi4uLiIpKTsKICAgICAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkZHVzZXIxLnRwbCcpOwogICAgfQoKICAgIGZ1bmN0aW9uIERvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkID0gLTEpCiAgICB7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9lbmMnXSkgKSB7CiAgICAgICAgICAgIC8vIHJlc3RvcmUgcGFyYW1ldGVycyBzYXZlZCBpbiB0aGUgc2Vzc2lvbiBvbiByZWRpcmVjdC4KICAgICAgICAgICAgJHNpZyA9ICRwYXJhbXNbJ2ZldV9lbmMnXTsKICAgICAgICAgICAgaWYoIGlzc2V0KCRfU0VTU0lPTlskc2lnXSkgKSB7CiAgICAgICAgICAgICAgICAkdG1wID0gJF9TRVNTSU9OWyRzaWddOwogICAgICAgICAgICAgICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCR0bXAsJHBhcmFtcyk7CiAgICAgICAgICAgICAgICB1bnNldCgkX1NFU1NJT05bJHNpZ10pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHVuc2V0KCRwYXJhbXNbJ2ZldV9lbmMnXSk7CiAgICAgICAgfQoKICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdmZXVhY3Rpb25pZCcsJGlkKTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2ZldWFjdGlvbnBhcmFtcycsJHBhcmFtcyk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdtb2QnLCR0aGlzKTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJHRoaXMtPkdldE5hbWUoKSwkdGhpcyk7CgogICAgICAgIHN3aXRjaCAoJGFjdGlvbikgewogICAgICAgIGNhc2UgJ2NoYW5nZXNldHRpbmdzX3VybCc6CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdjaGFuZ2VzZXR0aW5ncyc6CiAgICAgICAgICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICRhY3Rpb247CiAgICAgICAgICAgICR0aGlzLT5fRG9Vc2VyQWN0aW9uKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnbG9zdHVzZXJuYW1lJzoKICAgICAgICBjYXNlICdmb3Jnb3Rwdyc6CiAgICAgICAgICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICRhY3Rpb247CiAgICAgICAgICAgICR0aGlzLT5fRG9Vc2VyQWN0aW9uKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAiZGVmYXVsdCI6CiAgICAgICAgICAgICR0aGlzLT5fRG9Vc2VyQWN0aW9uKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnZWRpdHVzZXInOgogICAgICAgICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICdlZGl0dXNlcnMnICkgKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+X0Rpc3BsYXlBZG1pbkVkaXRVc2VyU3RlcDFQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdhZG1pbl9idWxrYWN0aW9ucyc6CiAgICAgICAgY2FzZSAnYWRtaW5faW1wb3J0Z3JvdXAnOgogICAgICAgIGNhc2UgJ2FkbWluX2V4cG9ydGdyb3VwJzoKICAgICAgICBjYXNlICdhZG1pbl9sb2dvdXQnOgogICAgICAgIGNhc2UgJ2FkbWluX3NldHZpZXd1c2VyX3RlbXBsYXRlJzoKICAgICAgICBjYXNlICdhZG1pbl9zZXRsb3N0dW5fdGVtcGxhdGUnOgogICAgICAgIGNhc2UgJ2FkZGdyb3VwJzoKICAgICAgICBjYXNlICdhZGR1c2VyJzoKICAgICAgICBjYXNlICdhZGRwcm9wJzoKICAgICAgICBjYXNlICdkZWZhdWx0YWRtaW4nOgogICAgICAgIGNhc2UgJ2RvX2RlbGV0ZXByb3AnOgogICAgICAgIGNhc2UgJ2RvX2RlbGV0ZWdyb3VwJzoKICAgICAgICBjYXNlICdkb19sb2dpbic6CiAgICAgICAgY2FzZSAnZG9fYWRkdXNlcjEnOgogICAgICAgIGNhc2UgJ2RvX2FkZHVzZXIzJzoKICAgICAgICBjYXNlICdkb19kZWxldGV1c2VyJzoKICAgICAgICBjYXNlICdkb19hZGRncm91cCc6CiAgICAgICAgY2FzZSAnZG9fZWRpdHVzZXIzJzoKICAgICAgICBjYXNlICdkb191c2VyY2hhbmdlc2V0dGluZ3MnOgogICAgICAgIGNhc2UgJ2RvX2ZvcmdvdHB3JzoKICAgICAgICBjYXNlICdkb19zZXRwcmVmcyc6CiAgICAgICAgY2FzZSAnZG9fZWRpdHVzZXIxJzoKICAgICAgICBjYXNlICdkb19hZG1pbnRhc2tzJzoKICAgICAgICBjYXNlICdkb19sb3N0dXNlcm5hbWUnOgogICAgICAgIGNhc2UgJ2RvX3ZlcmlmeWNvZGUnOgogICAgICAgIGNhc2UgJ2xvZ291dCc6CiAgICAgICAgY2FzZSAndXNlcmhpc3RvcnknOgogICAgICAgIGNhc2UgJ3ZlcmlmeWNvZGUnOgogICAgICAgIGNhc2UgJ3ZpZXd1c2VyJzoKICAgICAgICBjYXNlICdkb19lZGl0dXNlcjInOgogICAgICAgIGNhc2UgJ2RvX2FkZHVzZXIyJzoKICAgICAgICBjYXNlICdkb19zZXRmb3Jnb3Rwd3RlbXBsYXRlJzoKICAgICAgICBjYXNlICdkb19zZXRsb2dpbnRlbXBsYXRlJzoKICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICBwYXJlbnQ6OkRvQWN0aW9uKCRhY3Rpb24sJGlkLCRwYXJhbXMsJHJldHVybmlkKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQoKCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0Rpc3BsYXlBZG1pbkVkaXRVc2VyU3RlcDFQYWdlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogICAgewogICAgICAgIGlmKCAhaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkgewogICAgICAgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgLy8gbm93IGdldCB0aGUgdXNlciBpbmZvCiAgICAgICAgJHVzZXIgPSAkdGhpcy0+R2V0VXNlckluZm8oICRwYXJhbXNbJ3VzZXJfaWQnXSApOwogICAgICAgIGlmKCAkdXNlclswXSA9PSBmYWxzZSApIHsKICAgICAgICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHVzZXJbMV0gKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICAkdXNlciA9ICR1c2VyWzFdOwoKICAgICAgICAvLyBnZXQgdGhlIHVzZXIgcHJvcGVydGllcwogICAgICAgICR0aGlzLT5TZXRFbmNyeXB0aW9uS2V5KCRwYXJhbXNbJ3VzZXJfaWQnXSk7CiAgICAgICAgJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKCiAgICAgICAgLy8gZ2V0IHRoZSBncm91cCBtZW1iZXJzaGlwcwogICAgICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICRwYXJhbXNbJ3VzZXJfaWQnXSApOwoKICAgICAgICAvLyBwb3B1bGF0ZSB0aGUgcGFyYW1zIHdpdGggdGhlIGFwcHJvcHJpYXRlIHN0dWZmCiAgICAgICAgLy8gdGhhdCB3ZSBqdXN0IGxvYWRlZAogICAgICAgICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gPSAkdXNlclsndXNlcm5hbWUnXTsKICAgICAgICAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddID0gJHVzZXJbJ2V4cGlyZXMnXTsKICAgICAgICAkdXNlcnByb3BzID0gJyc7CiAgICAgICAgaWYoIGlzX2FycmF5KCRwcm9wcykgJiYgY291bnQoJHByb3BzKSApIHsKICAgICAgICAgICAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkgewogICAgICAgICAgICAgICAgaWYoICR1c2VycHJvcHMgPT0gJycgKSB7CiAgICAgICAgICAgICAgICAgICAgJHVzZXJwcm9wcyA9ICRwcm9wWyd0aXRsZSddLiI9Ii4kcHJvcFsnZGF0YSddOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJHVzZXJwcm9wcyAuPSAiLCIuJHByb3BbJ3RpdGxlJ10uIj0iLiRwcm9wWydkYXRhJ107CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgJHBhcmFtc1sndXNlcnByb3BzJ10gPSAkdXNlcnByb3BzOwoKICAgICAgICAkbWVtYmVyb2YgPSAnJzsKICAgICAgICBpZiggJGdyb3VwcyAhPSBmYWxzZSApIHsKICAgICAgICAgICAgZm9yZWFjaCggJGdyb3VwcyBhcyAkZ3JvdXAgKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydtZW1iZXJvZl8nLiRncm91cFsnZ3JvdXBpZCddXSA9ICRncm91cFsnZ3JvdXBpZCddOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBhbmQgZGlzcGxheSB0aGUgdXNlciBwYWdlCiAgICAgICAgLy8gdG9kbywgcHV0IGEgcmVkaXJlY3QgaGVyZQogICAgICAgICR0aGlzLT5fRGlzcGxheUFkbWluVXNlclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CiAgICB9CgoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBfaGFuZGxlVXNlckluZm9WYWxpZGF0aW9uKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICYkbWVzc2FnZSwgJG5lZWRwdyA9IHRydWUsCiAgICAkZG9leHBpcmUgPSB0cnVlLCAkY2hlY2t1c2VybmFtZSA9IHRydWUgKQogICAgewogICAgICAgIC8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiAgICAgICAgJHVzZXJuYW1lID0gdHJpbSgkcGFyYW1zWydpbnB1dF91c2VybmFtZSddKTsKICAgICAgICAkcGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pOwogICAgICAgICRyZXBlYXQgICA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CiAgICAgICAgJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwoKICAgICAgICAvLyBtYWtlIHN1cmUgdGhlIHVzZXJuYW1lIGZpdHMgdGhlIHJ1bGVzCiAgICAgICAgaWYoICRjaGVja3VzZXJuYW1lICkgewogICAgICAgICAgICAkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXNlcm5hbWUnKTsKICAgICAgICAgICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcsMCkgPT0gMSAmJiBnZXRfY2xhc3MoJGNvbnN1bWVyKSA9PSAnZmV1X3N0ZF9jb25zdW1lcicgKSB7CiAgICAgICAgICAgICAgICAkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJyk7CiAgICAgICAgICAgICAgICBpZiggc3RycG9zKCR1c2VybmFtZSwnQCcpID09IGZhbHNlICkgcmV0dXJuIC0xOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPklzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lICkgKSByZXR1cm4gLTE7CiAgICAgICAgfQoKICAgICAgICBpZiggJHVzZXJuYW1lID09ICcnCiAgICAgICAgfHwgKCRuZWVkcHcgJiYgKCRwYXNzd29yZCA9PSAnJyB8fCAkcmVwZWF0ID09ICcnKSkgICkgewogICAgICAgICAgICAvL2RpZSgiJHVzZXJuYW1lLCAkbmVlZHB3LCAkcGFzc3dvcmQsICRyZXBlYXQiKTsKICAgICAgICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwogICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgfQoKICAgICAgICAvLyBtYWtlIHN1cmUgdGhlIHBhc3N3b3JkcyBtYXRjaAogICAgICAgIGlmKCAkcGFzc3dvcmQgIT0gJHJlcGVhdCApIHsKICAgICAgICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCcpOwogICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgfQoKICAgICAgICAvLyBtYWtlIHN1cmUgdGhlIHBhc3N3b3JkIGZpdHMgdGhlIHJ1bGVzCiAgICAgICAgaWYoICRuZWVkcHcgJiYgISR0aGlzLT5Jc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApICkgewogICAgICAgICAgICAkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkcGFzc3dvcmQnKTsKICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KCiAgICAgICAgaWYoICRkb2V4cGlyZSA9PSBmYWxzZSApIHJldHVybiAxOwoKICAgICAgICAvLyBtYWtlIHN1cmUgYW4gZXhwaXJ5IGRhdGUgaXMgc2V0CiAgICAgICAgaWYoICFpc3NldCgkcGFyYW1zWydleHBpcmVzZGF0ZV9Nb250aCddKSApIHsKICAgICAgICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnKTsKICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KCiAgICAgICAgJGV4cGlyZXMgPSBta3RpbWUoMjMsNTksNTksJHBhcmFtc1snZXhwaXJlc2RhdGVfTW9udGgnXSwgJHBhcmFtc1snZXhwaXJlc2RhdGVfRGF5J10sICRwYXJhbXNbJ2V4cGlyZXNkYXRlX1llYXInXSk7CiAgICAgICAgaWYoICEkZXhwaXJlcyApIHsKICAgICAgICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnKTsKICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgIH0KICAgICAgICAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddID0gJGV4cGlyZXM7CiAgICAgICAgcmV0dXJuIDE7CiAgICB9CgogICAgZnVuY3Rpb24gbXlSZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAkcmV0dXJuaWQsICRwYXJhbXMgPSBhcnJheSgpLCAkaWdub3JlX3JldHVybnRvID0gZmFsc2UgKQogICAgewogICAgICAgIC8vIGZpbmQgYW55IHBhcmFtZXRlciB2YWx1ZXMgdGhhdCBhcmUgYXJyYXlzCiAgICAgICAgLy8gYXV0b21hdGljYWxseSBzdG9yZSB0aGlzIGRhdGEgaW4gdGhlIHNlc3Npb24KICAgICAgICB1bnNldCgkcGFyYW1zWydhY3Rpb24nXSk7CgogICAgICAgICR0bXAgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2goJHBhcmFtcyBhcyAka2V5ID0+ICR2YWwpIHsKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCR2YWwpICkgewogICAgICAgICAgICAgICAgJHRtcFska2V5XSA9ICR2YWw7CiAgICAgICAgICAgICAgICB1bnNldCgkcGFyYW1zWyRrZXldKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiggY291bnQoJHRtcCkgKSB7CiAgICAgICAgICAgICRzaWcgPSBtZDUoc2VyaWFsaXplKCR0bXApKTsKICAgICAgICAgICAgJF9TRVNTSU9OWyRzaWddID0gJHRtcDsKICAgICAgICAgICAgJHBhcmFtc1snZmV1X2VuYyddID0gJHNpZzsKICAgICAgICB9CgogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydyZXR1cm50byddKSAmJiAhJGlnbm9yZV9yZXR1cm50bykgewogICAgICAgICAgICAvLyB0aGlzIGlzIHByb2JhYmx5IG5vdCBuZWVkZWQgYW55IG1vcmUuCiAgICAgICAgICAgIGxpc3QoJG1vZCwkYWN0KSA9IGV4cGxvZGUoJywnLCRwYXJhbXNbJ3JldHVybnRvJ10pOwogICAgICAgICAgICBkaWUoJ2FhMScpOwogICAgICAgICAgICAkdGhpcy0+TG9hZFJlZGlyZWN0TWV0aG9kcygpOwogICAgICAgICAgICAkbW9kb2JqID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCRtb2QpOwogICAgICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICAgICAgcmV0dXJuIGNtc19tb2R1bGVfUmVkaXJlY3QoJG1vZG9iaiwkaWQsJGFjdCwkcmV0dXJuaWQpOwogICAgICAgIH0KICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICB9CgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIGZlQ3JlYXRlRm9ybVN0YXJ0KCAkaWQsICRhY3Rpb24sICRyZXR1cm5pZCwgJGlubGluZT10cnVlLCAkbWV0aG9kPSdwb3N0JywgJGVuY3R5cGU9JycsICRpZHN1ZmZpeD0nJywgJHBhcmFtcyA9IGFycmF5KCkgKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwkYWN0aW9uLCRyZXR1cm5pZCwkbWV0aG9kLCRlbmN0eXBlLCRpbmxpbmUsJGlkc3VmZml4LCAkcGFyYW1zKTsKICAgIH0KCgogICAgZnVuY3Rpb24gR2V0SGVhZGVySFRNTCgpCiAgICB7CiAgICAgICAgJHRtcGwgPTw8PEVPVAp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSdyZXF1aXJlJyBsaWI9J3RhYmxlc29ydGVyLEpRdWVyeVRvb2xzJ30Ke0pRdWVyeVRvb2xzIGFjdGlvbj0ncGxhY2VtYXJrZXInfQpFT1Q7CgogICAgJG9iaiA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnSlF1ZXJ5VG9vbHMnLCcxLjInKTsKICAgIGlmKCBpc19vYmplY3QoJG9iaikgKSB7CiAgICAgICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgICAgIHJldHVybiAkc21hcnR5LT5mZXRjaCgnc3RyaW5nOicuJHRtcGwpOwogICAgfQogICAgfQoKCiAgICAvLyBzZW5kIGFuIGV2ZW50IHRoYXQgdGhpcyB1c2VyIGFjY291bnQgaGFzIGJlZW4gZXhwaXJlZAogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIE5vdGlmeUV4cGlyZWRVc2VyKCAkdXNlcmlkICkKICAgIHsKICAgICAgICAkdXNlciA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVzZXJpZCApOwogICAgICAgIGlmKCAkdXNlclswXSA9PSBGQUxTRSApIHJldHVybjsgLy8gdGhpcyBzaG91bGQgYmUgYW4gZXJyb3IKICAgICAgICAkcGFybXMgPSBhcnJheSgpOwogICAgICAgICRwYXJtc1snaWQnXSA9ICR1c2VyaWQ7CiAgICAgICAgJHBhcm1zWyd1c2VybmFtZSddID0gJHVzZXJbMV1bJ3VzZXJuYW1lJ107CiAgICAgICAgJHRoaXMtPlNlbmRFdmVudCgnT25FeHBpcmVVc2VyJywkcGFybXMpOwogICAgICAgICR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPbkV4cGlyZVVzZXInLCRwYXJtcyk7CiAgICB9CgoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBnZXRfdXBsb2FkX2Rpcm5hbWUoJHVpZCkKICAgIHsKICAgICAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICAgICAgJGNvbmZpZyA9ICRnQ21zLT5HZXRDb25maWcoKTsKICAgICAgICAkZG4gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKSk7CiAgICAgICAgcmV0dXJuICRkbjsKICAgIH0KCgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIE1hbmFnZUltYWdlVXBsb2FkKCRpZCwgJGZsZHByZWZpeCwgJGZsZG5hbWUsICR1aWQpCiAgICB7CiAgICAgICAgJGdDbXMgPSBjbXNtcygpOwoKICAgICAgICBpZiggIWlzc2V0KCRfRklMRVNbJGlkLiRmbGRwcmVmaXguJGZsZG5hbWVdKSB8fCAhaXNzZXQoICRfRklMRVMgKSApIHJldHVybiBhcnJheShmYWxzZSwkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ191cGxvYWQnKSk7CgogICAgICAgICRmaWxlID0mICRfRklMRVNbJGlkLiRmbGRwcmVmaXguJGZsZG5hbWVdOwogICAgICAgIGlmKCAhaXNzZXQoJGZpbGVbJ25hbWUnXSkgfHwgIWlzc2V0KCRmaWxlWydzaXplJ10pIHx8ICRmaWxlWydzaXplJ10gPT0gMCApIHJldHVybiBhcnJheShmYWxzZSwkdGhpcy0+TGFuZygnZXJyb3JfcHJvYmxlbV91cGxvYWQnKSk7CgogICAgICAgIGlmICghaXNzZXQgKCRmaWxlWyd0eXBlJ10pKSAkZmlsZVsndHlwZSddID0gJyc7CiAgICAgICAgaWYgKCFpc3NldCAoJGZpbGVbJ3NpemUnXSkpICRmaWxlWydzaXplJ10gPSAnJzsKICAgICAgICBpZiAoIWlzc2V0ICgkZmlsZVsndG1wX25hbWUnXSkpICRmaWxlWyd0bXBfbmFtZSddID0gJyc7CiAgICAgICAgJGZpbGVbJ25hbWUnXSA9CiAgICAgICAgICAgIHByZWdfcmVwbGFjZSgnL1teYS16QS1aMC05XC5cJFwlXCdcYFwtXEBce1x9XH5cIVwjXChcKVwmXF9cXl0vJywgJycsCiAgICAgICAgICAgIHN0cl9yZXBsYWNlIChhcnJheSAoJyAnLCAnJTIwJyksIGFycmF5ICgnXycsICdfJyksICRmaWxlWyduYW1lJ10pKTsKCiAgICAgICAgLy8gY2hlY2sgdGhlIGZpbGVuYW1lCiAgICAgICAgJGFsbG93ZWRfZXh0ZW5zaW9ucz0kdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJywnLmdpZiwucG5nLC5qcGcnKTsKICAgICAgICAkdG1wID0gZXhwbG9kZSggJywnLCAkYWxsb3dlZF9leHRlbnNpb25zKTsKICAgICAgICBpZiggIWlzX2FycmF5KCR0bXApICkgcmV0dXJuIGFycmF5KGZhbHNlLCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbicpKTsKICAgICAgICAkZm91bmQgPSBmYWxzZTsKICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRleHQgKSB7CiAgICAgICAgICAgIGlmKCBlbmRzd2l0aCggJGZpbGVbJ25hbWUnXSwgJGV4dCApICkgewogICAgICAgICAgICAgICAgJGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmKCAhJGZvdW5kICkgcmV0dXJuIGFycmF5KGZhbHNlLCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbicpKTsKCiAgICAgICAgLy8gc2V0IHRoZSBkZXN0aW5hdGlvbiBuYW1lCiAgICAgICAgJGV4dCA9IHN0cmNocigkZmlsZVsnbmFtZSddLCcuJyk7CiAgICAgICAgJGRlc3RuYW1lID0gJHVpZC4nXycuJGZsZG5hbWUuJGV4dDsKCiAgICAgICAgLy8gQ3JlYXRlIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgaWYgbmVjZXNzYXJ5CiAgICAgICAgJGRlc3REaXIgPSAkdGhpcy0+Z2V0X3VwbG9hZF9kaXJuYW1lKCR1aWQpOwogICAgICAgIEBta2RpcigkZGVzdERpcik7CiAgICAgICAgaWYoICFpc193cml0YWJsZSggJGRlc3REaXIgKSApIHJldHVybiBhcnJheShmYWxzZSwkdGhpcy0+TGFuZygnZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZScpKTsKICAgICAgICBAY21zX21vdmVfdXBsb2FkZWRfZmlsZSgkZmlsZVsndG1wX25hbWUnXSwgY21zX2pvaW5fcGF0aCgkZGVzdERpciwkZGVzdG5hbWUpKTsKCiAgICAgICAgcmV0dXJuIGFycmF5KHRydWUsJGRlc3RuYW1lKTsKICAgIH0KCgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9TZW5kTm90aWZpY2F0aW9uRW1haWwoJGV2ZW50LCRwYXJhbXMpCiAgICB7CiAgICAgICAgJG5vdGlmaWNhdGlvbnMgPSBleHBsb2RlKCcsJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9ucycsJycpKTsKICAgICAgICBpZiggIWluX2FycmF5KCAkZXZlbnQsICRub3RpZmljYXRpb25zICkgKSByZXR1cm47CiAgICAgICAgJGRlc3QgPSB0cmltKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fYWRkcmVzcycpKTsKICAgICAgICBpZiggZW1wdHkoJGRlc3QpICkgcmV0dXJuOwoKICAgICAgICAvLyBTZXR1cCBzb21lIHNtYXJ0eSBzdHVmZi4KICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdldmVudCcsJGV2ZW50KTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2V2ZW50X25hbWUnLCR0aGlzLT5MYW5nKCRldmVudCkpOwogICAgICAgICRzbWFydHktPmFzc2lnbigncGxhaW50ZXh0X2V2ZW50JywkdGhpcy0+TGFuZygnZXZlbnQnKSk7CiAgICAgICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwYXJhbV8nLiRrZXksJHZhbHVlKTsKICAgICAgICB9CiAgICAgICAgJHRleHQgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnKTsKCiAgICAgICAgJGNtc21haWxlciA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CiAgICAgICAgJGNtc21haWxlci0+cmVzZXQoKTsKICAgICAgICAkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCRkZXN0KTsKICAgICAgICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcpKTsKICAgICAgICAkY21zbWFpbGVyLT5TZXRCb2R5KCR0ZXh0KTsKICAgICAgICAkY21zbWFpbGVyLT5Jc0hUTUwoZmFsc2UpOwogICAgICAgICRjbXNtYWlsZXItPlNlbmQoKTsKICAgIH0KCgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIF9wYXJhbXNfdG9fc2Vzc2lvbigmJHBhcmFtcywgJGtleSA9ICdmZXVfcGFyYW1zJykKICAgIHsKICAgICAgICAkX1NFU1NJT05bJGtleV0gPSAkcGFyYW1zOwogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBfc2Vzc2lvbl90b19wYXJhbXMoJGtleSA9ICdmZXVfcGFyYW1zJykKICAgIHsKICAgICAgICBpZiggIWlzc2V0KCRfU0VTU0lPTlska2V5XSkgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgJHRtcCA9ICRfU0VTU0lPTlska2V5XTsKICAgICAgICB1bnNldCgkX1NFU1NJT05bJGtleV0pOwogICAgICAgIHJldHVybiAkdG1wOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRQb3N0TG9naW5VUkwoJHVybCkKICAgIHsKICAgICAgICBpZiggJHVybCApICR0aGlzLT5zZXNzaW9uX3B1dCgncG9zdGxvZ2luX3VybCcsJHVybCk7CiAgICB9CgogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAvLyAgQVBJIEZVTkNUSU9OUyAvLwogICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogICAgZnVuY3Rpb24gYWRkX2hpc3RvcnkoICR1aWQsICRtZXNzYWdlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+YWRkX2hpc3RvcnkoICR1aWQsICRtZXNzYWdlICk7CiAgICB9CgogICAgZnVuY3Rpb24gQWRkR3JvdXAoICRuYW1lLCAkZGVzY3JpcHRpb24gKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRHcm91cCggJG5hbWUsICRkZXNjcmlwdGlvbiApOwogICAgfQoKCiAgICBmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUsICRzb3J0a2V5LCAkbG9zdHVuLCAkdmFsICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEFkZFByb3BlcnR5RGVmbiggJG5hbWUsICRwcm9tcHQsICR0eXBlLCAkbGVuZ3RoLCAkbWF4bGVuZ3RoID0gMCwgJGF0dHJpYnMgPSAnJywgJGZvcmNlX3VuaXF1ZSA9IDAsICRlbmNyeXB0ID0gMCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZFByb3BlcnR5RGVmbiggJG5hbWUsICRwcm9tcHQsICR0eXBlLCAkbGVuZ3RoLCAkbWF4bGVuZ3RoLCAkYXR0cmlicywgJGZvcmNlX3VuaXF1ZSwgJGVuY3J5cHQgICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEFkZFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkc2Vsb3B0aW9ucyApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkc2Vsb3B0aW9ucyApOwogICAgfQoKCiAgICBmdW5jdGlvbiBBZGRVc2VyKCAkbmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcywgJGRvX21kNSA9IHRydWUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRVc2VyKCAkbmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcywgJGRvX21kNSApOwogICAgfQoKCiAgICBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFzc2lnblVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIENoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCwkZ3JvdXBzID0gJycsJG1kNXB3ID0gZmFsc2UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCwkZ3JvdXBzLCRtZDVwdyk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIENvdW50VGVtcENvZGVSZWNvcmRzKCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q291bnRUZW1wQ29kZVJlY29yZHMoKTsKICAgIH0KCgogICAgZnVuY3Rpb24gQ291bnRVc2Vyc0luR3JvdXAoICRnaWQgPSAnJyApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNvdW50VXNlcnNJbkdyb3VwKCAkZ2lkICk7CiAgICB9CgoKICAgIC8qIHdoYXQncyB0aGlzPyAqLwogICAgZnVuY3Rpb24gRGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQsICRwcm9wbmFtZSApOwogICAgfQoKCiAgICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lLCAkZnVsbCA9IEZBTFNFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSwgJGZ1bGwgKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZucygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZVByb3BlcnR5RGVmbnMoKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVTZWxlY3RPcHRpb25zKCAkbmFtZSApOwogICAgfQoKCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyRnVsbCggJHVpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZVVzZXJGdWxsKCAkdWlkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSggJHRpdGxlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlVXNlclByb3BlcnR5QnlOYW1lKCR0aXRsZSk7CiAgICB9CgogICAgLypXaGF0IGlzIHRoaXM/Ki8KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eSgkdGl0bGUsJGFsbD1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlVXNlclByb3BlcnR5KCR0aXRsZSwkYWxsKTsKICAgIH0KCiAgICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCk7CiAgICB9CgogICAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgkdXNlcmlkKTsKICAgIH0KCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCRhbGw9ZmFsc2UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbCk7CiAgICB9CgogICAgZnVuY3Rpb24gRGVsZXRlR3JvdXBGdWxsKCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlR3JvdXBGdWxsKCAkZ2lkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXIoJGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyKCAkaWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBFeHBpcmVVc2VycygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkV4cGlyZVVzZXJzKCk7CiAgICB9CgogICAgZnVuY3Rpb24gRXhwaXJlVGVtcENvZGVzKCAkZXhwaXJ5Y29kZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkV4cGlyZVRlbXBDb2RlcyggJGV4cGlyeWNvZGUgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCAkcHJlZml4ID0gJ3VzZXInICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2VuZXJhdGVSYW5kb21Vc2VybmFtZSggJHByZWZpeCApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRlZmF1bHR2YWx1ZT1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclByb3BlcnR5KCAkdGl0bGUsICRkZWZhdWx0dmFsdWUgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCAkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCRkZWZhdWx0dmFsdWUpOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJUZW1wQ29kZSggJHVpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJUZW1wQ29kZSggJHVpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoICR0aXRsZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoICR0aXRsZSApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eVJlbGF0aW9ucygkdWlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VyUHJvcGVydHlSZWxhdGlvbnMoICR1aWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRHcm91cEluZm8oICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cEluZm8oICRnaWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRVc2VySGlzdG9yeSggJHVpZCwgJGFjdGlvbiA9ICcnLCAkY291bnQgPSAtMSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJIaXN0b3J5KCR1aWQsJGFjdGlvbiwkY291bnQpOwogICAgfQoKCiAgICBmdW5jdGlvbiBHZXRMb2dnZWRJblVzZXJzKCAkbm90X2FjdGl2ZV9zaW5jZSA9ICcnICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0TG9nZ2VkSW5Vc2Vycygkbm90X2FjdGl2ZV9zaW5jZSk7CiAgICB9CgogICAgLy8gZGVwcmVjYXRlZAogICAgZnVuY3Rpb24gR2V0QnVsa1VzZXJJbmZvKCAkdWlkcywgJGRlZXAgPSBUUlVFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0QnVsa1VzZXJJbmZvKCR1aWRzLCRkZWVwKTsKICAgIH0KCgogICAgZnVuY3Rpb24gR2V0VXNlckluZm8oICR1aWQsICRkZWVwID0gRkFMU0UgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VySW5mbyggJHVpZCwgJGRlZXAgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRVc2VySW5mb0J5TmFtZSggJHVzZXJuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckluZm9CeU5hbWUoICR1c2VybmFtZSApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJJbmZvQnlQcm9wZXJ0eSggJHByb3BuYW1lLCAkcHJvcHZhbHVlID0gbnVsbCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJJbmZvQnlQcm9wZXJ0eSggJHByb3BuYW1lLCAkcHJvcHZhbHVlICk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0RnVsbFVzZXJzSW5Hcm91cCgkZ2lkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRGdWxsVXNlcnNJbkdyb3VwKCRnaWQpOwogICAgfQoKICAgIC8vIGRlcHJlY2F0ZWQKICAgIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnLCAkcmVnZXggPSAnJywgJGxpbWl0ID0gJycsICRzb3J0ID0gJycsCiAgICAkcHJvcGVydHkgPSAnJywgJHByb3ByZWdleCA9ICcnLCAkbG9nZ2VkaW5vbmx5ID0gMCwgJHN0YXJ0X3JlY29yZCA9IDApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJzSW5Hcm91cCggJGdpZCwgJHJlZ2V4LCAkbGltaXQsICRzb3J0LCAkcHJvcGVydHksICRwcm9wcmVnZXgsICRsb2dnZWRpbm9ubHksICRzdGFydF9yZWNvcmQgKTsKICAgIH0KCiAgICAvLyBkZXByZWNhdGVkCiAgICBmdW5jdGlvbiBnZXRfbGFzdHVzZXJxdWVyeV9tYXRjaGVzKCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Z2V0X2xhc3R1c2VycXVlcnlfbWF0Y2hlcygpOwogICAgfQoKICAgIC8vIGRlcHJlY2F0ZWQKICAgIGZ1bmN0aW9uIGdldF9sYXN0dXNlcnF1ZXJ5X2NvdW50KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Z2V0X2xhc3R1c2VycXVlcnlfY291bnQoKTsKICAgIH0KCiAgICAvLyBkZXByZWNhdGVkCiAgICBmdW5jdGlvbiByZXNldF9sYXN0dXNlcnF1ZXJ5KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+cmVzZXRfbGFzdHVzZXJxdWVyeSgpOwogICAgfQoKICAgIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlJRCggJGdpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdyb3VwRXhpc3RzQnlJRCggJGdpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlOYW1lKCAkbmFtZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdyb3VwRXhpc3RzQnlOYW1lKCAkbmFtZSApOwogICAgfQoKICAgIGZ1bmN0aW9uIExvZ2dlZEluRW1haWwoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dnZWRJbkVtYWlsKCk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0RW1haWwoJHVpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RW1haWwoJHVpZCk7CiAgICB9CgogICAgZnVuY3Rpb24gQ2xlYXJQcm9wZXJ0eUNhY2hlKCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q2xlYXJQcm9wZXJ0eUNhY2hlKCk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRQcm9wZXJ0eURlZm4oICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0UHJvcGVydHlEZWZuKCAkbmFtZSApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkZGltID0gMSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkZGltICk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0VXNlck5hbWUoJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlck5hbWUoJHVzZXJpZCk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0VXNlcklEKCR1c2VybmFtZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcklEKCR1c2VybmFtZSk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0R3JvdXBOYW1lKCRncm91cGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cE5hbWUoICRncm91cGlkICk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0R3JvdXBEZXNjKCRncm91cGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cERlc2MoICRncm91cGlkICk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBMaXN0KCk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdEZ1bGwoJHdpdGhfY291bnQgPSBGQUxTRSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBMaXN0RnVsbCgkd2l0aF9jb3VudCk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cElEKCAkZ3JvdXBuYW1lICk7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldE1lbWJlckdyb3VwcygkdXNlcmlkKTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRFeHBpcnlEYXRlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RXhwaXJ5RGF0ZSggJHVpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIElzQWNjb3VudEV4cGlyZWQoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc0FjY291bnRFeHBpcmVkKCAkdWlkICk7CiAgICB9CgogICAgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldFVzZXJuYW1lUHJvbXB0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcm5hbWVQcm9tcHQoKTsKICAgIH0KCiAgICBmdW5jdGlvbiBJc1ZhbGlkRW1haWxBZGRyZXNzKCAkZW1haWwsICR1aWQgPSAtMSwgJGNoZWNrX2V4aXN0aW5nID0gdHJ1ZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCwgJGNoZWNrX2V4aXN0aW5nICk7CiAgICB9CgogICAgZnVuY3Rpb24gSXNWYWxpZFVzZXJuYW1lKCAkdXNlcm5hbWUsICRjaGVjayA9IHRydWUsICR1aWQgPSAtMSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lLCAkY2hlY2ssICR1aWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBMb2dpbiggJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRncm91cHMgPSAnJywgJG1kNXB3ID0gZmFsc2UsICRmb3JjZV9sb2dvdXQgPSBmYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9naW4oICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzLCAkbWQ1cHcsICRmb3JjZV9sb2dvdXQpOwogICAgfQoKICAgIGZ1bmN0aW9uIExvZ2dlZEluTmFtZSgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgJHN0ciA9ICR0aGlzLT51c2VybWFuaXAtPkxvZ2dlZEluTmFtZSgpOwogICAgICAgIHJldHVybiAkc3RyOwogICAgfQoKICAgIGZ1bmN0aW9uIExvZ291dCgkdWlkID0gJycsJG1lc3NhZ2UgPSAnbG9nb3V0JykKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nb3V0KCR1aWQsJG1lc3NhZ2UpOwogICAgfQoKICAgIGZ1bmN0aW9uIExvZ291dFVzZXIoJHVpZCwkZXZlbnRtc2cgPSAnbG9nb3V0JykKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nb3V0VXNlcigkdWlkLCRldmVudG1zZyk7CiAgICB9CgogICAgZnVuY3Rpb24gTG9nZ2VkSW5JZCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2dlZEluSWQoKTsKICAgIH0KCiAgICBmdW5jdGlvbiBMb2dnZWRJbigpCiAgICB7CiAgICAgICAgJHRtcCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICR0bXAgPiAwICkgcmV0dXJuIFRSVUU7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIGZ1bmN0aW9uIE1lbWJlck9mR3JvdXAoJHVzZXJpZCwkZ3JvdXBpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TWVtYmVyT2ZHcm91cCgkdXNlcmlkLCRncm91cGlkKTsKICAgIH0KCiAgICBmdW5jdGlvbiBSZW1vdmVVc2VyVGVtcENvZGUoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5SZW1vdmVVc2VyVGVtcENvZGUoICR1aWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBSZW1vdmVVc2VyRnJvbUdyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycpICk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuKCAkbmFtZSwgJG5ld25hbWUsICRwcm9tcHQsICRsZW5ndGgsICR0eXBlLCAkbWF4bGVuZ3RoID0gMCwgJGF0dHJpYnMgPSAnJywgJGZvcmNlX3VuaXF1ZSA9IDAsICRlbmNyeXB0ID0gMCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFByb3BlcnR5RGVmbiggJG5hbWUsICRuZXduYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuRXh0cmEoJG5hbWUsJGV4dHJhKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRQcm9wZXJ0eURlZm5FeHRyYSgkbmFtZSwkZXh0cmEpOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRHcm91cCggJGdpZCwgJG5hbWUsICRkZXNjICk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyUGFzc3dvcmQoICR1aWQsICRwYXNzd29yZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyA9IGZhbHNlLCAkZG9fbWQ1ID0gdHJ1ZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcywgJGRvX21kNSApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXJHcm91cHMoICR1aWQsICRncnBpZHMgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyR3JvdXBzKCAkdWlkLCAkZ3JwaWRzICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBBZGQgdXNlciB0byBhIGdyb3VwCiAgICAgKgogICAgICogZG9lcyBub3QgZWZmZWN0IHVzZXIgcHJvcGVydGllcwogICAgICogZG9lcyBub3QgdmFsaWRhdGUgZ2lkCiAgICAgKiB1c2VyaWQgaXMgdmFsaWRhdGVkCiAgICAgKgogICAgICogQHBhcmFtIGludCB1c2VyIGlkCiAgICAgKiBAcGFyYW0gaW50IGdyb3VwIGlkCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gQWRkVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRVc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0aWVzKCAkdWlkLCAkcHJvcHMgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyUHJvcGVydGllcyggJHVpZCwgJHByb3BzICk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGF0YSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGF0YSk7CiAgICB9CgogICAgZnVuY3Rpb24gSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgkdWlkLCR0aXRsZSwkdmFsdWUpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVpZCwkdGl0bGUsJHZhbHVlKTsKICAgIH0KCiAgICBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkZGF0YSwkdXNlcmlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkZGF0YSwkdXNlcmlkKTsKICAgIH0KCiAgICBmdW5jdGlvbiBVc2VyRXhpc3RzQnlJRCggJHVpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlVzZXJFeGlzdHNCeUlEKCAkdWlkICk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0RW5jcnlwdGlvbktleSgkdWlkID0gLTEsJGZvcmNlID0gRkFMU0UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldEVuY3J5cHRpb25LZXkoICR1aWQsICRmb3JjZSApOwogICAgfQoKICAgIC8qKiBmb3IgaW50ZXJuYWwgdXNlIG9ubHkgKiovCiAgICBmdW5jdGlvbiBEZWNyeXB0VXNlckRhdGEoJHVpZCwkZGF0YSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVjcnlwdFVzZXJEYXRhKCR1aWQsJGRhdGEpOwogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBfZW5jcnlwdCgka2V5LCRkYXRhKQogICAgewogICAgICAgIGlmKCAhZnVuY3Rpb25fZXhpc3RzKCdtY3J5cHRfbW9kdWxlX29wZW4nKSApIHJldHVybiBGQUxTRTsKICAgICAgICBzcmFuZCgoZG91YmxlKSBtaWNyb3RpbWUoKSAqIDEwMDAwMDApOwogICAgICAgICRlbmNkYXRhID0gRkFMU0U7CiAgICAgICAgJHRkID0gQG1jcnlwdF9tb2R1bGVfb3BlbihNQ1JZUFRfREVTLCcnLE1DUllQVF9NT0RFX0VDQiwnJyk7CiAgICAgICAgaWYoICR0ZCA9PT0gRkFMU0UgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICRrZXkgPSBzdWJzdHIoJGtleSwwLG1jcnlwdF9lbmNfZ2V0X2tleV9zaXplKCR0ZCkpOwogICAgICAgICRpdl9zaXplID0gbWNyeXB0X2VuY19nZXRfaXZfc2l6ZSgkdGQpOwogICAgICAgICRpdiA9IEBtY3J5cHRfY3JlYXRlX2l2KCRpdl9zaXplLCBNQ1JZUFRfUkFORCk7CgogICAgICAgIC8vIGluaXRpYWxpemUgZW5jcnlwdGlvbiBoYW5kbGUKICAgICAgICAkdG1wID0gQG1jcnlwdF9nZW5lcmljX2luaXQoJHRkLCRrZXksICRpdik7CiAgICAgICAgaWYoICR0bXAgIT0gLTEgKSB7CiAgICAgICAgICAgICR0bXAgPSBtY3J5cHRfZ2VuZXJpYygkdGQsJGRhdGEpOwogICAgICAgICAgICBAbWNyeXB0X2dlbmVyaWNfZGVpbml0KCR0ZCk7CiAgICAgICAgICAgICRlbmNkYXRhID0gJHRtcDsKICAgICAgICB9CiAgICAgICAgQG1jcnlwdF9tb2R1bGVfY2xvc2UoJHRkKTsKICAgICAgICByZXR1cm4gJGVuY2RhdGE7CiAgICB9CgogICAgZnVuY3Rpb24gSGFzQ2FwYWJpbGl0eSgkY2FwYWJpbGl0eSwkcGFyYW1zID0gYXJyYXkoKSkKICAgIHsKICAgICAgICBzd2l0Y2goICRjYXBhYmlsaXR5ICkgewogICAgICAgIGNhc2UgJ2NvbnRlbnRfdHlwZXMnOgogICAgICAgIGNhc2UgJ2NvbnRlbnRibG9ja3MnOgogICAgICAgIGNhc2UgJ2NvbnRlbnRfYXR0cmlidXRlcyc6CiAgICAgICAgY2FzZSAndGFza3MnOgogICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGdldF9jb250ZW50X2F0dHJpYnV0ZXMoJGNvbnRlbnRfdHlwZSkKICAgIHsKICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICAkYXR0ciA9IG5ldyBDbXNDb250ZW50VHlwZVByb2ZpbGVBdHRyaWJ1dGUoJ2ZldV9ncm91cHMnLCd2aXNpdG9ycycpOwogICAgICAgICRhdHRyLT5zZXRfaGVscGVyKGZldV9jb250ZW50X2F0dHJpYnV0ZV9oZWxwZXI6OmdldF9pbnN0YW5jZSgpKTsKICAgICAgICAkdG1wW10gPSAkYXR0cjsKICAgICAgICByZXR1cm4gJHRtcDsKICAgIH0KCgogICAgZnVuY3Rpb24gR2V0Q29udGVudEJsb2NrSW5wdXQoJGJsb2NrTmFtZSwkdmFsdWUsJHBhcmFtcywkYWRkaW5nID0gZmFsc2UpCiAgICB7CiAgICAgICAgc3dpdGNoKCAkcGFyYW1zWydzZWxlY3R0eXBlJ10gKSB7CiAgICAgICAgY2FzZSAnZ3JvdXBzZWxlY3QnOgogICAgICAgICAgICAkdG1wMSA9IGFycmF5KCk7CiAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+R2V0R3JvdXBMaXN0KCk7CiAgICAgICAgICAgICRncm91cHMgPSBhcnJheV9tZXJnZSgkdG1wMSwkdG1wKTsKICAgICAgICAgICAgJHZhbHVlID0gZXhwbG9kZSgnLCcsIHRyaW0oJHZhbHVlKSk7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCcnLCRibG9ja05hbWUgLiAnW10nLCRncm91cHMsJHZhbHVlKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRDb250ZW50QmxvY2tWYWx1ZSgkYmxvY2tOYW1lLCRibG9ja1BhcmFtcywkaW5wdXRQYXJhbXMpCiAgICB7CiAgICAgICAgaWYoIGlzc2V0KCRibG9ja1BhcmFtc1snc2VsZWN0dHlwZSddKSApIHsKICAgICAgICAgICAgaWYoIGlzc2V0KCRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXSkgKSB7CiAgICAgICAgICAgICAgICAkdmFsID0gJGlucHV0UGFyYW1zWyRibG9ja05hbWVdOwogICAgICAgICAgICAgICAgaWYgKGlzX2FycmF5KCR2YWwpKSB7CiAgICAgICAgICAgICAgICAgICAgJHZhbCA9IGltcGxvZGUoJywnLCAkdmFsKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJHZhbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gJy0xJzsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICcnOwogICAgfQoKICAgIGZ1bmN0aW9uIFZhbGlkYXRlQ29udGVudEJsb2NrVmFsdWUoJGJsb2NrTmFtZSwkdmFsdWUsJGJsb2NrUGFyYW1zKQogICAgewogICAgICAgIHN3aXRjaCgkYmxvY2tQYXJhbXNbJ3NlbGVjdHR5cGUnXSkgewogICAgICAgIGNhc2UgJ2dyb3Vwc2VsZWN0JzoKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgIHJldHVybiAnJzsKICAgIH0KCn0gLy8gY2xhc3MKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_admintab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhIGZvcm0gZm9yIHBlcmZvcm1pbmcgdmFyaW91cyBhZG1pbiB0YXNrcwovLyBsaWtlIHJlc2V0dGluZyBleHBpcnkgZGF0ZXMsIGV0YywgZXRjLgogICAgCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZG9fYWRtaW50YXNrcycsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9oaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdhY3RpdmVfdGFiJywnYWRtaW4nKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF91c2VyaGlzdG9yeW1haW50ZW5hbmNlJywkdGhpcy0+TGFuZygndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknLCR0aGlzLT5MYW5nKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknKSk7CiRleHBvcnRsaXN0ID0gYXJyYXkoKTsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfYWxscmVjb3JkcycpXSA9IC0xOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmVob3Vyb2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfc2l4aG91cm9sZCcpXSA9ICc2aCc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3ZWx2ZWhvdXJvbGQnKV0gPSAnMTJoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lZGF5b2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25ld2Vla29sZCcpXSA9ICcxdyc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3b3dlZWtzb2xkJyldID0gJzJ3JzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lbW9udGhvbGQnKV0gPSAnMW0nOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV90aHJlZW1vbnRoc29sZCcpXSA9ICczbSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3NpeG1vbnRoc29sZCcpXSA9ICc2bSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZXllYXJvbGQnKV0gPSAnMXknOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywkZXhwb3J0bGlzdCkpOwokc21hcnR5LT5hc3NpZ24oJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnYnV0dG9uX2V4cG9ydHVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnZXhwb3J0JykpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknLCR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jbGVhcnVzZXJoaXN0b3J5JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2NsZWFydXNlcmhpc3RvcnknLCRleHBvcnRsaXN0KSk7CiRzbWFydHktPmFzc2lnbignYnV0dG9uX2NsZWFydXNlcmhpc3RvcnknLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2J1dHRvbl9jbGVhcnVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnY2xlYXInKSkpOwoKLy8gUHJvY2VzcyB0aGUgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbnRhc2tzLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_authtab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdzaXRlcHJlZnMnKSApIHJldHVybjsKCiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9zZXRfYXV0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiRzbWFydHktPmFzc2lnbignc3VwcG9ydF9sb3N0dW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzdXBwb3J0X2xvc3R1bicsMSkpOwokc21hcnR5LT5hc3NpZ24oJ3N1cHBvcnRfbG9zdHB3JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0cHcnLDEpKTsKCiRzbWFydHktPmFzc2lnbigncmVxdWlyZV9vbmVncm91cCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfb25lZ3JvdXAnKSk7CiRncm91cHMxID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwokZ3JvdXBzID0gYXJyYXlfbWVyZ2UoIGFycmF5KCJOb25lIiA9PiAtMSksICRncm91cHMxICk7CiRzbWFydHktPmFzc2lnbignZ3JvdXBsaXN0JyxhcnJheV9mbGlwKCRncm91cHMpKTsKJHNtYXJ0eS0+YXNzaWduKCdkZWZhdWx0X2dyb3VwJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwd2ZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ21pbnB3bGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ21heHB3bGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ3VuZmxkbGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnKSk7CiRzbWFydHktPmFzc2lnbignbWludW5sZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtaW5fdXNlcm5hbWVsZW5ndGgnKSk7CiRzbWFydHktPmFzc2lnbignbWF4dW5sZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSk7CiRzbWFydHktPmFzc2lnbignY29va2llX2tlZXBhbGl2ZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLDApKTsKJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZV9pc19lbWFpbCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpOwokc3RyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKTsKaWYoICEkc3RyICkgJHN0ciA9ICcnOwokc21hcnR5LT5hc3NpZ24oJ3hjb29raWVuYW1lJywkc3RyKTsKJHNtYXJ0eS0+YXNzaWduKCdhbGxvd19jaGFuZ2V1c2VybmFtZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2NoYW5nZXVzZXJuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJykpOwokc21hcnR5LT5hc3NpZ24oJ2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdzaWduaW5fYnV0dG9uJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2lnbmluX2J1dHRvbicsJHRoaXMtPkxhbmcoJ2xvZ2luJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJykpOwokc21hcnR5LT5hc3NpZ24oJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJykpOwokc21hcnR5LT5hc3NpZ24oJ2hpZGRlbl9maWVsZF9tYXJrZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfbWFya2VyJywnISEnKSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJywnZ3JlZW4nKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3NlY3VyZV9maWVsZF9tYXJrZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfbWFya2VyJywnXl4nKSk7CiRzbWFydHktPmFzc2lnbignc2VjdXJlX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VjdXJlX2ZpZWxkX2NvbG9yJywneWVsbG93JykpOwoKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRmb3Jnb3RwYXNzd2QnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRmb3Jnb3RwYXNzd2QnKSk7CiRzbWFydHktPmFzc2lnbigncGFnZWlkX2NoYW5nZXNldHRpbmdzJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZF9sb2dpbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfbG9nb3V0JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknKSk7CiRzbWFydHktPmFzc2lnbigncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5ncycpKTsKCi8vIEdldCB0aGUgbnVtYmVyIG9mIHVzZXJzIGluc3RhbGxlZCBpbiBGRVUuCiRxdWVyeSA9ICdTRUxFQ1QgY291bnQoaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzJzsKJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKJG51c2VycyA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CiRzbWFydHktPmFzc2lnbigndG90YWxfdXNlcl9jb3VudCcsJG51c2Vycyk7CiRzbWFydHktPmFzc2lnbigncHdzYWx0JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncHdzYWx0JykpOwoKJGNnZWNvbSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnQ0dFY29tbWVyY2VCYXNlJyk7CiRzZWxmcmVnID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdTZWxmUmVnaXN0cmF0aW9uJyk7CmlmKCAkY2dlY29tICYmICRzZWxmcmVnICYmICRzZWxmcmVnLT5HZXRQcmVmZXJlbmNlKCdhbGxvd3BhaWRyZWdpc3RyYXRpb24nKSApCiAgewogICAgJG9wdHMgPSBhcnJheSgpOwogICAgJG9wdHNbJ25vbmUnXSA9ICR0aGlzLT5MYW5nKCdub25lJyk7CiAgICAkb3B0c1snZGVsZXRlJ10gPSAkdGhpcy0+TGFuZygnZGVsZXRlX3VzZXInKTsKICAgICRvcHRzWydleHBpcmUnXSA9ICR0aGlzLT5MYW5nKCdleHBpcmVfdXNlcicpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbWVyY2VfYWN0aW9ucycsJG9wdHMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbV9vcmRlcmNhbmNlbGxlZCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyY2FuY2VsbGVkJywnbm9uZScpKTsKICAgICRzbWFydHktPmFzc2lnbignZWNvbW1fb3JkZXJkZWxldGVkJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJkZWxldGVkJywnbm9uZScpKTsKICAgICRzbWFydHktPmFzc2lnbignZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nLDApKTsKICB9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2F1dGh0YWIudHBsJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_clearuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBHZXQgdGhlIHN0YXJ0IGRhdGUKJGRhdGUgPSAnLTEnOwpzd2l0Y2goICRwYXJhbXNbJ2lucHV0X2NsZWFydXNlcmhpc3RvcnknXSApCiAgewogIGNhc2UgJzFoJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIGhvdXIgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICc2aCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBob3VycyBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzEyaCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMTIgaG91cnMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxZCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSBkYXkgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxdyc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB3ZWVrIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMncnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzIgd2Vla3MgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxbSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSBtb250aCBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzNtJzoKICAgICRkYXRlID0gc3RydG90aW1lKCczIG1vbnRocyBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzZtJzoKICAgICRkYXRlID0gc3RydG90aW1lKCc2IG1vbnRocyBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzF5JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIHllYXIgYWdvJyk7CiAgICBicmVhazsKICB9CgokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRxdWVyeSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSI7CiRwYXJtcyA9IGFycmF5KCk7CmlmKCAkZGF0ZSAhPSAtMSApCiAgewogICAgJHF1ZXJ5IC49ICIgV0hFUkUgcmVmZGF0ZSA8ID8iOwogICAgJHBhcm1zW10gPSB0cmltKCRkYi0+REJUaW1lU3RhbXAoJGRhdGUpLCInIik7CiAgfQoKJGRiLT5FeGVjdXRlKCAkcXVlcnksICRwYXJtcyApOwokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2FkbWluJyk7Ci8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_exportuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBHZXQgdGhlIHN0YXJ0IGRhdGUKJGRhdGUgPSAnLTEnOwpzd2l0Y2goICRwYXJhbXNbJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5J10gKQogIHsKICBjYXNlICcxaCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSBob3VyIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnNmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzYgaG91cnMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxMmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMWQnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgZGF5IGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMXcnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgd2VlayBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzJ3JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMW0nOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgbW9udGggYWdvJyk7CiAgICBicmVhazsKICBjYXNlICczbSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMyBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICc2bSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxeSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB5ZWFyIGFnbycpOwogICAgYnJlYWs7CiAgfQoKJHVzZXJpbmZvID0gYXJyYXkoKTsKCi8vIHdlIHdhbnQgdG8gZXhwb3J0IGEgY3N2IGZpbGUgZG8gd2UKaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CmhlYWRlcignQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9mb3JjZS1kb3dubG9hZCcpOwpoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPXVzZXJoaXN0b3J5LmNzdicpOwp3aGlsZShAb2JfZW5kX2NsZWFuKCkpOwoKJGRiID0mICR0aGlzLT5HZXREYigpOwokZG9uZSA9IDA7CiRzdGFydCA9IDA7CiRudW0gPSAyOyAvLyB0b2RvLCBzaG91bGQgYmUgYSBwcmVmZXJlbmNlCiRxYmFzZSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5ICI7CiRwYXJtcyA9IGFycmF5KCk7CmlmKCAkZGF0ZSAhPSAtMSApCiAgewogICAgJHFiYXNlIC49ICcgV0hFUkUgcmVmZGF0ZSA8ID8nOwogICAgJHBhcm1zW10gPSB0cmltKCRkYi0+REJUaW1lU3RhbXAoJGRhdGUpLCInIik7CiAgfQoKd2hpbGUoICRkb25lID09IDAgKQogIHsKICAgICRxdWVyeSA9ICRxYmFzZSAuICIgTElNSVQgJHN0YXJ0LCRudW0iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksICRwYXJtcyApOwogICAgaWYoICEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSA9PSAwKSApCiAgICAgIHsKCSRkb25lID0gMTsKCWJyZWFrOwogICAgICB9CgogICAgJG91dHB1dCA9ICcnOwogICAgd2hpbGUoICRkYnJlc3VsdCAmJiAhJGRicmVzdWx0LT5FT0YgKQogICAgICB7CgkkZmllbGRzID0gJGRicmVzdWx0LT5maWVsZHM7CgkKCSR1aWQgPSAkZmllbGRzWyd1c2VyaWQnXTsKCWlmKCAkdWlkID4gMCApCgkgIHsKCSAgICBpZiggIWlzc2V0KCAkdXNlcmluZm9bJHVpZF0gKSApCgkgICAgICB7CgkJJHJlcyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKCQkkdXNlcmluZm9bJHVpZF0gPSAkcmVzWzFdOwoJICAgICAgfQoJICAgICR1c2VybmFtZSA9ICR1c2VyaW5mb1skdWlkXVsndXNlcm5hbWUnXTsKCSAgICAkZmllbGRzW10gPSAkdXNlcmluZm9bJHVpZF1bJ3VzZXJuYW1lJ107CgkgIH0KCWVsc2UKCSAgewoJICAgICRmaWVsZHNbXSA9ICd1bmtub3duJzsKCSAgfQoKCSRvdXRwdXQgLj0gaW1wbG9kZSgnLCcsJGZpZWxkcykuIlxuIjsKCgkvLyBjaGVhdCwgY29udmVydCB1c2VyaWQgdG8gdXNlcm5hbWUKCSRkYnJlc3VsdC0+TW92ZU5leHQoKTsKICAgICAgfQogICAgZWNobyAkb3V0cHV0OwogICAgJHN0YXJ0ICs9ICRudW07CiAgfQpleGl0KCk7CgoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_groupstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRncm91cHMgPSAkdGhpcy0+R2V0R3JvdXBMaXN0RnVsbChUUlVFKTsKJHJvd2NsYXNzID0gJ3JvdzEnOwoKJHRoZW1lT2JqZWN0ID0gY21zX3V0aWxzOjpnZXRfdGhlbWVfb2JqZWN0KCk7CiRwcm9wZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwokbmRlZnMgPSAoaXNfYXJyYXkoJHByb3BkZWZucykgJiYgY291bnQoJHByb3BkZWZucykpP2NvdW50KCRwcm9wZGVmbnMpOjA7CiRyb3dhcnJheSA9IGFycmF5KCk7CiRzbWFydHktPmFzc2lnbiggJ2dyb3Vwc2ZvdW5kJywgJHRoaXMtPkxhbmcoJ2dyb3Vwc2ZvdW5kJykpOwokc21hcnR5LT5hc3NpZ24oICducHJvcHMnLCRuZGVmcyk7CmZvcmVhY2goICRncm91cHMgYXMgJG9uZWdyb3VwICkgewogIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdGdyb3VwcycpICkgewogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwogICAgJG9uZXJvdy0+aWQgPSAkb25lZ3JvdXBbJ2lkJ107CiAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkb25lZ3JvdXBbJ2dyb3VwbmFtZSddLCBhcnJheSAoJ2dyb3VwX2lkJyA9PiAkb25lZ3JvdXBbJ2lkJ10pKTsJCQkgICAgICAgCiAgICAkb25lcm93LT5kZXNjID0gJG9uZWdyb3VwWydncm91cGRlc2MnXTsKICAgICRvbmVyb3ctPm51c2VycyA9ICcnOwogICAgaWYoIGlzc2V0KCRvbmVncm91cFsnY291bnQnXSkgKSAkb25lcm93LT5udXNlcnMgPSAkb25lZ3JvdXBbJ2NvdW50J107CiAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCiAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRncm91cHMnKSAmJiAkbmRlZnMgKSB7CiAgICAgICRvbmVyb3ctPmVkaXRsaW5rID0KCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwKCQkJICAgJHRoZW1lT2JqZWN0LT5EaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLCR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSAgIGFycmF5ICgnZ3JvdXBfaWQnID0+ICRvbmVncm91cFsnaWQnXSkpOwogICAgICAkb25lcm93LT5leHBvcnRsaW5rID0KCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdhZG1pbl9leHBvcnRncm91cCcsICRyZXR1cm5pZCwKCQkJICAgJzxpbWcgc3JjPSInLiR0aGlzLT5HZXRNb2R1bGVVUkxQYXRoKCkuJy9pY29ucy94bWxfcnNzLmdpZiIgYWx0PSJ4bWwiLz4nLAoJCQkgICBhcnJheSgnZ3JvdXBfaWQnPT4kb25lZ3JvdXBbJ2lkJ10sCgkJCQkgJ2Rpc2FibGVfYnVmZmVyJz0+MSwKCQkJCSAnZGlzYWJsZV90aGVtZSc9PjEpLAoJCQkgICAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InN5c3RlbWljb24iIHRpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9yc3NleHBvcnQnKS4nIicpOwogICAgfQogICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdyZW1vdmVncm91cHMnKSAmJiAkb25lcm93LT5udXNlcnMgPT0gMCApIHsKICAgICAgJG9uZXJvdy0+ZGVsZXRlbGluayA9CgkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZG9fZGVsZXRlZ3JvdXAnLCAkcmV0dXJuaWQsCgkJCSAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCR0aGlzLT5MYW5nICgnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJICAgYXJyYXkgKCdncm91cF9pZCcgPT4gJG9uZWdyb3VwWydpZCddKSwKCQkJICAgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJykpOwogICAgfQoJICAKICAgICRyb3dhcnJheVtdID0gJG9uZXJvdzsKICAgICgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsKICB9CgogICRzbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKICAkc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkcm93YXJyYXkpOwogICRzbWFydHktPmFzc2lnbignZ3JvdXBzZm91bmQnLCAkdGhpcy0+TGFuZygnZ3JvdXBzZm91bmQnKSApOwogICRzbWFydHktPmFzc2lnbignaWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2lkJykpOwogICRzbWFydHktPmFzc2lnbignbmFtZXRleHQnLCAkdGhpcy0+TGFuZygnbmFtZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ2Rlc2N0ZXh0JywgJHRoaXMtPkxhbmcoJ2Rlc2NyaXB0aW9uJykpOwp9CgppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2FkZGdyb3VwJykgKSB7CiAgJHNtYXJ0eS0+YXNzaWduKCdwcm9wY291bnQnLGNvdW50KCRwcm9wZGVmbnMpKTsKICBpZiggaXNfYXJyYXkoJHByb3BkZWZucykgJiYgY291bnQoJHByb3BkZWZucykgPiAwICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdhZGRncm91cGxpbmsnLCAKCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLAoJCQkJICAgICAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsJHRoaXMtPkxhbmcoJ2FkZGdyb3VwJyksJycsJycsJ3N5c3RlbWljb24nKSkuJyAnLgoJCSAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsJHRoaXMtPkxhbmcoJ2FkZGdyb3VwJykpKTsKICB9CgogICRzbWFydHktPmFzc2lnbignaW1wb3J0bGluaycsCgkJICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRtaW5faW1wb3J0Z3JvdXAnLCAkcmV0dXJuaWQsCgkJCQkgICAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZicsICR0aGlzLT5MYW5nKCdpbXBvcnRncm91cCcpLCcnLCcnLCdzeXN0ZW1pY29uJykpLicgJy4KCQkgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZG1pbl9pbXBvcnRncm91cCcsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2ltcG9ydGdyb3VwJykpKTsgCn0KCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSggJ2dyb3VwbGlzdC50cGwnICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_lostusername_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppZiggISRnQ21zICkgcmV0dXJuOwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd0ZW1wbGF0ZXMnKSApIHJldHVybjsKCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdhZG1pbl9zZXRsb3N0dW5fdGVtcGxhdGUnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZTEnLCR0aGlzLT5MYW5nKCdsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTEnLAoJCSR0aGlzLT5DcmVhdGVUZXh0QXJlYSggZmFsc2UsICRpZCwKCQkJICAkdGhpcy0+R2V0VGVtcGxhdGUgKCdmZXVzZXJzX2xvc3R1bmZvcm0nKSwKCQkJCSAgICAgICAnbG9zdHVuZm9ybScpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlMicsJHRoaXMtPkxhbmcoJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMicsCgkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkgICR0aGlzLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJyksCgkJCQkgICAgICAgJ2xvc3R1bmZvcm1fY29uZmlybScpKTsKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignZGVmYXVsdHMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2RlZmF1bHRzJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdsb3N0dW5fdGVtcGxhdGVmb3JtLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBmaWxsIG91dCB0aGUgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldHByZWZzJykpOwoKJG1vbnRocyA9IGFycmF5KCk7CmZvciggJGkgPSA1MjA7ICRpID4gMDsgJGktLSApCiAgewogICAgJG1vbnRoc1skaV0gPSAkaTsKICB9Cgokc21hcnR5LT5hc3NpZ24oJ2F1dG9fY3JlYXRlX3Vua25vd24nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRvX2NyZWF0ZV91bmtub3duJywwKSk7CgokYXV0aF9tb2R1bGVzID0gbW9kdWxlX2hlbHBlcjo6Z2V0X21vZHVsZXNfd2l0aF9tZXRob2QoJ0dldEZFVUF1dGhDb25zdW1lcicpOwokYXV0aF9tb2R1bGVzID0gY2dlX2FycmF5OjpoYXNoX3ByZXBlbmQoJGF1dGhfbW9kdWxlcywnX19CVUlMVElOX18nLCR0aGlzLT5MYW5nKCdhdXRoX2J1aWx0aW4nKSk7CiRzbWFydHktPmFzc2lnbignYXV0aF9tb2R1bGVzJywkYXV0aF9tb2R1bGVzKTsKJHNtYXJ0eS0+YXNzaWduKCdhdXRoX21vZHVsZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dGhfbW9kdWxlJywnX19CVUlMVElOX18nKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JhbmRvbXVzZXJuYW1lJywKCQlSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnaW5wdXRfcmFuZG9tdXNlcm5hbWUnLCAxLAoJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlX3JhbmRvbXVzZXJuYW1lJywwKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9leHBpcmVhZ2UnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfZXhwaXJlYWdlJywkbW9udGhzLC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsMTIwKSkpOwogICAKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnLCAkdGhpcy0+TGFuZygncHJvbXB0X3Nlc3Npb250aW1lb3V0JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3Nlc3Npb250aW1lb3V0JywgCgkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdpbnB1dF9zZXNzaW9udGltZW91dCcsCgkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJfc2Vzc2lvbl9leHBpcmVzJyksIDYsIDYgKSk7CgoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsCgkJJHRoaXMtPkxhbmcoJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnLAoJCVJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdpbnB1dF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywgMSwKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsICR0aGlzLT5MYW5nKCdpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnKSk7CgoKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJICAkdGhpcy0+TGFuZygnc3VibWl0JyksJycsJycsCgkJCQkJICAkdGhpcy0+TGFuZygnY29uZmlybV9zdWJtaXRwcmVmcycpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywKCQkJCQkgICAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucycsCgkJJHRoaXMtPkxhbmcoJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywKCQlSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwgJ2lucHV0X2FsbG93X3JlcGVhdGVkX2xvZ2lucycsIDEsCgkJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19yZXBlYXRlZF9sb2dpbnMnKSkpOwoKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLAoJCQkJJHRoaXMtPkxhbmcoJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLAoJCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLAoJCQkJCQkJCQkgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcpLDQwKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycsCgkJCQkkdGhpcy0+TGFuZygncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLAoJCQkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycsCgkJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJyksNDAsNDApKTsKCiRub3RpZmljYXRpb25fbGlzdCA9IGFycmF5KCk7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25Mb2dpbicpXSA9ICdPbkxvZ2luJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkxvZ291dCcpXSA9ICdPbkxvZ291dCc7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25FeHBpcmVVc2VyJyldID0gJ09uRXhwaXJlVXNlcic7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25DcmVhdGVVc2VyJyldID0gJ09uQ3JlYXRlVXNlcic7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25EZWxldGVVc2VyJyldID0gJ09uRGVsZXRlVXNlcic7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25VcGRhdGVVc2VyJyldID0gJ09uVXBkYXRlVXNlcic7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25DcmVhdGVHcm91cCcpXSA9ICdPbkNyZWF0ZUdyb3VwJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPblVwZGF0ZUdyb3VwJyldID0gJ09uVXBkYXRlR3JvdXAnOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uRGVsZXRlR3JvdXAnKV0gPSAnT25EZWxldGVHcm91cCc7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X25vdGlmaWNhdGlvbnMnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbm90aWZpY2F0aW9ucycpKTsKJG5vdGlmaWNhdGlvbnMgPSBleHBsb2RlKCcsJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9ucycsJycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ub3RpZmljYXRpb25zJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwnbm90aWZpY2F0aW9uc1tdJywkbm90aWZpY2F0aW9uX2xpc3QsICRub3RpZmljYXRpb25zKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcycsJHRoaXMtPkxhbmcoJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ub3RpZmljYXRpb25fYWRkcmVzcycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ25vdGlmaWNhdGlvbl9hZGRyZXNzJywKCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9uX2FkZHJlc3MnKSw1MCwyNTUpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0JywkdGhpcy0+TGFuZygncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X25vdGlmaWNhdGlvbl9zdWJqZWN0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnbm90aWZpY2F0aW9uX3N1YmplY3QnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcpLDUwLDI1NSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJywkdGhpcy0+TGFuZygncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ub3RpZmljYXRpb25fdGVtcGxhdGUnLAoJCSR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwkaWQsCgkJCQkgICAgICAkdGhpcy0+R2V0VGVtcGxhdGUoJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZScpLAoJCQkJICAgICAgJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZScpKTsKCiRzbWFydHktPmFzc2lnbignaW5mb19zdGFyJywkdGhpcy0+TGFuZygnaW5mb19zdGFyJykpOwokbnVtID0gJHRoaXMtPkNvdW50VGVtcENvZGVSZWNvcmRzKCk7CmlmKCAkbnVtICkKICAgIHsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbnVtcmVzZXRyZWNvcmRzJywKCQkgICAgICAkdGhpcy0+TGFuZygncHJvbXB0X251bXJlc2V0cmVjb3JkJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oJ2RhdGFfbnVtcmVzZXRyZWNvcmRzJywgJG51bSk7IC8vdG9kbwogICAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlbW92ZWFsbCcsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfcmVtb3ZlYWxsJywKCQkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3JlbW92ZWFsbCcpLAoJCQkJCSAgICAgICAnb25jbGljaz0icmV0dXJuIGNvbmZpcm0oXCcnLiR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykuJ1wnKSInKSk7CiAgICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfcmVtb3ZlMXdlZWsnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3JlbW92ZTF3ZWVrJywKCQkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3JlbW92ZTF3ZWVrJyksCgkJCQkJICAgICAgICdvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycuJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKS4nXCcpIicpKTsKICAgICAgCiAgICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfcmVtb3ZlMW1vbnRoJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdpbnB1dF9yZW1vdmUxbW9udGgnLAoJCQkJCSAgICAgICAkdGhpcy0+TGFuZygncmVtb3ZlMW1vbnRoJyksCgkJCQkJICAgICAgICdvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycuJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKS4nXCcpIicpKTsKICAgIH0KCiRzbWFydHktPmFzc2lnbignZm9yY2Vsb2dvdXRfdGltZXMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF90aW1lcycpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JjZWxvZ291dF9zZXNzaW9uYWdlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdleHBpcmV1c2Vyc19pbnRlcnZhbCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2V4cGlyZXVzZXJzX2ludGVydmFsJykpOwoKJHRtcCA9IGV4cGxvZGUoJywnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9ncm91cHMnLCcnKSk7CiRzbWFydHktPmFzc2lnbigncGFnZXR5cGVfZ3JvdXBzJywkdG1wKTsKJGdyb3VwczEgPSAkdGhpcy0+R2V0R3JvdXBMaXN0KCk7CiRzbWFydHktPmFzc2lnbignYWxsX2dyb3VwcycsYXJyYXlfZmxpcCgkZ3JvdXBzMSkpOwokdG1wID0gYXJyYXkoJ3Nob3dsb2dpbic9PiR0aGlzLT5MYW5nKCdzaG93bG9naW5mb3JtJyksJ3JlZGlyZWN0Jz0+JHRoaXMtPkxhbmcoJ3JlZGlyZWN0JykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2V0eXBlX2FjdGlvbl9vcHRzJywkdG1wKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdldHlwZV9hY3Rpb24nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9hY3Rpb24nLCdzaG93bG9naW4nKSk7CiRjb250ZW50b3BzID0gY21zbXMoKS0+R2V0Q29udGVudE9wZXJhdGlvbnMoKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdldHlwZV9yZWRpcmVjdHRvJywKCQkkY29udGVudG9wcy0+Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oLTEsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nKSwkaWQuJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nLFRSVUUpKTsKCiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5wcmVmcy50cGwnKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_propertiestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRtZXNzYWdlID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKSAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCAkbWVzc2FnZSk7CiRzbWFydHktPmFzc2lnbigndGl0bGUnLCR0aGlzLT5MYW5nKCdwcm9wZXJ0aWVzJykpOwokdGhlbWVPYmplY3QgPSBjbXNfdXRpbHM6OmdldF90aGVtZV9vYmplY3QoKTsKCiRyb3dhcnJheSA9IGFycmF5KCk7CiRyb3djbGFzcyA9ICdyb3cxJzsKJGtleXMgPSBhcnJheV9rZXlzKCR0aGlzLT50eXBlcyk7CgokZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwppZiggaXNfYXJyYXkoJGRlZm5zKSApIHsKICBmb3JlYWNoKCAkZGVmbnMgYXMgJGRlZm4gKSB7CiAgICAkYXR0cmlicyA9ICcnOwogICAgaWYoICRkZWZuWydhdHRyaWJzJ10gKSAkYXR0cmlicyA9IHVuc2VyaWFsaXplKCRkZWZuWydhdHRyaWJzJ10pOwogICAgCiAgICAkcHJvcGdyb3VwcyA9ICR0aGlzLT5HZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgCiAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRwcm9wJykgJiYgIWlzc2V0KCRkZWZuWydleHRyYSddWydtb2R1bGUnXSkgKSB7CiAgICAgICRvbmVyb3ctPm5hbWUgPSAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRkcHJvcCcsICRyZXR1cm5pZCwgJGRlZm5bJ25hbWUnXSxhcnJheSgncHJvcG5hbWUnID0+ICRkZWZuWyduYW1lJ10pKTsKICAgIH0KICAgIGVsc2UgewogICAgICAkb25lcm93LT5uYW1lID0gJGRlZm5bJ25hbWUnXTsKICAgICAgaWYoIGlzc2V0KCRkZWZuWydleHRyYSddWydtb2R1bGUnXSkgKSB7Cgkkb25lcm93LT5uYW1lIC49ICcmbmJzcDs8ZW0gdGl0bGU9IicuJHRoaXMtPkxhbmcoJ3RpdGxlX3Byb3Btb2R1bGUnKS4nIj4oJy4kZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10uJyk8L2VtPic7CiAgICAgIH0KICAgIH0KICAgICRvbmVyb3ctPmVuY3J5cHQgPSAkZGVmblsnZW5jcnlwdCddOwogICAgJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwogICAgJG9uZXJvdy0+dHlwZSA9ICR0aGlzLT5MYW5nKCRrZXlzWyRkZWZuWyd0eXBlJ11dKTsKICAgICRvbmVyb3ctPmxlbmd0aCA9ICRkZWZuWydsZW5ndGgnXTsKICAgICRvbmVyb3ctPmZvcmNlX3VuaXF1ZSA9ICRkZWZuWydmb3JjZV91bmlxdWUnXTsKICAgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwogICAgJGlzX21vZHVsZXByb3AgPSAwOwogICAgaWYoIGlzc2V0KCRkZWZuWydleHRyYSddKSAmJiBpc3NldCgkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10pICYmCgkkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10gIT0gJycgKSB7CiAgICAgICR0bXAgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJGRlZm5bJ2V4dHJhJ11bJ21vZHVsZSddKTsKICAgICAgaWYoIGlzX29iamVjdCgkdG1wKSApIHsKCSRpc19tb2R1bGVwcm9wID0gMTsKICAgICAgfQogICAgfQoKICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHByb3AnKSAmJiAhaXNzZXQoJGRlZm5bJ2V4dHJhJ11bJ21vZHVsZSddKSApIHsKICAgICAgJG9uZXJvdy0+ZWRpdGxpbmsgPQoJJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2FkZHByb3AnLCAkcmV0dXJuaWQsCgkJCSAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLCR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSAgIGFycmF5KCdwcm9wbmFtZScgPT4gJGRlZm5bJ25hbWUnXSkpOwogICAgICAKICAgICAgaWYoIGNvdW50KCRwcm9wZ3JvdXBzKSA9PSAwICYmICEkaXNfbW9kdWxlcHJvcCApIHsKCSRvbmVyb3ctPmRlbGV0ZWxpbmsgPQoJICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnZG9fZGVsZXRlcHJvcCcsICRyZXR1cm5pZCwKCQkJICAgICAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSAgICAgYXJyYXkoJ3Byb3BuYW1lJyA9PiAkZGVmblsnbmFtZSddLCAncHJvcHR5cGUnID0+ICRkZWZuWyd0eXBlJ10pLCAKCQkJICAgICAkdGhpcy0+TGFuZygnY29uZmlybV9kZWxldGVfcHJvcCcpKTsKICAgICAgfQogICAgfQogICAgCiAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CiAgfQogfQoKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignbGVuZ3RodGV4dCcsJHRoaXMtPkxhbmcoJ2xlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHR0ZXh0JywkdGhpcy0+TGFuZygncHJvbXB0JykpOwokc21hcnR5LT5hc3NpZ24oJ3R5cGV0ZXh0JywkdGhpcy0+TGFuZygncHJvbXB0X3R5cGUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvcHMnLCRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbigncHJvcGNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CiRzbWFydHktPmFzc2lnbigncHJvcHNmb3VuZCcsJHRoaXMtPkxhbmcoJ3Byb3BzZm91bmQnKSk7CgppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2FkZHByb3AnKSApIHsKICAvLyB0b2RvLCBhZGQgYSBwZXJtaXNzaW9uIGNoZWNrIGFyb3VuZCB0aGlzCiAgLy8gbWF5YmUgY3JlYXRlIGFuICJlZGl0IGZyb250ZW5kdXNlciBwcm9wZXJ0aWVzIiBwZXJtaXNzaW9uCiAgJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgCgkJICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2FkZHByb3AnLCRyZXR1cm5pZCwkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLAoJCQkJCQkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdhZGRwcm9wJyksJycsJycsJ3N5c3RlbWljb24nKSwKCQkJCSAgICBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLCAnJykuJyAnLgoJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZHByb3AnLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhZGRwcm9wJyksIGFycmF5KCksICcnLCBmYWxzZSxmYWxzZSkpOwp9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3Byb3BlcnRpZXNmb3JtLnRwbCcpOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_resetsession_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSByZXR1cm47Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnYWRtaW5fcmVzZXRzZXNzaW9uX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUxJywkdGhpcy0+TGFuZygncmVzZXRzZXNzaW9uX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMScsCgkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkgICR0aGlzLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfcmVzZXRzZXNzaW9uJyksCgkJCQkgICAgICAgJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZScpKTsKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignZGVmYXVsdHMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2RlZmF1bHRzJykpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncmVzZXRzZXNzaW9uX3RlbXBsYXRlZm9ybS50cGwnKTsKCiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_userstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIHRoaXMgdGFiIGhhcyBtZXJlbHkgb25lIG1vZm8gbGlzdCBvZiB1c2VzIGFuZCB0aGUgYWJpbGl0eSB0byBlZGl0IHRoZW0sIAovLyBzZWUgZGV0YWlscyBhYm91dCB0aGVtLCBhbmQgdGhlbiBkZWxldGUgdGhlbQoKLy8KLy8gaW5pdGlhbGl6YXRpb24KLy8KJGFkbWludGhlbWUgPSBjbXNfdXRpbHM6OmdldF90aGVtZV9vYmplY3QoKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdHVzZXJzJykgKSB7CgogICRmaWx0ZXIgPSAkYmFyZV9maWx0ZXIgPSBhcnJheSgnZ3JvdXAnPT4nJywncmVnZXgnPT4nJywnbG9nZ2VkaW5vbmx5Jz0+MCwnbGltaXQnPT41MCwKCQkJCSAndmlld3Byb3BzJz0+YXJyYXkoKSwncHJvcHNlbCc9PicnLCdwcm9wdmFsJz0+JycsJ3NvcnRieSc9Pid1c2VybmFtZSBhc2MnKTsKICAkdG1wID0gY21zX3VzZXJwcmVmczo6Z2V0KCdmZXVfZmlsdGVyJyk7CiAgaWYoICR0bXAgKSAkZmlsdGVyID0gdW5zZXJpYWxpemUoJHRtcCk7CgogIC8vIGJ1bGsgYWN0aW9uIHN0dWZmCiAgaWYoIGlzc2V0KCAkcGFyYW1zWydidWxrZGVsZXRlJ10pICkgewogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ3NlbGVjdGVkJ10pICYmIGlzX2FycmF5KCRwYXJhbXNbJ3NlbGVjdGVkJ10pICkgewogICAgICAkc2VsID0gc2VyaWFsaXplKCRwYXJhbXNbJ3NlbGVjdGVkJ10pOwogICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRtaW5fYnVsa2FjdGlvbnMnLCAkcmV0dXJuaWQsIGFycmF5KCdqb2InPT4nZGVsZXRlJywndWlkcyc9PiRzZWwpKTsKICAgIH0KICB9CgogIC8vIGZpbHRlcmluZyBzdHVmZgogIGlmKCBpc3NldCggJHBhcmFtc1snZmlsdGVyX3Jlc2V0J10gKSApIHsKICAgIGNtc191c2VycHJlZnM6OnJlbW92ZSgnZmV1X2ZpbHRlcicpOwogICAgJGZpbHRlciA9ICRiYXJlX2ZpbHRlcjsKICB9CiAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2ZpbHRlciddKSApIHsKICAgICRmaWx0ZXJbJ2dyb3VwJ10gPSBnZXRfcGFyYW1ldGVyX3ZhbHVlKCRwYXJhbXMsJ2ZpbHRlcl9ncm91cCcpOwogICAgJGZpbHRlclsncmVnZXgnXSA9IHRyaW0oZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfcmVnZXgnKSk7CiAgICAkZmlsdGVyWydsb2dnZWRpbm9ubHknXSA9IChpbnQpZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfbG9nZ2VkaW5vbmx5Jyk7CiAgICAkZmlsdGVyWydsaW1pdCddID0gKGludClnZXRfcGFyYW1ldGVyX3ZhbHVlKCRwYXJhbXMsJ2ZpbHRlcl9saW1pdCcpOwogICAgJGZpbHRlclsnc29ydGJ5J10gPSB0cmltKGdldF9wYXJhbWV0ZXJfdmFsdWUoJHBhcmFtcywnZmlsdGVyX3NvcnRieScpKTsKICAgICRmaWx0ZXJbJ3ZpZXdwcm9wcyddID0gZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfdmlld3Byb3BzJyk7CiAgICAkZmlsdGVyWydwcm9wc2VsJ10gPSB0cmltKGdldF9wYXJhbWV0ZXJfdmFsdWUoJHBhcmFtcywnZmlsdGVyX3Byb3BlcnR5c2VsJykpOwogICAgaWYoICRmaWx0ZXJbJ3Byb3BzZWwnXSA9PSAnbm9uZScgKSAkZmlsdGVyWydwcm9wc2VsJ10gPSAnJzsKICAgICRmaWx0ZXJbJ3Byb3B2YWwnXSA9IHRyaW0oZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfcHJvcGVydHknKSk7CiAgICBjbXNfdXNlcnByZWZzOjpzZXQoJ2ZldV9maWx0ZXInLHNlcmlhbGl6ZSgkZmlsdGVyKSk7CiAgfQoKICAkc21hcnR5LT5hc3NpZ24oJ2ZpbHRlcicsJGZpbHRlcik7CiAgJGZpbHRlcmFwcGxpZWQgPSAoJGZpbHRlciAhPSAkYmFyZV9maWx0ZXIpOwogICRzbWFydHktPmFzc2lnbignZmlsdGVyX2FwcGxpZWQnLCRmaWx0ZXJhcHBsaWVkKTsKCiAgLy8gZ2V0IGEgZ3JvdXAgbGlzdCBmb3IgdGhlIGZpbHRlcgogIC8vIGl0IHNob3VsZCBiZSByZWFkeSB0byBnbyByaWdodCBpbnRvIHRoZSBkcm9wZG93biAoY29vbCBlaCkKICAkZ3JvdXBzMSA9ICR0aGlzLT5HZXRHcm91cExpc3QoKTsKICBpZiggY291bnQoJGdyb3VwcykgKSB7CiAgICAkZ3JvdXBzID0gYXJyYXlfbWVyZ2UoIGFycmF5KCR0aGlzLT5MYW5nKCdhbnknKSA9PiAtMSksICRncm91cHMxICk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2dyb3VwcycsYXJyYXlfZmxpcCgkZ3JvdXBzKSk7CiAgfQoKICAvLyBhIHB1bGxkb3duIGxpc3QgZm9yIGxpbWl0cwogICRsaW1pdHMgPSBhcnJheSggJzEwJyA9PiAxMCwKCQkgICAnMjUnID0+IDI1LAoJCSAgICc1MCcgPT4gNTAsCgkJICAgJzEwMCcgPT4gMTAwLAoJCSAgICcyNTAnID0+IDI1MCwKCQkgICAnNTAwJyA9PiA1MDAgKTsKICAkc21hcnR5LT5hc3NpZ24oJ2xpbWl0cycsJGxpbWl0cyk7CgogIC8vIGEgcHVsbGRvd24gbGlzdCBmb3IgcHJvcGVydHkgZGVmaW5pdGlvbnMKICAkZGVmbnMxID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICAkZGVmbnMgPSBhcnJheSgpOwogICRkZWZuc1snTm9uZSddID0gJ25vbmUnOwogICRhbGxkZWZucyA9IGFycmF5KCk7CiAgaWYoIGlzX2FycmF5KCRkZWZuczEpICkgewogICAgZm9yZWFjaCggJGRlZm5zMSBhcyAkZGVmICkgewogICAgICBpZiggJGRlZlsncHJvbXB0J10gPT0gJycgfHwgJGRlZlsnbmFtZSddID09ICcnICkgY29udGludWU7CiAgICAgIGlmKCAkZGVmWydlbmNyeXB0J10gKSBjb250aW51ZTsgLy8geW91IGNhbid0IHZpZXcgZW5jcnlwdGVkIHByb3BlcnRpZXMgaW4gdGhpcyBsaXN0LgogICAgICAkZGVmbnNbJGRlZlsncHJvbXB0J11dID0gJGRlZlsnbmFtZSddOwogICAgICAkYWxsZGVmbnNbJGRlZlsnbmFtZSddXSA9ICRkZWZbJ3Byb21wdCddOwogICB9CiAgfQogICRzbWFydHktPmFzc2lnbignZGVmbmxpc3QnLGFycmF5X2ZsaXAoJGRlZm5zKSk7CgkKICAvLyBhIHB1bGxkb3duIGxpc3QgZm9yIHNvcnRpbmcKICAkc29ydHMgPSBhcnJheSggJHRoaXMtPkxhbmcoJ3NvcnRieV91c2VybmFtZV9hc2MnKSA9PiAndXNlcm5hbWUgYXNjJywKCQkgICR0aGlzLT5MYW5nKCdzb3J0YnlfdXNlcm5hbWVfZGVzYycpID0+ICd1c2VybmFtZSBkZXNjJywKCQkgICR0aGlzLT5MYW5nKCdzb3J0YnlfY3JlYXRlX2FzYycpID0+ICdjcmVhdGVkYXRlIGFzYycsCgkJICAkdGhpcy0+TGFuZygnc29ydGJ5X2NyZWF0ZV9kZXNjJykgPT4gJ2NyZWF0ZWRhdGUgZGVzYycsCgkJICAkdGhpcy0+TGFuZygnc29ydGJ5X2V4cGlyZXNfYXNjJykgPT4gJ2V4cGlyZXMgYXNjJywKCQkgICR0aGlzLT5MYW5nKCdzb3J0YnlfZXhwaXJlc19kZXNjJykgPT4gJ2V4cGlyZXMgZGVzYycgKTsKICAkc21hcnR5LT5hc3NpZ24oJ3NvcnRsaXN0JyxhcnJheV9mbGlwKCRzb3J0cykpOwoKICAvLyBub3cgc2V0dXAgdGhlIHRlbXBsYXRlIGZpZWxkcwogICRzbWFydHktPmFzc2lnbiggJ3Byb21wdF9zb3J0JywgJHRoaXMtPkxhbmcoJ3NvcnQnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCAnc3RhcnRmb3JtJywgJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnKSkpOwogICRzbWFydHktPmFzc2lnbiggJ3Blcm1fcmVtb3ZldXNlcnMnLCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncmVtb3ZldXNlcnMnKT8xOjApOwogICRzbWFydHktPmFzc2lnbiggJ3VzZXJzZm91bmQnLCAkdGhpcy0+TGFuZygndXNlcnNmb3VuZCcpKTsKICAkc21hcnR5LT5hc3NpZ24oICdhbGxkZWZucycsJGFsbGRlZm5zKTsKICAkc21hcnR5LT5hc3NpZ24oICd2aWV3cHJvcHMnLCRmaWx0ZXJbJ3ZpZXdwcm9wcyddKTsKICAkc21hcnR5LT5hc3NpZ24oICdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwoKICAvLyBub3cgZ2V0IG91ciB1c2VycwogICR1c2VycyA9IG51bGw7CiAgJGN1cnBhZ2UgPSAxOwogICRubWF0Y2hlcyA9IDA7CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ3BhZ2UnXSkgKSAkY3VycGFnZSA9IChpbnQpJHBhcmFtc1sncGFnZSddOwogICRvZmZzZXQgPSAoJGN1cnBhZ2UgLSAxKSAqICRmaWx0ZXJbJ2xpbWl0J107CiAgdHJ5IHsKICAgICR1c2VycyA9ICR0aGlzLT5HZXRVc2Vyc0luR3JvdXAoICRmaWx0ZXJbJ2dyb3VwJ10sICRmaWx0ZXJbJ3JlZ2V4J10sICRmaWx0ZXJbJ2xpbWl0J10sICRmaWx0ZXJbJ3NvcnRieSddLCAkZmlsdGVyWydwcm9wc2VsJ10sIAoJCQkJICAgICAkZmlsdGVyWydwcm9wdmFsJ10sICRmaWx0ZXJbJ2xvZ2dlZGlub25seSddLCAkb2Zmc2V0ICk7CiAgICAkbm1hdGNoZXMgPSAkdGhpcy0+Z2V0X2xhc3R1c2VycXVlcnlfY291bnQoKTsKICB9CiAgY2F0Y2goIEV4Y2VwdGlvbiAkZSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRlLT5HZXRNZXNzYWdlKCkgKTsKICB9CiAgaWYoICFpc19hcnJheSgkdXNlcnMpICkgewogICAgLy8gYW4gZXJyb3Igb2NjdXJyZWQKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRkYi0+RXJyb3JNc2coKSApOwogIH0KCiAgLy8gY2FsY3VsYXRlIHBhZ2VzIGFuZCBwYWdlIGxpbmtzLgogICRucGFnZXMgPSAoaW50KSgkbm1hdGNoZXMgLyAkZmlsdGVyWydsaW1pdCddKTsKICBpZiggJG5tYXRjaGVzICUgJGZpbHRlclsnbGltaXQnXSAhPSAwICkgJG5wYWdlcysrOwogICRjdXJwYWdlID0gbWF4KDAsbWluKCRjdXJwYWdlLCRucGFnZXMpKTsKCiAgJG5hdiA9IGFycmF5KCk7CiAgJG5hdlsnbnBhZ2VzJ10gPSAkbnBhZ2VzOwogICRuYXZbJ2N1cnBhZ2UnXSA9ICRjdXJwYWdlOwogIGlmKCAkY3VycGFnZSA+IDEgKSB7CiAgICAkbmF2WydmaXJzdHBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+MSkpOwogICAgJG5hdlsncHJldnBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+JGN1cnBhZ2UtMSkpOwogIH0KICBpZiggJGN1cnBhZ2UgPCAkbnBhZ2VzICkgewogICAgJG5hdlsnbmV4dHBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+JGN1cnBhZ2UrMSkpOwogICAgJG5hdlsnbGFzdHBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+JG5wYWdlcykpOwogIH0KICAkc21hcnR5LT5hc3NpZ24oJ25hdmlnYXRpb24nLCRuYXYpOwogIAogIC8vIGdldCB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzCiAgJG51bXVzZXJzID0gJHRoaXMtPkNvdW50VXNlcnNJbkdyb3VwKCAkZmlsdGVyWydncm91cCddICk7CiAgCiAgLy8gZ2V0IHRoZSBzZWxlY3RlZCBwcm9wZXJ0aWVzLgogIGlmKCBpc19hcnJheSgkZmlsdGVyWyd2aWV3cHJvcHMnXSkgJiYgY291bnQoJGZpbHRlclsndmlld3Byb3BzJ10pICkgewogICAgaWYoIGNvdW50KCR1c2VycykgKSB7CiAgICAgICR1aWRzID0gYXJyYXkoKTsKICAgICAgZm9yZWFjaCggJHVzZXJzIGFzICRyb3cgKSB7CgkkdWlkc1tdID0gJHJvd1snaWQnXTsKICAgICAgfQoKICAgICAgJHF1ZXJ5ID0gIlNFTEVDVCBBLmlkLCI7CiAgICAgICRmbGRzID0gYXJyYXkoKTsKICAgICAgJGNvbmRzID0gYXJyYXkoKTsKICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGZpbHRlclsndmlld3Byb3BzJ10pOyAkaSsrICkgewoJJHByb3AgPSAkZmlsdGVyWyd2aWV3cHJvcHMnXVskaV07Cgkkbm0gPSAnaicuJGk7CgkkZmxkc1tdICA9ICIkbm0uZGF0YSBhcyAkcHJvcCI7CgkkY29uZHNbXSA9IGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBUyAkbm0gT04gQS5pZCA9ICRubS51c2VyaWQgQU5EICgkbm0udGl0bGUgPSAnJHByb3AnKSI7CiAgICAgIH0KICAgICAgJHF1ZXJ5IC49IGltcGxvZGUoJywnLCRmbGRzKS4nIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIEEnOwogICAgICAkcXVlcnkgLj0gJyBMRUZUIEpPSU4gJy5pbXBsb2RlKCcgTEVGVCBKT0lOICcsJGNvbmRzKTsKICAgICAgJHF1ZXJ5IC49ICcgV0hFUkUgQS5pZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJyknOwogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCdTRVQgc3FsX2JpZ19zZWxlY3RzID0gMScpOwogICAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgICAkZXh0cmFwcm9wcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCdpZCcpOwogICAgfQogIH0KCiAgLy8gYnVpbGQgdGhlIHVzZXIgbGlzdC4KICAkcm93YXJyYXkgPSBhcnJheSgpOwogICRzbWFydHktPmFzc2lnbignbnVtdXNlcnMnLCAkbnVtdXNlcnMgKTsKICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpICYmIGdldF9jbGFzcygkY29uc3VtZXIpID09ICdmZXVfc3RkX2NvbnN1bWVyJyApIHsKICAgICRzbWFydHktPmFzc2lnbigndXNlcm5hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ3Byb21wdF9lbWFpbCcpKTsKICB9CiAgZWxzZSB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCd1c2VybmFtZScpKTsKICB9CiAgJHNtYXJ0eS0+YXNzaWduKCdlbWFpbHRleHQnLCAkdGhpcy0+TGFuZygnZW1haWwnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdzdGF0dXN0ZXh0JywgJHRoaXMtPkxhbmcoJ3N0YXR1cycpKTsKICAkc21hcnR5LT5hc3NpZ24oJ2NyZWF0ZWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2NyZWF0ZWQnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdleHBpcmVzdGV4dCcsICR0aGlzLT5MYW5nKCdleHBpcmVzJykpOwogIGlmKCBpc19hcnJheSgkdXNlcnMpICkgewogICAgZm9yZWFjaCggJHVzZXJzIGFzICRyb3cgKSB7CiAgICAgICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKICAgICAgJG9uZXJvdy0+aWQgPSAkcm93WydpZCddOwogICAgICAkb25lcm93LT5jcmVhdGVkICA9ICRyb3dbJ2NyZWF0ZWRhdGUnXTsKICAgICAgJG9uZXJvdy0+dXNlcm5hbWUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdlZGl0dXNlcicsICRyZXR1cm5pZCwgJHJvd1sndXNlcm5hbWUnXSwgYXJyYXkoJ3VzZXJfaWQnID0+ICRyb3dbJ2lkJ10pKTsKICAgICAgJG9uZXJvdy0+ZXhwaXJlcyAgPSAkcm93WydleHBpcmVzJ107CiAgICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdHVzZXJzJykgKSB7Cgkkb25lcm93LT5oaXN0b3J5bGluayA9CgkgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICd1c2VyaGlzdG9yeScsICRyZXR1cm5pZCwKCQkJICAgICAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnLCR0aGlzLT5MYW5nKCdoaXN0b3J5JyksJycsJycsJ3N5c3RlbWljb24nKSwKCQkJICAgICBhcnJheSgndXNlcl9pZCc9PiRyb3dbJ2lkJ10pKTsKICAgICAgfQogICAgICAKICAgICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHsKCSRvbmVyb3ctPmVkaXRsaW5rID0KCSAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2VkaXR1c2VyJywgJHJldHVybmlkLAoJCQkgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCSAgICAgYXJyYXkgKCd1c2VyX2lkJyA9PiAkcm93WydpZCddICkpOwoJaWYoICRyb3dbJ2xvZ2dlZGluJ10gKSB7CgkgICRvbmVyb3ctPmxvZ291dGxpbmsgPQoJICAgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsJ2FkbWluX2xvZ291dCcsJHJldHVybmlkLAoJCQkgICAgICAgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2JhY2suZ2lmJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9sb2dvdXQnKSwnJywnJywnc3lzdGVtaWNvbicpLAoJCQkgICAgICAgYXJyYXkoJ3VzZXJfaWQnPT4kcm93WydpZCddKSk7Cgl9CiAgICAgIH0KCSAgICAgIAogICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJykgKSB7Cgkkb25lcm93LT5kZWxldGVsaW5rID0gCgkgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsJ2RvX2RlbGV0ZXVzZXInLCRyZXR1cm5pZCwKCQkJICAgICAkYWRtaW50aGVtZS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkgICAgIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSksCgkJCSAgICAgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlX2RlbGV0ZScsJHJvd1sndXNlcm5hbWUnXSkpOwogICAgICB9CgkgICAgICAKICAgICAgaWYoIGlzX2FycmF5KCRmaWx0ZXJbJ3ZpZXdwcm9wcyddKSAmJiBjb3VudCgkZmlsdGVyWyd2aWV3cHJvcHMnXSkgKSB7Cgkkb25lcm93LT5leHRyYSA9IGFycmF5KCk7Cglmb3JlYWNoKCAkZmlsdGVyWyd2aWV3cHJvcHMnXSBhcyAkb25lICkgewoJICBpZiggaXNzZXQoJGV4dHJhcHJvcHNbJG9uZXJvdy0+aWRdWyRvbmVdKSApICRvbmVyb3ctPmV4dHJhWyRvbmVdID0gJGV4dHJhcHJvcHNbJG9uZXJvdy0+aWRdWyRvbmVdOwoJfQogICAgICB9CiAgICAgIAogICAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgICB9CiAgfQoKICAkc21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsY291bnQoJHJvd2FycmF5KSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJHJvd2FycmF5KTsKfSAvLyBsaXN0dXNlcnMgcGVybWlzc2lvbgoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdhZGR1c2VyJykgKSB7CiAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykgPT0gMCB8fCBjb3VudCgkZ3JvdXBzMSkgPiAwICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgCgkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnYWRkdXNlcicsJHJldHVybmlkLAoJCQkJICAgICAgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLCR0aGlzLT5MYW5nKCdhZGR1c2VyJyksJycsJycsJ3N5c3RlbWljb24nKSwKCQkJCSAgICAgIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICcnKS4nICcuCgkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWRkdXNlcicpLCBhcnJheSgpLCAnJywgZmFsc2UsIGZhbHNlLAoJCQkJICAgICAgICdjbGFzcz0icGFnZW9wdGlvbnMiJykpOwogIH0KICBlbHNlIHsKICAgICRzbWFydHktPmNsZWFyX2Fzc2lnbignYWRkbGluaycpOwogIH0KfQppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzJykgKSB7CiAgaWYoIGNvdW50KCRncm91cHMpICkgJHNtYXJ0eS0+YXNzaWduKCdpbXBvcnRfdXJsJywkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2FkbWluX2ltcG9ydF91c2VycycsJHJldHVybmlkKSk7CiAgaWYoIGNvdW50KCRyb3dhcnJheSkgKSAkc21hcnR5LT5hc3NpZ24oJ2V4cG9ydF91cmwnLCR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fZXhwb3J0X3VzZXJzJywkcmV0dXJuaWQpKTsKfQoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCAndXNlcmxpc3QudHBsJyApOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_viewuser_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgcmV0dXJuOwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2FkbWluX3NldHZpZXd1c2VyX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUxJywkdGhpcy0+TGFuZygndmlld3VzZXJfdGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdGVtcGxhdGUxJywKCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCSAgJHRoaXMtPkdldFRlbXBsYXRlICgnZmV1c2Vyc192aWV3dXNlcicpLAoJCQkJICAgICAgICd2aWV3dXNlcl90ZW1wbGF0ZScpKTsKCiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignZGVmYXVsdHMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2RlZmF1bHRzJykpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgndmlld3VzZXJfdGVtcGxhdGVmb3JtLnRwbCcpOwoKLyoKICogRU9GCiAqLwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.default_lostusernameform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKCmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKSB7CiAgJG1lc3NhZ2UgPSBodG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydtZXNzYWdlJ10pKTsKICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKfQppZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApIHsKICAkZXJyb3IgPSBodG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydlcnJvciddKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJGVycm9yKTsKfQoKJGdpZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2dyb3VwJywtMSk7CmlmKCBpc3NldCgkcGFyYW1zWydsb3N0dW5fZ3JvdXAnXSkgKSB7CiAgJGdpZCA9ICR0aGlzLT5HZXRHcm91cElEKCAkcGFyYW1zWydsb3N0dW5fZ3JvdXAnXSApOwogIGlmKCAkZ2lkID09IGZhbHNlICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX2dyb3Vwbm90Zm91bmQnKSk7CiAgICByZXR1cm47CiAgfQp9CmVsc2UgaWYoICRnaWQgPD0gMCApIHsKICAkZ3JvdXBzID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwogICR2YWx1ZXMgPSBhcnJheV92YWx1ZXMoJGdyb3Vwcyk7CiAgJGdpZCA9ICR2YWx1ZXNbMF07Cn0KCiRyZWxucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CmlmKCAhaXNfYXJyYXkoICRyZWxucyApIHx8ICRyZWxuc1swXSA9PT0gRkFMU0UgKSB7CiAgZWNobyAnPCEtLSBGRVU6IEVycm9yIC0gJy4kcmVsbnNbMV0uJyAtLT4nOwogIHJldHVybjsKfQoKJGNhcHRjaGEgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCRwYXJhbXNbJ25vY2FwdGNoYSddKSApIHsKICAkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhcHRjaGEnLAoJCSAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2NhcHRjaGEnLCcnLDEwKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7Cn0KCi8vCi8vIEFkZCBhIHBhc3N3b3JkIGZpZWxkCi8vCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywkdGhpcy0+TGFuZygncHJvbXB0X3Bhc3N3b3JkJykpOwokc21hcnR5LT5hc3NpZ24oJ3Bhc3N3ZGZsZGxlbmd0aCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3ZGZsZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtYXhfcGFzc3dvcmRsZW5ndGgnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSk7CiRzbWFydHktPmFzc2lnbignbWluX3Bhc3N3b3JkbGVuZ3RoJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJykpOwoKLy8gZGVwcmVjYWVkLgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3Bhc3N3b3JkJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsJ2ZldV9pbnB1dF9wYXNzd29yZCcsJycsCgkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJykpLAoJCSAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSk7CgovLyBOb3c6IHdlIG5lZWQgdG8gZ2V0IHRoZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIG1hcmtlZCBhcyAnbG9zdHVuZmxhZycgCi8vIGFuZCBkaXNwbGF5IHRoZW0gaW4gdGhlIGZvcm0KJHJvd2FycmF5ID0gYXJyYXkoKTsKZm9yZWFjaCggJHJlbG5zIGFzICRvbmVyZWxuICkgewogIC8vIGlmIGl0J3Mgbm90IHJlcXVpcmVkIGhlcmUsIGRvbid0IGRvIGFueXRoaW5nCiAgaWYoICFpc3NldCgkb25lcmVsblsnbG9zdHVuZmxhZyddKSB8fCAkb25lcmVsblsnbG9zdHVuZmxhZyddIDw9IDAgKQogICAgY29udGludWU7CgogIGlmKCAkb25lcmVsblsncmVxdWlyZWQnXSA9PSAzIHx8ICRvbmVyZWxuWydyZXF1aXJlZCddID09IDQpIHsKICAgIC8vIEhtbSwgaG93IGNhbiBhbiBhIGZpZWxkIHRoYXQncyByZXF1aXJlZCBpbiBsb3N0dW4gYmUgaGlkZGVuCiAgICAvLyBnb3R0YSBmaWd1cmUgdGhhdCBvdXQuLi4uIHRvZG8KICAgIGVjaG8gJzwhLS0gRkVVOiBFUlJPUiAtIEEgSGlkZGVuL3JlYWRvbmx5IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBsb3N0IHVzZXJuYW1lPyAtLT4nOwogICAgY29udGludWU7CiAgfQoKICAkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRvbmVyZWxuWyduYW1lJ10gKTsKCiAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICRvbmVyb3ctPm5hbWUgPSAnaW5wdXRfJy4kb25lcmVsblsnbmFtZSddOwogICRvbmVyb3ctPmlkICAgPSAkaWQuJG9uZXJvdy0+bmFtZTsKICAkb25lcm93LT5jb2xvciA9ICcnOwogICRvbmVyb3ctPnR5cGUgPSAkZGVmblsndHlwZSddOwogICRvbmVyb3ctPm1hcmtlciA9ICcnOwogICRvbmVyb3ctPmNsYXNzbmFtZSA9ICRvbmVyZWxuWyduYW1lJ107CiAgJGFkZHRleHQgPSAnJzsKICAkb25lcm93LT5oaWRkZW4gPSBSUlV0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsIAoJCQkJCQkgICdmZXVfaGlkZGVuXycuJG9uZXJlbG5bJ25hbWUnXSwKCQkJCQkJICBpbXBsb2RlKCc7JywKCQkJCQkJCSAgYXJyYXkoJG9uZXJlbG5bJ25hbWUnXSwKCQkJCQkJICAgICRkZWZuWyd0eXBlJ10sCgkJCQkJCSAgICAkb25lcmVsblsncmVxdWlyZWQnXSkpKTsKCiAgc3dpdGNoKCAkZGVmblsndHlwZSddICkgewogIGNhc2UgMDogLy8gdGV4dAogICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJICAgICAgICcnLCRkZWZuWydsZW5ndGgnXSwKCQkJCQkgICAgICAgJGRlZm5bJ21heGxlbmd0aCddLAoJCQkJCSAgICAgICAkYWRkdGV4dCApOwogICAgYnJlYWs7CgogIGNhc2UgMTogLy8gY2hlY2tib3gKICAgICRvbmVyb3ctPmNvbnRyb2wgPSBSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwKCQkJCQkJICAgICAgICdmZXVfJy4kb25lcm93LT5uYW1lLAoJCQkJCQkgICAgICAgMSwgMCwKCQkJCQkJICAgICAgICRhZGR0ZXh0ICk7CiAgICBicmVhazsKCiAgY2FzZSAyOiAvLyBlbWFpbAogICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJICAgICAgICcnLCRkZWZuWydsZW5ndGgnXSwKCQkJCQkgICAgICAgJGRlZm5bJ21heGxlbmd0aCddLAoJCQkJCSAgICAgICAkYWRkdGV4dCApOwogICAgYnJlYWs7CgogIGNhc2UgMzogLy8gdGV4dCBhcmVhCiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLCAnJywgCgkJCQkJICAgICAgJ2ZldV8nLiRvbmVyb3ctPm5hbWUgKTsKICAgIGJyZWFrOwoKICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oICRpZCwgCgkJCQkJCSAgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJCSAgICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJICAgLTEsIAoJCQkJCQkgICAtMSwKCQkJCQkJICAgJGFkZHRleHQpOwogICAgYnJlYWs7CgogIGNhc2UgNTogLy8gbXVsdGlzZWxlY3QgCiAgICAkc2VsZWN0ZWQgPSBleHBsb2RlKCcsJywkdmFsKTsKICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCAkaWQsIAoJCQkJCQkgICAgICdmZXVfJy4kb25lcm93LT5uYW1lLidbXScsIAoJCQkJCQkgICAgICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJICAgICAkc2VsZWN0ZWQsCgkJCQkJCSAgICAgJGRlZm5bJ2xlbmd0aCddLAoJCQkJCQkgICAgICRhZGR0ZXh0KTsKICAgIGJyZWFrOwoKICBjYXNlIDY6IC8vIGltYWdlCiAgICAvLyB0aGlzIGlzbid0IGFsbG93ZWQKICAgIGJyZWFrOwogIH0KICAkb25lcm93LT5sYWJlbGZvciA9ICdmZXVfJy4kaWQuJG9uZXJlbG5bJ25hbWUnXTsKICAkb25lcm93LT50eXBlID0gJGRlZm5bJ3R5cGUnXTsKICAkb25lcm93LT5sZW5ndGggPSAkZGVmblsnbGVuZ3RoJ107CiAgJG9uZXJvdy0+bWF4bGVuZ3RoID0gJGRlZm5bJ21heGxlbmd0aCddOwogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb25lcm93LT5uYW1lID0gJG9uZXJlbG5bJ25hbWUnXTsKICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7Cn0KCgokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+TGFuZygndGl0bGVfbG9zdHVzZXJuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJJHRoaXMtPmZlQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fbG9zdHVzZXJuYW1lJywgJHJldHVybmlkLCB0cnVlLCAncG9zdCcsICcnLCAnJywgJHBhcmFtcykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2NhbmNlbCcsJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7CgokaGlkZGVuID0gJyc7CmlmKCBpc3NldCgkcGFyYW1zWydsb3N0dW5fZ3JvdXAnXSkgKSB7CiAgJGhpZGRlbiAuPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdsb3N0dW5fZ3JvdXAnLCRwYXJhbXNbJ2xvc3R1bl9ncm91cCddKTsKfQppZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApIHsKICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2lucHV0X3JldHVybnRvJywgJHBhcmFtc1sncmV0dXJudG8nXSk7Cn0KaWYoICRoaWRkZW4gIT0gJycgKSB7CiAgJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCRoaWRkZW4pOwp9CiRzbWFydHktPmFzc2lnbignZm9ybWlkJywkaWQpOwokc21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xzJywgJHJvd2FycmF5KTsKJHNtYXJ0eS0+YXNzaWduKCdjb250cm9sY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKaWYoIGNvdW50KCRyb3dhcnJheSkgPT0gMCApICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJHRoaXMtPkxhbmcoJ2Vycm9yX2xvc3R1bl9ub2NvbnRyb2xzJykpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX2xvc3R1bmZvcm0nKTsKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.user_changesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCiRnQ21zID0gY21zbXMoKTsKCiRjYW5fY2hhbmdlcGFzc3dkID0gVFJVRTsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwokY2FuX2NoYW5nZXBhc3N3ZCA9ICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEKTsKCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTKSApIHsKICAvLyB0aGUgY29uc3VtZXIgcHJvdmlkZXMgdGhlIGxvZ2luIGNhcGFiaWxpdGllcwogIGVjaG8gJGNvbnN1bWVyLT5nZXRfY2hhbmdlc2V0dGluZ3NfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwogIHJldHVybjsKfQplbHNlIGlmKCAhJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUykgKSB7CiAgcmV0dXJuOwp9CgokdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKaWYoICR1aWQgPT0gZmFsc2UgKSB7CiAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3Jfbm90bG9nZ2VkaW4nKSk7CiAgcmV0dXJuOwp9CiRyZXN1bHQgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1aWQgKTsKaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKSB7CiAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkcmVzdWx0WzFdKTsKICByZXR1cm47Cn0KJHVpbmZvID0gJHJlc3VsdFsxXTsKCmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10gKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApICR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRwYXJhbXNbJ21lc3NhZ2UnXSApOwoKLy8gZ2V0IHRoZSB1c2VycyBtZW1iZXIgZ3JvdXBzCiRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKaWYoICEkZ3JvdXBzICkgewogIC8vIHRoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdydW9wcy4uLgogIC8vIGhhbmRsZSB0aGlzIGxhdGVyIHRvZG8KICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3Jfbm9ncm91cHMnKSk7CiAgcmV0dXJuOwp9CgovLyBub3cgd2UgaGF2ZSB0aGUgZ3JvdXBzLCB3ZSBidWlsZCBhIHVuaW9uIG9mIGFsbCBvZiB0aGUgZ3JvdXBzIHByb3BlcnRpZXMKJHByb3BlcnRpZXMgPSBhcnJheSgpOwpmb3JlYWNoKCAkZ3JvdXBzIGFzICRncnByZWNvcmQgKSB7CiAgJGdpZCA9ICRncnByZWNvcmRbJ2dyb3VwaWQnXTsKICAkcHJvcHJlbGF0aW9ucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CiAgaWYoIGlzX2FycmF5KCRwcm9wcmVsYXRpb25zKSAmJiBjb3VudCgkcHJvcHJlbGF0aW9ucykgPT0gMiAmJiAkcHJvcHJlbGF0aW9uc1swXSA9PT0gRkFMU0UgKSBjb250aW51ZTsKICBpZiggY291bnQoJHByb3BlcnRpZXMpICkgewogICAgJHByb3BlcnRpZXMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkcHJvcGVydGllcywgJHByb3ByZWxhdGlvbnMgKTsKICB9IGVsc2UgewogICAgJHByb3BlcnRpZXMgPSAkcHJvcHJlbGF0aW9uczsKICB9Cn0KdWFzb3J0KCRwcm9wZXJ0aWVzLCBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykpOwoKaWYoIGNvdW50KCRwcm9wZXJ0aWVzKSA9PSAwICkgewogIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcpID09IDEgKSB7CiAgICAvLyB0aGlzIHVzZXIgaXMgbm90IGEgbWVtYmVyIG9mIGFueSBncnVvcHMuLi4KICAgIC8vIGhhbmRsZSB0aGlzIGxhdGVyIHRvZG8KICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdlcnJvcl9vbmVncm91cHJlcXVpcmVkJykpOwogICAgcmV0dXJuOwogIH0KfQoKLy8gbm93IHdlJ3JlIHJlYWR5IHRvIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQovLyBmaXJzdCB3ZSBwdXQgaW4gc3R1ZmYgdGhhdCBpcyByZXF1aXJlZCAodXNlcm5hbWUsIHBhc3N3b3JkLCBldGMsIGV0YykKJHJvd2FycmF5ID0gYXJyYXkoKTsKCi8vIG1ha2Ugc3VyZSB1c2VybmFtZSBpcyBpbiB0aGVyZQovLyB3ZSBjYW4gaGlkZSBpdCBpbiB0aGUgdGVtcGxhdGUuCiR2YWwgPSAkdWluZm9bJ3VzZXJuYW1lJ107CiRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKJG9uZXJvdy0+bmFtZSA9ICd1c2VybmFtZSc7CiRvbmVyb3ctPnR5cGUgPSAwOwokb25lcm93LT5jb2xvciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKJG9uZXJvdy0+cmVxdWlyZWQgPSAxOwokb25lcm93LT5wcm9tcHQgPSAkY29uc3VtZXItPmdldF91c2VybmFtZV9wcm9tcHQoKTsKJG9uZXJvdy0+dmFsdWUgPSAkdmFsOwokb25lcm93LT5pbnB1dF9pZCA9ICdmZXVfaW5wdXRfdXNlcm5hbWUnOwokb25lcm93LT5pbnB1dF9uYW1lID0gJGlkLiRvbmVyb3ctPmlucHV0X2lkOwokb25lcm93LT5sZW5ndGggPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnLDQwKTsKJG9uZXJvdy0+bWF4bGVuZ3RoID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcsODApOwokb25lcm93LT5yZWFkb25seSA9ICghJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VVU0VSTkFNRSkpOwoKJHRtcCA9ICdkaXNhYmxlZD0iZGlzYWJsZWQiJzsKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfQ0hBTkdFVVNFUk5BTUUpICkgJHRtcCA9ICcnOwokb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmZXVfaW5wdXRfdXNlcm5hbWUnLCAkdmFsLCAkb25lcm93LT5sZW5ndGgsICRvbmVyb3ctPm1heGxlbmd0aCwgJHRtcCk7CiRyb3dhcnJheVskb25lcm93LT5uYW1lXSA9ICRvbmVyb3c7CgppZiggJGNhbl9jaGFuZ2VwYXNzd2QgKSB7CiAgLy8gYW5kIHBhc3N3b3JkCiAgJHZhbCA9ICcnOwogIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10gKSApICR2YWwgPSAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXTsKICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgJG9uZXJvdy0+bmFtZSA9ICdwYXNzd29yZCc7CiAgJG9uZXJvdy0+dHlwZSA9ICdwYXNzd29yZCc7CiAgJG9uZXJvdy0+Y29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAkb25lcm93LT5yZXF1aXJlZCA9IDE7CiAgJG9uZXJvdy0+cHJvbXB0ID0gJHRoaXMtPkxhbmcoJ3Bhc3N3b3JkJyk7CiAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2ZldV9pbnB1dF9wYXNzd29yZCcsICR2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAkb25lcm93LT5hZGR0ZXh0ID0kdGhpcy0+TGFuZygnaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnKTsKICAkb25lcm93LT52YWx1ZSA9IG51bGw7CiAgJG9uZXJvdy0+aW5wdXRfaWQgPSAnZmV1X2lucHV0X3Bhc3N3b3JkJzsKICAkb25lcm93LT5pbnB1dF9uYW1lID0gJGlkLiRvbmVyb3ctPmlucHV0X2lkOwogICRvbmVyb3ctPmxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpOwogICRvbmVyb3ctPm1heGxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKTsKICAkb25lcm93LT5yZWFkb25seSA9IGZhbHNlOwogICRyb3dhcnJheVskb25lcm93LT5uYW1lXSA9ICRvbmVyb3c7CgogIC8vIGFuZCBtYWtlIGhpbSByZXBlYXQgdGhlIHBhc3N3b3JkCiAgJHZhbCA9ICcnOwogIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJ10gKSApICR2YWwgPSAkcGFyYW1zWydmZXVfaW5wdXRfcmVwZWF0cGFzc3dvcmQnXTsKICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgJG9uZXJvdy0+bmFtZSA9ICdyZXBlYXRfcGFzc3dvcmQnOwogICRvbmVyb3ctPnR5cGUgPSAncGFzc3dvcmQnOwogICRvbmVyb3ctPmNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwogICRvbmVyb3ctPm1hcmtlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgJG9uZXJvdy0+cmVxdWlyZWQgPSAxOwogICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdyZXBlYXRwYXNzd29yZCcpOwogICRvbmVyb3ctPmNvbnRyb2wgPSR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2ZldV9pbnB1dF9yZXBlYXRwYXNzd29yZCcsICR2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAkb25lcm93LT5hZGR0ZXh0ID0kdGhpcy0+TGFuZygnaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnKTsKICAkb25lcm93LT52YWx1ZSA9IG51bGw7CiAgJG9uZXJvdy0+aW5wdXRfaWQgPSAnZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJzsKICAkb25lcm93LT5pbnB1dF9uYW1lID0gJGlkLiRvbmVyb3ctPmlucHV0X2lkOwogICRvbmVyb3ctPmxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpOwogICRvbmVyb3ctPm1heGxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKTsKICAkb25lcm93LT5yZWFkb25seSA9IGZhbHNlOwogICRyb3dhcnJheVskb25lcm93LT5uYW1lXSA9ICRvbmVyb3c7Cn0KCiRlbmNyeXB0X2NvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9jb2xvcicsJ3llbGxvdycpOwokZW5jcnlwdF9tYXJrZXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2VjdXJlX2ZpZWxkX21hcmtlcicsJ15eJyk7CgoKLy8gbm93IGZvciB0aGUgcHJvcGVydGllcwokdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdWlkKTsKZm9yZWFjaCggJHByb3BlcnRpZXMgYXMgJHByb3AgKSB7CiAgLy8gZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uCiAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCAkcHJvcFsnbmFtZSddICk7CgogIGlmKCAkcHJvcFsncmVxdWlyZWQnXSA9PSAzICkgY29udGludWU7IC8vIGhpZGRlbi4KCiAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICRvbmVyb3ctPnByb3BuYW1lICAgID0gJHByb3BbJ25hbWUnXTsKICAkb25lcm93LT5pbnB1dF9pZCAgICA9ICdmZXVfaW5wdXRfJy4kb25lcm93LT5wcm9wbmFtZTsKICAkb25lcm93LT5pbnB1dF9uYW1lICA9ICRpZC4kb25lcm93LT5pbnB1dF9pZDsKICAkdmFsID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0eUZ1bGwoICRwcm9wWyduYW1lJ10sICR1aWQgKTsKICBpZiggaXNzZXQoJHBhcmFtc1skb25lcm93LT5pbnB1dF9uYW1lXSkgKSAkdmFsPSRwYXJhbXNbJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWVdOwoKCiAgLy8gYmVnaW4gYnVpbGRpbmcgdGhlIG9iamVjdCB0aGF0IGNvbnRhaW5zIGRhdGEgZm9yIGJ1aWxkaW5nIHRoZSBmaWVsZHMuCiAgJG9uZXJvdy0+dHlwZSAgICAgICAgPSAkZGVmblsndHlwZSddOwogICRvbmVyb3ctPmVuY3J5cHRlZCAgID0gJGRlZm5bJ2VuY3J5cHQnXTsKICAkb25lcm93LT5yZXF1aXJlZCAgICA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSAyKTsKICAkb25lcm93LT5yZWFkb25seSAgICA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSA0KTsKICAkb25lcm93LT5zdGF0dXMgICAgICA9ICRwcm9wWydyZXF1aXJlZCddOwogICRvbmVyb3ctPmNvbG9yICAgICAgID0gbnVsbDsKICAkb25lcm93LT5tYXJrZXIgICAgICA9IG51bGw7OwogICRvbmVyb3ctPnZhbHVlICAgICAgID0gJHZhbDsKICAkb25lcm93LT5sZW5ndGggICAgICA9ICRkZWZuWydsZW5ndGgnXTsKICAkb25lcm93LT5tYXhsZW5ndGggICA9ICRkZWZuWydtYXhsZW5ndGgnXTsKICAkb25lcm93LT5wcm9tcHQgICAgICA9ICRkZWZuWydwcm9tcHQnXTsKICBpZiggJGRlZm5bJ2VuY3J5cHQnXSApIHsKICAgICAgJG9uZXJvdy0+Y29sb3IgPSAkZW5jcnlwdF9jb2xvcjsKICAgICAgJG9uZXJvdy0+bWFya2VyID0gJGVuY3J5cHRfbWFya2VyOwogIH0KICBlbHNlIGlmKCAkb25lcm93LT5yZXF1aXJlZCApIHsKICAgICAgJG9uZXJvdy0+Y29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgICAgICRvbmVyb3ctPm1hcmtlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgfQoKICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CiAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLCAkdmFsLCAkZGVmblsnbGVuZ3RoJ10sICRkZWZuWydtYXhsZW5ndGgnXSApOwogICAgICBicmVhazsKCiAgY2FzZSAxOiAvLyBjaGVja2JveAogICAgICAkb25lcm93LT5jb250cm9sICA9ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWUsMCk7CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgIC49IFJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnZmV1XycuJG9uZXJvdy0+aW5wdXRfbmFtZSwgMSwgJHZhbCk7CiAgICAgIGJyZWFrOwoKICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLCAkdmFsLCAkZGVmblsnbGVuZ3RoJ10sICRkZWZuWydtYXhsZW5ndGgnXSk7CiAgICAgIGJyZWFrOwoKICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgICRmbGFnID0gZmFsc2U7CiAgICAgIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAgICAgICAkYXR0cmlicyA9IHVuc2VyaWFsaXplKCRkZWZuWydhdHRyaWJzJ10pOwogICAgICAgICAgaWYoIGlzX2FycmF5KCRhdHRyaWJzKSAmJiBpc3NldCgkYXR0cmlic1snd3lzaXd5ZyddKSApICRmbGFnID0gJGF0dHJpYnNbJ3d5c2l3eWcnXTsKICAgICAgfQogICAgICAkb25lcm93LT53eXNpd3lnID0gJGZsYWc7CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoJGZsYWcsICRpZCwgJHZhbCwgJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWUpOwogICAgICBicmVhazsKCiAgY2FzZSA0OiAvLyBkcm9wZG93bgogICAgICAkb3B0cyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgICAkb25lcm93LT5vcHRpb25zID0gYXJyYXlfZmxpcCgkb3B0cyk7CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLCAkb3B0cywgLTEsICR2YWwpOwogICAgICBicmVhazsKCiAgY2FzZSA1OiAvLyBtdWx0aXNlbGVjdAogICAgICAkb3B0cyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgICAkb25lcm93LT5vcHRpb25zID0gYXJyYXlfZmxpcCgkb3B0cyk7CiAgICAgICRzZWxlY3RlZCA9IGV4cGxvZGUoJywnLCR2YWwpOwogICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsICdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLidbXScsICRvcHRzLCAkc2VsZWN0ZWQsICRkZWZuWydsZW5ndGgnXSk7CiAgICAgIGJyZWFrOwoKICBjYXNlIDY6IC8vIGltYWdlCiAgICAgICRkZXN0RGlyMSA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiAgICAgICRkZXN0RGlyMSAuPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKS5ESVJFQ1RPUllfU0VQQVJBVE9SOwogICAgICAkZGVzdERpcjIgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3VybCddLicvJzsKICAgICAgJGRlc3REaXIyIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLicvJzsKICAgICAgJGZpbGUxID0gJGRlc3REaXIxLiR2YWw7CiAgICAgICRmaWxlMiA9ICRkZXN0RGlyMi4kdmFsOwogICAgICBpZiggaXNfcmVhZGFibGUoICRmaWxlMSApICYmIGlzX2ZpbGUoJGZpbGUxKSApIHsKICAgICAgICAgICRvbmVyb3ctPmltYWdlX3VybCA9ICRmaWxlMjsKICAgICAgICAgICRvbmVyb3ctPmltYWdlID0gJzxpbWcgc3JjPSInLiRmaWxlMi4nIiBhbHQ9IicuJHZhbC4nIi8+JzsKICAgICAgICAgIGlmKCAhJG9uZXJvdy0+cmVxdWlyZWQgKSB7CiAgICAgICAgICAgICAgJG9uZXJvdy0+cHJvbXB0MiA9ICR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXInKTsKICAgICAgICAgICAgICAkb25lcm93LT5pbnB1dF9uYW1lMiA9ICRvbmVyb3ctPmlucHV0X25hbWUgLiAnX2NsZWFyJzsKICAgICAgICAgICAgICAkb25lcm93LT5jb250cm9sMiA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWUuJ19jbGVhcicsICdjbGVhcicsJycpOwogICAgICAgICAgfQogICAgICB9CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLCR2YWwpLiR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCdmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lLCAnJywgJGRlZm5bJ2xlbmd0aCddKTsKICAgICAgYnJlYWs7CgogIGNhc2UgJzcnOiAvLyByYWRpbyBncm91cAogICAgICAkb3B0cyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgICAkb25lcm93LT5vcHRpb25zID0gYXJyYXlfZmxpcCgkb3B0cyk7CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWUsICRvcHRzLCAkdmFsLCAnJywgJzxici8+Jyk7CiAgICAgIGJyZWFrOwoKICBjYXNlICc4JzogLy8gZGF0ZQogICAgewogICAgICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAgICAgJHBhcm1zWydwcmVmaXgnXSA9ICRvbmVyb3ctPmlucHV0X2lkOwogICAgICAgIGlmKCAkdmFsICkgICRwYXJtc1sndGltZSddID0gJHZhbDsKICAgICAgICAkcGFybXNbJ3N0YXJ0X3llYXInXSA9ICItNSI7CiAgICAgICAgJHBhcm1zWydlbmRfeWVhciddID0gIisxMCI7CgogICAgICAgIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAgICAgICAgICRhdHRyaWJzID0gdW5zZXJpYWxpemUoJGRlZm5bJ2F0dHJpYnMnXSk7CiAgICAgICAgICAgIGlmKCBpc3NldCgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICYmICFlbXB0eSgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICkgJHBhcm1zWydzdGFydF95ZWFyJ10gPSAkYXR0cmlic1snc3RhcnR5ZWFyJ107CiAgICAgICAgICAgIGlmKCBpc3NldCgkYXR0cmlic1snZW5keWVhciddKSAmJiAhZW1wdHkoJGF0dHJpYnNbJ2VuZHllYXInXSkgKSAkcGFybXNbJ2VuZF95ZWFyJ10gPSAkYXR0cmlic1snZW5keWVhciddOwogICAgICAgIH0KCiAgICAgICAgJHN0ciA9ICd7aHRtbF9zZWxlY3RfZGF0ZSAnOwogICAgICAgIGZvcmVhY2goICRwYXJtcyBhcyAka2V5PT4kdmFsdWUgKSB7CiAgICAgICAgICAgICRzdHIuPSRrZXkuJz0iJy4kdmFsdWUuJyIgJzsKICAgICAgICB9CiAgICAgICAgJHN0ciAuPSAnfSc7CiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkc3RyKTsKICAgIH0KICAgIGJyZWFrOwogIH0KICAkcm93YXJyYXlbJHByb3BbJ25hbWUnXV0gPSAkb25lcm93Owp9CgovLyBmaWxsIGluIHRoZSB2YXJpYWJsZXMgZm9yIHRoZSB0ZW1wbGF0ZQokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+TGFuZygndXNlcl9zZXR0aW5ncycpKTsgLy8gZGVwcmVjYXRlZAokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5mZUNyZWF0ZUZvcm1TdGFydCgkaWQsJ2RvX3VzZXJjaGFuZ2VzZXR0aW5ncycsJHJldHVybmlkLCB0cnVlLCAncG9zdCcsICdtdWx0aXBhcnQvZm9ybS1kYXRhJyApKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2ZldV9zdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOyAvLyBkZXByZWNhdGVkCgppZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApICR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnZmV1X3JldHVybnRvJywkcGFyYW1zWydyZXR1cm50byddKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZm9ybWlkJywkaWQpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xzJywgJHJvd2FycmF5KTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjb250cm9sY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZmV1c2Vyc19jaGFuZ2VzZXR0aW5nc2Zvcm0nKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.user_forgotpassword.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgokdXNlcm5hbWUgPSAnJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICkgKSB7CiAgJHVzZXJuYW1lID0gdHJpbSggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApOwogfQoKJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwppZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApIHsKICAkZXJyb3IgPSBodG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydlcnJvciddKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJGVycm9yKTsKIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApIHsKICAkbWVzc2FnZSA9IGh0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ21lc3NhZ2UnXSkpOwogICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJG1lc3NhZ2UpOwogfQoKaWYoICFpc3NldCggJHBhcmFtc1snc2tpcGZvcm1kaXNwbGF5J10gKSApIHsKICAvLyBzZXR1cCB0aGUgdGVtcGxhdGUKICAkaGlkZGVuID0gJyc7CiAgJGNhcHRjaGEgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhX3RpdGxlJywkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfY2FwdGNoYScsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9jYXB0Y2hhJywnJywxMCkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywkY2FwdGNoYS0+Z2V0Q2FwdGNoYSgpKTsKICB9CiAgZWxzZSBpZiggaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkgewogICAgJGhpZGRlbiAuPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdub2NhcHRjaGEnLCRwYXJhbXNbJ25vY2FwdGNoYSddKTsKICB9CiAgJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5mZUNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZG9fZm9yZ290cHcnLCAkcmV0dXJuaWQgKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKICAkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+TGFuZygnZm9yZ290cHcnKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdsb3N0cHdfbWVzc2FnZScsJHRoaXMtPkxhbmcoJ2xvc3Rwd19tZXNzYWdlJykpOwogICRzbWFydHktPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywkdGhpcy0+TGFuZygncHJvbXB0X3VzZXJuYW1lJykpOwogICRzbWFydHktPmFzc2lnbignaW5wdXRfbGFiZWwnLCRpZCk7CiAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZScsCgkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF91c2VybmFtZScsCgkJCQkJICAkdXNlcm5hbWUsIAoJCQkJCSAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJyksIAoJCQkJCSAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpKSk7CiAgJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwogICRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKICAKICBpZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApIHsKICAgICRoaWRkZW4gLj0gJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaW5wdXRfcmV0dXJudG8nLCRwYXJhbXNbJ3JldHVybnRvJ10pOwogIH0KICAkc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsJGhpZGRlbik7CiB9CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSggJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmRmb3JtJyApOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.user_loginform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCiRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfTE9HSU4pICkgewogICAgLy8gdGhlIGNvbnN1bWVyIHByb3ZpZGVzIHRoZSBsb2dpbiBjYXBhYmlsaXRpZXMKICAgIGVjaG8gJGNvbnN1bWVyLT5nZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwogICAgcmV0dXJuOwp9CgovLyB0aGUgcmVtYWluZXIgaXMgdGhlIGJ1aWx0aW4gYXV0aGVudGljYXRpb24gY29uc3VtZXIuCiRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKCi8vIGJ1aWxkIHRoZSBmb3JtCiRjYXB0Y2hhID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CmlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICFpc3NldCgkcGFyYW1zWydub2NhcHRjaGEnXSkgKSB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfY2FwdGNoYScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9jYXB0Y2hhJywnJywxMCkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7Cn0KCiR1c2VybmFtZSA9IChpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk/JHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ106JycpOwokcGFzc3dvcmQgPSAoaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10pPyRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddOicnKTsKJHJlbWVtYmVybWUgPSAoaXNzZXQoJHBhcmFtc1snZmV1X3JlbWVtYmVybWUnXSk/JHBhcmFtc1snZmV1X3JlbWVtYmVybWUnXTonJyk7CgokaW5saW5lID0gdHJ1ZTsKaWYoIGlzc2V0KCRwYXJhbXNbJ25vaW5saW5lJ10pICkgJGlubGluZSA9IGZhbHNlOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ3JldHVybmxhc3QnXSkgKSB7CiAgICAkdGhpc191cmwgPSBjZ2VfdXJsOjpjdXJyZW50X3VybCgpOwogICAgJF9TRVNTSU9OWydmZXVfcHJlbG9naW5fdXJsJ10gPSAkdGhpc191cmw7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZldV9wcmVsb2dpbl91cmwnLCR0aGlzX3VybCk7Cn0KCiRzbWFydHktPmFzc2lnbignZXJyb3InLCBpc3NldCgkcGFyYW1zWydlcnJvciddKSA/ICRwYXJhbXNbJ2Vycm9yJ10gOiAnJyk7CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPmZlQ3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkb19sb2dpbicsICRyZXR1cm5pZCwgJGlubGluZSwgJ3Bvc3QnLCAnJywgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmbGRuYW1lX3VzZXJuYW1lJywkaWQuJ2ZldV9pbnB1dF91c2VybmFtZScpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZScsJGNvbnN1bWVyLT5nZXRfdXNlcm5hbWVfcHJvbXB0KCkpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lX21heGxlbmd0aCcsJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJywyMCkpOwokc21hcnR5LT5hc3NpZ24oJ3Bhc3N3b3JkX21heGxlbmd0aCcsJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJywyMCkpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lX3NpemUnLG1heCgzLChpbnQpJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnLDEwKSkpOwokc21hcnR5LT5hc3NpZ24oJ3Bhc3N3b3JkX3NpemUnLG1heCgzLCR0aGlzLT5DR0dldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJywxMCkpKTsKJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZScsJHVzZXJuYW1lKTsKJHNtYXJ0eS0+YXNzaWduKCdwYXNzd29yZCcsJHBhc3N3b3JkKTsKJHNtYXJ0eS0+YXNzaWduKCdyZW1lbWJlcm1lJywkcmVtZW1iZXJtZSk7Cgokc2l6ZSA9IChpbnQpJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJyk7CmlmKCAkc2l6ZSA8PSAwICkgJHNpemUgPSAnJzsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZScsCiAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdmZXVfaW5wdXRfdXNlcm5hbWUnLCR1c2VybmFtZSwkc2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9sYWJlbCcsICRpZCApOwokc21hcnR5LT5hc3NpZ24oJ2ZsZG5hbWVfcGFzc3dvcmQnLCRpZC4nZmV1X2lucHV0X3Bhc3N3b3JkJyk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9wYXNzd29yZCcpKTsKJHNpemUgPSAoaW50KSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpOwppZiggJHNpemUgPD0gMCApICRzaXplID0gJyc7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcGFzc3dvcmQnLAogICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnZmV1X2lucHV0X3Bhc3N3b3JkJywgJHBhc3N3b3JkLCAkc2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSkpOwoKaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJykgJiYgZnVuY3Rpb25fZXhpc3RzKCdtY3J5cHRfbW9kdWxlX29wZW4nKSApIHsKICAgICRzbWFydHktPmFzc2lnbigncHJvbXB0X3JlbWVtYmVybWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfcmVtZW1iZXJtZScpKTsKICAgICRzbWFydHktPmFzc2lnbignaWRfcmVtZW1iZXJtZScsJGlkLidmZXVfcmVtZW1iZXJtZScpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1lbWJlcm1lJywkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2ZldV9yZW1lbWJlcm1lJywxLCRyZW1lbWJlcm1lKSk7Cn0KCiRzbWFydHktPmFzc2lnbignaW5wdXRfc3VibWl0JywKICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdmZXVfYnRuX2xvZ2luJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2lnbmluX2J1dHRvbicsJHRoaXMtPkxhbmcoJ2xvZ2luJykpKSk7CgovLyBmcm9tIHRoaXMgcG9pbnQgZm9yd2FyZCwgYW55IGxpbmtzLCBldGMuLi4gc2hvdWxkIHJldHVybiB0byB0aGlzIHBhZ2UKLy8gaWYgdGhleSBjYW4KJHBhcmFtc1sncmV0dXJudG8nXSA9ICAkcmV0dXJuaWQ7CgokcGFnZSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkZm9yZ290cGFzc3dkJykpOwppZiggJHBhZ2UgKSB7CiAgICAkcGlkID0gQ29udGVudE1hbmFnZXI6OmdldF9pbnN0YW5jZSgpLT5HZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgICBpZiggJHBpZCA9PSBmYWxzZSApIHsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfZm9yZ290JywnPCEtLSBFcnJvciBjb3VsZCBub3QgZGV0ZXJtaW5lIHBhZ2UgZnJvbSBhbGlhcy9pZCAtLT4nKTsKICAgIH0KICAgIGVsc2UgewogICAgICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdsaW5rX2ZvcmdvdCcsJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcGlkLCR0aGlzLT5MYW5nKCdmb3Jnb3RwdycpLCRwYXJhbXMpKTsKICAgICAgICAvL251bm8tZGV2LVByZXR0eSBVcmwncwogICAgICAgICRwcmV0dHl1cmxfZm9yZ290ID0gJ2ZldS9mb3Jnb3QvJy4kcGlkOwogICAgICAgICRmb3Jnb3RfZmV1ID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVmYXVsdCcsICRwaWQsICAnJywgJHBhcmFtcywgJycsIHRydWUsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmxfZm9yZ290KTsKCiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmxfZm9yZ290JywkZm9yZ290X2ZldSk7CgogICAgICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICdsb3N0dXNlcm5hbWUnOwogICAgICAgICRzbWFydHktPmFzc2lnbignbGlua19sb3N0dW4nLCR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHBpZCwgJHRoaXMtPkxhbmcoJ2xvc3R1c2VybmFtZScpLCAkcGFyYW1zKSk7CiAgICAgICAgLy9udW5vLWRldi1QcmV0dHkgVXJsJ3MKICAgICAgICAkcHJldHR5dXJsX2xvc3R1biA9ICdmZXUvbG9zdHVzZXJuYW1lLycuJHBpZDsKICAgICAgICAkbG9zdHVuX2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcGlkLCAgJycsICRwYXJhbXMsICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsX2xvc3R1bik7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmxfbG9zdHVuJywkbG9zdHVuX2ZldSk7CiAgICB9Cn0KZWxzZSB7CiAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgJHNtYXJ0eS0+YXNzaWduKCdsaW5rX2ZvcmdvdCcsJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdkZWZhdWx0JywkdGhpcy0+TGFuZygnZm9yZ290cHcnKSwkcGFyYW1zKSk7CiAgICAkZm9yZ290X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHJldHVybmlkLCcnLCRwYXJhbXMsJycsdHJ1ZSwgZmFsc2UsICcnLCBmYWxzZSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9mb3Jnb3QnLCRmb3Jnb3RfZmV1KTsKCiAgICAkcGFyYW1zWydmb3JtJ10gPSAnbG9zdHVzZXJuYW1lJzsKICAgICRzbWFydHktPmFzc2lnbignbGlua19sb3N0dW4nLCR0aGlzLT5DcmVhdGVGcm9udGVuZExpbmsoJGlkLCRyZXR1cm5pZCwnZGVmYXVsdCcsJHRoaXMtPkxhbmcoJ2xvc3R1c2VybmFtZScpLCRwYXJhbXMpKTsKCiAgICAkbG9zdHVuX2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsICRyZXR1cm5pZCwnJywkcGFyYW1zLCAnJyx0cnVlLGZhbHNlLCcnLGZhbHNlKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndXJsX2xvc3R1bicsJGxvc3R1bl9mZXUpOwp9CgppZiAoaXNzZXQoJHBhcmFtc1snb25seV9ncm91cHMnXSkpIHsKICAgICRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICc8ZGl2PicuJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ29ubHlfZ3JvdXBzJywgJHBhcmFtc1snb25seV9ncm91cHMnXSkgLic8L2Rpdj4nLiAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKfQplbHNlIHsKICAgICRzbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwp9CgppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfQUxUTE9HSU4pICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdhbHRfbG9naW5mb3JtJywkY29uc3VtZXItPmdldF9sb2dpbl9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykpOwp9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfbG9naW5mb3JtJyk7Ci8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.user_logoutform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCiRnQ21zID0gY21zbXMoKTsKCiRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfTE9HT1VUKSApIHsKICAvLyB0aGUgY29uc3VtZXIgcHJvdmlkZXMgdGhlIGxvZ2luIGNhcGFiaWxpdGllcwogIGVjaG8gJGNvbnN1bWVyLT5nZXRfbG9nb3V0X2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKICByZXR1cm47Cn0KCi8vIGRvIHRoZSBkZWZhdWx0CiR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwppZiggISR1aWQgKSByZXR1cm47CiR1c2VybmFtZSA9ICR0aGlzLT5Mb2dnZWRJbk5hbWUoKTsKCiRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ21lc3NhZ2UnXSkgKSAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLHRyaW0oJHBhcmFtc1snbWVzc2FnZSddKSk7CmlmKCBpc3NldCgkcGFyYW1zWydlcnJvciddKSApICRzbWFydHktPmFzc2lnbignZXJyb3InLHRyaW0oJHBhcmFtc1snZXJyb3InXSkpOwoKJGNnZSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ0dFeHRlbnNpb25zJyk7CmlmKCAkY2dlICYmIGlzc2V0KCRwYXJhbXNbJ3JldHVybmxhc3QnXSkgKSB7CiAgJHRoaXNfdXJsID0gY2dlX3VybDo6Y3VycmVudF91cmwoKTsKICAkX1NFU1NJT05bJ2ZldV9wcmVsb2dvdXRfdXJsJ10gPSAkdGhpc191cmw7CiAgJHNtYXJ0eS0+YXNzaWduKCdmZXVfcHJlbG9nb3V0X3VybCcsJHRoaXNfdXJsKTsKfQoKLy8gcmVwbGFjZSB7JGdyb3VwbmFtZX0gd2l0aCB0aGUgZmlyc3QgZ3JvdXBuYW1lIHdlIGNhbiBmaW5kIHRoYXQgbWF0Y2hlcwokZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CiRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2xvZ2dlZGluJywgJHRoaXMtPkxhbmcoJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJykpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJpZCcsICR1aWQpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywgJHVzZXJuYW1lKTsKCiRwYXJtcyA9IGFycmF5KCk7CmlmKCBpc3NldCgkcGFyYW1zWydyZXR1cm50byddKSApICRwYXJtc1sncmV0dXJudG8nXSA9ICRwYXJhbXNbJ3JldHVybnRvJ107CgovLyBzdGFydCB1Z2x5Ci8vIHRvZG86IG5lZWQgc29tZSBtZWNoYW5pc20gdG8gdGVsbCAnd2hpY2gnIGF1dGhlbnRpY2F0aW9uIHdhcyB1c2VkLCBpZiBhbHQgYXV0aGVudGljYXRpb24gaXMgc3VwcG9ydGVkLgokbG9nZ2VkaW5fdXNpbmdfc3RkID0gRkFMU0U7CiRtYW5pcCA9ICR0aGlzLT5HZXRNYW5pcHVsYXRvcigpOwppZiggJG1hbmlwLT5fc3RkX0xvZ2dlZEluSWQoKSApICRsb2dnZWRpbl91c2luZ19zdGQgPSBUUlVFOwoKLy8gZW5kIHVnbHkKaWYoICR0aGlzLT5Mb2dnZWRJbklkKCkgKSB7CiAgJHNtYXJ0eS0+YXNzaWduKCdsaW5rX2xvZ291dCcsJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCJsb2dvdXQiLCR0aGlzLT5MYW5nKCdsb2dvdXQnKSwgJHBhcm1zKSk7CiAgLy8gbnVuby1kZXYtUHJldHR5IFVybCdzCiAgJHByZXR0eXVybF9sb2dvdXQgPSAnZmV1L2xvZ291dC8nLiRyZXR1cm5pZDsKICBpZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKSAkcHJldHR5dXJsX2xvZ291dCA9ICcnOwoKICAkbG9nb3V0X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnbG9nb3V0JywkcmV0dXJuaWQsJycsJHBhcm1zLCcnLHRydWUsZmFsc2UsJycsZmFsc2UsJHByZXR0eXVybF9sb2dvdXQpOwogICRzbWFydHktPmFzc2lnbigndXJsX2xvZ291dCcsICRsb2dvdXRfZmV1KTsKfQoKJHBhcm1zWydmb3JtJ10gPSAnY2hhbmdlc2V0dGluZ3MnOwokcGFnZSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJykpOwppZiggJHBhZ2UgKSB7CiAgJHBhcm1zWydyZXR1cm50byddID0gJHJldHVybmlkOwogICRwYWdlaWQgPSBDb250ZW50TWFuYWdlcjo6Z2V0X2luc3RhbmNlKCktPkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKICBpZiggJHBhZ2VpZCA9PSBmYWxzZSApIHsKICAgICRzbWFydHktPmFzc2lnbignbGlua19jaGFuZ2VzZXR0aW5ncycsJzwhLS0gRXJyb3IgY291bGQgbm90IGRldGVybWluZSBwYWdlIGZyb20gYWxpYXMvaWQgLS0+Jyk7CiAgfQogIGVsc2UgewogICAgJHNtYXJ0eS0+YXNzaWduKCdsaW5rX2NoYW5nZXNldHRpbmdzJywkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRwYWdlaWQsJHRoaXMtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncycpLCRwYXJtcykpOwogICAgJGNoYW5nZXNldHRpbmdzX2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwnZGVmYXVsdCcsJHBhZ2VpZCwnJywkcGFybXMsJycsdHJ1ZSxmYWxzZSwnJyxmYWxzZSk7CgogICAgJHNtYXJ0eS0+YXNzaWduKCd1cmxfY2hhbmdlc2V0dGluZ3MnLCRjaGFuZ2VzZXR0aW5nc19mZXUpOwogIH0KfQplbHNlIHsKICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfY2hhbmdlc2V0dGluZ3MnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncycpLCAkcGFybXMpKTsKICAkY2hhbmdlc2V0dGluZ3NfZmV1ID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsJHBhcm1zLCAnJyx0cnVlLGZhbHNlLCcnLGZhbHNlKTsKICAkc21hcnR5LT5hc3NpZ24oJ3VybF9jaGFuZ2VzZXR0aW5ncycsJGNoYW5nZXNldHRpbmdzX2ZldSk7Cn0KJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCAkdGhpcy0+TG9nZ2VkSW5JZCgpICk7CmlmKCAkcHJvcHMgIT09IGZhbHNlICkgewogIGZvcmVhY2goICRwcm9wcyBhcyAkcCApIHsKICAgICRzbWFydHktPmFzc2lnbigkcFsndGl0bGUnXSwkcFsnZGF0YSddKTsKICB9Cn0KCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9BTFRMT0dJTikgKSB7CiAgLy8gdGhlIGNvbnN1bWVyIGhhcyBhbHRlcm5hdGUgbG9naW4gY2FwYWJpbGl0aWVzLi4uLgogICRyZXMgPSAkY29uc3VtZXItPmdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwogICRzbWFydHktPmFzc2lnbignYWx0X2xvZ291dGZvcm0nLCRyZXMpOwp9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfbG9nb3V0Zm9ybScpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/help.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPgo8aDM+RmVhdHVyZXM6PC9oMz4KPHVsPgo8bGk+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L2xpPgo8bGk+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L2xpPgo8bGk+UHJvdmlkZXMgYSBjb250ZW50IHR5cGUgdG8gbWFrZSBwcm90ZWN0aW5nIGNvbnRlbnQgc2ltcGxlLCBpZiBub3QgdHJpdmlhbC48L2xpPgo8bGk+Q2FwYWJsZSBvZiBoYW5kbGluZyB0aG91c2FuZHMgb2YgdXNlcnM8L2xpPgo8bGk+RXh0ZW5zaXZlIGZsZXhpYmlsaXR5IGZvciBoYW5kbGluZyByZWRpcmVjdGlvbiBhZnRlciBsb2dpbiwgYW5kIHNlbmRzIGV2ZW50cyB0byBleHRlbmQgdGhlIHdvcmtmbG93IHByb2Nlc3MuPC9saT4KPGxpPkZvcmdvdHRlbiBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L2xpPgo8bGk+RXh0ZW5kYWJsZSB0byBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gdHlwZXMgKExEQVAsIEZhY2Vib29rLCBldGMpLjwvbGk+CjxsaT5Qcm92aWRlcyBleHRlbnNpdmUgaW1wb3J0IGFuZCBleHBvcnQgY2FwYWJpbGl0aWVzLjwvbGk+CjxsaT5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHkgaW50byB2YXJpb3VzIG90aGVyIENNU01TIGFkZG9uIG1vZHVsZXMuPC9saT4KPGxpPlRoZSBhYmlsaXR5IHRvIGVuY3J5cHQgc2Vuc2l0aXZlIHVzZXIgZGF0YS48L2xpPgo8L3VsPgo8aDM+SG93IGRvIEkgdXNlIGl0OjwvaDM+CjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIHRoZSBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBHcm91cHMmcXVvdDsgbWVudS48L3A+CjxwPllvdSBuZWVkIHRvIGRlZmluZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIGV0Yy48L3A+CjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIChvciBlbWFpbCBhZGRyZXNzKSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdS4KPHA+PGI+Tm90ZTo8L2I+IE5ldyBpbnN0YWxsYXRpb25zIG9mIHRoZSBGRVUgbW9kdWxlIHNwZWNpZnkgdGhhdCB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAodGhpcyBvcHRpb24gY2FuIGJlIGNoYW5nZWQgaW4gdGhlIG1vZHVsZXMgYWRtaW4gcGFuZWwpLiAgU28gaWYgdXNpbmcgdGhpcyBvcHRpb24geW91IHdpbGwgbm90IG5lZWQgdG8gY3JlYXRlIGFuIGVtYWlsIGFkZHJlc3MgcHJvcGVydHkuPC9wPgo8cD5OZXh0IHlvdSBtdXN0IGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBvbmUgb3IgbW9yZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2hldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZC4gIEF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBtdXN0IGJlIGFzc29jaWF0ZWQgd2l0aCBhIGdyb3VwLjwvcD4KPHA+PGI+Tm90ZTo8L2I+IFByb3BlcnRpZXMgY2FuIG9ubHkgYmUgZGVsZXRlZCBvbmNlIHRoZXkgYXJlIGRpc2Fzc29jaWF0ZWQgZnJvbSBhbGwgZ3JvdXBzLjwvcD4KPHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS4gIFRha2Ugc29tZSB0aW1lIGhlcmUsIHRoZXJlIGFyZSBudW1lcm91cyBvcHRpb25zLjwvcD4KPHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZS9lbWFpbCBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrICZxdW90O05leHQmcXVvdDs8L3A+CjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlYXN0IG9uZSB1c2VyPC9wPgo8cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPgo8cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge0Zyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGUuICBZb3UgbXVzdCBlbnN1cmUgdGhhdCB0aGlzIHBhZ2UgaXMgc2V0IHRvICZxdW90O25vdCBjYWNoZSZxdW90OyB3aGVuIGVkaXRpbmcgdGhlIGNvbnRlbnQgcGFnZShzKSB3aGVyZSB0aGUgbG9naW4gZm9ybSBpcyBkaXNwbGF5ZWQuICBJZiB5b3UgY2FsbCB0aGUge0Zyb250RW5kVXNlcnN9IHRhZyBmcm9tIHdpdGhpbiBhIHBhZ2UgdGVtcGxhdGUsIHlvdSBtdXN0IGRpc2FibGUgY2FjaGluZyBvbiBhbGwgcGFnZXMgdGhhdCB1c2UgdGhhdCB0ZW1wbGF0ZS48L3A+CjxwPkFkZGluZyBwcm90ZWN0ZWQgY29udGVudCB0byB5b3VyIENNU01TIHNpdGUgaXMgYXMgc2ltcGxlIGFzIGNyZWF0aW5nIG5ldyBwYWdlcyBvZiB0eXBlICZxdW90O1Byb3RlY3RlZCBDb250ZW50JnF1b3Q7IGFuZCBzZWxlY3Rpbmcgd2hpY2ggdXNlciBncm91cHMgKG9yIGFsbCkgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoZSBwYWdlLjwvcD4KCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4KPGg0PkZ1bmN0aW9uczo8L2g0Pgo8dWw+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpZCgkdXNlcm5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgaW50ZWdlciB1c2VyIGlkIGdpdmVuIGEgdXNlcm5hbWUuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJnF1b3Q7YXNzaWduJnF1b3Q7IHBhcmFtZXRlci48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyaWQoJHVzZXJuYW1lLCd1aW5mbycpfTwvY29kZT48L3A+CjwvbGk+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpbmZvKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgdXNlciBpbmZvcm1hdGlvbiBmb3IgYSBzaW5nbGUgdXNlci4gIFRoZSBvdXRwdXQgaXMgYW4gYXJyYXkgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmcXVvdDthc3NpZ24mcXVvdDsgcGFyYW1ldGVyLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJpbmZvKCRzb21ldGhpbmcudXNlcmlkLCd1aW5mbycpfTxici8+eyR1aW5mb3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhbiBhcnJheSBvZiB1c2VybmFtZXMgYW5kIHVzZXJpZHMgZm9yIGFsbCB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwLiAgVGhlIG91dHB1dCBpcyBhc3NpZ25lZCB0byBhIHNtYXJ0eSB2YXJpYWJsZSBzcGVjaWZpZWQgaW4gdGhlICZxdW90O2Fzc2lnbiZxdW90OyBwYXJhbWV0ZXIuPC9wPgo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCdtZW1iZXJzJywnbXltZW1iZXJzJyl9PGJyLz57JG15bWVtYmVyc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2VyX3Byb3BlcnRpZXMoNSwndXNlcnByb3BzJyl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZndDtnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZVssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgZnVuY3Rpb24gcmV0dXJucyB0aGUgdGV4dCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBvcHRpb24gdmFsdWUgZm9yIGEgc3BlY2lmaWVkIGRyb3Bkb3duIHByb3BlcnR5LjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJ2FnZV9yYW5nZScsJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIGFuIGFycmF5IG9mIG9wdGlvbiB0ZXh0cyBjb3JyZXNwb25kaW5nIHRvIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9uIHZhbHVlcy48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCdmYXZvcml0ZV9mb29kcycsJG9uZXByb3B2YWx1ZSwnZmF2b3JpdGVfZm9vZHMnKX08YnIvPnskZmF2b3JpdGVfZm9vZHN8QHByaW50X3J9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KCR1aWRbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgc21hcnR5IG1ldGhvZCByZXR1cm5zIHRoZSB1bml4IHRpbWVzdGFtcCB0aGF0IHRoZSBzcGVjaWZpZWQgdWlkIGFjY291bnQgZXhwaXJlcy4gIFRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiBmYWxzZSBpZiB0aGUgdWlkIGNhbm5vdCBiZSBmb3VuZCBvciBzb21lIG90aGVyIGVycm9yIG9jY3VycmVkLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KDI1LCdleHBpcnknKX08YnIvPnskZXhwaXJ5fGNtc19kYXRlX2Zvcm1hdH08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoJHVpZFssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgbWV0aG9kIHJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBhY2NvdW50IGhhcyBleHBpcmVkLiAgVGhlIG1ldGhvZCB3aWxsIGFsc28gcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoMjUsJ2V4cGlyZWQnKX08YnIvPntpZiAkZXhwaXJlZH1VSUQgMjUgY2FuIG5vIGxvbmdlciBsb2dpbiB0byB0aGUgc3lzdGVtey9pZn08L2NvZGU+PC9wPgo8L2xpPgo8L3VsPgoKPGgzPlByaXZhY3kgUmVsYXRlZCBJdGVtczo8L2gzPgo8cD5UaGlzIG1vZHVsZSBkb2VzIHRyYWNrIHRoZSBJUCBhZGRyZXNzIG9mIHVzZXJzLiAgQW5kIGRvZXMgc3RvcmUgdGhhdCBpbmZvcm1hdGlvbiBpbiBpdHMgaGlzdG9yeS4gIEFkZGl0aW9uYWxseSwgdGhlIGFkbWluaXN0cmF0b3IgaGFzIHRoZSBhYmlsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgbW9kdWxlIHNvIHRoYXQgY29va2llcyBhcmUgdXNlZC4gIEhvd2V2ZXIgbm8gcGVyc29uYWwgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIHRoZSBjb29raWVzIChpZiBlbmFibGVkKS4gIE9ubHkgYSBzeXN0ZW0gYXNzaWduZWQgdW5pcXVlIHVzZXIgaWRlbnRpZmVyLCBhbmQgYSBzZXNzaW9uIGlkZW50aWZpZXIuPC9wPgo8aDM+U2VlIEFsc286PC9oMz4KPHVsPgogIDxsaT5DdXN0b21Db250ZW50IC0gUHJvdmlkZXMgc21hcnR5IHRhZ3MgYW5kIHV0aWxpdGllcyBmb3IgbW9yZSBmbGV4aWJsZSBjb250cm9sIG9mIHByb3RlY3RlZCBwYWdlcy48L2xpPgogIDxsaT5TZWxmUmVnaXN0cmF0aW9uIC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcywgaW5jbHVkaW5nIHBhaWQgcmVnaXN0cmF0aW9uIG9wdGlvbnMuPC9saT4KICA8bGk+Q0dVc2VyRGlyZWN0b3J5IC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGFuZCBzZWFyY2ggdGhyb3VnaCB0aGUgcHJvZmlsZSBpbmZvcm1hdGlvbiBvZiBrbm93biB1c2Vycy48L2xpPgo8L3VsPgo8aDM+RW5jcnlwdGVkIERhdGE6PC9oMz4KPHA+VGhlIEVuY3J5cHRlZCBmaWVsZCBmdW5jdGlvbmFsaXR5IGlzIGludGVuZGVkIHRvIHN0b3JlIChpbiBhIHNlY3VyZSB3YXkpIHBlcnNvbmFsIGFuZCBwcml2YXRlIGRhdGEgdGhhdCBldmVuIHRoZSBzaXRlIGFkbWluaXN0cmF0b3Igc2hvdWxkIG5vdCBoYXZlIGFjY2VzcyB0by4gIGkuZTogaXRlbXMgc3VjaCBhcyBDcmVkaXQgQ2FyZCBpbmZvcm1hdGlvbi4gIFRoZSBvbmx5IHBlcnNvbiB0aGF0IHNob3VsZCBiZSBhYmxlIHRvIHZpZXcgYW5kIGVkaXQgdGhpcyBkYXRhIGlzIHRoZSB1c2VyIGhpbXNlbGYuICAgVGhpcyBkYXRhIHNob3VsZCBub3QgYmUgZXhwb3J0ZWQgdG8gcGxhaW4gdGV4dCBlaXRoZXIuICBUaGUgZGF0YSBjb3VsZCBob3dldmVyIGJlIHJlYWQgYW5kIHVzZWQgYnkgb3RoZXIgbW9kdWxlcy48L3A+CjxwPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gIFRoZXJlIG1heSBiZSBhIG5lZWQgZm9yIGFuIGFkZGl0aW9uYWwgbW9kdWxlIHRvIGRpc3BsYXkgdGhlIHVuZW5jcnlwdGVkIGZvcm0gb2YgZW5jcnl0cGVkIHVzZXIgaW5mb3JtYXRpb24sIGhvd2V2ZXIgdGhlIEZFVSBtb2R1bGUgZG9lcyBub3QgbmVlZCBpdC48L3A+CjxoMz5GQVE8L2gzPgo8dWw+CiAgPGxpPjxzdHJvbmc+UTo8L3N0cm9uZz4gV2h5IGNhbid0IEkgY3JlYXRlIGEgZ3JvdXAKICAgIDxwPjxzdHJvbmc+QTo8L3N0cm9uZz4gR3JvdXBzIGNhbid0IGJlIGNyZWF0ZWQgdW50aWxsIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBpcyBjcmVhdGVkLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFdoeSBjYW4ndCBJIGRlbGV0ZSBhIHByb3BlcnR5CiAgICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IEEgcHJvcGVydHkgY2Fubm90IGJlIGRlbGV0ZWQgdW50aWwgaXQgaXMgbm90IGFzc29jaWF0ZWQgd2l0aCBhbnkgZ3JvdXBzLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFNldHRpbmcgcHJvcGVydHkgb3JkZXIgZG9lc24ndCBzZWVtIHRvIHdvcmsKICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IFRoZSBwZXJjaWV2ZWQgcHJvcGVydHkgb3JkZXIgd2lsbCBjaGFuZ2UgZWFjaCB0aW1lIHRoZSBncm91cCBpcyBlZGl0ZWQuICBUaGUgcHJvcGVydGllcyB0aGF0IGFyZSBtYXJrZWQgYXMgJnF1b3Q7b2ZmJnF1b3Q7IHdpbGwgYWx3YXlzIGJlIGRpc3BsYXllZCBhdCB0aGUgYm90dG9tLCBidXQgdGhlIHNvcnQgb3JkZXIgb2Ygb3RoZXIgcHJvcGVydGllcyB3aWxsIGJlIHJldGFpbmVkLjwvcD4KICA8L2xpPgo8L3VsPgo8aDM+U3VwcG9ydDwvaDM+CjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4KPHVsPgo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwncwptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2NhbGd1eTEwMDAuY29tIj5jYWxndXkxMDAwLmNvbTwvYT4uPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPgo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICAKPC91bD4KPGgzPlBhcmFtZXRlcnM8L2gzPgo8dWw+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0iZGVmYXVsdCIKICA8cD5BY3Rpb25zOjwvcD4KICA8dWw+CiAgICA8bGk+PGVtPmRlZmF1bHQ8L2VtPiAtIFRoZSBkZWZhdWx0IGFjdGlvbiwgd2hpY2ggZW5hYmxlcyB0aGUgbm9ybWFsIGZvcm09IGJlaGF2aW91ci48L2xpPgogICAgPGxpPjxlbT5yZXNldF9zZXNzaW9uPC9lbT4gLSBQcm92aWRlIGEgamF2YXNjcmlwdCBjb250cm9sbGVkIHRlbXBsYXRlIHRvIGFsbG93IHRoZSBtYW51YWwsIG9yIGF1dG9tYXRpYyBwaW5naW5nIG9mIHRoZSB1c2VyIHNlc3Npb24uICBUaGlzIHRlbXBsYXRlIGNhbiBiZSB1c2VkIHRvIHJlbWluZCB0aGUgdXNlciB0aGF0IGhpcyBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgYW5kIHRvIHRyaWdnZXIgaXRzIHJlc2V0LiAgTm9ybWFsbHkgdGhpcyBtZXRob2QgaXMgbm90IHJlcXVpcmVkIGFzIGFueSBwYWdlIHRoYXQgZGlzcGxheXMgdGhlIEZyb250RW5kVXNlciBjb250cm9scyB3b3VsZCBoYW5kbGUgdGhpcywganVzdCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gdmlldyBhIHBhZ2Ugb24gYSByZWd1bGFyIGJhc2lzLiAgSG93ZXZlciwgaWYgdGhlcmUgYXJlIHBhZ2VzIHdpdGggYWxvdCBvZiBjb250ZW50IHJlcXVpcmluZyBleHRlbnNpdmUgcmVhZGluZywgdGhpcyBtYXkgYmUgYSB1c2VmdWwgc29sdXRpb24uPC9saT4KICAgIDxsaT48ZW0+dmlld3VzZXI8L2VtPiAtIERpc3BsYXkgYSByZXBvcnQgZm9yIGEgc2luZ2xlIHVzZXIsIHJlcXVpcmVzIHVzZSBvZiB0aGUgdWlkIHBhcmFtZXRlci48L2xpPgogIDwvdWw+CjwvbGk+Cgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSJuYW1lIgo8cD5Gb3Jtczo8L3A+Cjx1bD4KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPgogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4KIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0uPC9saT4KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPgo8L3VsPgo8L2xpPgoKPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPgogIDx1bD4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSJncm91cDEsIGdyb3VwMiwgZ3JvdXAzIgogICAgIDxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4KICAgIDwvbGk+CiAgICA8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9Imdyb3VwIgogICAgICA8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPgogICAgPC9saT4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0iMSIKICAgICAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPgogICAgPC9saT4KICAgIDxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsCiAgICAgIDxwPlVzZWQgd2l0aCB0aGUgdmlld3VzZXIgYWN0aW9uLiAgVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgdG8gc3BlY2lmeSB3aGljaCB1c2VyIHRvIHZpZXcgdGhlIGRldGFpbHMgb2YuPC9wPgogICAgPC9saT4KICA8L3VsPgo8L2xpPgo8L3VsPgoKPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0Cm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4KPGgzPlJlcXVpcmVtZW50czwvaDM+CjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4KPHA+Rm9yIGVuY3J5cHRlZCBmaWVsZHMgdGhlIG1jcnlwdCBmdW5jdGlvbmFsaXR5IGlzIHJlcXVpcmVkLjwvcD4KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+CjxwPkNvcHlyaWdodCAmY29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+CjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4K]]></data>
	</file>
	<file>
	  <filename>/icons/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/icons/delete.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAOZ/AAE82AkNrcLT4rHS4gpU4iJr4Cs51gBF4gYjqk1Wyhle4R1m4hk0zQZF2QkMlglJ2wAAfAAAggAuqgAAci514gkOpgBD4mWK3A5R22OK35Wh0bXW4rDL4q/J4jh64QpGzBI6pzNtygtL28DA0x000Qcou6e23hVoxoqKyyBXvmGP0gAi1REjtl9fo3FxzszM6BBW4jF84kmN2JTA4T2G0sjZ4ktXzCZmwhVZ3hE3qQADiAATlAAVmDJnyEKD4RcclgBBthNErBtCvVl/21JcxFNb05a43rjW4gAAXwAzrAYfogkUtgAioAA4tgAAbAovqJ2/4j1T15aW0K6/4gNK38XV4rXT4gEhmiY0yWNjtz2G4pSy4cfH4U5XxBVk4h9q4sHB3CRw4hcuyUiM4kFy2U1z2leU4h8ops3c4lCQ4iM01zl70ExXzyVhy6Gh44iItRBR3SArsCkxtnZ23Rg9qwAMjzx/4ghP4IKy4gAdnQAt13ST3xMpvkWG4g1X3ezs7CH5BAEAAH8ALAAAAAAQABAAAAe6gH+Cg4SFhC9zBiQMDGJYLlyFbgZkazcpQSB0QnxShGoyJ0ASeXURExM5LIRRNE0STDs6EE5IVyWERTMhSTyzExBPfkuEbBscRio9KW0FXgcBhDYDAmh4Y1oxXwQW0YMJ1B1mfXYUC9zegglWVVBpPh4U2wcVhF1HNRcAAA0iGHf0CBHZYqLMCn4PEgYcJGfPlCF6GsDBoUABFQeEUMTRkOEAjAVhCnxw8KYQmCxnEKhU8qPFCEMwDQUCADs=]]></data>
	</file>
	<file>
	  <filename>/icons/edit.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAOZ/ANfq//r+/ur0/+Xy/9/1/9rs/9bu/nehxf/+/fX///H4/+32/+j0/+P3/+bz/+Hw/3+ny3mgxV2XzViTyXqhxVuXzePx//z9/3eew3CYv/j7//r9//3+///+/9zu//f7//j8/3GZv/T6//b6/9/u/93u/+3+//b7/+Dv/1qTyVeY0HGYv/r8/8jf84etz26Xv1eTyfP4/+v1/uX1+FuY0NHq+q/L5IWhwVCKwG6fyun5/+n6/8DL2dzj6VaRyVqAp+T4//z+//T5//L5+9zt/6Kyxc/b5ODy/+Dn63ifxD9nkUdoj+P//1KKv9/v/52ww/D6/3KawfP6/1ORylGSzGOc0N/w/9fi64ykvJWmvPT9//f+/+Xx/////uH0/42ryf7+//7//1qQw0N1pkx5pYuetleNwFiVzePt8luWz+v7/9PZ41qX0J650MPM29ni6vH3++Lv/97u//b4+VJwllZzlVWTytjr/+Lx/16Bp+31/4Sdt+b4/3adw////////yH5BAEAAH8ALAAAAAAQABAAAAfjgH95BxQUGIeHfRERBz9/fyt+fgiSlX5dkhCPIX5rWZVgF35FPH6af0lIdWWSHEEgfk9LRi6PUQg9c5IXGx8fcG9DOY8ZlWEXLBonIgpQCRPEfh0dQRvKIgsDFiYp0R28GiNSC1x4cWrQf8UcGyAfMTLaKHI66ZwX4QoCDhZOJQVAYDx64YeDED0M5Hko4KGBj0dmAqCRsc+ClYUAWhiw80jMFTpYEjx4UOKOly9KbKR51MSPmz1aSJAgAuDIjTYmpjzC4WfLDBM7+DQgQKCGASZUHpGpwlSC0woVztBgo2LMn0AAOw==]]></data>
	</file>
	<file>
	  <filename>/icons/users.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAPYAAAxdeA1deA1eeA5hfA9ifRBifhBjfhBlgRJohBJsiBJsiRNuixJykRNzkhRykBV0kxR1lBZ1lBR5mRV8nRh7nBh8nBh8nRh9nRh/oBWAoheBoxmDpRqDpRiFpxqEphmFqBmGqRqGqBmHqhuHqhqIqxuIqxuKrRyLrxyMrx2QtR6QtB6Stx2bsx6dtR+TuB+TuR6ZuyGbwiGcwyGcxCKhyiOiyyOjyySjzCSkziWq1CWr1Saq1Caq1Se12iiw3Cix3Sm53im14iq45Su/5Su/5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEUALAAAAAAQABAAAAeCgEWCg0UtLISIgzBAREQ9iYg7QkFBQjaQgzs+mz6XmEU4O6I7M59FMjc2NzgppikyMbEfphsvtikQnxocKCgnJxuQFx8lIR4bGxzEHxKDDRgVFBQV1NHTGA2CDhAP3d7eEBAOggoL5ufo54IHCO3u7+0HgwQEBfb3+IkC+/wCAISBAAA7]]></data>
	</file>
	<file>
	  <filename>/icons/xml_rss.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhJAAOAOYAAP/////9+f/9+v/68f/58P/45P/24//z3v7x2/7v2v7pvP7os/7muf7nqP7ktf7lr/7jo/7iq/7jmf7frv7gnv7cq/7fiv7cmf7YlP3be/3eZP3bYP3Vm/3aX/7Uj/3VfP3WWv3Qiv3Rgv3VWf3UWP3SXPzQY/3Mhf3PUPzLU/zKW/3FafzHRvzDU/zESv3DXfzAYvzAPPy8S/68N/64Mvy2Qvy4M/6xKfywOvywKfypMfuoJvypH/yjKfukHPuhFfucE/uaE/uZC/+WBf+VBPuVCf2TAvuRAPuSAf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEHAEkALAAAAAAkAA4AAAf/gDdEREOFhoeIiYqHgjMbGpCRkpOUlZAdNIMkIJydnp+goZ+DKKWlDQWlGQUlpQUSphasKLKmtqWDLLq6KQALLAIGuwAAuwICJiwQxbvNLIMx0dIPAAoALtLEHzEqxCoxFADS49GDNufoNsQR6QABAzYMxC02FwDp+IM5+/w5BwAi+gHAAOAFAAcAZOQg2K/hIB4QI64AQABARB4AalQMUCMjDw8WL14c9KOkSQAIfACYcBIHDAAhcADA8SPETBw4dpgsOUiIT58VAAARwgGADp9GhQAQoiPpCWLEEvz0OQiJVas9glztUQSr1a5IenztQTbrVauDiBxZy7at27dwDd0SMZK2rt27ePPODQQAOw==]]></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[PD9waHAKJGxhbmdbJ2Vycm9yX2NhbnRzZXRwcm9wZXJ0eXR5cGUnXSA9ICdDYW5ub3Qgc2V0IHByb3BlcnR5IG9mIHRoaXMgdHlwZSc7CiRsYW5nWydpbmZvX2ltcG9ydF9mb3JtYXQnXSA9ICc8cD5Gb3IgaW5mb3JtYXRpb24gb24gdGhlIGltcG9ydCBmb3JtYXQgeW91IHNob3VsZCBjcmVhdGUgYSBzYW1wbGUgdXNlciAob3IgdHdvKSBpbiB0aGUgZGVzaXJlZCBncm91cHMgYW5kIGV4cG9ydCB0aGF0IGluZm9ybWF0aW9uLiAgVGhlIHJlc3VsdGluZyBmaWxlIGNhbiB0aGVuIGJlIHVzZWQgYXMgYSB0ZW1wbGF0ZSBmb3IgZnVydGhlciBpbXBvcnRzPC9wPjxici8+CiA8cD5BZGRpdGlvbmFsbHksIGEgdHh0cGFzc3dvcmQgY29sdW1uIGNhbiBiZSBhZGRlZCB0byB0aGUgaW1wb3J0IGZpbGUgdG8gZGVmaW5lIChpbiBwbGFpbiB0ZXh0KSB0aGUgcGFzc3dvcmQgZm9yIHVzZXJzLiAgSWYgdGhlIHR4dHBhc3N3b3JkIGNvbHVtbiBpcyBlbXB0eSBmb3IgYW4gZXhpc3RpbmcgdXNlciBoaXMgcGFzc3dvcmQgaXMgbm90IHRvdWNoZWQuICBJZiB0aGlzIGNvbHVtbiBpcyBlbXB0eSBmb3IgYSBuZXcgdXNlciwgb3Igbm90IHByb3ZpZGVkIGF0IGFsbCB0aGUgaGFyZGNvZGVkIHBhc3N3b3JkICZxdW90O2NoYW5nZW1lJnF1b3Q7IGlzIHVzZWQuJzsKJGxhbmdbJ2ltcG9ydF9kZWxldGVkdXNlciddID0gJ0RlbGV0ZWQgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9leHBvcnRfbm91c2VycyddID0gJ05vIHVzZXJzIGZvdW5kIHRvIGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0X3VzZXJzJ10gPSAnRXhwb3J0IFVzZXJzJzsKJGxhbmdbJ3RpdGxlX2V4cG9ydF91c2VycyddID0gJ0V4cG9ydCBVc2VycyB0byBhbiBBU0NJSSBmaWxlJzsKJGxhbmdbJ2luZm9fZW5jcnlwdCddID0gJ0VuY3J5cHRlZCBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBleHBvcnRlZCB0byBBU0NJSSBvciB2aWV3ZWQgYnkgYW4gYWRtaW5pc3RyYXRvci4gIFRoZXkgY2FuIG9ubHkgYmUgZWRpdGVkIGJ5IHRoZSBhdXRob3JpemVkIHVzZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0Z3JvdXBuYW1lJ10gPSAnSW52YWxpZCwgb3IgZW1wdHkgZ3JvdXAgbmFtZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2NvbHVtbmNvdW50J10gPSAnSW5jb3JyZWN0IGNvbHVtbiBjb3VudCc7CiRsYW5nWydwcm9tcHRfZGVsaW1pdGVyJ10gPSAnRGVsaW1pdGVyJzsKJGxhbmdbJ2Vycm9yX2NyZWF0ZXRtcGZpbGUnXSA9ICdQcm9ibGVtIGNyZWF0aW5nIHRlbXBvcmFyeSBmaWxlJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVfdXNlcnMnXSA9ICdEZWxldGUgZXh0cmEgdXNlcnMnOwokbGFuZ1snaW5mb19pbXBvcnRfZGVsZXRlX3VzZXJzJ10gPSAnSWYgZW5hYmxlZCwgYW5kIG9ubHkgPHN0cm9uZz5vbmUgdXNlciBncm91cDwvc3Ryb25nPiBpcyBtZW50aW9uZWQgaW4gdGhlIGltcG9ydCBmaWxlLCB1c2VycyB0aGF0IGFyZSBtZW1iZXJzIG9mIHRoYXQgdXNlciBncm91cCBidXQgbm90IG1lbnRpb25lZCBpbiB0aGUgaW1wb3J0IGZpbGUsIHdpbGwgYmUgZGVsZXRlZC4gIENhdXRpb24gc2hvdWxkIGJlIHVzZWQgaGVyZSwgYXMgbm8gY2hlY2tzIGFyZSBkb25lIHRvIHNlZSBpZiB0aGUgZGVsZXRlZCB1c2VycyBhcmUgbWVtYmVycyBvZiBhbnkgb3RoZXIgZ3JvdXBzLic7CiRsYW5nWyd0aXRsZV9pbXBvcnRfdXNlcnMnXSA9ICdJbXBvcnQgdXNlcnMgZnJvbSBhIENTViB0eXBlIGZpbGUnOwokbGFuZ1snZnJvbnRlbmRfYWNjZXNzJ10gPSAnVmlld2Vycyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9jb250cm9scyddID0gJ0Nhbm5vdCBkaXNwbGF5IGxvc3R1c2VybmFtZSBmb3JtLi4uIG5vIHN1aXRhYmxlIGZpZWxkcyBmb3VuZCB0byBkaXNwbGF5JzsKJGxhbmdbJ2luZm9fZmlsdGVyX3NvcnRieSddID0gJzxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gQ29sdW1uIHNvcnRpbmcgd2lsbCBwcm92aWRlIGFkZGl0aW9uYWwgc29ydGluZyBvbiBtYXRjaGVkIGVsZW1lbnRzJzsKJGxhbmdbJ2FueSddID0gJ0FueSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfYXNjJ10gPSAnVXNlcm5hbWUgKGFzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X3VzZXJuYW1lX2Rlc2MnXSA9ICdVc2VybmFtZSAoZGVzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdDcmVhdGUgRGF0ZSAoYXNjZW5kaW5nKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdDcmVhdGUgRGF0ZSAoZGVzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfYXNjJ10gPSAnRXhwaXJ5IERhdGUgKGFzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0V4cGlyeSBEYXRlIChkZXNjZW5kaW5nKSc7CgokbGFuZ1snaW5mb19lbmNyeXB0ZWQnXSA9ICdFbmNyeXB0ZWQgcHJvcGVydGllcyBjYW4gb25seSBiZSBzZWVuIGFuZCBlZGl0ZWQgYnkgdGhlIHVzZXIuICBOb3QgZXZlbiB0aGUgc2l0ZSBhZG1pbmlzdHJhdG9yIGNhbiBzZWUgb3IgbWFuYWdlIHRoaXMgZGF0YS4nOwokbGFuZ1snZW5jcnlwdGVkJ10gPSAnRW5jcnlwdGVkJzsKJGxhbmdbJ2luZm9fY29va2llbmFtZSddID0gJ0lmIHNldCwgdGhlICZxdW90O3JlbWVtYmVyIG1lJnF1b3Q7IGZ1bmN0aW9uYWxpdHkgd2lsbCBiZSBlbmFibGVkLiAgVGhpcyBpcyBzaW1pbGFyIHRvIHRoZSBjb29raWUga2VlcGFsaXZlIGZ1bmN0aW9uYWxpdHksIGJ1dCBsYXN0cyB1cCB0byBzaXh0eSBkYXlzLic7CiRsYW5nWydtc2dfdXNlcm5hbWVfcmVhZG9ubHknXSA9ICdUaGUgYXV0aGVudGljYXRpb24gY29uc3VtZXIgZG9lcyBub3QgcGVybWl0IGNoYW5naW5nIHRoZSB1c2VybmFtZSBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ21zZ19wYXNzd29yZF9yZWFkb25seSddID0gJ1RoZSBhdXRoZW50aWNhdGlvbiBjb25zdW1lciBkb2VzIG5vdCBwZXJtaXQgY2hhbmdpbmcgdGhlIHBhc3N3b3JkIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1sncHJvbXB0X25vcm1hbGxvZ2luJ10gPSAnRGlyZWN0IExvZ2luJzsKJGxhbmdbJ21vdmVfdXAnXSA9ICdNb3ZlIFVwJzsKJGxhbmdbJ21vdmVfZG93biddID0gJ01vdmUgRG93bic7CiRsYW5nWyd0aXRsZV9wcm9wbW9kdWxlJ10gPSAnVGhpcyBwcm9wZXJ0eSBpcyBjcmVhdGVkIGJ5IGEgbW9kdWxlLCBhbmQgY2Fubm90IGJlIGVkaXRlZCc7CiRsYW5nWydub3RfYXZhaWxhYmxlJ10gPSAnTm90IEF2YWlsYWJsZSc7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnQnkgZGVmYXVsdCwgdGhpcyBmaWVsZCBzaG91bGQgYmUgY2hlY2tlZCc7CiRsYW5nWydvcGVyYXRpb25fY29tcGxldGVkJ10gPSAnT3BlcmF0aW9uIENvbXBsZXRlZCc7CiRsYW5nWydtZW1iZXJzJ10gPSAnTWVtYmVycyc7CiRsYW5nWyd2aWV3X2ZpbHRlciddID0gJ1ZpZXcgRmlsdGVyJzsKJGxhbmdbJ2RhdGEnXSA9ICdEYXRhJzsKJGxhbmdbJ2FwcGxpZWQnXSA9ICdBcHBsaWVkJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJyZsdDsmbHQ7JzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnJmx0Oyc7CiRsYW5nWyduZXh0cGFnZSddID0gJyZndDsnOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICcmZ3Q7Jmd0Oyc7CiRsYW5nWydwYWdlJ10gPSAnUGFnZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdBbGxvdyBDaGFuZ2luZyBVc2VybmFtZSc7CiRsYW5nWydpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnSWYgZW5hYmxlZCB1c2VycyB3aWxsIGJlIHBlcm1pdHRlZCB0byBjaGFuZ2UgdGhlaXIgdXNlcm5hbWUgYWxvbmcgd2l0aCBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ1RlbXBsYXRlIHNhdmVkJzsKJGxhbmdbJ3RlbXBsYXRlX3Jlc2V0ZGVmYXVsdHMnXSA9ICdUZW1wbGF0ZSByZXNldCB0byBkZWZhdWx0cyc7CiRsYW5nWydsYmxfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnVGVtcGxhdGVzJzsKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnRW5hYmxlIGNhcHRjaGEgb24gdGhlIGxvZ2luIGZvcm0nOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ0lmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIGFuZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugc3RhdGVzIHRvIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0sIHRoaXMgb3B0aW9uIGNvbnRyb2xzIHdldGhlciBhIGNhcHRjaGEgd2lsbCBiZSBkaXNwbGF5ZWQgb24gdGhlIGxvZ2luIHNjcmVlbi4gIElmIGNhcHRjaGEgaXMgYXZhaWxhYmxlJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1lvdSBhcmUgbm90IGF1dGhvcml6ZWQgdG8gdmlldyB0aGlzIGNvbnRlbnQnOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdTcGVjaWZ5IGEgbGlzdCBvZiBGRVUgZ3JvdXBzIHRoYXQgbWF5IGhhdmUgYWNjZXNzIHRvIHRoaXMgcGFnZS4gIFNlbGVjdGluZyBubyBncm91cHMgd2lsbCBhbGxvdyBhbnkgdXNlciBsb2dnZWQgaW4gdG8gRkVVIHRvIHZpZXcgdGhlIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdQcm90ZWN0ZWQgUGFnZSBTZXR0aW5ncyc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdBbGxvd2VkIEdyb3Vwcyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2dyb3VwcyddID0gJ1NlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgYXJlIChieSBkZWZhdWx0KSBhbGxvd2VkIHRvIHZpZXcgcHJvdGVjdGVkIHBhZ2VzLiAgQW4gZWRpdG9yIHdpdGggdGhlICZxdW90O01hbmFnZSBBbGwgQ29udGVudCZxdW90OyBwZXJtaXNzaW9uIGNhbiBvdmVycmlkZSB0aGlzIGZvciBlYWNoIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfYWN0aW9uJ10gPSAnQWN0aW9uIGZvciBpbnN1ZmZpY2llbnQgYWNjZXNzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmeSB0aGUgYmVoYXZpb3IgZm9yIHBlb3BsZSBhY2Nlc3NpbmcgdGhpcyBwYWdlIHdpdGhvdXQgc3VmZmljaWVudCBwZXJtaXNzaW9uLiAgWW91IGNhbiBlaXRoZXIgcmVkaXJlY3QgdG8gYSBzcGVjaWZpZWQgcGFnZSwgb3IgZGlzcGxheSB0aGUgbG9naW4gZm9ybSc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnU2hvdyB0aGUgTG9naW4gRm9ybSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyZWN0IHRvIGEgUGFnZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnUmVkaXJlY3QgVG8nOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICZxdW90O3JlZGlyZWN0JnF1b3Q7IHRoZSB1c2VyIHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBtZXNzYWdlIGluZGljYXRpbmcgdGhhdCB0aGV5IGRvIG5vdCBoYWNlIGFjY2VzcyB0byB0aGUgcGFnZSc7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1Blcm1pc3Npb25zJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ1Byb3RlY3RlZCBDb250ZW50JzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ1ZpZXcnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgVXNlcklEIENvbHVtbiBvbiBJbXBvcnQnOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnQWR2YW5jZWQgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ1NwZWNpZnkgdGhlIG51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSBhbiBpbmFjdGl2ZSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dCBvZiB0aGUgd2Vic2l0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdVc2VyIEV4cGlyeSBJbnRlcnZhbCc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnU3BlY2lmeSBhIHZhbHVlIChpbiBzZWNvbmRzKSB0aGF0IGluZGljYXRlcyBob3cgb2Z0ZW4gdGhlIHN5c3RlbSBzaG91bGQgZm9yY2UgdXNlcnMgd2hvcyBzZXNzaW9uIGhhcyBleHBpcmVkIHRvIGJlIGxvZ2dlZCBvdXQuICBUImhpcyBpcyBhbiBvcHRpbWl6YXRpb24gdG8gc2F2ZSBkYXRhYmFzZSBxdWVyaWVzLiAgSWYgbGVmdCBlbXB0eSBvciBzZXQgdG8gMCBleHBpcnkgd2lsbCBiZSBwZXJmb3JtZWQgb24gZXZlcnkgcmVxdWVzdC4nOwokbGFuZ1snbXNnX3NldHRpbmdzY2hhbmdlZCddID0gJ1lvdXIgc2V0dGluZ3Mgd2VyZSBzdWNjZXNzZnVsbHkgdXBkYXRlZCc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdGb3JjZSB1c2VycyB0byBsb2dvdXQgYXQgcmVndWxhciBpbnRlcnZhbHMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGltZXMgZm9yIGZvcmNlZCBsb2dvdXQnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiB0aW1lcyBsaWtlIEhIOk1NLEhIOk1NIHdoZXJlIHVzZXJzIHdpbGwgYmUgZm9yY2libHkgbG9nZ2VkIG91dC4gTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0V4Y2x1ZGUgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIDxlbT4obWludXRlcyk8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdJZiBzcGVjaWZpZWQsIGFueSB1c2VycyB0aGF0IGhhdmUgYmVlbiBhY3RpdmUgaW4gdGhpcyBudW1iZXIgb2Ygc2Vjb25kcyB3aWxsIG5vdCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ1RoZSB1cGxvYWRlZCBmaWxlIGRvZXMgbm90IG1hdGNoIHRoZSBsaXN0IG9mIGFsbG93ZWQgZmlsZSB0eXBlcyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBoYXMgYmVlbiBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0lmIGVuYWJsZWQsIHRoaXMgbW9kdWxlIHdpbGwgbGlzdGVuIHRvIGV2ZW50cyBmcm9tIHRoZSBFY29tbWVyY2Ugc3VpdGUuICBUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgaGF2ZSBlZmZlY3QgaWYgdGhpcyBzZXR0aW5nIGlzIGVuYWJsZWQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTGlzdGVuIHRvIE9yZGVyIEV2ZW50cyc7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgYXBwbHkgaWYgdXNpbmcgc2VsZiByZWdpc3RyYXRpb24gYW5kIGFsbG93aW5nIGZvciBwYWlkIHJlZ2lzdHJhdGlvbic7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ0RlbGV0ZSBVc2VyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnRXhwaXJlIFVzZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgY2FuY2VsbGVkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBkZWxldGVkJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0Vjb21tZXJjZSBTZXR0aW5ncyc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1NlY3VyZSBGaWVsZCBNYXJrZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ1NlY3VyZSBGaWVsZCBDb2xvcic7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1N0b3JlIHRoaXMgZGF0YSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnSWYgYSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgYnkgYW4gZXh0ZXJuYWwgYXV0aGVudGljYXRpb24gbW9kdWxlIGJ1dCBpcyBub3Qga25vd24gaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHNob3VsZCBhbiBGRVUgYWNjb3VudCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHk/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYWxseSBDcmVhdGUgVW5rbm93biBVc2Vycyc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnRGlzcGxheSBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBhcmUgb25seSBhcHBsaWNhYmxlIGlmIHVzaW5nIHRoZSAmcXVvdDtCdWlsdGluIEF1dGhlbnRpY2F0aW9uJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIHJlcXVlc3QgbG9zdCBsb2dpbiBpbmZvcm1hdGlvbiwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gYSBwYXNzd29yZCByZXNldCwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgdGhlaXIgdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIGNoYW5nZSc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAiJnF1b3Q7T2smcXVvdDsgdG8gY29uZmlybSB5b3VyIGFjdGl2aXR5IG9uIHRoaXMgd2Vic2l0ZS4nOwokbGFuZ1snb2snXSA9ICdPayc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdSZXNldCBTZXNzaW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdG9ycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjdCBvbmUgb3IgbW9yZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgdG8gdmlldyB0aGlzIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0EgZ3JvdXAgbXVzdCBiZSBzZWxlY3RlZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCBZZWFyJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnRW5kIFllYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGh1bWJuYWlsIFNpemUnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ21vbnRocyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnRGVmYXVsdCB1c2VyIGV4cGlyeSBwZXJpb2QnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUHJvcGVydHkgU2V0dGluZ3MnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdSZWRpcmVjdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBhbmQgQ29va2llIFNldHRpbmdzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmllbGQgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRpbmcgVXNlcic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWNrIGhlcmUgdG8gc2lnbiBvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaWNrIGhlcmUgdG8gYWRqdXN0IHlvdXIgcGFzc3dvcmQgb3Igb3RoZXIgaW5mb3JtYXRpb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaWV3IFVzZXIgVGVtcGxhdGUnOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIEV2ZW50IE5vdGlmaWNhdGlvbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBTdWJqZWN0JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRW1haWwgTm90aWZpY2F0aW9ucyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnT24gTG9naW4nOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdPbiBMb2dvdXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnT24gU2Vzc2lvbiBFeHBpcnknOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnT24gTmV3IFVzZXIgQ3JlYXRlZCc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdPbiBVc2VyIERlbGV0ZWQnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnT24gVXNlciBTZXR0aW5ncyBDaGFuZ2VkJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgRGVsZXRlZCc7CgokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1lvdXIgdXNlcm5hbWUgaXMnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTW9yZSB0aGFuIG9uZSB1c2VyIGFjY291bnQgbWF0Y2hlZCB0aGUgcHJvcGVydGllcyBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgdXNlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgZ3JvdXAgYnkgdGhhdCBuYW1lJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnUmVhZCBPbmx5JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dlZCBvdXQgYnkgYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnU2hvdyBPbmx5IExvZ2dlZCBJbiBVc2Vycyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nb3V0IHRoaXMgdXNlcic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdVc2VyIFByb3BlcnRpZXMnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnknOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0IFVzZXIgSGlzdG9yeSBUbyBBU0NJSSB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnQ2xlYXIgVXNlciBIaXN0b3J5IHJlY29yZHMgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdGb3Jnb3QgWW91ciBMb2dpbiBEZXRhaWxzPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnQgZ3JvdXAgZGVmaW5pdGlvbiAoYW5kIHByb3BlcnRpZXMpIHRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVXNlciBIaXN0b3J5IE1haW50ZW5hbmNlJzsKJGxhbmdbJ3llcyddID0gJ1llcyc7CiRsYW5nWydubyddID0gJ05vJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ09mJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIE5vIExpbWl0ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ09uZSBIb3VyIE9sZCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTaXggSG91cnMgT2xkJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1R3ZWx2ZSBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdPbmUgRGF5IE9sZCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdPbmUgV2VlayBPbGQnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1R3byB3ZWVrcyBPbGQnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ09uZSBNb250aCBPbGQnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RocmVlIE1vbnRocyBPbGQnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTaXggTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdPbmUgWWVhciBPbGQnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3JvdXBpbmcgYW5kIFNvcnRpbmcnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlY29yZHMgbWF0Y2hpbmcgdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnRGVzY2VuZGluZyBVc2VybmFtZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnQXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnQXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnRGVzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnQXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRGVzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05vIEhpc3RvcnkgRGV0ZWN0ZWQnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cCBCeSBJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSBGaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnRGlzcGxheSBvbmx5IGV2ZW50cyB0aGF0IGFyZSBsZXNzIHRoYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdlIExpbWl0JzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSBSZXBvcnQnOwokbGFuZ1sndW5rbm93biddID0gJ1Vua25vd24nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0V2ZW50IFR5cGUnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRlJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdSZXR1cm4nOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcnMgRW5jb3VudGVyZWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1JlY29yZHMgQWRkZWQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIGdyb3VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQ291bGQgbm90IGdldCBhIHJlc3BvbnNlIGZyb20gdGhlIFNNVFAgc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBjb2x1bW4gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGaWVsZCAlcyBleGNlZWRzIG1heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGluc2VydHVzZXInXSA9ICdQcm9ibGVtIGNyZWF0aW5nIHVzZXI6ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVwZGF0ZXVzZXInXSA9ICdQcm9ibGVtIHVwZGF0aW5nIHVzZXI6ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEVycm9yIChsaW5lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdDInXSA9ICcKPGg1PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oNT4KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgPGVtPihub3JtYWxseSk8L2VtPiBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC4gIFRoaXMgaW1wb3J0IHJvdXRpbmUgYWNjZXB0cyBNQUMgYW5kIHVuaXggbGluZSBlbmRpbmdzLiAgQ29sdW1uIHZhbHVlcyBjYW4gYmUgZW5jbG9zZWQgaW4gZG91YmxlIHF1b3RlcyBpZiB0aGUgZGVsaW1pdGVyIG1heSBiZSBjb250YWluZWQgd2l0aGluIHRoZSBjb2x1bW4gdmFsdWUuPC9wPgo8aDU+SGVhZGVyIGxpbmU8L2g1Pgo8dWw+CjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+CjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3Vwcy48L2xpPgo8L3VsPjxici8+CjxoNj48c3Ryb25nPkNvbHVtbmFyIERhdGE8L3N0cm9uZz48L2g2Pgo8dWw+CjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLgogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gSWYgYSB1c2VyIHdpdGggdGhlIHNwZWNpZmllZCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UgaGlzIGluZm9ybWF0aW9uIHdpbGwgYmUgb3ZlcndyaXR0ZW4uPC9wPjwvbGk+CjxsaT5UaGUgPHN0cm9uZz50eHRwYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIDxlbT4ob3B0aW9uYWwpPC9lbT4uICBUaGUgcGFzc3dvcmQgdG8gc2V0IGZvciB0aGUgdXNlciBpbiBwbGFpbiB0ZXh0LiAgSWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGVtcHR5IHdoZW4gY3JlYXRpbmcgbmV3IHVzZXJzIHRoZSBwYXNzd29yZCAmcXVvdDtjaGFuZ2VtZSZxdW90OyBpcyBoYXJkY29kZWQuICBJZiB0aGUgcGFzc3dvcmQgZmllbGQgaXMgZW1wdHkgd2hlbiB1cGRhdGluZyBhIHVzZXIgaGlzIHBhc3N3b3JkIHdpbGwgbm90IGJlIGFkanVzdGVkLjwvbGk+CjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gPGVtPihvcHRpb25hbCk8L2VtPi4gIFRoZSBkZXNpcmVkIGV4cGlyeSBkYXRlIGZvciB0aGUgdXNlci4gIElmIHRoaXMgZmllbGQgaXMgc3BlY2lmaWVkIGFuZCBjYW4gYmUgdmFsaWRhdGVkIGFzIGEgdmFsaWQgZGF0ZSB0aGVuIHRoZSBleHBpcnkgZGF0ZSB3aWxsIGJlIHVzZWQgd2hlbiBjcmVhdGluZyBhIG5ldyB1c2VyLCBvdGhlcndpc2UgYSBkZWZhdWx0IHZhbHVlIG9mIDEwIGZyb20gdGhlIGNyZWF0ZSBkYXRlIHdpbGwgYmUgdXNlZC4gIElmIHRoaXMgZmllbGQgaXMgZW1wdHkgd2hlbiB1cGRhdGluZyBhIHVzZXIgdGhlbiBoaXMgZXhwaXJ5IHdpbGwgbm90IGJlIGFkanVzdGVkLjwvbGk+CjxsaT5UaGUgPHN0cm9uZz5ncm91cG5hbWU8L3N0cm9uZz4gRmllbGQgLSBBIDogc2VwYXJhdGVkIGxpc3Qgb2YgdGhlIGdyb3VwIG5hbWVzIHRoYXQgeW91IHdhbnQgdG8gaGF2ZSB0aGUgdXNlciBiZSBhIG1lbWJlciBvZi4gSWYgYWxsIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IGZpbGxlZCBpbiB0aGUgaW5zZXJ0L3VwZGF0ZSBvZiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L2xpPgo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzCiAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+CjwvbGk+CjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMKICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+CjwvbGk+CjxsaT5FbWFpbCBGaWVsZHMKICA8cD5NdXN0IGJlIGEgdmFsaWQgZW1haWwgYWRkcmVzcyB0aGF0IGNhbiBiZSB2YWxpZGF0ZWQgYnkgUEhQcyBidWlsdGluIGZ1bmN0aW9uYWxpdHkuPC9wPgo8L2xpPgo8bGk+RGF0ZSBGaWVsZHMKICA8cD5NdXN0IGJlIGluIGEgZm9ybWF0IHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhIHVuaXggdGltZXN0YW1wIGJ5IHRoZSBzdHJ0b3RpbWUoKSBtZXRob2QuPC9wPgo8L2xpPgo8bGk+SW1hZ2UgRmllbGRzCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdob1wncyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgbm90IGVtcHR5IHRoZW4gdGhlIGZpbGVuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gaW1hZ2UgZGVzdGluYXRpb24gcGF0aCBhcyBzcGVjaWZpZWQgaW4gdGhlIEZFVSBwcmVmZXJlbmNlcy4uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPjwvbGk+CjwvdWw+CjxoNT5Ob3RlczwvaDU+CjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBhIG1lbW9yeSBhbmQgZGF0YWJhc2UgaW50ZW5zaXZlIHJvdXRpZS4gIEl0IGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPgo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPgo8cD5UaGUgRXhwb3J0IGRhdGEgaXMgdGhlIHNhbWUgZm9ybWF0IGFzIG5lZWRlZCBmb3IgaW1wb3J0LiAgSG93ZXZlciBpdCBtYXkgcHJvdmlkZSBleHRyYSBmaWVsZHMgdGhhdCBhcmUgbm90IHJlcXVpcmVkIGZvciBpbXBvcnQuPC9wPgo8aDU+RXhhbXBsZTwvaDU+CjxwcmU+CiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcAp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1CjwvcHJlPgonOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydCBVc2VycyBJbnRvIFRoaXMgR3JvdXAnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnSW5wdXQgQ1NWIEZpbGUnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdJbnB1dCBYTUwgRmlsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0NsZWFyJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnSW1hZ2UgRGVzdGluYXRpb24gUGF0aCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0Nhbm5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2Vycyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVGhpcyB1c2VyIGlzIGFscmVhZHkgbG9nZ2VkIGluJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RoZSB0ZXh0IGZyb20gdGhlIGltYWdlIHdhcyBub3QgZW50ZXJlZCBjb3JyZWN0bHknOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0FsbG93IHVzZXJzIHRvIGxvZ2luIG1vcmUgdGhhbiBvbmNlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdJbWFnZSBGaWxlIEV4dGVuc2lvbnMgdGhhdCBVc2VycyBhbGxvd2VkIHRvIHVwbG9hZCc7CiRsYW5nWydldmVudF9oZWxwX09uUmVmcmVzaFVzZXInXSA9ICcKPGgzPk9uUmVmcmVzaFVzZXI8L2gzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZC48L3A+CjxoND5QYXJhbWV0ZXJzOjwvaDQ+Cjx1bD4KICA8bGk+PGVtPmlkPC9lbT4gLSBUaGUgVXNlciBpZDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJwo8aDM+T25EZWxldGVVc2VyPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+CjxsaT48ZW0+cHJvcHM8L2VtPiAtIEEgaGFzaCBmaWxsZWQgd2l0aCB0aGUgcHJvcGVydGllcyBvZiB0aGUgdXNlcjwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJwo8aDM+T25DcmVhdGVVc2VyPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4KPC91bD4KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnCjxoMz5PblVwZGF0ZVVzZXI8aDM+CjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICcKPGgzPk9uQ3JlYXRlR3JvdXA8aDM+CjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPgo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnCjxoMz5PbkRlbGV0ZUdyb3VwPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4KPC91bD4KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJwo8aDM+T25Mb2dpbjxoMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4KPC91bD4KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBmdWxsIHNtYXJ0eSB0ZW1wbGF0ZXMuPGJyLz5BbG9uZyB3aXRoIG90aGVyIHByZS1leGlzdGluZyBzbWFydHkgdmFyaWFibGVzIGFuZCBwbHVnaW5zLCB0aGUgeyR1c2VybmFtZX0gYW5kIHskZ3JvdXB9IHZhcmlhYmxlcyBhcmUgYXZhaWxhYmllLiAgPGVtPihUaGUgeyRncm91cH0gdmFyaWFibGUgbWF0Y2hlcyB0aGUgZmlyc3QgZ3JvdXAgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy4pPC9lbT4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0EgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHVzZXJuYW1lIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0aCBvZiBwYXNzd29yZCBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBwYXNzd29yZCBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0ludmFsaWQgRW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGNvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MgZm9yIHRoaXMgYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzZXIgQWRkZWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc2VyIERlbGV0ZWQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcGVydHknOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbHVlIChyZWd1bGFyIGV4cHJlc3Npb24pJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnV2FybmluZzogVGhlc2UgZmllbGRzIGFmZmVjdCB0aGUgc2l6ZSBvZiBpbnB1dCBmaWVsZHMgZm9yIGZvcm1zLiAgRGVjcmVhc2luZyB0aGlzIG51bWJlciBvbiBhbiBleGlzdGluZyBzaXRlIG1heSBub3QgYmUgYWR2aXNhYmxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gYWRqdXN0IHRoZSBtb2R1bGUgcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFbWFpbCBhZGRyZXNzIGFscmVhZHkgdXNlZCc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2UgY29va2llcyB0byByZW1lbWJlciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnVGhlIG5hbWUgb2YgdGhlICZxdW90O1JlbWVtYmVyIE1lJnF1b3Q7IGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0FsbG93IGR1cGxpY2F0ZSBlbWFpbHMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRW1haWwgYWRkcmVzcyBpcyB1c2VybmFtZSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdJZiBlbmFibGVkLCBhIGNvb2tpZSB3aWxsIGJlIHNldCBpdGggYW4gZXhwaXJ5IHRpbWUgb2YgMjQgaG91cnMgdG8ga2VlcCBzZXNzaW9ucyBhbGl2ZS4gIFRoaXMgaXMgZGlmZmVyZW50IHRoYW50IHRoZSByZW1lbWJlcm1lIGZ1bmN0aW9uYWxpdHksIGFuZCBjYW4gYmUgdXNlZCB0byBleHRlbmQgYSB1c2VycyBsb2dpbiB0byB0aGUgc3lzdGVtIGlmIHNlc3Npb24gZGF0YSBpcyBjbGVhcmVkIHRvbyBmcmVxdWVudGx5Lic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoQWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXJcJ3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb25cJ3Qgc2V0IHRoaXMgd2l0aCAiYWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyIhKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAiZm9yZ290IHBhc3N3b3JkIiByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhBbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuXCd0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzZSBGcm9udC1lbmQgVXNlciBzcGVjaWZpYyBwZXJtaXNzaW9ucz8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0NvdWxkIG5vdCBmaW5kIHRoZSB1cGxvYWRlZCBmaWxlIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdUaGVyZSB3YXMgYSBwcm9ibGVtIHdpdGggeW91ciB1cGxvYWRlZCBmaWxlLiAgUGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1lvdSBkaWQgbm90IGVudGVyIHlvdXIgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSBwYXNzd29yZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBMb2dvdXQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgVXNlciBMb2dpbic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9InJlZCI+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB3b3JrIG9uIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0RvIG5vdCBjcmVhdGUgYSBwcm9wZXJ0eSBmb3IgdXNlcm5hbWUsIG9yIHBhc3N3b3JkIGFzIHRoZXNlIHByb3BlcnRpZXMgYXJlIGJ1aWx0aW4gdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnQgVXNlcnMgdG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHk6IDxlbT4lczwvZW0+JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltdW0gTGVuZ3RoJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnQgQnknOwokbGFuZ1snc29ydCddID0gJ1NvcnRpbmcnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXNlcnMgaW4gdGhlIHNlbGVjdGVkIGdyb3VwKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0IHJlc3VsdHMgdG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgZmllbGQgZm9yIHRoaXMgdXNlci4gIFlvdSBtYXkgbmVlZCB0byBjb250YWN0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSB3ZWVrIG9sZCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgbW9udGggb2xkJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0FuIGludmFsaWQgY29kZSBoYXMgYmVlbiBlbnRlcmVkLCBwbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGVycm9yJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1lvdSBhcmUgcmVjZWl2aW5nIHRoaXMgbWVzc2FnZSBiZWNhdXNlIHNvbWVib2R5IHRvbGQgb3VyIHNpdGUgdGhhdCB5b3UgaGFkIGxvc3QgeW91ciBwYXNzd29yZC4gIElmIHRoaXMgaXMgdGhlIGNhc2UsIHJlYWQgdGhlIGluc3RydWN0aW9ucyBiZWxvdy4gIElmIHlvdSBkb25cJ3QgaGF2ZSBhIGNsdWUgd2hhdCB0aGlzIGlzLCB0aGVuIHlvdSBhcmUgc2FmZSB0byBkZWxldGUgdGhpcyBtZXNzYWdlLCBhbmQgd2UgdGhhbmsgeW91IGZvciB5b3VyIHRpbWUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzblwndCB0aGUgY29kZSBpczonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGlja2luZyBvbiB0aGUgZm9sbG93aW5nIGxpbmsgd2lsbCB0YWtlIHlvdSB0byB0aGUgd2Vic2l0ZSB3aGVyZSB5b3UgY2FuIGVudGVyIHRoZSBhYm92ZSBjb2RlLCBhbmQgcmVzZXQgeW91ciBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0xvc3QgUGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgQ01TTWFpbGVyIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdBbiBlbWFpbCBoYXMgYmVlbiBzZW50IHRvICVzIHdpdGggaW5zdHJ1Y3Rpb25zIGFzIHRvIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkLiAgVGhhbmsgeW91JzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU28geW91IGZvcmdvdCBvciBsb3N0IHlvdXIgcGFzc3dvcmQuIFdlbGwsIHR5cGUgeW91ciB1c2VybmFtZSBpbiBoZXJlLCBhbmQgaWYgd2UgY2FuIGZpbmQgeW91IHdlIHdpbGwgc2VuZCB5b3UgYW4gZW1haWwgd2l0aCBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHJlc2V0IGl0JzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnRm9yZ290IFBhc3N3b3JkIFRlbXBsYXRlcyc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1Byb3BlcnR5ICVzIG5vdCBmb3VuZCc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcGVydGllcyBmb3VuZCc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWRkIFByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdBIHJlcXVpcmVkIGZpZWxkICglcykgd2FzIGVtcHR5JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRW50ZXIgYSBuZXcgcGFzc3dvcmQgaGVyZSB0byBjaGFuZ2UgeW91ciBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1lvdSBkbyBub3QgYXBwZWFyIHRvIGJlIGxvZ2dlZCBpbic7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnU2V0dGluZ3MnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYXRpb24nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdUaGlzIGFjY291bnQgaGFzIGV4cGlyZWQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ltcHJvcGVyIGVtYWlsIGFkZHJlc3MgZm9ybWF0dGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ludmFsaWQgZXhwaXJ5IGRhdGUuICBUaGlzIG1heSBiZSBzeXN0ZW0gcmVsYXRlZC4gIFRyeSBzZXR0aW5nIGFuIGVhcmxpZXIgeWVhci4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIHNldHRpbmcgcHJvcGVydHkgJXMgZm9yIHVzZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJbnZhbGlkIGdyb3VwIGlkICVzJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnQgb3JkZXInOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAuICBBIGdyb3VwIG11c3QgaGF2ZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkgc2VsZWN0ZWQgKFJlcXVpcmVkLE9wdGlvbmFsLCBvciBIaWRkZW4pJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTm8gR3JvdXBzIGFyZSBkZWZpbmVkJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3JvdXBzIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdNZW1iZXJzaGlwIGluIGF0IGxlYXN0IG9uZSBncm91cCBpcyByZXF1aXJlZCc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWlyZSBtZW1iZXJzaGlwIGluIGF0bGVhc3Qgb25lIGdyb3VwJzsKJGxhbmdbJ2JhY2snXSA9ICdCYWNrJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBpcyBhIHJlcXVpcmVkIGZpZWxkJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ05leHQnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdBIEdyb3VwIHdpdGggdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUmVxdWlyZWQnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdPcHRpb25hbCc7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ1NpemUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhpbXVtIHNpemUgb2YgYW55IG9uZSBkaW1lbnNpb24gb2YgdGhlIGltYWdlIGluIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnTGVuZ3RoJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KGNoYXJzIGluIHRoZSB0ZXh0IGlucHV0KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnRHJvcGRvd24gb3B0aW9ucywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiAgVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWyd5ZXMnXSA9ICdZZXMnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwZSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1JlcXVpcmVkJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRmllbGQgU3RhdHVzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0FzayBpbiBMb3N0PGJyLz5Vc2VybmFtZSc7CiRsYW5nWyd0ZXh0J10gPSAnVGV4dCc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnV2VsY29tZSc7CiRsYW5nWydsb2dvdXQnXSA9ICdTaWduIG91dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNlIHRoaXMgZ3JvdXAgbmFtZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdDaGFuZ2UgTXkgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdMb2dpbiBmYWlsZWQgLSBJbnZhbGlkIHVzZXJuYW1lIG9yIHBhc3N3b3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ1NpZ24gaW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVtZW1iZXIgbWUgb24gdGhpcyBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGVyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRm9yZ290IFlvdXIgUGFzc3dvcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnRGVmYXVsdHMnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdVc2VyIElEIG5vdCBmb3VuZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVGhhdCB1c2VybmFtZSAoJXMpIGlzIGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhc3N3b3JkcyBEbyBub3QgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSW52YWxpZCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdJbnZhbGlkIFBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0NvdWxkIG5vdCBmaW5kIGluZm9ybWF0aW9uIGZvciB0aGlzIHVzZXInOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0IFVzZXInOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUaGlzIHVzZXIgaXMgbm90IGEgbWVtYmVyIG9mIGFueSBncm91cHMnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ05vIFByb3BlcnRpZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdBdHRlbXB0IHRvIGltcG9ydCBkdXBsaWNhdGUgcHJvcGVydGllcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbHVlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dyb3Vwcyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcGVydGllcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ1Byb3BlcnR5IE5hbWUnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnUHJvcGVydHkgVmFsdWUnOwokbGFuZ1snYWRkJ10gPSAnQWRkJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3J5JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZnkgRGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvdXJzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG91cnMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Vycyc7CiRsYW5nWycxd2VlayddID0gJzEgV2Vlayc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFdlZWtzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTW9udGgnOwokbGFuZ1snM21vbnRocyddID0gJzMgTW9udGhzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IE1vbnRocyc7CiRsYW5nWycxeWVhciddID0gJzEgWWVhcic7CiRsYW5nWyduZXZlciddID0gJ05ldmVyJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgIk1vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiAgQWRkaXRpb25hbGx5LCB3ZSByZWNvbW1lbmQgdGhhdCB5b3UgaW5zdGFsbCB0aGUgQ2FwdGNoYSBtb2R1bGUuICBJZiBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgaW4gYWRkaXRpb24gdG8gdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCB0byBsb2dpbi4gIFRoaXMgaXMgaW50ZW5kZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSBldmVuIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQuIic7CiRsYW5nWydlbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0FnYWluJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdHcm91cCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdCBHcm91cCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYWRkaW5nIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCByZWxhdGlvbic7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gYWRkaW5nIGEgdXNlciB0byBhIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGRlbGV0aW5nIGEgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQ291bGQgbm90IGZpbmQgYW55IGdyb3Vwcyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3JvdXBzIEZvdW5kJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dyb3Vwcyc7CiRsYW5nWyd1c2VycyddID0gIlVzZXJzIjsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgTWFuYWdlbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FsbG93IHVzZXJzIHRvIGxvZyBpbiB0byB0aGUgZnJvbnRlbmQgb2YgeW91ciBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICJEZWZhdWx0IGZyb250IHBhZ2UiOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xhc3QgYWNjZXNzZWQgcGFnZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdGhlciBwYWdlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0VudGVyIHRoZSB0ZXh0IGZyb20gdGhlIGltYWdlJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/ca_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FueV9sb2dnZWRfaW5fdXNlciddID0gJ1F1YWxzZXZvbCB1c3VhcmkgY29uZWd1dCc7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdGFudHMnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3Qgb25lIG9yIG1vcmUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhpcyBwYWdlJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdDYWwgdHJpYXIgdW4gZ3J1cCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdUcmlhJiMwMzk7biB1bic7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnQW55IGQmIzAzOTtpbmljaSc7CiRsYW5nWydlbmRfeWVhciddID0gJ0FueSBkZSBmaW5hbCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdNaWRhIGRlbHMgY29udGFjdGVzJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ1RvbyBtYW55IHVzZXJzIGFyZSBzZWxlY3RlZCBmb3IgYnVsayBvcGVyYXRpb25zLi4uLiBQbGVhc2UgdHJpbSBpdCB0byAyNTAgb3IgbGVzcyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHNlbGVjdGVkIHVzZXJzPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdEZWxldGUgU2VsZWN0ZWQnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnR2VuZXJhdGUgcmFuZG9tIHVzZXJuYW1lIHdoZW4gYWRkaW5nIG5ldyB1c2Vycyc7CiRsYW5nWydtb250aHMnXSA9ICdtb250aHMnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ0RlZmF1bHQgdXNlciBleHBpcnkgcGVyaW9kJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ05vdGlmaWNhdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydwcm9wZXJ0eV9zZXR0aW5ncyddID0gJ1Byb3BlcnR5IFNldHRpbmdzJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnUmVkaXJlY3Rpb24gU2V0dGluZ3MnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0dlbmVyYWwgU2V0dGluZ3MnOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gYW5kIENvb2tpZSBTZXR0aW5ncyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZpZWxkIFNldHRpbmdzJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdBbGxvdyB1c2Ugb2Ygd3lzaXd5ZyBvbiB0aGlzIHRleHQgYXJlYSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ01vZGlmaWNhciB1c3VhcmknOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdObyBwZXJtZXRpcyBmb3JtdWxhcmlzIGlubGluZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNhIGFxdSZpYWN1dGU7IHNpIG5vIHJlY29yZGVzIGxlcyBkYWRlcyBkZSByZWdpc3RyZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnUGljYSBhcXUmaWFjdXRlOyBzaSBubyByZWNvcmRlcyBlbCB0ZXUgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdQaWNhIGFxdSZpYWN1dGU7IHBlciBzb3J0aXInOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ1BpY2EgYXF1JmlhY3V0ZTsgcGVyIGFqdXN0YXIgZWwgdGV1IHBhc3N3b3JkIG8gYWx0cmEgaW5mb3JtYWNpJm9hY3V0ZTsnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWZXVyZSBwbGFudGlsbGEgZCYjMDM5O3VzdWFyaSc7CiRsYW5nWydldmVudCddID0gJ0V2ZW50JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdOb3RpZmljYWNpJm9hY3V0ZTsgZCYjMDM5O2V2ZW50IEZFVSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdBZHJlJmNjZWRpbDthIGRlbCBtYWlsIGRlIG5vdGlmaWNhY2kmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlbCBtYWlsIGRlIG5vdGlmaWNhY2kmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdUZW1hIGRlIGwmIzAzOTtlbWFpbCBkZSBub3RpZmljYWNpJm9hY3V0ZTsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdOb3RpZmljYWNpb25zIHBlciBlLW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0VuIGVudHJhcic7CiRsYW5nWydPbkxvZ291dCddID0gJ0VuIHNvcnRpcic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdRdWFuIGxhIHNlc3NpJm9hY3V0ZTsgY2FkdWNhJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1F1YW4gZXMgY3JlYSB1biBub3UgdXN1YXJpJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ1F1YW4gcyYjMDM5O2VsaW1pbmEgdW4gdXN1YXJpJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ1F1YW4gZXMgbW9kaWZpY2EgY29uZmlndXJhY2kmb2FjdXRlOyBkJiMwMzk7dXN1YXJpcyc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnUXVhbiBlcyBjcmVhIHVuIGdydXAnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ1F1YW4gcyYjMDM5O2VsaW1pbmEgdW4gZ3J1cCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnRWwgdGV1IG5vbSBkJiMwMzk7dXN1YXJpICZlYWN1dGU7cyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdSZWNvbWFuZW0gcXVlIGRlc2lzIGFxdWVzdGEgaW5mb3JtYWNpJm9hY3V0ZTsgZW4gdW4gbGxvYyBzZWd1ciBwZXImb2dyYXZlOyBhY2Nlc3NpYmxlJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY29kZSB2ZXJpZmljYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgRGV0YWlscyBUZW1wbGF0ZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgQ29uZmlybSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yOiBNb3JlIHRoYW4gb25lIHVzZXIgYWNjb3VudCBtYXRjaGVkIHRoZSBwcm9wZXJ0aWVzIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcjogQ291bGQgbm90IGZpbmQgYSBtYXRjaGluZyB1c2VyJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvcjogQ291bGQgbm90IGZpbmQgYSBncm91cCBieSB0aGF0IG5hbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdSZWFkIE9ubHknOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ1VzZXIgTWFuaXB1bGF0b3IgQ2xhc3MnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnTG9nZ2VkIG91dCBieSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTaG93IE9ubHkgTG9nZ2VkIEluIFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdMb2dvdXQgdGhpcyB1c2VyJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1VzZXIgUHJvcGVydGllcyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTm8gTGltaXQgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnT25lIEhvdXIgT2xkJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NpeCBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVHdlbHZlIEhvdXJzIE9sZCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ09uZSBEYXkgT2xkJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ09uZSBXZWVrIE9sZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdvIHdlZWtzIE9sZCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnT25lIE1vbnRoIE9sZCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVGhyZWUgTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NpeCBNb250aHMgT2xkJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ09uZSBZZWFyIE9sZCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcm91cGluZyBhbmQgU29ydGluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVjb3JkcyBtYXRjaGluZyB0aGUgY3JpdGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdBc2NlbmRpbmcgVXNlcm5hbWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0Rlc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdBc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdBc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdBc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTm8gSGlzdG9yeSBEZXRlY3RlZCc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dyb3VwIEJ5IElQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlIEZpbHRlcic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdEaXNwbGF5IG9ubHkgZXZlbnRzIHRoYXQgYXJlIGxlc3MgdGhhbjonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1BhZ2UgTGltaXQnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IFJlcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1JldHVybic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IE9wZXJhdGlvbiBDb21wbGV0ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lcyBQcm9jZXNzZWQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9ycyBFbmNvdW50ZXJlZCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyBBZGRlZCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0NvdWxkIG5vdCBvcGVuIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnRXNib3JyYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDYW0maWFjdXRlOyBvbiBkZXNhciBpbWF0Z2VzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnSGEgb2NvcnJlZ3V0IHVuIHByb2JsZW1hIGFtYiB1biBhcnhpdSBwdWphdCAocmVxdWVyaXQpIHF1ZSBtYW5jYSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTm8gZXMgcG90IGVzYm9ycmFyIHVuIGdydXAgcXVlIGVuY2FyYSB0JmVhY3V0ZTsgdXN1YXJpcyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnTCYjMDM5O3VzdWFyaSBqYSBlc3QmYWdyYXZlOyBjb25uZWN0YXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnRWwgdGV4dCBkZSBsYSBpbWF0Z2Ugbm8gcyYjMDM5O2hhIGVudHJhdCBjb3JyZWN0YW1lbnQnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Blcm1ldCBhbHMgdXN1YXJpcyBjb25uZWN0YXItc2UgbSZlYWN1dGU7cyBkJiMwMzk7dW5hIHZlZ2FkYSAnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbnMgZCYjMDM5O2FyeGl1cyBkJiMwMzk7aW1hdGdlIHF1ZSBlbHMgdXN1YXJpcyBwb2RlbiBwdWphcic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBncnVvcCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0EgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHVzZXJuYW1lIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0aCBvZiBwYXNzd29yZCBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBwYXNzd29yZCBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0ludmFsaWQgRW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGNvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MgZm9yIHRoaXMgYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzZXIgQWRkZWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc2VyIERlbGV0ZWQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcGVydHknOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbHVlIChyZWd1bGFyIGV4cHJlc3Npb24pJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnV2FybmluZzogVGhlc2UgZmllbGRzIGFmZmVjdCB0aGUgc2l6ZSBvZiBpbnB1dCBmaWVsZHMgZm9yIGZvcm1zLiAgRGVjcmVhc2luZyB0aGlzIG51bWJlciBvbiBhbiBleGlzdGluZyBzaXRlIG1heSBub3QgYmUgYWR2aXNhYmxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdDaGFuZ2UgYWRtaW4gcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFbWFpbCBhZGRyZXNzIGFscmVhZHkgdXNlZCc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2UgY29va2llcyB0byByZW1lbWJlciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnVGhlIG5hbWUgb2YgdGhlIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0FsbG93IGR1cGxpY2F0ZSBlbWFpbHMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRW1haWwgYWRkcmVzcyBpcyB1c2VybmFtZSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdBdHRlbXB0IHRvIGtlZXAgbG9naW5zIGFsaXZlIGJ5IHRoZSB1c2Ugb2YgYSBjb29raWUgPGVtPih0aGUgY29va2llIGlzIHJlc2V0IG9uIGFjdGl2aXR5IGluIHRoZSB3ZWJzaXRlKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhhbGxvdyBtdWx0aXBsZSB1c2VycyB3aXRoIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3MpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhhbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSB1c2VybmFtZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciB5b3VyIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydCc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdCBQcm9wZXJ0eSc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdCByZXN1bHRzIHRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRWl0aGVyIHlvdXJzZWxmIG9yIHNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSB0cmlnZ2VyZWQgYSBwYXNzd29yZCByZXNldCBvcGVyYXRpb24gZm9yIHRoaXMgYWNjb3VudC4gIENoZWNrIHlvdXIgZW1haWwsIHlvdSBtYXkgaGF2ZSBmdXJ0aGVyIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZCBpbiB5b3VyIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBlcnJvcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiBnZW5lcmF0ZWQgcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzbiYjMDM5O3QgdGhlIGNvZGUgaXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQ2xpY2tpbmcgb24gdGhlIGZvbGxvd2luZyBsaW5rIHdpbGwgdGFrZSB5b3UgdG8gdGhlIHdlYnNpdGUgd2hlcmUgeW91IGNhbiBlbnRlciB0aGUgYWJvdmUgY29kZSwgYW5kIHJlc2V0IHlvdXIgcGFzc3dvcmQ6JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdMb3N0IFBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIENNU01haWxlciBtb2R1bGUnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnQW4gZW1haWwgaGFzIGJlZW4gc2VudCB0byAlcyB3aXRoIGluc3RydWN0aW9ucyBhcyB0byBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZC4gIFRoYW5rIHlvdSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NvIHlvdSBmb3Jnb3Qgb3IgbG9zdCB5b3VyIHBhc3N3b3JkLiBXZWxsLCB0eXBlIHlvdXIgdXNlcm5hbWUgaW4gaGVyZSwgYW5kIGlmIHdlIGNhbiBmaW5kIHlvdSB3ZSB3aWxsIHNlbmQgeW91IGFuIGVtYWlsIHdpdGggaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCBpdCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ0ZvcmdvdCBQYXNzd29yZCBUZW1wbGF0ZXMnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9wZXJ0eSAlcyBub3QgZm91bmQnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Byb3BlcnRpZXMgZm91bmQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkZCBQcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnQSByZXF1aXJlZCBmaWVsZCAoJXMpIHdhcyBlbXB0eSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0VudGVyIGEgbmV3IHBhc3N3b3JkIGhlcmUgdG8gY2hhbmdlIHlvdXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdZb3UgZG8gbm90IGFwcGVhciB0byBiZSBsb2dnZWQgaW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1NldHRpbmdzJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGhpcyBhY2NvdW50IGhhcyBleHBpcmVkJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cCc7CiRsYW5nWydub2dyb3VwcyddID0gJ05vIEdyb3VwcyBhcmUgZGVmaW5lZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dyb3VwcyBGb3VuZCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTWVtYmVyc2hpcCBpbiBhdCBsZWFzdCBvbmUgZ3JvdXAgaXMgcmVxdWlyZWQnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JlcXVpcmUgbWVtYmVyc2hpcCBpbiBhdGxlYXN0IG9uZSBncm91cCc7CiRsYW5nWydiYWNrJ10gPSAnQmFjayc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgaXMgYSByZXF1aXJlZCBmaWVsZCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyayByZXF1aXJlZCBmaWVsZHMgd2l0aCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdIaWxpdGUgcmVxdWlyZWQgZmllbGRzIGluJzsKJGxhbmdbJ25leHQnXSA9ICdOZXh0JzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnQSBHcm91cCB3aXRoIHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1JlcXVpcmVkIEZpZWxkJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9uYWwnOwokbGFuZ1snb2ZmJ10gPSAnT2ZmJzsKJGxhbmdbJ3NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xlbmd0aCc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihjaGFycyBpbiB0aGUgdGV4dCBpbnB1dCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwZSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0ZpZWxkIFN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZSc7CiRsYW5nWydlbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnV2VsY29tZSc7CiRsYW5nWydsb2dvdXQnXSA9ICdTaWduIG91dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNlIHRoaXMgZ3JvdXAgbmFtZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdDaGFuZ2UgTXkgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdMb2dpbiBmYWlsZWQgLSBJbnZhbGlkIHVzZXJuYW1lIG9yIHBhc3N3b3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ1NpZ24gaW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVtZW1iZXIgbWUgb24gdGhpcyBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGVyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRm9yZ290IFlvdXIgUGFzc3dvcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnRGVmYXVsdHMnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdVc2VyIElEIG5vdCBmb3VuZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVGhhdCB1c2VybmFtZSAoJXMpIGlzIGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhc3N3b3JkcyBEbyBub3QgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSW52YWxpZCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdJbnZhbGlkIFBhc3N3b3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdCBVc2VyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnVGhpcyB1c2VyIGlzIG5vdCBhIG1lbWJlciBvZiBhbnkgZ3JvdXBzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdObyBQcm9wZXJ0aWVzJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnQXR0ZW1wdCB0byBpbXBvcnQgZHVwbGljYXRlIHByb3BlcnRpZXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWx1ZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcm91cHMnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3BlcnRpZXMnOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdQcm9wZXJ0eSBOYW1lJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1Byb3BlcnR5IFZhbHVlJzsKJGxhbmdbJ2FkZCddID0gJ0FkZCc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yeSc7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlcyc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZ5IERhdGUnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBob3Jlcyc7CiRsYW5nWycyNGhycyddID0gJzI0IGhvcmVzJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9yZXMnOwokbGFuZ1snMXdlZWsnXSA9ICcxIHNldG1hbmEnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBzZXRtYW5lcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG1lcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtZXNvcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBtZXNvcyc7CiRsYW5nWycxeWVhciddID0gJzEgYW55JzsKJGxhbmdbJ25ldmVyJ10gPSAnTWFpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0FnYWluJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdHcm91cCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdCBHcm91cCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIGFkZGluZyBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAgcmVsYXRpb24nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGFkZGluZyBhIHVzZXIgdG8gYSBncm91cCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBkZWxldGluZyBhIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnTm8gd3JpdGUgcGVybWlzc2lvbiB0byBkZXN0aW5hdGlvbiBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhZ3JhdmU7bWV0cmVzIGludiZhZ3JhdmU7bGlkcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0NvdWxkIG5vdCBmaW5kIGFueSBncm91cHMnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcGNpJm9hY3V0ZTsnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZmVnaXIgbm91IGdydXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBub3UgR3J1cCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWZlZ2lyIFVzdWFyaSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgdGhhdCBtYXRjaCB0aGUgY3JpdGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVHJpYXIgR3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSByZWdpc3RyZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSBzb3J0aWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnhldGEgZCYjMDM5O2VudHJhZGEnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWdyYXZlO25jaWVzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1YXJpcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRGVmYXVsdCBmcm9udCBwYWdlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMYXN0IGFjY2Vzc2VkIHBhZ2UnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnT3RoZXIgcGFnZTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBmcm9tIHRoZSBpbWFnZSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/cs_CZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdG9ycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjdCBvbmUgb3IgbW9yZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgdG8gdmlldyB0aGlzIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0EgZ3JvdXAgbXVzdCBiZSBzZWxlY3RlZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCBZZWFyJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnRW5kIFllYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGh1bWJuYWlsIFNpemUnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ21vbnRocyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnRGVmYXVsdCB1c2VyIGV4cGlyeSBwZXJpb2QnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUHJvcGVydHkgU2V0dGluZ3MnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdSZWRpcmVjdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBhbmQgQ29va2llIFNldHRpbmdzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmllbGQgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnJlVhY3V0ZTtwcmF2YSB1xb5pdmF0ZWzFryc7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrbsSbdGUgemRlLCBwb2t1ZCBzaSBuZW3Fr8W+ZXRlIHZ6cG9tZW5vdXQgbmEgcMWZaWhsYSZzY2Fyb247b3ZhYyZpYWN1dGU7ICZ1YWN1dGU7ZGFqZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnS2xpa27Em3RlIHpkZSwgcG9rdWQgc2kgbmVtxa/FvmV0ZSB2enBvbWVub3UgbmEgc3YmZWFjdXRlOyBoZXNsbyc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuxJt0ZSB6ZGUgcHJvIG9kaGwmYWFjdXRlOyZzY2Fyb247ZW4maWFjdXRlOyc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa27Em3RlIHpkZSwgY2hjZXRlLWxpIHVwcmF2aXQgaGVzbG8gYSBkYWwmc2Nhcm9uOyZpYWN1dGU7IGluZm9ybWFjZSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Byb2hsJmVhY3V0ZTtkbm91dCAmc2Nhcm9uO2FibG9udSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ2V2ZW50J10gPSAnVWQmYWFjdXRlO2xvc3QnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgU3ViamVjdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0VtYWlsIE5vdGlmaWNhdGlvbnMnOwokbGFuZ1snT25Mb2dpbiddID0gJ09uIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnT24gTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ09uIFNlc3Npb24gRXhwaXJ5JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ09uIE5ldyBVc2VyIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnT24gVXNlciBEZWxldGVkJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdVxb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBvZHBvdiZpYWN1dGU7ZGFqJmlhY3V0ZTtjJmlhY3V0ZTsgViZhYWN1dGU7bWkgemFkYW4meWFjdXRlO20gJnVhY3V0ZTtkYWrFr20gYnlsbyBuYWxlemVuby4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1ZhJnNjYXJvbjtlIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vIGplJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ0RvcG9ydcSNdWplbWUgViZhYWN1dGU7bSB1bG/Fvml0IHR5dG8gaW5mb3JtYWNlIG5hIGJlenBlxI1uJmVhY3V0ZTttLCBuaWNtJmVhY3V0ZTtuxJsgZG9zYcW+aXRlbG4mZWFjdXRlO20gbSZpYWN1dGU7c3TEmy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgZGV0YWlsxa8gcMWZaSB6dHImYWFjdXRlO3TEmyB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgcG90dnJ6ZW4maWFjdXRlOyBwxZlpIHp0ciZhYWN1dGU7dMSbIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdDaHliYTogWmFkYW4meWFjdXRlO20gdmxhc3Rub3N0ZW0gb2Rwb3YmaWFjdXRlO2QmYWFjdXRlOyB2JmlhY3V0ZTtjZSBuZcW+IDEgdcW+aXZhdGVsJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0NoeWJhOiBUZW50byB1xb5pdmF0ZWwgbmVleGlzdHVqZSc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnQ2h5YmE6IFNrdXBpbmEgdG9ob3RvIGptJmVhY3V0ZTtuYSBuZWV4aXN0dWplJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnUG91emUga2UgxI10ZW4maWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdPZGhsJmFhY3V0ZTsmc2Nhcm9uO2VuIGFkbWluaXN0ciZhYWN1dGU7dG9yZW0nOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1VrJmFhY3V0ZTt6YXQgcG91emUgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmVhY3V0ZTsgdcW+aXZhdGVsZSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnT2RobCZhYWN1dGU7c2l0IHRvaG90byB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1ZsYXN0bm9zdGkgdcW+aXZhdGVsZSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3RvcmllIHXFvml2YXRlbGUnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnVnnEjWlzdGl0JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydG92YXQgaGlzdG9yaWkgdcW+aXZhdGVsZSBkbyBBU0NJSSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0NsZWFyIFVzZXIgSGlzdG9yeSByZWNvcmRzIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnTG9zdCBVc2VybmFtZSBTdXBwb3J0IEZvcm0nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0b3ZhdCBkZWZpbmljaSBza3VwaW55IChhIGplaiZpYWN1dGU7IHZsYXN0bm9zdGkpIGRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnU3ByJmFhY3V0ZTt2YSBoaXN0b3JpZSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3llcyddID0gJ0Fubyc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ3onOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogQmV6IGxpbWl0dSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdKZWRudSBob2RpbnUgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJyZTY2Fyb247ZXN0IGhvZGluIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdEdmFuJmFhY3V0ZTtjdCBob2RpbiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdKZWRlbiBkZW4gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0plZGVuIHQmeWFjdXRlO2RlbiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R2YSB0JnlhY3V0ZTtkbnkgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdKZWRlbiBtxJtzJmlhY3V0ZTtjIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVMWZaSBtxJtzJmlhY3V0ZTtjZSBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2VzdCBtxJtzJmlhY3V0ZTtjxa8gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0plZGVuIHJvayBzdGFyJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnU2Vza3Vwb3YmYWFjdXRlO24maWFjdXRlOyBhIHTFmSZpYWN1dGU7ZMSbbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdaJmFhY3V0ZTt6bmFteSBvZHBvdiZpYWN1dGU7ZGFqJmlhY3V0ZTtjJmlhY3V0ZTsgcG9kbSZpYWN1dGU7bmNlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnUG9kbGUgdcW+aXZhdGVsc2smZWFjdXRlO2hvIGptJmVhY3V0ZTtuYSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1BvZGxlIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEgdnplc3R1cG7Emyc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnUG9kbGUgZGF0YSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnUG9kbGUgZGF0YSB2emVzdHVwbsSbJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1BvZGxlIHR5cHUgYWtjZSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdQb2RsZSB0eXB1IGFrY2Ugdnplc3R1cG7Emyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdTZXN0dXBuxJsgcG9kbGUgSVAgYWRyZXN5JzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnVnplc3R1cG7Emyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnSGlzdG9yaWUgbmVieWxhIG5hbGV6ZW5hJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXRvdmF0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1Nlc2t1cGl0IHBvZGxlIElQIGFkcmVzeSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRyb3ZhdCBwb2RsZSB0eXB1IGFrY2UnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnWm9icmF6aXQgcG91emUgYWtjZSwga3RlciZlYWN1dGU7IGpzb3UgbSZlYWN1dGU7bsSbIG5lxb46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTdHImYWFjdXRlO25rb3YmeWFjdXRlOyBsaW1pdCc7CiRsYW5nWydmb3InXSA9ICdwcm8nOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdTaHJudXQmaWFjdXRlOyBoaXN0b3JpZSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZXpuJmFhY3V0ZTttJnlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEFkcmVzYSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVHlwIHVkJmFhY3V0ZTtsb3N0aSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdacMSbdCc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IHByb3ZlZGVuJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ8WZJmFhY3V0ZTtka8WvIHpwcmFjb3YmYWFjdXRlO25vJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdWeXNreXRseSBzZSBjaHlieSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnWiZhYWN1dGU7em5hbXkgYnlseSBwxZlpZCZhYWN1dGU7bnknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ05lbHplIG5hbCZlYWN1dGU7enQgdmxhc3Rub3N0aSBza3VwaW55ICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTmVwb2RhxZlpbG8gc2UgeiZpYWN1dGU7c2thdCBvZHBvdsSbxI8gb2QgU01UUCBzZXJ2ZXJ1ICh6a29udHJvbHVqdGUgcHJvcyZpYWN1dGU7bSBuYXN0YXZlbiZpYWN1dGU7LCBwxZkmaWFjdXRlO3BhZG7EmyBrb250YWt0dWp0ZSBzcHImYWFjdXRlO3ZjZSBzZXJ2ZXJ1KSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdVdmVkZW4meWFjdXRlOyBzb3Vib3IgKCVzKSBuZWJ5bCBuYWxlemVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdOZXBsYXRuJmFhY3V0ZTsgaG9kbm90YSBwcm8gcm96YmFsb3ZhYyZpYWN1dGU7IHBvbCZpYWN1dGU7xI1rbyBuZWJvIHYmeWFjdXRlO2LEm3IgeiB2JmlhY3V0ZTtjZSBtb8W+bm9zdCZpYWN1dGU7ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnUG9sZSAlcyBwxZllc2FodWplIG1heGltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrdSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0NoeWJhIHDFmWkgaW1wb3J0dSAoxZkmYWFjdXRlO2RlayAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdOZWx6ZSBwxZlpc3RvdXBpdCBrIGRlZmluaWMmaWFjdXRlO20gdmxhc3Rub3N0JmlhY3V0ZTsgKHZuaXTFmW4maWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcMWZaSBuYXN0YXZvdiZhYWN1dGU7biZpYWN1dGU7IHXFvml2YXRlbHNrJnlhY3V0ZTtjaCBpbmZvcm1hYyZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdOZW1vaHUgbmFsJmVhY3V0ZTt6dCBzbG91cGVjLCBrdGVyJnlhY3V0ZTsgb2Rwb3YmaWFjdXRlO2QmYWFjdXRlOyB2ecW+YWRvdmFuJmVhY3V0ZTttdSBwb2xpICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnTmVtb2h1IG5hbCZlYWN1dGU7enQgdmxhc3Rub3N0aSBwcm8gdXZlZGVub3Ugc2t1cGludSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnU291Ym9yIHZ5YnJhbiZ5YWN1dGU7IHBybyBpbXBvcnQgbmVuJmlhY3V0ZTsgdmUgc3ByJmFhY3V0ZTt2biZlYWN1dGU7bSBmb3JtJmFhY3V0ZTt0dSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnTmVtb2h1IG90ZXbFmSZpYWN1dGU7dCBzb3Vib3InOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0b3ZhdCB1xb5pdmF0ZWxlIGRvIHQmZWFjdXRlO3RvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmxvxb5pdCBDU1Ygc291Ym9yJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnVmxvxb5pdCBYTUwgc291Ym9yJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydG92YXQgdcW+aXZhdGVsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRvdmF0IHXFvml2YXRlbGUnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVnnEjWlzdGl0JzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQ2VzdGEgayBvYnImYWFjdXRlO3prdSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ1Z5c2t5dGwgc2UgcHJvYmwmZWFjdXRlO20gcyBjaHlixJtqJmlhY3V0ZTtjJmlhY3V0ZTttIChhbGUgdnnFvmFkb3ZhbiZ5YWN1dGU7bSkgdXBsb2FkZW0nOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ05lbHplIHBhcnNvdmF0IHBvc2t5dG51dCZ5YWN1dGU7IFhNTCBzb3Vib3InOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ05lbHplIHZ5bWF6YXQgc2t1cGludSwga3RlciZhYWN1dGU7IG0mYWFjdXRlOyBqZSZzY2Fyb247dMSbIMSNbGVueSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVcW+aXZhdGVsIGplIGppxb4gcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHQgeiBvYnImYWFjdXRlO3prdSBuZWJ5bCBzcHImYWFjdXRlO3ZuxJsgdmxvxb5lbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUG92b2xpdCB1xb5pdmF0ZWzFr20gdiZpYWN1dGU7Y2VuJmFhY3V0ZTtzb2JuJmVhY3V0ZTsgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ1DFmSZpYWN1dGU7cG9ueSB0eXDFryBvYnImYWFjdXRlO3prxa8sIGt0ZXImZWFjdXRlOyBtb2hvdSB1xb5pdmF0ZWwmZWFjdXRlOyBuYWhyJmFhY3V0ZTt0JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIGdydW9wJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTiZhYWN1dGU7c2xlZHVqJmlhY3V0ZTtjJmlhY3V0ZTsgbWFrcmEgbW9ob3UgYiZ5YWN1dGU7dCBwb3XFvml0YSB2IHTEm2NodG8gcG9sJmlhY3V0ZTtjaCA6IHskdXNlcm5hbWV9JzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdVcHJhdnRlIHRvdG8gcG9sZSBwcm8gcmVzZXRvdiZhYWN1dGU7biZpYWN1dGU7IGhlc2xhIHXFvml2YXRlbGUnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1VwcmF2dGUgdG90byBwb2xlIHBybyByZXNldG92JmFhY3V0ZTtuJmlhY3V0ZTsgaGVzbGEgdcW+aXZhdGVsZSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVxb5pdmF0ZWwgcyB0JmlhY3V0ZTttdG8gdcW+aXZhdGVsc2smeWFjdXRlO20gam0mZWFjdXRlO25lbSBqacW+IGV4aXN0dWplJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0V4cG9ydCBjc3YgbmV2ciZhYWN1dGU7dGlsIMW+JmFhY3V0ZTtkbiZlYWN1dGU7IHYmeWFjdXRlO3NsZWRreSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdEJmVhY3V0ZTtsa2EgcG9sZSBwcm8gam0mZWFjdXRlO25vIHXFvml2YXRlbGUnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnRCZlYWN1dGU7bGthIHBvbGUgcHJvIGhlc2xvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IGQmZWFjdXRlO2xrYSBoZXNsYSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZCZlYWN1dGU7bGthIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEgamUgbmVwbGF0biZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOZXBsYXRuJmFhY3V0ZTsgZW1haWxvdiZhYWN1dGU7IGFkZHJlc2EnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBwcm8gdGVudG8gJnVhY3V0ZTvEjWV0IG5lYnlsYSBuYWxlemVuYSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcyBuYXN0YXZlbiZpYWN1dGU7bSBpbmZvIG8gdTZpdmF0ZWxpJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgbmFzdGF2ZW4maWFjdXRlO20gdmxhc3Rub3N0aSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVcW+aXZhdGVsIHDFmWlkYWwgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVxb5pdmF0ZWwgc21hemFsIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1ZsYXN0bm9zdCc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnSG9kbm90YSAocmVndWwmZWFjdXRlO3JuJmlhY3V0ZTsgdiZ5YWN1dGU7cmF6KSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm92JmFhY3V0ZTtuJmlhY3V0ZTs6IFRhdG8gcG9sZSBvdmxpdm4maWFjdXRlOyB2ZWxpa29zdCB2c3R1cG4maWFjdXRlO2NoIHBvbCZpYWN1dGU7IGZvcm11bCZhYWN1dGU7xZnFry4gIFNuJmlhY3V0ZTvFvmVuJmlhY3V0ZTsgdG9ob3RvIMSNJmlhY3V0ZTtzbGEgbmEgZXhpc3R1aiZpYWN1dGU7YyZpYWN1dGU7IHN0ciZhYWN1dGU7bmNlIG5lbiZpYWN1dGU7IGRvcG9ydcSNZW5vLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnWm3Em25pdCBhZG1pbmlzdHJhxI1uJmlhY3V0ZTsgcHJlZmVyZW5jZT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhIGJ5bGEgamnFviBwb3XFvml0YSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdQb3XFviZpYWN1dGU7dCBjb29raWUgcHJvIHphcGFtYXRvdiZhYWN1dGU7biZpYWN1dGU7IHDFmWlobGEmc2Nhcm9uO292YWMmaWFjdXRlO2NoICZ1YWN1dGU7ZGFqxa8nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdKbSZlYWN1dGU7bm8gY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnUG92b2xpdCBkdXBsaWNpdG4maWFjdXRlOyBlbWFpbHkuJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnUG9rb3Umc2Nhcm9uO2V0IHNlIHVkcsW+ZXQgdcW+aXZhdGVsZSBwxZlpaGwmYWFjdXRlOyZzY2Fyb247ZW4mZWFjdXRlOyBwb21vYyZpYWN1dGU7IGNvb2tpZXMgPGVtPihjb29raWUgcmVzZXR1amUgYWt0aXZpdHUgbmEgc3RyJmFhY3V0ZTtuayZhYWN1dGU7Y2gpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHBvdm9saXQgdiZpYWN1dGU7Y2UgdcW+aXZhdGVsxa8gc2Ugc3Rlam5vdSBlbWFpbG92b3UgYWRyZXNvdSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgJnF1b3Q7Zm9yZ290IHBhc3N3b3JkJnF1b3Q7IHJlbWluZGVycz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGFsbG93IGEgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIHJlc2V0LCBldmVuIGlmIHRoZXkgaGF2ZW4mIzAzOTt0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1BvdcW+JmlhY3V0ZTt0IG9wciZhYWN1dGU7dm7Em24maWFjdXRlOyBzcGVjaWZpY2smYWFjdXRlOyBwcm8gRnJvbnQgRW5kIFVzZXJzIG1vZHVsPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoQsSbxb5uxJsganNvdSBwcm8gRkVVc2VycyBtb2R1bCBwb3XFviZpYWN1dGU7diZhYWN1dGU7bmEgc3Rlam4mYWFjdXRlOyBvcHImYWFjdXRlO3ZuxJtuJmlhY3V0ZTsgamFrbyBwcm8gQWRtbmluaXN0cmHEjW4maWFjdXRlOyByb3pocmFuJmlhY3V0ZTsuIFBva3VkIHZ5YmVyZXRlIHR1dG8gbW/Fvm5vc3QsIGJ1ZG91IHBybyBGRVVzZXNycyBwb3XFviZpYWN1dGU7diZhYWN1dGU7bmEgb2RkxJtsZW4mYWFjdXRlOyBuYXN0YXZlbiZpYWN1dGU7LiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ05lbW9obCBqc2VtIHVwbG9hZG92YXQgc291Ym9yIChpbnRlcm4maWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdQxZlpIG5haHImYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyBzb3Vib3LFryBkbyZzY2Fyb247bG8gayBjaHlixJsuIFprdXN0ZSB0byBwcm9zJmlhY3V0ZTttIHpub3Z1JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05ldmxvxb5pbGkganN0ZSB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOZXZsb8W+aWwganN0ZSB2JmFhY3V0ZTsmc2Nhcm9uOyBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZXZsb8W+aWxpIGpzdGUgaGVzbG8nOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgT2RobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgUMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VUE9aT1JOxJpOJklhY3V0ZTs8L2I+IHptxJtuYSBzdCZhYWN1dGU7dmFqJmlhY3V0ZTtjJmlhY3V0ZTtjaCB2bGFzdG5vc3QmaWFjdXRlOywga3RlciZlYWN1dGU7IGpzb3UgcMWZacWZYXplbnkgc2t1cGluJmFhY3V0ZTttIG3Fr8W+ZSB6cMWvc29iaXQgcHJvYmwmZWFjdXRlO215IDxpPihwxZllZGV2JnNjYXJvbjsmaWFjdXRlO20gcMWZaSB6a3ImYWFjdXRlO2NlbiZpYWN1dGU7IG7Em2t0ZXImeWFjdXRlO2NoIHBvbCZpYWN1dGU7KTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGF0byBmdW5rY2UgbmVwcmFjdWplIHBvZCB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOZXZ5dHYmYWFjdXRlO8WZZWp0ZSB6dmwmYWFjdXRlOyZzY2Fyb247dG4maWFjdXRlOyB2bGFzdG5vc3QgcHJvIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vLCBwcm90b8W+ZSB0b3RvIGplIHXFviBzb3XEjSZhYWN1dGU7c3QmaWFjdXRlOyBtb2R1bHUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0b3ZhdCB1xb5pdmF0ZWxlIGRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRvdmF0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydG92YXQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbmlzdHJhY2UnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0b3ZhdCB2bGFzdG5vc3QnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgZCZlYWN1dGU7bGthJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdWeXR2b8WZZW5vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NlxZlhZGl0IHBvZGxlJzsKJGxhbmdbJ3NvcnQnXSA9ICfFmGF6ZW4maWFjdXRlOyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVxb5pdmF0ZWwmZWFjdXRlOyB2ZSB2eWJyYW4meWFjdXRlO2NoL3Z5YnJhbiZlYWN1dGU7IHNrdXBpbiZhYWN1dGU7Y2gvc2t1cGluxJsuJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ09tZXppdCB2JnlhY3V0ZTtzbGVka3kgZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmVsemUgbmFqJmlhY3V0ZTt0IHBvbG/Fvmt1IGVtYWlsIHBybyB0b2hvdG8gdcW+aXZhdGVsZS4gTmVqc3AmaWFjdXRlOyZzY2Fyb247ZSBidWRldGUgcG90xZllYm92YXQga29udGFrdG92YXQgYWRtaW5pc3RyJmFhY3V0ZTt0b3JhLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3JtdWwmYWFjdXRlO8WZZSBwcm8gemFwb21lbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9ybXVsJmFhY3V0ZTvFmWUgcHJvIHptxJtudSBuYXN0YXZlbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7IConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIG9kaGwmYWFjdXRlOyZzY2Fyb247ZW4maWFjdXRlOyAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1BvxZlhZCZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ09kc3RyYW5pdCB2JnNjYXJvbjtlY2hueSB6JmFhY3V0ZTt6bmFteSBzdGFyJnNjYXJvbjsmaWFjdXRlOyBuZcW+IGplZGVuIHQmeWFjdXRlO2Rlbic7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdPZHN0cmFuaXQgdiZzY2Fyb247ZWNobnkgeiZhYWN1dGU7em5hbXkgc3RhciZzY2Fyb247JmlhY3V0ZTsgbmXFviBqZWRlbiBtxJtzJmlhY3V0ZTtjJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ09kc3RyYW5pdCB2JnNjYXJvbjtlY2hueSB6JmFhY3V0ZTt6bmFteSc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnSnN0ZSBzaSBqaXN0Pyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1phZCZhYWN1dGU7biAmc2Nhcm9uO3BhdG4meWFjdXRlOyBrJm9hY3V0ZTtkLCBwcm9zJmlhY3V0ZTttIHprdXN0ZSB0byB6bm92YSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRG/EjWFzbiZ5YWN1dGU7IGsmb2FjdXRlO2QgcHJvIHZhJnNjYXJvbjtlIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vIG5lbHplIG5haiZpYWN1dGU7dCB2IGRhdGFiJmFhY3V0ZTt6aSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIGZvcm11bCZhYWN1dGU7xZllIHBybyB2ZXJpZmlrYWNpJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBmb3JtdWwmYWFjdXRlO8WZZSBwcm8gemFwb21lbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1Z5IG5lYm8gbsSba2RvIGppbiZ5YWN1dGU7IGppxb4gemHFviZhYWN1dGU7ZGFsIG8gcmVzZXRvdiZhYWN1dGU7biZpYWN1dGU7IGhlc2xhIHBybyB0ZW50byAmdWFjdXRlO8SNZXQuIERhbCZzY2Fyb247JmlhY3V0ZTsgaW5zdHJ1a2NlIG5hamRldGUgdmUgc3YmZWFjdXRlOyBlLW1haWxvdiZlYWN1dGU7IHNjaHImYWFjdXRlO25jZS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0NoeWJhOiBQcm9ibCZlYWN1dGU7bSBzIGRhdGFiJmFhY3V0ZTt6JmlhY3V0ZTsnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVHV0byB6cHImYWFjdXRlO3Z1IGRvc3QmYWFjdXRlO3YmYWFjdXRlO3RlLCBwcm90b8W+ZSBuxJtrZG8gemHFviZhYWN1dGU7ZGFsIG8gb2Jub3ZlbiZpYWN1dGU7IHphcG9tZW51dCZlYWN1dGU7aG8gaGVzbGEgayB2YSZzY2Fyb247ZW11ICZ1YWN1dGU7xI10dSBuYSBuYSZzY2Fyb247JmlhY3V0ZTsgc3RyJmFhY3V0ZTtuY2UuIFBva3VkIGplIHRvIHRhaywgcG9zdHVwdWp0ZSBwb2RsZSBuJmlhY3V0ZTvFvmUgdXZlZGVuJnlhY3V0ZTtjaCBpbnN0cnVrYyZpYWN1dGU7LiBQb2t1ZCBuZXR1JnNjYXJvbjsmaWFjdXRlO3RlIG8gY28gamRlLCB0YWsgdGVudG8gZS1tYWlsIGlnbm9ydWp0ZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLJm9hY3V0ZTtkJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ04mYWFjdXRlO3NsZWR1aiZpYWN1dGU7YyZpYWN1dGU7IGsmb2FjdXRlO2QgYnlsIG4mYWFjdXRlO2hvZG7EmyB2eWdlbmVyb3YmYWFjdXRlO24gcHJvIHZlcmlmaWthY2kgdcW+aXZhdGVsc2smZWFjdXRlO2hvICZ1YWN1dGU7xI10dS4gUG8ga2xlcG51dCZpYWN1dGU7IG5hIG4mYWFjdXRlO3NsZWR1aiZpYWN1dGU7YyZpYWN1dGU7IG9ka2F6IHNlIGRvc3RhbmV0ZSBuYSBzdHImYWFjdXRlO25rdSBrZGUgemFkYXQgdGVudG8gayZvYWN1dGU7ZC4gUG9sZSBqZSBzdGFuZGFyZG7EmyBqacW+IHDFmWVkdnlwbG7Em25vLiBQb2t1ZCBuZW4maWFjdXRlOywgayZvYWN1dGU7ZCBqZSB6ZGU6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnS2xlcG51dCZpYWN1dGU7bSBuYSBuJmFhY3V0ZTtzbGVkdWomaWFjdXRlO2MmaWFjdXRlOyBvZGtheiBzZSBkb3N0YW5ldGUgbmEgc3RyJmFhY3V0ZTtua3UsIGtkZSBtxa/FvmV6ZSB6YWRhdCB2JnlhY3V0ZTsmc2Nhcm9uO2UgdXZlZGVuJnlhY3V0ZTsgayZvYWN1dGU7ZCBhIG9ibm92aXQgdmEmc2Nhcm9uO2UgaGVzbG86JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdaYXBvbWVudXQmZWFjdXRlOyBoZXNsbyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05lbHplIG5haiZpYWN1dGU7dCBtb2R1bCBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnTmEgYWRyZXN1ICVzIGJ5bCB6YXNsJmFhY3V0ZTtuIGUtbWFpbCBzIGluc3RydWtjZW1pLCBqYWsgb2Jub3ZpdCB2YSZzY2Fyb247ZSBoZXNsby4gRMSba3VqZW1lJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUG9rdWQganN0ZSB6YXBvbcSbbCBuZWJvIHp0cmF0aWwgc3YmZWFjdXRlOyBoZXNsbywgdGFrIHByb3MmaWFjdXRlO20gdnlwbMWIdGUgc3ZvamUgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8gYSBlLW1haWxlbSBkb3N0YW5ldGUgaW5zdHJ1a2NlIGphayBwb2tyYcSNb3ZhdCBzIG9ibm92ZW4maWFjdXRlO20gdG9ob3RvIGhlc2xhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnRm9yZ290IFBhc3N3b3JkIFRlbXBhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIHBvdcW+aXQmYWFjdXRlOywgcG9rdWQgdcW+aXZhdGVsIHp0cmF0JmlhY3V0ZTsgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnVmxhc3Rub3N0ICVzIG5lbmFsZXplbmEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1ZsYXN0bm9zdGkgbmFsZXplbnknOwokbGFuZ1snYWRkcHJvcCddID0gJ1DFmWlkYXQgdmxhc3Rub3N0JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQb3Zpbm4mYWFjdXRlOyB2bGFzdG5vc3QgKCVzKSBieWxhIHByJmFhY3V0ZTt6ZG4mYWFjdXRlOyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1phZGVqdGUgc2VtIG5vdiZlYWN1dGU7IGhlc2xvJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnUHJhdmTEm3BvZG9ibsSbIG5lanN0ZSBwxZlpaGwmYWFjdXRlOyZzY2Fyb247ZW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ05hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYWNlJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGVudG8gJnVhY3V0ZTvEjWV0IHZ5cHImc2Nhcm9uO2VsJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICcmU2Nhcm9uO3BhdG4meWFjdXRlOyBmb3JtJmFhY3V0ZTt0IGUtbWFpbG92JmVhY3V0ZTsgYWRyZXN5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnTmVwbGF0biZ5YWN1dGU7IGRhdHVtIHZ5cHImc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0NoeWJhIHDFmWkgbmFzdGF2ZW4maWFjdXRlOyB2bGFzdG5vc3RpICVzIHXFvml2YXRlbGUgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdOZXBsYXRuJmVhY3V0ZTsgaWQgc2t1cGlueSAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1puYcSNa292YcSNIHNrcnl0JnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnQmFydmEgc2tyeXQmZWFjdXRlO2hvIHBvbGUnOwokbGFuZ1snaGlkZGVuJ10gPSAnU2tyeXQmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVmxhc3Rub3N0IHMgdCZpYWN1dGU7bXRvIGptJmVhY3V0ZTtuZW0gamUgamnFviBkZWZpbm92JmFhY3V0ZTtuYSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZWpzb3UgZGVmaW5vdiZhYWN1dGU7bnkgxb4mYWFjdXRlO2RuJmVhY3V0ZTsgdmxhc3Rub3N0aSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ1BybyB0dXRvIHNrdXBpbnUgbmVieWx5IHZ5YnImYWFjdXRlO255IHZsYXN0bm9zdGknOwokbGFuZ1snbm9ncm91cHMnXSA9ICfFvSZhYWN1dGU7ZG4mZWFjdXRlOyBza3VwaW55IHXFvml2YXRlbMWvIG5lanNvdSBkZWZpbm92JmFhY3V0ZTtueSc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ1NrdXBpbnkgbmFsZXplbnknOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0plIHZ5xb5hZG92JmFhY3V0ZTtubyBwxZlpxZlhemVuJmlhY3V0ZTsgYWxlc3BvxYggZG8gamVkbiZlYWN1dGU7IHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1Z5xb5hZG92YXQgcMWZacWZYXplbiZpYWN1dGU7IGFsZXNwb8WIIGRvIGplZG4mZWFjdXRlOyBza3VwaW55JzsKJGxhbmdbJ2JhY2snXSA9ICdacMSbdCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgamUgcG92aW5uJmFhY3V0ZTsgcG9sb8W+a2EnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ096bmHEjWl0IHBvxb5hZG92YW4mYWFjdXRlOyBwb2xlJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ0RhbCZzY2Fyb247JmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdTa3VwaW5hIHMgdCZpYWN1dGU7bXRvIGptJmVhY3V0ZTtuZW0gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnVnnFvmFkb3ZhbiZhYWN1dGU7IHBvbG/FvmthJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnVm9saXRlbG4mYWFjdXRlOyc7CiRsYW5nWydvZmYnXSA9ICdWeXBub3V0JzsKJGxhbmdbJ3NpemUnXSA9ICdWZWxpa29zdCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltJmFhY3V0ZTtsbiZpYWN1dGU7IHJvem3Em3Igb2JyJmFhY3V0ZTt6a3UgdiBwaXhlbGVjaCknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRCZlYWN1dGU7bGthJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KHpuYWt5IHZlIHZzdHVwbiZpYWN1dGU7bSBwb2xpKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnUG9sb8W+a3kgcm96YmFsb3ZhYyZpYWN1dGU7aG8gbWVudSBvZGTEm2xlbiZlYWN1dGU7IG5vdiZ5YWN1dGU7bWkgxZkmYWFjdXRlO2RreSc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdWJnlhY3V0ZTt6dmEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXYgcG9sJmlhY3V0ZTvEjWthJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1plcHRhdCBzZSB2IHDFmSZpYWN1dGU7cGFkxJs8YnIvPnphcG9tZW51dCZpYWN1dGU7IHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdaYSZzY2Fyb247a3J0JmFhY3V0ZTt2YWMmaWFjdXRlOyBwb2wmaWFjdXRlO8SNa28nOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdWJnlhY3V0ZTtixJtyIHogdiZpYWN1dGU7Y2UgcG9sb8W+ZWsnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ09iciZhYWN1dGU7emVrJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdPYmxhc3QgdGV4dHUnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdSb3piYWxvdmFjJmlhY3V0ZTsgbWVudSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1YmaWFjdXRlO3RlanRlJzsKJGxhbmdbJ2xvZ291dCddID0gJ09kaGwmYWFjdXRlO3NpdCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnUG91xb4maWFjdXRlO3Qgam0mZWFjdXRlO25vIHQmZWFjdXRlO3RvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnVXByYXZpdCBtJmFhY3V0ZTsgbmFzdGF2ZW4maWFjdXRlOyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ1DFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7IHNlbGhhbG8gLSAmc2Nhcm9uO3BhdG4mZWFjdXRlOyB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBuZWJvIGhlc2xvPyc7CiRsYW5nWydsb2dpbiddID0gJ1DFmWlobCZhYWN1dGU7c2l0JzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnUG9waXNlayBwb2wmaWFjdXRlO8SNa2EgcHJvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0hlc2xvJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUGFtYXR1aiBzaSBtxJsgbmEgdG9tdG8gcG/EjSZpYWN1dGU7dGHEjWknOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3Ryb3ZhdCc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1phcG9tZW51dCZlYWN1dGU7IGhlc2xvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdaYXBvbW7Em2xpIGpzdGUgcMWZaWhsYSZzY2Fyb247b3ZhYyZpYWN1dGU7ICZ1YWN1dGU7ZGFqZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdWJnlhY3V0ZTtjaG96JmlhY3V0ZTsgaG9kbm90eSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgSUQgbmVuYWxlemVubyc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVG90byB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyAoJXMpIGppxb4gbsSba2RvIHBvdcW+JmlhY3V0ZTt2JmFhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1BvdcW+JmlhY3V0ZTt2YXQgU01UUCBwcm8gdmFsaWRhY2kgZS1tYWlsb3YmeWFjdXRlO2NoIGFkcmVzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbSZhYWN1dGU7bG4maWFjdXRlOyBkJmVhY3V0ZTtsa2EgaGVzbGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgZCZlYWN1dGU7bGthIGhlc2xhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrYSB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrYSB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ0QmZWFjdXRlO2xrYSBwbGF0bm9zdGkgc2Vzc2lvbiAodmUgdnRlxZlpbiZhYWN1dGU7Y2gpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdQb3XFviZpYWN1dGU7dCBjb29raWVzIHBybyB1ZHLFvmVuJmlhY3V0ZTsgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQb3ZvbGl0IHJlZ2lzdHJhY2kgZS1tYWlsdSc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHNrdXBpbmEgcHJvIG5vdiZlYWN1dGU7IHXFvml2YXRlbGUnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gem3Em251IG5hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0hlc2xhIG5lanNvdSBzdGVqbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0NoeWJuJmVhY3V0ZTsgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnQ2h5eWJuJmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0b3ZhdCB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnUGxhdG4mZWFjdXRlOyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXYnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnVGVudG8gdcW+aXZhdGVsIG5lbiZpYWN1dGU7IHDFmWnFmWF6ZW4gZG8gxb4mYWFjdXRlO2RuJnlhY3V0ZTtjaCBza3VwaW4nOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ8W9JmFhY3V0ZTtkbiZlYWN1dGU7IHZsYXN0bm9zdGknOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdJbXBvcnRvdmF0IGR1cGxpayZhYWN1dGU7dG4maWFjdXRlOyB2bGFzdG5vc3RpJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnSG9kbm90YSc7CiRsYW5nWydncm91cHMnXSA9ICdTa3VwaW55JzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdWbGFzdG5vc3RpJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTiZhYWN1dGU7emV2IHZsYXN0bm9zdGknOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnSG9kbm90YSB2bGFzdG5vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ1DFmWlkYXQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcmllJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0b3ZhdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnVnlwciZzY2Fyb247ZW4maWFjdXRlOyc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZpa3VqdGUgZGF0dW0nOwokbGFuZ1snMTJocnMnXSA9ICcxMiBob2Rpbic7CiRsYW5nWycyNGhycyddID0gJzI0IGhvZGluJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9kaW4nOwokbGFuZ1snMXdlZWsnXSA9ICcxIHQmeWFjdXRlO2Rlbic7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHQmeWFjdXRlO2RueSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG3Em3MmaWFjdXRlO2MnOwokbGFuZ1snM21vbnRocyddID0gJzMgbcSbcyZpYWN1dGU7Y2UnOwokbGFuZ1snNm1vbnRocyddID0gJzYgbcSbcyZpYWN1dGU7Y8WvJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bCAmdWFjdXRlO3NwxJsmc2Nhcm9uO27EmyBuYWluc3RhbG92JmFhY3V0ZTtuLjxici8+TmV6YXBvbWXFiHRlIG5hc3Rhdml0IG9wciZhYWN1dGU7dm7Em24maWFjdXRlOyAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdIZXNsbyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1pub3ZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdTdXBpbmEgcyB0JmlhY3V0ZTttdG8gbiZhYWN1dGU7enZlbSBqacW+IGV4aXN0dWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkaXRvdmF0IHNrdXBpbnUnOwokbGFuZ1snc3VibWl0J10gPSAnUG90dnJkaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnWnJ1JnNjYXJvbjtpdCc7CiRsYW5nWydkZWxldGUnXSA9ICdWeW1hemF0JzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnSnN0ZSBzaSBqaXN0IMW+ZSB0b3RvIGplIHNwciZhYWN1dGU7dm4mZWFjdXRlOyBuYXN0YXZlbiZpYWN1dGU7IHBybyB0dXRvIHNrdXBpbnU/XG4gVnlwbnV0JmlhY3V0ZTttIHZsYXN0bm9zdGkgc2UgbmVzbWHFvm91IMW+JmFhY3V0ZTtkbiZlYWN1dGU7ICZ1YWN1dGU7ZGFqZSB2ZSB2bGFzdG5vc3RlY2ggdG9ob3RvIHXFvml2YXRlbGUvc2t1cGlueS4gJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdKc3RlIHNpIGppc3Qgxb5lIGNoY2V0ZSBzbWF6YXQgdHV0byBza3VwaW51Pyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnT3ByYXZkdSBjaGNldGUga29tcGxldG7EmyBzbWF6YXQgdHV0byB2bGFzdG5vc3Q/XG5UJmlhY3V0ZTttIHNlIHZ5bWHFvm91IGkgdiZzY2Fyb247ZWNobnkgaG9kbm90eSB0JmVhY3V0ZTt0byB2bGFzdG5vc3RpIHUgdcW+aXZhdGVsxa8uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lZG9zdGF0ZcSNbiZlYWN1dGU7IHBhcmFtZXRyeSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdKbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQxZlpIHDFmWlkJmFhY3V0ZTt2JmFhY3V0ZTtuJmlhY3V0ZTsgdmxhc3Rub3N0aSBkbyZzY2Fyb247bG8gayBjaHlixJsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgcMWZaWQmYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyB2enRhaHUgc2t1cGlueSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibCZlYWN1dGU7bSBwxZlpIHDFmWlkJmFhY3V0ZTt2JmFhY3V0ZTtuJmlhY3V0ZTsgc2t1cGlueSc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgcMWZaWQmYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyB1xb5pdmF0ZWxlIGRvIHNrdXBpbnknOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgbWF6JmFhY3V0ZTtuJmlhY3V0ZTsgdmxhc3Rub3N0aSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05lbW9odSBuYWwmZWFjdXRlO3p0IGUtbWFpbG92b3UgYWRyZXN1JzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdEbyBjJmlhY3V0ZTtsb3YmZWFjdXRlO2hvIGFkcmVzJmFhY3V0ZTvFmWUgbmVuJmlhY3V0ZTsgcG92b2xlbiB6JmFhY3V0ZTtwaXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJyZTY2Fyb247cGF0biZlYWN1dGU7IHBhcmFtYXRyeSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ05lYnlseSBuYWxlemVueSDFviZhYWN1dGU7ZG4mZWFjdXRlOyBza3VwaW55JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnUG91xb4maWFjdXRlO3QnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ1JlZ3VsJmFhY3V0ZTtybiZpYWN1dGU7IHYmeWFjdXRlO3JheiBwcm8gdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdQb3Bpcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOJmFhY3V0ZTt6ZXYgc2t1cGlueSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdQxZkmaWFjdXRlO3N0dXAgb2RlcMWZZW4nOwokbGFuZ1snZXJyb3InXSA9ICdDaHliYSc7CiRsYW5nWydhZGRncm91cCddID0gJ1DFmWlkYXQgc2t1cGludSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydG92YXQgc2t1cGludSc7CiRsYW5nWydhZGR1c2VyJ10gPSAnUMWZaWRhdCB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVxb5pdmF0ZWwmZWFjdXRlOyBzcGzFiHVqJmlhY3V0ZTtjJmlhY3V0ZTsgdnlobGVkJmFhY3V0ZTt2YWMmaWFjdXRlOyBrcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWeWJyYXQgc2t1cGludSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gcmVnaXN0cmFjaSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gb2RobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgcHJvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUMWZZWR2b2xieSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvml2YXRlbCZlYWN1dGU7JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NwciZhYWN1dGU7dmEgZnJvbnRlbmQgdcW+aXZhdGVsxa8nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTcHJhdm92YXQgZnJvbnRlbmQgdcW+aXZhdGVsZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHN0ciZhYWN1dGU7bmthJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdTdHImYWFjdXRlO25rYSBzIHBvc2xlZG4maWFjdXRlO20gcMWZJmlhY3V0ZTtzdHVwZW0nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSmluJmFhY3V0ZTsgc3RyJmFhY3V0ZTtua2E6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3BpJnNjYXJvbjt0ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a3UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/da_DK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ1RvbyBtYW55IHVzZXJzIGFyZSBzZWxlY3RlZCBmb3IgYnVsayBvcGVyYXRpb25zLi4uLiBQbGVhc2UgdHJpbSBpdCB0byAyNTAgb3IgbGVzcyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBkdSB2aWwgc2xldHRlIGRlIHZhbGd0ZSBicnVnZXJlPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTbGV0IGRlIHZhbGd0ZSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ20mYXJpbmc7bmVkZXInOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1N0YW5kYXJkIGJydWdlciB1ZGwmb3NsYXNoO2JzIHRpZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdJbmRzdGlsbGluZ2VyIGZvciBiZXNrZWRlcic7CiRsYW5nWydwcm9wZXJ0eV9zZXR0aW5ncyddID0gJ0luZHN0aWxsaW5nZXIgZm9yIGVnZW5za2FiZXInOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdWaWRlcnN0aWxsaW5ncyBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5kc3RpbGxpbmdlcic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnSW5kc3RpbGxpbmdlciBmb3Igc2Vzc2lvbiBvZyBjb29raWVzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmVsdCBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdUaWxsYWQgYnJ1ZyBhZiB3eXNpd3lnIGZvciBkZXR0ZSB0ZWtzdG9tciZhcmluZztkZSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ1JlZGlnZXJlciBicnVnZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdWaXMgaWtrZSBmb3JtcyBpbmxpbmUnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrIGhlciBodmlzIGR1IGlra2Uga2FuIGh1c2tlIGRpbmUgbG9naW4gb3BseXNuaW5nZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWsgaGVyIGh2aXMgZHUgaWtrZSBrYW4gaHVza2UgZGl0IHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2xpayBoZXIgZm9yIGF0IGxvZ2dlIHVkJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdLbGlrIGhlciBmb3IgYXQgJmFlbGlnO25kcmUgZGl0IHBhc3N3b3JkIGVsbGVyIGFuZGVuIGluZm9ybWF0aW9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnU2UgYnJ1Z2VyIHRlbXBsYXRlJzsKJGxhbmdbJ2V2ZW50J10gPSAnQmVnaXZlbmhlZCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIGJlc2tlZCBvbSBiZWdpdmVuaGVkJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0Jlc2tlZCBlbWFpbCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdCZXNrZWQgZW1haWwgdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnQmVza2VkIGVtYWlsIGVtbmUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBiZXNrZWRlcic7CiRsYW5nWydPbkxvZ2luJ10gPSAnVmVkIGxvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnVmVkIGxvZ291dCc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdWZWQgdWRsJm9zbGFzaDtiIGFmIHNlc3Npb24nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnVmVkb3ByZXR0ZWxzZSBhZiBlbiBueSBicnVnZXInOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnVmVkIHNsZXRuaW5nIGFmIGVuIGJydWdlcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdWZWQgJmFlbGlnO25kcmluZyBhZiBicnVnZXIgb3BseXNuaW5nZXInOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ1ZlZCBvcHJldHRlbHNlIGFmIGVuIG55IGJydWdlcmdydXBwZSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnVmVkIHNsZXRuaW5nIGFmIGVuIGJydWdlcmdydXBwZSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0Z1bmt0aW9uZW4sIGRlciBrYW4gaGVudGUgbWlzdGVkZSBsb2dpbiBvcGx5c25pbmdlciwgZXIgYWZzbHV0dGV0IG1lZCBzdWNjZXMuICBWaSBoYXIgZnVuZGV0IGV0IHVuaWt0IGJydWdlcm5hdm4sIGRlciBtYXRjaGVkZSBkaW5lIG9wbHlzbmluZ2VyLiAnOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0RpdCBicnVnZXJuYXZuIGVyJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZpIGFuYmVmYWxlciBkdSBnZW1tZXIgZGVubmUgaW5mb3JtYXRpb24gcCZhcmluZzsgZXQgc2lra2VydCBzdGVkLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnRyZhcmluZzsgdGlsIFBhZ2VJRC9BbGlhcyBlZnRlciBhdCBoYXZlICZhZWxpZztuZHJldCBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0cmYXJpbmc7IHRpbCBQYWdlSUQvQWxpYXMgZWZ0ZXIga29kZSB2ZXJpZmlrYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0RldGFsamVyZXQgc2thYmVsb24gZm9yIG1pc3RldCBicnVnZXJuYXZuJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnQmVrciZhZWxpZztmdGVsc2VzIHNrYWJlbG9uIGZvciBtaXN0ZXQgYnJ1Z2VybmF2bic7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Zlamw6IE1lcmUgZW5kIGVuIGJydWdlciBwYXNzZXIgdGlsIGRlIGFuZ2l2bmUgZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdGZWpsOiBLdW5uZSBpa2tlIGZpbmRlIGVuIGJydWdlciBtZWQgZGUgZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRmVqbDogS3VubmUgaWtrZSBmaW5kZSBlbiBncnVwcGUgbWVkIGRldCBuYXZuJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2tyaXZlYmVza3l0dGV0JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dlZCBvdXQgYWYgYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnVmlzIGt1biBicnVnZXJlLCBkZXIgZXIgbG9nZ2V0IGluZCc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nIGRlbm5lIGJydWdlciBhZic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdCcnVnZXIgZWdlbnNrYWJlcic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0JydWdlciBoaXN0b3JpZSc7CiRsYW5nWydleHBvcnQnXSA9ICdFa3Nwb3J0JmVhY3V0ZTtyJzsKJGxhbmdbJ2NsZWFyJ10gPSAnUnlkJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0Vrc3BvcnQmZWFjdXRlO3IgYnJ1Z2VyIGhpc3RvcmlrIHRpbCBBU0NJSSBzb20gZXIgbWVyZSBlbmQnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdTbGV0IGJydWdlciBoaXN0b3JpayBkZXIgZXIgbWVyZSBlbmQnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnTWlzdGV0IGJydWdlcm5hdm4gc3VwcG9ydCBmb3J1bSc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0JmVhY3V0ZTtyIGdydXBwZSBkZWZpbml0aW9uZXIgKG9nIGVnZW5za2FiZXIpIHRpbCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1ZlZGxpZ2Vob2xkIGJydWdlciBoaXN0b3JpZSc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05laic7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdBZic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBJbmdlbiBiZWdyJmFlbGlnO25zbmluZyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFbiB0aW1lIGdhbW1lbCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWtzIHRpbWVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUb2x2IHRpbWVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VuIGRhZyBnYW1tZWwnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRW4gdWdlIGdhbW1lbCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVG8gdWdlciBnYW1tZWwnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0VuIG0mYXJpbmc7bmVkIGdhbW1lbCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHJlIG0mYXJpbmc7bmVkZXIgZ2FtbWVsJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VrcyBtJmFyaW5nO25lZGVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFdCAmYXJpbmc7ciBnYW1tZWwnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cHBlcmluZyBvZyBzb3J0ZXJpbmcnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1Bvc3RlciwgZGVyIG1hdGNoZXIga3JpdGVyaWV0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnRmFsZGVuZGUgYnJ1Z2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnU3RpZ2VuZGUgYnJ1Z2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRmFsZGVuZGUgZGF0b29yZGVuJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ1N0aWdlbmRlIGRhdG9vcmRlbic7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdGYWxkZW5kZSBiZWdpdmVuaGVkc2thdGVnb3JpJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnU3RpZ2VuZGUgYmVnaXZlbmhlZHNrYXRlZ29yaSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdGYWxkZW5kZSBJUCBhZHJlc3NlIG9yZGVuJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3RpZ2VuZGUgSVAgYWRyZXNzZSBvcmRlbic7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnSW5nZW4gaGlzdG9yaWUgZnVuZGV0JzsKJGxhbmdbJ3Jlc2V0J10gPSAnTnVsc3RpbCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcnVwcCZlYWN1dGU7ciBlZnRlciBJUCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnSCZhZWxpZztuZGVsc2VzIHR5cGUgZmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ZpcyBrdW4gYmVnaXZlbmhlZGVyLCBkZXIgZXIgbWluZHJlIGVuZDonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1NpZGUgYmVnciZhZWxpZztzbmluZyc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdCcnVnZXIgaGlzdG9yaWUgcmFwcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVWtlbmR0JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdCZWdpdmVuaGVkc2thdGVnb3JpJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0byc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGlsYmFnZSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IGtvbXBsZXQnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaWVyIGJlYXJiZWpkZXQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0ZlamwgZnVuZGV0JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdQb3N0ZXIgdGlsZiZvc2xhc2g7amV0JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5uZSBpa2tlIGZyaW5kZSBlZ2Vuc2thYmVyIGZvciBncnVwcGVuICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnRmlrIGludGV0IHN2YXIgZnJhIFNNVFAtc2VydmVyZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRGVuIGFuZ2l2bmUgZmlsICglcykga3VubmUgaWtrZSBmaW5kZXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ZlamxhZ3RpZyB2JmFlbGlnO3JkaWcgZm9yIGRyb3Bkb3duIGVsbGVyIG11bHRpc2VsZWN0IGZlbHQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGZWx0ICVzIGVyIG1lcmUgZW5kIGRlbiBtYWtzaW1hbGUgbCZhZWxpZztuZ2RlJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IGZlamwgKGxpbmllICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0t1bm5lIGlra2UgZmluZGUgZWdlbnNrYWJzZGVmaW5pdGlvbnNuIChpbnRlcm4gZmVqbCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbWVyIG1lZCBhdCAmYWVsaWc7bmRyZSBicnVnZXIgb3BseXNuaW5nZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0t1bm5lIGlra2UgZmluZGUgZW4gcyZvc2xhc2g7amxlIGRlciBzdmFyZXIgdGlsIGRldCBrciZhZWxpZzt2ZWRlIGZlamx0ICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnS3VubmUgaWtrZSBmaW5kZSBlZ2Vuc2thYmVyIGZvciBkZW4gdmFsZ3RlIGdydXBwZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGVuIHZhbGd0ZSBmaWwgdGlsIGltcG9ydCBlciBpa2tlIGkgZGV0IGtvcnJla3RlIGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnS3VubmUgaWtrZSAmYXJpbmc7Ym5lIGZpbCc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRlciBicnVnZXJlIGkgZGVubmUgZ3J1cHBlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0luZHMmYWVsaWc7dCBDU1YgZmlsJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5kcyZhZWxpZzt0IFhNTCBmaWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRWtzcG9ydCZlYWN1dGU7ciBicnVnZXJlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVyIGJydWdlcmUnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnUnlkJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQmlsbGVkIGRlc3RpbmF0aW9ucyBtYXBwZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0V0IHByb2JsZW0gb3BzdG9kIHZlZCBlbiBtYW5nbGVuZGUgKG1lbiBwJmFyaW5nO2tyJmFlbGlnO3ZldCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLdW5uZSBpa2tlIG92ZXJzJmFlbGlnO3R0ZSBkZW4gYW5naXZuZSBYTUwgZmlsJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdLYW4gaWtrZSBzbGV0dGUgZW4gZ3J1cHBlLCBkZXIgc3RhZGlnIGluZGVob2xkZXIgYnJ1Z2VyZS4nOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0Rlbm5lIGJydWdlciBlciBhbGxlcmVkZSBsb2dnZXQgaW5kJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGxlZGVyIGJsZXYgaWtrZSBza3JldmV0IGtvcnJla3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1RpbGxhZCBicnVnZXJlIGF0IHYmYWVsaWc7cmUgbG9nZ2V0IGluZCBmbGVyZSBnYW5nZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnQmlsbGVkZmlsLXR5cGVyIHNvbSBicnVnZXJlIG0mYXJpbmc7IHVwbG9hZCYjMDM5O2UnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPGgzPk9uTG9nb3V0PGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8aDM+T25FeHBpcmVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIGdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSc7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnUmV0IGkgZGV0dGUgZmVsdCBmb3IgYXQgbnVsc3RpbGxlIGJydWdlcmVucyBrb2Rlb3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdSZXQgaSBkZXR0ZSBmZWx0IGZvciBhdCBudWxzdGlsbGUgYnJ1Z2VyZW5zIGtvZGVvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRW4gYnJ1Z2VyIG1lZCBkZXRicnVnZXJuYXZuIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTCZhZWxpZztuZ2RlIHAmYXJpbmc7IGZlbHRldCBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0wmYWVsaWc7bmdkZSBwJmFyaW5nOyBmZWx0ZXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL21ha3MgbCZhZWxpZztuZ2UgcCZhcmluZzsga29kZW9yZGV0IGVyIGlra2UgZ3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vbWFrcyBsJmFlbGlnO25nZSBwJmFyaW5nOyBicnVnZXJuYXZuZXQgZXIgaWtrZSBneWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ1VneWxkaWcgZW1haWwgYWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1ZpIGt1bm5lIGlra2UgZmluZGUgZW4gZW1haWwgYWRyZXNzZSBmb3IgZGVubmUga29udG8nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ0ZlamwgdmVkIGluZHMmYWVsaWc7dG5pbmcgYWYgYnJ1Z2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdCcnVnZXIgdGlsZiZvc2xhc2g7amV0ICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnQnJ1Z2VyIHNsZXR0ZXQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnRWdlbnNrYWInOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1YmYWVsaWc7cmRpIChyZWd1bCZhZWxpZztydWR0cnlrKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0FkdmFyc2VsOiBkaXNzZSBmZWx0ZXIgcCZhcmluZzt2aXJrZXIgc3Qmb3NsYXNoO3JyZWxzZSBwJmFyaW5nOyBpbnB1dCBmZWx0ZXIgZm9yIGZvcm11bGFyZXIuIERldCBrYW4gaWtrZSBhbmJlZmFsZXMgYXQgJmFlbGlnO25kcmUgZGlzc2UgdGFsIHAmYXJpbmc7IGFsbGVyZWRlIGVuIGVrc2lzdGVyZW5kZSBzaWRlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdSZWRpZyZlYWN1dGU7ciBhZG1pbmlzdHJhdGlvbnMgaW5kc3RpbGxpbmdlcj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsLWFkcmVzc2UgYWxsZXJlZGUgaSBicnVnJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnVGlsbGFkIGlkZW50aXNrZSBlbWFpbC1hZHJlc3Nlcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBhZHJlc3NlIGVyIGJydWdlcm5hdm4nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcodGlsbGFkIGZsZXJlIGJydWdlcmUgbWVkIHNhbW1lIGVtYWlsIGFkcmVzc2UpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnVGlsbGFkIG1lcmUgZW5kIGVuICZxdW90O2dsZW10IGtvZGVvcmQmcXVvdDsgcCZhcmluZzttaW5kZWxzZT8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHRpbGxhZCBhdCBlbiBicnVnZXIgZiZhcmluZztyIG11bGlnaGVkIGZvciBhdCAmYWVsaWc7bmRyZSBzaXQga29kZW9yZCwgc2Vsdm9tIGRlbm5lIGlra2UgaGFyIHJlYWdlcmV0IHAmYXJpbmc7IGVuIHRpZGxpZ2VyZSBmb3Jlc3Amb3NsYXNoO2dzZWwpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ0R1IGluZHRhc3RlZGUgaWtrZSBldCBicnVnZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1lvdSBkaWQgbm90IGVudGVyIHlvdXIgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnRHUgaW5kdGFzdGVkZSBpa2tlIGV0IGtvZGVvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIEJydWdlciBMb2cgVWQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgQnJ1Z2VyIExvZyBJbmQnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdEZW5uZSBmdW5rdGlvbiBmdW5nZXJlciBpa2tlIGkgd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3Igc29tZSBzdWNoIHRoaW5nIGFzIHRoaXMgaXMgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcnRlciBicnVnZXIgdGlsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ1JlZGlnZXIgZWdlbnNrYWJlcic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzLiBsJmFlbGlnO25nZGUnOwokbGFuZ1snY3JlYXRlZCddID0gJ09wcmV0dGV0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlciBlZnRlcic7CiRsYW5nWydzb3J0J10gPSAnU29ydGVyZXInOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnQnJ1Z2VyZSBpIGRlKG4pIHZhbGd0ZSBncnVwcGUociknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnQmVnciZhZWxpZztucyByZXN1bHRhdGVyIHRpbCc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLdW5uZSBpa2tlIGZpbmRlIGV0IGVtYWlsIGZlbHQgZm9yIGRlbm5lIGJydWdlci4gS29udGFrdCBzeXN0ZW0gYWRtaW5pc3RyYXRvcmVuLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0ZXJpbmdzb3JkZW4nOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVzZXR0aW5nIGxvc3QgcGFzc3dvcmRzLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7ZywgZGVyIGVyIG1lcmUgZW5kIGVuIHVnZSBnYW1sZSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdTbGV0IGFsbGUgaW5kbCZhZWxpZztnLCBkZXIgZXIgbWVyZSBlbmQgZW4gbSZhcmluZztuZWQgZ2FtbGUnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7Zyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0FuIGludmFsaWQgY29kZSBoYXMgYmVlbiBlbnRlcmVkLCBwbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdEaWcgc2VsdiBlbGxlciBlbiBhbmRlbiBoYXIgYWxsZXJlZGUgYmVkdCBvbSBhdCBmJmFyaW5nOyBudWxzdGlsbGV0IGtvZGVvcmRldCBmb3IgZGVubmUgYnJ1Z2VyLiBDaGVjayBkaW4gZW1haWwgLSBkdSBoYXIgbXVsaWd2aXMgZiZhcmluZztldCB5ZGVybGlnZXJlIGluc3RydWt0aW9uZXIgb20gaHZvcmRhbiBkdSBudWxzdGlsbGVyIGRpdCBrb2Rlb3JkIGkgZGluIG1haWxib2tzLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UgZmVqbCc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdEdSBtb2R0YWdlciBkZW5uZSBiZXNrZWQsIGRhIG5vZ2VuIGhhciBnaXZldCB2b3JlcyBzaXRlIGJlc2tlZCBvbSBhdCBkdSBoYXIgbWlzdGV0IGRpdCBrb2Rlb3JkLiBIdmlzIGRldHRlIGVyIHJpZ3RpZ3QsIHMmYXJpbmc7IGwmYWVsaWc7cyBuZWRlbnN0JmFyaW5nO2VuZGUgaW5zdHJ1a3Rpb25lci4gSHZpcyBkdSBpa2tlIGhhciBtaXN0ZXQgZGl0IGtvZGVvcmQga2FuIGR1IHNsZXR0ZSBkZW5uZSBiZXNrZWQgb2cgdmkgdW5kc2t5bGRlciB1bGVqbGlnaGVkZW4uJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gZ2VuZXJhdGVkIHJhbmRvbWx5IGdlbmVyYXRlZCBpbiBvcmRlciB0byB2ZXJpZnkgdGhlIHVzZXIgYWNjb3VudC4gIHdoZW4geW91IGNsaWNrIG9uIHRoZSBsaW5rIGJlbG93IHlvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgZmllbGQgdG8gZW50ZXIgdGhpcyBjb2RlLiAgTm9ybWFsbHkgdGhlIGZpZWxkIGlzIHByZS1jb21wbGV0ZWQgZm9yIHlvdSwgYnV0IGluY2FzZSBpdCBpc24mIzAzOTt0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0h2aXMgZHUga2xpa2tlciBwJmFyaW5nOyBkZXQgZiZvc2xhc2g7bGdlbmRlIGxpbmssIHZpbCBkdSBibGl2ZSBzZW5kdCB0aWwgaGplbW1lc2lkZW4sIGh2b3IgZHUga2FuIGluZHRhc3RlIG92ZW5zdCZhcmluZztlbmRlIGtvZGUgb2cgbnVsc3RpbGxlIGRpdCBrb2Rlb3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2xlbXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0t1bm5lIGlra2UgZmluZGUgQ01TTWFpbGVyLW1vZHVsZXQnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRGVyIGVyIGJsZXZldCBzZW5kdCBlbiBlbWFpbCB0aWwgJXMgbWVkIGluc3RydWt0aW9uZXIgb20gaHZvcmRhbiBkdSBudWxzdGlsbGVyIGRpdCBrb2Rlb3JkLiBUYWsuJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnSGFyIGR1IG1pc3RldCBkaXQga29kZW9yZD8gSW5kdGFzdCBkaXQgYnJ1Z2VybmF2biBoZXIgb2cgaHZpcyB2aSBrYW4gZmluZGUgZGlnIGkgdm9yZXMgZGF0YWJhc2UsIHZpbCB2aSBzZW5kZSBkaWcgZW4gZW1haWwgbWVkIGluc3RydWt0aW9uZXIgdGlsIGh2b3JkYW4gZHUgbnVsc3RpbGxlciBkaXQga29kZW9yZC4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGF0ZXMnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTWlzdGV0IGJydWdlcm5hdm4gc2thYmVsb24nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnRWdlbnNrYWJlbiAlcyBpa2tlIGZ1bmRldCc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnRWdlbnNrYWJlciBmdW5kZXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ1RpbGYmb3NsYXNoO2ogZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0V0IG4mb3NsYXNoO2R2ZW5kaWd0IGZlbHQgKCVzKSB2YXIgdG9tdCc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0luZHRhc3QgZXQgbnl0IGtvZGVvcmQgaGVyIGZvciBhdCAmYWVsaWc7bmRyZSBkaXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0R1IGVyIGlra2UgbG9nZ2V0IGluZCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5kc3RpbGxpbmdlcic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJlcmluZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0Rlbm5lIGtvbnRvIGVyIHVkbCZvc2xhc2g7YmV0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdVZ3lsZGlnIHVkbCZvc2xhc2g7YnNkYXRvJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnVWd5bGRpZyBncnVwcGUgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdTa2p1bHQgZmVsdCBtYXJrJm9zbGFzaDtyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdTa2p1bHQgZmVsdCBmYXJ2ZSc7CiRsYW5nWydoaWRkZW4nXSA9ICdTa2p1bHQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0VuIGVnZW5za2FiIG1lZCBkZXQgbmF2biBlciBhbGxlcmVkZSBkZWZpbmVyZXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnRGVyIGVyIGlra2UgZGVmaW5lcmV0IG5vZ2VuIGVnZW5za2FiZXInOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdEZXIgZXIgaWtrZSB2YWxndCBub2dlbiBlZ2Vuc2thYmVyIGZvciBkZW5uZSBncnVwcGUnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdEZXIgZXIgaWtrZSBkZWZpbmVyZXQgbm9nZW4gZ3J1cHBlcic7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dydXBwZXIgZnVuZGV0JzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdCcnVnZXJlbiBza2FsIHYmYWVsaWc7cmUgbWVkbGVtIGFmIG1pbmRzdCBlbiBncnVwcGUnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ0tyJmFlbGlnO3YgbWVkbGVtc2thYiBhZiBtaW5kc3QgZW4gZ3J1cHBlJzsKJGxhbmdbJ2JhY2snXSA9ICdUaWxiYWdlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBlciBldCBwJmFyaW5nO2tyJmFlbGlnO3ZldCBmZWx0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrJmVhY3V0ZTtyIHAmYXJpbmc7a3ImYWVsaWc7dmVkZSBmZWx0ZXIgbWVkJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0ZyZW1oJmFlbGlnO3YgcCZhcmluZztrciZhZWxpZzt2ZWRlIGZlbHRlciBtZWQnOwokbGFuZ1snbmV4dCddID0gJ04mYWVsaWc7c3RlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRW4gZ3J1cHBlIG1lZCBkZXQgbmF2biBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUCZhcmluZztrciZhZWxpZzt2ZXQgZmVsdCc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZhbGdmcml0JzsKJGxhbmdbJ29mZiddID0gJ0ZyYSc7CiRsYW5nWydzaXplJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMJmFlbGlnO25nZGUnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4odGVnbiBpIHRla3N0IGlucHV0KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnRHJvcGRvd24gb3B0aW9ucywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGZWx0IHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdTcCZvc2xhc2g7cmcgcCZhcmluZzsgdmVkPGJyLz5nbGVtdCBicnVnZXJuYXZuJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdCc7CiRsYW5nWydjaGVja2JveCddID0gJ0Fma3J5ZHNuaW5nc2Jva3MnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aS12YWxnIGxpc3RlJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIGtuYXBwZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxsZWRlJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgYWRyZXNzZSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1Rla3N0b21yJmFyaW5nO2RlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdWZWxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnTG9nIHVkJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdCZW55dCBkZXR0ZSBncnVwcGUgbmF2bic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICcmQUVsaWc7bmRyZSBtaW5lIGluZHN0aWxsaW5nZXInOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdMb2dpbiBmZWpsZWRlIC0gdWd5bGRpZ3QgYnJ1Z2VybmF2biBlbGxlciBrb2Rlb3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ0xvZyBpbmQnOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdMb2cgaW5kIGtuYXAgbGFiZWwnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0tvZGVvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdIdXNrIG1pZyBwJmFyaW5nOyBkZW5uZSBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHImZWFjdXRlO3InOwokbGFuZ1snZm9yZ290cHcnXSA9ICdHbGVtdCBkaXQga29kZW9yZD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnR2xlbXQgZGluZSBvcGx5c25pbmdlcj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZHYmYWVsaWc7cmRpZXInOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdTa2FiZWxvbic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdCcnVnZXIgSUQgaWtrZSBmdW5kZXQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RldCBicnVnZXJuYXZuICglcykgZXIgYWxsZXJlZGUgaSBicnVnJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdCZW55dCBTTVRQIHRpbCBhdCB2YWxpZGVyZSBlbWFpbC1hZHJlc3Nlcj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSBsJmFlbGlnO25nZGUgYWYga29kZW9yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYWtzaW1hbCBsJmFlbGlnO25nZGUgYWYga29kZW9yZCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIGwmYWVsaWc7bmdkZSBhZiBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01ha3NpbWFsIGwmYWVsaWc7bmdkZSBhZiBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gdWRlbCZvc2xhc2g7YmVyIGVmdGVyIChpc2VrdW5kZXIpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdCcnVnIGNvb2tpZXMgdGlsIGF0IGhvbGRlIGxpdiBpIGxvZ2luJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnVGlsbGFkIGVtYWlsIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnU3RhbmRhcmQgZ3J1cHBlIGZvciBueWUgYnJ1Z2VyZSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ1JlZGlnJmVhY3V0ZTtyIHNrYWJlbG9uIGZvciBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdLb2Rlb3JkZW5lIHZhciBpa2tlIGVucyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVZ3lsZGlndCBicnVnZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VneWxkaWd0IGtvZGVvcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRpZyZlYWN1dGU7ciBicnVnZXInOwokbGFuZ1sndmFsaWQnXSA9ICdHeWxkaWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCcnVnZXJuYXZuJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdEZW5uZSBicnVnZXIgZXIgaWtrZSBtZWRsZW0gYWYgbm9nZW4gZ3J1cHBlcic7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnSW5nZW4gZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhZWxpZztyZGknOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cHBlcic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWdlbnNrYWJlcic7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hdm4gcCZhcmluZzsgZWdlbnNrYWInOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnViZhZWxpZztyZGkgZm9yIGVnZW5za2FiJzsKJGxhbmdbJ2FkZCddID0gJ1RpbGYmb3NsYXNoO2onOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcmllJzsKJGxhbmdbJ2VkaXQnXSA9ICdSZWRpZyZlYWN1dGU7cic7CiRsYW5nWydleHBpcmVzJ10gPSAnVWRsJm9zbGFzaDtiZXInOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNlciBkYXRvJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdGltZXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCB0aW1lcic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHRpbWVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB1Z2UnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB1Z2VyJzsKJGxhbmdbJzFtb250aCddID0gJzEgbSZhcmluZztuZWQnOwokbGFuZ1snM21vbnRocyddID0gJzMgbSZhcmluZztuZWRlcic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBtJmFyaW5nO25lZGVyJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSAmYXJpbmc7cic7CiRsYW5nWyduZXZlciddID0gJ0FsZHJpZyc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ0tvZGVvcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdJZ2VuJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnUmVkaWcmZWFjdXRlO3IgZ3J1cHBlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0luZHNlbmQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkZXR0ZSBlciBkZSByaWd0aWdlIGluZHN0aWxsaW5nZXIgZm9yIGRlbm5lIGdydXBwZT8gSHZpcyBkdSBmamVybmVyIGVuIGVnZW5za2FiIGhlciwgdmlsIGRldCBpa2tlIHNsZXR0ZSBlZ2Vuc2thYmVybmUgaSBkYXRhYmFzZW4gZm9yIGRlbm5lIGdydXBwZS4gRGUgdmlsIGJsb3QgdiZhZWxpZztyZSB1dGlsZyZhZWxpZztuZ2VsaWdlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZ3J1cHBlPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZWdlbnNrYWIgZnVsZHN0JmFlbGlnO25kaWd0PyBIdmlzIGR1IHNsZXR0ZXIgZGVuIHZpbCBkZXQgb2dzJmFyaW5nOyBzbGV0dGUgYnJ1Z2VyaW5kc2xhZyBtZWQgZGVubmUgZWdlbnNrYWIuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1V0aWxzdHImYWVsaWc7a2tlbGlnZSBwYXJhbWV0cmUnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmF2bic7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbWVyIG1lZCBhdCB0aWxmJm9zbGFzaDtqZSBlbiBicnVnZXIgdGlsIGVuIGdydXBwZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWVyIG1lZCBhdCBzbGV0dGUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5uZSBpa2tlIGZpbmRlIGVuIGVtYWlsIGFkcmVzc2UnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0RlciBlciBpa2tlIHNrcml2ZS1yZXR0aWdoZWRlciB0aWwgZGVzdGluYXRpb25zLW1hcHBlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVWd5bGRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS3VubmUgaWtrZSBmaW5kZSBub2dlbiBncnVwcGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQW52ZW5kJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2tyaXZlbHNlJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dydXBwZW5hdm4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWRnYW5nIG4mYWVsaWc7Z3RldCc7CiRsYW5nWydlcnJvciddID0gJ0ZlamwnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdUaWxmJm9zbGFzaDtqIGdydXBwZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydCZlYWN1dGU7ciBncnVwcGUnOwokbGFuZ1snYWRkdXNlciddID0gJ1RpbGYmb3NsYXNoO2ogYnJ1Z2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdCcnVnZXJlIG1lZCBkZXQgYW5naXZuZSBrcml0ZXJpZSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwZSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYWVsaWc7bGcgZ3J1cHBlJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJlcmluZ3Mgc2thYmVsb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnTG9nb3V0IHNrYWJlbG9uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTG9naW4gc2thYmVsb24nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ3VzZXJzJ10gPSAnQnJ1Z2VyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01hbmFnZSBGcm9udGVuZCBVc2Vycyc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhcmQgZm9yc2lkZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU2lkc3QgdGlsZyZhcmluZztlZGUgc2lkZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbmRlbiBzaWRlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1Nrcml2IHRla3N0ZW4gcCZhcmluZzsgYmlsbGVkZXQnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ltcG9ydF9kZWxldGVkdXNlciddID0gJ0JlbnV0emVyICVzIGdlbCZvdW1sO3NjaHQnOwokbGFuZ1snZXJyb3JfZXhwb3J0X25vdXNlcnMnXSA9ICdLZWluZSBCZW51dHplciB6dW0gRXhwb3J0aWVyZW4gZ2VmdW5kZW4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydF91c2VycyddID0gJ0JlbnV0emVyIGV4cG9ydGllcmVuJzsKJGxhbmdbJ3RpdGxlX2V4cG9ydF91c2VycyddID0gJ0JlbnV0emVyIGluIEFTQ0lJLURhdGVpIGV4cG9ydGllcmVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGdyb3VwbmFtZSddID0gJ1VuZyZ1dW1sO2x0aWdlciBvZGVyIGxlZXJlciBHcnVwcGVubmFtZSBhbmdlZ2ViZW4nOwokbGFuZ1sncHJvbXB0X2RlbGltaXRlciddID0gJ1RyZW5uZXInOwokbGFuZ1sncHJvbXB0X2RlbGV0ZV91c2VycyddID0gJ0V4dHJhLUJlbnV0emVyIGwmb3VtbDtzY2hlbic7CiRsYW5nWyd0aXRsZV9pbXBvcnRfdXNlcnMnXSA9ICdCZW51dHplciBhdXMgQ1NWLURhdGVpIGltcG9ydGllcmVuJzsKJGxhbmdbJ2Zyb250ZW5kX2FjY2VzcyddID0gJ0JldHJhY2h0ZXInOwokbGFuZ1snc29ydGJ5X3VzZXJuYW1lX2FzYyddID0gJ0JlbnV0emVybmFtZSAoYXVmc3RlaWdlbmQpJzsKJGxhbmdbJ3NvcnRieV91c2VybmFtZV9kZXNjJ10gPSAnQmVudXR6ZXJuYW1lIChhYnN0ZWlnZW5kKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2FzYyddID0gJ0Vyc3RlbGx1bmdzZGF0dW0gKGF1ZnN0ZWlnZW5kKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdFcnN0ZWxsdW5nc2RhdHVtIChhYnN0ZWlnZW5kKSc7CiRsYW5nWydzb3J0YnlfZXhwaXJlc19hc2MnXSA9ICdBYmxhdWZkYXR1bSAoYXVmc3RlaWdlbmQpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2Rlc2MnXSA9ICdBYmxhdWZkYXR1bSAoYWJzdGVpZ2VuZCknOwokbGFuZ1snZW5jcnlwdGVkJ10gPSAnVmVyc2NobCZ1dW1sO3NzZWx0JzsKJGxhbmdbJ21vdmVfdXAnXSA9ICduYWNoIG9iZW4gYmV3ZWdlbic7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICduYWNoIHVudGVuIGJld2VnZW4nOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ0RpZXNlIEVpZ2Vuc2NoYWZ0IHdpcmQgZHVyY2ggZGFzIE1vZHVsIGVyc3RlbGx0IHVuZCBrYW5uIG5pY2h0IGJlYXJiZWl0ZXQgd2VyZGVuJzsKJGxhbmdbJ25vdF9hdmFpbGFibGUnXSA9ICdOaWNodCB2ZXJmJnV1bWw7Z2Jhcic7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnU3RhbmRhcmRtJmF1bWw7JnN6bGlnO2lnIHNvbGx0ZSBkaWVzZXMgRmVsZCBtYXJraWVydCBzZWluJzsKJGxhbmdbJ29wZXJhdGlvbl9jb21wbGV0ZWQnXSA9ICdWb3JnYW5nIGFiZ2VzY2hsb3NzZW4nOwokbGFuZ1snbWVtYmVycyddID0gJ01pdGdsaWVkZXInOwokbGFuZ1sndmlld19maWx0ZXInXSA9ICdBbnNpY2h0c2ZpbHRlcic7CiRsYW5nWydkYXRhJ10gPSAnRGF0ZW4nOwokbGFuZ1snYXBwbGllZCddID0gJyZVdW1sO2Jlcm5vbWVuJzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJyZsYXF1bzsnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICcmbHNhcXVvOyc7CiRsYW5nWyduZXh0cGFnZSddID0gJyZyc2FxdW87JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnJnJhcXVvOyc7CiRsYW5nWydwYWdlJ10gPSAnU2VpdGUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnJkF1bWw7bmRlcnVuZyBkZXMgQmVudXR6ZXJuYW1lbnMgZXJsYXViZW4nOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ1dlbm4gYWt0aXZpZXJ0LCB3ZXJkZW4gQmVudXR6ZXIgZGllIE0mb3VtbDtnbGljaGtlaXQgaGFiZW4sIGRlbiBCZW51dHplcm5hbWVuIHp1c2FtbWVuIG1pdCBhbmRlcmVuIEVpbnN0ZWxsdW5nZW4genUgJmF1bWw7bmRlcm4nOwokbGFuZ1sndGVtcGxhdGVfc2F2ZWQnXSA9ICdWb3JsYWdlIGdlc3BlaWNoZXJ0JzsKJGxhbmdbJ3RlbXBsYXRlX3Jlc2V0ZGVmYXVsdHMnXSA9ICdWb3JsYWdlIHp1ciZ1dW1sO2Nrc2V0emVuJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4nOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1ZvcmxhZ2VuJzsKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnQ2FwdGNoYSBiZWltIExvZ2luLUZvcm11bGFyIGFrdGl2aWVyZW4nOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ1dlbm4gZGVyIEJlbnV0emVyIG5pY2h0IGFuZ2VtZWxkZXQgaXN0LCB1bmQgZGllIE1vZHVsZWluc3RlbGx1bmcgYmVzYWd0LCBkYXMgTG9naW4tRm9ybXVsYXIgYW56dXplaWdlbiwgc3RldWVydCBkaWVzZSBPcHRpb24gb2IgZWluIEFiZnJhZ2UgZGVzIENhcHRjaGEtU2ljaGVyaGVpdHNjb2RlIGF1ZiBkZW0gTG9naW4tQmlsZHNjaGlybSBhbmdlemVpZ3Qgd2lyZCwgd2VubiBlaW4gQ2FwdGNoYS1Nb2R1bCBpbnN0YWxsaWVydCBpc3QuJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1NpZSBzaW5kIG5pY2h0IGF1dG9yaXNpZXJ0LCBkaWVzZW4gSW5oYWx0IHp1IHNlaGVuJzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnR2ViZW4gU2llIGVpbmUgTGlzdGUgZGVyIEZFVS1HcnVwcGVuIGFuLCBkaWUgWnVnYW5nIHp1IGRpZXNlciBTZWl0ZSBoYWJlbiBkYXJmLiBLZWluZSBBdXN3YWhsIGVybGF1YnQgamVkZW0gYW5nZW1lbGRldGVuIEZFVS1CZW51dHplciwgZGllIFNlaXRlIHp1IHNlaGVuLic7CiRsYW5nWydwYWdldHlwZV9zZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4gZiZ1dW1sO3IgZGllIGdlc2NoJnV1bWw7dHp0ZSBTZWl0ZSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdFcmxhdWJ0ZSBHcnVwcGVuJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnU2VsZWN0IHRoZSBncm91cHMgdGhhdCBhcmUgKGJ5IGRlZmF1bHQpIGFsbG93ZWQgdG8gdmlldyBwcm90ZWN0ZWQgcGFnZXMuICBBbiBlZGl0b3Igd2l0aCB0aGUgJnF1b3Q7TWFuYWdlIEFsbCBDb250ZW50JnF1b3Q7IHBlcm1pc3Npb24gY2FuIG92ZXJyaWRlIHRoaXMgZm9yIGVhY2ggcGFnZSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdBa3Rpb24gZiZ1dW1sO3IgdW5iZXJlY2h0aWd0ZSBadWdyaWZmZSc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ1NwZWNpZnkgdGhlIGJlaGF2aW9yIGZvciBwZW9wbGUgYWNjZXNzaW5nIHRoaXMgcGFnZSB3aXRob3V0IHN1ZmZpY2llbnQgcGVybWlzc2lvbi4gIFlvdSBjYW4gZWl0aGVyIHJlZGlyZWN0IHRvIGEgc3BlY2lmaWVkIHBhZ2UsIG9yIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0nOwokbGFuZ1snc2hvd2xvZ2luZm9ybSddID0gJ0RhcyBBbm1lbGRlZm9ybXVsYXIgYW56ZWlnZW4nOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdBdWYgZWluZSBTZWl0ZSB3ZWl0ZXJsZWl0ZW4nOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1dlaXRlcmxlaXRlbiBhdWYnOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICZxdW90O3JlZGlyZWN0JnF1b3Q7IHRoZSB1c2VyIHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBtZXNzYWdlIGluZGljYXRpbmcgdGhhdCB0aGV5IGRvIG5vdCBoYWNlIGFjY2VzcyB0byB0aGUgcGFnZSc7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ0JlcmVjaHRpZ3VuZ2VuJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ0dlc2NoJnV1bWw7dHp0ZXIgSW5oYWx0JzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdXJmF1bWw7aGxlbiBTaWUgWnVzJmF1bWw7dHpsaWNoZSBFaWdlbnNjaGFmdGVuIGYmdXVtbDtyIEFuc2ljaHQnOwokbGFuZ1sndmlldyddID0gJ0Fuc2ljaHQnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmllcmUgVXNlcklELVNwYWx0ZSBiZWltIEltcG9ydGllcmVuJzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0V4cG9ydGllcmUgZGllIEtlbm53b3J0LWhhc2ggaW4gZGllIERhdGVpJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnUGFzc3dvcmQtU2FsdCBrYW5uIG5pY2h0IGVpbmdlc3RlbGx0IHdlcmRlbic7CiRsYW5nWydwcm9tcHRfcHdzYWx0J10gPSAnUGFzc3dvcmQtU2FsdCc7CiRsYW5nWydpbmZvX3B3c2FsdCddID0gJ0Zyb250RW5kVXNlcnMgc2FsdHMgYWxsIHBhc3N3b3JkcyB3aXRoIHRoaXMga2V5IHdoaWNoIGlzIGNyZWF0ZWQgdXBvbiBpbnN0YWxsLiAgT25jZSB1c2VycyBoYXZlIGJlZW4gYWRkZWQgdG8gdGhlIGRhdGFiYXNlIHRoZSBzYWx0IGNhbm5vdCBiZSBjaGFuZ2VkLiBUaGUgc2FsdCBtYXkgYmUgZW1wdHkgZm9yIG9sZGVyIGluc3RhbGxzLic7CiRsYW5nWydhZHZhbmNlZF9zZXR0aW5ncyddID0gJ1dlaXRlcmUgRWluc3RlbGx1bmdlbic7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnR2ViZW4gU2llciBoaWVyIGRpZSBBbnphaGwgdm9uIFNla3VuZGVuIGFuLCBuYWNoIGRlcmVuIEFibGF1ZiBpbmFrdGl2ZSBCZW51dHplciBhdXRvbWF0aXNjaCB2b24gZGVyIFdlYnNlaXRlIGFiZ2VtZWxkZXQgd2VyZGVuJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0JlbnV0emVyYWJsYXVmLUludGVydmFsbCc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnU3BlY2lmeSBhIHZhbHVlIChpbiBzZWNvbmRzKSB0aGF0IGluZGljYXRlcyBob3cgb2Z0ZW4gdGhlIHN5c3RlbSBzaG91bGQgZm9yY2UgdXNlcnMgd2hvcyBzZXNzaW9uIGhhcyBleHBpcmVkIHRvIGJlIGxvZ2dlZCBvdXQuICBUJnF1b3Q7aGlzIGlzIGFuIG9wdGltaXphdGlvbiB0byBzYXZlIGRhdGFiYXNlIHF1ZXJpZXMuICBJZiBsZWZ0IGVtcHR5IG9yIHNldCB0byAwIGV4cGlyeSB3aWxsIGJlIHBlcmZvcm1lZCBvbiBldmVyeSByZXF1ZXN0Lic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnSWhyZSBFaW5zdGVsbHVuZ2VuIHd1cmRlbiBha3R1YWxpc2llcnQnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnQmVudXR6ZXIgaW4gcmVnZWxtJmF1bWw7JnN6bGlnO2lnZW4gWmVpdGFic3QmYXVtbDtuZGVuIGFibWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1plaXRlbiwgenUgZGVuZW4gZGVyIEJlbnV0emVyIGF1dG9tYXRpc2NoIGFiZ2VtZWxkZXQgd2lyZCc7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnR2ViZW4gU2llIGhpZXIgZWluZSBkdXJjaCBLb21tYXRhIGdldHJlbm50ZSBMaXN0ZSB2b24gWmVpdGVuIHdpZSB6dW0gQmVpc3BpZWwgSEg6TU0sSEg6TU0gYW4sIGluIGRlbmVuIGRpZSBCZW51dHplciBhdXRvbWF0aXNjaCBhYmdlbWVsZGV0IHdlcmRlbi4gSGlud2VpczogTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0JlbnV0emVyIGF1c3NjaGxpZSZzemxpZztlbiwgZGllIGFrdGl2IHdhcmVuIGluIDxlbT4oTWludXRlbik8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdXaXJkIGRpZXNlciBXZXJ0IGFuZ2VnZWJlbiwgd2lyZCBqZWRlciBCZW51dHplciwgZGVyIGluIGRpZXNlbSBaZWl0cmF1bSBha3RpdiB3YXIsIG5pY2h0IGF1dG9tYXRpc2NoIGFiZ2VtZWxkZXQnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGUnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRlbiBCZW51dHplciAlcyBsJm91bWw7c2NoZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdEaWUgaG9jaGdlbGFkZW5lIERhdGVpIGVudHNwcmljaHQgbmljaHQgZGVyIGVybGF1YnRlbiBEYXRlaXR5cGVuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdBbGxlIGRlbSBGcm9udEVuZFVzZXJzLU1vZHVsIHp1Z2VvcmRuZXRlbiBEYXRlbiB3dXJkZW4gZ2VsJm91bWw7c2NodCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdXaXJkIGRpZXMgYWt0aXZpZXJ0LCB3aXJkIGRhcyBNb2R1bCBhdWYgRXJlaWduaXNzZSBhY2h0ZW4sIGRpZSBkdXJjaCBkaWUgRWNvbW1lcmNlIFN1aXRlIGF1c2dlbCZvdW1sO3N0IHdlcmRlbi4gRGllIGZvbGdlbmRlbiBFaW5zdGVsbHVuZ2VuIGhhYmVuIG51ciBkYW5uIGVpbmUgQXVzd2lya3VuZywgd2VubiBkaWVzZSBFaW5zdGVsbHVuZyBha3RpdmllcnQgd2lyZC4nOwokbGFuZ1sncHJvbXB0X2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdBdWYgQmVzdGVsbHVuZ2VuIGFjaHRlbic7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdEaWUgZm9sZ2VuZGVuIEVpbnN0ZWxsdW5nZW4gd2VyZGVuIG51ciBkYW5uIGFuZ2V3ZW5kZXQsIHdlbm4gc2ljaCBCZW51dHplciBzZWxic3QgcmVnaXN0cmllcmVuIGsmb3VtbDtubmVuIHVuZCBiZXphaGx0ZSBSZWdpc3RyaWVydW5nZW4gZXJsYXVidCBzaW5kLic7CiRsYW5nWydub25lJ10gPSAnS2VpbihlciknOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdCZW51dHplciBsJm91bWw7c2NoZW4nOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdBYmdlbGF1ZmVuZSBCZW51dHplcic7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQWt0aW9uLCBkaWUgYXVzZ2VmJnV1bWw7aHJ0IHdpcmQsIHdlbm4gZGllIEJlc3RlbGx1bmcgZWluZXMgQWJvbm5lbWVudHMgYWJnZWJyb2NoZW4gd2lyZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FrdGlvbiwgZGllIGF1c2dlZiZ1dW1sO2hydCB3aXJkLCB3ZW5uIGRpZSBCZXN0ZWxsdW5nIGVpbmVzIEFib25uZW1lbnRzIGdlbCZvdW1sO3NjaHQgd2lyZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdlQ29tbWVyY2UtRWluc3RlbGx1bmdlbic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ0tlbm56ZWljaG51bmcgZiZ1dW1sO3Igc2ljaGVyZSBGZWxkZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0ZhcmJlIGYmdXVtbDtyIHNpY2hlcmUgRmVsZGVyJzsKJGxhbmdbJ3Byb21wdF9lbmNyeXB0J10gPSAnRGllc2UgRGF0ZW4gaW4gZGVyIERhdGVuYmFuayB2ZXJzY2hsJnV1bWw7c3NlbHQgc3BlaWNoZXJuJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ0RpZSBnZXcmYXVtbDtobHRlIE9wdGlvbiB3aXJkIHZvbiBJaHJlciBha3R1ZWxsZW4gS29uZmlndXJhdGlvbiBuaWNodCB1bnRlcnN0JnV1bWw7dHp0JzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ0JlbnV0emVyIHd1cmRlIGF1dG9tYXRpc2NoIGVyc3RlbGx0JzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ1NvbGwgZiZ1dW1sO3IgZWluZW4gQmVudXR6ZXIsIGRlciAmdXVtbDtiZXIgZWluIGV4dGVybmVzIEF1dGhlbnRpZml6aWVydW5ncy1Nb2R1bCBhbmdlbWVsZGV0IHd1cmRlLCBhYmVyIGRlbSBGcm9udEVuZFVzZXJzLU1vZHVsIG5pY2h0IGJla2FubnQgaXN0LCBhdXRvbWF0aXNjaCBlaW4gRkVVLUtvbnRvIGVyc3RlbGx0IHdlcmRlbj8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aXNjaCB1bmJla2FubnRlbiBCZW51dHplciBlcnN0ZWxsZW4nOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0FuemVpZ2UtRWluc3RlbGx1bmdlbic7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnRGllIGZvbGdlbmRlbiBFaW5zdGVsbHVuZ2VuIHdlcmRlbiBudXIgdmVyd2VuZGV0LCB3ZW5uIFNpZSBkaWUgJnF1b3Q7SW50ZXJuZSBBdXRoZW50aWZpemllcnVuZyZxdW90OyB2ZXJ3ZW5kZW4uJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdEaWUgRWluc3RlbGx1bmcgJnF1b3Q7TmVpbiZxdW90OyBkZWFrdGl2aWVydCBkaWUgTSZvdW1sO2dsaWNoa2VpdCBmJnV1bWw7ciBkaWUgQmVudXR6ZXIsIGVpbiBBbmZyYWdlIG5hY2ggWnVzZW5kdW5nIGRlciBBbm1lbGRlZGF0ZW4genUgc3RlbGxlbiAodW5hYmgmYXVtbDtuZ2lnIHZvbiBhbmRlcmVuIEVpbnN0ZWxsdW5nZW4pJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdEaWUgRWluc3RlbGx1bmcgJnF1b3Q7TmVpbiZxdW90OyBkZWFrdGl2aWVydCBkaWUgTSZvdW1sO2dsaWNoa2VpdCBmJnV1bWw7ciBkaWUgQmVudXR6ZXIsIGVpbiBadXImdXVtbDtja3NldHplbiBkZXMgUGFzc3dvcnRzIGFuenVmb3JkZXJuICh1bmFiaCZhdW1sO25naWcgdm9uIGFuZGVyZW4gRWluc3RlbGx1bmdlbiknOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQmVudXR6ZXJuIGVpbmUgQW5mcmFnZSBuYWNoIElocmVuIEJlbnV0emVybmFtZW4gZXJsYXViZW4nOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQmVudXR6ZXJuIGVpbmUgQW5mcmFnZSB6dXIgJkF1bWw7bmRlcnVuZ2VuIGRlcyBQYXNzd29ydHMgZXJsYXViZW4nOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0F1dGhlbnRpZml6aWVydW5nc2VpbnN0ZWxsdW5nZW4nOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdJbnRlcm5lIEF1dGhlbnRpZml6aWVydW5nJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVS1TdGFuZGFyZC1BdXRoZW50aWZpemllcnVuZyc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpZml6aWVydW5ncy1Nb2R1bC9NZXRob2RlJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdEYXMgRnJvbnRlbmRVc2Vycy1Nb2R1bCB1bnRlcnN0JnV1bWw7dHp0IGRpZSBBbm1lbGR1bmcgJnV1bWw7YmVyIGFsdGVybmF0aXZlIEF1dGhlbnRpZml6aWVydW5ncy1NZXRob2RlbiwgbWl0IHVudGVyc2NoaWVkbGljaGVuIE0mb3VtbDtnbGljaGtlaXRlbi4gSmVkb2NoIHN0ZWhlbiBkYW5uIGVpbmlnZSBGdW5rdGlvbmVuIG5pY2h0IHp1ciBWZXJmJnV1bWw7Z3VuZyBvZGVyIHdlcmRlbiBkZWFrdGl2aWVydCwgd2VubiBuaWNodCBkaWUgZWluZ2ViYXV0ZSBBdXRoZW50aWZpemllcnVuZ3MtTWV0aG9kZSB2ZXJ3ZW5kZXQgd2lyZCc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RlciBmJnV1bWw7ciAlcyBmZXN0Z2VsZWd0ZSBXZXJ0IHdpcmQgYmVyZWl0cyB2b24gZWluZW0gYW5kZXJlbiBCZW51dHplciB2ZXJ3ZW5kZXQnOwokbGFuZ1sndW5pcXVlJ10gPSAnRWluZGV1dGlnJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RlciBmJnV1bWw7ciAlcyBmZXN0Z2VsZWd0ZSBXZXJ0ICglcykgaXN0IG5pY2h0IGVpbmRldXRpZyc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnV2VydGUgZiZ1dW1sO3IgZGllc2UgRWlnZW5zY2hhZnQgc29sbGVuIGluIGFsbGVuIEJlbnV0emVya29udGVuIGVpbmRldXRpZyBzZWluJzsKJGxhbmdbJ2hlbHBfcmV0dXJubGFzdCddID0gJ1dpcmQgbWl0IEFuLSB1bmQgQWJtZWxkZS1Gb3JtdWxhcmVuIHZlcndlbmRldC4gTWl0IGRpZXNlbSBQYXJhbWV0ZXIga2FubiBmZXN0Z2VsZWd0IHdlcmRlbiwgZGFzcyBkZXIgV2Vic2VpdGVuYmVzdWNoZXIgbmFjaCBkZXIgQW5tZWxkdW5nIGF1ZiBkaWUgU2VpdGUgKFVSTCkgd2VpdGVyZ2VsZWl0ZXQgd2VyZGVuLCBkaWUgc2llIHZvciBkaWVzZXIgQWt0aW9uIGFuZ2VzZWhlbiBoYWJlbi4gRGllc2VyIFBhcmFtZXRlciAmdXVtbDtiZXJzY2hyZWlidCBzJmF1bWw7bWxpY2hlIFdlaXRlcmxlaXR1bmdzZWluc3RlbGx1bmdlbiB1bmQgLVBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9ub2lubGluZSddID0gJ1dpcmQgbWl0IGVpbmVtIGRlciBGb3JtdWxhcmUgdmVyd2VuZGV0LiBEaWVzZXIgUGFyYW1ldGVyIGxlZ3QgZmVzdCwgb2IgZGllIEZvcm11bGFyZSBpbmxpbmUgYW5nZXplaWd0IHdlcmRlbiBzb2xsZW4sIGFuc3RhdHQgZGFzcyBkaWUgRXJnZWJuaXNhdXNnYWJlIG5hY2ggJlV1bWw7YmVybWl0dGx1bmcgZGVzIEZvcm11bGFycyBkZW4gU3RhbmRhcmQtSW5oYWx0c2Jsb2NrIGVyc2V0enQuJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdXYXJudW5nIHZvciBkZW0gQWJsYXVmIGRlciBBbm1lbGRlLVNlc3Npb24nOwokbGFuZ1snbXNnX3Jlc2V0X3Nlc3Npb24nXSA9ICdEaWUgWmVpdCBmJnV1bWw7ciBJaHJlIGFrdHVlbGxlIEFubWVsZHVuZyBhdWYgZGllc2VyIFdlYnNlaXRlIGlzdCBhYmdlbGF1ZmVuLiBCaXR0ZSBrbGlja2VuIFNpZSBhdWYgJmJkcXVvO09LJmxkcXVvOywgdW0genUgYmVzdCZhdW1sO3RpZ2VuLCBkYXNzIFNpZSBub2NoIGF1ZiBkaWVzZXIgV2Vic2VpdGUgYWt0aXYgc2luZC4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdTZXNzaW9uLVRlbXBsYXRlIHp1ciZ1dW1sO2Nrc2V0emVuJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ0RpZXMgaXN0IGRlciBGZWxkbmFtZSwgZGVyIGluIFNtYXJ0eSBmJnV1bWw7ciBkaWUgQWRyZXNzaWVydW5nIHZlcndlbmRldCB3aXJkLiBFciBkYXJmIG51ciBhbHBoYW51bWVyaXNjaGUgWmVpY2hlbiB1bmQgVW50ZXJzdHJpY2hlIChfKSBlbnRoYWx0ZW4uJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ0Jlc3VjaGVyJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnVyZhdW1sO2hsZW4gc2llIGVpbmUgb2RlciBtZWhyZXJlIEZFVS1CZW51dHplcmdydXBwZW4sIGRlbmVuIGVzIGVybGF1YnQgaXN0LCBkaWVzZSBTZWl0ZSBhbnp1c2VoZW4nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0VzIG11c3MgZWluZSBHcnVwcGUgYXVzZ2V3JmF1bWw7aGx0IHdlcmRlbic7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdJaHJlIEF1c3dhaGwnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0amFocic7CiRsYW5nWydlbmRfeWVhciddID0gJ0VuZGphaHInOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ0dyJm91bWw7JnN6bGlnO2UgZGVzIFZvcnNjaGF1YmlsZCc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZGllIEJlbnV0emVyZ3J1cHBlIGdlJmF1bWw7bmRlcnQgd3VyZGUnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnRiZ1dW1sO3IgZGllc2UgQWt0aW9uIHd1cmRlbiB6dSB2aWVsZSBCZW51dHplciBhdXNnZXcmYXVtbDtobHQuIEJpdHRlIGJlc2NociZhdW1sO25rZW4gU2llIHNpY2ggYXVmIDI1MCAob2RlciB3ZW5pZ2VyKS4nOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRpZSBhdXNnZXcmYXVtbDtobHRlbiBCZW51dHplciBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0F1c2dldyZhdW1sO2hsdGUgQmVudXR6ZXIgbCZvdW1sO3NjaGVuJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0VpbmVuIHp1ZiZhdW1sO2xsaWdlbiBCZW51dHplcm5hbWVuIGVyemV1Z2VuLCB3ZW5uIGVpbiBuZXVlciBCZW51dHplciBoaW56dWdlZiZ1dW1sO2d0IHdpcmQnOwokbGFuZ1snbW9udGhzJ10gPSAnTW9uYXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdWb3JlaW5nZXN0ZWxsdGUgWmVpdCBiaXMgenVtIFZlcmZhbGwgZGVzIEJlbnV0emVya29udG9zJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ0JlbmFjaHJpY2h0aWd1bmdzLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdFaWdlbnNjaGFmdHMtRWluc3RlbGx1bmdlbic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1dlaXRlcmxlaXR1bmdzLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FsbGdlbWVpbmUgRWluc3RlbGx1bmdlbic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbiBmJnV1bWw7ciBTZXNzaW9ucyB1bmQgQ29va2llcyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZlbGQtRWluc3RlbGx1bmdlbic7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdEaWUgS2VubnplaWNobnVuZyBmJnV1bWw7ciB2ZXJnZXNzZW5lIEJlbnV0emVybmFtZW4ga2FubiBudXIgYmVpIFBmbGljaHRmZWxkZXJuIHZlcndlbmRldCB3ZXJkZW4uJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0luIGRpZXNlbSBUZXh0YmVyZWljaCBkaWUgVmVyd2VuZHVuZyBlaW5lcyBXWVNJV1lHLUVkaXRvcnMgZXJsYXViZW4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnQmVudXR6ZXItQmVhcmJlaXR1bmcnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdLZWluZSBJbmxpbmUtRm9ybXVsYXJlIHZlcndlbmRlbic7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0tsaWNrZW4gU2llIGhpZXIsIHdlbm4gU2llIHNpY2ggbmljaHQgbWVociBhbiBkaWUgRGV0YWlscyBJaHJlciBBbm1lbGR1bmcgZXJpbm5lcm4gayZvdW1sO25uZW4nOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWNrZW4gU2llIGhpZXIsIHdlbm4gU2llIHNpY2ggbmljaHQgbWVociBhbiBJaHIgUGFzc3dvcnQgZXJpbm5lcm4gayZvdW1sO25uZW4nOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdadW0gQWJtZWxkZW4gaGllciBrbGlja2VuJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdLbGlja2VuIFNpZSBoaWVyLCB1bSBJaHIgUGFzc3dvcnQgb2RlciBhbmRlcmUgSW5mb3JtYXRpb25lbiB6dSAmYXVtbDtuZGVybi4nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkaWUgQmVudXR6ZXItQW56ZWlnZSc7CiRsYW5nWydldmVudCddID0gJ0VyZWlnbmlzJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUtRXJlaWduaXMtQmVuYWNocmljaHRpZ3VuZ2VuJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0UtTWFpbC1BZHJlc3NlIGYmdXVtbDtyIEJlbmFjaHJpY2h0aWd1bmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgRS1NYWlsLUJlbmFjaHJpY2h0aWd1bmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdCZXRyZWZmIGRlciBFLk1haWwtQmVuYWNocmljaHRpZ3VuZyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0UtTWFpbC1CZW5hY2hyaWNodGlndW5nZW4nOwokbGFuZ1snT25Mb2dpbiddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFubWVsZGV0JzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgYWJtZWxkZXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluZSBCZW51dHplci1TZXNzaW9uIGFibCZhdW1sO3VmdCc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW4gQmVudXR6ZXJrb250byBuZXUgZXJzdGVsbHQgd3VyZGUnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2VsJm91bWw7c2NodCB3dXJkZSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBCZW51dHplcmRhdGVuIGFrdHVhbGlzaWVydCB3dXJkZW4nOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgbmV1IGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGdlbCZvdW1sO3NjaHQgd3VyZGUnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdEaWUgRGF0ZW4genVtIEF1ZmZpbmRlbiB2ZXJsb3JlbmVyIFBhc3N3Jm91bWw7cnRlciB3dXJkZW4gdm9sbHN0JmF1bWw7bmRpZyBlaW5nZWdlYmVuLiBXaXIgaGFiZW4gZWluZW4gQmVudXR6ZXJuYW1lbiBnZWZ1bmRlbiwgZGVyIGRlbiB2b24gSWhuZW4gZWluZ2VnZWJlbmVuIERldGFpbHMgZW50c3ByaWNodC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0lociBCZW51dHplcm5hbWUgaXN0JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dpciBlbXBmZWhsZW4gSWhuZW4sIGRpZXNlIEluZm9ybWF0aW9uIGFuIHNpY2hlcmVyIFN0ZWxsZSBhdWZ6dWJld2FocmVuLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZW0gJkF1bWw7bmRlcm4gZGVyIEVpbnN0ZWxsdW5nZW4gZ2VzcHJ1bmdlbiB3ZXJkZW4gc29sbCc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdTZWl0ZW4tSUQvLUFsaWFzIGRlciBTZWl0ZSwgYXVmIGRpZSBuYWNoIGRlciBDb2RlLVByJnV1bWw7ZnVuZyBnZXNwcnVuZ2VuIHdlcmRlbiBzb2xsIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdEZXRhaWxzLVRlbXBsYXRlIGJlaSB2ZXJnZXNzZW5lbSBCZW51dHplcm5hbWVuJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnQmVzdCZhdW1sO3RpZ3VuZ3MtVGVtcGxhdGUgYmVpIHZlcmdlc3NlbmVtIEJlbnV0emVybmFtZW4nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGRUhMRVI6IE1laHIgYWxzIGVpbiBCZW51dHplci1Lb250byBlbnRzcHJpY2h0IGRlbiBnZXN1Y2h0ZW4gRWlnZW5zY2hhZnRlbic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdGRUhMRVI6IEtvbm50ZSBkZW4gZ2VzdWNodGVuIEJlbnV0emVyIG5pY2h0IGZpbmRlbic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRkVITEVSOiBLb25udGUga2VpbmUgR3J1cHBlIG1pdCBkaWVzZW0gTmFtZW4gZmluZGVuJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnTnVyIGxlc2VuJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLbGFzc2UgenVyIEJlYXJiZWl0dW5nIHZvbiBCZW51dHplcm4nOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnRHVyY2ggZGVuIEFkbWluaXN0cmF0b3IgYWJnZW1lbGRldCc7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnTnVyIGRpZSBhbmdlbWVsZGV0ZW4gQmVudXR6ZXIgYW56ZWlnZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0RpZXNlbiBCZW51dHplciBhYm1lbGRlbic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdCZW51dHplci1FaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnQmVudXR6ZXItR2VzY2hpY2h0ZSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRpZXJlbic7CiRsYW5nWydjbGVhciddID0gJ0wmb3VtbDtzY2hlbic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdCZW51dHplcmdlc2NoaWNodGUgaW4gZWluZSBBU0NJSS1EYXRlaSBleHBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0RhdGVucyZhdW1sO3R6ZSBkZXIgQmVudXR6ZXJnZXNjaGljaHRlIGwmb3VtbDtzY2hlbiwgZGllIG1pbmRlc3RlbnMnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnSGFiZW4gU2llIElocmUgWnVnYW5nc2RhdGVuIHZlcmdlc3Nlbj8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnR3J1cHBlbi1EZWZpbml0aW9uICh1bmQgRWlnZW5zY2hhZnRlbikgYWxzIFhNTC1EYXRlaSBleHBvcnRpZXJlbic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVmVyd2FsdHVuZyBkZXIgQmVudXR6ZXJnZXNjaGljaHRlbic7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05laW4nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAndm9uJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEtlaW5lIEJlc2NociZhdW1sO25rdW5nICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ0VpbmUgU3R1bmRlIGFsdCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWNocyBTdHVuZGVuIGFsdCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdadyZvdW1sO2xmIFN0dW5kZW4gYWx0JzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRWluZW4gVGFnIGFsdCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdFaW5lIFdvY2hlIGFsdCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnWndlaSBXb2NoZW4gYWx0JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFaW5lbiBNb25hdCBhbHQnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ0RyZWkgTW9uYXRlIGFsdCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NlY2hzIE1vbmF0ZSBhbHQnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnRWluIEphaHIgYWx0JzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dydXBwaWVydW5nIHVuZCBTb3J0aWVydW5nJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdNaXQgZGVuIHZvcmdlZ2ViZW5lbiBLcml0ZXJpZW4gJnV1bWw7YmVyZWluc3RpbW1lbmRlIERhdGVucyZhdW1sO3R6ZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05hY2ggQmVudXR6ZXJuYW1lbiBhYnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOYWNoIEJlbnV0emVybmFtZW4gYXVmc3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ05hY2ggRGF0dW0gYWJzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdOYWNoIERhdHVtIGF1ZnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ05hY2ggRXJlaWduaXN0eXAgYWJzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ05hY2ggRXJlaWduaXN0eXAgYXVmc3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnTmFjaCBJUC1BZHJlc3NlIGFic3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdOYWNoIElQLUFkcmVzc2UgYXVmc3RlaWdlbmQnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0tlaW5lIEdlc2NoaWNodGUgdm9yaGFuZGVuJzsKJGxhbmdbJ3Jlc2V0J10gPSAnWnVyJnV1bWw7Y2tzZXR6ZW4nOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3J1cHBlbiBuYWNoIElQLUFkcmVzc2UnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdFcmVpZ25pc3R5cGVuLUZpbHRlcic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdaZWlndCBudXIgRXJlaWduaXNzZSBhbiwgZGllIGdlcmluZ2VyIHNpbmQgYWxzOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2VpdGVubGltaXQnOwokbGFuZ1snZm9yJ10gPSAnZiZ1dW1sO3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdCZXJpY2h0IHp1ciBCZW51dHplcmdlc2NoaWNodGUnOwokbGFuZ1sndW5rbm93biddID0gJ1VuYmVrYW5udCc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAtQWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnRXJlaWduaXMtVHlwJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1p1ciZ1dW1sO2NrJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdEYXRlbmltcG9ydCBrb21wbGV0dCc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdaZWlsZW4gdmVyYXJiZWl0ZXQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0ZlaGxlciBhdWZnZXRyZXRlbic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnRGF0ZW5zJmF1bWw7dHplIGhpbnp1Z2VmJnV1bWw7Z3QnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0tlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZiZ1dW1sO3IgZGllIEdydXBwZSAlcyBnZWZ1bmRlbic7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0tlaW5lIEFudHdvcnQgdm9tIFNNVFAtU2VydmVyIGVyaGFsdGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0RpZSBEYXRlaSAoJXMpIGtvbm50ZSBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1VuZyZ1dW1sO2x0aWdlciBXZXJ0IGYmdXVtbDtyIGRhcyBMaXN0ZW5mZWxkIG9kZXIgZGFzIEZlbGQgenVyIE1laHJmYWNoYXVzd2FobCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0RhcyBGZWxkICVzICZ1dW1sO2JlcnNjaHJlaXRldCBkaWUgbWF4aW1hbCBtJm91bWw7Z2xpY2hlIEwmYXVtbDtuZ2UnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQtRmVobGVyIChaZWlsZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdLb25udGUgZGllIEVpZ2Vuc2NoYWZ0c2RlZmluaXRpb24gbmljaHQgYWJydWZlbiAoaW50ZXJuZXIgRmVobGVyKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIGJlaW0gU2V0emVuIGRlciBCZW51dHplcmluZm9ybWF0aW9uJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdLb25udGUga2VpbmUgU3BhbHRlIGZpbmRlbiwgZGllIG1pdCBkZW0gZXJmb3JkZXJsaWNoZW4gRmVsZCAlcyAmdXVtbDtiZXJlaW5zdGltbXQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdLb25udGUgZiZ1dW1sO3IgZGllIGZlc3RnZWxlZ3RlIEdydXBwZSBrZWluZSBFaWdlbnNjaGFmdGVuIGZpbmRlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGllIHp1IGltcG9ydGllcmVuZGVuIERhdGVpIGhhdCBkYXMgZmFsc2NoZSBGb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0tvbm50ZSBkaWUgRGF0ZWkgbmljaHQgJm91bWw7ZmZuZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0JlbnV0emVyIGluIGRpZXNlIEdydXBwZSBpbXBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdDU1YtRGF0ZWkgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdYTUwtRGF0ZWkgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnQmVudXR6ZXIgZXhwb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnQmVudXR6ZXIgaW1wb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnWmllbHBmYWQgZiZ1dW1sO3IgZGFzIEJpbGQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFcyBpc3QgZWluIFByb2JsZW0gbWl0IGVpbmVyIGZlaGxlbmRlbiwgYWJlciBlcmZvcmRlcmxpY2hlbiAoaG9jaHp1bGFkZW5kZW4pIERhdGVpIGF1ZmdldHJldGVuJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLb25udGUgZGllIGFuZ2VnZWJlbmUgWE1MLURhdGVpIG5pY2h0IHZlcmFyYmVpdGVuJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdEaWUgR3J1cHBlIGtvbm50ZSBuaWNodCBnZWwmb3VtbDtzY2h0IHdlcmRlbiwgZGEgc2llIG5vY2ggQmVudXR6ZXIgZW50aCZhdW1sO2x0Lic7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRGllc2VyIEJlbnV0emVyIGlzdCBiZXJlaXRzIGFuZ2VtZWxkZXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnRGVyIFRleHQgYXVzIGRlbSBCaWxkIHd1cmRlIG5pY2h0IHJpY2h0aWcgZWluZ2VnZWJlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnRGVuIEJlbnV0emVybiBlcmxhdWJlbiwgc2ljaCBtZWhyIGFscyBlaW5tYWwgYW56dW1lbGRlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnTmFtZW5zZXJ3ZWl0ZXJ1bmdlbiBmJnV1bWw7ciBCaWxkZXIsIGRpZSBkZXIgQmVudXR6ZXIgaG9jaGxhZGVuIGRhcmYnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnPGgzPk9uUmVmcmVzaFVzZXI8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPg0KPGg0PlBhcmFtZXRlcnM6PC9oND4NCjx1bD4NCiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2VsJm91bWw7c2NodCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIEJlbnV0emVybmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQ8L2xpPg0KPGxpPjxlbT5wcm9wczwvZW0+IC0gRWluIEhhc2gsIGRlciBtaXQgZGVuIEVpZ2Vuc2NoYWZ0ZW4gZGVzIEJlbnV0emVycyBnZWYmdXVtbDtsbHQgd3VyZGU8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gbmV1IGVyc3RlbGx0IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBkZXIgQmVudXR6ZXJuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBCZW51dHplcmRhdGVuIGFrdHVhbGlzaWVydCB3dXJkZW4gKGVudHdlZGVyIGR1cmNoIGlobiBzZWxic3Qgb2RlciBkdXJjaCBkZW4gQWRtaW5pc3RyYXRvcik8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gZGVyIEJlbnV0emVybmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIG5ldSBlcnN0ZWxsdCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBkZXIgQmVudXR6ZXJncnVwcGVuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGRpZSBCZXNjaHJlaWJ1bmcgZGVyIEJlbnV0emVyZ3J1cHBlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplcmdydXBwZW4tSUQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGdlbCZvdW1sO3NjaHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gZGVyIEJlbnV0emVyZ3J1cHBlbm5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gZGllIEJlbnV0emVyZ3J1cHBlbi1JRDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkF1c2YmdXVtbDtocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFubWVsZGV0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgSUQgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIE5hbWUgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gZGllIElQLUFkcmVzc2UgZGVzIENsaWVudHM8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxoMz5PbkxvZ291dDxoMz4NCjxwPkF1c2YmdXVtbDtocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFibWVsZGV0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBkZXIgTmFtZSBkZXMgYWJnZW1lbGRldGVuIEJlbnV0emVyczwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8aDM+T25TZXNzaW9uRXhwaXJ5PC9oMz4NCjxwPkF1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXItU2Vzc2lvbiBhYmwmYXVtbDt1ZnQ8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBOYW1lIGRlcyBCZW51dHplcnMgZGVyIGFiZ2VsYXVmZW5lbiBTaXR6dW5nPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRCBkZXIgYWJnZWxhdWZlbmVuIFNpdHp1bmc8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgaW0gU3lzdGVtIGFubWVsZGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBzaWNoIGVpbiBCZW51dHplciBpbSBTeXN0ZW0gYWJtZWxkZXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyLVNpdHp1bmcgYWJsJmF1bWw7dWZ0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIG5ldWVyIEJlbnV0emVyIGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGRpZSBCZW51dHplci1TaXR6dW5nIGVybmV1ZXJ0IHdpcmQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBkaWUgSW5mb3JtYXRpb25lbiB6dSBlaW5lbSBCZW51dHplciBha3R1YWxpc2llcnQgd3VyZGVuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2VsJm91bWw7c2NodCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgYWt0dWFsaXNpZXJ0IHd1cmRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgZ2VsJm91bWw7c2NodCB3dXJkZSc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQWRtaW5pc3RyYXRpb25zLUdydXBwZSc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIERpZSBmb2xnZW5kZW4gRmVsZGVyIHNpbmQga29tcGxldHRlIFNtYXJ0eS1UZW1wbGF0ZXMuPGJyIC8+TmViZW4gZGVuIGFuZGVyZW4sIGJlcmVpdHMgZXhpc3RpZXJlbmRlbiBTbWFydHktVmFyaWFibGVuIHN0ZWhlbiBJaG5lbiBqZXR6dCBkaWUgVmFyaWFibGVuIHskdXNlcm5hbWV9IHVuZCB7JGdyb3VwfSB6dXIgVmVyZiZ1dW1sO2d1bmcuIDxlbT4oRGllIFZhcmlhYmxlIHskZ3JvdXB9IGVudGgmYXVtbDtsdCBkaWUgZXJzdGUgQmVudXR6ZXJncnVwcGUsIGRlciBkZXIgQmVudXR6ZXIgYW5nZWgmb3VtbDtydC4pPC9lbT4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdCZWFyYmVpdGVuIFNpZSBkaWVzZXMgRmVsZCwgdW0gZGFzIFBhc3N3b3J0IGRlcyBCZW51dHplcnMgenVyJnV1bWw7Y2t6dXNldHplbi4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0JlYXJiZWl0ZW4gU2llIGRpZXNlcyBGZWxkLCB1bSBkYXMgUGFzc3dvcnQgZGVzIEJlbnV0emVycyB6dXImdXVtbDtja3p1c2V0emVuLic7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdFaW4gQmVudXR6ZXIgbWl0IGRpZXNlbSBCZW51dHplcm5hbWVuIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdWb20gQ1NWLUV4cG9ydCB3dXJkZW4ga2VpbmUgRGF0ZW4genVyJnV1bWw7Y2tnZWdlYmVuLic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMJmF1bWw7bmdlIGRlcyBCZW51dHplcm5hbWVuLUZlbGRlcyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMJmF1bWw7bmdlIGRlcyBQYXNzd29ydC1GZWxkZXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ0JlaW0gVW50ZXItLyZVdW1sO2JlcnNjaHJlaXRlbiBkaWVzZXIgTCZhdW1sO25nZSBpc3QgZGFzIFBhc3N3b3J0IHVuZyZ1dW1sO2x0aWcuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdCZWltIFVudGVyLS8mVXVtbDtiZXJzY2hyZWl0ZW4gZGllc2VyIEwmYXVtbDtuZ2UgaXN0IGRlciBCZW51dHplcm5hbWUgdW5nJnV1bWw7bHRpZy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ1VuZyZ1dW1sO2x0aWdlIEUtTWFpbC1BZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnRiZ1dW1sO3IgZGllc2VzIEJlbnV0emVya29udG8gd3VyZGUga2VpbmUgRS1NYWlsLUFkcmVzc2UgZ2VmdW5kZW4uJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIGJlaW0gU2V0emVuIGRlciBCZW51dHplcmluZm9ybWF0aW9uZW4nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBiZWltIFNldHplbiBkZXIgRWlnZW5zY2hhZnRlbic7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnQmVudXR6ZXIgJXMgPSAlcyB3dXJkZSBoaW56dWdlZiZ1dW1sO2d0JzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ0JlbnV0emVyIG1pdCBkZXIgdWlkPSVzIHd1cmRlIGdlbCZvdW1sO3NjaHQnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdFaWdlbnNjaGFmdCc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnV2VydCAocmVndWwmYXVtbDtyZXIgQXVzZHJ1Y2spJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnV2FybnVuZzogRGllc2UgRmVsZGVyIGJlZWluZmx1c3NlbiBkaWUgR3Imb3VtbDsmc3psaWc7ZSBkZXIgRWluZ2FiZWZlbGRlciBpbiBGb3JtdWxhcmVuLiBEaWUgVmVycmluZ2VydW5nIGRpZXNlciBaYWhsIGlzdCBkYWhlciBhdWYgZWluZXIgYmVyZWl0cyBleGlzdGllcmVuZGVuIFNlaXRlIG5pY2h0IHJhdHNhbS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggZGllIE1vZHVsZWluc3RlbGx1bmdlbiAmYXVtbDtuZGVybj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0RpZXNlIEUtTWFpbC1BZHJlc3NlIGlzdCBiZXJlaXRzIGluIFZlcndlbmR1bmcuJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0Nvb2tpZXMgZiZ1dW1sO3IgZGllIFNwZWljaGVydW5nIGRlciBBbm1lbGRlLURldGFpbHMgdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnRGVyIE5hbWUgZGVzIENvb2tpZXMnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdFLU1haWwtQWRyZXNzZHVwbGlrYXRlIGVybGF1YmVuJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0RpZSBFLU1haWwtQWRyZXNzZSBzb2xsIGRlciBCZW51dHplcm5hbWUgc2Vpbic7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdFcyB3aXJkIHZlcnN1Y2h0LCBkaWUgZXJmb2xncmVpY2hlIEFubWVsZHVuZyAmdXVtbDtiZXIgZWluZW4gQ29va2llIGF1ZiBkZW0gUmVjaG5lciB6dSBzcGVpY2hlcm4gPGVtPihkZXIgQ29va2llIHdpcmQgYmVpIGVudHNwcmVjaGVuZGVuIEFrdGl2aXQmYXVtbDt0ZW4gYXVmIGRlciBXZWJzZWl0ZSB6dXImdXVtbDtjayBnZXNldHp0KTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhlcmxhdWJ0IG1laHJlcmVuIEJlbnV0emVybiBkaWUgTnV0enVuZyBkZXIgZ2xlaWNoZW4gRS1NYWlsLUFkcmVzc2UpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcoZGllIEUtTWFpbC1BZHJlc3NlIGRlcyBCZW51dHplcnMgaXN0IHNlaW4gQmVudXR6ZXJuYW1lIC0tIHZlcndlbmRlbiBTaWUgZGllc2UgRWluc3RlbGx1bmcgTklFTUFMUyB6dXNhbW1lbiBtaXQgJnF1b3Q7RS1NYWlsLUFkcmVzc2R1cGxpa2F0ZSBlcmxhdWJlbiZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnRXJuZXV0ZSBBbmZyYWdlICZxdW90O1Bhc3N3b3J0IHZlcmdlc3NlbiZxdW90OyBlcmxhdWJlbj8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGVybGF1YnQgZWluZW0gQmVudXR6ZXIgZGllIGVybmV1dGUgQW5mcmFnZSBhdWYgZGFzIFp1ciZ1dW1sO2Nrc2V0emVuIGRlcyBQYXNzd29ydGVzLCBhdWNoIHdlbm4gZXIgYXVmIGVpbmUgdm9yYW5nZWdhbmdlbmUgWnVyJnV1bWw7Y2tzZXR6dW5nIG5pY2h0IHJlYWdpZXJ0IGhhdCknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdGcm9udGVuZFVzZXItc3BlemlmaXNjaGUgQmVyZWNodGlndW5nZW4gdmVyd2VuZGVuPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsZXJ3ZWlzZSBlbnRzcHJlY2hlbiBkaWUgRkVVc2VycyBCZXJlY2h0aWd1bmdlbiBkZW5lbiBhdXMgZGVyIEFkbWluaXN0cmF0aW9uIHdpZSBldHdhIEJlbnV0emVyIGhpbnp1ZiZ1dW1sO2dlbiwgR3J1cHBlIGhpbnp1ZiZ1dW1sO2dlbiB1c3cuIFdlbm4gU2llIGplZG9jaCBkaWVzZSBPcHRpb24gYXVzdyZhdW1sO2hsZW4sIHdlcmRlbiBmJnV1bWw7ciBkaWUgRnJvbnRlbmRVc2Vycy1CZW51dHplcmtvbnRlbiBzZXBhcmF0ZSBCZXJlY2h0aWd1bmdlbiBnZXNldHp0LiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0tvbm50ZSBkaWUgaG9jaGdlbGFkZW5lIERhdGVpIG5pY2h0IGZpbmRlbiAoaW50ZXJuZXIgRmVobGVyKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ01pdCBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaSBpc3QgZWluIFByb2JsZW0gYXVmZ2V0cmV0ZW4uIEJpdHRlIHZlcnN1Y2hlbiBTaWUgZXMgbm9jaCBlaW5tYWwuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1NpZSBoYWJlbiBrZWluZW4gQmVudXR6ZXJuYW1lbiBlaW5nZWdlYmVuLic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdTaWUgaGFiZW4gSWhyZSBFLU1haWwtQWRyZXNzZSBuaWNodCBlaW5nZWdlYmVuISc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdTaWUgaGFiZW4ga2VpbiBQYXNzd29ydCBlaW5nZWdlYmVuLic7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmRVc2VyIC0gQWJtZWxkdW5nJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kVXNlciAtIEFubWVsZHVuZyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPHNwYW4gc3R5bGU9JnF1b3Q7Y29sb3I6IHJlZCZxdW90Oz48Yj5BQ0hUVU5HPC9iPiBXZW5uIFNpZSBiZXJlaXRzIGV4aXN0aWVyZW5kZSBFaWdlbnNjaGFmdGVuICZhdW1sO25kZXJuLCBkaWUgc2Nob24gR3J1cHBlbiB6dWdlb3JkbmV0IHNpbmQsIGthbm4gSWhyZSBTZWl0ZSBtJm91bWw7Z2xpY2hlcndlaXNlIHplcnN0Jm91bWw7cnQgd2VyZGVuPGk+KGJlc29uZGVycywgd2VubiBTaWUgZGllIEwmYXVtbDtuZ2UgZGVyIEZlbGRlciByZWR1emllcmVuLCBldGMpLjwvaT48L3NwYW4+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRGllcyBmdW5rdGlvbmllcnQgTklDSFQgdW50ZXIgV2luZG93cy4nOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0Vyc3RlbGxlbiBTaWUgTklFTUFMUyBlaW5lIEVpZ2Vuc2NoYWZ0IGYmdXVtbDtyIGVpbmVuIEJlbnV0emVybmFtZW4gb2RlciBQYXNzd29ydC4gRGllcyBpc3QgaW0gRnJvbnRFbmRVc2Vycy1Nb2R1bCBiZXJlaXRzIGVpbmdlYmF1dC4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0JlbnV0emVyIGluIGVpbmUgQ1NWLURhdGVpIGV4cG9ydGllcmVuJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGllcmVuJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGllcmVuJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyYXRvcic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VpZ2Vuc2NoYWZ0IDxlbT4lczwvZW0+IGJlYXJiZWl0ZW4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnRXJzdGVsbHQnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydGllcmVuIG5hY2gnOwokbGFuZ1snc29ydCddID0gJ1NvcnRpZXJ1bmcnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnQmVudXR6ZXIgaW4gZGVyL2RlbiBhdXNnZXcmYXVtbDtobHRlbiBHcnVwcGUobiknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnRXJnZWJuaXNzZSBiZXNjaHImYXVtbDtua2VuIGF1Zic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdGJnV1bWw7ciBkaWVzZW4gQmVudXR6ZXIga29ubnRlIGRhcyBFLU1haWwtRmVsZCBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4uIEJpdHRlIGtvbnRha3RpZXJlbiBTaWUgZGVuIFN5c3RlbWFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBmJnV1bWw7ciBkYXMgRm9ybXVsYXIgJnF1b3Q7UGFzc3dvcnQgdmVyZ2Vzc2VuJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBmJnV1bWw7ciBkYXMgRm9ybXVsYXIgJnF1b3Q7RWluc3RlbGx1bmdlbiAmYXVtbDtuZGVybiZxdW90Oyc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1NlaXRlbi1JRC8tQWxpYXMgZGVyIFNlaXRlLCBhdWYgZGllIG5hY2ggZGVyIEFubWVsZHVuZyBnZXNwcnVuZ2VuIHdlcmRlbiBzb2xsIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZXIgQWJtZWxkdW5nIGdlc3BydW5nZW4gd2VyZGVuIHNvbGwgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0aWVycmVpaGVuZm9sZ2UnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQW56YWhsIGRlciBCZW51dHplcm4sIGRpZSBpaHIgdmVybG9yZW5lcyBQYXNzd29ydCB6dXImdXVtbDtja3p1c2V0emVuIG0mb3VtbDtjaHRlbi4gQWt0dWVsbCBzdGVodCBkZXIgWiZhdW1sO2hsZXIgYXVmOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4sIGRpZSAmYXVtbDtsdGVyIGFscyBlaW5lIFdvY2hlIHNpbmQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnQWxsZSBFaW50ciZhdW1sO2dlIGVudGZlcm5lbiwgZGllICZhdW1sO2x0ZXIgYWxzIGVpbiBNb25hdCBzaW5kJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dvbGxlbiBTaWUgZGFzIHdpcmtsaWNoPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1NpZSBoYWJlbiBlaW5lbiB1bmcmdXVtbDtsdGlnZW4gQ29kZSBlaW5nZWdlYmVuOyBiaXR0ZSB2ZXJzdWNoZW4gU2llIGVzIG5vY2ggZWlubWFsLic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRiZ1dW1sO3IgSWhyZSBCZW51dHplci1JRCB3dXJkZSBrZWluIHRlbXBvciZhdW1sO3JlciBDb2RlIGluIGRlciBEYXRlbmJhbmsgZ2VmdW5kZW4uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGllIEFuemVpZ2UgZGVzICZVdW1sO2JlcnByJnV1bWw7ZnVuZ3MtRm9ybXVsYXJzJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkaWUgRS1NYWlsIGJlaSB2ZXJnZXNzZW5lbSBQYXNzd29ydCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRW50d2VkZXIgU2llIHNlbGJzdCBvZGVyIGplbWFuZCBhbmRlcmVzIGhhdCBiZXJlaXRzIGRhcyBadXImdXVtbDtja3NldHplbiBkZXMgUGFzc3dvcnRzIGYmdXVtbDtyIGRpZXNlIEtvbnRvIGF1c2dlbCZvdW1sO3N0LiBQciZ1dW1sO2ZlbiBTaWUgSWhyZW4gRS1NYWlsLUVpbmdhbmcuIFNpZSBmaW5kZW4gZG9ydCB3ZWl0ZXJlIEFud2Vpc3VuZ2VuIHp1bSBadXImdXVtbDtja3NldHplbiBJaHJlcyBQYXNzd29ydGVzLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0ZW5iYW5rZmVobGVyJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1NpZSBlcmhhbHRlbiBkaWVzZSBOYWNocmljaHQsIGRhIGplbWFuZCBhdWYgdW5zZXJlciBTZWl0ZSBhbmdlZ2ViZW4gaGF0LCBkYXNzIFNpZSBJaHIgUGFzc3dvcnQgdmVybG9yZW4gaGFiZW4uIEZhbGxzIGRpZXMgenV0cmlmZnQsIGxlc2VuIFNpZSBiaXR0ZSBkaWUgd2VpdGVyZW4gQW53ZWlzdW5nZW4uICBXZW5uIFNpZSBrZWluZSBBaG51bmcgaGFiZW4sIHVtIHdhcyBlcyBnZWh0LCBkYW5uIGwmb3VtbDtzY2hlbiBTaWUgc2ljaGVyaGVpdHNoYWxiZXIgZGllc2UgTmFjaHJpY2h0LiBXaXIgYmVkYW5rZW4gdW5zLCBkYXNzIFNpZSBzaWNoIGRpZSBaZWl0IGdlbm9tbWVuIGhhYmVuLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZGUnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRGVyIGZvbGdlbmRlIENvZGUgd3VyZGUgenVmJmF1bWw7bGxpZyBnZW5lcmllcnQsIHVtIGRhcyBCZW51dHplci1Lb250byB6dSAmdXVtbDtiZXJwciZ1dW1sO2Zlbi4gV2VubiBTaWUgYXVmIGRlbiBmb2xnZW5kZW4gTGluayBrbGlja2VuLCBnZWxhbmdlbiBTaWUgYXVmIGVpbmUgU2VpdGUsIHdvIFNpZSBkaWVzZW4gQ29kZSBlaW5nZWJlbiBtJnV1bWw7c3Nlbi4gTm9ybWFsZXJ3ZWlzZSBlbnRoJmF1bWw7bHQgZGFzIEZlbGQgYmVyZWl0cyBJaHJlbiBDb2RlLiBGYWxscyBhYmVyIG5pY2h0LCBsYXV0ZXQgZGVyIENvZGU6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnRWluIEtsaWNrIGF1ZiBkZW4gZm9sZ2VuZGVuIExpbmsgYnJpbmd0IFNpZSBhdWYgZGllIFdlYnNlaXRlLCB3byBTaWUgZGVuIHVudGVuc3RlaGVuZGVuIENvZGUgZWluZ2ViZW4gdW5kIGRhbWl0IElociBQYXNzd29ydCB6dXImdXVtbDtja3NldHplbiBrJm91bWw7bm5lbjonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1Bhc3N3b3J0IHZlcmxvcmVuJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnRGFzIENNU01haWxlci1Nb2R1bCB3dXJkZSBuaWNodCBnZWZ1bmRlbi4nOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRWluZSBFLU1haWwgbWl0IEluZm9ybWF0aW9uZW4genVtIFp1ciZ1dW1sO2Nrc2V0emVuIGRlcyBQYXNzd29ydHMgd3VyZGUgYW4gJXMgdmVyc2FuZHQuIFZpZWxlbiBEYW5rISc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NpZSBoYWJlbiBJaHIgUGFzc3dvcnQgdmVyZ2Vzc2VuIG9kZXIgdmVybG9yZW4uIEdlYmVuIFNpZSBoaWVyIElocmVuIEJlbnV0emVybmFtZW4gZWluLiBXZW5uIHdpciBTaWUgaW0gU3lzdGVtIGZpbmRlbiwgZXJoYWx0ZW4gU2llIGVpbmUgRS1NYWlsIG1pdCB3ZWl0ZXJlbiBBbndlaXN1bmdlbiB6dW0gWnVyJnV1bWw7Y2tzZXR6ZW4gZGVzIFBhc3N3b3J0cy4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciB2ZXJnZXNzZW5lIFBhc3N3Jm91bWw7cnRlcic7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciB2ZXJnZXNzZW5lIEJlbnV0emVybmFtZW4nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnRWlnZW5zY2hhZnQgJXMgbmljaHQgZ2VmdW5kZW4nOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ0VpZ2Vuc2NoYWZ0ZW4gZ2VmdW5kZW4nOwokbGFuZ1snYWRkcHJvcCddID0gJ0VpZ2Vuc2NoYWZ0IGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnRWluIGVyZm9yZGVybGljaGVzIEZlbGQgKCVzKSB3YXIgbGVlci4nOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdVbSBJaHIgUGFzc3dvcnQgenUgJmF1bWw7bmRlcm4sIGdlYmVuIFNpZSBiaXR0ZSBoaWVyIGVpbiBuZXVlcyBQYXNzd29ydCBlaW4uJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnRXMgc2NoZWludCBzbywgYWxzIG9iIFNpZSBuaWNodCBhbmdlbWVsZGV0IHNpbmQuJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmllcnVuZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0RpZXNlcyBLb250byBpc3QgYWJnZWxhdWZlbic7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVW5nZW5hdWUgRm9ybWF0aWVydW5nIGRlciBFLU1haWwtQWRyZXNzZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ1VuZyZ1dW1sO2x0aWdlcyBBYmxhdWZkYXR1bSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRmVobGVyIGJlaW0gU2V0emVuIGRlciBFaWdlbnNjaGFmdCAlcyBmJnV1bWw7ciBkZW4gQmVudXR6ZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdVbmcmdXVtbDtsdGlnZSBHcnVwcGVuLUlEICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnS2VubnplaWNobnVuZyBmJnV1bWw7ciB2ZXJib3JnZW5lIEZlbGRlcic7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnRmFyYmUgZiZ1dW1sO3IgdmVyYm9yZ2VuZSBGZWxkZXInOwokbGFuZ1snaGlkZGVuJ10gPSAnVmVyYm9yZ2VuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdFaW5lIEVpZ2Vuc2NoYWZ0IG1pdCBkaWVzZW0gTmFtZW4gZXhpc3RpZXJ0IGJlcmVpdHMuJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0VzIHd1cmRlbiBub2NoIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZGVmaW5pZXJ0Lic7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0YmdXVtbDtyIGRpZXNlIEJlbnV0emVyZ3J1cHBlIHd1cmRlbiBrZWluZSBFaWdlbnNjaGFmdGVuIGF1c2dldyZhdW1sO2hsdC4nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdFcyB3dXJkZW4gbm9jaCBrZWluZSBHcnVwcGVuIGRlZmluaWVydC4nOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdCZW51dHplcmdydXBwZW4gZ2VmdW5kZW4nOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0RpZSBNaXRnbGllZHNjaGFmdCBpbiBtaW5kZXN0ZW5zIGVpbmVyIEdydXBwZSBpc3QgZXJmb3JkZXJsaWNoLic7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnRXJmb3JkZXJ0IGRpZSBNaXRnbGllZHNjaGFmdCBpbiBtaW5kZXN0ZW5zIGVpbmVyIEdydXBwZSc7CiRsYW5nWydiYWNrJ10gPSAnWnVyJnV1bWw7Y2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzdCBlaW4gUGZsaWNodGZlbGQuJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdQZmxpY2h0ZmVsZGVyIGtlbm56ZWljaG5lbiBtaXQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnUGZsaWNodGZlbGRlciBlaW5mJmF1bWw7cmJlbiBtaXQnOwokbGFuZ1snbmV4dCddID0gJ1dlaXRlcic7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0VpbmUgR3J1cHBlIG1pdCBkaWVzZW0gTmFtZW4gZXhpc3RpZXJ0IGJlcmVpdHMuJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUGZsaWNodGZlbGQnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdvcHRpb25hbCc7CiRsYW5nWydvZmYnXSA9ICdBdXMnOwokbGFuZ1snc2l6ZSddID0gJ0dyJm91bWw7JnN6bGlnO2UnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhpbWFsZSBHciZvdW1sOyZzemxpZztlIGlyZ2VuZCBlaW5lciBCaWxkZGltZW5zaW9uIGluIFBpeGVsKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMJmF1bWw7bmdlJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KFplaWNoZW4gaW4gZGVyIFRleHRlaW5nYWJlKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTGlzdGVuZmVsZC1PcHRpb25lbiwgZ2V0cmVubnQgZHVyY2ggWmVpbGVudW1iciZ1dW1sO2NoZS4gRGllIFdlcnRlIGsmb3VtbDtubmVuIG1pdCBhID0gWmVpY2hlbiB2b20gVGV4dCBnZXRyZW5udCB3ZXJkZW4sIHouQnNwLjogV2VpYmxpY2g9dyc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdCZXNjaHJpZnR1bmcgZGVzIE9wdGlvbnNmZWxkZXMsIGdldHJlbm50IGR1cmNoIFplaWxlbnVtYnImdXVtbDtjaGUuIERpZSBXZXJ0ZSBrJm91bWw7bm5lbiBtaXQgYSA9IFplaWNoZW4gdm9tIFRleHQgZ2V0cmVubnQgd2VyZGVuLCB6LkJzcC46IFdlaWJsaWNoPXcnOwokbGFuZ1sncHJvbXB0J10gPSAnRWluZ2FiZWF1ZmZvcmRlcnVuZyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cCc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRmVsZHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdGcmFnZSBiZWkgdmVyZ2Vzc2VuZW08YnIvPkJlbnV0emVybmFtZW4nOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdLb250cm9sbGsmYXVtbDtzdGNoZW4nOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNZWhyZmFjaGxpc3RlbmF1c3dhaGwnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnT3B0aW9uc2ZlbGRlcic7CiRsYW5nWydpbWFnZSddID0gJ0JpbGQnOwokbGFuZ1snZW1haWwnXSA9ICdFLU1haWwtQWRyZXNzZSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRmZWxkJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTGlzdGVuZmVsZCc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dpbGxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnQWJtZWxkZW4nOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ0RpZXNlbiBHcnVwcGVubmFtZW4gdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ01laW5lIEVpbnN0ZWxsdW5nZW4gJmF1bWw7bmRlcm4nOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdJaHJlIEFubWVsZHVuZyBpc3QgZmVobGdlc2NobGFnZW4gLSB1bmcmdXVtbDtsdGlnZXIgQmVudXR6ZXJuYW1lIG9kZXIgdW5nJnV1bWw7bHRpZ2VzIFBhc3N3b3J0Pyc7CiRsYW5nWydsb2dpbiddID0gJ0FubWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnQmVzY2hyaWZ0dW5nIGRlcyBBbm1lbGRlLUJ1dHRvbnMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtTWFpbC1BZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3J0JzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnQW5tZWxkdW5nIGF1ZiBkaWVzZW0gQ29tcHV0ZXIgbWVya2VuJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmllcmVuJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnSGFiZW4gU2llIElociBQYXNzd29ydCB2ZXJnZXNzZW4/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0hhYmVuIFNpZSBJaHJlIEJlbnV0emVyZGF0ZW4gdmVyZ2Vzc2VuPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ1N0YW5kYXJkJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnS29ubnRlIGtlaW5lIEluZm9ybWF0aW9uZW4gZiZ1dW1sO3IgZGllc2VuIEJlbnV0emVyIGZpbmRlbic7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnRGllc2VyIEJlbnV0emVybmFtZSAoJXMpIHdpcmQgYmVyZWl0cyB2ZXJ3ZW5kZXQuJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdTb2xsIFNNVFAgdmVyd2VuZGV0IHdlcmRlbiwgdW0gRS1NYWlsLUFkcmVzc2VuIGF1ZiBHJnV1bWw7bHRpZ2tlaXQgenUgcHImdXVtbDtmZW4/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltYWxlIEwmYXVtbDtuZ2UgZGVzIFBhc3N3b3J0cyc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbWFsZSBMJmF1bWw7bmdlIGRlcyBQYXNzd29ydHMnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW1hbGUgTCZhdW1sO25nZSBkZXMgQmVudXR6ZXJuYW1lbnMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSBkZXMgQmVudXR6ZXJuYW1lbnMnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnQXVzemVpdCBmJnV1bWw7ciBTZXNzaW9ucyAoaW4gU2VrdW5kZW4pJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdDb29raWVzIGYmdXVtbDtyIGRpZSBBbm1lbGR1bmcgdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnRS1NYWlsLVJlZ2lzdHJpZXJ1bmcgZXJsYXViZW4nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkLUJlbnV0emVyZ3J1cHBlIGYmdXVtbDtyIG5ldWUgQmVudXR6ZXInOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBFaW5zdGVsbHVuZ2VuICZhdW1sO25kZXJuJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdEaWUgUGFzc3cmb3VtbDtydGVyIHN0aW1tZW4gbmljaHQgJnV1bWw7YmVyZWluLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVbmcmdXVtbDtsdGlnZXIgQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VuZyZ1dW1sO2x0aWdlcyBQYXNzd29ydCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0JlbnV0emVyIGJlYXJiZWl0ZW4nOwokbGFuZ1sndmFsaWQnXSA9ICdHJnV1bWw7bHRpZyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRGllc2VyIEJlbnV0emVyIGlzdCBub2NoIGtlaW4gTWl0Z2xpZWQgZWluZXIgQmVudXR6ZXJncnVwcGUuJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdLZWluZSBFaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnU2llIGhhYmVuIHZlcnN1Y2h0LCBFaWdlbnNjaGFmdGVuIGRvcHBlbHQgenUgaW1wb3J0aWVyZW4nOwokbGFuZ1sndmFsdWUnXSA9ICdXZXJ0JzsKJGxhbmdbJ2dyb3VwcyddID0gJ0JlbnV0emVyZ3J1cHBlbic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWlnZW5zY2hhZnRlbic7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hbWUgZGVyIEVpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1dlcnQgZGVyIEVpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ2FkZCddID0gJ0hpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydoaXN0b3J5J10gPSAnR2VzY2hpY2h0ZSc7CiRsYW5nWydlZGl0J10gPSAnQmVhcmJlaXRlbic7CiRsYW5nWydleHBpcmVzJ10gPSAnQWJsYXVmJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0RhdHVtIGZlc3RsZWdlbic7CiRsYW5nWycxMmhycyddID0gJzEyIFN0dW5kZW4nOwokbGFuZ1snMjRocnMnXSA9ICcyNCBTdHVuZGVuJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggU3R1bmRlbic7CiRsYW5nWycxd2VlayddID0gJzEgV29jaGUnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBXb2NoZW4nOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNb25hdCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNb25hdGUnOwokbGFuZ1snNm1vbnRocyddID0gJzYgTW9uYXRlJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBKYWhyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmllbWFscyc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdEYXMgTW9kdWwgd3VyZGUgaW5zdGFsbGllcnQuPGJyLz5TdGVsbGVuIFNpZSBzaWNoZXIsIGRhc3MgZGllIEJlcmVjaHRpZ3VuZyAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsgZ2VzZXR6dCB3dXJkZS4gWnVzJmF1bWw7dHpsaWNoIHdpcmQgZGllIEluc3RhbGxhdGlvbiBkZXMgQ2FwdGNoYS1Nb2R1bHMgZW1wZm9obGVuLiBOYWNoIGRlc3NlbiBJbnN0YWxsYXRpb24gd2lyZCBiZWkgZGVyIEFubWVsZHVuZyBlcmcmYXVtbDtuemVuZCB6dSBCZW51dHplcm5hbWVuIHVuZCBQYXNzd29ydCBkZXIgSW5oYWx0IGVpbmVzIENhcHRjaGEtQmlsZGVzIGFiZ2VmcmFndC4gRGllcyBzb2xsIGhlbGZlbiwgQnJ1dGUtZm9yY2UtQXR0YWNrZW4genUgdmVyaGluZGVybi4gPHN0cm9uZz5IaW53ZWlzOjwvc3Ryb25nPiBEaWVzZSBGdW5rdGlvbmFsaXQmYXVtbDt0IGthbm4gbWl0IGRlbSBQYXJhbWV0ZXIgbm9jYXB0Y2hhIGRlYWt0aXZpZXJ0IHdlcmRlbiwgYXVjaCB3ZW5uIGRhcyBDYXB0Y2hhLU1vZHVsIGluc3RhbGxpZXJ0IGlzdC4nOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29ydCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1dpZWRlcmhvbHVuZyBQYXNzd29ydCc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnRWluZSBCZW51dHplcmdydXBwZSBtaXQgZGllc2VtIE5hbWVuIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdCZW51dHplcmdydXBwZSBiZWFyYmVpdGVuJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Fic2VuZGVuJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FiYnJlY2hlbic7CiRsYW5nWydkZWxldGUnXSA9ICdMJm91bWw7c2NoZW4nOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTaW5kIGRhcyB3aXJrbGljaCBkaWUgcmljaHRpZ2VuIEVpbnN0ZWxsdW5nZW4gZiZ1dW1sO3IgZGllc2UgQmVudXR6ZXJncnVwcGU/XG5EYXMgRGVha3RpdmllcmVuIGVpbmVyIEVpZ2Vuc2NoYWZ0IGwmb3VtbDtzY2h0IGtlaW5lIEVpbnRyJmF1bWw7Z2UgaW4gZGVyIEVpZ2Vuc2NoYWZ0ZW50YWJlbGxlIGYmdXVtbDtyIGRpZXNlIEJlbnV0emVyZ3J1cHBlL2RpZXNlbiBCZW51dHplci4gU2llIHNpbmQgbGVkaWdsaWNoIG5pY2h0IG1laHIgdmVyZiZ1dW1sO2diYXIuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdXb2xsZW4gU2llIGRpZXNlIEJlbnV0emVyZ3J1cHBlIHdpcmtsaWNoIGwmb3VtbDtzY2hlbj8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ1dvbGxlbiBTaWUgZGllc2UgRWlnZW5zY2hhZnQgd2lya2xpY2gga29tcGxldHQgbCZvdW1sO3NjaGVuP1xuRmFsbHMgamEsIHdpcmQgYXVjaCBqZWRlciBCZW51dHplcmVpbnRyYWcgZiZ1dW1sO3IgZGllc2UgRWlnZW5zY2hhZnQgZ2VsJm91bWw7c2NodC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnVW56dXJlaWNoZW5kZSBQYXJhbWV0ZXInOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYmVpbSBIaW56dWYmdXVtbDtnZW4gZWluZXIgRWlnZW5zY2hhZnQnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYmVpbSBIaW56dWYmdXVtbDtnZW4gZWluZXIgR3J1cHBlbmJlemllaHVuZyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGJlaW0gSGluenVmJnV1bWw7Z2VuIGVpbmVyIEJlbnV0emVyZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZiZ1dW1sO2dlbiBlaW5lcyBCZW51dHplcnMgenUgZWluZXIgQmVudXR6ZXJncnVwcGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW0gYmVpbSBMJm91bWw7c2NoZW4gZWluZXIgRWlnZW5zY2hhZnQnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLb25udGUga2VpbmUgRS1NYWlsLUFkcmVzc2UgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdTaWUgaGFiZW4ga2VpbmUgU2NocmVpYmJlcmVjaHRpZ3VuZyBmJnV1bWw7ciBkYXMgWmllbHZlcnplaWNobmlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVW5nJnV1bWw7bHRpZ2UgUGFyYW1ldGVyJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS29ubnRlIGtlaW5lIEJlbnV0emVyZ3J1cHBlbiBmaW5kZW4nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBbndlbmRlbic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0JlbnV0emVybmFtZSAocmVndWwmYXVtbDtyZXIgQXVzZHJ1Y2spJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyZWlidW5nJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ05hbWUgZGVyIEJlbnV0emVyZ3J1cHBlJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1p1Z3JpZmYgdmVyd2VpZ2VydCc7CiRsYW5nWydlcnJvciddID0gJ0ZlaGxlcic7CiRsYW5nWydhZGRncm91cCddID0gJ0VpbmUgQmVudXR6ZXJncnVwcGUgaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnR3J1cHBlIGltcG9ydGllcmVuJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdFaW5lbiBCZW51dHplciBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0JlbnV0emVyIGdlZnVuZGVuLCBkaWUgZGVuIEtyaXRlcmllbiBlbnRzcHJlY2hlbic7CiRsYW5nWydncm91cCddID0gJ0JlbnV0emVyZ3J1cHBlJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnQmVudXR6ZXJncnVwcGUgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmllcnVuZ3MtVGVtcGxhdGUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnQWJtZWxkdW5ncy1UZW1wbGF0ZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0FubWVsZHVuZ3MtVGVtcGxhdGUnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3VzZXJzJ10gPSAnQmVudXR6ZXInOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmRVc2VyLVZlcndhbHR1bmcnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdFcmxhdWJ0IGRlbiBCZW51dHplcm4sIHNpY2ggYXVmIElocmVyIFdlYnNlaXRlIGFuenVtZWxkZW4nOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1N0YW5kYXJkLVN0YXJ0c2VpdGUnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xldHp0ZSBTZWl0ZSwgYXVmIGRpZSB6dWdlZ3JpZmZlbiB3dXJkZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbmRlcmUgU2VpdGU6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdHZWJlbiBTaWUgZGVuIFRleHQgYXVzIGRlbSBCaWxkIGVpbic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE4MjA0MzI0NzkuMTM5MjI3ODgyMi4xMzkyMjc4ODIyLjEzOTI3MjYzMDguMic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzOTIyNzg4MjIuMS4xLnV0bWNzcj0oZGlyZWN0KXx1dG1jY249KGRpcmVjdCl8dXRtY21kPShub25lKSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/el_GR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ86czq7Ous6/z4Igz4DOtc60zq/Ov8+FIM6zzrnOsSDPhM6/IM+Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ86czq7Ous6/z4Igz4DOtc60zq/Ov8+FIM6zzrnOsSDPhM6/zr0gzrrPic60zrnOus+MJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICfOpM6/IM61zrvOrM+HzrnPg8+Ezr8vzrzOrc6zzrnPg8+Ezr8gzrzOrs66zr/PgiDOs865zrEgz4TOv869IM66z4nOtM65zrrPjCDOtM61zr0gzrXOr869zrHOuSDOsc+Azr/OtM61zrrPhM+MJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICfOpM6/IM61zrvOrM+HzrnPg8+Ezr8vzrzOrc6zzrnPg8+Ezr8gzrzOrs66zr/PgiDOs865zrEgz4TOvyDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyDOtM61zr0gzrXOr869zrHOuSDOsc+Azr/OtM61zrrPhM+MJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnzpTOtc69IM61z4XPgc6tzrjOt866zrUgzrTOuc61z43OuM+Fzr3Pg863IGVtYWlsIM6zzrnOsSDOsc+Fz4TPjM69IM+Ezr/OvSDOu86/zrPOsc+BzrnOsc+DzrzPjCc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnzp8gz4fPgc6uz4PPhM63z4Igz4DPgc6/z4PPhM6tzrjOt866zrUgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICfOnyDPh8+Bzq7Pg8+EzrfPgiDOtM65zrHOs8+BzqzPhs63zrrOtSB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICfOmc60zrnPjM+EzrfPhM6xJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICfOpM65zrzOriAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ86gz4HOv861zrnOtM6/z4DOv86vzrfPg863OiDOpM6xIM+AzrXOtM6vzrEgzrHPhc+EzqwgzrXPgM63z4HOtc6szrbOv8+Fzr0gz4TOvyDOvM6tzrPOtc64zr/PgiDPhM+Jzr0gz4DOtc60zq/Pic69IM61zrnPg86xzrPPic6zzq7PgiDOs865zrEgz4TOuc+CIM+Gz4zPgc68zrXPgi4gIM6XIM61zrvOu86sz4TPic+Dzrcgz4TOv8+FIM6xz4HOuc64zrzOv8+NIM6xz4XPhM6/z40gz4POtSDOv8+Azr/Ouc6/zrTOrs+Azr/PhM61IM+Fz4DOsc+BzrrPhM+MIM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gzrTOtc69IM61zr3OtM61zq/Ous69z4XPhM6xzrknOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ86Yzq3Ou861z4TOtSDPhM63zr0gzrHOu867zrHOs86uIM+Ez4nOvSDPgM+Bzr/PhM65zrzOrs+DzrXPic69IM+Ezr/PhSDOtM65zrHPh861zrnPgc65z4PPhM6uPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnzpcgzrTOuc61z43OuM+Fzr3Pg863IEVtYWlsIM6uzrTOtyDPh8+BzrfPg865zrzOv8+Azr/Ouc61zq/PhM6xzrknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICfOnc6xIM61z4DOuc+Ez4HOrc+Azr/Ovc+EzrHOuSDOtM65z4DOu86sIGVtYWlscyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcozp3OsSDOtc+AzrnPhM+Bzq3PgM6/zr3PhM6xzrkgz4DOv867zrvOsc+AzrvOv86vIM+Hz4HOrs+Dz4TOtc+CIM68zrUgz4TOt869IM6vzrTOuc6xIM60zrnOtc+NzrjPhc69z4POtyBlbWFpbCknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnzpTOtc69IM6tz4fOtc+EzrUgzrXOuc+DzqzOs861zrkgzq3Ovc6xIM+Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ86UzrXOvSDOrc+HzrXPhM61IM61zrnPg86szrPOtc65IM6tzr3Osc69IM66z4nOtM65zrrPjCDPgM+Bz4zPg86yzrHPg863z4InOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ86Rz4DOv8+Dz43Ovc60zrXPg863IM61zrPOs861zrPPgc6xzrzOrc69zr/PhSDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnzqPPjc69zrTOtc+DzrcgzrXOs86zzrXOs8+BzrHOvM6tzr3Ov8+FIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPs6gz4HOv8+Dzr/Ph86uIM+Dz4TOt869IM+Hz4HOrs+Dzrc8L2I+IM6XIM6xzrvOu86xzrPOriDPhM+Jzr0gzrnOtM65zr/PhM6uz4TPic69IM+Azr/PhSDOuc+Dz4fPjc6/z4XOvSDOs865zrEgz4TOuc+CIM+Fz4DOrM+Bz4fOv8+Fz4POtc+CIM6/zrzOrM60zrXPgiwgzrzPgM6/z4HOtc6vIM69zrEgzrXPgM65z4bOrc+BzrXOuSDOus6xz4TOsc+Dz4TPgc6/z4bOriDOus6xzrkgzrTOuc6xzrrOv8+Azq4gzrvOtc65z4TOv8+Fz4HOs86vzrHPgiDPg861IM6/z4DOv865zr/OtM6uz4DOv8+EzrUgz4XPgM6sz4HPh86/zr3PhM6xIM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gPGk+KM65zrTOuc6xzq/PhM61z4HOsSDOsc69IM61zrvOu86xz4TPjs+DzrXPhM61IM+EzrEgzrzOrs66zrcgz4TPic69IM+AzrXOtM6vz4nOvSwgzrrOu8+AKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnzpHPhc+Ezq4gzrcgzrTOuc6xzrTOuc66zrHPg86vzrEgzrTOtc69IM67zrXOuc+Ezr/Phc+BzrPOtc6vIM+Dz4TOsSB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICfOnM6uzr0gzrTOt868zrnOv8+Fz4HOs86uz4POtc+EzrUgzrzOr86xIM65zrTOuc+Mz4TOt8+EzrEgzrPOuc6xIM6tzr3OsSDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyDOriDOus6sz4TOuSDPgM6xz4HPjM68zr/Ouc6/IM66zrHOuM+Oz4IgzrHPhc+Ez4wgzrXOr869zrHOuSDOtc69z4PPic68zrHPhM+JzrzOrc69zr8gz4PPhM6/IM6sz4HOuM+Bz4nOvM6xICBGcm9udEVuZFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICfOlc6+zrHOs8+JzrPOriDPh8+BzrfPg8+Ez47OvSDPg861IM6xz4HPh861zq/OvyDPhM+Nz4DOv8+FIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICfOlc6+zrHOs8+JzrPOric7CiRsYW5nWydhZG1pbiddID0gJ86UzrnOsc+HzrXOuc+BzrnPg8+Ezq7Pgic7CiRsYW5nWydlZGl0cHJvcCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgzrnOtM65z4zPhM63z4TOsc+CJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4InOwokbGFuZ1snY3JlYXRlZCddID0gJ86UzrfOvM65zr/Phc+BzrPOrs64zrfOus61JzsKJGxhbmdbJ3NvcnRieSddID0gJ86kzrHOvs65zr3PjM68zrfPg863IM66zrHPhM6xJzsKJGxhbmdbJ3NvcnQnXSA9ICfOpM6xzr7Ouc69z4zOvM63z4POtyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICfOp8+Bzq7Pg8+EzrXPgiDPg8+EzrcozrnPgikgIM61z4DOuc67zrXOs868zq3Ovc63KM61z4IpIM6/zrzOrM60zrEozrXPgiknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnzpjOrc+Dzrcgzr/Pgc6vzr/PhSDPg8+EzrEgzrHPgM6/z4TOtc67zq3Pg868zrHPhM6xIM+DzrUnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnzpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+DzrcgzrXOvc+Mz4Igz4DOtc60zq/Ov8+FIGVtYWlsIM6zzrnOsSDOsc+Fz4TPjM69IM+Ezr/OvSDPh8+Bzq7Pg8+EzrcuICDOmc+Dz4nPgiDPgM+Bzq3PgM61zrkgzr3OsSDOtc+AzrnOus6/zrnOvc+Jzr3Ors+DzrXPhM61IM68zrUgz4TOv869IM60zrnOsc+HzrXOuc+BzrnPg8+Ezq4gz4PPhc+Dz4TOrs68zrHPhM6/z4InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICfOkc69zrHOs869z4nPgc65z4PPhM65zrrPjCDPg861zrvOr860zrHPgi/OjM69zr/OvM6xIM6xzr3PhM65z4PPhM6/zq/Ph865z4POt8+CIM6zzrnOsSDPhM63zr0gz4bPjM+BzrzOsSAizp7Orc+HzrHPg86xIM+Ezr/OvSDOus+JzrTOuc66z4wgz4DPgc+Mz4POss6xz4POt8+CIic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4IgzrPOuc6xIM+EzrfOvSDPhs+Mz4HOvM6xICLOkc67zrvOsc6zzq4gz4HPhc64zrzOr8+DzrXPic69Iic7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4Igz4PPhM63zr0gzr/PgM6/zq/OsSDOuM6xIM68zrXPhM6xz4bOrc+Bzr/Ovc+EzrHOuSDOvM61z4TOsSDPhM63zr0gzrXOr8+Dzr/OtM6/JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4LPg8+EzrfOvSDOv8+Azr/Or86xIM64zrEgzrzOtc+EzrHPhs6tz4HOv869z4TOsc65IM68zrXPhM6sIM+EzrfOvSDOrc6+zr/OtM6/JzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ86kz4HPjM+Azr/PgiDPhM6xzr7Ouc69z4zOvM63z4POt8+CJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ86Izr3Osc+CIM6xz4HOuc64zrzPjM+CIM+Hz4HOt8+Dz4TPjs69IM61z4XPgc6vz4POus6/zr3PhM6xzrkgz4PPhM63zr0gzrTOuc6xzrTOuc66zrHPg86vzrEgzrHOu867zrHOs86uz4Igz4fOsc68zq3Ovc+Jzr0gzrrPic60zrnOus+Ozr0gz4DPgc+Mz4POss6xz4POt8+CLiAgzqPPhM63zr0gz4DOsc+Bzr/Pjc+DzrEgz4PPhM65zrPOvM6uIM6/IM6xz4HOuc64zrzPjM+CIM6xz4XPhM+Mz4IgzrXOr869zrHOuTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICfOms6xz4TOrM+BzrPOt8+Dzrcgz4zOu8+Jzr0gzrXOus61zq/Ovc+Jzr0gz4TPic69IM61zrPOs8+BzrHPhs+Ozr0gz4DOv8+FIM61zq/Ovc6xzrkgz4DOsc67zrHOuc+Mz4TOtc+BzrXPgiDOsc+Azr8gzrzOuc6xIM61zrLOtM6/zrzOrM60zrEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnzprOsc+EzqzPgc6zzrfPg863IM+MzrvPic69IM61zrrOtc6vzr3Pic69IM+Ez4nOvSDOtc6zzrPPgc6xz4bPjs69IM+Azr/PhSDOtc6vzr3Osc65IM+AzrHOu86xzrnPjM+EzrXPgc61z4IgzrHPgM6/IM6tzr3OsSDOvM6uzr3OsSc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICfOms6xz4TOrM+BzrPOt8+Dzrcgz4zOu8+Jzr0gz4TPic69IM61zrPOs8+BzrHPhs+Ozr0nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ86Vzq/Pg8+EzrUgz4POr86zzr/Phc+Bzr/OuT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICfOiM+HzrXOuSDOtc65z4POsc+HzrjOtc6vIM68zrcgzq3Os866z4XPgc6/z4IgzrrPjs60zrnOus6xz4IsIM+Az4HOv8+Dz4DOsc64zq7Pg8+EzrUgzr7Osc69zqwnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ86UzrXOvSDOrc+HzrXOuSDOss+BzrXOuM61zq8gz4DPgc6/z4PPic+BzrnOvc+Mz4IgzrrPjs60zrnOus6xz4Igz4DOv8+FIM69zrEgzrHOvc+EzrnPg8+Ezr/Ouc+HzrXOryDPg8+Ezr8gzrTOuc66z4wgz4POsc+CIM6xzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+Hz4HOrs+Dz4TOtyDPg8+EzrfOvSDOss6sz4POtyDOtM61zrTOv868zq3Ovc+Jzr0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyDOtc68z4bOrM69zrnPg863z4Igz4TOt8+CIM+Gz4zPgc68zrHPgiDOtc+AzrHOu86uzrjOtc+Fz4POt8+CIM+Dz4TOv865z4fOtc6vz4nOvSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gZW1haWwgzrPOuc6xIM+Ezr/Phc+CIM6+zrXPh86xz4POvM6tzr3Ov8+Fz4IgzrrPic60zrnOus6/z43PgiDPgM+Bz4zPg86yzrHPg863z4InOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ86JIM61z4POtc6vz4Igzq4gzrrOrM+Azr/Ouc6/z4IgzqzOu867zr/PgiDOrc+HzrXOuSDOrs60zrcgzrXOus66zrnOvc6uz4POtc65IM60zrnOsc60zrnOus6xz4POr86xIM6zzrnOsSDPhM63zr0gzrHOu867zrHOs86uIM66z4nOtM65zrrOv8+NIM+Az4HPjM+DzrLOsc+DzrfPgiDOs865zrEgzrHPhc+Ez4zOvSDPhM6/zr0gzrvOv86zzrHPgc65zrHPg868z4wuICDOlc67zq3Os86+z4TOtSDPhM6/IGVtYWlsIM+DzrHPgiwgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM67zqzOss61z4TOtSDPgM61z4HOsc65z4TOrc+Bz4kgzr/OtM63zrPOr861z4IgzrPOuc6xIM+EzrfOvSDOsc67zrvOsc6zzq4gzrrPic60zrnOus6/z40gz4PPhM6xIM61zrnPg861z4HPh8+MzrzOtc69zrEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ86jz4bOrM67zrzOsSDOss6sz4POt8+CIM60zrXOtM6/zrzOrc69z4nOvSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICfOlc67zqzOss6xz4TOtSDOsc+Fz4TPjCDPhM6/IM68zq7Ovc+FzrzOsSDOtc+AzrXOuc60zq4gzrrOrM+Azr/Ouc6/z4IgzrHOvc6tz4bOtc+BzrUgz4PPhM6/zr0gzrTOuc66z4TPhc6xzrrPjCDPhM+Mz4DOvyDPjM+Ezrkgzq3Ph861z4TOtSDOvs61z4fOrM+DzrXOuSDPhM6/zr0gzrrPic60zrnOus+MIM+Az4HPjM+DzrLOsc+DzrfPgi4gIM6Rzr0gz4zOvc+Ez4nPgiDOrc+Ez4POuSDPg8+FzrzOss6xzq/Ovc61zrkgzrTOuc6xzrLOrM+Dz4TOtSDPhM65z4Igz4DOsc+BzrHOus6sz4TPiSDOv860zrfOs86vzrXPgi4gIM6Rzr0gzrTOtc69IM6tz4fOtc+EzrUgzrnOtM6tzrEgzrPOuc6xIM6xz4XPhM+MIM+Ezr8gzrjOrc68zrEgzrTOuc6xzrPPgc6sz4jPhM61IM68zrUgzrHPg8+GzqzOu861zrnOsSDPhM6/IM+AzrHPgc+Mzr0gzrzOrs69z4XOvM6xLCDPg86xz4IgzrXPhc+HzrHPgc65z4PPhM6/z43OvM61IM6zzrnOsSDPhM6/zr0gz4fPgc+Mzr3OvyDPg86xz4IuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnzprPjs60zrnOus6xz4InOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnzp8gz4DOsc+BzrHOus6sz4TPiSDOus+OzrTOuc66zrHPgiDOrc+HzrXOuSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gz4TPhc+HzrHOr86xIM+Az4HOv866zrXOuc68zq3Ovc6/z4Ugzr3OsSDOtc+AzrHOu863zrjOtc+Fz4TOtc6vIM6/IM67zr/Os86xz4HOuc6xz4POvM+Mz4Igz4fPgc6uz4PPhM63LiAgz4zPhM6xzr0gzrrOrM69zrXPhM61IM66zrvOr866IM+Dz4TOv869IM+Fz4DOtc+Bz4PPjc69zrTOtc+DzrzOvyDPgM6/z4UgzrHOus6/zrvOv8+FzrjOtc6vIM64zrEgz4POsc+CIM61zrzPhs6xzr3Ouc+Dz4TOtc6vIM6tzr3OsSDPgM61zrTOr86/IM6zzrnOsSDPhM63zr0gzrXOuc+DzrHOs8+JzrPOriDPhM6/z4UgzrrPjs60zrnOus6xLiAgzqPPhc69zq7OuM+Jz4Igz4TOvyDPgM61zrTOr86/IM6tz4fOtc65IM+Az4HOv8+Dz4XOvM+AzrvOt8+Bz4nOvM6tzr3OvyDPhM6/zr0gzrrPjs60zrnOus6xIM6xzrvOu86xIM+Dz4TOt869IM+AzrXPgc6vz4DPhM+Jz4POtyDPgM6/z4UgzrTOtc69IM61zq/Ovc6xzrksIM6/IM66z47OtM65zrrOsc+CIM61zq/Ovc6xzrk6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnzprOrM69z4nOvc+EzrHPgiDOus67zq/OuiDPg8+Ezr8gz4DOsc+BzrHOus6sz4TPiSDPhc+AzrXPgc+Dz43Ovc60zrXPg868zr8gzrjOsSDOvM61z4TOsc+GzrXPgc64zrXOr8+EzrUgz4PPhM6/IM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gz4zPgM6/z4UgzrjOsSDOtc65z4POrM6zzrXPhM61IM+Ezr/OvSDPgM6xz4HOsc+AzrHOrM69z4IgzrrPjs60zrnOus6xIM66zrHOuSDOuM6xIM6xzrvOu86szr7Otc+EzrUgz4TOv869IM66z4nOtM65zrrPjDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ86ezrXPh86xz4POvM6tzr3Ov8+CIM66z4nOtM65zrrPjM+CJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnzpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+Dzrcgz4TOv8+FIM6xz4HOuM+Bz47OvM6xz4TOv8+CIENNU01haWxlcic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICfOiM+HzrXOuSDOsc+Azr/Pg8+EzrHOu867zrXOryBlbWFpbCDPg8+Ezr/OvSAlcyDOvM61IM6/zrTOt86zzq/Otc+CIM6zzrnOsSDPhM6/zr0gz4TPgc+Mz4DOvyDOsc67zrvOsc6zzq7PgiDOus+JzrTOuc66zr/PjS4gIM6jzrHPgiDOtc+Fz4fOsc+BzrnPg8+Ezr/Pjc68zrUnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfOj8+Dz4TOtSDOvs61z4fOrM+DzrHPhM61IM6uIM+HzqzPg86xz4TOtSDPhM6/zr0gzrrPic60zrnOus+MIM+Az4HPjM+DzrLOsc+DzrfPgi4gzpvOv865z4DPjM69LCDPgM67zrfOus+Ez4HOv867zr/Os86uz4PPhM61IM+Ezr8gz4zOvc6/zrzOsSDPh8+Bzq7Pg8+EzrcgzrXOtM+OLCDOus6xzrkgzqzOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+Dzrcgz4POsc+CIM64zrEgz4POsc+CIM+Dz4TOsc67zrvOtc6vIM6tzr3OsSBlbWFpbCDOvM61IM6/zrTOt86zzq/Otc+CIM6zzrnOsSDPhM63zr0gzrHOu867zrHOs86uIM+Ezr/PhSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ86gz4HPjM+Ez4XPgM6xIM6zzrnOsSDPhM6/z4XPgiDPh86xzrzOrc69zr/Phc+CIM66z4nOtM65zrrOv8+Nz4InOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnzpTOtc69IM61z4XPgc6tzrjOt866zrUgzrcgzrnOtM65z4zPhM63z4TOsSAlcyAnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ86Vz4XPgc6tzrjOt866zrHOvSDOv865IM65zrTOuc+Mz4TOt8+EzrXPgic7CiRsYW5nWydhZGRwcm9wJ10gPSAnzqDPgc6/z4POuM6uzrrOtyDOuc60zrnPjM+EzrfPhM6xz4InOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ86kzr8gzrHPgM6xzrnPhM6/z43OvM61zr3OvyDPgM61zrTOr86/ICglcykgzq7PhM6xzr0gzrrOtc69z4wnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICfOlc65z4POrM6zzrXPhM61IM6tzr3Osc69IM69zrXPjCDOus+JzrTOuc66z4wgzrXOtM+OIM+Az4HOv866zrXOuc68zq3Ovc6/z4Ugzr3OsSDOsc67zrvOrM6+zrXPhM61IM66z4nOtM65zrrPjCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ86UzrXOvSDOrc+HzrXPhM61IM66zqzOvc61zrkgzrXOuc+DzrHOs8+JzrPOric7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnzqHPhc64zrzOr8+DzrXOuc+CJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnzpXOs86zz4HOsc+Gzq4nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICfOkc+Fz4TPjM+CIM6/IM67zr/Os86xz4HOuc6xz4POvM+Mz4Igzq3Ph861zrkgzrvOrs6+zrXOuSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnzpHOvc+EzrnOus6xzr3Ov869zrnOus6uIM68zr/Pgc+Gzq4gzrTOuc61z43OuM+Fzr3Pg863z4IgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ezq4gzrfOvM61z4HOv868zrfOvc6vzrEgzrvOrs6+zrfPgic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnzqPPhs6szrvOvM6xIM+Dz4TOt869IM+Bz43OuM68zrnPg863IM+EzrfPgiDOuc60zrnPjM+EzrfPhM6xz4IgJXMgzrPOuc6xIM+Ezr/OvSDPh8+Bzq7Pg8+EzrcgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ez4wgzrHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z4wgzrPOuc6xIM+EzrfOvSDOv868zqzOtM6xICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnzprPgc+Fz4bPjCDPgM61zrTOr86/IM60zrXOr866z4TOtyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnzprPgc+Fz4bPjCDPgM61zrTOr86/IM+Hz4HPjs68zrHPhM6/z4InOwokbGFuZ1snaGlkZGVuJ10gPSAnzprPgc+Fz4bPjCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnzpcgzr/Ovc6/zrzOsc+Dzq/OsSDOsc+Fz4TOrs+CIM+EzrfPgiDOmc60zrnPjM+EzrfPhM6xz4Igzq3Ph861zrkgzq7OtM63IM6xz4DOv860zr/OuM61zq8nOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnzpTOtc69IM6tz4fOv8+Fzr0gzr/Pgc65z4PPhM61zq8gzrnOtM65z4zPhM63z4TOtc+CJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnzpTOtc69IM6tz4fOv8+Fzr0gzrXPgM65zrvOtc6zzrXOryDOuc60zrnPjM+EzrfPhM61z4IgzrPOuc6xIM6xz4XPhM6uzr0gz4TOt869IM6/zrzOrM60zrEnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICfOlc+Fz4HOrc64zrfOus6xzr0gzr/OvM6szrTOtc+CJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICfOkc+AzrHOuc+EzrXOr8+EzrHOuSDPg8+FzrzOvM61z4TOv8+Hzq4gz4POtSDPhM6/z4XOu86sz4fOuc+Dz4TOv869IM68zq/OsSDOv868zqzOtM6xJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICfOkc+AzrHOuc+EzrXOr8+EzrHOuSDPg8+FzrzOvM61z4TOv8+Hzq4gz4POtSDPhM6/z4XOu86sz4fOuc+Dz4TOv869IM68zq/OsSDOv868zqzOtM6xJzsKJGxhbmdbJ2JhY2snXSA9ICfOoM6vz4PPiSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnzqTOvyAlcyDOtc6vzr3Osc65IM6xz4DOsc65z4TOv8+NzrzOtc69zr8gz4DOtc60zq/Ovyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnzqPOt868zqzOvc61z4TOtSDPhM6xIM6xz4DOsc65z4TOv8+NzrzOtc69zrEgz4DOtc60zq/OsSDOvM61JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ86Vz4DOuc+DzrfOvM6szr3Otc+EzrUgz4TOsSDOsc+AzrHOuc+Ezr/Pjc68zrXOvc6xIM+AzrXOtM6vzrEgzrzOtSc7CiRsYW5nWyduZXh0J10gPSAnzpXPgM+MzrzOtc69zr8nOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICfOpc+AzqzPgc+HzrXOuSDOrs60zrcgzr/OvM6szrTOsSDOvM61IM6xz4XPhM+MIM+Ezr8gz4zOvc6/zrzOsSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ86Rz4DOsc65z4TOv8+NzrzOtc69zr8gz4DOtc60zq/Ovyc7CiRsYW5nWydvcHRpb25hbCddID0gJ86gz4HOv86xzrnPgc61z4TOuc66zqwnOwokbGFuZ1snb2ZmJ10gPSAnzpXOus+Ez4zPgic7CiRsYW5nWydsZW5ndGgnXSA9ICfOnM6uzrrOv8+CJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KM+HzrHPgc6xzrrPhM6uz4HOtc+CIM+Dz4TOt869IM61zrnPg86xzrPPic6zzq4gzrrOtc65zrzOrc69zr/PhSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ86Vz4DOuc67zr/Os86tz4IgzrzOtc69zr/PjSBEcm9wZG93biwgzrzOtSDOtM65zrHPh8+Jz4HOuc+Dz4TOuc66zq3PgiDOs8+BzrHOvM68zq3Pgic7CiRsYW5nWyd5ZXMnXSA9ICfOnc6xzrknOwokbGFuZ1sncHJvbXB0J10gPSAnzqDPgc6/z4TPgc6/z4DOric7CiRsYW5nWyd0eXBlJ10gPSAnzqTPjc+Azr/Pgic7CiRsYW5nWyd0ZXh0J10gPSAnzprOtc6vzrzOtc69zr8nOwokbGFuZ1snY2hlY2tib3gnXSA9ICfOkc69z4TOuc66zrXOr868zrXOvc6/IM61zrvOrc6zz4fOv8+FIENoZWNrYm94JzsKJGxhbmdbJ2VtYWlsJ10gPSAnzpTOuc61z43OuM+Fzr3Pg863IEVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnzqDOtc+BzrnOv8+Hzq4gzrrOtc65zrzOrc69zr/PhSc7CiRsYW5nWydkcm9wZG93biddID0gJ86czrXOvc6/z40gRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICfOms6xzrvPjs+CIM6uzrvOuM6xz4TOtSc7CiRsYW5nWydsb2dvdXQnXSA9ICfOkc+Azr/Pg8+Nzr3OtM61z4POtyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICfOkc67zrvOsc6zzq4gz4DPgc6/z4PPic+AzrnOus+Ozr0gz4HPhc64zrzOr8+DzrXPic69JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnzpcgz4PPjc69zrTOtc+DzrcgzrHPgM6tz4TPhc+HzrUgLSDOnM63IM6xz4DOv860zrXOus+Ez4wgz4zOvc6/zrzOsSDPh8+Bzq7Pg8+Ezrcgzq4gzrrPic60zrnOus6/z40nOwokbGFuZ1snbG9naW4nXSA9ICfOlc6vz4POv860zr/Pgic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICfOjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICfOms+JzrTOuc66z4zPgic7CiRsYW5nWydyZWdpc3RlciddID0gJ86VzrPOs8+BzrHPhs6uJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnzp7Otc+HzqzPg86xz4TOtSDPhM6/zr0gzrrPic60zrnOus+MPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ86gz4HOv861z4DOuc67zr/Os86tz4InOwokbGFuZ1sndGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICfOpM6/IM6xzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+Hz4HOrs+Dz4TOtyDOtM61zr0gzrXPhc+Bzq3OuM63zrrOtSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnzpHPhc+Ez4wgz4TOvyDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyAoJXMpIM+Hz4HOt8+DzrnOvM6/z4DOv865zrXOr8+EzrHOuSDOrs60zrcnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ86nz4HOrs+DzrcgU01UUCDOs865zrEgz4TOt869IM61z4DOuc66z43Pgc+Jz4POtyDPhM+Jzr0gzrTOuc61z4XOuM+Nzr3Pg861z4nOvSBlbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnzpXOu86sz4fOuc+Dz4TOvyDOvM6uzrrOv8+CIM6az4nOtM65zrrOv8+NJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4IgzprPic60zrnOus6/z40nOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnzpXOu86sz4fOuc+Dz4TOvyDOvM6uzrrOv8+CIM6/zr3PjM68zrHPhM6/z4Igz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4Igzr/Ovc+MzrzOsc+Ezr/PgiDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnzqfPgc+Mzr3Ov8+CIM67zq7Ovs63z4IgzrTOuc61z4DOsc+Gzq7PgiAozrTOtc+Fz4TOtc+Bz4zOu861z4DPhM6xKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ86Vz4DOuc+Ez4HOrc+AzrXPhM6xzrkgzrcgzrXOs86zz4HOsc+Gzq4gz4PPhM63zr0gz4XPgM63z4HOtc+Dzq/OsSBFbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnzqDPgc6/zrXPgM65zrvOtc6zzrzOrc69zrcgzr/OvM6szrTOsSDOs865zrEgz4TOv8+Fz4Igzr3Orc6/z4XPgiDPh8+Bzq7Pg8+EzrXPgic7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ86RzrvOu86xzrPOriDPgc+FzrjOvM6vz4POtc+Jzr0gz4DPgc6/z4TPjc+Azr/PhSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnzp/OuSDOus+JzrTOuc66zr/OryDPgM+Bz4zPg86yzrHPg863z4IgzrTOtc69IM+EzrHOuc+BzrnOrM62zr/Phc69JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ86czrcgzrHPgM6/zrTOtc66z4TPjCDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ez4zPgiDOus+JzrTOuc66z4zPgic7CiRsYW5nWydlZGl0dXNlciddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgz4PPhM6/zrnPh861zq/Pic69IM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWyd2YWxpZCddID0gJ86IzrPOus+Fz4HOvyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ86Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3N0YXR1cyddID0gJ86azrHPhM6sz4PPhM6xz4POtyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICfOkc+Fz4TPjM+CIM6/IM+Hz4HOrs+Dz4TOt8+CIM60zrXOvSDOtc6vzr3Osc65IM68zq3Ou86/z4IgzrrOsc68zrzOr86xz4Igzr/OvM6szrTOsc+CJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICfOp8+Jz4HOr8+CIM65zrTOuc+Mz4TOt8+EzrXPgic7CiRsYW5nWyd2YWx1ZSddID0gJ86kzrnOvM6uJzsKJGxhbmdbJ2dyb3VwcyddID0gJ86fzrzOrM60zrXPgic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnzpnOtM65z4zPhM63z4TOtc+CJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnzozOvc6/zrzOsSDOuc60zrnPjM+EzrfPhM6xz4InOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnzqTOuc68zq4gzrnOtM65z4zPhM63z4TOsc+CJzsKJGxhbmdbJ2FkZCddID0gJ86gz4HOv8+DzrjOrs66zrcnOwokbGFuZ1snZWRpdCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEnOwokbGFuZ1snZXhwaXJlcyddID0gJ86bzq7Os861zrknOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnzp/Pgc65z4POvM+Mz4IgzrfOvM61z4HOv868zrfOvc6vzrHPgic7CiRsYW5nWycxMmhycyddID0gJzEyIM+Oz4HOtc+CJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgz47Pgc61z4InOwokbGFuZ1snNDhocnMnXSA9ICc0OCDPjs+BzrXPgic7CiRsYW5nWycxd2VlayddID0gJzEgzrXOss60zr/OvM6szrTOsSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIM61zrLOtM6/zrzOrM60zrXPgic7CiRsYW5nWycxbW9udGgnXSA9ICcxIM68zq7Ovc6xz4InOwokbGFuZ1snM21vbnRocyddID0gJzMgzrzOrs69zrXPgic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiDOvM6uzr3Otc+CJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSDOrc+Ezr/Pgic7CiRsYW5nWyduZXZlciddID0gJ86gzr/PhM6tJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ86kzr8gzqzPgc64z4HPic68zrEgzrXOs866zrHPhM6xz4PPhM6szrjOt866zrUgzrXPgM65z4TPhc+Hz47Pgi48YnIvPs6SzrXOss6xzrnPic64zq7PhM61IM+Mz4TOuSDOv8+Bzq/Pg86xz4TOtSDOtM65zrrOsc65z47OvM6xz4TOsSAizqTPgc6/z4DOv8+Azr/Or863z4POtyDOuc60zrnOv8+Ezq7PhM+Jzr0gz4PPhM6xIM60zrnOus6xzrnPjs68zrHPhM6xIM+Ezr/PhSBGcm9udEVuZFVzZXIuIic7CiRsYW5nWydwYXNzd29yZCddID0gJ86az4nOtM65zrrPjM+CIM+Az4HPjM+DzrLOsc+DzrfPgic7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ86Vz4DOsc69zqzOu863z4jOtyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnzpcgzr/OvM6szrTOsSDOvM61IM6xz4XPhM6uzr0gz4TOt869IM6/zr3Ov868zrHPg86vzrEgz4XPgM6sz4HPh861zrkgzq7OtM63JzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgzr/OvM6szrTOsc+CJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ86Rz4DOv8+Dz4TOv867zq4nOwokbGFuZ1snY2FuY2VsJ10gPSAnzobOus+Fz4HOvyc7CiRsYW5nWydkZWxldGUnXSA9ICfOlM65zrHOs8+BzrHPhs6uJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnzpXOr8+Dz4TOtSDPg86vzrPOv8+Fz4HOv865IM+Mz4TOuSDOsc+Fz4TOrc+CIM61zq/Ovc6xzrkgzr/OuSDOus6xz4TOrM67zrvOt867zrXPgiDPgc+FzrjOvM6vz4POtc65z4IgzrPOuc6xIM6xz4XPhM6uzr0gz4TOt869IM6/zrzOrM60zrE/XG4gzpcgzrHPgM6/zrXOvc61z4HOs86/z4DOv86vzrfPg863IM68zrnOsc+CIM65zrTOuc+Mz4TOt8+EzrHPgiDOtM61zr0gOM6xIM6tz4fOtc65IM+Jz4Igz4PPhc69zq3PgM61zrnOsSDPhM63zr0gzrTOuc6xzrPPgc6xz4bOriDOus6sz4DOv865zrHPgiDOtc6zzrPPgc6xz4bOrs+CIM+Dz4TOv869IM+Azq/Ovc6xzrrOsSDOuc60zrnOv8+Ezq7PhM+Jzr0gzrPOuc6xIM+EzrfOvSDOv868zqzOtM6xL8+Hz4HOrs+Dz4TOty4gIM6Rz4DOu86sIM60zrXOvSA4zrEgzrXOr869zrHOuSDOtM65zrHOuM6tz4POuc68zrEuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICfOlc6vz4PPhM61IM+Dzq/Os86/z4XPgc6/zrkgzrPOuc6xIM+EzrfOvSDOtM65zrHOs8+BzrHPhs6uIM6xz4XPhM6uz4Igz4TOt8+CIM6/zrzOrM60zrHPgj8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ86Vzq/Pg8+EzrUgz4POr86zzr/Phc+Bzr/OuSDOs865zrEgz4TOt869IM+AzrvOrs+BzrcgzrTOuc6xzrPPgc6xz4bOriDOsc+Fz4TOrs+CIM+EzrfPgiDOuc60zrnPjM+EzrfPhM6xz4I/XG7Oms6xz4RcJ86xz4XPhM+Mzr0gz4TOv869IM+Ez4HPjM+Azr8gzrjOsSDOtM65zrHOs8+BzrHPhs6/z43OvSDOus6xzrkgzr/PgM6/zrnOtc+CIM61zrPOs8+BzrHPhs6tz4Igz4fPgc6uz4PPhM63IM6xz4bOv8+Bzr/Pjc69IM+EzrfOvSDOuc60zrnPjM+EzrfPhM6xIM6xz4XPhM6uLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICfOkc66zrHOuM+Mz4HOuc+Dz4TOtc+CIM+AzrHPgc6szrzOtc+Ez4HOv865JzsKJGxhbmdbJ2lkJ10gPSAnzpHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z4wnOwokbGFuZ1snbmFtZSddID0gJ86fzr3Ov868zrHPg86vzrEnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdvcnVwJ10gPSAnzqDPgc+MzrLOu863zrzOsSDPg8+EzrfOvSDPgM+Bzr/Pg864zq7Ous63IM6/zrzOrM60zrHPgic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnzpzOriDOrc6zzrrPhc+BzrXPgiDPgM6xz4HOrM68zrXPhM+Bzr/OuSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ86Vz4bOsc+BzrzOv86zzq4nOwokbGFuZ1snZmlsdGVyJ10gPSAnzqbOr867z4TPgc6/JzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGFyIEV4cHJlc3Npb24gzrPOuc6xIM+Ezr8gz4zOvc6/zrzOsSDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICfOoM61z4HOuc6zz4HOsc+Gzq4nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnzp/Ovc6/zrzOsc+Dzq/OsSDOv868zqzOtM6xz4InOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnzpHPgM6xzrPOv8+BzrXPjc61z4TOsc65IM63IM+Az4HPjM+DzrLOsc+DzrcuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnzqPPhs6szrvOvM6xJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnzqDPgc6/z4POuM6uzrrOtyDOvc6tzrHPgiDOn868zqzOtM6xz4InOwokbGFuZ1snYWRkdXNlciddID0gJ86gz4HOv8+DzrjOrs66zrcgzr3Orc6/z4Ugz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICfOlc+Fz4HOrc64zrfOus6xzr0gzr/OuSDPgM6xz4HOsc66zqzPhM+JIM+Hz4HOrs+Dz4TOtc+CIM+Azr/PhSDOuc66zrHOvc6/z4DOv865zr/Pjc69IM+EzrEgzrrPgc65z4TOrs+BzrnOsSc7CiRsYW5nWydncm91cCddID0gJ86fzrzOrM60zrEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICfOlc+AzrnOu86/zrPOriDOv868zqzOtM6xz4InOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gzrXOs86zz4HOsc+Gzq7Pgic7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyDOsc+Azr/Pg8+Nzr3OtM61z4POt8+CJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gz4PPjc69zrTOtc+DzrfPgic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ86gz4HOv8+EzrnOvM6uz4POtc65z4InOwokbGFuZ1sndXNlcnMnXSA9ICfOp8+Bzq7Pg8+EzrXPgic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICfOlM65zrHPh861zq/Pgc65z4POtyDOtc6zzrPOtc6zz4HOsc68zq3Ovc+Jzr0gz4fPgc63z4PPhM+Ozr0nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICfOlM65zrHPh861zrnPgc65z4PPhM61zq/PhM61IM+Ezr/Phc+CIM61zrPOs861zrPPgc6xzrzOrc69zr/Phc+CIM+Hz4HOrs+Dz4TOtc+CJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICfOoM+Bzr/Otc+AzrnOu861zrPOvM6tzr3OtyDOsc+Bz4fOuc66zq4gz4POtc67zq/OtM6xJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICfOo861zrvOr860zrEgz4DOv8+FIM+Az4HOv8+Dz4DOtc67zqzPg8+EzrfOus61IM+Az4HPjM+Dz4bOsc+EzrEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnzobOu867zrcgz4POtc67zq/OtM6xOiAnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/es_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2FkbyBjb24gdW5hIGRlIGxhcyBmb3JtYXMsIGVzdGUgcGFyJmFhY3V0ZTttZXRybyBlc3BlY2lmaWNhIHF1ZSBsYXMgZm9ybWFzIGRvIGRlYmVyJmFhY3V0ZTtuIHNlciBwdWVzdGFzIGVuIGxpbmVhLCBsbyBjdWFsIHByb3ZvY2FyJmFhY3V0ZTsgcXVlIGRlc3B1ZXMgZGVsIGVudmlvIGRlIHVuYSBmb3JtYSBlbCBjb250ZW5pZG8gcHJlZGV0ZXJtaW5hZG8gZGUgbGEgcGFnaW5hIGVuIGxhIHF1ZSBzZSBlbmN1ZW50cmUsIHNlYSByZWVtcGxhemFkby4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0FkdmVydGVuY2lhIGRlIHRpZW1wbyBkZSBlc3BlcmEgYWdvdGFkbyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1N1IHNlc2kmb2FjdXRlO24gZGUgYWNjZXNvIGVzdGEgYSBwdW50byBkZSBleHBpcmFyLCBwb3IgZmF2b3Igb3ByaW1hIE9LIHBhcmEgY29uZmlybWFyIHN1IGFjdGl2aWRhZCBlbiBlc3RlIHNpdGlvJzsKJGxhbmdbJ29rJ10gPSAnT2sgJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1JlZXN0YWJsZWNlciBwbGFudGlsbGEgZGUgc2VzaSZvYWN1dGU7bic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdFc3RlIGVzIGVsIG5vbWJyZSBkZWwgY2FtcG8sIHVzYWRvIHBhcmEgbGxhbWFkYXMgZW4gU21hcnR5LiBTb2xvIHB1ZWRlIGNvbnRlbmVyIGNhcmFjdGVyZXMgYWxmYW51bWVyaWNvcyB5IGd1aW9uZXMgbWVub3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnVmlzaXRhbnRlcyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjY2lvbmUgdW5vIG8gbWFzIGdydXBvcyBGRVUgcXVlIHRpZW5lbiBwZXJtaXNvIHBhcmEgdmVyIGVzdGEgcCZhYWN1dGU7Z2luYSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnVW4gZ3J1cG8gZGViZSBzZXIgc2VsZWNjaW9uYWRvJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjY2lvbmUgdW5vJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBJm50aWxkZTtvIGRlIGluaWNpbyc7CiRsYW5nWydlbmRfeWVhciddID0gJ0EmbnRpbGRlO28gZGUgZmluJzsKJGxhbmdbJ2RhdGUnXSA9ICdGZWNoYSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUYW1hJm50aWxkZTtvIGRlIGltYWdlbiBtaW5pYXR1cmEnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0N1YW5kbyBzZSBtb2RpZmlxdWUgZWwgZ3J1cG8gZGUgdXN1YXJpb3MnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnRGVtYXNpYWRvcyB1c3VhcmlvcyBzZWxlY2Npb25hZG9zIHBhcmEgb3BlcmFjaW9uZXMgdm9sdW1pbm9zYXMsIHBvciBmYXZvciByZWR1emNhIGEgMjUwIG8gbWVub3NsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnJmlxdWVzdDtFc3QmYWFjdXRlOyBzZWd1cm8gZGUgYm9ycmFyIGxvcyB1c3VhcmlvcyBzZWxlY2Npb25hZG9zPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdCb3JyYXIgbGEgc2VsZWNjaSZvYWN1dGU7bic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmFyIHVzdWFyaW8gYWxlYXRvcmlvIGN1YW5kbyBzZSBhZ3JlZ3VlbiBudWV2b3MgdXN1YXJpb3MnOwokbGFuZ1snbW9udGhzJ10gPSAnbWVzZXMnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1BlcmlvZG8gcHJlZGV0ZXJtaW5hZG8gZGUgZXhwaXJhY2kmb2FjdXRlO24gZGUgdXN1YXJpb3MgJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ0FqdXN0ZXMgZGUgbm90aWZpY2FjaW9uZXMnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdBanVzdGVzIGRlIHByb3BpZWRhZGVzJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnQWp1c3RlcyBkZSByZWRpcmVjY2lvbmFtaWVudG8nOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FqdXN0ZXMgZ2VuZXJhbGVzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdBanVzdGVzIGRlIHNlc2kmb2FjdXRlO24geSBjb29raWVzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnQWp1c3RlcyBkZSBjYW1wb3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnVXN1YXJpbyBkZSBlZGljaSZvYWN1dGU7bic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWNrIGhlcmUgdG8gc2lnbiBvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaWNrIGhlcmUgdG8gYWRqdXN0IHlvdXIgcGFzc3dvcmQgb3Igb3RoZXIgaW5mb3JtYXRpb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaWV3IFVzZXIgVGVtcGxhdGUnOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIEV2ZW50IE5vdGlmaWNhdGlvbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBTdWJqZWN0JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRW1haWwgTm90aWZpY2F0aW9ucyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnQWwgaW5ncmVzYXInOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBbCBzYWxpcic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdPbiBTZXNzaW9uIEV4cGlyeSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdPbiBOZXcgVXNlciBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09uIFVzZXIgRGVsZXRlZCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPbiBVc2VyIFNldHRpbmdzIENoYW5nZWQnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgQ3JlYXRlZCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBEZWxldGVkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVGhlIGxvc3QgbG9naW4gZGV0YWlscyBmdW5jdGlvbmFsaXR5IGhhcyBzdWNjZXNzZnVsbHkgY29tcGxldGVkLiAgV2UgaGF2ZSBmb3VuZCBhIHVuaXF1ZSB1c2VybmFtZSB0aGF0IG1hdGNoZXMgdGhlIGRldGFpbHMgeW91IGVudGVyZWQuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdTdSBub21icmUgZGUgdXN1YXJpbyBlcyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdXZSByZWNvbW1lbmQgeW91IHJlY29yZCB0aGlzIGluZm9ybWF0aW9uIGluIGEgc2VjdXJlLCBidXQgcmV0cmlldmFibGUgbG9jYXRpb24uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnSUQgUCZhYWN1dGU7Zy4vQWxpYXMgYSBkb25kZSBpciBsdWVnbyBkZSB2ZXJpZmljYXIgYyZvYWN1dGU7ZGlnbyAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIERldGFsbGVzIGRlIFVzdWFyaW9zIFBlcmRpZG9zJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIENvbmZpcm1hY2kmb2FjdXRlO24gZGUgVXN1YXJpb3MgUGVyZGlkb3MnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTSZhYWN1dGU7cyBkZSB1bmEgY3VlbnRhIGRlIHVzdWFyaW8gY29pbmNpZGVuIGNvbiBsYXMgcHJvcGllZGFkZXMgZXNwZWNpZmljYWRhcyc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcjogTm8gc2UgcHVkbyBoYWxsYXIgdW4gdXN1YXJpbyBxdWUgY29pbmNpZGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm9yOiBObyBzZSBwdWRvIGhhbGxhciB1biBncnVwbyBjb24gZXNlIG5vbWJyZSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NvbG8gTGVjdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc2UgVXNlciBNYW5pcHVsYXRvcic7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdRdWl0YWRvIGRlbCBzaXN0ZW1hIHBvciBlbCBhZG1pbmlzdHJhZG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdNb3N0cmFyIHNvbG8gdXN1YXJpb3MgbG9ndWVhZG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEZXNsb2d1ZWFyIGVzdGUgdXN1YXJpbyc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9waWVkYWRlcyBkZWwgVXN1YXJpbyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3RvcmlhbCBkZWwgVXN1YXJpbyc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhcic7CiRsYW5nWydjbGVhciddID0gJ0xpbXBpYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0YXIgaGlzdG9yaWFsIGRlbCB1c3VhcmlvIGEgQVNDSUknOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdMaW1waWFyIHJlZ2lzdHJvcyBkZWwgSGlzdG9yaWFsIGRlbCBVc3VhcmlvJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJyZpcXVlc3Q7T2x2aWQmb2FjdXRlOyBzdXMgRGF0b3MgZGUgQWNjZXNvPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRhciBkZWZpbmljaSZvYWN1dGU7biBkZSBncnVwbyAoeSBwcm9waWVkYWRlcykgYSBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ01hbnRlbmltaWVudG8gZGVsIEhpc3RvcmlhbCBkZWwgVXN1YXJpbyc7CiRsYW5nWyd5ZXMnXSA9ICdTJmlhY3V0ZTsnOwokbGFuZ1snbm8nXSA9ICdObyAnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnRGUnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogU2luIExpbWl0ZSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdVbmEgSG9yYSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWlzIEhvcmFzJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0RvY2UgSG9yYXMnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdVbiBEJmlhY3V0ZTthJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1VuYSBTZW1hbmEnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0RvcyBTZW1hbmFzJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdVbiBNZXMnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZXMgTWVzZXMnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTZWlzIE1lc2VzJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ1VuIEEmbnRpbGRlO28nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQWdydXBhciB5IE9yZGVuYXInOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlZ2lzdHJvcyBxdWUgY3VtcGxhbiBlbCBjcml0ZXJpbyc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05vbWJyZSBkZSBVc3VhcmlvIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21icmUgZGUgVXN1YXJpbyBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdGZWNoYSBkZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdGZWNoYSBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RpcG8gZGUgRXZlbnRvIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnVGlwbyBkZSBFdmVudG8gYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIElQIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnRGlyZWNjaSZvYWN1dGU7biBJUCBhc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdIaXN0b3JpYWwgbm8gZGV0ZWN0YWRvJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzdGFibGVjZXInOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnQWdydXBhciBwb3IgRGlyZWNjaSZvYWN1dGU7biBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRybyBkZSBUaXBvIGRlIEV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIHNvbG8gZXZlbnRvcyBpbmZlcmlvcmVzIGE6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMaW1pdGUgZGUgbGEgUCZhYWN1dGU7Z2luYSc7CiRsYW5nWydmb3InXSA9ICdwYXJhJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnSW5mb3JtZSBkZWwgSGlzdG9yaWFsIGRlbCBVc3VhcmlvJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdEZXNjb25vY2lkbyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnRGlyZWNjaSZvYWN1dGU7biBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwbyBkZSBFdmVudG8nOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdGZWNoYSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVm9sdmVyJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdPcGVyYWNpJm9hY3V0ZTtuIGRlIEltcG9ydGFjaSZvYWN1dGU7biBDb21wbGV0YWRhJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0wmaWFjdXRlO25lYXMgUHJvY2VzYWRhcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyb3JlcyBFbmNvbnRyYWRvcyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVnaXN0cm9zIEEmbnRpbGRlO2FkaWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTm8gc2UgcHVlZGUgaGFsbGFyIGxhcyBwcm9waWVkYWRlcyBkZWwgZ3J1cG8gJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdObyBzZSBwdWRvIG9idGVuZXIgdW5hIHJlc3B1ZXN0YSBkZWwgc2Vydmlkb3IgU01UUCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdObyBzZSBwdWRvIGVuY29udHJhciBlbCBmaWNoZXJvIGVzcGVjaWZpY2FkbyAoJVMpJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWYWxvciBpbnZhbGlkbyBwYXJhIGxhIGxpc3RhIGRlc3BsZWdhYmxlICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRWwgY2FtcG8gJXMgZXhjZWRlIGxhIGxvbmdpdHVkIG0mYWFjdXRlO3hpbWEnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdFcnJvciBkdXJhbnRlIGxhIEltcG9ydGFjaSZvYWN1dGU7biAobCZpYWN1dGU7bmVhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ05vIHNlIHB1ZG8gb2J0ZW5lciBsYSBkZWZpbmljaSZvYWN1dGU7biBkZSBsYSBwcm9waWVkYWQgKGVycm9yIGludGVybm8pJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hcyBhbCBjb25maWd1cmFyIGluZm8gZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ05vIHNlIGVuY29udHImb2FjdXRlOyBsYSBjb2x1bW5hIGNvcnJlc3BvbmRpZW50ZSBhbCBjYW1wbyByZXF1ZXJpZG8gJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdObyBzZSBlbmNvbnRyYXJvbiBwcm9waWVkYWRlcyBwYXJhIGVsIGdydXBvIGVzcGVjaWZpY2Fkbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRWwgZm9ybWF0byBkZWwgZmljaGVybyBlc3BlY2lmaWNhZG8gbm8gZXMgY29ycmVjdG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05vIHNlIHB1ZG8gYWJyaXIgZWwgZmljaGVybyc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5JbmZvcm1hY2kmb2FjdXRlO24gZGUgRm9ybWF0byBkZSBBcmNoaXZvPC9oND4NCjxwPkVsIGFyY2hpdm8gcGFyYSBpbXBvcnRhciBkZWJlIHNlciBkZSBmb3JtYXRvIEFTQ0lJIHVzYW5kbyBsb3MgdmFsb3JlcyBzZXBhcmFkb3MgcG9yIGNvbWEuICBDYWRhIGwmaWFjdXRlO25lYSBlbiBlc3RlIGFyY2hpdm8gZGUgaW1wb3J0YWNpJm9hY3V0ZTtuIChjb24gZXhlcGNpJm9hY3V0ZTtuIGRlIGxhIGwmaWFjdXRlO25lYSBkZSBlbmNhYmV6YWRvcywgZGlzY3V0aWRhIGFiYWpvKSByZXByZXNlbnRhIGVsIHJlZ2lzdHJvIGRlIHVuIHVzdWFyaW8uICBDYWRhIGwmaWFjdXRlO25lYSBkZWJlIGNvbnRlbmVyIGVsIG1pc21vIG4mdWFjdXRlO21lcm8gZGUgY2FtcG9zLCB5IGVsIG9yZGVuIGRlIGxvcyBjYW1wb3MgZW4gY2FkYSBsJmlhY3V0ZTtuZWEgZGViZSBzZXIgaWQmZWFjdXRlO250aWNvLjwvcD4NCjxoNT5MJmlhY3V0ZTtuZWEgZGUgZW5jYWJlemFkbzwvaDU+DQo8dWw+DQo8bGk+TGEgcHJpbWVyYSBsJmlhY3V0ZTtuZWEgZGVsIGFyY2hpdm8gZGViZSBjb21lbnphciBjb24gZG9zIGNhcmFjdGVyZXMgbnVtZXJhbCAoXCMpLCB5IGxvcyBub21icmUgZGUgY2FkYSB1bm8gZGUgbG9zIGNhbXBvcyBlbiBlbCBhcmNoaXZvLiAgRWwgbm9tYnJlIGRlIGVzdG9zIGNhbXBvcyBlcyBzaWduaWZpY2F0aXZvLiAgSGF5IGFsZ3Vub3Mgbm9tYnJlIGRlIGNhbXBvcyByZXF1ZXJpZG9zICh2ZXIgYWJham8pLCB5IG90cm9zIG5vbWJyZXMgZGUgY2FtcG9zIGRlYmVuIGNvaW5jaWRpciBjb24gZWwgbm9tYnJlIGRlIGxhcyBwcm9waWVkYWRlcyBhc29jaWFkYXMgYSBsb3MgZ3J1cG9zIGRlIHVzdWFyaW9zIGEgbG9zIGN1YWxlcyB2YW4gYSBzZXIgYWdyZWdhZG9zLjwvbGk+DQo8bGk+RWwgcHJvY2VzbyBkZSBpbXBvcnRhY2kmb2FjdXRlO24gdmEgYSBmYWxsYXIgc2kgbG9zIGNhbXBvcyBlbiBlbCBhcmNoaXZvIGRlIGltcG9ydGFyIG5vIGNvaW5jaWRlbiBjb24gdG9kYXMgbGFzIHByb3BpZWRhZGVzIHJlcXVlcmlkYXMgYXNvY2lhZGFzIGEgbG9zIGdydXBvcyBkZSB1c3VhcmlvcyBhIGxvcyBjdWFsZXMgdmFuIGEgc2VyIGFncmVnYWRvcy48L2xpPg0KPGxpPkVsIGFyY2hpdm8gZGUgaW1wb3J0YXIgcHVlZGUgY29udGVuZXIgY2FtcG9zIHF1ZSByZXByZXNlbnRlbiBhbGd1bmFzIGRlIGxhcyBwcm9waWVkYWRlcyBvcGNpb25hbGVzIGVuIGVsIGdydXBvIGVzcGVjaWZpY2Fkby48L2xpPg0KPGxpPkVsIHByb2Nlc28gZGUgaW1wb3J0YXIgdmEgYSBpZ25vcmFyIGN1YWxxdWllciBjYW1wbyBlbiBlbCBhcmNoaXZvIGRlIGltcG9ydGFyIHF1ZSBwdWVkYSBzZXIgZGVzY29ub2NpZG8sIG8gbWFwZWUgcHJvcGllZGFkZXMgcXVlIHNlIGhhbGxlbiA8ZW0+YXBhZ2FkYXM8L2VtPiBlbiBlbCBncnVwbyBlc3BlY2lmaWNhZG8gZGUgdXN1YXJpb3MuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRhciBVc3VhcmlvcyBhIEVzdGUgR3J1cG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnSW5wb3J0YXIgRmljaGVybyBDU1YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdBcmNoaXZvIFhNTCBkZSBFbnRyYWRhJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydGFyIFVzdWFyaW9zJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGFyIFVzdWFyaW9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0xpbXBpYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdSdXRhIGRlIERlc3Rpbm8gcGFyYSBsYSBJbWFnZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdIYSBvY3VycmlkbyB1biBwcm9ibGVtYSBjb24gdW5hIHN1YmlkYSBpbmV4aXN0ZW50ZSAocGVybyByZXF1ZXJpZGEpJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdObyBzZSBwdWVkZSBwYXJzZWFyIGVsIGFyY2hpdm8gWE1MIHByb3Zpc3RvJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdObyBzZSBwdWVkZSBlbGltaW5hciB1biBncnVwbyBjb24gdXN1YXJpb3MnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0VzdGUgdXN1YXJpbyB5YSBlc3QmYWFjdXRlOyBsb2d1ZWFkbyc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdFbCB0ZXh0byBkZSBsYSBpbWFnZW4gbm8gZXMgY29ycmVjdG8nOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Blcm1pdGlyIHF1ZSBsb3MgdXN1YXJpb3Mgc2UgbG9ndWVlbiBtJmFhY3V0ZTtzIGRlIHVuYSB2ZXonOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbmVzIGRlIGltYWdlbiBwZXJtaXRpZGFzIHBhcmEgbG9zIFVzdWFyaW9zJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBlcyBlbGltaW5hZG88L3A+DQo8aDQ+UGFyJmFhY3V0ZTttZXRyb3M8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTm9tYnJlIGRlbCB1c3VhcmlvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElkIGRlbCB1c3VhcmlvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gc2UgY3JlYSB1biB1c3VhcmlvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlIHVzdWFyaW88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRWwgaWQgZGUgdXN1YXJpbzwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHNlIGFjdHVhbGl6YSB1biB1c3VhcmlvIChjdWFuZG8gbG8gaGFjZSBwb3Igc2kgbWlzbW8gbyBwb3IgZWwgYWRtaW4pPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tYnJlIGRlbCB1c3VhcmlvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElkIGRlbCB1c3VhcmlvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBzZSBjcmVhIHVuIGdydXBvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlIGdydXBvPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGRlc2NyaXBjaSZvYWN1dGU7biBkZWwgZ3J1cG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSWQgZGVsIGdydXBvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBzZSBlbGltaW5hIHVuIGdydXBvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlbCBncnVwbzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJZCBkZWwgZ3J1cG88L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHVuIHVzdWFyaW8gaW5ncmVzYSBhbCBQb3J0YWw8L3A+DQo8aDQ+UGFyJmFhY3V0ZTttZXRyb3M8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlbCB1c3VhcmlvIHF1ZSBpbmdyZXMmb2FjdXRlOzwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBMYSBkaXJlY2NpJm9hY3V0ZTtuIElQIGRlbCBjbGllbnRlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBpbmdyZXNhIGFsIHNpc3RlbWEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBzYWxlIGRlbCBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBsYSBzZXNpJm9hY3V0ZTtuIGRlIHVuIHVzdWFyaW8gZXhwaXJhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBudWV2byB1c3VhcmlvIGVzIGNyZWFkbyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gbGEgaW5mbyBkZSB1biB1c3VhcmlvIGVzIGFjdHVhbGl6YWRhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBsYSBjdWVudGEgZGUgdW4gdXN1YXJpbyBlcyBlbGltaW5hZGEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBncnVwbyBkZSB1c3VhcmlvcyBlcyBjcmVhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBncnVwbyBkZSB1c3VhcmlvcyBlcyBhY3R1YWxpemFkbyc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdVbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHVuIGdydXBvIGRlIHVzdWFyaW9zIGVzIGVsaW1pbmFkbyc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnR3J1cG8gZGUgQWRtaW5pc3RyYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTG9zIHNpZ3VpZW50ZXMgbWFjcm9zIHB1ZWRlbiB1c2Fyc2UgZW4gZXN0b3MgY2FtcG9zOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gQ3VhbmRvIHNlIHVzYSBlbCBtYWNybyB7JGdyb3VwfSwgZWwgc2lzdGVtYSB2YSBhIHN1c3RpdHVpciBlbCBub21icmUgZGVsIHByaW1lciBncnVwbyBkZSBtaWVtYnJvcyBhbCBjdWFsIGVsIHVzdWFyaW8gcGVydGVuZWNlLCB5IHZhIGEgcmUtZGlyZWNjaW9uYXIgYSBlc2EgcCZhYWN1dGU7Z2luYS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRhciBlc3RlIGNhbXBvIHBhcmEgcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EgZGVsIHVzdWFyaW8nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXRhciBlc3RlIGNhbXBvIHBhcmEgcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EgZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnWWEgZXhpc3RlIHVuIHVzYXJpbyBjb24gZXNlIG5vbWJyZSc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyBzZSBoYW4gZGV2dWVsdG8gcmVzdWx0YWRvcyBkZSBsYSBleHBvcnRhY2kmb2FjdXRlO24gYSBDU1YnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTG9uZ2l0dWQgZGVsIGNhbXBvICZxdW90O05vbWJyZSBkZSB1c3VhcmlvJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xvbmdpdHVkIGRlbCBjYW1wbyAmcXVvdDtDb250cmFzZSZudGlsZGU7YSZxdW90Oyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTGFzIGxvbmdpdHVkZXMgTWluL01heCBkZSBsYSBjb250cmFzZSZudGlsZGU7YSBzb24gaW52YWxpZGFzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdMYXMgbG9uZ2l0dWRlcyBNaW4vTWF4IGRlbCBub21icmUgZGUgdXN1YXJpbyBzb24gaW52YWxpZGFzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCBpbnZhbGlkYSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vIHB1ZGltb3MgZW5jb250cmFyIHVuYSBkaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCBwYXJhIGVzdGEgY3VlbnRhJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtYXMgYWwgZXN0YWJsZWNlciBsYSBpbmZvcm1hY2kmb2FjdXRlO24gZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWFzIGFsIGVzdGFibGVjZXIgbGEgcHJvcGllZGFkJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc3VhcmlvIEEmbnRpbGRlO2FkaWRvICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXN1YXJpbyBFbGltaW5hZG8gdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcGllZGFkJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvciAoZXhwcmVzaSZvYWN1dGU7biByZWd1bGFyKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0N1aWRhZG86IEVzdG9zIGNhbXBvcyBhZmVjdGFuIGFsIHRhbWEmbnRpbGRlO28gZGUgbG9zIGNhbXBvcyBkZSB0ZXh0byBkZSBsb3MgZm9ybXVsYXJpb3MuIFJlZHVjaXIgZWwgbiZ1YWN1dGU7bWVybyBlbiB1bmEgd2ViIGV4aXN0ZW50ZSwgcHVlZGUgbm8gc2VyIHJlY29tZW5kYWJsZS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0VzdCZhYWN1dGU7cyBzZWd1cm8gZGUgcXVlcmVyIGFqdXN0YXIgbGFzIHByZWZlcmVuY2lhcyBkZWwgbSZvYWN1dGU7ZHVsbz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZGUgZS1tYWlsIHlhIHV0aWxpemFkYSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSByZWNvcmRhciBsb3MgZGV0YWxsZXMgZGUgYWNjZXNvJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnRWwgbm9tYnJlIGRlIGxhIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1pdGlyIGUtbWFpbHMgZHVwbGljYWRvcyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGRlIGVtYWlsIGVzIGVsIHVzdWFyaW8nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnSW50ZW50YXIgbWFudGVuZXIgbG9zIGluZ3Jlc29zIGNvbiB2aWRhIGNvbiBlbCB1c28gZGUgdW5hIGNvb2tpZSA8ZW0+KGxhIGNvb2tpZSBlcyByZXNldGVhZGEgY29uIGxhIGFjdGl2aWRhZCBkZWwgc2l0aW8gd2ViKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhwZXJtaXRpciB2YXJpb3MgdXN1YXJpb3MgY29uIHVuYSBtaXNtYSBkaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQZXJtaXRpciByZWNvcmRhdG9yaW9zIGRlICZxdW90O2NvbnRyYXNlJm50aWxkZTthIG9sdmlkYWRhJnF1b3Q7IGR1cGxpY2Fkb3M/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhwZXJtaXRpciBsYSBwZXRpY2kmb2FjdXRlO24gZGUgcmVzZXRlbyBkZSBjb250cmFzZSZudGlsZGU7YSwgYXVucXVlIGVsIHVzdWFyaW8gbm8gaGF5YSB1dGlsaXphZG8gbnVuY2EgbGEgYW50ZXJpb3IpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNhciBwZXJtaXNvcyBlc3BlY2lmaWNvcyBwYXJhIGVsIFVzdWFyaW8gZGUgRnJvbnQtZW5kPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbWVudGUsIGxvcyBwZXJtaXNvcyBkZSBsb3MgVXN1YXJpb3MgRkUgc29uIGVxdWl2YWxlbnRlcyBhIGxvcyBwZXJtaXNvcyBkZWwgQXJlYSBkZSBBZG1pbmlzdHJhY2kmb2FjdXRlO24gY29tbyBBJm50aWxkZTthZGlyIFVzdWFyaW8sIEEmbnRpbGRlO2FkaXIgR3J1cG8sIGV0Yy4gU2kgc2VsZWNjaW9uYSBlc3RhIG9wY2kmb2FjdXRlO24sIGhhYnImYWFjdXRlOyBwZXJtaXNvcyBkaWZlcmVudGVzIHBhcmEgbG9zIFVzdWFyaW8gRkUuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnTm8gc2UgcHVkbyBlbmNvbnRyYXIgZWwgZmljaGVybyBzdWJpZG8gKGVycm9yIGludGVybm8pJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnSHVibyB1biBwcm9ibGVtYSBjb24gc3UgYXJjaGl2byBzdWJpZG8uICBQb3IgZmF2b3IgcHJ1ZWJlIG51ZXZhbWVudGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTm8gaW5kaWMmb2FjdXRlOyB1biBub21icmUgZGUgdXN1YXJpbyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdObyBzZSBpbmdyZXMmb2FjdXRlOyB1biBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdObyBpbmRpYyZvYWN1dGU7IHVuYSBjb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnU2FsaWRhIGRlIFVzdWFyaW8gZGVsIFBvcnRhbCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdJbmdyZXNvIGRlIFVzdWFyaW8gZGVsIFBvcnRhbCc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlRFTkdBIFBSRUNBVUNJJk9hY3V0ZTtOPC9iPiBjdWFuZG8gc2UgY2FtYmlhIHByb3BpZWRhZGVzIGV4aXN0ZW50ZXMgcXVlIHNvbiBhc2lnbmFkYXMgYSBncnVwb3MsIHBvdGVuY2lhbG1lbnRlIHVzdGVkIHB1ZWRlIGNhdXNhciBkYSZudGlsZGU7byB5IGRlc2hhY2VyIHVuIHNpdGlvIGV4aXN0ZW50ZSA8aT4oZXNwZWNpYWxtZW50ZSBzaSByZWR1Y2UgbGEgbG9uZ2l0dWQgZGUgbG9zIGNhbXBvcywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRXN0YSBmdW5jaSZvYWN1dGU7biBubyB0cmFiYWphIGVuIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05vIGNyZWFyIHVuYSBwcm9waWVkYWQgcGFyYSBlbCB1c3VhcmlvLCBvIGxhIGNvbnRyYXNlJm50aWxkZTthLCB5YSBxdWUgZXN0YXMgcHJvcGllZGFkZXMgc29uIHBhcnRlIGRlbCBtJm9hY3V0ZTtkdWxvIFVzdWFyaW9zIGRlbCBQb3J0YWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyIFVzdWFyaW9zIGEgQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGFyJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4gJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdGFyIFByb3BpZWRhZCc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdMb25naXR1ZCBtJmFhY3V0ZTt4aW1hJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhZG8nOwokbGFuZ1snc29ydGJ5J10gPSAnT3JkZW5hciBwb3InOwokbGFuZ1snc29ydCddID0gJ09yZGVuYW5kbyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVc3VhcmlvcyBlbiBlbC9sb3MgZ3J1cG8ocykgc2VsZWNjaW9uYWRvKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0YXIgcmVzdWx0YWRvcyBhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ05vIHNlIGhhIHBvZGlkbyBlbmNvbnRyYXIgdW4gY2FtcG8gZGUgZS1tYWlsIHBhcmEgZXN0ZSB1c3VhcmlvLiBFcyBwb3NpYmxlIHF1ZSB0ZW5nYSBxdWUgcG9uZXJzZSBlbiBjb250YWN0byBjb24gZWwgYWRtaW5pc3RyYWRvciBkZWwgc2lzdGVtYSc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0lEUCZhYWN1dGU7Zy9BbGlhcyBwYXJhIGZvcm11bGFyaW8gZGUgT2x2aWRvIGRlIENvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnSURQJmFhY3V0ZTtnL0FsaWFzIHBhcmEgZm9ybXVsYXJpbyBkZSBDYW1iaW8gQ29uZmlndXJhY2kmb2FjdXRlO24nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdJRFAmYWFjdXRlO2cvQWxpYXMgcGFyYSBzYWx0YXIgbHVlZ28gZGVsIGluZ3Jlc28qJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEUCZhYWN1dGU7Zy9BbGlhcyBwYXJhIHNhbHRhciBsdWVnbyBkZWwgZWdyZXNvKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdGb3JtYSBkZSBvcmRlbmFyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0hheSB1biBjaWVydG8gbiZ1YWN1dGU7bWVybyBkZSB1c3VhcmlvcyBxdWUgZXN0JmFhY3V0ZTtuIGVuIGVsIG1lZGlvIGRlIHVuYSByZWN1cGVyYWNpJm9hY3V0ZTtuIGRlIGNvbnRyYXNlJm50aWxkZTthIHBlcmRpZGEuIEVsIG4mdWFjdXRlO21lcm8gYXNjaWVuZGUgYTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdFbGltaW5hciB0b2RhcyBsYXMgZW50cmFkYXMgZGUgaGFjZSBtJmFhY3V0ZTtzIGRlIHVuYSBzZW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnRWxpbWluYXIgdG9kYXMgbGFzIGVudHJhZGFzIGRlIGhhY2UgbSZhYWN1dGU7cyBkZSB1biBtZXMnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWxpbWluYXIgdG9kYXMgbGFzIGVudHJhZGFzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3Vybz8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdTZSBoYSBpbnRyb2R1Y2lkbyB1biBjJm9hY3V0ZTtkaWdvIGludmFsaWRvLCB2dWVsdmEgYSBpbnRlbnRhcmxvJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdObyBzZSBwdWRvIGhhbGxhciB1biBjJm9hY3V0ZTtkaWdvIHRlbXBvcmFyaW8gcGFyYSBzdSBpZCBkZSB1c3VhcmlvIGVuIGxhIGJhc2UgZGUgZGF0b3MnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgdXNhZGEgcGFyYSBtb3N0cmFyIGVsIGZvcm11bGFyaW8gZGUgdmVyaWZpY2FjaSZvYWN1dGU7bic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIHBhcmEgZWwgZW1haWwgZGUgY29udHJhc2UmbnRpbGRlO2Egb2x2aWRhZGEnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0JpZW4gdXN0ZWQgdSBvdHJhIHBlcnNvbmEgeWEgaGFuIHJlY2xhbWFkbyBwb3IgdW5hIG9wZXJhY2kmb2FjdXRlO24gZGUgcmVzZXRlbyBkZSBsYSBjb250cmFzZSZudGlsZGU7YSBwYXJhIGVzdGEgY3VlbnRhLiAgT2JzZXJ2ZSBzdSBlbWFpbCwgdXN0ZWQgeWEgZGViZSB0ZW5lciBlbiBzdSBjYXNpbGxhIGxhcyBpbnN0cnVjY2lvbmVzIG5lY2VzYXJpYXMgY29tbyBwYXJhIHJlc2V0ZWFyIHN1IGNvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvciBlbiBsYSBiYXNlIGRlIGRhdG9zJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1VzdGVkIGVzdGEgcmVjaWJpZW5kbyBlc3RlIG1lbnNhamUgcHVlcyBhbGd1aWVuIG5vcyBoYSBpbmRpY2FkbyBlbiBudWVzdHJvIHNpdGlvIHdlYiBxdWUgaGEgcGVyZGlkbyBsYSBjb250cmFzZSZudGlsZGU7YS4gIFNpIGFzJmlhY3V0ZTsgZXMsIGxlYSBsYXMgaW5zdHJ1Y2Npb25lcyBkZSBhYmFqby4gIFNpIHVzdGVkIG5vIHRpZW5lIG5pbmd1bmEgaWRlYSBhbCByZXNwZWN0bywgcHVlZGUgZWxpbWluYXIgZXN0ZSBtZW5zYWplIGNvbiB0b2RhIHRyYW5xdWlsaWRhZCwgeSBsZSBhZ3JhZGVjZW1vcyBwb3Igc3UgdGllbXBvLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0Mmb2FjdXRlO2RpZ28nOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRWwgYyZvYWN1dGU7ZGlnbyBzaWd1aWVudGUgc2UgaGEgZ2VuZXJhZG8gZW4gZm9ybWEgYWxlYXRvcmlhIGNvbiBlbCBmaW4gZGUgdmVyaWZpY2FyIGFsIHVzdWFyaW8gZGUgbGEgY3VlbnRhLiAgQ3VhbmRvIHVzdGVkIGhhZ2EgY2xpY2sgZW4gZWwgZW5sYWNlIGRlIGFiYWpvIGEgdXN0ZWQgbGUgc2VyJmFhY3V0ZTsgcHJlc2VudGFkbyB1biBjYW1wbyBwYXJhIGluZ3Jlc2FyIGVsIGMmb2FjdXRlO2RpZ28uICBOb3JtYWxtZW50ZSBlbCBjYW1wbyBlcyByZWxsZW5hZG8gYXV0b20mYWFjdXRlO3RpY2FtZW50ZSwgcGVybyBlbiBjYXNvIGRlIHF1ZSBhcyZpYWN1dGU7IG5vIGZ1ZXJhIGVsIGMmb2FjdXRlO2RpZ28gZXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQWwgaGFjZXIgY2xpY2sgc29icmUgZWwgc2lndWllbnRlIGVubGFjZSBzZSBsZSByZWRpcmlnaXImYWFjdXRlOyBhIHVuYSBwJmFhY3V0ZTtnaW5hIGRvbmRlIHB1ZWRhIGludHJvZHVjaXIgZWwgYyZvYWN1dGU7ZGlnbyB5IHJlc2V0ZWFyIHN1IGNvbnRyYXNlJm50aWxkZTthOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnQ29udHJhc2UmbnRpbGRlO2EgUGVyZGlkYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05vIHNlIGhhIHBvZGlkbyBlbmNvbnRyYXIgZWwgbSZvYWN1dGU7ZHVsbyBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnU2UgaGEgZW52aWFkbyB1biBlbWFpbCBhICVzIGNvbiBsYXMgaW50cnVjY2lvbmVzIGRlIGNvbW8gcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EuIE11Y2hhcyBncmFjaWFzLic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ0FzJmlhY3V0ZTsgcXVlIG9sdmlkJm9hY3V0ZTsgbyBwZXJkaSZvYWN1dGU7IHN1IGNvbnRyYXNlJm50aWxkZTthLiBFc2NyaWJhIGFxdSZpYWN1dGU7IHN1IG5vbWJyZSBkZSB1c3VhcmlvIHksIHNpIHBvZGVtb3MgZW5jb250cmFybG8sIGxlIGVudmlhcmVtb3MgdW4gZS1tYWlsIGNvbiBsYXMgaW5zdHJ1Y2Npb25lcyBwYXJhIHJlc2V0ZWFyIGFsIG1pc21vLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1BsYW50aWxsYXMgZGUgQ29udHJhc2UmbnRpbGRlO2EgUGVyZGlkYSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgZGUgTm9tYnJlIGRlIFVzdWFyaW8gUGVyZGlkbyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9waWVkYWQgJXMgbm8gZW5jb250cmFkYSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcGllZGFkZXMgZW5jb250cmFkYXMnOwokbGFuZ1snYWRkcHJvcCddID0gJ0EmbnRpbGRlO2FkaXIgUHJvcGllZGFkJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wbyBvYmxpZ2F0b3JpbyAoJXMpIGVzdCZhYWN1dGU7IHZhYyZpYWN1dGU7byc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0ludHJvZHVjaXIgdW5hIG51ZXZhIGNvbnRyYXNlJm50aWxkZTthIGFxdSZpYWN1dGU7IHBhcmEgbW9kaWZpY2FyIHN1IGNvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnUGFyZWNlIHF1ZSBubyBlc3QmYWFjdXRlO3MgbG9ndWVhZG8nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1ByZWZlcmVuY2lhcyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJvJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRXN0YSBjdWVudGEgaGEgY2FkdWNhZG8nOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZGUgZS1tYWlsIGludiZhYWN1dGU7bGlkYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ZlY2hhIGRlIGNhZHVjaWRhZCBpbnYmYWFjdXRlO2xpZGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIGVzdGFibGVjaWVuZG8gbGEgcHJvcGllZGFkICVzIHBhcmEgZWwgdXN1YXJpbyAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0lkIGRlIGdydXBvICVzIGludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmNhZG9yIGRlIGNhbXBvIG9jdWx0byc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnQ29sb3IgZGUgY2FtcG8gb2N1bHRvJzsKJGxhbmdbJ2hpZGRlbiddID0gJ09jdWx0byc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVW5hIHByb3BpZWRhZCBjb24gZXNlIG5vbWJyZSB5YSBlc3QmYWFjdXRlOyBkZWZpbmlkYSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBoYXkgcHJvcGllZGFkZXMgZGVmaW5pZGFzJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTm8gaGF5IHByb3BpZWRhZGVzIHNlbGVjY2lvbmFkYXMgcGFyYSBlc3RlIGdydXBvJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTm8gaGF5IEdydXBvcyBkZWZpbmlkb3MnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwb3MgRW5jb250cmFkb3MnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0xhIHBlcnRlbmVjaWEgZW4gYWwgbWVub3MgdW4gZ3J1cG8gZXMgcmVxdWVyaWRhJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdQZXJ0ZW5lY2lhIGVuIGFsIG1lbm9zIHVuIGdydXBvIGVzIHJlcXVlcmlkYSc7CiRsYW5nWydiYWNrJ10gPSAnQXRyJmFhY3V0ZTtzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBlcyB1biBjYW1wbyBvYmxpZ2F0b3Jpbyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2FyIGxvcyBjYW1wb3MgcmVxdWVyaWRvcyBjb24nOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnRGVzdGFjYXIgbG9zIGNhbXBvcyByZXF1ZXJpZG9zIGVuJzsKJGxhbmdbJ25leHQnXSA9ICdTaWd1aWVudGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdZYSBleGlzdGUgdW4gR3J1cG8gY29uIGVzZSBub21icmUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdDYW1wbyBPYmxpZ2F0b3Jpbyc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wY2lvbmFsJzsKJGxhbmdbJ29mZiddID0gJ0FwYWdhZG8nOwokbGFuZ1snc2l6ZSddID0gJ1RhbWEmbnRpbGRlO28nOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihUYW1hJm50aWxkZTtvIG0mYWFjdXRlO3hpbW8gZGUgY3VhbHF1aWVyYSBkZSBsYXMgZGltZW5zaW9uZXMgZGUgbGEgaW1hZ2VuIGVuIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnTG9uZ2l0dWQnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2FyYWN0ZXJlcyBlbiBlbCB0ZXh0byBpbnRyb2R1Y2lkbyknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ09wY2lvbmVzIGRlIGRlc3BsZWdhYmxlLCBzZXBhcmFkYXMgcG9yIG51ZXZvIHJlbmdsJm9hY3V0ZTtuLiAgTG9zIHZhbG9yZXMgcHVlZGVuIGVzdGFyIHNlcGFyYWRvcyBkZWwgdGV4dG8gY29uIGVsIGNhcmFjdGVyID0gLiBwLmVqOiBGZW1lbmlubz1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1N1Z2VyZW5jaWEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRXN0YWRvIGRlIENhbXBvJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1ByZWd1bnRhIHNpIFBlcmRpZG88YnIvPk5vbWJyZSBkZSBVc3VhcmlvJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NhamEgZGUgVGlsZGFyJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgTXVsdGkgU2VsZWN0b3JhJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ0JvdG9uZXMgcmFkaWFsZXMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW4nOwokbGFuZ1snZW1haWwnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGUtbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJyZBYWN1dGU7cmVhIGRlIFRleHRvJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTWVuJnVhY3V0ZTsgZGVzcGxlZ2FibGUnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdCaWVudmVuaWRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NhbGlyJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2FyIGVzdGUgbm9tYnJlIGRlIGdydXBvJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ01vZGlmaWNhciBtaXMgcHJlZmVyZW5jaWFzJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFsbGlkbyAtIE5vbWJyZSBkZSB1c3VhcmlvIG8gY29udHJhc2UmbnRpbGRlO2EgaW52JmFhY3V0ZTtsaWRvcz8nOwokbGFuZ1snbG9naW4nXSA9ICdFbnRyYXInOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdFdGlxdWV0YSBkZWwgYm90Jm9hY3V0ZTtuIEVudHJhcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc3VhcmlvJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZS1tYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0NvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVjb3JkYXJtZSBlbiBlc3RhIGNvbXB1dGFkb3JhJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmFyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnT2x2aWQmb2FjdXRlOyBzdSBjb250cmFzZSZudGlsZGU7YT8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnJmlxdWVzdDtIYSBPbHZpZGFkbyBzdXMgRGF0b3MgZGUgSW5ncmVzbz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdWYWxvcmVzIHBvciBkZWZlY3RvJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0lEIGRlbCB1c3VhcmlvIG5vIGVuY29udHJhZG8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0VsIG5vbWJyZSBkZSB1c3VhcmlvICglcykgeWEgZXN0JmFhY3V0ZTsgZW4gdXNvJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2FyIFNNVFAgcGFyYSB2YWxpZGFkIGRpcmVjY2kmb2FjdXRlO25lcyBkZSBlLW1haWw/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ0xvbmdpdHVkIE0maWFjdXRlO25pbWEgZGUgbGEgQ29udHJhc2UmbnRpbGRlO2EnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTG9uZ2l0dWQgTSZhYWN1dGU7eGltYSBkZSBsYSBDb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMb25naXR1ZCBNJmlhY3V0ZTtuaW1hIGRlbCBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdMb25naXR1ZCBNJmFhY3V0ZTt4aW1hIGRlbCBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdGdWVyYSBkZSBUaWVtcG8gZGUgU2VzaSZvYWN1dGU7biAoc2VndW5kb3MpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSBtYW50ZW5lciBsb3MgaW5ncmVzb3Mgdml2b3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQZXJtaXRpciBlbCBSZWdpc3RybyBkZSBFbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3J1cG8gcG9yIGRlZmVjdG8gcGFyYSBudWV2b3MgdXN1YXJpb3MnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDYW1iaWFyIFBsYW50aWxsYSBkZSBQcmVmZXJlbmNpYXMnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0xhcyBjb250cmFzZSZudGlsZGU7YXMgbm8gY29pbmNpZGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05vbWJyZSBkZSB1c3VhcmlvIGludmFsaWRvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ0NvbnRyYXNlJm50aWxkZTthIGludmFsaWRhJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdGFyIFVzdWFyaW8nOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZG8nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc3VhcmlvJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0VzdGFkbyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdFc3RlIHVzdWFyaW8gbm8gZXMgbWllbWJybyBkZSBuaW5nJnVhY3V0ZTtuIGdydXBvJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdTaW4gUHJvcGllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdJbnRlbnRvIGRlIGltcG9ydGFyIHByb3BpZWRhZGVzIGR1cGxpY2FkYXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvcic7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwb3MnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3BpZWRhZGVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTm9tYnJlIGRlIGxhIFByb3BpZWRhZCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvciBkZSBsYSBQcm9waWVkYWQnOwokbGFuZ1snYWRkJ10gPSAnQSZudGlsZGU7YWRpcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWFsJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXInOwokbGFuZ1snZXhwaXJlcyddID0gJ0NhZHVjYSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdFc3BlY2lmaWNhciBGZWNoYSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvcmFzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG9yYXMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Jhcyc7CiRsYW5nWycxd2VlayddID0gJzEgU2VtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgU2VtYW5hcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1lcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNZXNlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNlcyc7CiRsYW5nWycxeWVhciddID0gJzEgQSZudGlsZGU7byc7CiRsYW5nWyduZXZlciddID0gJ051bmNhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdDb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0RlIG51ZXZvJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdZYSBleGlzdGUgdW4gZ3J1cG8gY29uIGVzZSBub21icmUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyIEdydXBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudmlhcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdCb3JyYXInOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICcmaXF1ZXN0O1VzdGVkIGVzdCZhYWN1dGU7IHNlZ3VybyBxdWUgZXN0YSBlcyBsYSBjb25maWd1cmFjaSZvYWN1dGU7biBhcHJvcGlhZGEgcGFyYSBlc3RlIGdydXBvP1xuQXBhZ2FuZG8gdW5hIHByb3BpZWRhZCBubyB2YSBhIGFudWxhciBuaW5ndW5hIGVudHJhZGEgZW4gbGEgdGFibGEgZGUgcHJvcGllZGFkZXMgcGFyYSBlc3RlIGdydXBvL3VzdWFyaW8uICBTaW1wbGVtZW50ZSBsYXMgdmEgYSBoYWNlciBpbmFjY2VzaWJsZXMuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3VybyBxdWUgcXVpZXJlIGVsaW1pbmFyIGVzdGUgZ3J1cG8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3VybyBxdWUgcXVpZXJlIGVsaW1pbmFyIGNvbXBsZXRhbWVudGUgZXN0YSBwcm9waWVkYWQ/XG5IYWNpZW5kb2xvIGFzJmlhY3V0ZTsgYm9ycmFyJmFhY3V0ZTsgY3VhbHF1aWVyIGVudHJhZGEgZGUgdXN1YXJpbyBwYXJhIGVzdGEgcHJvcGllZGFkLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyBpbnN1ZmljaWVudGVzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21icmUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcHJvcGllZGFkJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcmVsYWNpJm9hY3V0ZTtuIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyB1biB1c3VhcmlvIGEgdW4gZ3J1cG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIGVsaW1pbmFuZG8gdW5hIHByb3BpZWRhZCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05vIHNlIHB1ZG8gaGFsbGFyIHVuYSBkaXJlY2NpJm9hY3V0ZTtuIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyBoYXkgcGVybWlzbyBkZSBlc2NyaXR1cmEgZW4gZWwgZGlyZWN0b3JpbyBkZXN0aW5vJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyAgaW52YWxpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm8gc2UgcHVkbyBlbmNvbnRyYXIgbmluZyZ1YWN1dGU7biBncnVwbyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwbGljYXInOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJvJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdFeHByZXNpJm9hY3V0ZTtuIE5vcm1hbCBkZSBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXBjaSZvYWN1dGU7bic7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21icmUgZGVsIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzbyBEZW5lZ2Fkbyc7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yLic7CiRsYW5nWydhZGRncm91cCddID0gJ0EmbnRpbGRlO2FkaXIgR3J1cG8nOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBHcnVwbyc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQSZudGlsZGU7YWRpciBVc3VhcmlvJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc3VhcmlvcyBlbmNvbnRyYWRvcyBxdWUgY29pbmNpZGVuIGNvbiBlbCBjcml0ZXJpbyBkZSBiJnVhY3V0ZTtzcXVlZGEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwbyc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1NlbGVjY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1BsYW50aWxsYSBkZSBSZWdpc3RybyBkZSBVc3Vhcmlvcyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgZGUgU2FsaWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIEFjY2Vzbyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2lhcyc7CiRsYW5nWyd1c2VycyddID0gJ1VzdWFyaW9zJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0FkbWluaXN0cmFjaSZvYWN1dGU7biBkZSBVc3VhcmlvcyBkZWwgUG9ydGFsJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYSBsb3MgdXN1YXJpb3MgaW5ncmVzYXIgYWwgcG9ydGFsIGRlbCBzaXRpbyB3ZWInOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1AmYWFjdXRlO2dpbmEgcG9yIGRlZmVjdG8gZGUgaW5pY2lvJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdVbHRpbWEgcCZhYWN1dGU7Z2luYSBhY2NlZGlkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdHJhIHAmYWFjdXRlO2dpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdXpjYSBlbCB0ZXh0byBkZSBsYSBpbWFnZW4nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/et_EE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdLJnV1bWw7bGFsaXNlZCc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1ZhbGkgJnV1bWw7a3MgdiZvdGlsZGU7aSByb2hrZW0gRkVVIGdydXBwLCBrZWxsZWwgb24gbHViYXR1ZCBzZWRhIGxlaHRlIG4mYXVtbDtoYSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnJlV1bWw7a3MgZ3J1cHAgcGVhYiBvbGVtYSB2YWxpdHVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1ZhbGkgJnV1bWw7a3MnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0FsZ3VzIGFhc3RhJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnTCZvdGlsZGU7cHAgYWFzdGEnOwokbGFuZ1snZGF0ZSddID0gJ0t1dXAmYXVtbDtldic7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdQaXNpcGlsZGkgc3V1cnVzJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdLYXN1dGFqYSBncnVwaSBtdXV0bWlzZWwnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnTGlpZ2EgcGFsanUga2FzdXRhamFpZCBvbiB2YWxpdHVkIG1hc3NvcGVyYXRzaW9vbmlkZWtzLi4uIFBhbHVuIG11dWRhIHNlZSAyNTAta3MgdiZvdGlsZGU7aSB2JmF1bWw7aWtzZW1ha3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdPbGVkIHNhIGtpbmRlbCwgZXQgdGFoYWQga3VzdHV0YWRhIHZhbGl0dWQga2FzdXRhamFkPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdLdXN0dXRhbWluZSB2YWxpdHVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0xpc2FkZXMgdXVzaSBrYXN1dGFqYWlkIGdlbmVyZWVyaSBzdXZhbGluZSBrYXN1dGFqYW5pbWknOwokbGFuZ1snbW9udGhzJ10gPSAna3V1ZCc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnVmFpa2ltaXNpIGthc3V0YWphIGFlZ3VtaXNwZXJpb29kJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ1RlYWRldGUgc2VhZGVkJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnT21hZHVzdGUgc2VhZGVkJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnU3V1bmFtaXNlIHNlYWRlZCc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnJlV1bWw7bGRpc2VkIHNlYWRlZCc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvb25pIGphIGsmdXVtbDtwc2lzZSBzZWFkZWQnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdWJmF1bWw7bGphIHNlYWRlZCc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUgbGlwcHUgc2FhYiBrYXN1dGFkYSBhaW51bHQgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZGUganV1cmVzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0x1YmEga2FzdXRhZGEgd3lzaXd5ZyBzZWxsZWwgdGVrc3RpYWxhbCc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ011dWRhIGthc3V0YWphdCc7CiRsYW5nWydub2lubGluZSddID0gJ0FyYSBrYXN1dGEgJnF1b3Q7aW5saW5lJnF1b3Q7IHZvcm1lJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnVmFqdXRhIHNpaWEsIGt1aSBzYSBlaSBtJmF1bWw7bGV0YSBvbWEga2FzdXRhamFuaW1lJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdWYWp1dGEgc2lpYSwga3VpIHNhIGVpIG0mYXVtbDtsZXRhIG9tYSBwYXJvb2xpJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnVmFqdXRhIHNpaWEgdiZhdW1sO2xqYSBsb2dpbWlzZWtzJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdWYWp1dGEgc2lpYSBvbWEgcGFyb29saSB2Jm90aWxkZTtpIG11dSBpbmZvcm1hdHNpb29uaSBtdXV0bWlzZWtzJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnS2FzdXRhamEgdmFhdGFtaXNlIG1hbGwnOwokbGFuZ1snZXZlbnQnXSA9ICdTJnV1bWw7bmRtdXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBzJnV1bWw7bmRtdXNlIHRlYXZpdHVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ1RlYWRldGUgZW1haWxpIGFhZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ1RlYWRldGUgZW1haWxpIG1hbGwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnVGVhZGV0ZSBlbWFpbGkgdGVlbWEnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbGkgdGVhdGVkJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdTaXNzZWxvZ2ltaXNlbCc7CiRsYW5nWydPbkxvZ291dCddID0gJ1YmYXVtbDtsamFsb2dpbWlzZWwnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnU2Vzc2lvb25pIGFlZ3VtaXNlbCc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdVdWUga2FzdXRhamEgbG9vbWlzZWwnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnS2FzdXRhamEga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0thc3V0YWphIHNlYWRldGUgbXV1dHVtaXNlbCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnS2FzdXRhamFncnVwcGkgbG9vbWlzZWwnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0thc3V0YWphZ3J1cHBpIGt1c3R1dGFtaXNlbCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0thb3RhdHVkIGthc3V0YWphbmltZSBmdW5rdHNpb25hYWxzdXMgbCZvdGlsZGU7cGV0YXMgZWR1a2FsdC4gTWUgbGVpZHNpbWUgdW5pa2FhbHNlIGthc3V0YWphbmltZSwgbWlzIHZhc3RhYiBzaXNlc3RhdHVkIGRldGFpbGlkZWxlLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnU2ludSBrYXN1dGFqYW5pbWkgb24nOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnTWUgc29vdml0YW1lIHNhbHZlc3RhZGEgc2VlIGluZm9ybWF0c2lvb24gdHVydmFsaXNzZSwgYWdhIGsmYXVtbDt0dGVzYWFkYXZhc3NlIGFzdWtvaHRhLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIGt1aHUgaCZ1dW1sO3BhdGEgcGVhbGUgc2VhZGV0ZSBtdXV0bWlzdCc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMga3VodSBoJnV1bWw7cGF0YSBwZWFsZSBrb29kaSB2ZXJpZml0c2VlcmltaXN0IConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUgZGV0YWlsaWRlIG1hbGwnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUga2lubml0dXNlIG1hbGwnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdWaWdhOiBSb2hrZW0ga3VpICZ1dW1sO2tzIGthc3V0YWpha29udG8ga2xhcGliIGFudHVkIG9tYWR1c3RlZ2EnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnVmlnYTogRWkgbGVpZG51ZCBrbGFwcGl2YXQga2FzdXRhamF0JzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdWaWdhOiBFaSBsZWlkbnVkIGdydXBwaSBzZWxsZSBuaW1lIGomYXVtbDtyZ2knOwokbGFuZ1sncmVhZG9ubHknXSA9ICdBaW51bHQgbG9ldGF2JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLYXN1dGFqYSBtYW5pcHVsYWF0b3JrbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dpdHVkIHYmYXVtbDtsamEgYWRtaW5pc3RyYWF0b3JpIHBvb2x0JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOJmF1bWw7aXRhIGFpbnVsdCBzaXNzZWxvZ2ludWQga2FzdXRhamFpZCc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9naSBzZWUga2FzdXRhamEgdiZhdW1sO2xqYSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdLYXN1dGFqYSBvbWFkdXNlZCc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0thc3V0YWphIGFqYWx1Z3UnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9yZGknOwokbGFuZ1snY2xlYXInXSA9ICdQdWhhc3RhJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydCBVc2VyIEhpc3RvcnkgVG8gQVNDSUkgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0NsZWFyIFVzZXIgSGlzdG9yeSByZWNvcmRzIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnVW51c3Rhc2lkIGthc3V0YWphbmltZT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0IGdyb3VwIGRlZmluaXRpb24gKGFuZCBwcm9wZXJ0aWVzKSB0byBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ0thc3V0YWphIGFqYWxvbyBob29sZHVzJzsKJGxhbmdbJ3llcyddID0gJ0phaCc7CiRsYW5nWydubyddID0gJ0VpJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2tva2t1JzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIFBpaXJhbWF0dSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICcmVXVtbDtrcyB0dW5kIHZhbmEnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnS3V1cyB0dW5kaSB2YW5hJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJzEyIHR1bmRpIHZhbmEnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICcmVXVtbDtrcyBwJmF1bWw7ZXYgdmFuYSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICcmVXVtbDtrcyBuJmF1bWw7ZGFsIHZhbmEnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0tha3MgbiZhdW1sO2RhbGF0IHZhbmEnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJyZVdW1sO2tzIGt1dSB2YW5hJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdLb2xtIGt1dWQgdmFuYSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ0t1dXMga3V1ZCB2YW5hJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJyZVdW1sO2tzIGFhc3RhIHZhbmEnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cGVlcmltaW5lIGphIHNvcnRpbWluZSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnS2lyamVkLCBtaXMgdmFzdGF2YWQga3JpdGVlcml1bWlsZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ1YmYXVtbDtoZW5ldiBrYXN1dGFqYW5pbWknOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1N1dXJlbmV2IGthc3V0YWphbmltaSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnViZhdW1sO2hlbmV2IGt1dXAmYXVtbDtldic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdTdXVyZW5ldiBrdXVwJmF1bWw7ZXYnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnViZhdW1sO2hlbmV2IHMmdXVtbDtuZG11c2UgdCZ1dW1sOyZ1dW1sO3AnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdTdXVyZW5ldiBzJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1YmYXVtbDtoZW5ldiBJUCBhYWRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3V1cmVuZXYgSVAgYWFkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnQWphbHVndSBlaSB0dXZhc3RhdHVkJzsKJGxhbmdbJ3Jlc2V0J10gPSAnVGFhc3RhJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBlZXJpIElQIGFhZHJlc3NpIGomYXVtbDtyZ2knOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdTJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtiaSBmaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnTiZhdW1sO2l0YSBzJnV1bWw7bmRtdXNpLCBtaXMgb24gdiZhdW1sO2hlbSBrdWk6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMZWhlayZ1dW1sO2xqZSBwaWlyYW5nJzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0thc3V0YWphIGFqYWxvbyByYXBvcnQnOwokbGFuZ1sndW5rbm93biddID0gJ1R1bmRtYXR1JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhYWRyZXNzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdTJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnS3V1cCZhdW1sO2V2JzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdUYWdhc2knOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnUmlkYSB0Jm91bWw7Jm91bWw7ZGVsZHVkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdWZWFkIHR1dmFzdGF0dWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0tpcmpldCBsaXNhdHVkJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdDb3VsZCBub3QgZmluZCBwcm9wZXJ0aWVzIGZvciBncm91cCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0NvdWxkIG5vdCBnZXQgYSByZXNwb25zZSBmcm9tIHRoZSBTTVRQIHNlcnZlcic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdGaWxlIHNwZWNpZmllZCAoJXMpIGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnSW52YWxpZCB2YWx1ZSBmb3IgZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QgZmllbGQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGaWVsZCAlcyBleGNlZWRzIG1heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEVycm9yIChsaW5lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHVzZXJpZCBmb3IgdGhlIHVzZXIuIEEgdmFsdWUgaW4gdGhpcyBmaWVsZCB3aWxsIGluZGljYXRlIHlvdSBhcmUgZG9pbmcgYW4gdXBkYXRlLjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSBwYXNzd29yZCB0byBzZXQgZm9yIHRoZSB1c2VyPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IEZpZWxkIC0gdG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmdyb3VwbmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBncm91cHMgdGhhdCB5b3Ugd2FudCB0byBoYXZlIHRoZSB1c2VyIGJlIGEgbWVtYmVyIG9mLiBJZiBhbGwgcmVxdWlyZWQgZmllbGRzIGFyZSBub3QgZmlsbGVkIGluIHRoZSBpbnNlcnQvdXBkYXRlIG9mIHRoZSByZWNvcmQgd2lsbCBmYWlsLiBTZWUgTXVsdGlzZWxlY3QgRmllbGRzIGJlbG93IGZvciBzeW50YXguPC9saT4NCjxsaT5Ecm9wZG93bi9SYWRpbyBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5EYXRlIEZpZWxkcw0KICAgIDxwPk11c3QgYmUgaW4gdGhlIGZvcm1hdCBvZiBNTS1ERC1ZWVlZPC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD48L2xpPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0Vrc3BvcmRpIGthc3V0YWphaWQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3JkaSBrYXN1dGFqYWlkJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1B1aGFzdGEnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdQaWxkaSBzaWh0a29oYSB0ZWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCBhIG1pc3NpbmcgKGJ1dCByZXF1aXJlZCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdDb3VsZCBub3QgcGFyc2UgdGhlIHByb3ZpZGVkIFhNTCBmaWxlJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdFaSBzYWEga3VzdHV0YWRhIGdydXBwaSwga3VzIG9uIGVuZGlzZWx0IGthc3V0YWphaWQnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1NlZSBrYXN1dGFqYSBvbiBqdWJhIHNpc3NlIGxvZ2l0dWQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGVrc3QgcGlsZGlsdCBlaSBvbG51ZCBrb3JyZWt0c2VsdCBzaXNlc3RhdHVkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdMdWJhIGthc3V0YWphdGVsIGxvZ2lkYSBzaXNzZSByb2hrZW0sIGt1aSAmdXVtbDtrcyBrb3JkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdQaWxkaSBmYWlsaWRlIGxhaWVuZGlkLCBtaWRhIGthc3V0YWphZCBzYWF2YWQgJnV1bWw7bGVzIGxhYWRpZGEnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSBzaXNzZWxvZ2ltaXNlbCBzJnV1bWw7c3RlZW1pJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSB2JmF1bWw7bGphbG9naW1pc2VsIHMmdXVtbDtzdGVlbWlzdCc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ1MmdXVtbDtuZG11cywgbWlzIGdlbmVyZWVyaXRha3NlIGthc3V0YWphIHNlc3Npb29uaSBhZWd1bWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSB1dWUga2FzdXRhamEgbG9vbWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSBpbmZvIHV1ZW5kYW1pc2VsJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnUyZ1dW1sO25kbXVzLCBtaXMgZ2VuZXJlZXJpdGFrc2Uga2FzdXRhamFrb250byBrdXN0dXRhbWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnUyZ1dW1sO25kbXVzLCBtaXMgZ2VuZXJlZXJpdGFrc2Uga2FzdXRhamFncnVwaSBsb29taXNlbCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYWdydXBpIHV1ZW5kYW1pc2VsJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1MmdXVtbDtuZG11cywgbWlzIGdlbmVyZWVyaXRha3NlIGthc3V0YWphZ3J1cGkga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdBZG1pbmlzdHJhYXRvcmlsaWlkZXNlIGdydXBwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogViZhdW1sO2xqYWRlbCB2Jm90aWxkZTtpYiBrYXN1dGFkYSBqJmF1bWw7cmduZXZhaWQgbWFrcm9zaTogeyR1c2VybmFtZX0seyRncm91cH0uIEthc3V0YWRlcyB7JGdyb3VwfSBtYWtyb3QsIGFzZW5kYWIgcyZ1dW1sO3N0ZWVtIGVzaW1lc2UgZ3J1cGkgbmltZSwgbWlsbGVzc2Uga2FzdXRhamEga3V1bHViLCBqYSBzdXVuYWIgZWRhc2kgc2VsbGVsZSBsZWhlbGUuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdLYXN1dGFqYSBwYXJvb2xpIHRhYXN0YW1pc2VrcyBtdXVkYSBzZWRhIHYmYXVtbDtsamEnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0thc3V0YWphIHBhcm9vbGkgdGFhc3RhbWlzZWtzIG11dWRhIHNlZGEgdiZhdW1sO2xqYSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdTZWxsaXNlIG5pbWVnYSBrYXN1dGFqYSBqdWJhIGVrc2lzdGVlcmliJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0NTViBla3Nwb3J0IGVpIHRvb251ZCB0dWxlbXVzaSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdLYXN1dGFqYW5pbWUgbGFodHJpIHBpa2t1cyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdQYXJvb2xpIGxhaHRyaSBwaWtrdXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFyb29saSBwaWtrdXNlZCBvbiB2aWdhc2VkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IGthc3V0YWphbmltZSBwaWtrdXNlZCBvbiB2aWdhc2VkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdWaWdhbmUgZS1tYWlsaSBhYWRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnTWUgZWkgc3V1dG51ZCBsZWlkYSBzZWxsZSBrb250b2dhIHNlb3R1ZCBlLW1haWxpIGFhZHJlc3NpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVlbSBrYXN1dGFqYWluZm8gc2VhZG1pc2VnYSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVlbSBvbWFkdXNlIHNlYWRtaXNlZ2EnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0thc3V0YWphIGxpc2F0dWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdrYXN1dGFqYSBrdXN0dXRhdHVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ09tYWR1cyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnViZhdW1sOyZhdW1sO3J0dXMgKHZhYmFzIHZvcm1pcyknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdIb2lhdHVzOiBOZWVkIGxhaHRyaWQgbSZvdGlsZGU7anV0YXZhZCB2b3JtaWRlIGxhaHRyaXRlIHN1dXJ1c2kuIFNlbGxlIG51bWJyaSB2JmF1bWw7aGVuZGFtaW5lIG9sZW1hc29sZXZhbCBzYWlkaWwgZWkgcHJ1dWdpIG9sbGEgc29vdml0YXRhdic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnTXV1ZGEgYWRtaW5uaSBlZWxpc3R1c2k/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWxpIGFhZHJlc3Mgb24ganViYSBrYXN1dHVzZXMnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnS2FzdXRhIGsmdXVtbDtwc2lzZWlkLCBldCBtJmF1bWw7bGV0YWRhIHNpc3NlbG9naW1pc2UgYW5kbWVpZCc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ0smdXVtbDtwc2lzZSBuaW1pJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnTHViYSBlLW1haWxpIGR1cGxpa2FhdGUnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1tYWlsaSBhYWRyZXNzIG9uIGthc3V0YWphbmltZWtzJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+KHRoZSBjb29raWUgaXMgcmVzZXQgb24gYWN0aXZpdHkgaW4gdGhlIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGx1YmEgbWl0bWVsIGthc3V0YWphbCBrYXN1dGFkYSBzYW1hIGUtbWFpbGkgYWFkcmVzc2kpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhBbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdLYXN1dGEgRnJvbnQtZW5kIFVzZXIgc3BldHNpaWZpbGlzaSAmb3RpbGRlO2lndXNlaWQ/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdFaSBsZWlkbnVkICZ1dW1sO2xlc2xhZXR1ZCBmYWlsaSAoc2lzZW1pbmUgdmlnYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdUdXZhc3RhdGkgcHJvYmxlZW0gJnV1bWw7bGVzbGFldHVkIGZhaWxpZ2EuIFBhbHVuIHByb292aSB1dWVzdGknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnU2EgZWkgc2lzZXN0YW51ZCBrYXN1dGFqYW5pbWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnU2EgZWkgc2lzZXN0YW51ZCBvbWEgZS1tYWlsaSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdTYSBlaSBzaXNlc3RhbnVkIHBhcm9vbGknOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Vlc2xpaWRlc2UgS2FzdXRhamEgViZhdW1sO2xqYWxvZ2ltaW5lJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Vlc2xpaWRlc2UgS2FzdXRhamEgU2lzc2Vsb2dpbWluZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPkVUVEVWQUFUVVNUPC9iPiBvbGVtYXNvbGV2YXRlIG9tYWR1c3RlIG11dXRtaW5lIHYmb3RpbGRlO2liIGomYXVtbDsmYXVtbDtkYXZhbHQga2FoanVzdGFkYSBvbGVtYXNvbGV2YXQgc2FpdGk8aT4oZXJpdGksIGt1aSBsJnV1bWw7aGVuZGFkIHYmYXVtbDtsamFkZSBwaWtrdXNpIHZtcy4pPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdTZWUgZnVua3RzaW9vbiBlaSB0Jm91bWw7Jm91bWw7dGEgd2luZG93cyYjMDM5O2lsJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICcmQXVtbDtyYSBsb28ga2FzdXRhamFuaW1lIHYmb3RpbGRlO2kgcGFyb29saSBsYWh0cmVpZCAtIG5lZWQgb24ganViYSBGcm9udEVuZFVzZXJzIG1vb2R1bGlzc2Ugc2lzc2UgZWhpdGF0dWQnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcmRpIEthc3V0YWphZCBDU1YmIzAzOTtzc2UnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9yZGknOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3JkaSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmFhdG9yJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnTXV1ZGEgT21hZHVzdCc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzaW1hYWxuZSBwaWtrdXMnOwokbGFuZ1snY3JlYXRlZCddID0gJ0xvb2R1ZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0ZWVyaSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGVlcmltaW5lJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0thc3V0YWphKHQpIHZhbGl0dWQgZ3J1cHBwaWRlcyc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdUdWxlbXVzaSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdTZWxsZWxlIGthc3V0YWphbGUgZWkgbGVpdHVkIGUtbWFpbGkgdiZhdW1sO2xqYS4gViZvdGlsZGU7aWItb2xsYSBwZWFrc2lkIGtvbnRha3RlZXJ1bWEgcyZ1dW1sO3N0ZWVtaWFkbWluaXN0cmFhdG9yaWdhPyc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0xlaGVJRC9BbGlhcyBVbnVzdGF0dWQgUGFyb29saSB2b3JtaSBqYW9rcyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0xlaGVJRC9BbGlhcyBTZWFkZXRlIHZvcm1pIGphb2tzJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnTGVoZUlEL0FsaWFzLCBrdWh1IHN1dW5hdGEgcGVhbGUgc2lzc2Vsb2dpbWlzdCAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0xlaGVJRC9BbGlhcywga3VodSBzdXVuYXRhIHBlYWxlIHYmYXVtbDtsamFsb2dpbWlzdCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnRlZXJpbWlzZSBqJmF1bWw7cmpla29yZCc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdNJm90aWxkZTtuZWQga2FzdXRhamFkIHRhYXN0YXZhZCBvbWEga2FkdW51ZCBwYXJvb2xlLiBIZXRrZWwgb24gbmVpZDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdFZW1hbGRhIGsmb3RpbGRlO2lrIHNpc2VzdHVzZWQsIG1pcyBvbiB2YW5lbWFkIGt1aSAxIG4mYXVtbDtkYWwnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkLCBtaXMgb24gdmFuZW1hZCBrdWkgMSBrdXUnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdPbGVkIHNhIGtpbmRlbD8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdTaXNlc3RhdHVkIGtvb2Qgb24gdmlnYW5lLCBwYWx1biBwcm9vdmkgdXVlc3RpJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdTaW51IGthc3V0YWphIElELWxlIHZhc3RhdmF0IGFqdXRpc3Qga29vZGkgYW5kbWViYWFzaXN0IGVpIGxlaXR1ZCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ0tpbm5pdGFtaXNlIHZvcm1pIG1hbGwnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1VudXN0YXR1ZCBwYXJvb2xpIGUtbWFpbGkgbWFsbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnS2FzIHNpbmEgdiZvdGlsZGU7aSBrZWVnaSB0ZWluZSBvbiBqdWJhIHNlbGxlIGthc3V0YWpha29udG8gcGFyb29saSB0YWFzdGFtaXN0IGFsdXN0YW51ZC4gIEtvbnRyb2xsaSBvbWEgZS1tYWlsaSwgc2VhbCB2Jm90aWxkZTtpdmFkIG9sbGEgZWRhc2lzZWQganVodG4mb3VtbDsmb3VtbDtyaWQsIGt1aWRhcyBvbWEgcGFyb29saSB0YWFzdGFkYSc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQW5kbWViYWFzaSB2aWdhJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1NhaWQgc2VsbGUga2lyamEsIGt1bmEga2VlZ2kgJnV1bWw7dGxlcyBtZWllIGxlaGVsZSwgZXQgb2xlZCBrYW90YW51ZCBvbWEgcGFyb29saS4gS3VpIHNlZSBvbiBuaWksIGxvZSBqdWhpc2VpZCBhbGxwb29sLiBLdWkgc3VsIHBvbGUgJm90aWxkZTtybmEgYWltdWdpLCBtaWxsZXN0IGp1dHQgayZhdW1sO2liLCB2Jm90aWxkZTtpZCBzZWxsZSBraXJqYSBrdXN0dXRhZGEuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29vZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdKJmF1bWw7cmduZXYga29vZCBvbiBzdXZhbGlzZWx0IGdlbmVyZWVyaXR1ZCBrYXN1dGFqYWtvbnRvIGtpbm5pdGFtaXNla3MuIEt1aSBzYSBrbGlraWQgYWxsaiZhdW1sO3JnbmV2YWwgbGluZ2lsLCB0dWxlYiBzdWwgc2VlIGtvb2Qgc2lzZXN0YWRhIHZhc3RhdmFzc2UgbGFodHJpc3NlLiBUYXZhbGlzZWx0IG9uIGtvb2QganViYSBsYWh0cmlzc2Ugc2lzZXN0YXR1ZCwga3VpIGFnYSBtaXR0ZSwgc2lpcyBrb29kIG9uOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0tsaWtraWRlcyBhbGxqJmF1bWw7cmduZXZhbCBsaW5naWwgdmlpYWtzZSBzaW5kIHNhaWRpbGUsIGt1cyBzYWFkIHNpc2VzdGFkYSAmdXVtbDtsYWxwb29sIHRvb2R1ZCBrb29kaSBqYSB0YWFzdGFkYSBvbWEgcGFyb29saTonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0thb3Rhc2lkIFNhbGFzJm90aWxkZTtuYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0NNU01haWxlciBtb29kdWxpdCBlaSBzdXVkZXR1ZCBsZWlkYSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdBYWRyZXNzaWxlICVzIG9uIHNhYWRldHVkIGUtbWFpbCBqdWhpc3RlZ2EsIGt1aWRhcyBzYSBzYWFkIG9tYSBwYXJvb2xpIHRhYXN0YWRhLiBUJmF1bWw7bmFtZSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1RpcGkgc2lzc2Ugb21hIGthc3V0YWphbmltaSBuaW5nIG1lIHNhYWRhbWUgc3VsbGUgZS1tYWlsaWdhIGp1aGlzZWQsIGt1aWRhcyBzYSBvbWEgcGFyb29saSB0YWFzdGFkYSBzYWFkJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnVW51c3RhdHVkIFBhcm9vbGkgTWFsbGlkJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0thb3RhdHVkIGthc3V0YWphbmltZSBtYWxsJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJyVzIG9tYWR1c2kgZWkgbGVpdHVkJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdvbWFkdXModCkgbGVpdHVkJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdMaXNhIE9tYWR1cyc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnTiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGkgKCVzKSBvbGkgdCZ1dW1sO2hpJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnT21hIHBhcm9vbGkgbXV1dG1pc2VrcyBzaXNlc3RhIHNpaWEgdXVzIHBhcm9vbCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1NhIGVpIG9sZSBzaXNzZSBsb2dpdHVkJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZWFkZWQnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZWVyaW1pbmUnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdTZWUga29udG8gb24gYWVndW51ZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVmlnYW5lIGUtbWFpbGkgYWFkcmVzc2kgdm9ybWluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ1ZpZ2FuZSBhZWd1bWlza3V1cCZhdW1sO2V2JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdWaWdhIG9tYWR1c2UgJXMgbSZhdW1sOyZhdW1sO3JhbWlzZWwga2FzdXRhamFsZSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ1ZpZ2FuZSBncnVwaSBJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1BlaWRldHVkIHYmYXVtbDtsamEgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdQZWlkZXR1ZCB2JmF1bWw7bGphIHYmYXVtbDtydic7CiRsYW5nWydoaWRkZW4nXSA9ICdQZWlkZXR1ZCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnU2VsbGlzZSBuaW1lZ2Egb21hZHVzIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnT21hZHVzaSBlaSBvbGUnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdTZWxsZSBncnVwaSBqYW9rcyBlaSB2YWxpdHVkICZ1dW1sO2h0ZWdpIG9tYWR1c3QnOwokbGFuZ1snbm9ncm91cHMnXSA9ICcmVXVtbDtodGVnaSBncnVwcGkgZWkgb2xlIGRlZmluZWVyaXR1ZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ2dydXBwKGkpIGxlaXR1ZCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnS3V1bHV2dXMgdiZhdW1sO2hlbWFsdCAmdXVtbDtodGUgZ3J1cHBpIG9uIGtvaHVzdHVzbGlrJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdLdXVsdXZ1cyB2JmF1bWw7aGVtYWx0ICZ1dW1sO2h0ZSBncnVwcGkgb24ga29odXN0dXNsaWsnOwokbGFuZ1snYmFjayddID0gJ1RhZ2FzaSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgb24gbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGknOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ00mYXVtbDtyZ2lzdGEgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdUJm90aWxkZTtzdGEgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZCBlc2lsZSc7CiRsYW5nWyduZXh0J10gPSAnSiZhdW1sO3JnbWluZSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1NlbGxpc2UgbmltZWdhIGdydXBwIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdOJm90aWxkZTt1dHVkIFYmYXVtbDtsaSc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZhbGlrdWxpbmUnOwokbGFuZ1snb2ZmJ10gPSAnViZhdW1sO2xqYXMnOwokbGFuZ1snc2l6ZSddID0gJ1N1dXJ1cyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFBpbGRpIGlnYSAmdXVtbDtrc2lrdSBrJnV1bWw7bGplIG1ha3NpbWFhbG5lIHN1dXJ1cyBwaWtzbGl0ZXMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1Bpa2t1cyc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPih0JmF1bWw7aGVtJmF1bWw7cmtlIGxhaHRyaXMpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdWYWxpa21lbiZ1dW1sOyZ1dW1sOyB2YWxpa3VkLCBlcmFsZGF0dWQgcmVhdmFoZWdhJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1BlYWxraXJpJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVCZ1dW1sOyZ1dW1sO3AnOwokbGFuZ1sndHlwZSddID0gJ1QmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnViZhdW1sO2xqYSBvbGVrJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0smdXVtbDtzaSBrYW90YXR1ZDxici8+a2FzdXRhamFuaW1lIGtvcnJhbCc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdMaW5udWtlJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ1BpbHQnOwokbGFuZ1snZW1haWwnXSA9ICdFLW1haWxpIGFhZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdGl2JmF1bWw7bGknOwokbGFuZ1snZHJvcGRvd24nXSA9ICdWYWxpa21lbiZ1dW1sOyZ1dW1sOyc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1RlcmUsJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ2kgdiZhdW1sO2xqYSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnS2FzdXRhIHNlZGEgZ3J1cGluaW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ011dWRhIG1pbnUgc2VhZGVpZCc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ1Npc3NlbG9naW1pbmUgZWJhJm90aWxkZTtubmVzdHVzLiBWYWxlIGthc3V0YWphbmltaSB2Jm90aWxkZTtpIHBhcm9vbD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dpIHNpc3NlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTG9naSBzaXNzZSBudXB1IHNpbHQnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbGkgYWFkcmVzcyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdQYXJvb2wnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNJmF1bWw7bGV0YSBtaW5kIHNlbGxlcyBhcnZ1dGlzJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmVlcmknOwokbGFuZ1snZm9yZ290cHcnXSA9ICdVbnVzdGFzaWQgc2FsYXMmb3RpbGRlO25hPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdVbnVzdGFzaWQga2FzdXRhamFuaW1lPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ1RhYXN0YSBhbGdzZWFkZWQnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdNYWxsJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0thc3V0YWphIElELWQgZWkgbGVpdHVkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdTZWUga2FzdXRhamFuaW1pICglcykgb24ganViYSBrYXN1dHVzZWwnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0thc3V0YSBTTVRQLWQgZS1tYWlsaSBhYWRyZXNzaWRlIGtlaHRpdnVzZSBraW5uaXRhbWlzZWtzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbWFhbG5lIHBhcm9vbGkgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01ha3NpbWFhbG5lIHBhcm9vbGkgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWFsbmUga2FzdXRhamFuaW1lIHBpa2t1cyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYWtzaW1hYWxuZSBrYXN1dGFqYW5pbWUgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb29uaSB0YWltYXV0IChzZWt1bmRpdGVzKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnS2FzdXRhIGsmdXVtbDtwc2lzZWlkIHNpc3NlbG9naW1pc3RlIGFsYWxob2l1a3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdMdWJhIEUtbWFpbGkgcmVnaXN0cmVlcmltaXN0JzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdBbGduZSBncnVwcCB1dXRlbGUga2FzdXRhamF0ZWxlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU2VhZGV0ZSBtdXV0bWlzZSBNYWxsJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXJvb2xpZCBlaSBrYXR0dSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdFYmFzb2JpdiBLYXN1dGFqYW5pbWknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnRWJhc29iaXYgU2FsYXMmb3RpbGRlO25hJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnTXV1ZGEgS2FzdXRhamF0JzsKJGxhbmdbJ3ZhbGlkJ10gPSAnS2VodGl2JzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YWF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnU2VlIGthc3V0YWphIGVpIGt1dWx1ICZ1dW1sO2h0ZWdpIGdydXBwaSc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnT21hZHVzaSBlaSBvbGUnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICcmVXVtbDtyaXRhIGltcG9ydGlkYSBkdXBsaWthYXRvbWFkdXNpJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhdW1sOyZhdW1sO3J0dXMnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cGlkJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdPbWFkdXNlZCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ09tYWR1c2UgTmltaSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdPbWFkdXNlIFYmYXVtbDsmYXVtbDtydHVzJzsKJGxhbmdbJ2FkZCddID0gJ0xpc2EnOwokbGFuZ1snaGlzdG9yeSddID0gJ0FqYWx1Z3UnOwokbGFuZ1snZWRpdCddID0gJ011dWRhJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdBZWd1Yic7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdUJmF1bWw7cHN1c3RhIGt1dXAmYXVtbDtldmFnYSc7CiRsYW5nWycxMmhycyddID0gJzEyIFR1bmRpJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgVHVuZGknOwokbGFuZ1snNDhocnMnXSA9ICc0OCBUdW5kaSc7CiRsYW5nWycxd2VlayddID0gJzEgTiZhdW1sO2RhbCc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIE4mYXVtbDtkYWxhdCc7CiRsYW5nWycxbW9udGgnXSA9ICcxIEt1dSc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBLdXVkJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IEt1dWQnOwokbGFuZ1snMXllYXInXSA9ICcxIEFhc3RhJzsKJGxhbmdbJ25ldmVyJ10gPSAnTWl0dGUgS3VuYWdpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vb2R1bCBpbnN0YWxsZWVyaXR1ZC48YnIvPk0mYXVtbDsmYXVtbDtyYSBraW5kbGFzdGkgayZvdGlsZGU7aWtpZGVsZSBhc2phZ2Egc2VvdHVkIGthc3V0YWphdGVsZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsgJm90aWxkZTtpZ3VzLic7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhcm9vbCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1Bhcm9vbCB1dWVzdGknOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1NlbGxpc2UgbmltZWdhIGdydXBwIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTXV1ZGEgR3J1cHBpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NhbHZlc3RhJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1QmdXVtbDtoaXN0YSc7CiRsYW5nWydkZWxldGUnXSA9ICdLdXN0dXRhJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnT2xlZCBzYSBraW5kZWwsIGV0IG5lZWQgb24gc2VsbGUgZ3J1cGkgamFva3Mga29ycmVrdHNlZCBzZWFkZWQ/XG5PbWFkdXNlIHYmYXVtbDtsamEgbCZ1dW1sO2xpdGFtaW5lIGVpIGt1c3R1dGEgJnV1bWw7aHRlZ2kgc2lzc2VrYW5uZXQgc2VsbGUgZ3J1cGkva2FzdXRhamEgb21hZHVzdGUgdGFiZWxpcy4gTmVpZCBlaSBzYWEgbGlodHNhbHQga2FzdXRhZGEuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdPbGVkIGtpbmRlbCwgZXQgc29vdmlkIHNlZGEgZ3J1cHBpIGt1c3R1dGFkYT8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ09sZWQga2luZGVsLCBldCBzb292aWQgc2VsbGUgb21hZHVzZSBsJm90aWxkZTtwbGlrdWx0IGt1c3R1dGFkYT9cblNlbGxlZ2Ega2Fhc25lYiBrJm90aWxkZTtpa2lkZSBrYXN1dGFqYXRlIHNlbGxlIG9tYWR1c2Uga3VzdHV0YW1pbmUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ViYXBpaXNhdmFkIHBhcmFtZWV0cmlkJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVlbSBvbWFkdXNlIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlZW0gZ3J1cGkgc2Vvc2UgbGlzYW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZWVtIGdydXBpIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZWVtIGthc3V0YWphIGdydXBwaSBsaXNhbWlzZWwnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZWVtIG9tYWR1c2Uga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRWkgbGVpZG51ZCBlLW1haWxpIGFhZHJlc3NpJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdQdXVkdXZhZCBraXJqdXRhbWlzZSAmb3RpbGRlO2lndXNlZCBzaWh0a2F0YWxvb2dpbGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1ZpZ2FzZWQgUGFyYW1lZXRyaWQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdFaSBsZWlkbnVkICZ1dW1sO2h0ZWdpIGdydXBwaSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1V1ZW5kYSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmVlcmknOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0thc3V0YWphbmltaSB2YWJhcyB2b3JtaXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cGkgTmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdMaWdpcCZhdW1sOyZhdW1sO3Mga2VlbGF0dWQnOwokbGFuZ1snZXJyb3InXSA9ICdWaWdhJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTGlzYSBHcnVwcCc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9yZGkgR3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0xpc2EgS2FzdXRhamEnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0FudHVkIGtyaXRlZXJpdW1pbGUgdmFzdGF2KGF0KSBrYXN1dGFqYSh0KSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVmFsaSBHcnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyZWVyaW1pc2UgTWFsbCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdWJmF1bWw7bGphbG9naW1pc2UgTWFsbCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ1Npc3NlbG9naW1pc2UgTWFsbCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0VlbGlzdHVzZWQnOwokbGFuZ1sndXNlcnMnXSA9ICdLYXN1dGFqYWQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ21lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdMdWJhIGthc3V0YWphdGVsIG9tYSBzYWlkaSBlZXNsaWl0ZWwgc2lzc2UgbG9naWRhJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdBbGduZSBlc2lsZWh0JzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdWaWltYXRpIHZhYWRhdHVkIGxlaHQnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnTXV1IGxlaHQ6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2lzZXN0YSB0ZWtzdCBwaWxkaWx0JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/eu_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3JlYWRvbmx5J10gPSAnSXJha3VydHpla28gc29pbGlrJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ2dvdXQnXSA9ICdBZG1pbmlzdHJhdHphaWxlYWsgc2Fpb3RpayBib3RhIGR1JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTYWlvYSBoYXNpdGEgZHV0ZW4gZXJhYmlsdHphaWxlYWsgZXJha3V0c2knOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0VyYWJpbHR6YWlsZWEgc2Fpb3RpayBhdGVyYSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdFcmFiaWx0emFpbGVhcmVuIFByb3BpZXRhdGVhayc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0VyYWJpbHR6YWlsZWFyZW4gSGlzdG9yaWFsYSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhdHUnOwokbGFuZ1snY2xlYXInXSA9ICdHYXJiaXR1JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGF0dSBFcmFiaWx0emFpbGUgSGlzdG9yaWFsYSBBU0NJSSBmb3JtYXR1cmEnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdHYXJiaXR1IEVyYWJpbHR6YWlsZSBIaXN0b3JpYWxhcmVuIGVycmVnaXN0cm9hayc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnRXJhYmlsdHphaWxlIEhpc3RvcmlhbGFyZW4gTWFudGVudWEnOwokbGFuZ1sneWVzJ10gPSAnQmFpJzsKJGxhbmdbJ25vJ10gPSAnRXonOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTXVnYXJpayBnYWJlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ09yZHViZXRla29hJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NlaSBvcmR1dGFrb2EnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnSGFtYWJpIG9yZHV0YWtvYSc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VndW4gYmF0ZWtvYSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdBc3RlYmV0ZWtvYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnQmkgQXN0ZXRha29hJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdIaWxhYmV0ZWtvYSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnSGlydSBIaWxhYmV0ZXRha29hJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VpIEhpbGFiZXRldGFrb2EnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVXJ0ZWJldGFrb2EnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnVGFsZGVrYWtldGEgZXRhIFNhaWxrYWtldGEnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0JpbGFrZXRhLWlyaXpwaWRlYSBiZXRldHplbiBkdXRlbiBlcnJlZ2lzdHJvYWsnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdFcmFiaWx0emFpbGUtaXplbmEgYmVoZXJhbnprYSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnRXJhYmlsdHphaWxlLWl6ZW5hIGdvcmFuemthJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnRGF0YSBnb3JhbnprYSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdHZXJ0YWVyYS1tb3RhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdHZXJ0YWVyYS1tb3RhIGdvcmFuemthJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0lQIGhlbGJpZGVhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdJUCBoZWxiaWRlYSBnb3JhbnprYSc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnRXogZGEgSGlzdG9yaWFsaWsgdG9wYXR1JzsKJGxhbmdbJ3Jlc2V0J10gPSAnQmVycmV6YXJyaSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdJUCBoZWxiaWRlYXJlbiBhcmFiZXJhIFRhbGRla2F0dSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0dlcnRhZXJhLW1vdGEgaXJhZ2F6a2lhJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0hhdSBiYWlubyBndXR4aWFnbyBkaXJlbiBnZXJ0YWVyYWsgYmFrYXJyaWsgZXJha3V0c2k6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdPcnJpYWxkZS1tdWdhJzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0VyYWJpbHR6YWlsZSBIaXN0b3JpYWxhcmVuIFR4b3N0ZW5hJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdFemV6YWd1bmEnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEhlbGJpZGVhJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdHZXJ0YWVyYS1tb3RhJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnSXR6dWxpJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdJbnBvcnRhc2lvLWVyYWdpa2V0YSBBbWFpdHV0YSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdQcm96ZXNhdHVyaWtvIGxlcnJvYWsnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9yZWFrIGF1cmtpdHUgZGlyYSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnRXJyZWdpc3RydWFrIGdlaGl0dXRhJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnRXppbiBpemFuIGRhIFNNVFAgemVyYml0emFyaXRpayBlcmFudHp1bmlrIGphc28nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRXppbiBpemFuIGRhIGFkaWVyYXppdGFrbyBmaXR4YXRlZ2lhICglcykgdG9wYXR1JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0ZpZWxkICVzIGV4Y2VlZHMgbWF4aW11bSBsZW5ndGgnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgRXJyb3IgKGxpbmUgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnQ291bGQgbm90IGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbnMgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnQgVXNlcnMgSW50byBUaGlzIEdyb3VwJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnQSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyByZXN1bHRzIHJldHVybmVkIGZyb20gY3N2IGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5ndGggb2YgdXNlcm5hbWUgZmllbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHBhc3N3b3JkIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IHBhc3N3b3JkIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggdXNlcm5hbWUgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW52YWxpZCBFbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2UgY291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXNlciBBZGRlZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ1VzZXIgRGVsZXRlZCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wZXJ0eSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsdWUgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsIGFkZHJlc3MgYWxyZWFkeSB1c2VkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQWxsb3cgZHVwbGljYXRlIGVtYWlscyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydCc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdCBQcm9wZXJ0eSc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdCByZXN1bHRzIHRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRWl0aGVyIHlvdXJzZWxmIG9yIHNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSB0cmlnZ2VyZWQgYSBwYXNzd29yZCByZXNldCBvcGVyYXRpb24gZm9yIHRoaXMgYWNjb3VudC4gIENoZWNrIHlvdXIgZW1haWwsIHlvdSBtYXkgaGF2ZSBmdXJ0aGVyIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZCBpbiB5b3VyIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBlcnJvcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiBnZW5lcmF0ZWQgcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzbiYjMDM5O3QgdGhlIGNvZGUgaXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQ2xpY2tpbmcgb24gdGhlIGZvbGxvd2luZyBsaW5rIHdpbGwgdGFrZSB5b3UgdG8gdGhlIHdlYnNpdGUgd2hlcmUgeW91IGNhbiBlbnRlciB0aGUgYWJvdmUgY29kZSwgYW5kIHJlc2V0IHlvdXIgcGFzc3dvcmQ6JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdMb3N0IFBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIENNU01haWxlciBtb2R1bGUnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnQW4gZW1haWwgaGFzIGJlZW4gc2VudCB0byAlcyB3aXRoIGluc3RydWN0aW9ucyBhcyB0byBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZC4gIFRoYW5rIHlvdSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NvIHlvdSBmb3Jnb3Qgb3IgbG9zdCB5b3VyIHBhc3N3b3JkLiBXZWxsLCB0eXBlIHlvdXIgdXNlcm5hbWUgaW4gaGVyZSwgYW5kIGlmIHdlIGNhbiBmaW5kIHlvdSB3ZSB3aWxsIHNlbmQgeW91IGFuIGVtYWlsIHdpdGggaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCBpdCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ0ZvcmdvdCBQYXNzd29yZCBUZW1wbGF0ZXMnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGlvbic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RoaXMgYWNjb3VudCBoYXMgZXhwaXJlZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnSW1wcm9wZXIgZW1haWwgYWRkcmVzcyBmb3JtYXR0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnSW52YWxpZCBleHBpcnkgZGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0ludmFsaWQgZ3JvdXAgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCBGaWVsZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dGFyZWEnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dlbGNvbWUnOwokbGFuZ1snbG9nb3V0J10gPSAnU2lnbiBvdXQnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnQ2hhbmdlIE15IFNldHRpbmdzJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFpbGVkIC0gSW52YWxpZCB1c2VybmFtZSBvciBwYXNzd29yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdTaWduIGluJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnU2lnbiBpbiBidXR0b24gbGFiZWwnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3Rlcic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ0ZvcmdvdCBZb3VyIFBhc3N3b3JkPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ0RlZmF1bHRzJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnVXNlciBJRCBub3QgZm91bmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgKCVzKSBpcyBhbHJlYWR5IGluIHVzZSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNlIFNNVFAgdG8gdmFsaWRhdGUgZW1haWwgYWRkcmVzc2VzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNlY29uZHMpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2UgY29va2llcyB0byBrZWVwIGxvZ2lucyBhbGl2ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0FsbG93IEVtYWlsIFJlZ2lzdHJhdGlvbic7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnRGVmYXVsdCBHcm91cCBmb3IgbmV3IHVzZXJzJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2hhbmdlIFNldHRpbmdzIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXNzd29yZHMgRG8gbm90IG1hdGNoJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0ludmFsaWQgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnSW52YWxpZCBQYXNzd29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbHVlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dyb3Vwcyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcGVydGllcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ1Byb3BlcnR5IE5hbWUnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnUHJvcGVydHkgVmFsdWUnOwokbGFuZ1snYWRkJ10gPSAnQWRkJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3J5JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZnkgRGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvdXJzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG91cnMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Vycyc7CiRsYW5nWycxd2VlayddID0gJzEgV2Vlayc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFdlZWtzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTW9udGgnOwokbGFuZ1snM21vbnRocyddID0gJzMgTW9udGhzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IE1vbnRocyc7CiRsYW5nWycxeWVhciddID0gJzEgWWVhcic7CiRsYW5nWyduZXZlciddID0gJ05ldmVyJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0FnYWluJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdHcm91cCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdCBHcm91cCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdvcnVwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0ludmFsaWQgUGFyYW1ldGVycyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ1ZpZXcnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgVXNlcklEIENvbHVtbiBvbiBJbXBvcnQnOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnQWR2YW5jZWQgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ1NwZWNpZnkgdGhlIG51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSBhbiBpbmFjdGl2ZSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dCBvZiB0aGUgd2Vic2l0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdVc2VyIEV4cGlyeSBJbnRlcnZhbCc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnU3BlY2lmeSBhIHZhbHVlIChpbiBzZWNvbmRzKSB0aGF0IGluZGljYXRlcyBob3cgb2Z0ZW4gdGhlIHN5c3RlbSBzaG91bGQgZm9yY2UgdXNlcnMgd2hvcyBzZXNzaW9uIGhhcyBleHBpcmVkIHRvIGJlIGxvZ2dlZCBvdXQuICBUJnF1b3Q7aGlzIGlzIGFuIG9wdGltaXphdGlvbiB0byBzYXZlIGRhdGFiYXNlIHF1ZXJpZXMuICBJZiBsZWZ0IGVtcHR5IG9yIHNldCB0byAwIGV4cGlyeSB3aWxsIGJlIHBlcmZvcm1lZCBvbiBldmVyeSByZXF1ZXN0Lic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnQXNldHVrc2VzaSBvbiBwJmF1bWw7aXZpdGV0dHkgb25uaXN0dW5lZXN0aSc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdGb3JjZSB1c2VycyB0byBsb2dvdXQgYXQgcmVndWxhciBpbnRlcnZhbHMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGltZXMgZm9yIGZvcmNlZCBsb2dvdXQnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiB0aW1lcyBsaWtlIEhIOk1NLEhIOk1NIHdoZXJlIHVzZXJzIHdpbGwgYmUgZm9yY2libHkgbG9nZ2VkIG91dC4gTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0V4Y2x1ZGUgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIDxlbT4obWludXRlcyk8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdJZiBzcGVjaWZpZWQsIGFueSB1c2VycyB0aGF0IGhhdmUgYmVlbiBhY3RpdmUgaW4gdGhpcyBudW1iZXIgb2Ygc2Vjb25kcyB3aWxsIG5vdCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ1RoZSB1cGxvYWRlZCBmaWxlIGRvZXMgbm90IG1hdGNoIHRoZSBsaXN0IG9mIGFsbG93ZWQgZmlsZSB0eXBlcyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBoYXMgYmVlbiBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0lmIGVuYWJsZWQsIHRoaXMgbW9kdWxlIHdpbGwgbGlzdGVuIHRvIGV2ZW50cyBmcm9tIHRoZSBFY29tbWVyY2Ugc3VpdGUuICBUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgaGF2ZSBlZmZlY3QgaWYgdGhpcyBzZXR0aW5nIGlzIGVuYWJsZWQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTGlzdGVuIHRvIE9yZGVyIEV2ZW50cyc7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgYXBwbHkgaWYgdXNpbmcgc2VsZiByZWdpc3RyYXRpb24gYW5kIGFsbG93aW5nIGZvciBwYWlkIHJlZ2lzdHJhdGlvbic7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ0RlbGV0ZSBVc2VyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnRXhwaXJlIFVzZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgY2FuY2VsbGVkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBkZWxldGVkJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0Vjb21tZXJjZSBTZXR0aW5ncyc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1NlY3VyZSBGaWVsZCBNYXJrZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ1NlY3VyZSBGaWVsZCBDb2xvcic7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1N0b3JlIHRoaXMgZGF0YSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnSWYgYSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgYnkgYW4gZXh0ZXJuYWwgYXV0aGVudGljYXRpb24gbW9kdWxlIGJ1dCBpcyBub3Qga25vd24gaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHNob3VsZCBhbiBGRVUgYWNjb3VudCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHk/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYWxseSBDcmVhdGUgVW5rbm93biBVc2Vycyc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnRGlzcGxheSBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBhcmUgb25seSBhcHBsaWNhYmxlIGlmIHVzaW5nIHRoZSAmcXVvdDtCdWlsdGluIEF1dGhlbnRpY2F0aW9uJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIHJlcXVlc3QgbG9zdCBsb2dpbiBpbmZvcm1hdGlvbiwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gYSBwYXNzd29yZCByZXNldCwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgdGhlaXIgdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIGNoYW5nZSc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0b3JzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0IG9uZSBvciBtb3JlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoaXMgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnQSBncm91cCBtdXN0IGJlIHNlbGVjdGVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IFllYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmQgWWVhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUaHVtYm5haWwgU2l6ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSBzZWxlY3RlZCB1c2Vycz8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9udGhzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQcm9wZXJ0eSBTZXR0aW5ncyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1JlZGlyZWN0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaW9uIGFuZCBDb29raWUgU2V0dGluZ3MnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGaWVsZCBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdUaGUgbG9zdHVzZXJuYW1lIGZsYWcgY2FuIG9ubHkgYmUgdXNlZCBvbiByZXF1aXJlZCBmaWVsZHMnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoaXMgdXNlcyB0aGUgbWNyeXB0IGZ1bmN0aW9ucyBmb3IgZW5jcnlwdGlvbiBwdXJwb3NlcywgYW5kIHRoZXkgY291bGQgbm90IGJlIGRldGVjdGVkIG9uIHlvdXIgaW5zdGFsbC4gICBQbGVhc2UgY29udGFjdCB5b3VyIHNlcnZlciBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdFZGl0aW5nIFVzZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnUGFpbmEgdCZhdW1sO3N0JmF1bWw7LCBqb3MgZXQgbXVpc3RhIGtpcmphdXR1bWlzdGlldG9qYXNpJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdQYWluYSB0JmF1bWw7c3QmYXVtbDssIGpvcyBldCBtdWlzdGEgc2FsYXNhbmFhc2knOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdLbGlra2FhIGtpcmphdXR1YWtzZXNpIHVsb3MnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ1BhaW5hIHQmYXVtbDtzdCZhdW1sOyBtdW9rYXRha3Nlc2kgc2FsYXNhbmFhc2kgdGFpIG11aXRhIHRpZXRvamFzaSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ04mYXVtbDt5dCZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyAtcG9oamEnOwokbGFuZ1snZXZlbnQnXSA9ICdUYXBhaHR1bWEnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVS10YXBhaHR1bWFodW9tYXV0dXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnSWxtb2l0dXN2aWVzdGllbiBrb2hkZW9zb2l0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnSWxtb2l0dXN2aWVzdGllbiBwb2hqYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdJbG1vaXR1c3ZpZXN0aWVuIGFpaGUgKFN1YmplY3QpJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnUyZhdW1sO2hrJm91bWw7cG9zdGktaWxtb2l0dWtzZXQnOwokbGFuZ1snT25Mb2dpbiddID0gJ1NpcyZhdW1sOyZhdW1sO25raXJqYXV0dWVzc2EnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdVbG9za2lyamF1dHVlc3NhJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0lzdHVubm9uIHZhbmhldGVzc2EnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7IGx1b2Rlc3NhJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0smYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBwb2lzdGV0dGFlc3NhJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBhc2V0dWtzaWVuIG11dXR0dWVzc2EnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0x1b3RhZXNzYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3J5aG0mYXVtbDsnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ1BvaXN0ZXR0YWVzc2EgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtyeWhtJmF1bWw7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnJnF1b3Q7S2Fkb25uZWV0IGtpcmphdXR1bWlzdGllZG90JnF1b3Q7LXRvaW1pbm5hbGxpc3V1cyBvbiBvbm5pc3R1bmVlc3RpIHN1b3JpdGV0dHUuIEwmb3VtbDt5ZGV0dGlpbiB1bmlpa2tpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzLCBqb2thIHZhc3RhYSBhbnRhbWlhc2kgdGlldG9qYS4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VzaSBvbic7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdTdW9zaXR0ZWxlbW1lIGtpcmphYW1hYW4gdCZhdW1sO20mYXVtbDtuIHRpZWRvbiB5bCZvdW1sO3MgdHVydmFsbGlzZWVuLCBtdXR0YSBzYWF0YXZpbGxhIG9sZXZhYW4gc2lqYWludGlpbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcywgam9ubmUgc2lpcnJ5dCZhdW1sOyZhdW1sO24gYXNldHVzdGVuIG11dXRva3NlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIGtvb2RpbiB2YXJtZW5udWtzZW4gaiZhdW1sO2xrZWVuIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdLYWRvbm51dCBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBwb2hqYSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0thZG9ubnV0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIHZhcm1lbm51cyBwb2hqYSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ1ZpcmhlOiBFbmVtbSZhdW1sO24ga3VpbiB5a3NpIHRpbGkgbCZvdW1sO3l0eWkgb21pbmFpc3V1a3NpbGxhJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ1ZpcmhlOiBLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyZhdW1sOyBlaSBsJm91bWw7eXR5bnl0IG4mYXVtbDtpbGwmYXVtbDsgZWhkb2lsbGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ1ZpcmhlOiBSeWhtJmF1bWw7JmF1bWw7IGVpIGwmb3VtbDt5dHlueXQnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdWYWluIGx1a3UnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0smYXVtbDt5dHQmYXVtbDtqaWVuIG11b2trYXVzbHVva2thJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ1lsbCZhdW1sO3BpdCZhdW1sO2omYXVtbDsga2lyamFzaSB1bG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOJmF1bWw7eXQmYXVtbDsgdmFpbiBraXJqYXV0dW5lZXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdLaXJqYWEgdCZhdW1sO20mYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDsgdWxvcyc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gb21pbmFpc3V1ZGV0JzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGhpc3RvcmlhJzsKJGxhbmdbJ2V4cG9ydCddID0gJ1ZpZSc7CiRsYW5nWydjbGVhciddID0gJ1R5aGplbm4mYXVtbDsnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnVmllIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWEgQVNDSUktbXVvZG9zc2Egam9rYSBvbiB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24nOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdUeWhqZW5uJmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWEgam9rYSBvbiB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24nOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnVW5vaGRpdGtvIHR1bm51a3NlbiB0YWkgc2FsYXNhbmFuPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdWaWUgcnlobSZhdW1sO20mYXVtbDsmYXVtbDtyaXR5a3NldCBYTUwtbXVvZG9zc2EnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWFuIGhhbGxpbnRhJzsKJGxhbmdbJ3llcyddID0gJ0t5bGwmYXVtbDsnOwokbGFuZ1snbm8nXSA9ICdFaSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICcvJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEVpIHJham9pdHVzdGEgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnVHVubmluIHZhbmhhJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ0t1dXNpIHR1bnRpYSB2YW5oYSc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdLYWtzaXRvaXN0YSB0dW50aWEgdmFuaGEnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdQJmF1bWw7aXYmYXVtbDtuIHZhbmhhJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1ZpaWtvbiB2YW5oYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnS2Frc2kgdmlpa2tvYSB2YW5oYSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnS3V1a2F1ZGVuIHZhbmhhJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdLb2xtZSBrdXVrYXV0dGEgdmFuaGEnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdLdXVzaSBrdXVrYXV0dGEgdmFuaGEnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVnVvZGVuIHZhbmhhJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ1J5aG1pdHRlbHkgamEgaiZhdW1sO3JqZXN0eXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0hha3VlaHRvamEgdmFzdGFhdmF0IG1lcmtpbm4mYXVtbDt0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgbGFza2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgbm91c2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnUCZhdW1sO2l2JmF1bWw7bSZhdW1sOyZhdW1sO3ImYXVtbDsgbGFza2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdQJmF1bWw7aXYmYXVtbDttJmF1bWw7JmF1bWw7ciZhdW1sOyBub3VzZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RhcGFodHVtYW4gdHl5cHBpIGxhc2tldmEnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUYXBhaHR1bWFuIHR5eXBwaSBub3VzZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0lQLW9zb2l0ZSBsYXNrZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSVAtb3NvaXRlIG5vdXNldmEnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0VpIGhpc3RvcmlhYSc7CiRsYW5nWydyZXNldCddID0gJ05vbGxhYSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdSeWhtaXR0ZWxlIElQLW9zb2l0dGVlbiBtdWthYW4nOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdUYXBhaHR1bWF0eXlwcGlzdW9kYXR1cyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdOJmF1bWw7eXQmYXVtbDsgdmFpbiB0YXBhaHR1bWF0IGpvdGthIG92YXQ6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTaXZ1cmFqb2l0dXMnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtoaXN0b3JpYXJhcG9ydHRpJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdUdW50ZW1hdG9uJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1Pc29pdGUnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1RhcGFodHVtYW4gdHl5cHBpJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnUCZhdW1sO2l2JmF1bWw7JzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdQYWxhYSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnVHVvbnRpIG9ubmlzdHVpJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1JpdmkmYXVtbDsgayZhdW1sO3NpdGVsdHknOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1ZpcmhlaXQmYXVtbDsgbCZvdW1sO3l0eWknOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ01lcmtpbnQmYXVtbDsmYXVtbDsgbGlzJmF1bWw7dHR5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdSeWhtJmF1bWw7bGxlICVzIGVpIGwmb3VtbDt5dHlueXQgb21pbmFpc3V1a3NpYSc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ1NNVFAtc2VydmVyaWluIGVpIHNhYXR1IHlodGV5dHQmYXVtbDsnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnVGllZG9zdG9hICglcykgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVmlyaGVlbGxpbmVuIGFydm8ga2VudCZhdW1sO3NzJmF1bWw7ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnS2VudCZhdW1sO3NzJmF1bWw7ICVzIGxpaWFuIHBpdGsmYXVtbDsgYXJ2byc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ1R1b250aXZpcmhlIChyaXZpICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0VpIHZvaXR1IGxhZGF0YSBvbWluYWlzdXVzdGlldG9qYSAoU2lzJmF1bWw7aW5lbiB2aXJoZSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnT25nZWxtYSBhc2V0ZXR0YWVzc2EgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIHRpZXRvamEnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ1ZhYWRpdHVsbGUga2VudCZhdW1sO2xsZSAlcyBlaSBsJm91bWw7eXR5bnl0IHNhcmFrZXR0YSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ1J5aG0mYXVtbDtsbGUgZWkgbCZvdW1sO3lkeSBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdUdW9udGl0aWVkb3N0b24gbXVvdG8gb24gdiZhdW1sOyZhdW1sO3ImYXVtbDsnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ1RpZWRvc3RvYSBlaSB2b2l0dSBhdmF0YSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnVHVvIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCByeWhtJmF1bWw7JmF1bWw7bic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdDU1YtdGllZG9zdG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdYTUwtdGllZG9zdG8nOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnVmllIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdUdW8gayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1R5aGplbm4mYXVtbDsnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdLdXZhbiBrb2hkZXBvbGt1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnSGF2YWl0dGlpbiBvbmdlbG1hIHB1dXR0dXZhbiAoamEgdmFhZGl0dW4pIHVwbG9hZGluIGthbnNzYSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnWE1MLXRpZWRvc3RvYSBlaSB2b2l0dSBsdWtlYSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnRWkgdm9pZGEgdHVob3RhIHJ5aG0mYXVtbDsmYXVtbDsgam9zc2Egb24gdmllbGEgayZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBvbiBqbyBraXJqYXV0dW5lZW5hJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0t1dmFzc2Egb2xldmEgdGVrc3RpIGVpIG9sZSBzeSZvdW1sO3RldHR5IG9pa2Vpbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnU2FsbGkgayZhdW1sO3l0dCZhdW1sO2ppZW4ga2lyamF1dHVhIHVzZWFtbWFuIGtlcnJhbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnS3V2aWVuIHRpZWRvc3RvcCZhdW1sOyZhdW1sO3R0ZWV0IGpvaXRhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCBzYWF2YXQgbGFkYXRhJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGtpcmphdXR1dSBqJmF1bWw7cmplc3RlbG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDsga2lyamF1dHV1IHVsb3MgaiZhdW1sO3JqZXN0ZWxtJmF1bWw7c3QmYXVtbDsnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGlzdHVudG8gdmFuaGVuZWUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gdXVzaSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBsdW9kYWFuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phIHAmYXVtbDtpdml0ZXQmYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWxpIHBvaXN0ZXRhYW4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIHJ5aG0mYXVtbDsgbHVvZGFhbic7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdTdW9yaXRldGFhbiBrdW4gcnlobSZhdW1sOyBwb2lzdGV0YWFuJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogU2V1cmFhdmlhIG1ha3JvamEgdm9pZGFhbiBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7OiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnQ1NWIGV4cG9ydCBlaSBwYWxhdXR0YW51dCB0dWxva3NpYSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51c2tlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdTYWxhc2FuYWtlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluaW1pLS9NYWtzaW1pLXBpdHV1ZGV0IHNhbGFzYW5hbGxlIG92YXQgdmlyaGVlbGxpc2V0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW5pbWktL01ha3NpbWktcGl0dXVkZXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZWxsZSBvdmF0IHZpcmhlZWxsaXNldCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnVmlyaGVlbGxpbmVuIGVtYWlsLW9zb2l0ZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1RpbGlsbGUgZWkgbCZvdW1sO3l0eW55dCBlbWFpbC1vc29pdGV0dGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIG9taW5haXN1dWtzaWEnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGxpcyZhdW1sO3R0eSAlcz0lcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBwb2lzdGV0dHUgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnT21pbmFpc3V1cyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnQXJ2byAocmVxdWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm9pdHVzOiBOJmF1bWw7bSZhdW1sOyBrZW50JmF1bWw7dCB2YWlrdXR0YXZhdCBzeSZvdW1sO3R0Jm91bWw7a2VudHRpZW4ga29rb29uLiBBcnZvamVuIHBpZW5lbnQmYXVtbDttaW5lbiBlaSBvbGUgc3Vvc2l0ZWx0YXZhYSBrJmF1bWw7eXR0Jm91bWw7c3MmYXVtbDsgb2xldmFsbGEgc2l2dXN0b2xsYSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnSGFsdWF0a28gdmFybWFzdGkgbXVva2F0YSBtb2R1bGluIGFzZXR1a3NpYSc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgb3NvaXRlIG9uIGpvIGsmYXVtbDt5dCZvdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsga2lyamF1dHVtaXN0aWV0b2plbiB0YWxsZW5udWtzZWVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnS2Vrc2luIG5pbWknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdTYWxsaSB0dXBsYS1lbWFpbGl0JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ1MmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRlIG9uIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7bmltaSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdZcml0JmF1bWw7IHBpdCZhdW1sOyZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7amllbiBraXJqYXV0dW1pbmVuIGFrdGlpdmlzZW5hIGtla3NpbGwmYXVtbDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnU2FsbGkgdXNlaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUgc2FtYSBlbWFpbC1vc29pdGUnOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSB1c2VhdCAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFzaSZxdW90OyB2aWVzdGl0Pyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSBrJmF1bWw7eXR0JmF1bWw7amllbiBweXl0JmF1bWw7JmF1bWw7IHNhbGFzYW5hIHV1ZGVzdGFhbiB2YWlra2EgZWRlbGxpc2VlbiBrdXRzdXVuIGVpIG9sZSB2aWVsJmF1bWw7IHJlYWdvaXR1JzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnSyZhdW1sO3l0JmF1bWw7IEZyb250LWVuZCBVc2VyIHNwZWNpZmljaSZhdW1sOyBvaWtldWtzaWEnOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0VpIHZvaXR1IGF2YXRhIGxhZGF0dHVhIHRpZWRvc3RvYSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0xhZGF0dXNzYSB0aWVkb3N0b3NzYSBvbiBoYXZhaXR0dSBvbmdlbG1hLCBvbGUgaHl2JmF1bWw7IGphIHlyaXQmYXVtbDsgdXVkZWxsZWVuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ0V0IHN5Jm91bWw7dHQmYXVtbDtueXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXN0YSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdFdCBzeSZvdW1sO3R0JmF1bWw7bnl0IHMmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRldHRhc2knOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnRXQgc3kmb3VtbDt0dCZhdW1sO255dCBzYWxhc2FuYWEnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0tpcmphdWR1IHVsb3MnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnS2lyamF1ZHUgc2lzJmF1bWw7JmF1bWw7bic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9XCZxdW90O3JlZFwmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVCZhdW1sO20mYXVtbDsgdG9pbWludG8gZWkgdG9pbWkgV2luZG93cy15bXAmYXVtbDtyaXN0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJyZBdW1sO0wmQXVtbDsgbHVvIG9taW5haXN1dXR0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbGxlIHRhaSBzYWxhc2FuYWxsZSwgbiZhdW1sO20mYXVtbDsga2VudCZhdW1sO3QgbHVvZGFhbiBhaW5hIGF1dG9tYWF0dGlzZXN0aS4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ1ZpZSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QgQ1NWLXRpZWRvc3Rvb24nOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnVmllJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ1R1byc7CiRsYW5nWydhZG1pbiddID0gJ0hhbGxpbm5vaSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ011b2trYWEgb21pbmFpc3V1dHRhJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3NpbWkgcGl0dXVzJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdMdW90dSc7CiRsYW5nWydzb3J0YnknXSA9ICdKJmF1bWw7cmplc3QmYXVtbDsnOwokbGFuZ1snc29ydCddID0gJ0omYXVtbDtyamVzdHlzJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCB2YWxpdHVzc2EgcnlobSZhdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ04mYXVtbDt5dCZhdW1sOyByaXZpJmF1bWw7Oic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSBlaSBsJm91bWw7eWRldHR5IGVtYWlsIGtlbnR0JmF1bWw7JmF1bWw7LiBPdGEgeWh0ZXR0JmF1bWw7IHdlYm1hc3Rlcmlpbic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyAmcXVvdDt1bm9odHVudXQgc2FsYXNhbmEmcXVvdDsgLWxvbWFra2VlbGxlJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzICZxdW90O211dXRhIGFzZXR1a3NpYSZxdW90OyAtbG9tYWtrZWVsbGUnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgam9rYSBuJmF1bWw7eXRldCZhdW1sOyZhdW1sO24ga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGpva2EgbiZhdW1sO3l0ZXQmYXVtbDsmYXVtbDtuIHVsb3Mga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnSiZhdW1sO3JqZXN0eXMnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnSm9pdGFpbiBrJmF1bWw7eXR0JmF1bWw7amkmYXVtbDsgb24gdCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgcmVzZXRvaW1hc3NhIHNhbGFzYW5vamFhbi4gVCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgbiZhdW1sO2l0JmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBvdmF0OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQb2lzdGEga2Fpa2tpIHlsaSB2aWlrb24gdmFuaGF0IG1lcmtpbm4mYXVtbDt0JzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BvaXN0YSBrYWlra2kgeWxpIGt1dWthdWRlbiB2YW5oYXQgbWVya2lubiZhdW1sO3QnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUG9pc3RhIGthaWtraSBtZXJraW5uJmF1bWw7dCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnT2xldGtvIHZhcm1hPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1ZpcmhlZWxsaW5lbiBrb29kaSwgb2xlIGh5diZhdW1sOyBqYSB5cml0JmF1bWw7IHV1ZGVsbGVlbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnViZhdW1sO2xpYWlrYWlzdGEga29vZGlhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VsbGUgZWkgbCZvdW1sO3l0eW55dCB0aWV0b2thbm5hc3RhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnUG9oamEgdmFodmlzdHVzbG9tYWtrZWVsbGUnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1BvaGphICZxdW90O3Vub2h0dW51dCBzYWxhc2FuYSZxdW90OyAtcyZhdW1sO2hrJm91bWw7cG9zdGlsbGUnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0pva28gc2luJmF1bWw7IHRhaSBqb2t1IG11dSBvbiBoYWx1bm51dCBub2xsYXRhIHNhbGFzYW5hbiB0JmF1bWw7bGxlIHRpbGlsbGUuIFRhcmtpc3RhIHMmYXVtbDtoayZvdW1sO3Bvc3Rpc2ksIGwmYXVtbDt5ZCZhdW1sO3Qgc2llbHQmYXVtbDsgamF0a28tb2hqZWV0IHNhbGFzYW5hbiBub2xsYWFtaXNlZW4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1RpZXRva2FudGF2aXJoZSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdTYWl0IHQmYXVtbDttJmF1bWw7biB2aWVzdGluIGtvc2thIGpva3Ugb24gdmFsaW5udXQgc2l2dXN0b2x0YSAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFuc2kmcXVvdDsgdG9pbWlubm9uLiBKb3MgdGVpdCB0JmF1bWw7bSZhdW1sO24gdG9pbWlubm9uIGl0c2UgbCZvdW1sO3lkJmF1bWw7dCBvaGplZXQgYWx0YS4gSm9zIGV0IHRpZWQmYXVtbDsgbWlzdCZhdW1sOyBwdWh1dGFhbiB2b2l0IHR1aG90YSB0JmF1bWw7bSZhdW1sO24gcG9zdGluLCBraWl0b2tzaWEgYWphc3Rhc2kuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29vZGknOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnU2V1cmFhdmEga29vZGkgb24gbHVvdHUgc2ludWxsZSwgayZhdW1sO3l0JmF1bWw7IGtvb2RpYSB2YWh2aXN0YWFrc2VzaSBldHQmYXVtbDsgb2xldCB0aWxpbiBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOy4gS3VuIGtsaWtrYWF0IGFsbGEgb2xldmFhIGxpbmtraSZhdW1sOyBzaW51biB0YXJ2aXRzZWUgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB0JmF1bWw7bSZhdW1sOyBrb29kaSBsb21ha2tlZXNlZW4uIFlsZWVucyZhdW1sOyBrZW50dCZhdW1sOyBvbiB2YWxtaWlrc2kgdCZhdW1sO3l0ZXR0eSwgbXV0dGEgam9zIGpvc3RhaW4gc3l5c3QmYXVtbDsgZWkgb2xlIGtvb2Rpc2kgb246JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnVCZhdW1sO20mYXVtbDsgbGlua2tpIHZpZSBzaW51dCBzaXZ1bGxlIGpvbm5lIHZvaXQgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB5bGwmYXVtbDsgbWFpbml0dW4ga29vZGluIGphIG5vbGxhdGEgc2FsYXNhbmFzaSc7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnS2Fkb25udXQgc2FsYXNhbmEnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdFaSB2b2l0dSBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7IENNU01haWxlci1tb2R1dWxpYSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdTaW51bGxlIG9uIGwmYXVtbDtoZXRldHR5IGVtYWlsLW9zb2l0dGVzZWVuICVzIGpvc3NhIG9uIHRpZWRvdCBtaXRlbiB2b2l0IG5vbGxhdGEgc2FsYXNhbmFzaS4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdVbm9oZGl0IHNpaXMgc2FsYXNhbmFzaT8gTm9oLCBraXJqb2l0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3Nlc2kgdCZhdW1sO2gmYXVtbDtuIGphIGwmYXVtbDtoZXQmYXVtbDttbWUgdHVubnVrc2VuIHMmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXR0ZWVzZWVuIHZpZXN0aW4gam9rYSBzaXMmYXVtbDtsdCZhdW1sOyZhdW1sOyBvaGplZXQgc2FsYXNhbmFzaSBub2xsYWFtaXNlZW4uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VW5vaHR1bnV0IHNhbGFzYW5hJnF1b3Q7IC1wb2hqYSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICcmcXVvdDtVbm9odHVudXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMmcXVvdDsgLXBvaGphJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ09taW5haXN1dXR0YSAlcyBlaSBsJm91bWw7eWR5JzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdPbWluYWlzdXVrc2lhIGwmb3VtbDt5dHlueXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0xpcyZhdW1sOyZhdW1sOyBvbWluYWlzdXVzJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdWYWFkaXR0dSBrZW50dCZhdW1sOyAoJXMpIG9uIHR5aGomYXVtbDsnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdTeSZvdW1sO3QmYXVtbDsgdXVzaSBzYWxhc2FuYSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0V0IG9sZSBraXJqYXV0dW51dCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnQXNldHVrc2V0JzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVCZhdW1sO20mYXVtbDsgdGlsbGkgb24gdmFuaGVudHVudXQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0VtYWlsLW9zb2l0dGVlbiBtdW90byBvbiB2JmF1bWw7JmF1bWw7ciZhdW1sOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ1ZpcmhlZWxsaW5lbiB2YW5oZW50dW1pc3AmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnVmlyaGUgYXNldGV0dGFlc3NhIG9taW5haXN1dXR0YSAlcyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ1ZpcmhlZWxsaW5lbiByeWhtJmF1bWw7ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnUGlpbG90ZXR0dSBrZW50dCZhdW1sOyAtbWVya2ludCZhdW1sOyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnUGlpbG90ZXR1biBrZW50JmF1bWw7biB2JmF1bWw7cmknOwokbGFuZ1snaGlkZGVuJ10gPSAnUGlpbG90ZXR0dSc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnU2FtYWxsYSBuaW1lbGwmYXVtbDsgb24gam8gb21pbmFpc3V1cyc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdFaSBvbWluYWlzdXVrc2lhIG0mYXVtbDsmYXVtbDtyaXRlbHR5JzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnVCZhdW1sO2xsZSByeWhtJmF1bWw7bGxlIGVpIG9sZSB2YWxpdHR1amEgb21pbmFpc3V1a3NpYSc7CiRsYW5nWydub2dyb3VwcyddID0gJ0VpIG0mYXVtbDsmYXVtbDtyaXRlbHR5aiZhdW1sOyByeWhtaSZhdW1sOyc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ1J5aG1pJmF1bWw7IGwmb3VtbDt5dHlpJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gdHVsZWUga3V1bHVhIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7biB5aHRlZW4gcnlobSZhdW1sOyZhdW1sO24nOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1ZhYWRpIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7biB5a3NpIHJ5aG0mYXVtbDsgcGVyIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JzsKJGxhbmdbJ2JhY2snXSA9ICdUYWthaXNpbic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgb24gdmFhZGl0dHUga2VudHQmYXVtbDsnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01lcmtpdHNlIHZhYWRpdHV0IGtlbnQmYXVtbDt0IG1lcmtpbGwmYXVtbDsnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnS29yb3N0YSB2YWFkaXR0dWphIGtlbnR0aSZhdW1sOyc7CiRsYW5nWyduZXh0J10gPSAnU2V1cmFhdmEnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdTYW1hbGxhIG5pbWVsbCZhdW1sOyBvbiBqbyByeWhtJmF1bWw7JzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnVmFhZGl0dHUga2VudHQmYXVtbDsnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdWYXBhYWVodG9pbmVuJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnS29rbyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1ha3NpbWkga3V2YW4ga29rbyAobGV2ZXlzIGphIGtvcmtldXMpIHBpa3NlbGVpc3MmYXVtbDsgKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdQaXR1dXMnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oTWVya2tlaiZhdW1sOyB0ZWtzdGkga2VudCZhdW1sO3NzJmF1bWw7KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnQWxhc3ZldG92YWxpa29uIHZhbGlubmF0LCBqb2thaW5lbiBhcnZvIG9tYWxsYSByaXZpbGwmYXVtbDsmYXVtbDtuLiBBcnZvIHZvaWRhYW4gZXJvdHRhYSA9IG1lcmtpbGwmYXVtbDssIGVzaW0gTmFpbmVuPU4NCic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdLZWhvdGUnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXlwcGknOwokbGFuZ1sndHlwZSddID0gJ1R5eXBwaSc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0tlbnQmYXVtbDtuIHRpbGEnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdGknOwokbGFuZ1snY2hlY2tib3gnXSA9ICdWYWxpbnRhbGFhdGlra28nOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNb25pdmFsaW50YSZxdW90O2xpc3RhJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdLdXZhJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwtb3NvaXRlJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGVrc3RpYWx1ZSc7CiRsYW5nWydkcm9wZG93biddID0gJ0FsYXN2ZXRvdmFsaWtrbyc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1RlcnZldHVsb2EnOwokbGFuZ1snbG9nb3V0J10gPSAnS2lyamF1ZHUgdWxvcyc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnSyZhdW1sO3l0JmF1bWw7IHQmYXVtbDt0JmF1bWw7IHJ5aG0mYXVtbDsgbmltZSZhdW1sOyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdBc2V0dWtzZW5pJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnS2lyamF1dHVtaW5lbiBlcCZhdW1sO29ubmlzdHVpIC0gdGFya2lzdGEgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgamEgc2FsYXNhbmEnOwokbGFuZ1snbG9naW4nXSA9ICdLaXJqYXVkdSc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0tpcmphdWR1IHNpcyZhdW1sOyZhdW1sO24gLW5hcGluIG90c2lra28nOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnUyZhdW1sO2hrJm91bWw7cG9zdGlvc29pdGUnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnU2FsYXNhbmEnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNdWlzdGEgbWludXQgdCZhdW1sO2xsJmF1bWw7IHRpZXRva29uZWVsbGEnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWtpc3RlciZvdW1sO2lkeSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1Vub2hkaXRrbyBzYWxhc2FuYXNpJzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1Vub2hkaXRrbyBraXJqYXV0dW1pc3RpZXRvc2k/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnT2xldHVrc2V0JzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUG9oamEnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDsmYXVtbDsgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVmFsaXRzZW1hc2kgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBTTVRQOnQmYXVtbDsgZW1haWwtb3NvaXR0ZWlkZW4gdGFya2lzdHVrc2Vzc2EnOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnU2FsYXNhbmFuIG1pbmltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdTYWxhc2FuYW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbiBtaW5pbWlwaXR1dXMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdJc3R1bm5vbiBhaWtha2F0a2Fpc3UgKHNla3VudGVqYSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsgcGl0JmF1bWw7JmF1bWw7a3Nlc2kga2lyamF1dHVtaXNlbiB5bGwmYXVtbDsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdTYWxsaSBlbWFpbC1yZWtpc3RlciZvdW1sO2ludGknOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ09sZXR1c3J5aG0mYXVtbDsgdXVzaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdWYWloZGEgYXNldHVrc2lhIC1wb2hqYSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnU2FsYXNhbmF0IGVpdiZhdW1sO3Qgb2xlIHlodGVuZXYmYXVtbDt0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIGVpIGtlbHBhYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdTYWxhc2FuYSBlaSBrZWxwYWEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNdW9ra2FhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3ZhbGlkJ10gPSAnS2VscGFhJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1snc3RhdHVzJ10gPSAnVGlsYSc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUJmF1bWw7bSZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBlaSBrdXVsdSBtaWhpbmsmYXVtbDsmYXVtbDtuIHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdFaSBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnWXJpdCZhdW1sOyB0dW9kYSB0dXBsYW9taW5haXN1dWRldCc7CiRsYW5nWyd2YWx1ZSddID0gJ0Fydm8nOwokbGFuZ1snZ3JvdXBzJ10gPSAnUnlobSZhdW1sO3QnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ09taW5haXN1dWRldCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ09taW5haXN1dWRlbiBuaW1pJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ09taW5haXN1dWRlbiBhcnZvJzsKJGxhbmdbJ2FkZCddID0gJ0xpcyZhdW1sOyZhdW1sOyc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWEnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZXhwaXJlcyddID0gJ1ZhbmhlbmVlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ00mYXVtbDsmYXVtbDtyaXR0ZWxlIHAmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWycxMmhycyddID0gJzEyIHR1bnRpYSc7CiRsYW5nWycyNGhycyddID0gJzI0IHR1bnRpYSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IHR1bnRpYSc7CiRsYW5nWycxd2VlayddID0gJzEgdmlpa2tvJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgdmlpa2tvYSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIGt1dWthdXNpJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIGt1dWthdXR0YSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBrdXVrYXV0dGEnOwokbGFuZ1snMXllYXInXSA9ICcxIHZ1b3NpJzsKJGxhbmdbJ25ldmVyJ10gPSAnRWkga29za2Fhbic7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlIFwmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLlwmcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTYWxhc2FuYSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1V1ZGVzdGFhbic7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnTmltZWxsJmF1bWw7IG9uIGpvIHJ5aG0mYXVtbDsnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTXVva2thYSByeWhtJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0wmYXVtbDtoZXQmYXVtbDsnOwokbGFuZ1snY2FuY2VsJ10gPSAnUGVydXV0YSc7CiRsYW5nWydkZWxldGUnXSA9ICdQb2lzdGEnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdBcmUgeW91IHN1cmUgdGhpcyBpcyB0aGUgcHJvcGVyIHNldHRpbmdzIGZvciB0aGlzIGdyb3VwP1xuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdIYWx1YXRrbyB2YXJtYXN0aSBwb2lzdGFhIHQmYXVtbDttJmF1bWw7biByeWhtJmF1bWw7JmF1bWw7bic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUmlpdHQmYXVtbDttJmF1bWw7dHQmb3VtbDttJmF1bWw7dCBwYXJhbWV0cml0JzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBsaXMmYXVtbDt5a3Nlc3MmYXVtbDsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1J5aG0mYXVtbDtsaWl0b2tzZW4gbGlzJmF1bWw7JmF1bWw7bWlzZXNzYSBlc2lpbnR5aSBvbmdlbG1hJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ09uZ2VsbWEgcnlobSZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnT25nZWxtYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7IHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBwb2lzdGFtaXNlc3NhJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRW1haWwgb3NvaXRldHRhIGVpIGwmb3VtbDt5ZGV0dHknOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0tvaGRlIGthbnNpb29uIGVpIG9sZSBraXJqb2l0dXNvaWtldXR0YSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVmlyaGVlbGxpc2V0IHBhcmFtZXRyaXQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdSeWhtaSZhdW1sOyBlaSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXNldGEnOwokbGFuZ1snZmlsdGVyJ10gPSAnU3VvZGF0YSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLdXZhdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnUnlobSZhdW1sO24gbmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdQJmF1bWw7JmF1bWw7c3kga2llbGxldHR5JzsKJGxhbmdbJ2Vycm9yJ10gPSAnVmlyaGUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdMaXMmYXVtbDsmYXVtbDsgcnlobSZhdW1sOyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ1R1byByeWhtJmF1bWw7JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdMaXMmYXVtbDsmYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDsnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0hha3VlaHRvaWhpbiBzb3BpdmF0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydncm91cCddID0gJ1J5aG0mYXVtbDsnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWYWxpdHR1IHJ5aG0mYXVtbDsnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpIHBvaGphJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0tpcmphdWR1IHVsb3MgcG9oamEnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdLaXJqYXV0dW1pcyBwb2hqYSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWyd1c2VycyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTYWxsaWkgayZhdW1sO3l0dCZhdW1sO2ppZW4ga2lyamF1dHVhIHNpdnVzdG9sbGVzaSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnT2xldHVzIGV0dXNpdnUnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1ZpaW1la3NpIGsmYXVtbDt5dHkgc2l2dSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdUb2luZW4gc2l2dTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTeSZvdW1sO3QmYXVtbDsga3V2YXNzYSBuJmF1bWw7a3l2JmF1bWw7IHRla3N0aSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY29va2llbmFtZSddID0gJ1NpIGNvY2gmZWFjdXRlOywgbGEgZm9uY3Rpb25uYWxpdCZlYWN1dGU7ICZxdW90O3NlIHNvdXZlbmlyIGRlIG1vaSZxdW90OyBlc3QgYWN0aXYmZWFjdXRlO2UuIENlY2kgZXN0IHNpbWlsYWlyZSAmYWdyYXZlOyBsYSBmb25jdGlvbm5hbGl0JmVhY3V0ZTsga2VlcC1hbGl2ZSBkdSBjb29raWUsIG1haXMgcGV1dCBkdXJlciBqdXNxdSYjMDM5OyZhZ3JhdmU7IDYwIGpvdXJzLic7CiRsYW5nWydtc2dfdXNlcm5hbWVfcmVhZG9ubHknXSA9ICdMJiMwMzk7YXV0aGVudGlmaWNhdGlvbiBkZSBsJnJzcXVvO3V0aWxpc2F0ZXVyIG5lIHBlcm1ldCBwYXMgZGUgY2hhbmdlciBsZSBub20gZCYjMDM5O3V0aWxpc2F0ZXVyIGRlIGNlIGNvbXB0ZSc7CiRsYW5nWydtc2dfcGFzc3dvcmRfcmVhZG9ubHknXSA9ICdMJiMwMzk7YXV0aGVudGlmaWNhdGlvbiBkZSBsJnJzcXVvO3V0aWxpc2F0ZXVyIG5lIHBlcm1ldCBwYXMgZGUgY2hhbmdlciBsZSBtb3QgZGUgcGFzc2UgZGUgY2UgY29tcHRlJzsKJGxhbmdbJ3Byb21wdF9ub3JtYWxsb2dpbiddID0gJ0xvZ2luIGRpcmVjdCc7CiRsYW5nWydtb3ZlX3VwJ10gPSAnRCZlYWN1dGU7cGxhY2VyIHZlcnMgbGUgaGF1dCc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdEJmVhY3V0ZTtwbGFjZXIgdmVycyBsZSBiYXMnOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ1RoaXMgcHJvcGVydHkgaXMgY3JlYXRlZCBieSBhIG1vZHVsZSwgYW5kIGNhbm5vdCBiZSBlZGl0ZWQnOwokbGFuZ1snbm90X2F2YWlsYWJsZSddID0gJ05vbiBkaXNwb25pYmxlJzsKJGxhbmdbJ3Byb21wdF9kZmx0X2NoZWNrZWQnXSA9ICdQYXIgZCZlYWN1dGU7ZmF1dCwgY2UgY2hhbXAgZG9pdCAmZWNpcmM7dHJlIGNvY2gmZWFjdXRlOyc7CiRsYW5nWydvcGVyYXRpb25fY29tcGxldGVkJ10gPSAnT3BlcmF0aW9uIGNvbXBsJmVhY3V0ZTt0JmVhY3V0ZTtlJzsKJGxhbmdbJ21lbWJlcnMnXSA9ICdNZW1icmVzJzsKJGxhbmdbJ3ZpZXdfZmlsdGVyJ10gPSAnVm9pciBsZXMgZmlsdHJlcyc7CiRsYW5nWydkYXRhJ10gPSAnRG9ubiZlYWN1dGU7ZXMnOwokbGFuZ1snYXBwbGllZCddID0gJ0FwcGxpcXUmZWFjdXRlOyc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZSddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2UnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnQXV0b3Jpc2VyIGxlIGNoYW5nZW1lbnQgZCYjMDM5O2lkZW50aWZpYW50IHBhciBsZXMgbWVtYnJlcyc7CiRsYW5nWydpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnU2kgY2VsYSBlc3QgYXV0b3JpcyZlYWN1dGU7LCBsZXMgdXRpbGlzYXRldXJzIHBvdXJyb250IG1vZGlmaWVyIGxldXIgaWRlbnRpZmlhbnQgZW4gbSZlY2lyYzttZSB0ZW1wcyBxdWVsIGxldXJzIGF1dHJlcyBwYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ0dhYmFyaXQgZW5yZWdpc3RyJmVhY3V0ZTsnOwokbGFuZ1sndGVtcGxhdGVfcmVzZXRkZWZhdWx0cyddID0gJ0dhYmFyaXQgciZlYWN1dGU7aW5pdGlhbGlzJmVhY3V0ZTsnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnUiZlYWN1dGU7Z2xhZ2VzJzsKJGxhbmdbJ2xibF90ZW1wbGF0ZXMnXSA9ICdHYWJhcml0cyc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ0FjdGl2ZXIgbGUgY2FwdGNoYSBzdXIgbGUgZm9ybXVsYWlyZSBkZSBjb25uZXhpb24nOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ0lmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIGFuZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugc3RhdGVzIHRvIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0sIHRoaXMgb3B0aW9uIGNvbnRyb2xzIHdldGhlciBhIGNhcHRjaGEgd2lsbCBiZSBkaXNwbGF5ZWQgb24gdGhlIGxvZ2luIHNjcmVlbi4gIElmIGNhcHRjaGEgaXMgYXZhaWxhYmxlJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1ZvdXMgbiYjMDM5OyZlY2lyYzt0ZXMgcGFzIGF1dG9yaXMmZWFjdXRlOyhlKSAmYWdyYXZlOyBhY2MmZWFjdXRlO2RlciAmYWdyYXZlOyBjZSBjb250ZW51JzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3AmZWFjdXRlO2NpZmlleiBsYSBsaXN0ZSBkZXMgZ3JvdXBlcyBkdSBGRVUgcXVpIGF1cm9udCBhY2MmZWdyYXZlO3MgJmFncmF2ZTsgY2V0dGUgcGFnZS4gU2kgdm91cyBuZSBzcCZlYWN1dGU7Y2lmaWV6IGF1Y3VuIGdyb3VwZSwgdG91dCB1dGlsaXNhdGV1ciBjb25ubmVjdCZlYWN1dGU7IHBvdXJyYSB2b2lyIGNldHRlIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdSJmVhY3V0ZTtnbGFnZXMgZGVzIHBhZ2VzIHByb3QmZWFjdXRlO2cmZWFjdXRlO2VzJzsKJGxhbmdbJ3BhZ2V0eXBlX2dyb3VwcyddID0gJ0dyb3VwZXMgYXV0b3JpcyZlYWN1dGU7cyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2dyb3VwcyddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXogbGVzIGdyb3VwZXMgcXVpIHBvdXJyb250IChwYXIgZCZlYWN1dGU7ZmF1dCkgdm9pciBsZXMgcGFnZXMgcHJvdCZlYWN1dGU7ZyZlYWN1dGU7ZXMuIFVuICZlYWN1dGU7ZGl0ZXVyIGF2ZWMgbGEgcGVybWlzc2lvbiAmcXVvdDtNYW5hZ2UgQWxsIENvbnRlbnQmcXVvdDsgcG91cnJhIHN1cnBhc3NlciBjZXR0ZSBwZXJtaXNzaW9uIHBvdXIgY2hhcXVlIHBhZ2UuJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FjdGlvbiBwb3VyIHVuIGFjYyZlZ3JhdmU7cyBub24tYXV0b3JpcyZlYWN1dGU7JzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3AmZWFjdXRlO2NpZmlleiBsZSBjb21wb3J0ZW1lbnQgZHUgbW9kdWxlIHBvdXIgbGVzIHBlcnNvbm5lcyBxdWkgYWNjJmVncmF2ZTtkZW50ICZhZ3JhdmU7IGNldHRlIHBhZ2UgZXQgcXVpIG5lIHJlcXUmZWdyYXZlO3JlbnQgcGFzIGxlcyBkcm9pdHMgc3VmZmlzYW50cyBwb3VyIHkgYWNjJmVncmF2ZTtkZXIuIFZvdXMgcG91dmV6IHNvaXQgcmVkaXJpZ2VyIHZlcnMgdW5lIHBhZ2Ugc3AmZWFjdXRlO2NpZmlxdWUsIHNvaXQgYWZmaWNoZSBsZSBmb3JtdWxhaXJlIGRlIGNvbm5leGlvbi4nOwokbGFuZ1snc2hvd2xvZ2luZm9ybSddID0gJ0FmZmljaGVyIGxlIGZvcm11bGFpcmUgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ3JlZGlyZWN0J10gPSAnUmVkaXJpZ2VyIHZlcnMgdW5lIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1JlZGlyaWdlciB2ZXJzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ0Nob2lzaXNzZXogbGEgcGFnZSB2ZXJzIGxhcXVlbGxlIHJlZGlyaWdlci4gIFNpIHZvdXMgbiYjMDM5O2VuIGNob2lzaXNzZXogcGFzLCBhbG9ycyBxdWUgbCYjMDM5O2FjdGlvbiBlc3QgJnF1b3Q7cmVkaXJpZ2VyJnF1b3Q7LCBsZSB2aXNpdGV1ciBzZSB2ZXJyYSBwciZlYWN1dGU7c2VudGVyIHVuIG1lc3NhZ2UgbHVpIGluZGlxdWFudCBxdSYjMDM5O2lsIG4mIzAzOTthIHBhcyBhY2MmZWdyYXZlO3MgJmFncmF2ZTsgbGEgcGFnZS4nOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdQZXJtaXNzaW9ucyc7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdDb250ZW51IHByb3QmZWFjdXRlO2cmZWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnQ2hvaXNpc3NleiB1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgY29tcGwmZWFjdXRlO21lbnRhaXJlICZhZ3JhdmU7IGFmZmljaGVyJzsKJGxhbmdbJ3ZpZXcnXSA9ICdWdWUnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgbGEgY29sb25uZSBVc2VySUQgbG9ycyBkZSBsJiMwMzk7aW1wb3J0YXRpb24nOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnUiZlYWN1dGU7Z2xhZ2VzIGF2YW5jJmVhY3V0ZTtzJzsKJGxhbmdbJ2luZm9fc2Vzc2lvbnRpbWVvdXQnXSA9ICdTcCZlYWN1dGU7Y2lmaWVyIGxlIG5vbWJyZSBkZSBzZWNvbmRlcyBhdmFudCBxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIGluYWN0aWYgc29pciBkJmVhY3V0ZTtjb25uZWN0JmVhY3V0ZTsgYXV0b21hdGlxdWVtZW50IGR1IHNpdGUnOwokbGFuZ1sncHJvbXB0X2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnVXNlciBFeHBpcnkgSW50ZXJ2YWwnOwokbGFuZ1snaW5mb19leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1NwZWNpZnkgYSB2YWx1ZSAoaW4gc2Vjb25kcykgdGhhdCBpbmRpY2F0ZXMgaG93IG9mdGVuIHRoZSBzeXN0ZW0gc2hvdWxkIGZvcmNlIHVzZXJzIHdob3Mgc2Vzc2lvbiBoYXMgZXhwaXJlZCB0byBiZSBsb2dnZWQgb3V0LiAgVCZxdW90O2hpcyBpcyBhbiBvcHRpbWl6YXRpb24gdG8gc2F2ZSBkYXRhYmFzZSBxdWVyaWVzLiAgSWYgbGVmdCBlbXB0eSBvciBzZXQgdG8gMCBleHBpcnkgd2lsbCBiZSBwZXJmb3JtZWQgb24gZXZlcnkgcmVxdWVzdC4nOwokbGFuZ1snbXNnX3NldHRpbmdzY2hhbmdlZCddID0gJ1ZvcyByJmVhY3V0ZTtnbGFnZXMgb250ICZlYWN1dGU7dCZlYWN1dGU7IG1pcyAmYWdyYXZlOyBqb3VyIGF2ZWMgc3VjYyZlZ3JhdmU7cyc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdPYmxpZ2UgbGVzIHV0aWxpc2F0ZXVycyAmYWdyYXZlOyBzZSBkJmVhY3V0ZTtjb25uZWN0ZXIgJmFncmF2ZTsgZGVzIGludGVydmFsbGVzIGRlIHRlbXBzIHImZWFjdXRlO2d1bGllcnMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGVtcHMgcG91ciBsYSBkZWNvbm5leGlvbiBmb3JjJmVhY3V0ZTtlJzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdTcGVjaWZ5IGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGltZXMgbGlrZSBISDpNTSxISDpNTSB3aGVyZSB1c2VycyB3aWxsIGJlIGZvcmNpYmx5IGxvZ2dlZCBvdXQuIE5vdGUsIHRoaXMgdXNlcyB0aGUgcHN1ZWRvY3JvbiBtZWNoYW5pc20gc28geW91IG11c3QgYmUgc3VyZSB0aGF0IHRoZSB0aW1lcyBlbnRlcmVkIGhlcmUgd2lsbCBjb2luY2lkZSByZWFzb25hYmx5IHdpdGggeW91ciAmcXVvdDtwc2V1ZG9jcm9uIGdyYW51bGFyaXR5JnF1b3Q7IGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdXJlIGxlcyBtZW1icmVzIHF1aSBuJiMwMzk7b250IHBhcyAmZWFjdXRlO3QmZWFjdXRlOyBhY3RpZnMgZW4gPGVtPihtaW51dGVzKTwvZW0+JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0lmIHNwZWNpZmllZCwgYW55IHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiB0aGlzIG51bWJlciBvZiBzZWNvbmRzIHdpbGwgbm90IGJlIGZvcmNpYmx5IGxvZ2dlZCBvdXQnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGUnXSA9ICdFdGVzIHZvdXMgcyZ1Y2lyYztyKGUpIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGwmIzAzOTt1dGlsaXNhdGV1ciA6ICVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnTGUgdHlwZSBkZSBmaWNoaWVyIHVwbG9hZCZlYWN1dGU7IG5lIHNlbWJsZSBwYXMgZmFpcmUgcGFydGllIGRlcyBmaWNoaWVycyBhdXRvcmlzJmVhY3V0ZTtzJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUb3V0ZXMgbGVzIGRvbm4mZWFjdXRlO2VzIGFzc29jaSZlYWN1dGU7ZXMgYXUgbW9kdWxlIEZyb250RW5kVXNlcnMgb250ICZlYWN1dGU7dCZlYWN1dGU7IGVmZmFjJmVhY3V0ZTtlcyc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdTaSBhY3RpdiZlYWN1dGU7LCBjZSBtb2R1bGUgdmEgJmVhY3V0ZTtjb3V0ZXIgbGVzICZlYWN1dGU7diZlYWN1dGU7bmVtZW50cyBkZSBsYSBzdWl0ZSBFY29tbWVyY2UuDQpEYW5zIGNlIGNhcywgbGVzIHBhcmFtJmVncmF2ZTt0cmVzIHN1aXZhbnRzIHNvbnQgZWZmZWN0aWZzLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0Vjb3V0ZXIgbGVzICZlYWN1dGU7diZlYWN1dGU7bmVtZW50cyBkZXMgY29tbWFuZGVzJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0xlcyBwYXJhbSZlZ3JhdmU7dHJlcyBzdWl2YW50cyBuZSBzJiMwMzk7YXBwbGlxdWVudCBxdWUgc2kgdm91cyB1dGlsaXNleiBsZSBtb2R1bGUgU2VsZiBSZWdpc3RyYXRpb24gcGVybWV0dGFudCBkZXMgZW5yZWdpc3RyZW1lbnQgcGF5YW50JzsKJGxhbmdbJ25vbmUnXSA9ICdBdWN1bic7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ1N1cHByaW1lciBsJiMwMzk7dXRpbGlzYXRldXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdFeHBpcmV6IHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gJmFncmF2ZTsgZWZmZWN0dWVyIHF1YW5kIHVuIG9yZHJlIGRlIHNvdXNjcmlwdGlvbiBlc3QgYW5udWwmZWFjdXRlO2UnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gJmFncmF2ZTsgZWZmZWN0dWVyIHF1YW5kIHVuIG9yZHJlIGRlIHNvdXNjcmlwdGlvbiBlc3Qgc3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIEVjb21tZXJjZSc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcmtlciBzJmVhY3V0ZTtjdXJpcyZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdDaGFtcCBjb2xvciZlYWN1dGU7IHMmZWFjdXRlO2N1cmlzJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9ja2VyIGNlcyBkb25uJmVhY3V0ZTtlcyBkZSBtYW5pJmVncmF2ZTtyZSBjcnlwdCZlYWN1dGU7ZSBkYW5zIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMnOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnTCYjMDM5O29wdGlvbiBjaG9pc2llIG4mIzAzOTtlc3QgcGFzIHN1cHBvcnQmZWFjdXRlO2UgYXZlYyBsYSBjb25maWd1cmF0aW9uIGFjdHVlbGxlJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1V0aWxpc2F0ZXVyIGNyJmVhY3V0ZTsmZWFjdXRlOyBhdXRvbWF0aXF1ZW1lbnQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnU2kgdW4gdXRpbGlzYXRldXIgZXN0IGF1dGhlbnRpZmkmZWFjdXRlOyBwYXIgdW4gbW9kdWxlIGV4dGVybmUgZCYjMDM5O2F1dGhlbnRpZmljYXRpb24sIG1haXMgZXN0IGluY29ubnUgZGFucyBsZSBtb2R1bGUgRnJvbnRFbmRVc2VycywgdW4gY29tcHRlIEZFVSBkb2l0LWlsICZlY2lyYzt0cmUgY3ImZWFjdXRlOyZlYWN1dGU7IGF1dG9tYXRpcXVlbWVudCA/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQ3ImZWFjdXRlOyZlYWN1dGU7ciBhdXRvbWF0aXF1ZW1lbnQgbGVzIHV0aWxpc2F0ZXVycyBpbmNvbm51cyZuYnNwOyc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnQWZmaWNoZXIgbGVzIHImZWFjdXRlO2dsYWdlcyc7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnTGVzIHImZWFjdXRlO2dsYWdlcyBzdWl2YW50cyBuZSBzb250IGFwcGxpY2FibGVzIHF1JiMwMzk7YXZlYyAmcXVvdDtsJiMwMzk7QXV0aGVudGlmaWNhdGlvbiBpbnQmZWFjdXRlO2dyJmVhY3V0ZTtlJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnQ2hvaXNpciBOb24gZCZlYWN1dGU7c2FjdGl2ZSBsYSBwb3NzaWJpbGl0JmVhY3V0ZTsgcG91ciB1biB1dGlsaXNhdGV1ciBkJiMwMzk7dXRpbGlzZXIgbGEgZm9uY3Rpb24gZGUgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGVzIGlkZW50aWZpYW50cywgaW5kJmVhY3V0ZTtwZW5kYW1tZW50IGRlcyBhdXRyZXMgciZlYWN1dGU7Z2xhZ2VzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdDaG9pc2lyIE5vbiBkJmVhY3V0ZTtzYWN0aXZlIGxhIHBvc3NpYmlsaXQmZWFjdXRlOyBwb3VyIHVuIHV0aWxpc2F0ZXVyIGRlIHImZWFjdXRlO2luaXRpYWxpc2VyIHNvbiBtb3QgZGUgcGFzc2UsIGluZCZlYWN1dGU7cGVuZGFtbWVudCBkZXMgYXV0cmVzIHImZWFjdXRlO2dsYWdlcyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdBdXRvcmlzZXIgbGVzIHV0aWxpc2F0ZXVycyAmYWdyYXZlOyBkZW1hbmRlciBsZXVyIGlkZW50aWZpYW50Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0F1dG9yaXNlciBsZXMgdXRpbGlzYXRldXJzICZhZ3JhdmU7IGRlbWFuZGVyIHVuIGNoYW5nZW1lbnQgZGUgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdQYXJhbSZlYWN1dGU7dHJlcyBkJiMwMzk7YXV0aGVudGlmaWNhdGlvbic7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0F1dGhlbnRpZmljYXRpb24gaW50JmVhY3V0ZTtnciZlYWN1dGU7ZSc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdBdXRoZW50aWZpY2F0aW9uIFN0YW5kYXJkIGRlIEZFVSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ01vZHVsZS9NJmVhY3V0ZTt0aG9kZSBkJiMwMzk7YXV0aGVudGlmaWNhdGlvbiZuYnNwOyc7CiRsYW5nWydpbmZvX2F1dGhfbW9kdWxlJ10gPSAnTGUgbW9kdWxlIEZyb250RW5kVXNlcnMgc3VwcG9ydGUgbCYjMDM5O3V0aWxpc2F0aW9uIGRlIG0mZWFjdXRlO3Rob2RlIGFsdGVybmF0aXZlcyBkJiMwMzk7YXV0aGVudGlmaWNhdGlvbiwgYXZlYyBkZXMgY2FwYWNpdCZlYWN1dGU7cyB2YXJpYWJsZXMuIENlcnRhaW5lcyBmb25jdGlvbm5hbGl0JmVhY3V0ZTtzIG5lIHZvbnQgcGFzIGZvbmN0aW9ubmVyIG91IHNlcm9udCBkJmVhY3V0ZTtzYWN0aXYmZWFjdXRlO2VzIHNpIGxhIG0mZWFjdXRlO3Rob2RlIGQmIzAzOTthdXRoZW50aWZpY2F0aW9uIGludCZlYWN1dGU7Z3ImZWFjdXRlO2UgbiYjMDM5O2VzdCBwYXMgdXRpbGlzJmVhY3V0ZTtlLic7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0xhIHZhbGV1ciBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7ZSBwb3VyICUgcyBlc3QgZCZlYWN1dGU7aiZhZ3JhdmU7IHV0aWxpcyZlYWN1dGU7ZSBwYXIgdW4gYXV0cmUgdXRpbGlzYXRldXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pcXVlICc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdMYSB2YWxldXIgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UgcG91ciAlIHMgKCUgcykgbiYjMDM5O2VzdCBwYXMgdW5pcXVlJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdGb3JjZXIgbGEgdmFsZXVyIGRlIGNldHRlIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7IHBvdXIgJmVjaXJjO3RyZSB1bmlxdWUgZGFucyB0b3VzIGxlcyBjb21wdGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVdGlsaXMmZWFjdXRlOyBhdmVjIGxlcyBmb3JtdWxhaXJlcyBsb2dpbiBldCBsb2dvdXQsIHNpIGNlIHBhcmFtJmVncmF2ZTt0cmUgZXN0IHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTssIGlsIGluZGlxdWVyYSBxdWUgbCYjMDM5O3V0aWxpc2F0ZXVyIGRvaXQgJmVjaXJjO3RyZSByZW52b3kmZWFjdXRlOyB2ZXJzIGxhIHBhZ2UgKHBhciBVUkwpIHF1ZSBsJiMwMzk7dXRpbGlzYXRldXIgYXZhaXQgYWZmaWNoJmVhY3V0ZTsgYXZhbnQgbCYjMDM5O2FjdGlvbi4gQ2UgcGFyYW0mZWdyYXZlO3RyZSByZW1wbGFjZSBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBkZSByZWRpcmVjdGlvbiwgZXQgbGUgcGFyYW0mZWdyYXZlO3RyZSAmcXVvdDtyZXR1cm50byZxdW90Oyc7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXRpbGlzJmVhY3V0ZTsgYXZlYyBsJiMwMzk7dW4gZGVzIGZvcm11bGFpcmVzLCBjZSBwYXJhbSZlZ3JhdmU7dHJlIHNwJmVhY3V0ZTtjaWZpZSBxdWUgbGVzIGZvcm11bGFpcmVzIG5lIGRldnJhaWVudCBwYXMgJmVjaXJjO3RyZSBtaXMgZW4gbGlnbmUsIGF1IGNvbnRyYWlyZSBsZSByJmVhY3V0ZTtzdWx0YXQgZGUgc291bWlzc2lvbiBkdSBmb3JtdWxhaXJlIHJlbXBsYWNlcmEgbGUgYmxvYyBkZSBjb250ZW51IHBhciBkJmVhY3V0ZTtmYXV0JzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdBdmVydGlzc2VtZW50IGRlIGZpbiBkZSBzZXNzaW9uJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnVm90cmUgc2Vzc2lvbiB2YSBiaWVudCZvY2lyYzt0IGV4cGlyZXIsIHZldWlsbGV6IGNsaXF1ZXIgc3VyICZxdW90O09LJnF1b3Q7IHBvdXIgcmVzdGVyIGNvbm5lY3QmZWFjdXRlOyhlKS4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIHJlbWlzZSAmYWdyYXZlOyB6JmVhY3V0ZTtybyBkZSBzZXNzaW9uICc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdDZWNpIGVzdCBsZSBub20gZHUgY2hhbXAgKHV0aWxpcyZlYWN1dGU7IGF2ZWMgU21hcnR5KS4gSWwgZG9pdCBjb21wb3J0ZXIgdW5pcXVlbWVudCBkZXMgY2FyYWN0JmVncmF2ZTtyZXMgYWxwaGFudW0mZWFjdXRlO3JpcXVlcyBvdSBkZXMgdW5kZXJzY29yZSAoXykuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0ZXVycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXogdW4gb3UgcGx1c2lldXJzIGdyb3VwZXMgRkVVIHF1aSBzb250IGF1dG9yaXMmZWFjdXRlO3MgJmFncmF2ZTsgYWNjJmVhY3V0ZTtkZXIgJmFncmF2ZTsgY2V0dGUgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnVW4gZ3JvdXBlIGRvaXQgJmVjaXJjO3RyZSBzJmVhY3V0ZTtsZWN0aW9ubiZlYWN1dGU7JzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1MmZWFjdXRlO2xlY3Rpb25uZXIgdW4gZ3JvdXBlJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBbm4mZWFjdXRlO2UgZGUgZCZlYWN1dGU7YnV0JzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnQW5uJmVhY3V0ZTtlIGRlIGZpbic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUYWlsbGUgZGUgdmlnbmV0dGUmbmJzcDsnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0xvcnNxdSYjMDM5O3VuIGdyb3VwZSBkJiMwMzk7dXRpbGlzYXRldXJzIGVzdCBtb2RpZmkmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUcm9wIGQmIzAzOTt1dGlsaXNhdGV1cnMgc29udCBzJmVhY3V0ZTtsZWN0aW9ubiZlYWN1dGU7cyBwb3VyIGxlcyBvcCZlYWN1dGU7cmF0aW9ucyAuLi4uIE1lcmNpIGRlIHImZWFjdXRlO2R1aXJlICZhZ3JhdmU7IDI1MCBvdSBtb2lucyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJyZFY2lyYzt0ZXMgdm91cyBzJnVjaXJjO3IoZSkgZGUgdm91bG9pciBzdXBwcmltZXIgbGVzIHV0aWxpc2F0ZXVycyBzJmVhY3V0ZTtsZWN0aW9ubiZlYWN1dGU7cyA/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ1N1cHByaW1lciBsYSBzJmVhY3V0ZTtsZWN0aW9uJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0cmZWFjdXRlO24mZWFjdXRlO3JlciB1biBub20gZCYjMDM5O3V0aWxpc2F0ZXVyIGF1IGhhc2FyZCBsb3JzIGRlIGwmIzAzOTtham91dCBkZSBub3V2ZWF1eCB1dGlsaXNhdGV1cnMmbmJzcDsnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9pcyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnUCZlYWN1dGU7cmlvZGUgZCYjMDM5O2V4cGlyYXRpb24gcGFyIGQmZWFjdXRlO2ZhdXQgcG91ciBsJiMwMzk7dXRpbGlzYXRldXIgICc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBkZSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBkZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIGRlIHJlZGlyZWN0aW9uJm5ic3A7JzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBnJmVhY3V0ZTtuJmVhY3V0ZTtyYXV4Jm5ic3A7JzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBkZSBTZXNzaW9uIGV0IENvb2tpZSZuYnNwOyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIGRlcyBjaGFtcHMmbmJzcDsnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnTGUgZHJhcGVhdSAmcXVvdDtkZW1hbmRlIGxvcnMgZGUgbGEgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGUgbCYjMDM5O2lkZW50aWZpYW50JnF1b3Q7IG5lIHBldXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlOyBxdWUgc3VyIGxlcyBjaGFtcHMgb2JsaWdhdG9pcmVzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1Blcm1ldHRyZSBsJiMwMzk7dXRpbGlzYXRpb24gZGUgbCYjMDM5OyZlYWN1dGU7ZGl0ZXVyIHZpc3VlbCAoV1lTSVdZRykgc3VyIGNldHRlIHpvbmUgZGUgdGV4dGUnOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGlvbiBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOZSBwYXMgbWV0dHJlIGVuIGxpZ25lIGxlcyBmb3JtdWxhaXJlcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgaWRlbnRpZmlhbnQnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVleiBpY2kgcG91ciB2b3VzIGQmZWFjdXRlO2Nvbm5lY3Rlcic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpcXVleiBpY2kgcG91ciBtb2RpZmllciB2b3RyZSBtb3QgZGUgcGFzc2UgZXQgZCYjMDM5O2F1dHJlcyBpbmZvcm1hdGlvbnMnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWdWUgZ2FiYXJpdCB1dGlsaXNhdGV1ciZuYnNwOyc7CiRsYW5nWydldmVudCddID0gJyZFYWN1dGU7diZlYWN1dGU7bmVtZW50JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdOb3RpZmljYXRpb24gZCYjMDM5OyZlYWN1dGU7diZlYWN1dGU7bmVtZW50IG1vZHVsZSBGcm9udEVuZFVzZXInOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnQWRyZXNzZSBlbWFpbCBwb3VyIGxhIG5vdGlmaWNhdGlvbiZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkJiMwMzk7ZW1haWwgcG91ciBsYSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnU3VqZXQgZGUgbCYjMDM5O2VtYWlsIHBvdXIgbGEgbm90aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnTm90aWZpY2F0aW9ucyBwYXIgZW1haWwmbmJzcDsnOwokbGFuZ1snT25Mb2dpbiddID0gJyZBZ3JhdmU7IGxhIGNvbm5leGlvbic7CiRsYW5nWydPbkxvZ291dCddID0gJyZBZ3JhdmU7IGxhIGQmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICcmQWdyYXZlOyBsJiMwMzk7ZXhwaXJhdGlvbiBkZSBsYSBzZXNzaW9uJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ0xvcnNxdSYjMDM5O3VuIG5vdXZlbCB1dGlsaXNhdGV1ciBlc3QgY3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0xvcnNxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIGVzdCBzdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnTG9ycyBkZSBjaGFuZ2VtZW50IGRlIHBhcmFtJmVncmF2ZTt0cmVzIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdMb3JzcXUmIzAzOTt1biBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3QgY3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdMb3JzcXUmIzAzOTt1biBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3Qgc3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnTGEgZm9uY3Rpb24gZGUgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGVzIGQmZWFjdXRlO3RhaWxzIGRlIGxvZ2luIG91YmxpJmVhY3V0ZTsgZXN0IHRlcm1pbiZlYWN1dGU7ZS4gTm91cyBhdm9ucyB0cm91diZlYWN1dGU7IHVuIGlkZW50aWZpYW50IHVuaXF1ZSBxdWkgY29ycmVzcG9uZCBhdXggZCZlYWN1dGU7dGFpbHMgcXVlIHZvdXMgYXZleiBlbnRyJmVhY3V0ZTtzLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnVm90cmUgaWRlbnRpZmlhbnQgZXN0JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ05vdXMgdm91cyByZWNvbW1hbmRvbnMgZCYjMDM5O2VucmVnaXN0cmVyIGNldHRlIGluZm9ybWF0aW9uIGRhbnMgdW4gZW5kcm9pdCBzJnVjaXJjO3IsIG1haXMgZmFjaWxlICZhZ3JhdmU7IHJldHJvdXZlciBwb3VyIHZvdXMuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgbyZ1Z3JhdmU7IHNlIHJlbmRyZSBhcHImZWdyYXZlO3MgbGEgbW9kaWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0wmIzAzOTtJRCBvdSBsJiMwMzk7YWxpYXMgZGUgbGEgcGFnZSBvJnVncmF2ZTsgc2UgcmVuZHJlIGFwciZlZ3JhdmU7cyBsYSB2JmVhY3V0ZTtyaWZpY2F0aW9uIGR1IGNvZGUgKiZuYnNwOyc7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZXMgZCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBwb3VyIGxhIGNvbmZpcm1hdGlvbiBkZSBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZXMgZCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyZXVyJm5ic3A7OiBQbHVzIGQmIzAzOTt1biB1dGlsaXNhdGV1ciBjb3JyZXNwb25kIGF1eCBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgZCZlYWN1dGU7ZmluaWVzJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0VycmV1ciZuYnNwOzogSW1wb3NzaWJsZSBkZSB0cm91dmVyIHVuIHV0aWxpc2F0ZXVyIGNvcnJlc3BvbmRhbnQnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0VycmV1ciZuYnNwOzogSW1wb3NzaWJsZSBkZSB0cm91dmVyIHVuIGdyb3VwZSBkZSBjZSBub20nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdMZWN0dXJlIHNldWxlJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdDbGFzc2UgZGUgbWFuaXB1bGF0aW9uIGRlcyBpZGVudGlmaWFudHMmbmJzcDsnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnRCZlYWN1dGU7Y29ubmVjdCZlYWN1dGU7IHBhciB1biBhZG1pbmlzdHJhdGV1cic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnQWZmaWNoZSB1bmlxdWVtZW50IGxlcyB1dGlsaXNhdGV1cnMgY29ubmVjdCZlYWN1dGU7cyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRCZlYWN1dGU7Y29ubmVjdGVyIGNldCB1dGlsaXNhdGV1cic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnSGlzdG9yaXF1ZSBkZXMgdXRpbGlzYXRldXJzJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydGVyJzsKJGxhbmdbJ2NsZWFyJ10gPSAnVmlkZXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0ZXIgZW4gQVNDSUkgbCYjMDM5O2hpc3RvcmlxdWUgdXRpbGlzYXRldXIgcXVpIGEgbW9pbnMgZGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdWaWRlciBsJiMwMzk7aGlzdG9yaXF1ZSB1dGlsaXNhdGV1ciBxdWkgYSBwbHVzIGRlJm5ic3A7JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0F2ZXotdm91cyBvdWJsaSZlYWN1dGU7IHZvdHJlIGlkZW50aWZpYW50ID8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0ZXIgbGEgZCZlYWN1dGU7ZmluaXRpb24gZHUgZ3JvdXBlIChldCBzZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzKSBhdSBmb3JtYXQgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdNYWludGVuYW5jZSBkZSBsJiMwMzk7aGlzdG9yaXF1ZSB1dGlsaXNhdGV1cic7CiRsYW5nWyd5ZXMnXSA9ICdPdWknOwokbGFuZ1snbm8nXSA9ICdOb24nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnZGUnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTm9uIGxpbWl0JmVhY3V0ZTsgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnMSBoZXVyZSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICc2IGhldXJlcyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICcxMiBoZXVyZXMnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICcxIGpvdXInOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnMSBzZW1haW5lJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICcyIHNlbWFpbmVzJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICcxIG1vaXMnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJzMgbW9pcyc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJzYgbW9pcyc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICcxIGFuJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dyb3VwZXIgZXQgdHJpZXImbmJzcDsnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0VucmVnaXN0cmVtZW50cyBxdWkgY29ycmVzcG9uZGVudCBhdXggY3JpdCZlZ3JhdmU7cmVzJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkZXMgbm9tcyBkJiMwMzk7dXRpbGlzYXRldXJzJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdPcmRyZSBhc2NlbmRhbnQgZGVzIG5vbXMgZCYjMDM5O3V0aWxpc2F0ZXVycyc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkZSBsYSBkYXRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ09yZHJlIGFzY2VuZGFudCBkZSBsYSBkYXRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ09yZHJlIGRlc2NlbmRhbnQgZHUgdHlwZSBkJiMwMzk7JmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdPcmRyZSBhc2NlbmRhbnQgZHUgdHlwZSBkJiMwMzk7JmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkZSBsJiMwMzk7YWRyZXNzZSBJUCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ09yZHJlIGFzY2VuZGFudCBkZSBsJiMwMzk7YWRyZXNzZSBJUCc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnQXVjdW4gaGlzdG9yaXF1ZSBkJmVhY3V0ZTt0ZWN0JmVhY3V0ZTsnOwokbGFuZ1sncmVzZXQnXSA9ICdSJmVhY3V0ZTtpbml0aWFsaXNlcic7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cGVyIHBhciBhZHJlc3NlIElQJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJlIGRlIHR5cGUgZCYjMDM5OyZlYWN1dGU7diZlYWN1dGU7bmVtZW50Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0FmZmljaGUgdW5pcXVlbWVudCBsZXMgJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnRzIHF1aSBvbiBtb2lucyBkZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnTGltaXRlIGRlIHBhZ2UmbmJzcDsnOwokbGFuZ1snZm9yJ10gPSAncG91cic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1JhcHBvcnQgZCYjMDM5O2hpc3RvcmlxdWUgZCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdJbmNvbm51JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdBZHJlc3NlIElQJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUeXBlIGQmIzAzOTsmZWFjdXRlO3YmZWFjdXRlO25lbWVudCc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGUgJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdSZXRvdXInOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09wJmVhY3V0ZTtyYXRpb24gZCYjMDM5O2ltcG9ydGF0aW9uIHRlcm1pbiZlYWN1dGU7ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaWduZXMgZWZmZWN0dSZlYWN1dGU7ZXMnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0VycmV1cnMgcmVuY29udHImZWFjdXRlO2VzJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdFbnJlZ3Jpc3RyZW1lbnRzIGFqb3V0JmVhY3V0ZTtzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBwb3VyIGxlIGdyb3VwZSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0F1Y3VuZSByJmVhY3V0ZTtwb25zZSBkdSBzZXJ2ZXVyIFNNVFAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnSW1wb3NzaWJsZSBkZSB0cm91dmVyIGxlIGZpY2hpZXIgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyAoJXMpJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWYWxldXIgaW52YWxpZGUgcG91ciBsZSBjaGFtcCBtZW51IGQmZWFjdXRlO3JvdWxhbnQgb3UgbXVsdGlzJmVhY3V0ZTtsZWN0aW9uICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnTGUgY2hhbXAgJXMgZCZlYWN1dGU7cGFzc2UgbGEgbG9uZ3VldXIgbWF4aW1hbGUnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdFcnJldXIgZCYjMDM5O2ltcG9ydGF0aW9uIChsaWduZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdJbXBvc3NpYmxlIGQmIzAzOTtvYnRlbmlyIGxlcyBkJmVhY3V0ZTtmaW5pdGlvbnMgZGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgKGVycmV1ciBpbnRlcm5lKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibCZlZ3JhdmU7bWUgbG9ycyBkZSBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkZXMgaW5mb3MgdXRpbGlzYXRldXInOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciB1bmUgY29sb25uZSBxdWkgY29ycmVzcG9uZCBhdSBjaGFtcCByZXF1aXMgJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBwb3VyIGxlIGdyb3VwZSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdMZSBmaWNoaWVyIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsgcG91ciBsJiMwMzk7aW1wb3J0YXRpb24gbiYjMDM5O2VzdCBwYXMgYXUgYm9uIGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnSW1wb3NzaWJsZSBkJiMwMzk7b3V2cmlyIGxlIGZpY2hpZXInOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+SW5mb3JtYXRpb24gc3VyIGxlIGZvcm1hdCBkdSBmaWNoaWVyPC9oND4NCjxwPkxlIGZpY2hpZXIgZG9pdCAmZWNpcmM7dHJlIGVuIGZvcm1hdCBBU0NJSSBhdmVjIGxlcyB2YWxldXJzIHMmZWFjdXRlO3BhciZlYWN1dGU7ZXMgcGFyIGRlcyB2aXJndWxlcy4gQ2hhcXVlIGxpZ25lIGRlIGNlIGZpY2hpZXIgKCZhZ3JhdmU7IGwmIzAzOTtleGNlcHRpb24gZGUgbGEgbGlnbmUgZCYjMDM5O2VuLXQmZWNpcmM7dGUsIHZvaXIgcGx1cyBiYXMpIHJlcHImZWFjdXRlO3NlbnQgdW4gZW5yZWdpc3RyZW1lbnQgdXRpbGlzYXRldXIuIENoYXF1ZSBsaWduZXIgZG9pdCBjb250ZW5pciBsZSBtJmVjaXJjO21lIG5vbWJyZSBkZSBjaGFtcCwgZXQgbCYjMDM5O29yZHJlIGRlcyBjaGFtcHMgZGFucyBjaGFxdWUgbGlnbmUgZG9pdCAmZWNpcmM7dHJlIGlkZW50aXF1ZS48L3A+DQo8aDU+TGlnbmUgZCYjMDM5O2VuLXQmZWNpcmM7dGU8L2g1Pg0KPHVsPg0KPGxpPkxhIHByZW1pJmVncmF2ZTtyZSBsaWduZSBkdSBmaWNoaWVyIGRvaXQgY29tbWVuY2VyIHBhciAyIGRpJmVncmF2ZTtzZXMgKFwjKSwgZXQgbm9tbWUgY2hhY3VuIGRlcyBjaGFtcHMgZGFucyBsZSBmaWNoaWVyLiBMZXMgbm9tcyBkZSBjZXMgY2hhbXBzIHNvbnQgaW1wb3J0YW50cy4gSWwgeSBhIHF1ZWxxdWVzIG5vbXMgZGUgY2hhbXBzIHJlcXVpcyAodm9pciBjaS1kZXNzb3VzKSwgZXQgcG91ciBsZXMgYXV0cmVzIGNoYW1wcywgaWxzIGRvaXZlbnQgY29ycmVzcG9uZHJlIGF1eCBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgYXNzb2NpJmVhY3V0ZTtlcyBhdSBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBkYW5zIGxlcXVlbCBjZSBmaWNoaWVyIHZhICZlY2lyYzt0cmUgaW1wb3J0JmVhY3V0ZTsuPC9saT4NCjxsaT5MZSBwcm9jZXNzdXMgZCYjMDM5O2ltcG9ydGF0aW9uICZlYWN1dGU7Y2hvdWVyYSBzaSBsZSBmaWNoaWVyIGQmIzAzOTtpbXBvcnQgbmUgY29ycmVzcG9uZCBwYXMgJmFncmF2ZTsgdG91dGVzIGxlcyBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgYXNzb2NpJmVhY3V0ZTtlcyBhdSBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBkYW5zIGxlcXVlbCBjZSBmaWNoaWVyIHZhICZlY2lyYzt0cmUgaW1wb3J0JmVhY3V0ZTsuPC9saT4NCjxsaT5MZSBmaWNoaWVyIHBldXQgY29udGVuaXIgZGVzIGNoYW1wcyByZXByJmVhY3V0ZTtzZW50YW50IGxlcyBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3Mgb3B0aW9ubmVsbGVzIGR1IGdyb3VwZSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7LjwvbGk+DQo8bGk+TGUgcHJvY2Vzc3VzIGQmIzAzOTtpbXBvcnRhdGlvbiBpZ25vcmVyYSB0b3V0IGNoYW1wIGR1IGZpY2hpZXIgcXVpIGVzdCBzb2l0IGluY29ubnUsIG91IHF1aSBuZSBjb3JyZXNwb25kIHBhcyBhdXggcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIHF1aSBzb250IDxlbT5kJmVhY3V0ZTtzYWN0aXYmZWFjdXRlO2VzPC9lbT4gZGFucyBsZSBncm91cGUgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOy48L2xpPg0KPC91bD4NCjxoNT5Eb25uJmVhY3V0ZTtlcyB0YWJ1bGFpcmVzPC9oNT4NCjx1bD4NCjxsaT5MZSBjaGFtcCA8c3Ryb25nPnVzZXJpZDwvc3Ryb25nPiAoZW4gYW5nbGFpcykgLSBMZSBudW0mZWFjdXRlO3JvIGQmIzAzOTtpZGVudGlmaWFudCB1bmlxdWUgcG91ciB1biB1dGlsaXNhdGV1ci4gQSB2YWx1ZSBpbiB0aGlzIGZpZWxkIHdpbGwgaW5kaWNhdGUgeW91IGFyZSBkb2luZyBhbiB1cGRhdGUuPC9saT4NCjxsaT5MZSBjaGFtcCA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IChlbiBhbmdsYWlzKSAtIExlIG5vbSBkJiMwMzk7dXRpbGlzYXRldXIgZCZlYWN1dGU7c2lyJmVhY3V0ZTsuDQogICAgPHA+Q2UgY2hhbXAgZG9pdCBleGlzdGVyIGRhbnMgbGEgbGlnbmUgZCYjMDM5O2VuLXQmZWNpcmM7dGUsIGV0IGRvaXQgJmVjaXJjO3RyZSByZW1wbGkgZGFucyBjaGFjdW5lIGRlcyBsaWduZXMgZHUgZmljaGllciBkJiMwMzk7aW1wb3J0YXRpb24uIEwmIzAzOTtlbnJlZ2lzdHJlbWVudCAmZWFjdXRlO2Nob3VlcmEgc2kgdW4gdXRpbGlzYXRldXIgZHUgbSZlY2lyYzttZSBub20gZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyBkYW5zIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMuPC9wPjwvbGk+DQo8bGk+TGUgY2hhbXAgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiAoZW4gYW5nbGFpcykgLSBsZSBtb3QgZGUgcGFzc2UgcG91ciBsJiMwMzk7dXRpbGlzYXRldXI8L2xpPg0KPGxpPkxlIGNoYW1wIDxzdHJvbmc+Y3JlYXRlZGF0ZTwvc3Ryb25nPiAoZW4gYW5nbGFpcykgLSBsYSBkYXRlIGRlIGNyJmVhY3V0ZTthdGlvbiBwb3VyIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8bGk+TGUgY2hhbXAgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IChlbiBhbmdsYWlzKSAtIGxhIGRhdGUgZCYjMDM5O2V4cGlyYXRpb24gcG91ciBsJiMwMzk7dXRpbGlzYXRldXI8L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmdyb3VwbmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBncm91cHMgdGhhdCB5b3Ugd2FudCB0byBoYXZlIHRoZSB1c2VyIGJlIGEgbWVtYmVyIG9mLiBJZiBhbGwgcmVxdWlyZWQgZmllbGRzIGFyZSBub3QgZmlsbGVkIGluIHRoZSBpbnNlcnQvdXBkYXRlIG9mIHRoZSByZWNvcmQgd2lsbCBmYWlsLiBTZWUgTXVsdGlzZWxlY3QgRmllbGRzIGJlbG93IGZvciBzeW50YXguPC9saT4NCjxsaT5DaGFtcCBkJmVhY3V0ZTtyb3VsYW50cy9Cb3V0b24gcmFkaW8NCiAgICA8cD5MYSB2YWxldXIgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBkZSBjaGFtcCBkJmVhY3V0ZTtyb3VsYW50IGRhbnMgbGUgZmljaGllciBkJiMwMzk7aW1wb3J0YXRpb24gZXN0IHJlcHImZWFjdXRlO3NlbnQmZWFjdXRlO2UgcGFyIGxlIHRleHRlIHF1aSBlc3QgYWZmaWNoJmVhY3V0ZTsgZGFucyBsZSBjaGFtcCBkJmVhY3V0ZTtyb3VsYW50IGRhbnMgbGUgbW9kdWxlIEZyb250RW5kVXNlcnMuPC9wPg0KPC9saT4NCjxsaT5DaGFtcHMgJmFncmF2ZTsgbXVsdGlzJmVhY3V0ZTtsZWN0aW9uDQogICAgPHA+TGVzIGNoYW1wcyAmYWdyYXZlOyBtdWx0aXMmZWFjdXRlO2xlY3Rpb24gc29udCBjb250ZW51cyBkYW5zIGxlIGZpY2hpZXIgQVNDSUkgZW4gdGFudCBxdWUmbmJzcDs6IHVuZSBsaXN0ZSBzJmVhY3V0ZTtwYXImZWFjdXRlO2UgZGUgdGV4dGVzLCBvdSBjaGFxdWUgdGV4dGUgcmVwciZlYWN1dGU7c2VudGUgbGUgdGV4dGUgYWZmaWNoJmVhY3V0ZTsgZGFucyBsYSBsaXN0ZSAmYWdyYXZlOyBtdWx0aXMmZWFjdXRlO2xlY3Rpb248L3A+DQo8L2xpPg0KPGxpPkNoYW1wcyBEYXRlcyANCiAgICA8cD5Eb2l2ZW50ICZlY2lyYzt0cmUgZGFucyBsZSBmb3JtYXQgTU0tREQtWVlZWTwvcD4NCjwvbGk+DQo8bGk+Q2hhbXBzIGltYWdlcw0KICAgIDxwPkxlcyBpbWFnZXMgc29udCBkZXMgY2hhbXBzIGRvbnQgbGUgbm9tIGRlIGNvbG9ubmUgY29ycmVzcG9uZCAmYWdyYXZlOyB1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgZGUgdHlwZSBJbWFnZS4gU2kgY2UgY2hhbXAgZXN0IHJlcXVpcyBkYW5zIGxlIGdyb3VwZSBkZSBkZXN0aW5hdGlvbiwgYWxvcnMgbGUgbm9tIHNwJmVhY3V0ZTtjaWNpJmVhY3V0ZTsgZGFucyBjZXMgY29sb25uZXMgZG9pdCBleGlzdGVyIGRhbnMgbGUgZG9zc2llciAmcXVvdDt1cGxvYWRzJnF1b3Q7IGRlIGwmIzAzOTtpbnN0YWxsYXRpb24gZGUgQ01TIE1hZGUgU2ltcGxlLiBTaSBsJiMwMzk7aW1hZ2UgbiYjMDM5O2V4aXN0ZSBwYXMsIGFuZCBxdWUgbGUgY2hhbXAgZXN0IHJlcXVpcywgbCYjMDM5O2VucmVnaXN0cmVtZW50ICZlYWN1dGU7Y2hvdWVyYS48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPkxlIHByb2Nlc3N1cyBkJiMwMzk7aW1wb3J0YXRpb24gZXN0IHN1amV0IGF1eCBsaW1pdGF0aW9ucyBpbXBvcyZlYWN1dGU7ZXMgcGFyIGwmIzAzOTtoJmVhY3V0ZTtiZXJnZXVyLCB0ZWxsZXMgcXVlIGxpbWl0YXRpb24gZGUgbSZlYWN1dGU7bW9pcmUsIGRlIHRlbXBzIGQmIzAzOTtleCZlYWN1dGU7Y3V0aW9uLCBkZSB0YWlsbGUgbWF4aW1hbGUgZGUgZmljaGllciB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZyZlYWN1dGU7LCBldCBsZXMgcmVzdHJpY3Rpb25zICZxdW90O3NhZmVtb2RlJnF1b3Q7LiBDaGFjdW5lIGRlIGNlcyBsaW1pdGF0aW9ucyBwZXV0IGNhdXNlciBsJiMwMzk7JmVhY3V0ZTtjaGVjIGRlIGwmIzAzOTtpbXBvcnRhdGlvbi4gRCZlZ3JhdmU7cyBsb3JzLCBpbCBlc3QgcmVjb21tYW5kJmVhY3V0ZTsgZGUgcyYjMDM5O2Fzc3VyZXIgcXVlIGxlcyBmaWNoaWVycyBkJiMwMzk7aW1wb3J0YXRpb24gc29pZW50IHBldGl0cyBlbiB0YWlsbGUsIGV0IGRlIG5hdHVyZSBzaW1wbGUuPC9wPg0KPHA+TWFsZ3ImZWFjdXRlOyBxdWUgdG91dCBhaWUgJmVhY3V0ZTt0JmVhY3V0ZTsgZW50cmVwcmlzIGFmaW4gZGUgcyYjMDM5O2Fzc3VyZXIgcXUmIzAzOTthdWN1bmUgY29ycnVwdGlvbiBkZSBsYSBiYXNlIGRlIGRvbm4mZWFjdXRlO2VzIG5lIHN1cnZpZW5uZSwgaWwgZXN0IHJlY29tbWFuZCZlYWN1dGU7IGRlIGZhaXJlIHVuZSBzYXV2ZWdhcmRlIGRlIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZSBhdmFudCBkJiMwMzk7ZWZmZWN0dWVyIHVuIGltcG9ydCBkJiMwMzk7dXRpbGlzYXRldXJzLjwvcD4NCjxwPkwmIzAzOTtleHBvcnRhdGlvbiBkZXMgZG9ubiZlYWN1dGU7ZXMgZXN0IGRhbnMgbGUgbSZlY2lyYzttZSBmb3JtYXQgcG91ciBsZXMgYmVzb2lucyBkJiMwMzk7aW1wb3J0YXRpb24uPC9wPg0KPGg1PkV4ZW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHVuZG9tYWluZS5mcixxdWVscXVlcGFydCxUWCxVUywxMjM0NQ0KPC9wcmU+DQonOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGVyIGxlcyB1dGlsaXNhdGV1cnMgZGFucyBjZSBncm91cGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnRW50cmVyIHVuIGZpY2hpZXIgQ1NWJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnRW50cmVyIHVuIGZpY2hpZXIgWE1MJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydGVyIGRlcyB1dGlsaXNhdGV1cnMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0ZXIgZGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdWaWRlcic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NoZW1pbiBkZSBkZXN0aW5hdGlvbiBkZSBsJiMwMzk7aW1hZ2UmbmJzcDsnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdVbiBwcm9ibCZlZ3JhdmU7bWUgZXN0IGFwcGFydSBhdmVjIHVuIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnZW1lbnQgbWFucXVhbnQgKG1haXMgcmVxdWlzKSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnSW1wb3NzaWJsZSBkJiMwMzk7YW5hbHlzZXIgbGUgZmljaGllciBYTUwgZm91cm5pJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdJbXBvc3NpYmxlIGRlIHN1cHByaW1lciB1biBncm91cGUgcXVpIGNvbnRpZW50IGVuY29yZSBkZXMgdXRpbGlzYXRldXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdDZXQgdXRpbGlzYXRldXIgZXN0IGQmZWFjdXRlO2omYWdyYXZlOyBjb25uZWN0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnTGUgdGV4dGUgZGUgY2V0dGUgaW1hZ2UgbiYjMDM5O2EgcGFzICZlYWN1dGU7dCZlYWN1dGU7IGVudHImZWFjdXRlOyBjb3JyZWN0ZW1lbnQnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0F1dG9yaXNlciBsZXMgdXRpbGlzYXRldXJzICZhZ3JhdmU7ICZlY2lyYzt0cmUgY29ubmVjdCZlYWN1dGU7cyBwbHVzIGQmIzAzOTt1bmUgZm9pcyZuYnNwOyc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnRXh0ZW5zaW9ucyBkZXMgZmljaGllcnMgZCYjMDM5O2ltYWdlcyBxdWUgbGVzIHV0aWxpc2F0ZXVycyBzb250IGF1dG9yaXMmZWFjdXRlO3MgJmFncmF2ZTsgdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlciZuYnNwOyc7CiRsYW5nWydldmVudF9oZWxwX09uUmVmcmVzaFVzZXInXSA9ICc8aDM+T25SZWZyZXNoVXNlcjwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZC48L3A+DQo8aDQ+UGFyYW1ldGVyczo8L2g0Pg0KPHVsPg0KICA8bGk+PGVtPmlkPC9lbT4gLSBUaGUgVXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IHN1cHByaW0mZWFjdXRlOzwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBsZSBub20gZGUgbCYjMDM5O3V0aWxpc2F0ZXVyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGwmIzAzOTtpZCBkZSBsJiMwMzk7dXRpbGlzYXRldXI8L2xpPg0KPGxpPjxlbT5wcm9wczwvZW0+IC0gVW4gaGFjaGFnZSByZW1wbGlzIGF2ZWMgbGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBkZSBsJiMwMzk7dXRpbGlzYXRldXI8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+VW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biB1dGlsaXNhdGV1ciBlc3QgY3ImZWFjdXRlOyZlYWN1dGU7PC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gbGUgbm9tIGRlIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsJiMwMzk7aWQgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IG1pcyAmYWdyYXZlOyBqb3VyIChwYXIgbHVpLW0mZWNpcmM7bWUgb3UgcGFyIHVuIGFkbWluKTwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIGxlIG5vbSBkZSBsJiMwMzk7dXRpbGlzYXRldXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gbCYjMDM5O2lkIGRlIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gZ3JvdXBlIGVzdCBjciZlYWN1dGU7JmVhY3V0ZTs8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBsZSBub20gZHUgZ3JvdXBlPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGxhIGRlc2NyaXB0aW9uIGR1IGdyb3VwZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsJiMwMzk7aWQgZHUgZ3JvdXBlPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+VW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBncm91cGUgZXN0IHN1cHByaW0mZWFjdXRlOzwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIGxlIG5vbSBkdSBncm91cGU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gbCYjMDM5O2lkIGR1IGdyb3VwZTwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gdXRpbGlzYXRldXIgc2UgY29ubmVjdGU8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gbGUgbm9tIGRlIGwmIzAzOTt1dGlsaXNhdGV1ciBjb25uZWN0JmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gbCYjMDM5O2FkcmVzc2UgaXAgZHUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxoMz5PbkxvZ291dDxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gdXRpbGlzYXRldXIgc2UgZCZlYWN1dGU7Y29ubmVjdGU8L3A+DQo8aDQ+UGFyYW0mZWdyYXZlO3RyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gbGUgbm9tIGRlIGwmIzAzOTt1dGlsaXNhdGV1ciBkJmVhY3V0ZTtjb25uZWN0JmVhY3V0ZTs8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gbCYjMDM5O2lkIGRlIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPGgzPk9uRXhwaXJlVXNlcjxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW5lIHNlc3Npb24gZXhwaXJlPC9wPg0KPGg0PlBhcmFtJmVncmF2ZTt0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGxlIG5vbSBkZSBsJiMwMzk7dXRpbGlzYXRldXIgZG9udCBsYSBzZXNzaW9uIGEgZXhwaXImZWFjdXRlOzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsJiMwMzk7aWQgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyIGRvbnQgbGEgc2Vzc2lvbiBhIGV4cGlyJmVhY3V0ZTs8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIHNlIGNvbm5lY3RlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIHNlIGQmZWFjdXRlO2Nvbm5lY3RlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1bmUgc2Vzc2lvbiBleHBpcmUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBjciZlYWN1dGU7JmVhY3V0ZTsnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBtaXMgJmFncmF2ZTsgam91ciAocGFyIGx1aS1tJmVjaXJjO21lIG91IHBhciB1biBhZG1pbiknOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBzdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBncm91cGUgZXN0IGNyJmVhY3V0ZTsmZWFjdXRlOyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIGdyb3VwZSBlc3QgbWlzICZhZ3JhdmU7IGpvdXInOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBncm91cGUgZXN0IHN1cHByaW0mZWFjdXRlOyc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnR3JvdXBlJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJypMZXMgY2hhbXBzIHN1aXZhbnRzIHNvbnQgZ2FiYXJpdHMgU21hcnR5Ljxici8+QXZlYyBsZXMgdmFyaWFibGVzIGV4aXN0YW50ZXMgIHNtYXJ0eSBldCBsZXMgcGx1Z2lucywgIGxlcyBtYWNyb3Mgc3VpdmFudGVzIHBldXZlbnQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlO2VzIGRhbnMgY2VzIGNoYW1wcyA6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBMb3JzIGRlIGwmIzAzOTt1dGlsaXNhdGlvbiBkZSBsYSBtYWNybyB7JGdyb3VwfSwgbGUgc3lzdCZlZ3JhdmU7bWUgcmVtcGxhY2UgbGUgbm9tIGR1IHByZW1pZXIgZ3JvdXBlIGF1cXVlbCBsJiMwMzk7dXRpbGlzYXRldXIgYXBwYXJ0aWVudCwgZXQgdmEgbGUgcmVkaXJpZ2VyIHN1ciBjZXR0ZSBwYWdlLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnJkVhY3V0ZTtkaXRlciBjZSBjaGFtcCBwb3VyIHImZWFjdXRlO2luaXRpYWxpc2VyIGxlIG1vdCBkZSBwYXNzZSB1dGlsaXNhdGV1cic7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnJkVhY3V0ZTtkaXRlciBjZSBjaGFtcCBwb3VyIHImZWFjdXRlO2luaXRpYWxpc2VyIGxlIG1vdCBkZSBwYXNzZSB1dGlsaXNhdGV1cic7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVbiB1dGlsaXNhdGV1ciBhdmVjIGNlIG5vbSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7Lic7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdBdWN1biByJmVhY3V0ZTtzdWx0YXQgcmV0b3VybiZlYWN1dGU7IGRlIGwmIzAzOTtleHBvcnQgY3N2JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xvbmd1ZXVyIGR1IGNoYW1wIG5vbSBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTG9uZ3VldXIgZHUgY2hhbXAgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMb25ndWV1ciBtaW5pbWFsZS9tYXhpbWFsZSBpbnZhbGlkZSBwb3VyIGxlIG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUvbWF4aW1hbGUgaW52YWxpZGUgcG91ciBsZSBub20gZCYjMDM5O3V0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdBZHJlc3NlIGVtYWlsIGludmFsaWRlJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnSWwgbiYjMDM5O3kgYSBwYXMgZCYjMDM5O2FkcmVzc2UgZW1haWwgZW5yZWdpc3RyJmVhY3V0ZTtlIHBvdXIgY2UgY29tcHRlLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5OyZlYWN1dGU7ZGl0aW9uIGRlcyBpbmZvcyB1dGlsaXNhdGV1cic7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibCZlZ3JhdmU7bWUgbG9ycyBkZSBsJiMwMzk7JmVhY3V0ZTtkaXRpb24gZGUgbGEgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1V0aWxpc2F0ZXVyIGFqb3V0JmVhY3V0ZTsgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGlsaXNhdGV1ciBzdXBwcmltJmVhY3V0ZTsgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbGV1ciAoZXhwcmVzc2lvbiByJmVhY3V0ZTtndWxpJmVncmF2ZTtyZSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBdHRlbnRpb24gOiBjZXMgY2hhbXBzIGFmZmVjdGVudCBsYSB0YWlsbGUgZGUgY2hhbXBzIGQmIzAzOTtlbnRyJmVhY3V0ZTtlIGRhbnMgbGVzIGZvcm11bGFpcmVzLiAgRGltaW51ZXIgY2V0dGUgdmFsZXVyIHN1ciB1biBzaXRlIGV4aXN0YW50IG4mIzAzOTtlc3QgcGFzIHJlY29tbWFuZCZlYWN1dGU7JzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdNb2RpZmllciBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBhZG1pbmlzdHJhdGV1ciZuYnNwOz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0NldHRlIGFkcmVzc2UgZW1haWwgZXN0IGQmZWFjdXRlO2omYWdyYXZlOyB1dGlsaXMmZWFjdXRlO2UnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXRpbGlzZXIgbGVzIGNvb2tpZXMgcG91ciBtJmVhY3V0ZTttb3Jpc2VyIGxlcyBkJmVhY3V0ZTt0YWlscyBkJiMwMzk7aWRlbnRpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdMZSBub20gZHUgY29va2llJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQXV0b3Jpc2VyIGxlcyBkb3VibG9ucyBkJiMwMzk7ZW1haWwmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnTCYjMDM5O2FkcmVzc2UgZW1haWwgZXN0IGxlIG5vbSBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnVGVudGUgZGUgZ2FyZGVyIGxlcyBjb25uZXhpb25zIGFjdGl2ZXMgcGFyIGwmIzAzOTt1dGlsaXNhdGlvbiBkZSBjb29raWVzIDxlbT5sZSBjb29raWUgZXN0IHImZWFjdXRlO2luaXRpYWxpcyZlYWN1dGU7IHBhciBsJiMwMzk7YWN0aXZpdCZlYWN1dGU7IHN1ciBsZSBzaXRlPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKEF1dG9yaXNlciBwbHVzaWV1cnMgdXRpbGlzYXRldXJzIHBhcnRhZ2VhbnQgbGEgbSZlY2lyYzttZSBhZHJlc3NlIGVtYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKEwmIzAzOTthZHJlc3NlIGVtYWlsIGVzdCBsZSBub20gZGUgbCYjMDM5O3V0aWxpc2F0ZXVyIC0tIE5lIHBhcyBjb2NoZXIgc2kgdm91cyBjaG9pc2lzc2V6ICZxdW90O0F1dG9yaXNlciBsZXMgZG91YmxvbnMgZCYjMDM5O2VtYWlsJnF1b3Q7ICEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQXV0b3Jpc2VyIGRlcyBkZW1hbmRlcyBtdWx0aXBsZXMgZGUgbW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKEF1dG9yaXNlciBsZXMgdXRpbGlzYXRldXJzICZhZ3JhdmU7IHJlLWRlbWFuZGVyIHVuZSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2UsIG1hbGdyJmVhY3V0ZTsgcXUmIzAzOTtpbHMgbiYjMDM5O2FpZW50IHBhcyB1dGlsaXMmZWFjdXRlOyB1bmUgcHImZWFjdXRlO2MmZWFjdXRlO2RlbnRlIGRlbWFuZGUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXRpbGlzZXIgbGVzIHBlcm1pc3Npb25zIHNwJmVhY3V0ZTtjaWZpcXVlIGRlIEZFVXNlcnMgPyZuYnNwOyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsZW1lbnQsIGxlcyBwZXJtaXNzaW9ucyBkZSBGRVVzZXJzIHNvbnQgaWRlbnRpcXVlcyBhdXggcGVybWlzc2lvbnMgZHUgcGFubmVhdSBkJiMwMzk7YWRtaW5pc3RyYXRpb24gdGVsIHF1ZSBBam91dGVyIHVuIHV0aWxpc2F0ZXVyLCBBam91dGVyIHVuZSBncm91cGUsIGV0Yy4gU2kgdm91cyBzJmVhY3V0ZTtsZWN0aW9ubmV6IGNldHRlIG9wdGlvbiwgaWwgeSBhdXJhIGRlcyBwZXJtaXNzaW9ucyBkaWZmJmVhY3V0ZTtyZW50ZXMgcG91ciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciBsZSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTsgKGVycmV1ciBpbnRlcm5lKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0lsIHkgYSBldSB1biBwcm9ibCZlZ3JhdmU7bWUgYXZlYyBsZSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTsuIFZldWlsbGV6IHImZWFjdXRlO2Vzc2F5ZXIuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1ZvdXMgbiYjMDM5O2F2ZXogcGFzIGVudHImZWFjdXRlOyBkZSBub20gZCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1ZvdXMgbmUgZGV2ZXogcGFzIGVudHJlciB2b3RyZSBhZHJlc3NlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1ZvdXMgbiYjMDM5O2F2ZXogcGFzIGVudHImZWFjdXRlOyBkZSBtb3QgZGUgcGFzc2UnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0QmZWFjdXRlO2Nvbm5leGlvbiB1dGlsaXNhdGV1cic7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdDb25uZXhpb24gdXRpbGlzYXRldXInOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5BVFRFTlRJT04gOjwvYj4gZW4gY2hhbmdlYW50IHVuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBxdWkgYSAmZWFjdXRlO3QmZWFjdXRlOyBhc3NpZ24mZWFjdXRlO2UgJmFncmF2ZTsgZGVzIGdyb3VwZXMsIHZvdXMgcG91dmV6IHBvdGVudGllbGxlbWVudCBkJmVhY3V0ZTt0cnVpcmUgb3UgYWImaWNpcmM7bWVyIHVuIHNpdGUgZXhpc3RhbnQgPGk+KGVuIHBhcnRpY3VsaWVyIHNpIHZvdXMgciZlYWN1dGU7ZHVpc2V6IGxlcyBsb25ndWV1cnMgZGUgY2hhbXBzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdDZXR0ZSBmb25jdGlvbiBuZSBtYXJjaGUgcGFzIHNvdXMgV2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTmUgY3ImZWFjdXRlO2V6IHBhcyBkZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBwb3VyIHV0aWxpc2F0ZXVyIChub20gZCYjMDM5O3V0aWxpc2F0ZXVyIGV0IG1vdCBkZSBwYXNzZSksIGNhciBjZWNpIGVzdCBpbmNsdXMgZGFucyBsZSBtb2R1bGUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZXIgbGEgbGlzdGUgZGVzIHV0aWxpc2F0ZXVycyBhdSBmb3JtYXQgQ1NWJm5ic3A7JzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGVyJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4gJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnJkVhY3V0ZTtkaXRlciBsYSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdMb25ndWV1ciBtYXhpbWFsZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ3NvcnRieSddID0gJ1RyaWVyIHBhciZuYnNwOyc7CiRsYW5nWydzb3J0J10gPSAnVHJpJm5ic3A7JzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1V0aWxpc2F0ZXVycyBkYW5zIGxlIGdyb3VwZSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGVyIGxlcyByJmVhY3V0ZTtzdWx0YXRzICZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0F1Y3VuIGVtYWlsIHRyb3V2JmVhY3V0ZTsgcG91ciBjZXQgdXRpbGlzYXRldXIuIFZvdXMgZGV2ZXogJmVhY3V0ZTt2ZW50dWVsbGVtZW50IGNvbnRhY3RlciBsJiMwMzk7YWRtaW5pc3RyYXRldXIuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGR1IGZvcm11bGFpcmUgbW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZHUgZm9ybXVsYWlyZSBkZSBjaGFuZ2VtZW50IGRlIHBhcmFtJmVncmF2ZTt0cmVzJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIG8mdWdyYXZlOyByZWRpcmlnZXIgbCYjMDM5O3V0aWxpc2F0ZXVyIGFwciZlZ3JhdmU7cyBxdSYjMDM5O2lsIHNlIHNvaXQgY29ubmVjdCZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBvJnVncmF2ZTsgcmVkaXJpZ2VyIGwmIzAzOTt1dGlsaXNhdGV1ciBhcHImZWdyYXZlO3MgcXUmIzAzOTtpbCBzZSBzb2l0IGQmZWFjdXRlO2Nvbm5lY3QmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRlIGRlIHRyaSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdVbiBub21icmUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3QgZW4gY291cnMgZGUgciZlYWN1dGU7aW5pdGlhbGlzYXRpb24gZGUgbW90cyBkZSBwYXNzZS4gQ2Ugbm9tYnJlIGVzdCBhY3R1ZWxsZW1lbnQgZGUgOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHZpZWlsbGVzIGRlIHBsdXMgZCYjMDM5O3VuZSBzZW1haW5lJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHZpZWlsbGVzIGRlIHBsdXMgZCYjMDM5O3VuIG1vaXMnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnU3VwcHJpbWVyIHRvdXRlcyBsZXMgZW50ciZlYWN1dGU7ZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZFY2lyYzt0ZXMtdm91cyBzJnVjaXJjO3IoZSkmbmJzcDs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVW4gY29kZSBpbnZhbGlkZSBhICZlYWN1dGU7dCZlYWN1dGU7IGVudHImZWFjdXRlOywgdmV1aWxsZXogciZlYWN1dGU7ZXNzYXllcic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnTGUgY29kZSB0ZW1wb3JhaXJlIHBvdXIgdm90cmUgaWQgdXRpbGlzYXR1ZXIgbiYjMDM5O2EgcGFzIHB1ICZlY2lyYzt0cmUgdHJvdXYmZWFjdXRlOyBkYW5zIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpcyZlYWN1dGU7IHBvdXIgYWZmaWNoZXIgbGUgZm9ybXVsYWlyZSBkZSB2JmVhY3V0ZTtyaWZpY2F0aW9uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpcyZlYWN1dGU7IHBvdXIgbCYjMDM5O2VtYWlsIGVudm95JmVhY3V0ZTsgbG9ycyBkZSBsJiMwMzk7b3VibGkgZHUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdVbmUgZGVtYW5kZSBkZSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkZSBtb3QgZGUgcGFzc2UgYSAmZWFjdXRlO3QmZWFjdXRlOyBzb3VtaXNlIHBvdXIgY2UgY29tcHRlLCBzb2l0IHBhciB2b3VzLW0mZWNpcmM7bWUsIHNvaXQgcGFyIHF1ZWxxdSYjMDM5O3VuIGQmIzAzOTthdXRyZS4gViZlYWN1dGU7cmlmaWV6IHZvdHJlIGVtYWlsLCB2b3VzIHkgdHJvdXZlcmV6IGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkZSB2b3RyZSBtb3QgZGUgcGFzc2UuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJldXIgZGUgYmFzZSBkZSBkb25uJmVhY3V0ZTtlcyc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdWb3VzIHJlY2V2ZXogY2UgbWVzc2FnZSBjYXIgcXVlbHF1JiMwMzk7dW4gKHBldXQgJmVjaXJjO3RyZSB2b3VzKSBhIGZhaXQgdW5lIGRlbWFuZGUgZGUgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGUgbW90IGRlIHBhc3NlLiBTaSBjJiMwMzk7ZXN0IGxlIGNhcywgbGlzZXogbGVzIGluc3RydWN0aW9ucyBjaS1kZXNzb3VzLiBTaSB2b3VzIG5lIHNhdmV6IHBhcyBkZSBxdW9pIGlsIHMmIzAzOTthZ2l0IG91IHNpIGNlIG4mIzAzOTtlc3QgcGFzIHZvdXMsIHZvdXMgcG91dmV6IHNpbXBsZW1lbnQgZWZmYWNlciBjZSBtZXNzYWdlIChjZWxhIG4mIzAzOTthdXJhIGF1Y3VuZSBjb25zJmVhY3V0ZTtxdWVuY2Ugc3VyIHZvdHJlIGNvbXB0ZSkuIE5vdXMgdm91cyByZW1lcmNpb25zLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZGUgJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ0xlIGNvZGUgc3VpdmFudCBhICZlYWN1dGU7dCZlYWN1dGU7IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBhdSBoYXNhcmQgcG91ciBsYSB2JmVhY3V0ZTtyaWZpY2F0aW9uIGR1IGNvbXB0ZSB1dGlsaXNhdGV1ci4gTG9yc3F1ZSB2b3VzIGNsaXF1ZXJleiBzdXIgbGUgbGllbiBjaS1kZXNzb3VzLCB2b3VzIHRyb3V2ZXJleiB1biBjaGFtcCBkYW5zIGxlcXVlbCBlbnRyZXIgY2UgY29kZS4gTm9ybWFsZW1lbnQsIGNlIGNoYW1wIGVzdCByZW1wbGkgcG91ciB2b3VzLCBtYWlzIGRhbnMgbGUgY2FzIGNvbnRyYWlyZSwgbGUgY29kZSBlc3QgOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0xlIGxpZW4gc3VpdmFudCB2b3VzIGFtJmVncmF2ZTtuZSBhdSBzaXRlIG8mdWdyYXZlOyB2b3VzIHBvdXJyZXogZW50cmVyIGxlIGNvZGUgY2ktZGVzc3VzLCBldCByJmVhY3V0ZTtpbml0aWFsaXNlciB2b3RyZSBtb3QgZGUgcGFzc2UgOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnTW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdMZSBtb2R1bGUgQ01TTWFpbGVyIG4mIzAzOTthIHBhcyAmZWFjdXRlO3QmZWFjdXRlOyB0cm91diZlYWN1dGU7JzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VuIGVtYWlsIGEgJmVhY3V0ZTt0JmVhY3V0ZTsgZW52b3kmZWFjdXRlOyAmYWdyYXZlOyAlcyBhdmVjIGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2UuIE1lcmNpJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU2kgdm91cyBhdmV6IG91YmxpJmVhY3V0ZTsgdm90cmUgbW90IGRlIHBhc3NlLCB2ZXVpbGxleiBlbnRyZXIgdm90cmUgaWRlbnRpZmlhbnQgaWNpLCBldCBzaSBub3VzIGxlIHRyb3V2b25zLCB2b3VzIHJlY2V2cmV6IHVuIGVtYWlsIGF2ZWMgbGVzIGluc3RydWN0aW9ucyBwb3VyIGxhIHImZWFjdXRlO2luaXRpYWxpc2F0aW9uIGR1IG1vdCBkZSBwYXNzZS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IHBvdXIgbCYjMDM5O291YmxpIGR1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdHYWJhcml0IHBvdXIgbGEgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGUgbCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0xhIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7ICVzIG4mIzAzOTthIHBhcyAmZWFjdXRlO3QmZWFjdXRlOyB0cm91diZlYWN1dGU7ZSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAncHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIHRyb3V2JmVhY3V0ZTtlcyc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWpvdXRlciB1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ1VuIGNoYW1wIHJlcXVpcyAoJXMpIGVzdCB2aWRlJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnVmV1aWxsZXogZW50cmVyIGljaSB1biBub3V2ZWF1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1ZvdXMgbmUgc2VtYmxleiBwYXMgJmVjaXJjO3RyZSBjb25uZWN0JmVhY3V0ZTsnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnRW5yZWdpc3RyZW1lbnQnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdDZSBjb21wdGUgZXN0IHAmZWFjdXRlO3JpbSZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdGb3JtYXQgZCYjMDM5O2FkcmVzc2UgZW1haWwgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdEYXRlIGQmIzAzOTtleHBpcmF0aW9uIGludmFsaWRlLiBFc3NheWV6IGF2ZWMgYW5uJmVhY3V0ZTtlIGFudCZlYWN1dGU7cmlldXJlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdJbCB5IGEgZXUgdW5lIGVycmV1ciBsb3JzIGRlIGxhIGQmZWFjdXRlO2Zpbml0aW9uICVzIHBvdXIgbCYjMDM5O3V0aWxpc2F0ZXVyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnaWQgZGUgZ3JvdXBlICVzIGludmFsaWRlJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnTWFycXVldXIgZGUgY2hhbXAgY2FjaCZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdDb3VsZXVyIGRlIGNoYW1wIGNhY2gmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydoaWRkZW4nXSA9ICdDYWNoJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ1VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBkdSBtJmVjaXJjO21lIG5vbSBlc3QgZCZlYWN1dGU7aiZhZ3JhdmU7IGQmZWFjdXRlO2ZpbmllJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0F1Y3VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBkJmVhY3V0ZTtmaW5pZSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0F1Y3VuIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7IG4mIzAzOTthICZlYWN1dGU7dCZlYWN1dGU7IHMmZWFjdXRlO2xlY3Rpb25uJmVhY3V0ZTtlIHBvdXIgY2UgZ3JvdXBlJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnQXVjdW4gZ3JvdXBlIGQmZWFjdXRlO2ZpbmknOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cGVzIHRyb3V2JmVhY3V0ZTtzJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdMJiMwMzk7YXBwYXJ0ZW5hbmNlICZhZ3JhdmU7IGF1IG1vaW5zIHVuIGdyb3VwZSBlc3QgcmVxdWlzZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWllcnQgbCYjMDM5O2FwcGFydGVuYW5jZSAmYWdyYXZlOyBhdSBtb2lucyB1biBncm91cGUmbmJzcDsnOwokbGFuZ1snYmFjayddID0gJ1JldG91cic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgZXN0IHVuIGNoYW1wIHJlcXVpcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFycXVldXIgZGUgY2hhbXBzIHJlcXVpcyZuYnNwOyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdNaXNlIGVuICZlYWN1dGU7dmlkZW5jZSBkZXMgY2hhbXBzIHJlcXVpcyBlbiZuYnNwOyc7CiRsYW5nWyduZXh0J10gPSAnU3VpdmFudCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VuIGdyb3VwZSBkdSBtJmVjaXJjO21lIG5vbSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7JzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnQ2hhbXAgcmVxdWlzJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9uZWwnOwokbGFuZ1snb2ZmJ10gPSAnRCZlYWN1dGU7c2FjdGl2JmVhY3V0ZTsnOwokbGFuZ1snc2l6ZSddID0gJ1RhaWxsZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFRhaWxsZSBtYXhpbWFsZSBkJiMwMzk7dW5lIGRlcyBkaW1lbnNpb25zIGRlIGwmIzAzOTtpbWFnZSBlbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xvbmd1ZXVyJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KGNhcmFjdCZlZ3JhdmU7cmVzIGRhbnMgbGUgY2hhbXAgdGV4dGUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHRpb25zIG1lbnUgZCZlYWN1dGU7cm91bGFudCwgcyZlYWN1dGU7cGFyJmVhY3V0ZTtlcyBwYXIgZGVzIHJldG91cnMgJmFncmF2ZTsgbGEgbGlnbmUnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnTGFiZWwgZGVzIGJvdXRvbnMgUmFkaW8gcyZlYWN1dGU7cGFyJmVhY3V0ZTtzIHBhciBkZXMgc2F1dHMgZGUgbGlnbmUuIExlcyB2YWxldXJzIHBldXZlbnQgJmVjaXJjO3RyZSBzJmVhY3V0ZTtwYXImZWFjdXRlO3MgZHUgdGV4dGUgcGFyIHVuIGNhcmFjdCZlZ3JhdmU7cmUgZXhlbXBsZSA6IEZlbW1lID0gZic7CiRsYW5nWydwcm9tcHQnXSA9ICdJbnZpdGUgZGUgc2Fpc2llJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwZSAnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnU3RhdHV0IGR1IGNoYW1wJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0RlbWFuZGUgbG9ycyBkZSBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZTxici8+bCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ZSc7CiRsYW5nWydjaGVja2JveCddID0gJ0Nhc2UgJmFncmF2ZTsgY29jaGVyJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGUgbXVsdGktcyZlYWN1dGU7bGVjdGlvbic7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdCb3V0b25zIFJhZGlvJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UgJzsKJGxhbmdbJ2VtYWlsJ10gPSAnQWRyZXNzZSBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0NoYW1wIGRlIHRleHRlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTWVudSBkJmVhY3V0ZTtyb3VsYW50JzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmllbnZlbnVlJzsKJGxhbmdbJ2xvZ291dCddID0gJ0QmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXRpbGlzZXIgbGUgbm9tIGRlIGNlIGdyb3VwZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdDaGFuZ2VtZW50IGRlIG1lcyBwYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xhIGNvbm5leGlvbiBhICZlYWN1dGU7Y2hvdSZlYWN1dGU7IDogaWRlbnRpZmlhbnQgb3UgbW90IGRlIHBhc3NlIGludmFsaWRlID8nOwokbGFuZ1snbG9naW4nXSA9ICdTJiMwMzk7aWRlbnRpZmllcic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1RleHRlIGR1IGJvdXRvbiBkZSBjb25uZXhpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnQWRyZXNzZSBlbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2UnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNZSBtJmVhY3V0ZTttb3Jpc2VyIHN1ciBjZXQgb3JkaW5hdGV1cic7CiRsYW5nWydyZWdpc3RlciddID0gJ1MmIzAzOTtlbnJlZ2lzdHJlcic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ01vdCBkZSBwYXNzZSBvdWJsaSZlYWN1dGU7ID8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpY2F0aW9uIG91YmxpJmVhY3V0ZTtzID8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ0dhYmFyaXQnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSUQgdXRpbGlzYXRldXIgbm9uIHRyb3V2JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0NldCBpZGVudGlmaWFudCAoJXMpIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1V0aWxpc2VyIFNNVFAgcG91ciBsYSB2YWxpZGF0aW9uIGRlcyBhZHJlc3NlcyBlbWFpbCZuYnNwOz8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUgZHUgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0xvbmd1ZXVyIG1heGltYWxlIGR1IG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMb25ndWV1ciBtaW5pbWFsZSBkZSBsJiMwMzk7aWRlbnRpZmlhbnQmbmJzcDsnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTG9uZ3VldXIgbWF4aW1hbGUgZGUgbCYjMDM5O2lkZW50aWZpYW50Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ0V4cGlyYXRpb24gZGUgc2Vzc2lvbiAoc2Vjb25kZXMpJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVdGlsaXNlciBsZXMgY29va2llcyBwb3VyIGdhcmRlciBsZXMgY29ubmV4aW9ucyBhY3RpdmVzJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQXV0b3Jpc2UgbCYjMDM5O2VucmVnaXN0cmVtZW50IHBhciBlbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3JvdXBlIHBhciBkJmVhY3V0ZTtmYXV0IHBvdXIgbGVzIG5vdXZlYXV4IHV0aWxpc2F0ZXVycyZuYnNwOyc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsZSBjaGFuZ2VtZW50IGRlcyBwYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnTGVzIG1vdHMgZGUgcGFzc2UgbmUgY29uY29yZGVudCBwYXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQgbm9uIHZhbGlkZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2Ugbm9uIHZhbGlkZSc7CiRsYW5nWydlZGl0dXNlciddID0gJyZFYWN1dGU7ZGl0ZXIgbCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWRlJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHV0JzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0NldCB1dGlsaXNhdGV1ciBuJiMwMzk7ZXN0IG1lbWJyZSBkJiMwMzk7YXVjdW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdBdWN1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50ZSBkJiMwMzk7aW1wb3J0ZXIgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyAmYWdyYXZlOyBkb3VibGUnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxldXInOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBlcyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTm9tIGRlIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7JzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1ZhbGV1ciBkZSBsYSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydhZGQnXSA9ICdBam91dGVyJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3JpcXVlJzsKJGxhbmdbJ2VkaXQnXSA9ICcmRWFjdXRlO2RpdGVyJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmUnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3AmZWFjdXRlO2NpZmlleiB1bmUgZGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIGhldXJlcyc7CiRsYW5nWycyNGhycyddID0gJzI0IGhldXJlcyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IGhldXJlcyc7CiRsYW5nWycxd2VlayddID0gJzEgc2VtYWluZSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHNlbWFpbmVzJzsKJGxhbmdbJzFtb250aCddID0gJzEgbW9pcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtb2lzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1vaXMnOwokbGFuZ1snMXllYXInXSA9ICcxIGFuJzsKJGxhbmdbJ25ldmVyJ10gPSAnSmFtYWlzJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ0xlIG1vZHVsZSBhICZlYWN1dGU7dCZlYWN1dGU7IGluc3RhbGwmZWFjdXRlOyBhdmVjIHN1Y2MmZWdyYXZlO3MuPGJyLz5Bc3N1cmV6LXZvdXMgZGUgZCZlYWN1dGU7ZmluaXIgbGEgcGVybWlzc2lvbiAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsuIERlIHBsdXMsIG5vdXMgdm91cyByZWNvbW1hbmRvbnMgZCYjMDM5O2luc3RhbGxlciBsZSBtb2R1bGUgQ2FwdGNoYS4gTG9yc3F1ZSBjZWx1aS1jaSBlc3QgaW5zdGFsbCZlYWN1dGU7LCBsYSB2YWxpZGF0aW9uIGRlIGwmIzAzOTtpbWFnZSBjYXB0Y2hhIHNlcmEgcmVxdWlzZSBwb3VyIHNlIGNvbm5lY3RlciwgZW4gcGx1cyBkZSBsJiMwMzk7aWRlbnRpZmlhbnQgZXQgZHUgbW90IGRlIHBhc3NlLiBDZWNpIGVzdCBjb25zZWlsbCZlYWN1dGU7IHBvdXIgJmVhY3V0ZTt2aXRlciBsZXMgYXR0YXF1ZXMuDQoNCjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gTGUgcGFyYW0mZWdyYXZlO3RyZSAmIzAzOTtub2NhcHRjaGEmIzAzOTsgcGV1dCAmZWNpcmM7dHJlIHV0aWxpcyZlYWN1dGU7IHBvdXIgZCZlYWN1dGU7c2FjdGl2ZXIgY2V0dGUgZm9uY3Rpb24gbSZlY2lyYzttZSBsb3JzcXVlIGxlIG1vZHVsZSBDYXB0Y2hhIGVzdCBpbnN0YWxsJmVhY3V0ZTsuDQoNCkxlIG1vZHVsZSBTZWxmUmVnaXN0cmF0aW9uIGRvaXQgJmVjaXJjO3RyZSBpbnN0YWxsJmVhY3V0ZTsgcG91ciBxdWUgbGUgdmlzaXRldXJzIHB1aXNzZW50IHMmIzAzOTtpbnNjcmlyZSBzdXIgdm90cmUgc2l0ZS4gU2lub24sIHZvdXMgZGV2cmV6IGxlcyBlbnJlZ2lzdHJlciB2b3VzIG0mZWNpcmM7bWUuJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnTW90IGRlIHBhc3NlJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUmUtdGFwZXogbGUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdVbiBncm91cGUgZHUgbSZlY2lyYzttZSBub20gZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICcmRWFjdXRlO2RpdGVyIGxlIGdyb3VwZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdWYWxpZGVyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbWVyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHMmdWNpcmM7cihlKSBxdWUgY2V0dGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgZXN0IGNvcnJlY3RlIHBvdXIgY2UgZ3JvdXBlJm5ic3A7P1xuRCZlYWN1dGU7c2FjdGl2ZXIgdW5lIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7IG4mIzAzOTtlZmZhY2VyYSBwYXMgbGVzIGVudHImZWFjdXRlO2VzIGRhbnMgbGEgdGFibGUgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBwb3VyIGNlIGdyb3VwZS91dGlsaXNhdGV1ci4gVG91dCBhdSBwbHVzLCBsZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIG5lIHNlcm9udCBwYXMgZGlzcG9uaWJsZXMuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICcmRWNpcmM7dGVzLXZvdXMgcyZ1Y2lyYztyKGUpIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGNlIGdyb3VwZSZuYnNwOz8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJyZFY2lyYzt0ZXMtdm91cyBzJnVjaXJjO3IoZSkgZGUgdm91bG9pciBjb21wbCZlZ3JhdmU7dGVtZW50IHN1cHByaW1lciBjZXR0ZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOz9cbkNlbGEgc3VwcHJpbWVyYSB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHBvdXIgY2V0dGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgaW5zdWZmaXNhbnRzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibCZlZ3JhdmU7bWUgbG9ycyBkZSBsJiMwMzk7YWpvdXQgZCYjMDM5O3VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5O2Fqb3V0IGQmIzAzOTt1bmUgcmVsYXRpb24gZGUgZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsJmVncmF2ZTttZSBsb3JzIGRlIGwmIzAzOTtham91dCBkJiMwMzk7dW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5O2Fqb3V0IGQmIzAzOTt1biB1dGlsaXNhdGV1ciAmYWdyYXZlOyB1biBncm91cGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVncmF2ZTttZSBsb3JzIGRlIGxhIHN1cHByZXNzaW9uIGQmIzAzOTt1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW5lIGFkcmVzc2UgZW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1BhcyBkJiMwMzk7YWNjJmVncmF2ZTtzIGVuICZlYWN1dGU7Y3JpdHVyZSBkYW5zIGxlIGRvc3NpZXIgZGUgZGVzdGluYXRpb24nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIG5vbiB2YWxpZGVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQXVjdW4gZ3JvdXBlIHRyb3V2JmVhY3V0ZTsnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcHBsaXF1ZXInOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJlJm5ic3A7JzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdJZGVudGlmaWFudCAoZXhwcmVzc2lvbiByJmVhY3V0ZTtndWxpJmVncmF2ZTtyZSkmbmJzcDsnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbiAnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnTm9tIGR1IGdyb3VwZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2MmZWdyYXZlO3MgcmVmdXMmZWFjdXRlOyc7CiRsYW5nWydlcnJvciddID0gJ0VycmV1cic7CiRsYW5nWydhZGRncm91cCddID0gJ0Fqb3V0ZXIgdW4gZ3JvdXBlJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0ZXIgbGUgZ3JvdXBlJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBam91dGVyIHVuIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVdGlsaXNhdGV1cnMgdHJvdXYmZWFjdXRlO3MnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcm91cGUnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmVyIGxlIGdyb3VwZSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdHYWJhcml0IGQmIzAzOTtlbnJlZ2lzdHJlbWVudCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIGQmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyc7CiRsYW5nWyd1c2VycyddID0gJ1V0aWxpc2F0ZXVycyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uIGRlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0cmZWdyYXZlO3JlIGxlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUGFnZSBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnRGVybmkmZWdyYXZlO3JlIHBhZ2UgYWNjJmVhY3V0ZTtkJmVhY3V0ZTtlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ0F1dHJlIHBhZ2UmbmJzcDs6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdWZXVpbGxleiBlbnRyZXIgbGUgdGV4dGUgZGUgbCYjMDM5O2ltYWdlJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTczNDg3NjE3Mi4xMzc3MTU3NDk3LjEzNzcxNTc0OTcuMTM3NzE1NzQ5Ny4xJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzNzcxNTc0OTcuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/hu_HU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ05lbSB2YWd5IGZlbGhhdGFsbWF6dmEsIGhvZ3kgZXp0IGEgdGFydGFsbWF0IG1lZ24mZWFjdXRlO3pkJzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3BlY2lmeSBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB0aGF0IG1heSBoYXZlIGFjY2VzcyB0byB0aGlzIHBhZ2UuICBTZWxlY3Rpbmcgbm8gZ3JvdXBzIHdpbGwgYWxsb3cgYW55IHVzZXIgbG9nZ2VkIGluIHRvIEZFVSB0byB2aWV3IHRoZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnViZlYWN1dGU7ZGV0dCBvbGRhbCBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3NhJzsKJGxhbmdbJ3BhZ2V0eXBlX2dyb3VwcyddID0gJ01lZ2VuZ2VkZXR0IGNzb3BvcnRvayc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2dyb3VwcyddID0gJ1NlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgYXJlIChieSBkZWZhdWx0KSBhbGxvd2VkIHRvIHZpZXcgcHJvdGVjdGVkIHBhZ2VzLiAgQW4gZWRpdG9yIHdpdGggdGhlICZxdW90O01hbmFnZSBBbGwgQ29udGVudCZxdW90OyBwZXJtaXNzaW9uIGNhbiBvdmVycmlkZSB0aGlzIGZvciBlYWNoIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfYWN0aW9uJ10gPSAnQWN0aW9uIGZvciBpbnN1ZmZpY2llbnQgYWNjZXNzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmeSB0aGUgYmVoYXZpb3IgZm9yIHBlb3BsZSBhY2Nlc3NpbmcgdGhpcyBwYWdlIHdpdGhvdXQgc3VmZmljaWVudCBwZXJtaXNzaW9uLiAgWW91IGNhbiBlaXRoZXIgcmVkaXJlY3QgdG8gYSBzcGVjaWZpZWQgcGFnZSwgb3IgZGlzcGxheSB0aGUgbG9naW4gZm9ybSc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnQmVsJmVhY3V0ZTtwxZEgxbFybGFwIG11dGF0JmFhY3V0ZTtzYSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ0F0aXImYWFjdXRlO255JmlhY3V0ZTt0JmFhY3V0ZTtzIGVneSBvbGRhbHJhJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICcmQWFjdXRlO3RpciZhYWN1dGU7bnkmaWFjdXRlO3QmYWFjdXRlO3MgaWRlJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgdG8gcmVkaXJlY3QgdG8uICBJZiB5b3Ugc2VsZWN0IG5vbmUsIGFuZCB0aGUgYWN0aW9uIGlzIHNldCB0byAmcXVvdDtyZWRpcmVjdCZxdW90OyB0aGUgdXNlciB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbWVzc2FnZSBpbmRpY2F0aW5nIHRoYXQgdGhleSBkbyBub3QgaGFjZSBhY2Nlc3MgdG8gdGhlIHBhZ2UnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdFbmdlZCZlYWN1dGU7bHllayc7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdWJmVhY3V0ZTtkZXR0IHRhcnRhbG9tJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ01lZ3Rla2ludCZlYWN1dGU7cyc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGcm9udEVuZFVzZXJzIHNhbHRzIGFsbCBwYXNzd29yZHMgd2l0aCB0aGlzIGtleSB3aGljaCBpcyBjcmVhdGVkIHVwb24gaW5zdGFsbC4gIE9uY2UgdXNlcnMgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZSB0aGUgc2FsdCBjYW5ub3QgYmUgY2hhbmdlZC4gVGhlIHNhbHQgbWF5IGJlIGVtcHR5IGZvciBvbGRlciBpbnN0YWxscy4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdBZHZhbmNlZCBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQmcXVvdDtoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRvIHNhdmUgZGF0YWJhc2UgcXVlcmllcy4gIElmIGxlZnQgZW1wdHkgb3Igc2V0IHRvIDAgZXhwaXJ5IHdpbGwgYmUgcGVyZm9ybWVkIG9uIGV2ZXJ5IHJlcXVlc3QuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdZb3VyIHNldHRpbmdzIHdlcmUgc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnRm9yY2UgdXNlcnMgdG8gbG9nb3V0IGF0IHJlZ3VsYXIgaW50ZXJ2YWxzJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RpbWVzIGZvciBmb3JjZWQgbG9nb3V0JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdTcGVjaWZ5IGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGltZXMgbGlrZSBISDpNTSxISDpNTSB3aGVyZSB1c2VycyB3aWxsIGJlIGZvcmNpYmx5IGxvZ2dlZCBvdXQuIE5vdGUsIHRoaXMgdXNlcyB0aGUgcHN1ZWRvY3JvbiBtZWNoYW5pc20gc28geW91IG11c3QgYmUgc3VyZSB0aGF0IHRoZSB0aW1lcyBlbnRlcmVkIGhlcmUgd2lsbCBjb2luY2lkZSByZWFzb25hYmx5IHdpdGggeW91ciAmcXVvdDtwc2V1ZG9jcm9uIGdyYW51bGFyaXR5JnF1b3Q7IGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdWRlIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiA8ZW0+KG1pbnV0ZXMpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSWYgc3BlY2lmaWVkLCBhbnkgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIHRoaXMgbnVtYmVyIG9mIHNlY29uZHMgd2lsbCBub3QgYmUgZm9yY2libHkgbG9nZ2VkIG91dCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0JpenRvcyB0Jm91bWw7ciZvdW1sO2xuaSBha2Fyb2QgJXMgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO3Q/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnVGhlIHVwbG9hZGVkIGZpbGUgZG9lcyBub3QgbWF0Y2ggdGhlIGxpc3Qgb2YgYWxsb3dlZCBmaWxlIHR5cGVzJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdBbGwgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGhhcyBiZWVuIGRlbGV0ZWQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnSWYgZW5hYmxlZCwgdGhpcyBtb2R1bGUgd2lsbCBsaXN0ZW4gdG8gZXZlbnRzIGZyb20gdGhlIEVjb21tZXJjZSBzdWl0ZS4gIFRoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBoYXZlIGVmZmVjdCBpZiB0aGlzIHNldHRpbmcgaXMgZW5hYmxlZC4nOwokbGFuZ1sncHJvbXB0X2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdMaXN0ZW4gdG8gT3JkZXIgRXZlbnRzJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICdOb25lJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyB0Jm91bWw7cmwmZWFjdXRlO3NlJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnRXhwaXJlIFVzZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgY2FuY2VsbGVkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBkZWxldGVkJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0Uta2VyZXNrZWRlbGVtIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3NlY3VyZWZpZWxkbWFya2VyJ10gPSAnQml6dG9ucyZhYWN1dGU7Z29zIG1lesWRIGplbHrFkSc7CiRsYW5nWydzZWN1cmVmaWVsZGNvbG9yJ10gPSAnQml6dG9ucyZhYWN1dGU7Z29zIG1lesWRIHN6JmlhY3V0ZTtuJzsKJGxhbmdbJ3Byb21wdF9lbmNyeXB0J10gPSAnVCZhYWN1dGU7cm9sZCBlenQgYXogYWRhdG90IHRpdGtvcyZpYWN1dGU7dHZhIGF6IGFkYXRiJmFhY3V0ZTt6aXNiYW4nOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnVGhlIGNob3NlbiBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBnaXZlbiB5b3VyIGN1cnJlbnQgY29uZmlndXJhdGlvbic7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGF1dG9tYXRpa3VzYW5sJmVhY3V0ZTt0cmVob3p2YSc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdJZiBhIHVzZXIgaXMgYXV0aGVudGljYXRlZCBieSBhbiBleHRlcm5hbCBhdXRoZW50aWNhdGlvbiBtb2R1bGUgYnV0IGlzIG5vdCBrbm93biBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgc2hvdWxkIGFuIEZFVSBhY2NvdW50IGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseT8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNhbGx5IENyZWF0ZSBVbmtub3duIFVzZXJzJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdLaWplbHomZWFjdXRlO3NpIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdBIGsmb3VtbDt2ZXRrZXrFkSBiJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rIGNzYWsgYWtrb3IgJmVhY3V0ZTtydiZlYWN1dGU7bnllc2VrIGhhIGEgJmFtcDtxdW90O0JlJmVhY3V0ZTtwJmlhY3V0ZTt0ZXR0IGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyZhbXA7cXVvdDstdCBoYXN6biZhYWN1dGU7bGp1ay4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byByZXF1ZXN0IGxvc3QgbG9naW4gaW5mb3JtYXRpb24sIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIGEgcGFzc3dvcmQgcmVzZXQsIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdFbmdlZGQgbWVnIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO2tuYWssIGhvZ3kgayZlYWN1dGU7cmomZWFjdXRlO2sgYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7bmV2JnV1bWw7a2V0JzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0VuZ2VkZCBtZWcgYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7a25haywgaG9neSBqZWxzeiZvYWN1dGU7Y3NyJmVhY3V0ZTt0IGsmZWFjdXRlO3JqZW5layc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXpvbm9zJmlhY3V0ZTt0JmFhY3V0ZTtzaSBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0JlJmVhY3V0ZTtwJmlhY3V0ZTt0ZXR0IGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdGRVUgYWxhcHZldMWRIGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F6b25vcyZpYWN1dGU7dCZhYWN1dGU7c2kgbW9kdWwvbSZvYWN1dGU7ZHN6ZXInOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0EgRnJvbnRlbmRVc2VycyBtb2R1bCBrJnV1bWw7bCZvdW1sO25ib3rFkSBhem9ub3MmaWFjdXRlO3QmYWFjdXRlO3NpIG0mb2FjdXRlO2RzemVyZWtldCBpcyB0JmFhY3V0ZTttb2dhdCwgdiZhYWN1dGU7bHRveiZvYWN1dGU7IGsmZWFjdXRlO3Blc3MmZWFjdXRlO2dla2tlbC4gIEJpem9ueW9zIGZ1bmtjaW9uYWxpdCZhYWN1dGU7cyBuZW0gZm9nIG3FsWsmb3VtbDtkbmkgdmFneSBraSBsZXN6IGthcGNzb2x2YSBtaWtvciBuZW0gYSBiZSZlYWN1dGU7cCZpYWN1dGU7dGV0dCBhem9ub3MmaWFjdXRlO3QmYWFjdXRlO3N0IGhhc3puJmFhY3V0ZTtsb2QuJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnQSAlcy1uYWsobmVrKSBtZWdhZG90dCAmZWFjdXRlO3J0JmVhY3V0ZTtrIG0mYWFjdXRlO3IgaGFzem4mYWFjdXRlO2xhdGJhbiB2YW4gZWd5IG0mYWFjdXRlO3NpayBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7ICZhYWN1dGU7bHRhbCc7CiRsYW5nWyd1bmlxdWUnXSA9ICdFZ3llZGknOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnQSAlcy1uYWsobmVrKSAoJXMpIG1lZ2Fkb3R0ICZlYWN1dGU7cnQmZWFjdXRlO2sgbmVtIGVneWVkaSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yY2UgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlciBhY2NvdW50cyc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVc2VkIHdpdGggdGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGlmIHNwZWNpZmllZCB3aWxsIGluZGljYXRlIHRoYXQgdGhlIHVzZXIgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSBwYWdlIChieSB1cmwpIHRoYXQgdGhlIHVzZXIgd2FzIHZpZXdpbmcgYmVmb3JlIHRoZSBhY3Rpb24gb2NjdXJyZWQuICBUaGlzIHBhcmFtZXRlciB3aWxsIG92ZXJyaWRlIHRoZSByZWRpcmVjdCBwcmVmZXJlbmNlcywgYW5kIHRoZSByZXR1cm50byBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2VkIHdpdGggb25lIG9mIHRoZSBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoYXQgdGhlIGZvcm1zIHNob3VsZCBub3QgYmUgcGxhY2VkIGlubGluZSwgaW5zdGVhZCB0aGUgcmVzdWx0aW5nIG91dHB1dCBhZnRlciBmb3JtIHN1Ym1pc3Npb24gd2lsbCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2snOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0xvZ2luIFNlc3Npb24gVGltZW91dCBXYXJuaW5nJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICZxdW90OyZxdW90O09rJnF1b3Q7IHRvIGNvbmZpcm0geW91ciBhY3Rpdml0eSBvbiB0aGlzIHdlYnNpdGUuJzsKJGxhbmdbJ29rJ10gPSAnUmVuZGJlbic7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdSZXNldCBTZXNzaW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdMJmFhY3V0ZTt0b2dhdCZvYWN1dGU7ayc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1YmYWFjdXRlO2xhc3N6IGVneSB2YWd5IHQmb3VtbDtiYiBGRVUgY3NvcG9ydG90IGFtZWx5IGwmYWFjdXRlO3RoYXRqYSBlenQgYXogb2xkYWx0JzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFZ3kgY3NvcG9ydG90IGtpIGtlbGwgdiZhYWN1dGU7bGFzenRhbmknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhYWN1dGU7bGFzc3ogZWd5ZXQnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0tlemQmZWFjdXRlO3NpICZlYWN1dGU7dic7CiRsYW5nWydlbmRfeWVhciddID0gJ0JlZmVqZXrFkWQmZWFjdXRlO3MgJmVhY3V0ZTt2JzsKJGxhbmdbJ2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnQiZlYWN1dGU7bHllZ2smZWFjdXRlO3AgbSZlYWN1dGU7cmV0ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdCaXp0b3NhbiB0Jm91bWw7ciZvdW1sO2xuaSBha2Fyb2QgYSBraXYmYWFjdXRlO2xhc3p0b3R0IGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrYXQ/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0tpdiZhYWN1dGU7bGFzenRvdHRhayB0Jm91bWw7cmwmZWFjdXRlO3NlJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnaCZvYWN1dGU7bmFwJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICcmRWFjdXRlO3J0ZXMmaWFjdXRlO3QmZWFjdXRlO3NpIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnJkFhY3V0ZTt0aXImYWFjdXRlO255JmlhY3V0ZTt0JmFhY3V0ZTtzaSBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnJkFhY3V0ZTtsdGFsJmFhY3V0ZTtub3MgYmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzb2snOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gYW5kIENvb2tpZSBTZXR0aW5ncyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ01lesWRIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdXWVNJV1lHIGhhc3puJmFhY3V0ZTtsYXQmYWFjdXRlO25hayBlbmdlZCZlYWN1dGU7bHlleiZlYWN1dGU7c2UgZXplbiBhIHN6Jm91bWw7dmVnZXMgbWV6xZFuJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk1lZ2plZ3l6JmVhY3V0ZTtzOiA8L3N0cm9uZz4gRXogYXogbWNyeXB0IGZ1bmtjaSZvYWN1dGU7dCBoYXN6biZhYWN1dGU7bGphIHRpdGtvcyZpYWN1dGU7dCZhYWN1dGU7c2kgYyZlYWN1dGU7bG9rcmEgZXMgZXp0IG5lbSB0YWwmYWFjdXRlO2x0dWsgYSB0ZWxlcCZpYWN1dGU7dCZlYWN1dGU7c2tvci4gSyZlYWN1dGU7cmomdXVtbDtrIGwmZWFjdXRlO3BqIGthcGNzb2xhdGJhIGEgc3plcnZlciByZW5kc3plcmdhemQmYWFjdXRlO2omYWFjdXRlO3ZhbC4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnTSZvYWN1dGU7ZG9zJmlhY3V0ZTt0b3R0IGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2F0dGludHMgaWRlIGhhIG5lbSBlbWwmZWFjdXRlO2tzemVsIGEgYmVsJmVhY3V0ZTtwJmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTtkcmEnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0thdHRpbnRzIGlkZSBoYSBuZW0gZW1sJmVhY3V0ZTtrc3plbCBhIGplbHN6YXZhZHJhJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2F0dGludHMgaWRlLCBob2d5IGtpamVsZW50a2V6eic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2F0dGludHMgaWRlLCBob2d5IGJlJmFhY3V0ZTtsbCZpYWN1dGU7dHNkIGEgamVsc3phdmFkICZlYWN1dGU7cyBtJmFhY3V0ZTtzIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2lkJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBzYWJsb24gbWVndGVraW50JmVhY3V0ZTtzZSc7CiRsYW5nWydldmVudCddID0gJ0VzZW0mZWFjdXRlO255JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgZXNlbSZlYWN1dGU7bnkgJmVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJyZFYWN1dGU7cnRlcyZpYWN1dGU7dCZlYWN1dGU7c2kgZW1haWwgYyZpYWN1dGU7bSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnJkVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzaSBlbWFpbCBzYWJsb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnJkVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzaSBlbWFpbCB0JmFhY3V0ZTtyZ3lhJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRW1haWwgJmVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzZWsnOwokbGFuZ1snT25Mb2dpbiddID0gJ0JlamVsZW50a2V6JmVhY3V0ZTtza29yJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3Nrb3InOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnT24gU2Vzc2lvbiBFeHBpcnknOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnJlVhY3V0ZTtqIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgbCZlYWN1dGU7dHJlaG96JmFhY3V0ZTtzYWtvcic7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IHQmb3VtbDtybCZlYWN1dGU7c2Vrb3InOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3NhaSBtJm9hY3V0ZTtkb3MmaWFjdXRlO3QmYWFjdXRlO3Nha29yJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7Y3NvcG9ydCBsJmVhY3V0ZTt0cmVob3omYWFjdXRlO3Nha29yJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7Y3NvcG9ydCB0Jm91bWw7cmwmZWFjdXRlO3Nla29yJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnQXogZWxmZWxlanRldHQgYmVsJmVhY3V0ZTtwJmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTsgZnVua2Npb25hbGl0JmFhY3V0ZTtzIGJlZmVqZXrFkWQmb3VtbDt0dC4gVGFsJmFhY3V0ZTtsdHVuayBlZ3kgZWd5ZWRpIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuZXZldCBhbWkgbWVnZmVsZWwgYXogJmFhY3V0ZTtsdGFsYWQgYmUmaWFjdXRlO3J0IHImZWFjdXRlO3N6bGV0ZWtuZWsnOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0EgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO25ldmVkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBEZXRhaWxzIFRlbXBsYXRlJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBDb25maXJtIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnSGliYTogVCZvdW1sO2JiLCBtaW50IGVneSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7aSBmaSZvYWN1dGU7a290IHRhbCZhYWN1dGU7bHR1bmsgYW1pIG1lZ2VneWV6aWsgYSBtZWdhZG90dCB0dWxhamRvbnMmYWFjdXRlO2duYWsnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnSGliYTogTmVtIHRhbCZhYWN1dGU7bHRhbSBtZWdmZWxlbMWRIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTt0JzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdIaWJhOiBOZW0gdGFsJmFhY3V0ZTtsdGFtIGlseWVuIG5ldsWxIGNzb3BvcnRvdCc7CiRsYW5nWydyZWFkb25seSddID0gJ0NzYWsgb2x2YXNoYXQmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dnZWQgb3V0IGJ5IGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ0NzYWsgYmVqZWxlbnRrZXpldHQgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO2sgbXV0YXQmYWFjdXRlO3NhJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGtpbCZlYWN1dGU7cHRldCZlYWN1dGU7c2UnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyB0dWxhamRvbnMmYWFjdXRlO2dhaSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBiZWwmZWFjdXRlO3AmZWFjdXRlO3NpIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2lkPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnQgZ3JvdXAgZGVmaW5pdGlvbiAoYW5kIHByb3BlcnRpZXMpIHRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVXNlciBIaXN0b3J5IE1haW50ZW5hbmNlJzsKJGxhbmdbJ3llcyddID0gJ0lnZW4nOwokbGFuZ1snbm8nXSA9ICdOZW0nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogS29ybCZhYWN1dGU7dCBuJmVhY3V0ZTtsayZ1dW1sO2wgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnRWd5ICZvYWN1dGU7ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdIYXQgJm9hY3V0ZTtyJmFhY3V0ZTtzJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1RpemVuayZlYWN1dGU7dCAmb2FjdXRlO3ImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdFZ3kgbmFwb3MnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRWd5IGhldGVzJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdLJmVhY3V0ZTt0IGhldGVzJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFZ3kgaCZvYWN1dGU7bmFwb3MnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ0gmYWFjdXRlO3JvbSBIJm9hY3V0ZTtuYXBvcyc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ0hhdCBoJm9hY3V0ZTtuYXBvcyc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFZ3kgJmVhY3V0ZTt2ZXMnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQ3NvcG9ydG9zJmlhY3V0ZTt0JmFhY3V0ZTtzICZlYWN1dGU7cyByZW5kZXomZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0Ega3JpdCZlYWN1dGU7cml1bW5hayBtZWdmZWxlbMWRIGJlamVneXomZWFjdXRlO3Nlayc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0NzJm91bWw7a2tlbsWRIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb3Zla3bFkSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7dic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnQ3Mmb3VtbDtra2VuxZEgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ04mb3VtbDt2ZWt2xZEgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ0Rlc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ0FzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0Rlc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0FzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdObyBIaXN0b3J5IERldGVjdGVkJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXQnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3JvdXAgQnkgSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0V2ZW50IFR5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0Rpc3BsYXkgb25seSBldmVudHMgdGhhdCBhcmUgbGVzcyB0aGFuOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnUGFnZSBMaW1pdCc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnkgUmVwb3J0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVbmtub3duJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBjJmlhY3V0ZTttJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdWaXNzemEnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcnMgRW5jb3VudGVyZWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0JlamVneXomZWFjdXRlO3MgaG96eiZhYWN1dGU7YWR2YSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05lbSB0dWR0YW0gbWVnbnlpdG5pIGEgZiZhYWN1dGU7amx0JzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oND4NCjxwPlRoZSBpbnB1dCBmaWxlIG11c3QgYmUgaW4gQVNDSUkgZm9ybWF0IHVzaW5nIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMuICBFYWNoIGxpbmUgaW4gdGhpcyBpbnB1dCBmaWxlICh3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhlYWRlciBsaW5lLCBkaXNjdXNzZWQgYmVsb3cpIHJlcHJlc2VudHMgb25lIHVzZXIgcmVjb3JkLiAgVGhlIG9yZGVyIG9mIHRoZSBmaWVsZHMgaW4gZWFjaCBsaW5lIG11c3QgYmUgaWRlbnRpY2FsLjwvcD4NCjxoNT5IZWFkZXIgbGluZTwvaDU+DQo8dWw+DQo8bGk+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgbXVzdCBiZWdpbiB3aXRoIHR3byBwb3VuZCAoXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD48YnIvPg0KPGg2PjxzdHJvbmc+Q29sdW1uYXIgRGF0YTwvc3Ryb25nPjwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHVzZXJpZCBmb3IgdGhlIHVzZXIuIEEgdmFsdWUgaW4gdGhpcyBmaWVsZCB3aWxsIGluZGljYXRlIHlvdSBhcmUgZG9pbmcgYW4gdXBkYXRlLiAgVGhlcmUgaXMgYSBjaGVja2JveCBkdXJpbmcgdGhlIGltcG9ydCBwcm9jZXNzIHRvIHNwZWNpZnkgdGhhdCB0dWUgdXNlcmlkIGZpZWxkIGNhbiBiZSBpZ25vcmVkIGZvciB0aGUgcHVycG9zZXMgb2YgbWlncmF0aW5nIHVzZXJzIGZyb20gb25lIHNlcnZlciB0byBhbm90aGVyLjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSBwYXNzd29yZCB0byBzZXQgZm9yIHRoZSB1c2VyLiAgT3B0aW9uYWxseSwgYSA8c3Ryb25nPnBhc3N3b3JkaGFzaDwvc3Ryb25nPiBmaWVsZCBtYXkgYmUgaW5jbHVkZWQgdGhhdCBzcGVjaWZpZXMgdGhlZSA8ZW0+c2FsdGVkPC9lbT4gTUQ1IGhhc2ggb2YgdGhlIHVzZXJzIHBhc3N3b3JkLiAgSWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGVtcHR5IHdoZW4gY3JlYXRpbmcgbmV3IHVzZXJzIHRoZSBwYXNzd29yZCAmcXVvdDtjaGFuZ2VtZSZxdW90OyBpcyBoYXJkY29kZWQuPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IEZpZWxkIC0gdG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmdyb3VwbmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBncm91cHMgdGhhdCB5b3Ugd2FudCB0byBoYXZlIHRoZSB1c2VyIGJlIGEgbWVtYmVyIG9mLiBJZiBhbGwgcmVxdWlyZWQgZmllbGRzIGFyZSBub3QgZmlsbGVkIGluIHRoZSBpbnNlcnQvdXBkYXRlIG9mIHRoZSByZWNvcmQgd2lsbCBmYWlsLiBTZWUgTXVsdGlzZWxlY3QgRmllbGRzIGJlbG93IGZvciBzeW50YXguPC9saT4NCjxsaT5Ecm9wZG93bi9SYWRpbyBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5EYXRlIEZpZWxkcw0KICAgIDxwPk11c3QgYmUgaW4gdGhlIGZvcm1hdCBvZiBNTS1ERC1ZWVlZPC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD48L2xpPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjxsaT48ZW0+cHJvcHM8L2VtPiAtIEEgaGFzaCBmaWxsZWQgd2l0aCB0aGUgcHJvcGVydGllcyBvZiB0aGUgdXNlcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBmdWxsIHNtYXJ0eSB0ZW1wbGF0ZXMuPGJyLz5BbG9uZyB3aXRoIG90aGVyIHByZS1leGlzdGluZyBzbWFydHkgdmFyaWFibGVzIGFuZCBwbHVnaW5zLCB0aGUgeyR1c2VybmFtZX0gYW5kIHskZ3JvdXB9IHZhcmlhYmxlcyBhcmUgYXZhaWxhYmllLiAgPGVtPihUaGUgeyRncm91cH0gdmFyaWFibGUgbWF0Y2hlcyB0aGUgZmlyc3QgZ3JvdXAgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy4pPC9lbT4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0EgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHVzZXJuYW1lIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0aCBvZiBwYXNzd29yZCBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBwYXNzd29yZCBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0ludmFsaWQgRW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGNvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MgZm9yIHRoaXMgYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzZXIgQWRkZWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc2VyIERlbGV0ZWQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnTSZhYWN1dGU7ciBoYXN6biZhYWN1dGU7bGF0YmFuIGxldsWRIGVtYWlsIGMmaWFjdXRlO20nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnUyZ1dW1sO3RpayBoYXN6biZhYWN1dGU7bGF0YSBhIGJlamVsZW50a2V6JmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTsgJmVhY3V0ZTtzemJlbiB0YXJ0JmFhY3V0ZTtzJmFhY3V0ZTtyYSc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1MmdXVtbDt0aSBuZXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnSXNtJmVhY3V0ZTt0bMWRZMWRIGVtYWlsIGMmaWFjdXRlO20gaGFzem4mYWFjdXRlO2xhdCZhYWN1dGU7bmFrIGVuZ2VkJmVhY3V0ZTtseWV6JmVhY3V0ZTtzZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBjJmlhY3V0ZTttIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoVCZvdW1sO2JiIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgaXMgaGFzem4mYWFjdXRlO2xoYXRqYSB1Z3lhbmF6dCBheiBlbWFpbCBjJmlhY3V0ZTttZXQpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcoQSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGVtYWlsIGMmaWFjdXRlO20mZWFjdXRlO3QgaGFzem4mYWFjdXRlO2xqYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7dmsmZWFjdXRlO250IC0tIE5lIGhhc3puJmFhY3V0ZTtsZCBlenQgYXogaXNtJmVhY3V0ZTt0bMWRZMWRIGVtYWlsIGMmaWFjdXRlO20gaGFzem4mYWFjdXRlO2xhdCZhYWN1dGU7bmFrIGVuZ2VkJmVhY3V0ZTtseWV6JmVhY3V0ZTtzJmVhY3V0ZTt2ZWwhKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoQWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05lbSAmaWFjdXRlO3J0JmFhY3V0ZTtsIGJlIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuZXZldCc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOZW0gJmlhY3V0ZTtydGFkIGJlIGF6IGVtYWlsIGMmaWFjdXRlO21lZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZW0gYWR0JmFhY3V0ZTtsIG1lZyBqZWxzeiZvYWN1dGU7dCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmRVc2VyIGtpamVsZW50a2V6JmVhY3V0ZTtzJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kVXNlciBiZWplbGVudGtleiZlYWN1dGU7cyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0V6IGEgZnVua2NpJm9hY3V0ZTsgbmVtIG3FsWsmb3VtbDtkaWsgV2luZG93c29uJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0IFVzZXJzIHRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0JzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0IFByb3BlcnR5OiA8ZW0+JXM8L2VtPic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIEhvc3N6JzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdMJmVhY3V0ZTt0cmVob3p2YSc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdIYXQmYWFjdXRlO3JvbGQgYXogZXJlZG0mZWFjdXRlO255ZWtldCBlbm55aXJlJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdNaW5kZW4gYmVqZWd5eiZlYWN1dGU7cyBlbHQmYWFjdXRlO3ZvbCZpYWN1dGU7dCZhYWN1dGU7c2EnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0JpenRvcyB2YWd5IGJlbm5lPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0EgbWVnYWRvdHQgayZvYWN1dGU7ZCBoaWImYWFjdXRlO3MsIGsmZWFjdXRlO3JsZWsgcHImb2FjdXRlO2ImYWFjdXRlO2xkICZ1YWN1dGU7anJhJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0FkYXRiJmFhY3V0ZTt6aXMgaGliYSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLJm9hY3V0ZTtkJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiByYW5kb21seSBnZW5lcmF0ZWQgaW4gb3JkZXIgdG8gdmVyaWZ5IHRoZSB1c2VyIGFjY291bnQuICB3aGVuIHlvdSBjbGljayBvbiB0aGUgbGluayBiZWxvdyB5b3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGZpZWxkIHRvIGVudGVyIHRoaXMgY29kZS4gIE5vcm1hbGx5IHRoZSBmaWVsZCBpcyBwcmUtY29tcGxldGVkIGZvciB5b3UsIGJ1dCBpbmNhc2UgaXQgaXNuJiMwMzk7dCB0aGUgY29kZSBpczonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGlja2luZyBvbiB0aGUgZm9sbG93aW5nIGxpbmsgd2lsbCB0YWtlIHlvdSB0byB0aGUgd2Vic2l0ZSB3aGVyZSB5b3UgY2FuIGVudGVyIHRoZSBhYm92ZSBjb2RlLCBhbmQgcmVzZXQgeW91ciBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0VsZmVsZWp0ZXR0IGplbHN6Jm9hY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdOZW0gdGFsJmFhY3V0ZTtsb20gYSBDTVNNYWlsZXIgbW9kdWx0JzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ0FuIGVtYWlsIGhhcyBiZWVuIHNlbnQgdG8gJXMgd2l0aCBpbnN0cnVjdGlvbnMgYXMgdG8gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQuICBUaGFuayB5b3UnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTbyB5b3UgZm9yZ290IG9yIGxvc3QgeW91ciBwYXNzd29yZC4gV2VsbCwgdHlwZSB5b3VyIHVzZXJuYW1lIGluIGhlcmUsIGFuZCBpZiB3ZSBjYW4gZmluZCB5b3Ugd2Ugd2lsbCBzZW5kIHlvdSBhbiBlbWFpbCB3aXRoIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgaXQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGxhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdCZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzenRyJmFhY3V0ZTtjaSZvYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRXogYSBmaSZvYWN1dGU7ayBsZWomYWFjdXRlO3J0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlLiAgVGhpcyBtYXkgYmUgc3lzdGVtIHJlbGF0ZWQuICBUcnkgc2V0dGluZyBhbiBlYXJsaWVyIHllYXIuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cC4gIEEgZ3JvdXAgbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBzZWxlY3RlZCAoUmVxdWlyZWQsT3B0aW9uYWwsIG9yIEhpZGRlbiknOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ1Zpc3N6YSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgZWd5IGsmb3VtbDt0ZWxlesWRIG1lesWRJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ1RvdiZhYWN1dGU7YmInOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdBIEdyb3VwIHdpdGggdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnSyZvdW1sO3RlbGV6xZEnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdPcHRpb25hbCc7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ00mZWFjdXRlO3JldCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdIb3Nzeic7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihjaGFycyBpbiB0aGUgdGV4dCBpbnB1dCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVCZpYWN1dGU7cHVzJzsKJGxhbmdbJ3R5cGUnXSA9ICdUJmlhY3V0ZTtwdXMnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdNZXrFkSAmYWFjdXRlO2xsYXBvdCc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ1N6Jm91bWw7dmVnJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnSmVsJm91bWw7bMWRbWV6xZEnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSJmFhY3V0ZTtkaSZvYWN1dGU7IGdvbWInOwokbGFuZ1snaW1hZ2UnXSA9ICdLJmVhY3V0ZTtwJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgYyZpYWN1dGU7bSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1N6b3ZlZ2VzIG1lesWRJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTGVnJm91bWw7cmQmdXVtbDtsxZEgbGlzdGEnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICcmVXVtbDtkdiZvdW1sO3psJnV1bWw7bmsnOwokbGFuZ1snbG9nb3V0J10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ0hhc3puJmFhY3V0ZTtsZCBlenQgYSBjc29wb3J0bmV2ZXQnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnQmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzYWltIG0mb2FjdXRlO2RvcyZpYWN1dGU7dCZhYWN1dGU7c2EnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdCZWplbGVudGtleiZlYWN1dGU7cyBzaWtlcnRlbGVuIC0gSGliJmFhY3V0ZTtzIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2IHZhZ3kgamVsc3omb2FjdXRlOz8nOwokbGFuZ1snbG9naW4nXSA9ICdCZWplbGVudGtleiZlYWN1dGU7cyc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0JlamVsZW50a2V6JmVhY3V0ZTtzIGdvbWIgYyZpYWN1dGU7bWtlJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsIGMmaWFjdXRlO20nOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnSmVsc3omb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ0VtbCZlYWN1dGU7a2V6eiByJmFhY3V0ZTttIGV6ZW4gYSBnJmVhY3V0ZTtwZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3p0ciZhYWN1dGU7Y2kmb2FjdXRlOyc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBqZWxzemF2YWQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBiZWwmZWFjdXRlO3AmZWFjdXRlO3NpIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2RhdD8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdBbGFwJmVhY3V0ZTtydGVsbWV6ZXR0ICZlYWN1dGU7cnQmZWFjdXRlO2tlayc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1NhYmxvbic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOZW0gdGFsJmFhY3V0ZTtsdGFtIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO3QgZXJyxZFsIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO3Imb2FjdXRlO2wnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0V6IGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YgKCVzKSBtJmFhY3V0ZTtyIGZvZ2xhbHQnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0hhc3puJmFhY3V0ZTtsaiBTTVRQLXQsIGhvZ3kgJmVhY3V0ZTtydiZlYWN1dGU7bnllcyZpYWN1dGU7dHNkIGF6IGVtYWlsIGMmaWFjdXRlO21la2V0JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gamVsc3omb2FjdXRlOyBob3Nzeic7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIGplbHN6Jm9hY3V0ZTsgaG9zc3onOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7diBob3Nzeic7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2IGhvc3N6JzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdBbGFwJmVhY3V0ZTtydGVsbWV6ZXR0IGNzb3BvcnQgYXogJnVhY3V0ZTtqIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrbmFrJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzb2sgbSZvYWN1dGU7ZG9zJmlhY3V0ZTt0JmFhY3V0ZTtzYSBzYWJsb24nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0plbHN6YXZhayBuZW0gdGFsJmFhY3V0ZTtsbmFrJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJyZFYWN1dGU7cnYmZWFjdXRlO255dGVsZW4gZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnJkVhY3V0ZTtydiZlYWN1dGU7bnl0ZWxlbiBqZWxzeiZvYWN1dGU7JzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBtJm9hY3V0ZTtkb3MmaWFjdXRlO3QmYWFjdXRlO3NhJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnJkVhY3V0ZTtydiZlYWN1dGU7bnllcyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3N0YXR1cyddID0gJyZBYWN1dGU7bGxhcG90JzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0V6IGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBuZW0gdGFnamEgZWd5IGNzb3BvcnRuYWsgc2VtJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdObyBQcm9wZXJ0aWVzJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnQXR0ZW1wdCB0byBpbXBvcnQgZHVwbGljYXRlIHByb3BlcnRpZXMnOwokbGFuZ1sndmFsdWUnXSA9ICcmRWFjdXRlO3J0JmVhY3V0ZTtrJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0Nzb3BvcnRvayc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnb2snOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdUdWxhamRvbnMmYWFjdXRlO2cgbmV2ZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdUdWxhamRvbnMmYWFjdXRlO2cgJmVhY3V0ZTtydCZlYWN1dGU7a2UnOwokbGFuZ1snYWRkJ10gPSAnSG96eiZhYWN1dGU7YWQmYWFjdXRlO3MnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ1N6ZXJrZXN6dCZlYWN1dGU7cyc7CiRsYW5nWydleHBpcmVzJ10gPSAnTGVqJmFhY3V0ZTtyJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0hhdCZhYWN1dGU7cm96ZCBtZWcgYSBkJmFhY3V0ZTt0dW1vdCc7CiRsYW5nWycxMmhycyddID0gJzEyICZPYWN1dGU7cmEnOwokbGFuZ1snMjRocnMnXSA9ICcyNCAmT2FjdXRlO3JhJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggJk9hY3V0ZTtyYSc7CiRsYW5nWycxd2VlayddID0gJzEgaCZlYWN1dGU7dCc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIGgmZWFjdXRlO3QnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBoJm9hY3V0ZTtuYXAnOwokbGFuZ1snM21vbnRocyddID0gJzMgaCZvYWN1dGU7bmFwJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IGgmb2FjdXRlO25hcCc7CiRsYW5nWycxeWVhciddID0gJzEgJmVhY3V0ZTt2JzsKJGxhbmdbJ25ldmVyJ10gPSAnU29oYSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiAgQWRkaXRpb25hbGx5LCB3ZSByZWNvbW1lbmQgdGhhdCB5b3UgaW5zdGFsbCB0aGUgQ2FwdGNoYSBtb2R1bGUuICBJZiBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgaW4gYWRkaXRpb24gdG8gdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCB0byBsb2dpbi4gIFRoaXMgaXMgaW50ZW5kZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSBldmVuIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQuJnF1b3Q7JzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnSmVsc3omb2FjdXRlOyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJyZVYWN1dGU7anJhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdJbHllbiBuZXbFsSBjc29wb3J0IG0mYWFjdXRlO3IgbCZlYWN1dGU7dGV6aWsnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnQ3NvcG9ydCBzemVya2VzenQmZWFjdXRlO3NlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0smdXVtbDtsZCZlYWN1dGU7cyc7CiRsYW5nWydjYW5jZWwnXSA9ICdNJmVhY3V0ZTtnc2UnOwokbGFuZ1snZGVsZXRlJ10gPSAnVCZvdW1sO3JsJmVhY3V0ZTtzJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQml6dG9zYW4gdCZvdW1sO3Imb3VtbDtsbmkgYWthcm9kIGV6dCBhIGNzb3BvcnRvdD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0VsJmVhY3V0ZTtndGVsZW4gcGFyYW0mZWFjdXRlO3Rlcic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOJmVhY3V0ZTt2JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBhZGRpbmcgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW0gZGVsZXRpbmcgYSBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05lbSB0YWwmYWFjdXRlO2x0YW0gZW1haWwgYyZpYWN1dGU7bWV0JzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTmVtIHRhbCZhYWN1dGU7bHRhbSBjc29wb3J0b3QnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBbGthbG1heic7CiRsYW5nWydmaWx0ZXInXSA9ICdTesWxcsWRJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdVc2VybmFtZSBSZWd1bGFyIEV4cHJlc3Npb24nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdMZSZpYWN1dGU7ciZhYWN1dGU7cyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdDc29wb3J0IG5ldmUnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnSG96eiZhYWN1dGU7ZiZlYWN1dGU7ciZlYWN1dGU7cyBtZWd0aWx0dmEnOwokbGFuZ1snZXJyb3InXSA9ICdIaWJhJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQ3NvcG9ydCBob3p6JmFhY3V0ZTthZCZhYWN1dGU7c2EnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdDc29wb3J0IGltcG9ydCZhYWN1dGU7bCZhYWN1dGU7c2EnOwokbGFuZ1snYWRkdXNlciddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgaG96eiZhYWN1dGU7YWQmYWFjdXRlO3NhJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7aywgYWtpayBtZWdmZWxlbG5layBhIGtyaXQmZWFjdXRlO3JpdW1va25hayc7CiRsYW5nWydncm91cCddID0gJ0Nzb3BvcnQnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdDc29wb3J0IGtpdiZhYWN1dGU7bGFzenQmYWFjdXRlO3NhJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzenRyJmFhY3V0ZTtjaSZvYWN1dGU7cyBzYWJsb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3Mgc2FibG9uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnQmVqZWxlbnRrZXomZWFjdXRlO3Mgc2FibG9uJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jaSZhYWN1dGU7ayc7CiRsYW5nWyd1c2VycyddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgTWFuYWdlbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FsbG93IHVzZXJzIHRvIGxvZyBpbiB0byB0aGUgZnJvbnRlbmQgb2YgeW91ciBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdFbGFwJmVhY3V0ZTtydGVsbWV6ZXR0IGbFkW9sZGFsJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdVdG9scyZvYWN1dGU7IG1lZ2wmYWFjdXRlO3RvZ2F0b3R0IG9sZGFsJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ00mYWFjdXRlO3Mgb2xkYWw6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnJklhY3V0ZTtyZCBiZSBhIHN6Jm91bWw7dmVnZXQgYSBrJmVhY3V0ZTtwcsWRbCc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fZmlsdGVyX3NvcnRieSddID0gJzxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gSWwgcmlvcmRpbm8gZGVsbGUgY29sb25uZSBmb3JuaXImYWdyYXZlOyB1biBvcmRpbmFtZW50byB1bHRlcmlvcmUgc3VnbGkgZWxlbWVudGkgY29ycmlzcG9uZGVudGknOwokbGFuZ1snYW55J10gPSAnUXVhbHNpYXNpJzsKJGxhbmdbJ3NvcnRieV91c2VybmFtZV9hc2MnXSA9ICdOb21lIHV0ZW50ZSAoY3Jlc2NlbnRlKSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfZGVzYyddID0gJ05vbWUgdXRlbnRlIChkZWNyZXNjZW50ZSknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdEYXRhIGRpIGNyZWF6aW9uZSAoY3Jlc2NlbnRlKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdEYXRhIGRpIGNyZWF6aW9uZSAoZGVjcmVzY2VudGUpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2FzYyddID0gJ0RhdGEgZGkgc2NhZGVuemEgKGNyZXNjZW50ZSknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0RhdGEgZGkgc2NhZGVuemEgKGRlY3Jlc2NlbnRlKSc7CiRsYW5nWydpbmZvX2VuY3J5cHRlZCddID0gJ0xlIHByb3ByaWV0JmFncmF2ZTsgY3JpcHRhdGUgcG9zc29ubyBlc3NlcmUgdmlzdWFsaXp6YXRlIGUgbW9kaWZpY2F0ZSBlc2NsdXNpdmFtZW50ZSBkYWxsJiMwMzk7dXRlbnRlLiBOZW1tZW5vIGwmIzAzOTthbW1pbmlzdHJhdG9yZSBwdSZvZ3JhdmU7IHZlZGVyZSBvIGdlc3RpcmUgcXVlc3RlIGluZm9ybWF6aW9uaSc7CiRsYW5nWydlbmNyeXB0ZWQnXSA9ICdDcmlwdGF0byc7CiRsYW5nWydpbmZvX2Nvb2tpZW5hbWUnXSA9ICdTZSBpbXBvc3RhdG8sIHZlcnImYWdyYXZlOyBhYmlsaXRhdGEgbGEgZnVuemlvbmFsaXQmYWdyYXZlOyAmcXVvdDtyaWNvcmRhbWkmcXVvdDsuICBFJiMwMzk7IHNpbWlsZSBhbGxhIGZ1bnppb25hbGl0JmFncmF2ZTsgJnF1b3Q7a2VlcGFsaXZlJnF1b3Q7IHBlciBpIGNvb2tpZSwgbWEgZHVyYSBmaW5vIGEgc2VpIGdpb3JuaS4nOwokbGFuZ1snbXNnX3VzZXJuYW1lX3JlYWRvbmx5J10gPSAnTm9uICZlZ3JhdmU7IHBlcm1lc3NhIGxhIG1vZGlmaWNhIGRlbCBub21lIHV0ZW50ZSBwZXIgcXVlc3RvIGFjY291bnQnOwokbGFuZ1snbXNnX3Bhc3N3b3JkX3JlYWRvbmx5J10gPSAnTm9uICZlZ3JhdmU7IHBlcm1lc3NhIGxhIG1vZGlmaWNhIGRlbGxhIHBhc3N3b3JkIHBlciBxdWVzdG8gYWNjb3VudCc7CiRsYW5nWydwcm9tcHRfbm9ybWFsbG9naW4nXSA9ICdBY2Nlc3NvIERpcmV0dG8nOwokbGFuZ1snbW92ZV91cCddID0gJ1Nwb3N0YSBTdSc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdTcG9zdGEgR2kmdWdyYXZlOyc7CiRsYW5nWyd0aXRsZV9wcm9wbW9kdWxlJ10gPSAnUXVlc3RhIHByb3ByaWV0JmFncmF2ZTsgJmVncmF2ZTsgZ2VuZXJhdGEgZGEgdW4gbW9kdWxvIGUgbm9uIHB1Jm9ncmF2ZTsgZXNzZXJlIG1vZGlmaWNhdGFUaGlzIHByb3BlcnR5IGlzIGNyZWF0ZWQgYnkgYSBtb2R1bGUsIGFuZCBjYW5ub3QgYmUgZWRpdGVkJzsKJGxhbmdbJ25vdF9hdmFpbGFibGUnXSA9ICdOb24gZGlzcG9uaWJpbGUnOwokbGFuZ1sncHJvbXB0X2RmbHRfY2hlY2tlZCddID0gJ1F1ZXN0byBjYW1wbyBkb3ZyZWJiZSBlc3NlcmUgYXR0aXZvIGluIG1vZG8gcHJlZGVmaW5pdG8nOwokbGFuZ1snb3BlcmF0aW9uX2NvbXBsZXRlZCddID0gJ09wZXJhemlvbmUgQ29tcGxldGEnOwokbGFuZ1snbWVtYmVycyddID0gJ01lbWJyaSc7CiRsYW5nWyd2aWV3X2ZpbHRlciddID0gJ1ZlZGkgRmlsdHJvJzsKJGxhbmdbJ2RhdGEnXSA9ICdEYXRpJzsKJGxhbmdbJ2FwcGxpZWQnXSA9ICdBcHBsaWNhdG8nOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdpbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnUGVybWV0dGkgQ2FtYmlvIE5vbWUgVXRlbnRlJzsKJGxhbmdbJ2luZm9fYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdTZSBhYmlsaXRhdG8sIGFnbGkgdXRlbnRpIHNhciZhZ3JhdmU7IHBlcm1lc3NvIG1vZGlmaWNhcmUgaWwgcHJvcHJpbyBub21lIHV0ZW50ZSBhc3NpZW1lIGFkIGFsdHJlIGltcG9zdGF6aW9uaSc7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ01vZGVsbG8gc2FsdmF0byc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnTW9kZWxsbyByaXBvcnRhdG8gYWkgdmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0ltcG9zdGF6aW9uaSc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kZWxsaSc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ0FiaWxpdGEgQ2FwdGNoYSBzdWwgbW9kdWxvIGRpIGxvZ2luJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdTZSBsJiMwMzk7dXRlbnRlIG5vbiBoYSBlc2VndWl0byBsJiMwMzk7YWNjZXNzbyBlIGxlIHByZWZlcmVuemUgZGVsIG1vZHVsbyBpbmRpY2FubyBkaSB2aXN1YWxpenphcmUgaWwgbW9kdWxvIGRpIGxvZ2luLCBxdWVzdCYjMDM5O29wemlvbmUgY29udHJvbGxhIHNlIGRlYmJhIGVzc2VyZSB2aXN1YWxpenphdGEgdW4mIzAzOTthdXRlbnRpY2F6aW9uZSBjYXB0Y2hhLCBzZSBpbCBtb2R1bG8gY2FwdGNoYSAmZWdyYXZlOyBkaXNwb25pYmlsZSc7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdOb24gc2lldGUgYXV0b3JpenphdGkgYSB2ZWRlcmUgcXVlc3RvIGNvbnRlbnV0byc7CiRsYW5nWydpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCddID0gJ1NwZWNpZmljYSB1bmEgbGlzdGEgZGkgZ3J1cHBpIGRpIEZFVSBjaGUgcG9zc29ubyBhY2NlZGVyZSBhIHF1ZXN0YSBwYWdpbmEuIE5vbiBzZWxlemlvbmFuZG8gYWxjdW4gZ3J1cHBvIHZlcnImYWdyYXZlOyBwZXJtZXNzYSBsYSB2aXNpb25lIGRlbGxhIHBhZ2luYSBhIHR1dHRpIGdsaSB1dGVudGkgZGkgRkVVJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnaW1wb3N0YXppb25pIFBhZ2luZSBQcm90ZXR0ZSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdHcnVwcGkgQXV0b3JpenphdGknOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTZWxlemlvbmF0ZSBpIGdydXBwaSBjaGUgc29ubyBhdXRvcml6emF0aSAoaW4gbW9kbyBwcmVkZWZpbml0bykgYSB2aXN1YWxpenphcmUgcGFnaW5lIHByb3RldHRlLiBVbiB1dGVudGUgZWRpdG9yIGNvbiBwZXJtZXNzaSAmcXVvdDtHZXN0aXNjaSB0dXR0byBpbCBjb250ZW51dG8mcXVvdDsgcHUmb2dyYXZlOyBzb3ZyYXNjcml2ZXJlIHF1ZXN0YSBvcHppb25lIHBlciBvZ25pIHBhZ2luYSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdBemlvbmUgcGVyIGFjY2Vzc28gbm9uIHN1ZmZpY2llbnRlJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmaWNhIGlsIGNvbXBvcnRhbWVudG8gZGEgc2VndWlyZSBwZXIgY2hpIGFjY2VkZSBhIHF1ZXN0YSBwYWdpbmEgc2VuemEgYXZlcmUgcGVybWVzc2kgc3VmZmljaWVudGkuIFBvdGV0ZSByZWluZGlyaXp6YXJlIHZlcnNvIHVuYSBwYWdpbmEgc3BlY2lmaWNhLCBvcHB1cmUgdmlzdWFsaXp6YXJlIGlsIG1vZHVsbyBkaSBhY2Nlc3NvJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdWaXN1YWxpenphIG1vZHVsbyBkaSBhY2Nlc3NvJzsKJGxhbmdbJ3JlZGlyZWN0J10gPSAnUmVpbmRpcml6emFyZSB2ZXJzbyB1bmEgUGFnaW5hJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdSZWluZGlyaXp6YXJlIGEnOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmaWNhIGxhIHBhZ2luYSBhIGN1aSByZWluZGlyaXp6YXJlLiBTZSBub24gbmUgc2NlZ2xpZXJldGUgbmVzc3VuYSBlIGwmIzAzOTthemlvbmUgaW1wb3N0YXRhICZlZ3JhdmU7ICZxdW90O3JlaW5kaXJpenphcmUmcXVvdDssIHZlcnImYWdyYXZlOyB2aXN1YWxpenphdG8gdW4gbWVzc2FnZ2lvIGNoZSAgaW5kaWNhIGNoZSBsJiMwMzk7dXRlbnRlIG5vbiBoYSBhY2Nlc3NvIGFsbGEgcGFnaW5hJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUGVybWVzc2knOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnQ29udGVudXRvIFByb3RldHRvJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlemlvbmF0ZSBQcm9wcmlldCZhZ3JhdmU7IGFnZ2l1bnRpdmUgZGEgdmlzdWFsaXp6YXJlJzsKJGxhbmdbJ3ZpZXcnXSA9ICdWaXN1YWxpenphJzsKJGxhbmdbJ2luZm9faWdub3JlX3VzZXJpZCddID0gJ1NlIHNlbGV6aW9uYXRvLCBsYSBwcm9jZWR1cmEgZGkgaW1wb3J0YXppb25lIHRlbnRlciZhZ3JhdmU7IGRpIGFnZ2l1bmdlcmUgdXRlbnRpIGluZGlwZW5kZW50ZW1lbnRlIGRhbGxhIGNvbG9ubmEgdXNlcmlkLiAgU2UgdW4gdXRlbnRlIGNvbiBpbCBub21lIHNwZWNpZmljYXRvIG5lbCBmaWxlIGltcG9ydGF0byBlc2lzdGUgZ2kmYWdyYXZlOywgdmVyciZhZ3JhdmU7IGdlbmVyYXRvIHVuIGVycm9yZSc7CiRsYW5nWydpZ25vcmVfdXNlcmlkJ10gPSAnSWdub3JhIENvbG9ubmEgVXNlcklEIGR1cmFudGUgbCYjMDM5O2ltcG9ydGF6aW9uZSZpZ3JhdmU7JzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0VzcG9ydGEgbCYjMDM5O2hhc2ggZGVsbGEgcGFzc3dvcmQgbmVsIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdMJiMwMzk7aGFzaCBkZWxsYSBwYXNzd29yZCAmZWdyYXZlOyB1dGlsZSBzb2xvIHNlIGxhIGNvZGlmaWNhIGRlbGxhIHBhc3N3b3JkIHN1bGwmIzAzOTtob3N0IGRpIGltcG9ydGF6aW9uZSAmZWdyYXZlOyBpZGVudGljYSBhIHF1ZWxsYSBkZWxsJiMwMzk7aG9zdCBkaSBlc3BvcnRhemlvbmUnOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ0xhIGNvZGlmaWNhIGRlbGxhIHBhc3N3b3JkIG5vbiBwdSZvZ3JhdmU7IGVzc2VyZSBtb2RpZmljYXRhJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdDb2RpZmljYSBQYXNzd29yZCc7CiRsYW5nWydpbmZvX3B3c2FsdCddID0gJ0lsIG1vZHVsbyBGcm9udEVuZFVzZXJzIGNvZGlmaWNhIHR1dHRlIGxlIHBhc3N3b3JkIGNvbiBxdWVzdGEgY2hpYXZlLCBjcmVhdGEgaW4gZmFzZSBkaSBpbnN0YWxsYXppb25lLiAgRG9wbyBjaGUgZ2xpIHV0ZW50aSB2ZW5nb25vIGFnZ2l1bnRpIGFsIGRhdGFiYXNlLCBsYSBjb2RpZmljYSBub24gcHUmb2dyYXZlOyBlc3NlcmUgbW9kaWZpY2F0YS4gTGEgY2hpYXZlIGRpIGNvZGlmaWNhIHBvdHJlYmJlIGVzc2VyZSB2dW90YSBwZXIgaW5zdGFsbGF6aW9uaSBwaSZ1Z3JhdmU7IGRhdGF0ZS4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQXZhbnphdGUnOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ1NwZWNpZmljYXRlIGlsIG51bWVybyBkaSBzZWNvbmRpIHByaW1hIGNoZSB1biB1dGVudGUgaW5hdHRpdm8gdmVuZ2EgZGlzY29ubmVzc28gZGFsIHNpdG8gYXV0b21hdGljYW1lbnRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0ludGVydmFsbG8gU2NhZGVuemEgVXRlbnRlJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZpY2F0ZSB1biB2YWxvcmUgKGluIHNlY29uZGkpIGNoZSBpbmRpY2EgbGEgZnJlcXVlbnphIGNvbiBjdWkgaWwgc2lzdGVtYSBmb3J6aSBsYSBkaXNjb25uZXNzaW9uZSBkaSB1dGVudGkgY29uIHNlc3Npb25pIHNjYWR1dGUuIEUmIzAzOTsgdW4mIzAzOTtvdHRpbWl6emF6aW9uZSBwZXIgcmlkdXJyZSBsZSBxdWVzcnkgdmVyc28gaWwgZGF0YWJhc2UuIFNlIGxhc2NpYXRvIHZ1b3RvIG8gaW1wb3N0YXRvIGEgMCwgbGEgc2NhZGVuemEgdmVyciZhZ3JhdmU7IGF0dHVhdGEgYWQgb2duaSByaWNoaWVzdGEuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdJbXBvc3RhemlvbmkgYWdnaW9ybmF0ZSBjb3JyZXR0YW1lbnRlJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcnphIGxhIGRpc2Nvbm5lc3Npb25pIGRlZ2xpIHV0ZW50aSBhZCBpbnRlcnZhbGxpIHJlZ29sYXJpJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RlbXBpIHBlciBkaXNjb25uZXNzaW9uZSBmb3J6YXRhJzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdFbGVuY2F0ZSB1bmEgbGlzdGEgZGkgdGVtcGksIHNlcGFyYXRpIGRhIHZpcmdvbGEsIG5lbGxhIGZvcm1hICZxdW90O0hIOk1NLEhIOk1NLC4uLiZxdW90OyBpbiBjdWkgZ2xpIHV0ZW50aSB2ZXJyYW5ubyBmb3J6YXRpIGFsbGEgZGlzY29ubmVzc2lvbmUuIE5vdGE6IHF1ZXN0YSBwcm9jZWR1cmEgdXRpbGl6emEgaWwgbWVjY2FuaXNtbyBwc2V1ZG9jcm9uLCBwZXJ0YW50byB2ZXJpZmljYXRlIGNoZSBpIHRlbXBpIGluc2VyaXRpIGNvaW5jaWRhbm8gcmFnaW9uZXZvbG1lbnRlIGNvbiBsYSB2b3N0cmEgJnF1b3Q7Z3JhbnVsYXJpdCZhZ3JhdmU7IHBzZXVkb2Nyb24mcXVvdDsgZSBjaGUgY2kgc2lhbm8gcmljaGllc3RlIHN1ZmZpY2llbnRpIHBlcmNoJmVncmF2ZTsgaWwgcHNldWRvY3JvbiB2ZW5nYSBlc2VndWl0by4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFc2NsdWRpIHV0ZW50aSBhdHRpdmkgbmVnbGkgdWx0aW1pIDxlbT4obWludXRpKTwvZW0+JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ1NlIHNwZWNpZmljYXRvLCB0dXR0aSBnbGkgdXRlbnRpIGNoZSBzb25vIHN0YXRpIGF0dGl2aSBpbiBxdWVzdG8gbnVtZXJvIGRpIG1pbnV0aSBub24gdmVycmFubm8gZm9yemF0aSBhbGxhIGRpc2Nvbm5lc3Npb25lJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnU2lldGUgY2VydGkgZGkgdm9sZXJlIGVsaW1pbmFyZSBsJiMwMzk7dXRlbnRlICVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnSWwgZmlsZSBjYXJpY2F0byBub24gY29ycmlzcG9uZGUgY29uIGkgdGlwaSBkaSBmaWxlIGNvbnNlbnRpdGknOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1R1dHRpIGkgZGF0aSBhc3NvY2lhdGkgY29uIGlsIG1vZHVsbyBGcm9udEVuZFVzZXJzIHNhcmFubm8gY2FuY2VsbGF0aSc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdTZSBhYmlsaXRhdG8sIHF1ZXN0byBtb2R1bG8gYXNwZXR0YSBwZXIgZXZlbnRpIGRhbGxhIHN1aXRlIEVjb21tZXJjZS4gIExhIHNlZ3VlbnRlIGNvbmZpZ3VyYXppb25lIGhhIGVmZmV0dG8gc29sbyBzZSBxdWVzdG8gJmVncmF2ZTsgYWJpbGl0YXRvLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ1Byb250byBwZXIgZXZlbnRpIGRpIE9yZGVyJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0xhIGNvbmZpZ3VyYXppb25lIHNlZ3VlbnRlIHNpIGFwcGxpY2Egc29sbyBjb24gbCYjMDM5O3VzbyBkaSBTZWxmIFJlZ2lzdHJhdGlvbiBlIHBlcm1ldHRlbmRvIGxhIHJlZ2lzdHJhemlvbmUgYSBwYWdhbWVudG8nOwokbGFuZ1snbm9uZSddID0gJ05lc3N1bm8nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdVdGVudGUgY2FuY2VsbGF0byc7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ1V0ZW50ZSBzY2FkdXRvJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBemlvbmUgZGEgZXNlZ3VpcmUgcXVhbmRvIHVuYSBzb3R0b3Njcml6aW9uZSAmZWdyYXZlOyBhbm51bGxhdGEnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBemlvbmUgZGEgZXNlZ3VpcmUgcXVhbmRvIHVuYSBzb3R0b3Njcml6aW9uZSAmZWdyYXZlOyBjYW5jZWxsYXRhJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYXppb25pIEVjb21tZXJjZSc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcmNhdG9yZSBkZWwgU2VjdXJlIEZpZWxkJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdDb2xvcmUgZGVsIFNlY3VyZSBGaWVsZCc7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ0ltbWFnYXp6aW5hIHF1ZXN0byBkYXRvIGNyaXB0YXRvIG5lbCBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdMYSBvcHppb25lIHNjZWx0YSBub24gJmVncmF2ZTsgc3VwcG9ydGF0YSBkYWxsJiMwMzk7YXR0dWFsZSBjb25maWd1cmF6aW9uZSc7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdVdGVudGUgYXV0b21hdGljYW1lbnRlIGNyZWF0byc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdTZSB1biB1dGVudGUgJmVncmF2ZTsgYXV0aGVudGljYXRvIGRhIHVuIG1vZHVsbyBlc3Rlcm5vIG1hIHNjb25vc2NpdXRvIGFsIG1vZHVsbyBGcm9udEVuZFVzZXJzIGRvdnJlYmJlIGVzc2VyZSBjcmVhdG8gYXV0b210aWNhbWVudGUgdW4gYWNjb3VudCBGRVU/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYW1lbnRlIGNyZWEgdXRlbnRpIFNjb25vc2NpdXRpJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdDb25maWd1cmF6aW9uaSBkaSB2aXN1YWxpenphemlvbmUnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ0xlIHNlZ3VlbnRpIGNvbmZpZ3VyYXppb25pIHNvbm8gc29sbyBhcHBsaWNhYmlsaSBjb24gbCYjMDM5O3VzbyBkaSAmcXVvdDtBdXRlbnRpY2F6aW9uaSBpbnRlcm5lJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZXppb25hbmRvIE5vIGRpc2FiaWxpdGVyJmFncmF2ZTsgbCYjMDM5O2FiaWxpdCZhZ3JhdmU7IHBlciB1bm8gdXNlciBkaSByaWNoaWVkZXJlIGxlIGluZm9ybWF6aW9uaSBwZXIgbGEgcGVyZGl0YSBkZWwgbG9naW4sIGEgcHJlc2NpbmRlcmUgZGEgYWx0cmUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlemlvbmFuZG8gTm8gZGlzYWJpbGl0ZXImYWdyYXZlOyBsJiMwMzk7YWJpbGl0JmFncmF2ZTsgcGVyIHVubyB1c2VyIGRpIHJlaW1wb3N0YXJlIGxhIHBhc3N3b3JkLCBhIHByZXNjaW5kZXJlIGRhIGFsdHJlIGltcG9zdGF6aW9uaSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdQZXJtZXR0ZSBhZ2xpIHV0ZW50aSBkaSByaWNoaWVkZXJlIGlsIGxvcm8gdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnUGVybWV0dGUgYWdsaSB1dGVudGkgZGkgcmljaGllZGVyZSB1biBjYW1iaWFtZW50byBkaSBwYXNzd29yZCc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQ29uZmlndXJhemlvbmkgZGkgYXV0ZW50aWNhemlvbmUnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdBdXRlbnRpY2F6aW9uaSBpbnRlcm5lJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0F1dGVudGljYXppb25lIHN0YW5kYXJkIEZFVSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGVudGljYXppb25lIE1vZHVsby9NZXRvZG8nOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0lsIG1vZHVsbyBGcm9udGVuZFVzZXJzIHN1cHBvcnRhIGwmIzAzOTt1dGlsaXp6byBkaSBtZXRvZGkgZGkgYXV0ZW50aWNhemlvbmUgYWx0ZXJuYXRpdmksIGNvbiBwb3NzaWJpbGl0JmFncmF2ZTsgZGl2ZXJzZS4gIEFsY3VuZSBmdW56aW9uYWxpdCZhZ3JhdmU7IG5vbiByaXNwb25kZXJhbm5vIG8gc2FyYW5ubyBkaXNhYmlsaXRhdGUgbmVsIGNhc28gbm9uIHNpIHV0aWxpenppIGlsIHNpc3RlbWEgZGkgYXV0ZW50aWNhemlvbmUgaW50ZWdyYXRvJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnSWwgdmFsb3JlIHNwZWNpZmljYXRvIHBlciAlcyAmZWdyYXZlOyBnaSZhZ3JhdmU7IGluIHVzbyBkYSBhbHRybyB1dGVudGUnOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pY28nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnSWwgdmFsb3JlIHNwZWNpZmljYXRvIHBlciAlcyAoJXMpIG5vbiAmZWdyYXZlOyB1bmljbyc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yemEgaSB2YWxvcmkgZGkgcXVlc3RhIHByb3ByaWV0JmFncmF2ZTsgZGkgZXNzZXJlIHVuaWNhIGF0dHJhdmVyc28gdHV0dGkgZ2xpIHV0ZW50aSc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVdGlsaXp6YXRvIGNvbiBpIG1vZHVsaSBkaSBsb2dpbiBlIGxvZ291dCwgcXVlc3RvIHBhcmFtZXRybyAoc2Ugc3BlY2lmaWNhdG8pIGluZGljaGVyJmFncmF2ZTsgY2hlIGwmIzAzOTt1dGVudGUgZGViYmEgZXNzZXJlIHJlaW5kaXJpenphdG8gdmVyc28gbGEgcGFnaW5hICh1cmwpIGNoZSBzdGF2YSB2aXN1YWxpenphbmRvIHByaW1hIGRlbGwmIzAzOTtlc2VjdXppb25lIGRlbGwmIzAzOTthemlvbmUuICBJbCBwYXJhbWV0cm8gc292cmFzY3JpdmVyJmFncmF2ZTsgbGUgaW1wb3N0YXppb25pIGRpIHJlaW5kaXJpenphbWVudG8gZSBpbCBwYXJhbWV0cm8gcmV0dXJudG8uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVdGlsaXp6YXRvY29uIHVubyBkZWkgbW9kdWxpLCBxdWVzdG8gcGFyYW1ldHJvIHNwZWNpZmljYSBjaGUgaSBtb2R1bGkgbm9uIGRlYmJhbm8gZXNzZXJlIHBvc2l6aW9uYXRpIGluIGxpbmVhLCBtYSBjaGUgbCYjMDM5O291dHB1dCByaXN1bHRhbnRlIGRvcG8gbCYjMDM5O2ludmlvIGRlbCBtb2R1bG8gc29zdGl0dWlzY2EgaWwgYmxvY2NvIGRpIGNvbnRlbnV0byBwcmVkZWZpbml0byc7CiRsYW5nWyd0aXRsZV9yZXNldF9zZXNzaW9uJ10gPSAnQXZ2aXNvIHBlciBzZXNzaW9uZSBkaSBsb2dpbiBzY2FkdXRhJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICZxdW90OyZxdW90O09rJnF1b3Q7IHRvIGNvbmZpcm0geW91ciBhY3Rpdml0eSBvbiB0aGlzIHdlYnNpdGUuJzsKJGxhbmdbJ29rJ10gPSAnT0snOwokbGFuZ1sncmVzZXRzZXNzaW9uX3RlbXBsYXRlJ10gPSAnUmVpbXBvc3RhIE1vZGVsbG8gU2Vzc2lvbmUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnUXVlc3RvICZlZ3JhdmU7IGlsIG5vbWUgZGVsIGNhbXBvIHV0aWxpenphdG8gcGVyIGwmIzAzOTtpbmRpcml6emFtZW50byBpbiBzbWFydHkuICBEZXYmIzAzOTtlc3NlcmUgY29tcG9zdG8gc29sbyBkYSBjYXJhdHRlcmkgYWxmYW51bWVyaWNpIGUgdW5kZXJzY29yZSAoJnF1b3Q7XyZxdW90OykuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0YXRvcmknOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlemlvbmEgdW5vIG8gcGkmdWdyYXZlOyBncnVwcGkgRkVVIGEgY3VpICZlZ3JhdmU7IHBlcm1lc3NvIHZpc3VhbGl6emFyZSBxdWVzdGEgcGFnaW5hJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdTZWxlemlvbmFyZSBhbG1lbm8gdW4gZ3J1cHBvJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGV6aW9uYSB1bm8nOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0Fubm8gZGkgcGFydGVuemEnOwokbGFuZ1snZW5kX3llYXInXSA9ICdBbm5vIGZpbmFsZSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdEaW1lbnNpb25lIG1pbmlhdHVyYSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnQWxsYSBtb2RpZmljYSBkZWkgR3J1cHBpIFV0ZW50ZSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdTb25vIHNlbGV6aW9uYXRpIHRyb3BwaSB1dGVudGkgcGVyIG9wZXJhemlvbmkgZGkgbWFzc2EuLi4gUmlkdWNldGVsaSBhIDI1MCBvIG1lbm8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIGVsaW1pbmFyZSBnbGkgdXRlbnRpIHNlbGV6aW9uYXRpPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdFbGltaW5hIFNlbGV6aW9uYXRpJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYSBub21lIHV0ZW50ZSBjYXN1YWxlIHF1YW5kbyBzaSBhZ2dpdW5nb25vIG51b3ZpIHV0ZW50aSc7CiRsYW5nWydtb250aHMnXSA9ICdtZXNpJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQZXJpb2RvIGRpIHZhbGlkaXQmYWdyYXZlOyB1dGVudGUgcHJlZGVmaW5pdG8nOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIG5vdGlmaWNhJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgcmVkaXJlemlvbmFtZW50byc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIEdlbmVyYWxpJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgU2Vzc2lvbmUgZSBDb29raWUnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQ2FtcGknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnSWwgZmxhZyBsb3N0dXNlcm5hbWUgcHUmb2dyYXZlOyBlc3NlcmUgdXRpbGl6emF0byBzb2xvIHN1IGNhbXBpIG9iYmxpZ2F0b3JpJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1Blcm1ldHRpIGwmIzAzOTt1c28gZGkgdW4gZWRpdG9yIHd5c2l3eWcgcGVyIHF1ZXN0JiMwMzk7YXJlYSBkaSB0ZXN0byc7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdNb2RpZmljYSBVdGVudGUnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOb24gYWxsaW5lYXJlIE1vZHVsaSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNjYXRlIHF1aSBzZSBub24gcmljb3JkYXRlIGkgZGV0dGFnbGkgZGVsIHZvc3RybyBsb2dpbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnQ2xpY2NhdGUgcXVpIHNlIG5vbiByaWNvcmRhdGUgbGEgdm9zdHJhIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpY2NhdGUgcXVpIHBlciBkaXNjb25uZXR0ZXJ2aSc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpY2NhdGUgcXVpIHBlciBtb2RpZmljYXJlIGxhIHZvc3RyYSBwYXNzd29yZCBvIGFsdHJlIGluZm9ybWF6aW9uaSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Zpc3VhbGl6emEgaWwgTW9kZWxsbyBVdGVudGUnOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudG8nOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ05vdGlmaWNhIEV2ZW50byBGRVUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnSW5kaXJpenpvIEVtYWlsIHBlciBOb3RpZmljaGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gRW1haWwgZGkgTm90aWZpY2EnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnT2dnZXR0byBkZWxsYSBFbWFpbCBkaSBub3RpZmljYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWNoZSB2aWEgRW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0FsIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQWwgTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0FsbGEgU2NhZGVuemEgU2Vzc2lvbmUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQWxsYSBDcmVhemlvbmUgTnVvdm8gVXRlbnRlJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0FsbGEgQ2FuY2VsbGF6aW9uZSBVdGVudGUnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnQWxsYSBNb2RpZmljYSBJbXBvc3RhemlvbmkgVXRlbnRlJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdBbGxhIENyZWF6aW9uZSBHcnVwcGkgVXRlbnRlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdBbGxhIENhbmNlbGxhemlvbmUgR3J1cHBpIFV0ZW50ZSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0xhIGZ1bnppb25hbGl0JmFncmF2ZTsgZGV0dGFnbGkgZGkgbG9naW4gcGVyc2kgJmVncmF2ZTsgc3RhdGEgY29tcGxldGF0YSBjb3JyZXR0YW1lbnRlLiBBYmJpYW1vIHRyb3ZhdG8gdW4gbm9tZSB1dGVudGUgdW5pdm9jbyBjaGUgY29ycmlzcG9uZGUgY29uIGxlIGluZm9ybWF6aW9uaSBjaGUgYXZldGUgaW5zZXJpdG8uJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdJbCB2b3N0cm8gbm9tZSB1dGVudGUgJmVncmF2ZTsnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnVmkgcmFjY29tYW5kaWFtbyBkaSByZWdpc3RyYXJlIHF1ZXN0YSBpbmZvcm1hemlvbmUgaW4gdW4gcG9zdG8gc2ljdXJvIG1hIHJlY3VwZXJhYmlsZS4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ0lEL0FsaWFzIGRpIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBjYW1iaW8gZGVsbGUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0lEL0FsaWFzIGRpIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBsYSB2ZXJpZmljYSBkZWwgY29kaWNlIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIERldHRhZ2xpIE5vbWUgVXRlbnRlIFBlcnNvJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBDb25mZXJtYSBOb21lIFV0ZW50ZSBQZXJzbyc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yZTogUGkmdWdyYXZlOyBkaSB1biBhY2NvdW50IHV0ZW50ZSBjb2luY2lkZSBjb24gbGUgcHJvcHJpZXQmYWdyYXZlOyBzcGVjaWZpY2F0ZSc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcmU6IE5vbiB0cm92byBuZXNzdW4gdXRlbnRlIGNvcnJpc3BvbmRlbnRlJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvcmU6IE5vbiB0cm92byB1biBncnVwcG8gY29uIHF1ZWwgbm9tZSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NvbGEgbGV0dHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc3NlIHBlciBsYSBtYW5pcG9sYXppb25lIHV0ZW50aSc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdEaXNjb25uZXNzbyBkYWxsJiMwMzk7YW1taW5pc3RyYXRvcmUnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ01vc3RyYSBzb2xvIHV0ZW50aSBjb25uZXNzaSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRGlzY29ubmV0dGkgcXVlc3RvIHV0ZW50ZSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9wcmlldCZhZ3JhdmU7IHV0ZW50ZSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0Nyb25vbG9naWEgdXRlbnRlJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0VzcG9ydGEnOwokbGFuZ1snY2xlYXInXSA9ICdQdWxpc2NpJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0VzcG9ydGEgbGEgQ3Jvbm9sb2dpYSBVdGVudGUgaW4gQVNDSUkgY2hlICZlZ3JhdmU7IGFsbWVubyc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1B1bGlzY2kgaSB2YWxvcmkgZGVsbGEgQ3Jvbm9sb2dpYSBVdGVudGUgY2hlIHNvbm8gYWxtZW5vJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ1ZhbG9yaSBkaSBMb2dpbiBEaW1lbnRpY2F0aT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXNwb3J0YSBkZWZpbml6aW9uaSBkZWwgZ3J1cHBvIChlIHByb3ByaWV0JmFncmF2ZTspIGluIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnR2VzdGlvbmUgY3Jvbm9sb2dpYSB1dGVudGUnOwokbGFuZ1sneWVzJ10gPSAnUyZpZ3JhdmU7JzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnZGknOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTmVzc3VuIGxpbWl0ZSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdWZWNjaGlvIGRpIHVuIG9yYSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdWZWNjaGlvIGRpIHNlaSBvcmUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVmVjY2hpbyBkaSBkb2RpY2kgb3JlJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnVmVjY2hpbyBkaSB1biBnaW9ybm8nOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnVmVjY2hpbyBkaSB1bmEgc2V0dGltYW5hJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdWZWNjaGlvIGRpIGR1ZSBzZXR0aW1hbmUnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1ZlY2NoaW8gZGkgdW4gbWVzZSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVmVjY2hpbyBkaSB0cmUgbWVzaSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1ZlY2NoaW8gZGkgc2VpIG1lc2knOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVmVjY2hpbyBkaSB1biBhbm5vJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ1JhZ2dydXBwYW1lbnRvIGUgb3JkaW5hbWVudG8nOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1ZhbG9yaSBjaGUgY29ycmlzcG9uZG9ubyBhbCBjcml0ZXJpbyc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05vbWkgVXRlbnRlIGRpc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21pIFV0ZW50ZSBhc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIGRpc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXBvIGV2ZW50byBkaXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1RpcG8gZXZlbnRvIGFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnSW5kaXJpenppIElwIGRpc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSW5kaXJpenppIElwIGFzY2VuZGVudGknOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05lc3N1bmEgY3Jvbm9sb2dpYSB0cm92YXRhJzsKJGxhbmdbJ3Jlc2V0J10gPSAnQXp6ZXJhJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1JhZ2dydXBwYSBwZXIgaW5kaXJpenpvIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJhIHBlciB0aXBvIGRpIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdWaXN1YWxpenphIHNvbG8gZ2xpIGV2ZW50aSBjaGUgc29ubyBtZW5vIGRpOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnTGltaXRlIHBhZ2luYSc7CiRsYW5nWydmb3InXSA9ICdwZXInOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZXBvcnQgY3Jvbm9sb2dpYSB1dGVudGUnOwokbGFuZ1sndW5rbm93biddID0gJ1Njb25vc2NpdXRvJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJbmRpcml6em8gSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1RpcG8gZXZlbnRvJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnUml0b3JuYSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnT3BlcmF6aW9uZSBkaSBpbXBvcnRhemlvbmUgY29tcGxldGF0YSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lZSBwcm9jZXNzYXRlJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcmkgaW5jb250cmF0aSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkIGFnZ2l1bnRpJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdOb24gdHJvdm8gcHJvcHJpZXQmYWdyYXZlOyBwZXIgaWwgZ3J1cHBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTm9uIGhvIG90dGVudXRvIHJpc3Bvc3RlIGRhbCBzZXJ2ZXIgU01UUCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdJbCBmaWxlIHNwZWNpZmljYXRvICglcykgbm9uICZlZ3JhdmU7IHN0YXRvIHRyb3ZhdG8nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1ZhbG9yZSBub24gdmFsaWRpIHBlciBjYW1waSB0ZW5kaW5hIG8gbXVsdGlzZWxlemlvbmUgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdJbCBjYW1wbyAlcyBlY2NlZGUgbGEgbHVuZ2hlenphIG1hc3NpbWEnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdFcnJvcmUgZGkgaW1wb3J0YXppb25lIChsaW5lYSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdOb24gcmllc2NvIGFkIG90dGVuZXJlIGxlIGRlZmluaXppb25pIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsgKGVycm9yZSBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7aW1wb3N0YXJlIGxlIGluZm9ybWF6aW9uaSB1dGVudGUnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ05vbiB0cm92byB1bmEgY29sb25uYSBjaGUgY29pbmNpZGEgY29uIGlsIGNhbXBvIHJpY2hpZXN0byAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05vbiB0cm92byBwcm9wcmlldCZhZ3JhdmU7IHBlciBpbCBncnVwcG8gc3BlY2lmaWNhdG8nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ0lsIGZpbGUgc3BlY2lmaWNhdG8gcGVyIGwmIzAzOTtpbXBvcnRhemlvbmUgbm9uICZlZ3JhdmU7IG5lbCBmb3JtYXRvIGNvcnJldHRvJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdOb24gcG9zc28gYXByaXJlIGlsIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGEgVXRlbnRpIGluIHF1ZXN0byBHcnVwcG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnRmlsZSBDU1YgZGkgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdGaWxlIFhNTCBkaSBJbnB1dCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFc3BvcnRhIFV0ZW50aSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRhIFV0ZW50aSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdQdWxpc2NpJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnUGVyY29yc28gRGVzdGluYXppb25lIEltbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnUHJvYmxlbWEgb2Njb3JzbyBjb24gdW4gZmlsZSBjYXJpY2F0byBtYW5jYW50ZSAobWEgbmVjZXNzYXJpbyknOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ05vbiByaWVzY28gYWQgaW50ZXJwcmV0YXJlIGlsIGZpbGUgWE1MIGZvcm5pdG8nOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ05vbiBwb3NzbyBlbGltaW5hcmUgdW4gZ3J1cHBvIGNoZSBjb250aWVuZSBhbmNvcmEgdXRlbnRpJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdRdWVzdG8gdXRlbnRlICZlZ3JhdmU7IGdpJmFncmF2ZTsgY29sbGVnYXRvJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0lsIHRlc3RvIGRhbGwmIzAzOTtpbW1hZ2luZSBub24gJmVncmF2ZTsgc3RhdG8gaW5zZXJpdG8gY29ycmV0dGFtZW50ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUGVybWV0dGUgYWdsaSB1dGVudGkgZGkgY29ubmV0dGVyc2kgcGkmdWdyYXZlOyB2b2x0ZSBjb250ZW1wb3JhbmVhbWVudGUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmkgZGVsIGZpbGUgaW1tYWdpbmUgZGkgdXBsb2FkIHBlcm1lc3NpIGFsbCYjMDM5O3V0ZW50ZSc7CiRsYW5nWydldmVudF9oZWxwX09uUmVmcmVzaFVzZXInXSA9ICc8aDM+T25SZWZyZXNoVXNlcjwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZC48L3A+DQo8aDQ+UGFyYW1ldGVyczo8L2g0Pg0KPHVsPg0KICA8bGk+PGVtPmlkPC9lbT4gLSBUaGUgVXNlciBpZDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSB2aWVuZSBjYW5jZWxsYXRvPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBJbCBub21lIHV0ZW50ZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgdXRlbnRlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIHV0ZW50ZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgdXRlbnRlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlICZlZ3JhdmU7IGFnZ2lvcm5hdG8gKG8gZGFsbG8gc3Rlc3NvIHVzZXIgbyBkYSBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSB1dGVudGU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIHV0ZW50ZTwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIGdydXBwbzwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIGRlbCBncnVwcG88L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpemlvbmUgZGVsIGdydXBwbzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgZGVsIGdydXBwbzwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY2FuY2VsbGF0byB1biBncnVwcG88L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSBkZWwgZ3J1cHBvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCBkZWwgZ3J1cHBvPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB1biB1dGVudGUgZWZmZXR0dWEgbCYjMDM5O2FjY2Vzc288L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIElsIG5vbWUgZGVsbCYjMDM5O3V0ZW50ZSBjaGUgaGEgZWZmZXR0dWF0byBsJiMwMzk7YWNjZXNzbzwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBMJiMwMzk7aW5kaXJpenpvIElQIGRlbCBjbGllbnQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlIHNpIGRpc2Nvbm5ldHRlPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBJbCBub21lIGRlbGwmIzAzOTt1dGVudGUgZGlzY29ubmVzc288L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIHV0ZW50ZTwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gc2NhZGUgdW5hIHNlc3Npb25lIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsJiMwMzk7dXRlbnRlIHNjYWR1dG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIGRlbGwmIzAzOTt1dGVudGUgc2NhZHV0bzwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBzaSBjb25uZXR0ZSBhbCBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBzaSBkaXNjb25uZXR0ZSBkYWwgc2lzdGVtYSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gbGEgc2Vzc2lvbmUgdXRlbnRlIHNjYWRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjcmVhdG8gdW4gbnVvdm8gdXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgYWdnaW9ybmF0YSBsYSBzZXNzaW9uZSB1dGVudGUnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIGxlIGluZm9ybWF6aW9uaSB1dGVudGUgc29ubyBhZ2dpb3JuYXRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjYW5jZWxsYXRvIHVuIGFjY291bnQgdXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIG51b3ZvIGdydXBwbyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIGdydXBwbyAmZWdyYXZlOyBhZ2dpb3JuYXRvJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY2FuY2VsbGF0byB1biBncnVwcG8nOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0dydXBwbyBkaSBCYWNrZW5kJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTGUgc2VndWVudGkgbWFjcm8gcG9zc29ubyBlc3NlcmUgdXNhdGUgaW4gcXVlc3RvIGNhbXBpOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gUXVhbmRvIHVzYXRlIGxhIG1hY3JvIHskZ3JvdXB9LCBpbCBzaXN0ZW1hIHNvc3RpdHVpciZhZ3JhdmU7IGlsIG5vbWUgZGVsIHByaW1vIGdydXBwbyB1dGVudGkgYSBjdWkgYXBwYXJ0aWVuZSBsJiMwMzk7dXRlbnRlIGUgcmVkaXJlemlvbmVyJmFncmF2ZTsgYSBxdWVsbGEgcGFnaW5hLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnTW9kaWZpY2EgcXVlc3RvIGNhbXBvIHBlciByZXNldHRhcmUgbGUgcGFzc3dvcmQgdXRlbnRpJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdNb2RpZmljYSBxdWVzdG8gY2FtcG8gcGVyIHJlc2V0dGFyZSBsZSBwYXNzd29yZCB1dGVudGknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRXNpc3RlIGdpJmFncmF2ZTsgdW4gdXRlbnRlIGNvbiBxdWVzdG8gdXNlcm5hbWUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTmVzc3VuIHJpc3VsdGF0byByaWNldnV0byBkYWxsJiMwMzk7ZXNwb3J0YXppb25lIGNzdic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMdW5naGV6emEgZGVsIGNhbXBvIG5vbWUgdXRlbnRlJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0x1bmdoZXp6YSBkZWwgY2FtcG8gcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ0x1bmdoZXp6YSBNaW4vTWF4IGRlbGxhIHBhc3N3b3JkIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ0x1bmdoZXp6YSBNaW4vTWF4IGRlbCBub21lIHV0ZW50ZSBub24gdmFsaWRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbmRpcml6em8gRW1haWwgbm9uIHZhbGlkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vbiB0cm92byB1biBpbmRpcml6em8gZW1haWwgcGVyIHF1ZXN0byBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7aW1wb3N0YXppb25lIGRlbGxlIGluZm9ybWF6aW9uaSB1dGVudGUnOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWEgbmVsbCYjMDM5O2ltcG9zdGF6aW9uZSBkZWxsZSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVdGVudGUgYWdnaXVudG8gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGVudGUgY2FuY2VsbGF0byB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvcmUgKGVzcHJlc3Npb25lIHJlZ29sYXJlKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0F0dGVuemlvbmU6IFF1ZXN0aSBjYW1waSBpbmZsdWlzY29ubyBzdWxsYSBkaW1lbnNpb25lIGRlaSBjYW1waSBkaSBpbnB1dCBkZWkgZm9ybS4gUG90cmViYmUgbm9uIGVzc2VyZSBjb25zaWdsaWFiaWxlIGRpbWludWlyZSBxdWVzdG8gbnVtZXJvIHN1IHVuIHNpdG8gZXNpc3RlbnRlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIG1vZGlmaWNhcmUgbGUgcHJlZmVyZW56ZSBkZWwgbW9kdWxvPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnSW5kaXJpenpvIGVtYWlsIGdpJmFncmF2ZTsgdXNhdG8nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNhIGNvb2tpZXMgcGVyIHJpY29yZGFyZSBpIGRldHRhZ2xpIGRlbCBsb2dpbic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ05vbWUgZGVsIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1ldHRpIGVtYWlsIGR1cGxpY2F0ZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdMJiMwMzk7aW5kaXJpenpvIEVtYWlsIGRpdmVudGEgbG8gdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnU2kgY2VyY2EgZGkgdGVuZXJlIGF0dGl2YSBsYSBzZXNzaW9uZSBjb24gbCYjMDM5O3VzbyBkaSB1biBjb29raWUgPGVtPihpbCBjb29raWUgJmVncmF2ZTsgY29udGludWFtZW50ZSByZXNldHRhdG8gY29uIGwmIzAzOTthdHRpdml0JmFncmF2ZTsgc3VsIHNpdG8pPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHBlcm1ldHRpIHBpJnVncmF2ZTsgdXRlbnRpIGNvbiBsbyBzdGVzc28gaW5kaXJpenpvIGVtYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGluZGlyaXp6byBlbWFpbCBkZWxsJiMwMzk7dXRlbnRlICZlZ3JhdmU7IGlsIHN1byBub21lIHV0ZW50ZSAtLSBub24gdXRpbGl6emFyZSBxdWVzdGEgaW1wb3N0YXppb25lIGNvbiAmcXVvdDtwZXJtZXR0aSBpbmRpcml6emkgZW1haWwgZHVwbGljYXRpJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQZXJtZXR0aSByaWNoaWVzdGUgbXVsdGlwbGUgcGVyIHBhc3N3b3JkIGRpbWVudGljYXRlPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcocGVybWV0dGUgYWQgdW4gdXRlbnRlIGRpIHJpY2hpZWRlcmUgbCYjMDM5O2F6emVyYW1lbnRvIGRlbGxhIHBhc3N3b3JkIGFuY2hlIHNlIG5vbiBoYSBwb3J0YXRvIGEgdGVybWluZSB1bmEgcmljaGllc3RhIHByZWNlZGVudGUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNhIGkgcGVybWVzc2kgc3BlY2lmaWNpIGRlbCBtb2R1bG8gRnJvbnRFbmRVc2VyPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbWVudGUgaSBwZXJtZXNzaSBwZXIgRkVVc2VycyBzb25vIGdsaSBzdGVzc2kgZGVnbGkgZXF1aXZhbGVudGkgcGVybWVzc2kgbmVsbCYjMDM5O2FyZWEgQW1taW5pc3RyYXppb25lIGNvbWUgQWdnaXVuZ2kgVXRlbnRlLCBBZ2dpdW5naSBHcnVwcG8sIGV0Yy4gU2Ugc2VsZXppb25hdGUgcXVlc3RhIG9wemlvbmUgY2kgc2FyYW5ubyBwZXJtZXNzaSBzZXBhcmF0aSBwZXIgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOb24gdHJvdm8gaWwgZmlsZSBkaSB1cGxvYWQgKGVycm9yZSBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1NpICZlZ3JhdmU7IHZlcmlmaWNhdG8gdW4gcHJvYmxlbWEgbmVsIGZpbGUgc3BlZGl0by4gU2kgcHJlZ2EgZGkgcmlwcm92YXJlJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05vbiBhdmV0ZSBpbnNlcml0byB1biBub21lIHV0ZW50ZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOb24gYXZldGUgaW5zZXJpdG8gbGEgVm9zdHJhIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ05vbiBhdmV0ZSBpbnNlcml0byB1bmEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0xvZ291dCBVdGVudGUgRnJvbnRFbmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnTG9naW4gVXRlbnRlJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8c3BhbiBzdHlsZT0mcXVvdDtjb2xvcjpyZWQmcXVvdDs+PGI+VVNBUkUgQ09OIENBVVRFTEE8L2I+IHF1YW5kbyBtb2RpZmljYXRlIHByb3ByaWV0JmFncmF2ZTsgZXNpc3RlbnRpIGNoZSBzb25vIGFzc2VnbmF0ZSBhIGdydXBwaSwgcG90ZXRlIHBvdGVuemlhbG1lbnRlIGNhdXNhcmUgZGFubmkgZSBibG9jY2FyZSB1biBzaXRvIGVzaXN0ZW50ZSA8aT4oc3BlY2lhbG1lbnRlIHNlIHJpZHVjZXRlIGxhIGx1bmdoZXp6YSBkZWkgY2FtcGksIGV0Yyk8L2k+PC9zcGFuPic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1F1ZXN0YSBmdW56aW9uZSBub24gZnVuemlvbmEgc3Ugd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTm9uIGNyZWF0ZSB1bmEgcHJvcHJpZXQmYWdyYXZlOyBwZXIgdXNlcm5hbWUgbyBwYXNzd29yZCwgcG9pY2gmZWdyYXZlOyBxdWVzdGUgcHJvcHJpZXQmYWdyYXZlOyBzb25vIGdpJmFncmF2ZTsgaW5zZXJpdGUgbmVsIG1vZHVsbyBGcm9udEVuZFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFc3BvcnRhIGdsaSB1dGVudGkgaW4gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0VzcG9ydGEnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YSc7CiRsYW5nWydhZG1pbiddID0gJ0FtbWluaXN0cmF6aW9uZSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ01vZGlmaWNhIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWFzc2ltYSBsdW5naGV6emEnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0byc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRpbmF0byBwZXInOwokbGFuZ1snc29ydCddID0gJ09yZGluYW1lbnRvJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1V0ZW50aSBuZWwgZ3J1cHBvL2kgc2VsZXppb25hdG8vaSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGEgcmlzdWx0YXRpIGEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTm9uIHJpZXNjbyBhIHRyb3ZhcmUgdW4gY2FtcG8gZW1haWwgcGVyIHF1ZXN0byB1dGVudGUuIENvbnRhdHRhcmUgbCYjMDM5O2FtbWluaXN0cmF0b3JlIGRlbCBzaXN0ZW1hJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSUQvQWxpYXMgZGVsbGEgcGFnaW5hIHBlciBpbCBtb2R1bG8gZGkgUGFzc3dvcmQgZGltZW50aWNhdGEnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdJRC9BbGlhcyBkZWxsYSBwYWdpbmEgcGVyIGlsIG1vZHVsbyBkaSBNb2RpZmljYSBjb25maWd1cmF6aW9uaSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ0lEL0FsaWFzIGRlbGxhIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEL0FsaWFzIGRlbGxhIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRpbmEnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtZXJvIGRpIHV0ZW50aSBzb25vIG5lbCBtZXp6byBkZWxsJiMwMzk7YXp6ZXJhbWVudG8gZGVsbGEgbG9ybyBwYXNzd29yZCBkaW1lbnRpY2F0ZS4gSW4gcXVlc3RvIG1vbWVudG8gc29ubzonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSaW11b3ZpIHR1dHRlIGxlIGVudGl0JmFncmF2ZTsgcGkmdWdyYXZlOyB2ZWNjaGllIGRpIHVuYSBzZXR0aW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmltdW92aSB0dXR0ZSBsZSBlbnRpdCZhZ3JhdmU7IHBpJnVncmF2ZTsgdmVjY2hpZSBkaSB1biBtZXNlJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JpbXVvdmkgdHV0dGUgbGUgZW50aXQmYWdyYXZlOyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnU2lldGUgc2ljdXJpPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0UmIzAzOTsgc3RhdG8gaW4gc2VyaXRvIHVuIGNvZGljZSBub24gdmFsaWRvLCBwcm92YXRlIGRpIG51b3ZvJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdOb24gJmVncmF2ZTsgcG9zc2liaWxlIHRyb3ZhcmUgdW4gY29kaWNlIHRlbXBvcmFuZW8gcGVyIGlsIHZvc3RybyBJRCB1dGVudGUgbmVsIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnTW9kZWxsbyB1c2F0byBwZXIgdmlzdWFsaXp6YXJlIGlsIG1vZHVsbyBkaSB2ZXJpZmljYSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnTW9kZWxsbyB1c2F0byBwZXIgbGEgZW1haWwgcGVyIHBhc3N3b3JkIGRpbWVudGljYXRhJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdWb2kgbyBxdWFsY3VuJiMwMzk7YWx0cm8gaGEgZ2kmYWdyYXZlOyByaWNoaWVzdG8gZGkgYXp6ZXJhcmUgbGEgcGFzc3dvcmQgcGVyIHF1ZXN0byBhY2NvdW50LiBDb250cm9sbGF0ZSBsYSB2b3N0cmEgZW1haWwsIGRvdnJlc3RlIGF2ZXJlIHJpY2V2dXRvIGxlIGlzdHJ1emlvbmkgc3UgY29tZSBhenplcmFyZSBsYSB2b3N0cmEgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm9yZSBkZWwgZGF0YWJhc2UnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnQXZldGUgcmljZXZ1dG8gcXVlc3RvIG1lc3NhZ2dpbyBwZXJjaCZlZ3JhdmU7IHF1YWxjdW5vIGhhIHNlZ25hbGF0byBzdWwgbm9zdHJvIHNpdG8gY2hlIGF2ZXRlIHBlcnNvIGxhIFZvc3RyYSBwYXNzd29yZC4gU2UgJmVncmF2ZTsgY29ycmV0dG8sIGxlZ2dldGUgbGUgaXN0cnV6aW9uaSBzb3R0b3N0YW50aS4gU2Ugbm9uIHNhcGV0ZSBkaSBjb3NhIHNpIHRyYXR0aSwgcG90ZXRlIHRyYW5xdWlsbGFtZW50ZSBjYW5jZWxsYXJlIHF1ZXN0byBtZXNzYWdnaW8sIGdyYXppZSBwZXIgaWwgdGVtcG8gZGVkaWNhdG9jaS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RpY2UnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnSWwgc2VndWVudGUgY29kaWNlICZlZ3JhdmU7IHN0YXRvIGdlbmVyYXRvIGluIG1hbmllcmEgY2FzdWFsZSBwZXIgdmVyaWZpY2FyZSBsJiMwMzk7YWNjb3VudCB1dGVudGUuIFF1YW5kbyBmYXRlIGNsaWNrIHN1bCBsaW5rIHNvdHRvc3RhbnRlIHZlcnImYWdyYXZlOyB2aXN1YWxpenphdG8gdW4gY2FtcG8gaW4gY3VpIGluc2VyaXJlIHF1ZXN0byBjb2RpY2UuIE5vcm1hbG1lbnRlIGlsIGNhbXBvICZlZ3JhdmU7IHByZS1jb21waWxhdG8gcGVyIFZvaSwgbWEgc2UgY29zJmlncmF2ZTsgbm9uIGZvc3NlIGlsIGNvZGljZSAmZWdyYXZlOzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdTZWd1ZW5kbyBpbCBsaW5rIHNlZ3VlbnRlIHZlcnJldGUgcG9ydGF0aSBhbCBzaXRvIHdlYiBkb3ZlIGluc2VyaXJlIGlsIGNvZGljZSByaXBvcnRhdG8gc29wcmEgcGVyIGF6emVyYXJlIGxhIHZvc3RyYSBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1Bhc3N3b3JkIHBlcnNhJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTm9uIHRyb3ZvIGlsIG1vZHVsbyBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnVW5hIGVtYWlsICZlZ3JhdmU7IHN0YXRhIHNwZWRpdGEgYWxsJiMwMzk7aW5kaXJpenpvICVzIGNvbiBsZSBpc3RydXppb25pIHN1IGNvbWUgYXp6ZXJhcmUgbGEgdm9zdHJhIHBhc3N3b3JkLiBHcmF6aWUnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdBdmV0ZSBxdWluZGkgZGltZW50aWNhdG8gbyBwZXJzbyBsYSB2b3N0cmEgcGFzc3dvcmQuIERpZ2l0YXRlIGlsIHZvc3RybyBub21lIHV0ZW50ZSBlIHNlIHZlcnImYWdyYXZlOyB0cm92YXRvIHNwZWRpcmVtbyB1bmEgZW1haWwgY29uIGxlIGlzdHJ1emlvbmkgc3UgY29tZSBhenplcmFybGEnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIHBlciBQYXNzd29yZCBkaW1lbnRpY2F0YSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIFBlcmRpdGEgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyAlcyBub24gdHJvdmF0YSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyB0cm92YXRhJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZ2dpdW5naSBQcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wbyByaWNoaWVzdG8gKCVzKSBlcmEgdnVvdG8nOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdJbnNlcmlyZSBzb2xvIHBlciBtb2RpZmljYXJlIHF1ZWxsYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnU2VtYnJhIGNoZSBub24gYWJiaWF0ZSBlZmZldHR1YXRvIGwmIzAzOTthY2Nlc3NvJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmknOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYXppb25lJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnUXVlc3RvIGFjY291bnQgJmVncmF2ZTsgc2NhZHV0byc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnRm9ybWF0dGF6aW9uZSBkZWxsJiMwMzk7aW5kaXJpenpvIGRpIGVtYWlsIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdEYXRhIGRpIHNjYWRlbnphIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yZSBuZWxsJiMwMzk7aW1wb3N0YXppb25lIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsgJXMgcGVyIGwmIzAzOTt1dGVudGUgJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJRCBkaSBncnVwcG8gJXMgbm9uIHZhbGlkbyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmNhdG9yZSBkZWwgY2FtcG8gbmFzY29zdG8nOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0NvbG9yZSBkZWwgY2FtcG8gbmFzY29zdG8nOwokbGFuZ1snaGlkZGVuJ10gPSAnTmFzY29zdG8nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ1VuYSBwcm9wcmlldCZhZ3JhdmU7IGNvbiBxdWVsIG5vbWUgJmVncmF2ZTsgZ2kmYWdyYXZlOyBkZWZpbml0YSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZXNzdW5hIHByb3ByaWV0JmFncmF2ZTsgZGVmaW5pdGEnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdOZXNzdW5hIHByb3ByaWV0JmFncmF2ZTsgc2VsZXppb25hdGEgcGVyIHF1ZXN0byBncnVwcG8nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdOZXNzdW4gZ3J1cHBvIGRlZmluaXRvJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cHBpIHRyb3ZhdGknOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0UmIzAzOTsgbmVjZXNzYXJpbyBlc3NlcmUgbWVtYnJvIGRpIGFsbWVubyB1biBncnVwcG8nOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JpY2hpZWRlIGVzc2VyZSBtZW1icm8gZGkgYWxtZW5vIHVuIGdydXBwbyc7CiRsYW5nWydiYWNrJ10gPSAnSW5kaWV0cm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzICZlZ3JhdmU7IHVuIGNhbXBvIG9iYmxpZ2F0b3Jpbyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2EgaSBjYW1waSByaWNoaWVzdGkgY29uJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0V2aWRlbnppYXJlIGkgY2FtcGkgcmljaGllc3RpIGluJzsKJGxhbmdbJ25leHQnXSA9ICdQcm9zc2ltbyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VuIGdydXBwbyBjb24gcXVlbCBub21lICZlZ3JhdmU7IGdpJmFncmF2ZTsgcHJlc2VudGUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdDYW1wbyBvYmJsaWdhdG9yaW8nOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdGYWNvbHRhdGl2byc7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ0RpbWVuc2lvbmUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIgLz4oTWFzc2ltbyBsYXRvIGRpIHVuYSBpbW1hZ2luZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0x1bmdoZXp6YSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KGNhcmF0dGVyaSBuZWwgY2FtcG8gZGkgdGVzdG8pJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHppb25pIGRlbGxhIHRlbmRpbmEsIHNlcGFyYXRpIGRhIGZpbmUgbGluZWEuIFZhbG9yaSBwb3Nzb25vIGVzc2VyZSBzZXBhcmF0aSBkYWwgdGVzdG8gY29uIHVuID0sIHBlciBlc2VtcGlvIEZlbW1pbmE9Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdFdGljaGV0dGUgUmFkaW9idXR0b24sIHNlcGFyYXRpIGRhIGZpbmUgbGluZWEuIFZhbG9yaSBwb3Nzb25vIGVzc2VyZSBzZXBhcmF0aSBkYWwgdGVzdG8gY29uIHVuID0sIHBlciBlc2VtcGlvIEZlbW1pbmE9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdTdWdnZXJpbWVudG8nOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnQ2FtcG8gU3RhdG8nOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQ2hpZWRpIGluIFBlcmRpdGE8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXN0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgTXVsdGkgU2VsZWN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbW1hZ2luZSc7CiRsYW5nWydlbWFpbCddID0gJ0luZGlyaXp6byBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0FyZWEgZGkgdGVzdG8nOwokbGFuZ1snZHJvcGRvd24nXSA9ICdUZW5kaW5hJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmVudmVudXRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ1VzY2l0YSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNhIHF1ZXN0byBub21lIGRpIGdydXBwbyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNb2RpZmljYSBsZSBtaWUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFsbGl0byAtIG5vbWUgdXRlbnRlIG8gcGFzc3dvcmQgc2JhZ2xpYXRpPyc7CiRsYW5nWydsb2dpbiddID0gJ0FjY2VkaSc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0V0aWNoZXR0YSBkZWwgcHVsc2FudGUgZGkgQWNjZXNzbyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOb21lIHV0ZW50ZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdJbmRpcml6em8gRW1haWwnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdSaWNvcmRhbWkgc3UgcXVlc3RvIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmF0aSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1Bhc3N3b3JkIGRpbWVudGljYXRhPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdEaW1lbnRpY2F0byBpbCBWb3N0cm8gbG9naW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnVmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTW9kZWxsbyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdJRCB1dGVudGUgbm9uIHRyb3ZhdG8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1F1ZXN0byB1c2VybmFtZSAoJXMpICZlZ3JhdmU7IGdpJmFncmF2ZTsgaW4gdXNvJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2FyZSBTTVRQIHBlciB2YWxpZGFyZSBpbmRpcml6emkgZW1haWw/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ0x1bmdoZXp6YSBtaW5pbWEgZGVsbGEgcGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTHVuZ2hlenphIG1hc3NpbWEgZGVsbGEgcGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTHVuZ2hlenphIG1pbmltYSBkZWwgbm9tZSB1dGVudGUnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTHVuZ2hlenphIG1hc3NpbWEgZGVsIG5vbWUgdXRlbnRlJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RpbWVvdXQgZGVsbGEgc2Vzc2lvbmUgKHNlY29uZGkpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc28gY29va2llcyBwZXIgdGVuZXIgdml2byBpbCBsb2dpbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1Blcm1ldHRpIHJlZ2lzdHJhemlvbmUgRW1haWwnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0dydXBwbyBwcmVkZWZpbml0byBwZXIgbnVvdmkgdXRlbnRpJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2FtYmlhIGlsIE1vZGVsbG8gZGVsbGUgY29uZmlndXJhemlvbmknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0xlIHBhc3N3b3JkIG5vbiBjb2luY2lkb25vJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05vbWUgdXRlbnRlIG5vbiB2YWxpZG8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFzc3dvcmQgbm9uIHZhbGlkYSc7CiRsYW5nWydlZGl0dXNlciddID0gJ01vZGlmaWNhIFV0ZW50ZSc7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkbyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ05vbWUgdXRlbnRlJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXRvJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1F1ZXN0byB1dGVudGUgbm9uICZlZ3JhdmU7IG1lbWJybyBkaSBuZXNzdW4gZ3J1cHBvJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdOZXNzdW5hIFByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXRpdm8gZGkgaW1wb3J0YXJlIHByb3ByaWV0JmFncmF2ZTsgZHVwbGljYXRlJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsb3JlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXBwaSc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05vbWUgZGVsbGEgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvcmUgZGVsbGEgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydhZGQnXSA9ICdBZ2dpdW5nZXJlJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdDcm9ub2xvZ2lhJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmljYSc7CiRsYW5nWydleHBpcmVzJ10gPSAnU2NhZGVuemUnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNhcmUgdW5hIGRhdGEnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBPcmUnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBPcmUnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBPcmUnOwokbGFuZ1snMXdlZWsnXSA9ICcxIFNldHRpbWFuYSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFNldHRpbWFuZSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1lc2UnOwokbGFuZ1snM21vbnRocyddID0gJzMgTWVzaSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNpJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBBbm5vJzsKJGxhbmdbJ25ldmVyJ10gPSAnTWFpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsbyBpbnN0YWxsYXRvLjxiciAvPkFjY2VydGFyc2kgZGkgY29uZmlndXJhcmUgaSBwZXJtZXNzaSBwZXIgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24mcXVvdDsuIENvbnNpZ2xpYW1vIGlub2x0cmUgZGkgaW5zdGFsbGFyZSBpbCBtb2R1bG8gQ2FwdGNoYSBwb2ljaCZlZ3JhdmU7IHB1Jm9ncmF2ZTsgZXNzZXJlIHJpY2hpZXN0byBsYSB2YWxpZGF6aW9uZSBkaSB1bmEgaW1tYWdpbmUuIFF1ZXN0byAmZWdyYXZlOyBpbnRlc28gcGVyIHByZXZlbmlyZSBhdHRhY2NoaSBicnV0ZSBmb3JjZS4gIDxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gaWwgcGFyYW1ldHJvIG5vY2FwdGNoYSBwdSZvZ3JhdmU7IGVzc2VyZSB1c2F0byBwZXIgZGlzYWJpbGl0YXJlIHF1ZXN0YSBmdW56aW9uYWxpdCZhZ3JhdmU7IGFuY2hlIHNlIGlsIG1vZHVsbyAmZWdyYXZlOyBpbnN0YWxsYXRvLic7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnZGkgbnVvdm8nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1VuIGdydXBwbyBjb24gcXVlbCBub21lICZlZ3JhdmU7IGdpJmFncmF2ZTsgcHJlc2VudGUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTW9kaWZpY2EgR3J1cHBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0ludmlhJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsbGEnOwokbGFuZ1snZGVsZXRlJ10gPSAnQ2FuY2VsbGEnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTaWV0ZSBzaWN1cmkgY2hlIHF1ZXN0ZSBzaWFubyBsZSBpbXBvc3RhemlvbmkgY29ycmV0dGUgcGVyIHF1ZXN0byBncnVwcG8/XG5EaXNhdHRpdmFuZG8gdW5hIHByb3ByaWV0JmFncmF2ZTsgbm9uIHNpIGNhbmNlbGxhbm8gaSBkYXRpIG5lbGxhIHRhYmVsbGEgcHJvcHJpZXQmYWdyYXZlOyBwZXIgcXVlbCBncnVwcG8vdXRlbnRlLiBTYXJhbm5vIHNvbG8gbm9uIGRpc3BvbmliaWxpLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnU2lldGUgc2ljdXJpIGRpIHZvbGVyZSBjYW5jZWxsYXJlIHF1ZXN0byBncnVwcG8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdTaWV0ZSBzaWN1cm8gZGkgdm9sZXJlIGNhbmNlbGxhcmUgY29tcGxldGFtZW50ZSBxdWVzdGEgcHJvcHJpZXQmYWdyYXZlOz9cbkZhY2VuZG9sbyBzYXJhbm5vIGNhbmNlbGxhdGkgdHV0dGkgaSBkYXRpIGRlZ2xpIHV0ZW50aSBwZXIgcXVlc3RhIHByb3ByaWV0JmFncmF2ZTsuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnN1ZmZpY2llbnRpJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05vbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSByZWxhemlvbmUgZGkgZ3J1cHBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTthZ2dpdW5nZXJlIGlsIGdydXBwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTthZ2dpdW5nZXJlIHVuIHV0ZW50ZSBhbCBncnVwcG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIG5lbGxhIGNhbmNlbGxhemlvbmUgZGkgdW5hIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdOb24gdHJvdm8gdW4gaW5kaXJpenpvIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdOZXNzdW4gcGVybWVzc28gZGkgc2NyaXR0dXJhIG5lbGxhIGNhcnRlbGxhIGRpIGRlc3RpbmF6aW9uZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyYW1ldHJpIG5vbiB2YWxpZGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdOb24gdHJvdm8gZ3J1cHBpJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBwbGljYSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0VzcHJlc3Npb25lIHJlZ29sYXJlIGRpIFVzZXJuYW1lJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpemlvbmUnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnTm9tZSBncnVwcG8nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXNzbyBuZWdhdG8nOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvcmUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZ2dpdW5nZXJlIGdydXBwbyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGEgR3J1cHBvJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBZ2dpdW5nZXJlIHV0ZW50ZSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVHJvdmF0aSB1dGVudGkgY2hlIHNvZGRpc2Zhbm8gaWwgY3JpdGVyaW8nOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwcG8nOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlemlvbmEgR3J1cHBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgcmVnaXN0cmF6aW9uZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIGxvZ291dCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgbG9naW4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbnplJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXRlbnRpJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0dlc3Rpb25lIHV0ZW50aSBkaSBGcm9udGVuZCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1Blcm1ldHRpIGFnbGkgdXRlbnRpIGRpIGVmZmV0dHVhcmUgbCYjMDM5O2FjY2Vzc28gZGFsbCYjMDM5O2ludGVyZmFjY2lhIGRlbCBzaXRvJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdQYWdpbmEgZGkgYWNjZXNzbyBwcmVkZWZpbml0YSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnVWx0aW1hIHBhZ2luYSBhY2NlZHV0YSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbHRyYSBwYWdpbmE6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdJbnNlcml0ZSBpbCB0ZXN0byB2aXN1YWxpenphdG8gbmVsbCYjMDM5O2ltbWFnaW5lJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuODM4ODExMzc5LjEzODUxMjkxNDMuMTM4OTE5ODg3Mi4xMzg5NzA3MTI0LjQnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMzg5MTk4ODcyLjMuMy51dG1jc3I9c29sZ2VhLm5ldHx1dG1jY249KHJlZmVycmFsKXx1dG1jbWQ9cmVmZXJyYWx8dXRtY2N0PS9jbXNtcy9hZG1pbi9pbmRleC5waHAnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/lt_LT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnRW5hYmxlIGNhcHRjaGEgb24gdGhlIGxvZ2luIGZvcm0nOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ0lmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIGFuZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugc3RhdGVzIHRvIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0sIHRoaXMgb3B0aW9uIGNvbnRyb2xzIHdldGhlciBhIGNhcHRjaGEgd2lsbCBiZSBkaXNwbGF5ZWQgb24gdGhlIGxvZ2luIHNjcmVlbi4gIElmIGNhcHRjaGEgaXMgYXZhaWxhYmxlJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1lvdSBhcmUgbm90IGF1dGhvcml6ZWQgdG8gdmlldyB0aGlzIGNvbnRlbnQnOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdTcGVjaWZ5IGEgbGlzdCBvZiBGRVUgZ3JvdXBzIHRoYXQgbWF5IGhhdmUgYWNjZXNzIHRvIHRoaXMgcGFnZS4gIFNlbGVjdGluZyBubyBncm91cHMgd2lsbCBhbGxvdyBhbnkgdXNlciBsb2dnZWQgaW4gdG8gRkVVIHRvIHZpZXcgdGhlIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdBcHNhdWdvdG8gcHVzbGFwaW8gbnVzdGF0eW1haSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdMZWlkxb5pYW1vcyBncnVwxJdzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnU2VsZWN0IHRoZSBncm91cHMgdGhhdCBhcmUgKGJ5IGRlZmF1bHQpIGFsbG93ZWQgdG8gdmlldyBwcm90ZWN0ZWQgcGFnZXMuICBBbiBlZGl0b3Igd2l0aCB0aGUgJnF1b3Q7TWFuYWdlIEFsbCBDb250ZW50JnF1b3Q7IHBlcm1pc3Npb24gY2FuIG92ZXJyaWRlIHRoaXMgZm9yIGVhY2ggcGFnZSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdBY3Rpb24gZm9yIGluc3VmZmljaWVudCBhY2Nlc3MnOwokbGFuZ1snaW5mb19wYWdldHlwZV9hY3Rpb24nXSA9ICdTcGVjaWZ5IHRoZSBiZWhhdmlvciBmb3IgcGVvcGxlIGFjY2Vzc2luZyB0aGlzIHBhZ2Ugd2l0aG91dCBzdWZmaWNpZW50IHBlcm1pc3Npb24uICBZb3UgY2FuIGVpdGhlciByZWRpcmVjdCB0byBhIHNwZWNpZmllZCBwYWdlLCBvciBkaXNwbGF5IHRoZSBsb2dpbiBmb3JtJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdSb2R5dGkgcHJpc2lqdW5naW1vIGZvcm3EhSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyZWN0IHRvIGEgUGFnZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnUmVkaXJlY3QgVG8nOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICZxdW90O3JlZGlyZWN0JnF1b3Q7IHRoZSB1c2VyIHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBtZXNzYWdlIGluZGljYXRpbmcgdGhhdCB0aGV5IGRvIG5vdCBoYWNlIGFjY2VzcyB0byB0aGUgcGFnZSc7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1Blcm1pc3Npb25zJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ1Byb3RlY3RlZCBDb250ZW50JzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ8W9acWrcsSXdGknOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgVXNlcklEIENvbHVtbiBvbiBJbXBvcnQnOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnSSZzY2Fyb247cGzEl3N0aW5pYWkgbnVzdGF0eW1haSc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQmcXVvdDtoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRvIHNhdmUgZGF0YWJhc2UgcXVlcmllcy4gIElmIGxlZnQgZW1wdHkgb3Igc2V0IHRvIDAgZXhwaXJ5IHdpbGwgYmUgcGVyZm9ybWVkIG9uIGV2ZXJ5IHJlcXVlc3QuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdKxatzxbMgbnVzdGF0eW1haSBidXZvIHPEl2ttaW5nYWkgYXRuYXVqaW50aSc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdGb3JjZSB1c2VycyB0byBsb2dvdXQgYXQgcmVndWxhciBpbnRlcnZhbHMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGltZXMgZm9yIGZvcmNlZCBsb2dvdXQnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiB0aW1lcyBsaWtlIEhIOk1NLEhIOk1NIHdoZXJlIHVzZXJzIHdpbGwgYmUgZm9yY2libHkgbG9nZ2VkIG91dC4gTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0V4Y2x1ZGUgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIDxlbT4obWludXRlcyk8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdJZiBzcGVjaWZpZWQsIGFueSB1c2VycyB0aGF0IGhhdmUgYmVlbiBhY3RpdmUgaW4gdGhpcyBudW1iZXIgb2Ygc2Vjb25kcyB3aWxsIG5vdCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXIgdGlrcmFpIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJXMgbmF1ZG90b2rEhT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdUaGUgdXBsb2FkZWQgZmlsZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGlzdCBvZiBhbGxvd2VkIGZpbGUgdHlwZXMnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaGFzIGJlZW4gZGVsZXRlZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJZiBlbmFibGVkLCB0aGlzIG1vZHVsZSB3aWxsIGxpc3RlbiB0byBldmVudHMgZnJvbSB0aGUgRWNvbW1lcmNlIHN1aXRlLiAgVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGhhdmUgZWZmZWN0IGlmIHRoaXMgc2V0dGluZyBpcyBlbmFibGVkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0xpc3RlbiB0byBPcmRlciBFdmVudHMnOwokbGFuZ1snaW5mb19wYWlkcmVnX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGFwcGx5IGlmIHVzaW5nIHNlbGYgcmVnaXN0cmF0aW9uIGFuZCBhbGxvd2luZyBmb3IgcGFpZCByZWdpc3RyYXRpb24nOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdJJnNjYXJvbjt0cmludGkgbmF1ZG90b2rEhSc7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFLWtvbWVucmNpam9zIG51c3RhdHltYWknOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ1JvZHltbyBudXN0YXR5bWFpJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIGFyZSBvbmx5IGFwcGxpY2FibGUgaWYgdXNpbmcgdGhlICZxdW90O0J1aWx0aW4gQXV0aGVudGljYXRpb24mcXVvdDsuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gcmVxdWVzdCBsb3N0IGxvZ2luIGluZm9ybWF0aW9uLCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byBhIHBhc3N3b3JkIHJlc2V0LCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCB0aGVpciB1c2VybmFtZSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgY2hhbmdlJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdBdXRlbnRpZmlrYWNpam9zIG51c3RhdHltYWknOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICfErnNwxJdqaW1hcyBhcGllIHByaXNpanVuZ2ltbyBzZXNpam9zIHBhYmFpZ8SFJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnSsWrc8WzIHByaXNpanVuZ2ltbyBzZXNpam9zIGdhbGlvamltYXMgYXJ0xJdqYSBwcmllIHBhYmFpZ29zLiBQcmEmc2Nhcm9uO29tIHBhc3BhdXNraXRlICZxdW90O1ByYXTEmXN0aSZxdW90OyBteWd0dWvEhSwgamVpIG5vcml0ZSBwcmF0xJlzdGkgcHJpc2lqdW5naW1vIHNlc2lqb3MgZ2FsaW9qaW3EhSc7CiRsYW5nWydvayddID0gJ1ByYXTEmXN0aSc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdTZXNpam9zIGF0bmF1amluaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdUaGlzIGlzIHRoZSBmaWVsZCBuYW1lLCB0byBiZSB1c2VkIGZvciBhZGRyZXNzaW5nIGluIHNtYXJ0eS4gIEl0IG11c3QgY29uc2lzdCBvZiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnTGFua3l0b2phaSc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1Bhc2lyaW5raXRlIHZpZW7EhSBhciBkYXVnaWF1IEZFVSBncnVwacWzLCBrdXJpb21zIGJ1cyBsZWlzdGEgbWF0eXRpICZzY2Fyb247xK8gcHVzbGFwxK8nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ1R1cmkgYsWrdGkgcGFzaXJpbmt0YSBncnVwxJcnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnUGFzaXJpbmtpdGUgdmllbsSFJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdQcmFkxb5pb3MgbWV0YWknOwokbGFuZ1snZW5kX3llYXInXSA9ICdQYWJhaWdvcyBtZXRhaSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdNaW5pYXRpxatyb3MgZHlkaXMnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXIgdGlrcmFpIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJnNjYXJvbjvEryBuYXVkb3RvasSFPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdJJnNjYXJvbjt0cmludGkgcGFzaXJpbmt0dXMnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnUHJpZGVkYW50IG5hdWp1cyBuYXVkb3RvanVzIGdlbmVydW90aSBhdHNpdGlrdGluxK8gbmF1ZG90b2pvIHZhcmTEhSc7CiRsYW5nWydtb250aHMnXSA9ICdtxJduZXNpYWknOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ051bWF0eXRhc2lzIG5hdWRvdG9qbyBnYWxpb2ppbW8gdGVybWluYXMnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBudXN0YXR5bWFpJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnU2F2eWJpxbMgbnVzdGF0eW1haSc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1BlcmFkcmVzYXZpbW8gbnVzdGF0eW1haSc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnUGFncmluZGluaWFpIG51c3RhdHltYWknOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc2lqb3MgaXIgc2xhcHVrxbMgbnVzdGF0eW1haSc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0xhdWtvIG51c3RhdHltYWknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnUmVkYWd1b3RpIG5hdWRvdG9qxIUnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnU3BhdXNraXRlIMSNaWEsIGplaSBuZWF0c2ltZW5hdGUgc2F2byBwcmlzaWp1bmdpbW8gZGV0YWxpxbMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ1NwYXVza2l0ZSDEjWlhLCBqZWkgbmVhdHNpbWVuYXRlIHNhdm8gc2xhcHRhxb5vZMW+aW8nOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdOb3LEl2RhbWkgYXRzaWp1bmd0aSBzcGF1c2tpdGUgxI1pYSc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnUGFzcGF1c2tpdGUgxI1pYSBzbGFwdGHFvm9kxb5pbyBhciBraXRvcyBpbmZvcm1hY2lqb3Mga2VpdGltdWknOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdOYXVkb3Rvam8gcGVyxb5pxatyxJdqaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydldmVudCddID0gJ8SudnlraXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgcHJhbmUmc2Nhcm9uO2ltYW1zJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdQcmFuZSZzY2Fyb247aW1vIGUuIHBhJnNjYXJvbjt0dSAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBlLiBwYSZzY2Fyb247dHUgdGVtYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ1ByYW5lJnNjYXJvbjtpbWFpIGUuIHBhJnNjYXJvbjt0dSc7CiRsYW5nWydPbkxvZ2luJ10gPSAnUHJpc2lqdW5ndXMnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBdHNpanVuZ3VzJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ1Bhc2liYWlndXMgc2VzaWphaSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdTdWvFq3J1cyBuYXVqxIUgbmF1ZG90b2rEhSc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdJJnNjYXJvbjt0cnludXMgbmF1ZG90b2rEhSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdLYWkgbmF1ZG90b2rFsyBudXN0YXR5bWFpIHBha2Vpc3RpJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdLYWkgbmF1ZG90b2rFsyBncnVwxJcgc3VrdXJ0YSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnS2FpIG5hdWRvdG9qxbMgZ3J1cMSXIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnSsWrc8WzIG5hdWRvdG9qbyB2YXJkYXMgeXJhJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnUHJhcmFzdG8gbmF1ZG90b2pvIHZhcmRvIGRldGFsacWzICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ05hdWRvdG9qbyBwYW1pciZzY2Fyb247dG8gdmFyZG8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3I6IE1vcmUgdGhhbiBvbmUgdXNlciBhY2NvdW50IG1hdGNoZWQgdGhlIHByb3BlcnRpZXMgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIG1hdGNoaW5nIHVzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0tsYWlkYSAtIGdydXDElyB0b2tpdSB2YXJkdSBuZXJhc3RhJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnVGlrIHNrYWl0eW11aSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnTmF1ZG90b2rFsyBtYW5pcHVsaWF0b3JpYXVzIGtsYXPElyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdBdGp1bmd0YXMgYWRtaW5pc3RyYXRvcmlhdXMnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1JvZHl0aSB0aWsgcHJpc2lqdW5ndXNpdXMgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnQXRqdW5ndGkgJnNjYXJvbjvEryBuYXVkb3RvasSFJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ05hdWRvdG9qbyBzxIV2eWLEl3MnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdOYXVkb3Rvam8gaXN0b3JpamEnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9ydHVvdGknOwokbGFuZ1snY2xlYXInXSA9ICdWYWx5dGknOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0IFVzZXIgSGlzdG9yeSBUbyBBU0NJSSB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnQ2xlYXIgVXNlciBIaXN0b3J5IHJlY29yZHMgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBwcmlzaWp1bmdpbW8gZGV0YWxlcz8/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnVGFpcCc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2kmc2Nhcm9uOyc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKkJlIHJpYsWzICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1ZpZW5vcyB2YWxhbmRvcyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnJlNjYXJvbjtlJnNjYXJvbjtpxbMgdmFsYW5kxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0R2eWxpa29zIHZhbGFuZMWzIHNlbnVtbyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1ZpZW5vcyBkaWVub3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1ZpZW5vcyBzYXZhaXTEl3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdmllasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1ZpZW5vIG3El25lc2lvIHNlbnVtbyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHJpasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2Umc2Nhcm9uO2nFsyBtxJduZXNpxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ1ZpZW5lcmnFsyBtZXTFsyBzZW51bW8nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cGF2aW1hcyBpciByxasmc2Nhcm9uO2lhdmltYXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlY29yZHMgbWF0Y2hpbmcgdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBtYcW+xJdqaW7EjWlhaSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBkaWTEl2phbsSNaWFpJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIHwgbWHFvsSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnRGF0YSB8IGRpZMSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnxK52eWtpbyB0aXBhcyB8IG1hxb7El2phbsSNaWFpJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnxK52eWtpbyB0aXBhcyB8IGRpZMSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRGVzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05lYXB0aWt0YSBpc3Rvcmlqb3MnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cCBCeSBJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSBGaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnRGlzcGxheSBvbmx5IGV2ZW50cyB0aGF0IGFyZSBsZXNzIHRoYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdlIExpbWl0JzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ05hdWRvdG9qbyBpc3Rvcmlqb3MgYXRhc2thaXRhJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZcW+aW5vbWFzJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhZHJlc2FzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICfErnZ5a2lvIHRpcGFzJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnR3LEr8W+dGknOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICfErnZ5a28ga2xhaWTFsyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnxK5yYSZzY2Fyb247YWkgcHJpZMSXdGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIGdyb3VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQ291bGQgbm90IGdldCBhIHJlc3BvbnNlIGZyb20gdGhlIFNNVFAgc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0xhdWthcyAlcyB2aXImc2Nhcm9uO2lqbyBtYWtzaW1hbMWzIGlsZ8SvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXZpbW8ga2xhaWRhIChlaWx1dMSXICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMgxK8gJnNjYXJvbjtpxIUgZ3J1cMSZJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5wdXQgWE1MIEZpbGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRWtzcG9ydHVvdGkgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVmFseXRpJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnSW1hZ2UgRGVzdGluYXRpb24gUGF0aCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0dydXDElywga3VyaW9qZSB5cmEgbmF1ZG90b2rFsywgbmVnYWxpIGLFq3RpIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnJlNjYXJvbjtpcyBuYXVkb3RvamFzIGphdSB5cmEgcHJpc2lqdW5nxJlzJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ05ldGVpc2luZ2FpIMSvdmVzdGFzIHRla3N0YXMgaSZzY2Fyb247IHBhdmVpa3NsaXVrbyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnTGVpc3RpIG5hdWRvdG9qdWkgcHJpc2lqdW5ndGkgZGF1Z2lhdSBuZWd1IHZpZW7EhSBrYXJ0xIUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ05hdWRvdG9qYXMgdG9raXUgdmFyZHUgamF1IGVnemlzdHVvamEnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTmF1ZG90b2pvIHZhcmRvIGxhdWtvIGlsZ2lzJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ1NsYXB0YcW+b2TFvmlvIGxhdWtvIGlsZ2lzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW5pbWFsdXMvbWFrc2ltYWx1cyBzbGFwdGHFvm9kxb5pbyBpbGdpcyB5cmEgbmV0ZWlzaW5nYXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ05ldGVpc2luZ2FzIG5hdWRvdG9qbyB2YXJkbyBpbGdpcyAocGVyIHRydW1wYXMgYXJiYSBwZXIgaWxnYXMpJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOZXRlaXNpbmdhcyBlLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0UuIHBhJnNjYXJvbjt0byBhZHJlc2FzICZzY2Fyb247aWFpIHPEhXNrYWl0YWkgbmVyYXN0YXMnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdOYXVkb3RvamFzIHByaWTEl3RhcyAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ05hdWRvdG9qYXMgaSZzY2Fyb247dHJpbnRhcyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdTYXZ5YsSXJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgamF1IHlyYSBuYXVkb2phbWFzJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnTGVpc3RpIHTEhSBwYXTEryBlLiBwYSZzY2Fyb247dG8gYWRyZXPEhSBrZWxpZW1zIG5hdWRvdG9qYW1zJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ05hdWRvdG9qbyB2YXJkYXMgeXJhIG5hdWRvdG9qbyBlLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdBdHRlbXB0IHRvIGtlZXAgbG9naW5zIGFsaXZlIGJ5IHRoZSB1c2Ugb2YgYSBjb29raWUgPGVtPih0aGUgY29va2llIGlzIHJlc2V0IG9uIGFjdGl2aXR5IGluIHRoZSB3ZWJzaXRlKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhhbGxvdyBtdWx0aXBsZSB1c2VycyB3aXRoIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3MpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhhbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBuYXVkb3Rvam8gdmFyZG8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBzYXZvIGUuIHBhJnNjYXJvbjt0byBhZHJlc28nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBzbGFwdGHFvm9kxb5pbyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBMb2dvdXQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgVXNlciBMb2dpbic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RoaXMgZnVuY3Rpb24gZG9lcyBub3Qgd29yayBvbiB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRWtzcG9ydHVvdGkgbmF1ZG90b2p1cyDEryBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9ydHVvdGknOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0dW90aSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmF2aW1hcyc7CiRsYW5nWydlZGl0cHJvcCddID0gJ0tlaXN0aSBzxIV2eWLEmTogPGVtPiVzPC9lbT4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWFrc2ltYWx1cyBpbGdpcyc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU3VrdXJ0YXMnOwokbGFuZ1snc29ydGJ5J10gPSAnUsWrJnNjYXJvbjtpdW90aSBwYWdhbCc7CiRsYW5nWydzb3J0J10gPSAnUsWrJnNjYXJvbjtpdW9qYW1hJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ05hdWRvdG9qYWkgcGFzaXJpbmt0b3NlIGdydXDEl3NlJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0Fwcmlib3RpIHJlenVsdGF0dXMgaWtpJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJyZTY2Fyb247aW8gbmF1ZG90b2pvIGUuIHBhJnNjYXJvbjt0byBhZHJlc2FzIG5lcmFuZGFtYXMuIEtyZWlwa2l0xJdzIMSvIHNpc3RlbW9zIGFkbWluaXN0cmF0b3JpxbMuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBGb3Jnb3QgUGFzc3dvcmQgZm9ybSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgQ2hhbmdlIFNldHRpbmdzIGZvcm0nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ291dCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1LFqyZzY2Fyb247aWF2aW1vIHR2YXJrYSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQYSZzY2Fyb247YWxpbnRpIHZpc3VzIGRhdWdpYXUgbmVndSBzYXZhaXTEl3Mgc2VudW1vIMSvcmEmc2Nhcm9uO3VzJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BhJnNjYXJvbjthbGludGkgdmlzdXMgZGF1Z2lhdSBuZWd1IG3El25lc2lvIHNlbnVtbyDEr3JhJnNjYXJvbjt1cyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdQYSZzY2Fyb247YWxpbnRpIHZpc3VzIMSvcmEmc2Nhcm9uO3VzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBciBqxatzIMSvc2l0aWtpbsSZcz8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdOZXRlaXNpbmdhcyBrb2RhcyBidXZvIMSvdmVzdGFzLiBCYW5keWtpdGUgZGFyIGthcnTEhSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnSsWrcyBhcmJhIGthcyBub3JzIGtpdGFzIGphdSBwcmEmc2Nhcm9uO8SXdGUgc2xhcHRhxb5vZMW+aW8ga2VpdGltby4gUGF0aWtyaW5raXQgc2F2byBlLiBwYSZzY2Fyb247dMSFIC0gdHVyxJd0dW3El3RlIHJhc3RpIGUuIGxhaSZzY2Fyb247a8SFIHN1IGluc3RydWtjaWpvbWlzLCBrYWlwIHBha2Vpc3RpIHNsYXB0YcW+b2TEry4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0R1b21lbsWzIGJhesSXcyBrbGFpZGEnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnSsWrcyBnYXZvdGUgJnNjYXJvbjvEryBsYWkmc2Nhcm9uO2vEhSwgbmVzIGrFq3MgYXJiYSBrYcW+a2FzIGtpdGFzIG3Fq3PFsyBzdmV0YWluxJdqZSBudXJvZMSXLCBrYWQgcHJhcmFkb3RlIHNhdm8gcHJpc2lqdW5naW1vIHNsYXB0YcW+b2TEry4gSmVpIGp1bXMgbmVyZWlraWEga2Vpc3RpIHNhdm8gc2xhcHRhxb5vZMW+aW8sIHRpZXNpb2cgaWdub3J1b2tpdGUgJnNjYXJvbjvEryBsYWkmc2Nhcm9uO2vEhS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLb2Rhcyc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOb3LEl2RhbWkgcGFrZWlzdGkgc2F2byBzbGFwdGHFvm9kxK8gc2VraXRlIMW+ZW1pYXUgcGF0ZWlrdMSFIG51b3JvZMSFLiBOb3JpbnQgcGFrZWlzdGkgc2xhcHRhxb5vZMSvLCByZWlraWEgxK92ZXN0aSBpciBrb2TEhS4gxK5wcmFzdGFpIGtvZG8gbGF1a2VsaXMgYsWrbmEgaSZzY2Fyb247IGFua3N0byB1xb5waWxkeXRhcywgdGHEjWlhdSBqZWkgbmUsIHRhaSBrb2RhcyB5cmE6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnU2VraXRlICZzY2Fyb247acSFIG51b3JvZMSFLCBqZWkgbm9yaXRlIHBha2Vpc3RpIHNhdm8gc2xhcHRhxb5vZMSvOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUHJhcmFzdGFzIHNsYXB0YcW+b2Rpcyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ25lcmFuZGFtYXMgQ01TTWFpbGVyIG1vZHVsaXMnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRS4gbGFpJnNjYXJvbjtrYXMgc3UgaW5zdHJ1a2Npam9taXMsIGthaXAgcGFrZWlzdGkgc2xhcHRhxb5vZMSvLCBpJnNjYXJvbjtzacWzc3RhcyBhZHJlc3UgJXMuIEHEjWnFqyEnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfErnZlc2tpdGUgbmF1ZG90b2pvIHZhcmTEhSBpciBqZWlndSB0b2tzIHZhcmRhcyBlZ3ppc3R1b2phLCBlLiBsYWkmc2Nhcm9uO2thcyBzdSBpbnN0cnVrY2lqb21pcywga2FpcCBwYWtlaXN0aSBzbGFwdGHFvm9kxK8sIGJ1cyBqdW1zIGkmc2Nhcm9uO3NpxbNzdGFzLiAnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdVxb5taXImc2Nhcm9uO3RvIHNsYXB0YcW+b2TFvmlvICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdOYXVkb3Rvam8gdmFyZG8gcHJpbWluaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdTxIV2eWLElyAlcyBuZXJhc3RhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdSYXN0b3Mgc8SFdnlixJdzJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdQcmlkxJd0aSBzxIV2eWLEmSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnUHJpdmFsb21hcyBsYXVrYXMgKCVzKSBidXZvIHR1JnNjYXJvbjvEjWlhcyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ8SudmVza2l0ZSBuYXVqxIUgc2xhcHRhxb5vZMSvLCBqZWkgbm9yaXRlIHBha2Vpc3RpIGRhYmFydGluxK8nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdKxatzIG5lcHJpc2lqdW5nxJlzJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdOdXN0YXR5bWFpJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmFjaWphJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnJlNjYXJvbjtpIHBhc2t5cmEgbmViZWdhbGlvamEnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ05ldGVpc2luZ2FzIGUuIHBhJnNjYXJvbjt0byBhZHJlc28gZm9ybWF0YXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOZXRlaXNpbmdhIHBhc2t5cm9zIGdhbGlvamltbyBwYWJhaWdvcyBkYXRhLiBUYWkgZ2FsaSBixat0aSBzdXNpZXRhIHN1IHNpc3RlbW9zIG51c3RhdHltYWlzLiBCYW5keWtpdGUgbnVzdGF0eXRpIGFua3N0ZXNuaXVzIG1ldHVzLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05ldGVpc2luZ2FzICVzIGdydXDEl3MgSUQnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnUGFzbMSXcHRhJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdSYXN0b3MgZ3J1cMSXcyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTWVtYmVyc2hpcCBpbiBhdCBsZWFzdCBvbmUgZ3JvdXAgaXMgcmVxdWlyZWQnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JlcXVpcmUgbWVtYmVyc2hpcCBpbiBhdGxlYXN0IG9uZSBncm91cCc7CiRsYW5nWydiYWNrJ10gPSAnQXRnYWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJ2xhdWthcyAlcyB5cmEgcHJpdmFsb21hcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyayByZXF1aXJlZCBmaWVsZHMgd2l0aCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdIaWxpdGUgcmVxdWlyZWQgZmllbGRzIGluJzsKJGxhbmdbJ25leHQnXSA9ICdLaXRhcyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0dydXDElyB0b2tpdSBwYXZhZGluaW11IGphdSB5cmEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdCxat0aW5hcyc7CiRsYW5nWydvcHRpb25hbCddID0gJ0xhaXN2YWkgcGFzaXJlbmthbWFzJzsKJGxhbmdbJ29mZiddID0gJ0kmc2Nhcm9uO2p1bmd0YSc7CiRsYW5nWydzaXplJ10gPSAnRHlkaXMnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhpbXVtIHNpemUgb2YgYW55IG9uZSBkaW1lbnNpb24gb2YgdGhlIGltYWdlIGluIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnSWxnaXMnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcGFzJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBhcyc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0xhdWtlbGlvIHN0YXR1c2FzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0FzayBpbiBMb3N0PGJyLz5Vc2VybmFtZSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3Rhcyc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ1BhdmVpa3NsaXVrYXMnOwokbGFuZ1snZW1haWwnXSA9ICdFLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdTdmVpa2knOwokbGFuZ1snbG9nb3V0J10gPSAnQXRzaWp1bmd0aSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnTmF1ZG90aSAmc2Nhcm9uO2lvcyBncnVwxJdzIHZhcmTEhSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdQYWtlaXN0aSBtYW5vIG51c3RhdHltdXMnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdOZXBhdnlrbyBwcmlzaWp1bmd0aTogbmV0ZWlzaW5naSBuYXVkb3Rvam8gdmFyZGFzIGFyYmEgc2xhcHRvxb5vZGlzJzsKJGxhbmdbJ2xvZ2luJ10gPSAnUHJpc2lqdW5ndGknOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdQcmlzaWp1bmdpbW8gbXlndHVrbyBldGlrZXTElyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOYXVkb3Rvam8gdmFyZGFzJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UuIHBhJnNjYXJvbjt0byBhZHJlc2FzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1NsYXB0YcW+b2Rpcyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ1ByaXNpbWluayBtYW5lJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cnVvdGlzJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnVcW+bWlyJnNjYXJvbjtvdGUgc2xhcHRhxb5vZMSvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBwcmlzaWp1bmdpbW8gZGV0YWxlcz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdOdW1hdHl0aSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hcyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdJbmZvcm1hY2lqYSBhcGllICZzY2Fyb247xK8gbmF1ZG90b2rEhSBuZXJhc3RhJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdOYXVkb3Rvam8gdmFyZGFzICglcykgamF1IHlyYSBuYXVkb2phbWFzJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWx1cyBuYXVkb3Rvam8gdmFyZG8gaWxnaXMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW11bSBVc2VybmFtZSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnU2Vzc2lvbiBUaW1lb3V0IChzZWNvbmRzKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNlIGNvb2tpZXMgdG8ga2VlcCBsb2dpbnMgYWxpdmUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdBbGxvdyBFbWFpbCBSZWdpc3RyYXRpb24nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ051bWF0eXRhIGdydXDElyBuYXVqYW0gbmF1ZG90b2p1aSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ051c3RhdHltxbMga2VpdGltbyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1NsYXB0YcW+b2TFvmlhaSBuZXN1dGFtcGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTmV0ZWlzaW5nYXMgbmF1ZG90b2pvIHZhcmRhcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOZXRlaXNpbmdhcyBzbGFwdGHFvm9kaXMnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRhZ3VvdGkgbmF1ZG90b2phJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnR2FsaW9qYW50aXMnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOYXVkb3Rvam8gdmFyZGFzJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1c2FzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJyZTY2Fyb247aXMgbmF1ZG90b2phcyBuZXByaWtsYXVzbyBqb2tpYWkgZ3J1cGVpJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdOxJdyYSBzxIV2eWJpxbMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdBdHRlbXB0IHRvIGltcG9ydCBkdXBsaWNhdGUgcHJvcGVydGllcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZlcnTElyc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwxJdzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdTYXZ5YsSXcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ1NhdnlixJdzIHZhcmRhcyc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdTYXZ5YsSXcyB2ZXJ0xJcnOwokbGFuZ1snYWRkJ10gPSAnUHJpZMSXdGknOwokbGFuZ1snaGlzdG9yeSddID0gJ0lzdG9yaWphJzsKJGxhbmdbJ2VkaXQnXSA9ICdLZWlzdGknOwokbGFuZ1snZXhwaXJlcyddID0gJ051c3RvamEgZ2FsaW90aSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZ5IERhdGUnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBIb3Vycyc7CiRsYW5nWycyNGhycyddID0gJzI0IEhvdXJzJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggSG91cnMnOwokbGFuZ1snMXdlZWsnXSA9ICcxIFdlZWsnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBXZWVrcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1vbnRoJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1vbnRocyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNb250aHMnOwokbGFuZ1snMXllYXInXSA9ICcxIFllYXInOwokbGFuZ1snbmV2ZXInXSA9ICdOaWVrYWRhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsaXMgaW5zdGFsaXVvdGFzIHPEl2ttaW5nYWkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTbGFwdGHFvm9kaXMnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdTbGFwdGHFvm9kaXMsIGRhciBrYXJ0xIUnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dydXDElyB0b2tpdSBwYXZhZGluaW11IGphdSB5cmEnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnUmVkYWd1b3RpIGdydXDEmSc7CiRsYW5nWydzdWJtaXQnXSA9ICdQYXRlaWt0aSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdCZzY2Fyb247YXVrdGknOwokbGFuZ1snZGVsZXRlJ10gPSAnVHJpbnRpJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXIgasWrcyDEr3NpdGlraW7EmXMsIGthZCBub3JpdGUgaSZzY2Fyb247dHJpbnRpICZzY2Fyb247acSFIGdydXDEmT8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gY29tcGxldGVseSBkZWxldGUgdGhpcyBwcm9wZXJ0eT9cbkRvaW5nIHNvIHdpbGwgYWxzbyBlcmFzZSBhbnkgdXNlciBlbnRyaWVzIGZvciB0aGlzIHByb3BlcnR5Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdJbnN1ZmZpY2llbnQgUGFyYW1ldGVycyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdWYXJkYXMnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIGFkZGluZyBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAgcmVsYXRpb24nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGFkZGluZyBhIHVzZXIgdG8gYSBncm91cCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBkZWxldGluZyBhIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgbmVyYXN0YXMnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05vIHdyaXRlIHBlcm1pc3Npb24gdG8gZGVzdGluYXRpb24gZGlyZWN0b3J5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdOZXRlaXNpbmdpIHBhcmFtZXRyYWknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdKb2tpYSBncnVwxJcgbmVyYXN0YSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1ByaXRhaWt5dGknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJhcyc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQXByYSZzY2Fyb247eW1hcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcnVwxJdzIHBhdmFkaW5pbWFzJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1ByaXNpanVuZ2ltYXMgYXRtZXN0YXMnOwokbGFuZ1snZXJyb3InXSA9ICdLbGFpZGEnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdQcmlkxJd0aSBncnVwxJknOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnR1b3RpIGdydXDEmSc7CiRsYW5nWydhZGR1c2VyJ10gPSAnUHJpZMSXdGkgbmF1ZG90b2rEhSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgdGhhdCBtYXRjaCB0aGUgY3JpdGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwxJcnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdQYXNpcmlua3RpIGdydXDEmSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyYWNpam9zICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdBdHNpanVuZ2ltbyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdQcmlzaWp1bmdpbW8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnTnVzdGF0eW1haSc7CiRsYW5nWyd1c2VycyddID0gJ05hdWRvdG9qYWknOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgbmF1ZG90b2rFsyB0dmFya3ltYXMnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnTnVtYXR5dGFzaXMgcHJpZSZzY2Fyb247YWtpbmlzIHB1c2xhcGlzJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMYXN0IGFjY2Vzc2VkIHBhZ2UnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnS2l0YXMgcHVzbGFwaXM6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnxK52ZXNraXRlIHRla3N0xIUgcGF2ZWlrc2xpdWt1aSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY29va2llbmFtZSddID0gJ09tIHNhdHQsICZxdW90O2h1c2sgbWVnJnF1b3Q7IGZ1bmtzam9uYWxpdGV0ZW4gdmlsbCBibGkgYWt0aXZlcnQuIERldHRlIGVyIHRpbHN2YXJlciBjb29raWUgaG9sZCBpIGxpdmUgZnVua3Nqb25lbiwgbWVuIHZhcmVyIG9wcCB0aWwgZXR0ICZhcmluZztyLic7CiRsYW5nWydtc2dfdXNlcm5hbWVfcmVhZG9ubHknXSA9ICdBdXRlbnRpc2VyaW5ncyBmb3JicnVrZXJlbiB0aWxsYXRlciBpa2tlIGVuZHJpbmcgYXYgYnJ1a2VybmF2bmV0IGZvciBkZW5uZSBrb250b2VuJzsKJGxhbmdbJ21zZ19wYXNzd29yZF9yZWFkb25seSddID0gJ0F1dGVudGlzZXJpbmdzIGZvcmJydWtlcmVuIHRpbGxhdGVyIGlra2UgZW5kcmluZyBhdiBwYXNzb3JkZXQgZm9yIGRlbm5lIGtvbnRvZW4nOwokbGFuZ1sncHJvbXB0X25vcm1hbGxvZ2luJ10gPSAnRGlyZWt0ZSBpbm5sb2dnaW5nJzsKJGxhbmdbJ21vdmVfdXAnXSA9ICdmbHl0dCBvcHAnOwokbGFuZ1snbW92ZV9kb3duJ10gPSAnZmx5dHQgbmVkJzsKJGxhbmdbJ3RpdGxlX3Byb3Btb2R1bGUnXSA9ICdEZW5uZSBlZ2Vuc2thcGVuIGVyIG9wcHJldHRldCBhdiBlbiBtb2R1bCwgb2cga2FuIGlra2UgcmVkaWdlcmVzJzsKJGxhbmdbJ25vdF9hdmFpbGFibGUnXSA9ICdJa2tlIHRpbGdqZW5nZWxpZyc7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnU29tIHN0YW5kYXJkLCBiJm9zbGFzaDtyIGRldHRlIGZlbHRldCB2JmFlbGlnO3JlIGF2a3J5c3NldCc7CiRsYW5nWydvcGVyYXRpb25fY29tcGxldGVkJ10gPSAnSGFuZGxpbmcgZnVsbGYmb3NsYXNoO3J0JzsKJGxhbmdbJ21lbWJlcnMnXSA9ICdNZWRsZW1tZXInOwokbGFuZ1sndmlld19maWx0ZXInXSA9ICdWaXMgZmlsdGVyJzsKJGxhbmdbJ2RhdGEnXSA9ICdEYXRhICc7CiRsYW5nWydhcHBsaWVkJ10gPSAnQnJ1a3QnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTaWRlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ1RpbGxhdCAmYXJpbmc7IGVuZHJlIGJydWtlcm5hdm4nOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ09tIGFrdGl2ZXJ0LCBzJmFyaW5nOyB2aWwgYnJ1a2VyZSB0aWxsYXRlcyAmYXJpbmc7IGVuZHJlIHNpdHQgYnJ1a2VybmF2biBvZyBhbmRyZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3RlbXBsYXRlX3NhdmVkJ10gPSAnTWFsIGxhZ3JldCc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnTWFsIHRpbGJha2VzdGlsdCB0aWwgc3RhbmRhcmQnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnSW5uc3RpbGxpbmdlcic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTWFsZXInOwokbGFuZ1snZW5hYmxlX2NhcHRjaGEnXSA9ICdBa3RpdmVyIGNhcHRjaGEgcCZhcmluZzsgaW5ubG9nZ2luZ3NramVtYWV0JzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdIdmlzIGJydWtlcmVuIGlra2UgZXIgbG9nZ2V0IGlubiwgb2cgbW9kdWxlbnMgcHJlZmVyYW5zZXIgZXIgc2F0dCB0aWwgJmFyaW5nOyB2aXNlIGlubmxvZ2dpbmdza2plbWEsIHN0eXJlciBkZXR0ZSBhbHRlcm5hdGl2ZXQgb20gZW4gY2FwdGNoYSB2aXNlcyBwJmFyaW5nOyBpbm5sb2dnaW5nc2tqZW1hZXQuICAgICBIdmlzIGNhcHRjaGEgZXIgdGlsZ2plbmdlbGlnJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ0R1IGVyIGlra2UgYXV0b3Jpc2VydCB0aWwgJmFyaW5nOyBzZSBkZXR0ZSBpbm5ob2xkZXQnOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdBbmdpIGVuIGxpc3RlIG92ZXIgRkVVLWdydXBwZXIgc29tIGthbiBoYSB0aWxnYW5nIHRpbCBkZW5uZSBzaWRlbi4gVmVkICZhcmluZzsgaWtrZSB2ZWxnZSBub2VuIGdydXBwZXIgcyZhcmluZzsgdmlsIGVuaHZlciBicnVrZXIgc29tIGVyIGxvZ2dldCBpbm4gbWVkIEZFVSBmJmFyaW5nOyB0aWxsYXRlbHNlIHRpbCAmYXJpbmc7IHNlIHNpZGVuJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnSW5uc3RpbGxpbmdlciBmb3IgQmVza3l0dGVkZSBzaWRlcic7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdUaWxsYXR0ZSBncnVwcGVyJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnVmVsZyBncnVwcGVyIHNvbSBoYXIgKHNvbSBzdGFuZGFyZCkgbG92IHRpbCAmYXJpbmc7IHZpc2UgYmVza3l0dGVkZSBzaWRlci4gRW4gcmVkYWt0Jm9zbGFzaDtyIG1lZCAmcXVvdDtCZWhhbmRsZSBhbHQgSW5uaG9sZCZxdW90Oy10aWxsYXRlbHNlIGthbiBvdmVyc3R5cmUgZGV0dGUgZm9yIGh2ZXIgc2lkZSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdIYW5kbGluZyBmb3IgdXRpbHN0cmVra2VsaWcgdGlsZ2FuZyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FuZ2kgYXRmZXJkIGZvciBwZXJzb25lciBzb20gJmFyaW5nO3BuZXIgZGVubmUgc2lkZW4gdXRlbiB0aWxzdHJla2tlbGlnIHRpbGxhdGVsc2UuIER1IGthbiBlbnRlbiBvbWRpcmlnZXJlIHRpbCBlbiBiZXN0ZW10IHNpZGUsIGVsbGVyIHZpc2UgaW5ubG9nZ2luZ3NramVtYWV0JzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdWaXMgaW5ubG9nZ2luZ3NramVtYSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ09tZGlyaWdlciB0aWwgZW4gc2lkZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnT21kaXJpZ2VyIHRpbCc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdBbmdpIHNpZGVuICZhcmluZzsgb21kaXJpZ2VyZSB0aWwuIEh2aXMgZHUgdmVsZ2VyIEluZ2VuLCBvZyBoYW5kbGluZ2VuIGVyIHNhdHQgdGlsICZxdW90O29tZGlyaWdlcmUgdGlsIGVuIHNpZGUmcXVvdDsgcyZhcmluZzsgdmlsIGJydWtlcmVuIGJsaSBwcmVzZW50ZXJ0IG1lZCBlbiBtZWxkaW5nIHNvbSBpbmRpa2VyZXIgYXQgZGUgaWtrZSBoYXIgdGlsZ2FuZyB0aWwgc2lkZW4nOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdUaWxsYXRlbHNlcic7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdCZXNreXR0ZXQgaW5uaG9sZCc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnVmVsZyBla3N0cmEgZWdlbnNrYXBlciBzb20gc2thbCB2aXNlcyc7CiRsYW5nWyd2aWV3J10gPSAnVmlzJzsKJGxhbmdbJ2luZm9faWdub3JlX3VzZXJpZCddID0gJ09tIHZhbGd0IHMmYXJpbmc7IHZpbCBpbXBvcnRydXRpbmVuIGZvcnMmb3NsYXNoO2tlICZhcmluZzsgbGVnZ2UgdGlsIGJydWtlcmUgdWF2aGVuZ2lnIGF2IGJydWtlcmlkIGtvbG9ubmVuLiBIdmlzIGVuIGJydWtlciBla3Npc3RlcmVyIGFsbGVyZWRlIG1lZCBuYXZuZXQgc29tIGVyIGFuZ2l0dCBpIGltcG9ydGZpbGVuLCB2aWwgZW4gZmVpbG1lbGRpbmcgYmxpIGdlbmVyZXJ0JzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmVyIFVzZXJJRCBrb2xvbm5lbiB2ZWQgaW1wb3J0JzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0Vrc3BvcnRlciBwYXNzb3JkIGhhc2ggdGlsIGZpbGVuJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnUGFzc29yZGV0IGhhc2ggZXIgYmFyZSBueXR0aWcgaHZpcyBwYXNzb3JkIHNhbHQgcCZhcmluZzsgaW1wb3J0LXZlcnRlbiBlciBpZGVudGlzayBtZWQgZWtzcG9ydC12ZXJ0ZW4nOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ1Bhc3NvcmQgc2FsdCBrYW4gaWtrZSBlbmRyZXMnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3NvcmQgc2FsdCc7CiRsYW5nWydpbmZvX3B3c2FsdCddID0gJ0Zyb250RW5kVXNlcnMgc2FsdGVyIGFsbGUgcGFzc29yZCBtZWQgZGVubmUgbiZvc2xhc2g7a2tlbGVuIHNvbSBlciBvcHByZXR0ZXQgdmVkIGluc3RhbGxhc2pvbi4gTiZhcmluZztyIGJydWtlcm5lIGhhciBibGl0dCBsYWd0IHRpbCBkYXRhYmFzZW4gcyZhcmluZzsga2FuIHNhbHQgaWtrZSBlbmRyZXMuIFNhbHRldCBrYW4gdiZhZWxpZztyZSB0b210IGZvciBlbGRyZSBpbnN0YWxsYXNqb25lci4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdBdmFuc2VydGUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnQW5naSBhbnRhbGwgc2VrdW5kZXIgZiZvc2xhc2g7ciBlbiBpbmFrdGl2IGJydWtlciBhdXRvbWF0aXNrIGJsaXIgbG9nZ2V0IHV0IGF2IG5ldHRzdGVkZXQnOwokbGFuZ1sncHJvbXB0X2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnQnJ1a2VyIHV0bCZvc2xhc2g7cHMgaW50ZXJ2YWxsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdBbmdpIGVuIHZlcmRpIChpIHNla3VuZGVyKSBzb20gdmlzZXIgaHZvciBvZnRlIHN5c3RlbWV0IHNrYWwgdHZpbmdlIGJydWtlcmUgaHZvciBzZXNqb25lbiBoYXIgdXRsJm9zbGFzaDtwdCAmYXJpbmc7IGJsaSBsb2dnZXQgdXQuIERldHRlIGVyIGVuIG9wdGltYWxpc2VyaW5nIGZvciAmYXJpbmc7IGxhZ3JlIGRhdGFiYXNlc3Amb3NsYXNoO3JyaW5nZXIuIERlcnNvbSBzYXR0IHRvbXQgZWxsZXIgc2F0dCB0aWwgMCAtIHV0bCZvc2xhc2g7cCB2aWwgYmxpIHV0ZiZvc2xhc2g7cnQgcCZhcmluZzsgaHZlciBmb3Jlc3Amb3NsYXNoO3JzZWwuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdEaW5lIGlubnN0aWxsaW5nZXIgYmxlIHZlbGx5a2tldCBsYWdyZXQnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnVHZpbmcgYnJ1a2VyZSB0aWwgJmFyaW5nOyBsb2dnZSB1dCBwJmFyaW5nOyBnaXR0ZSBpbnRlcnZhbGxlcic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdUaWRlciBmb3IgdHZ1bmdldCB1dGxvZ2dpbmcnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ0FuZ2kgZW4ga29tbWFzZXBhcmVydCBsaXN0ZSBtZWQgdGlkZXIgc29tIEhIOk1NLEhIOk1NIGh2b3IgYnJ1a2VybmUgdmlsIGJsaSB0dmFuZ3MgdXRsb2dnZXQuIE1lcmssIGJydWtlciBkZXR0ZSBwc3VlZG9jcm9uIG1la2FuaXNtZW4gcyZhcmluZzsgZHUgbSZhcmluZzsgdiZhZWxpZztyZSBzaWtrZXIgcCZhcmluZzsgYXQgZGUgdGlkZW5lIG9wcGdpdHQgaGVyIHZpbCBmYWxsZSByaW1lbGlnIHNhbW1lbiBtZWQgJnF1b3Q7cHNldWRvY3JvbiBncmFudWxhcml0ZXQmcXVvdDsgb2cgYXQgbm9rIGZvcmVzcCZvc2xhc2g7cnNsZXIgdmlsIG9wcHN0JmFyaW5nOyB0aWwgZGl0dCBuZXR0c3RlZCBmb3IgJmFyaW5nOyBzaWtyZSBhdCBwc2V1ZG9jcm9uIHV0ZiZvc2xhc2g7cmVzLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0Vrc2tsdWRlcmUgYnJ1a2VyZSBzb20gaGFyIHYmYWVsaWc7cnQgYWt0aXZlIGkgPGVtPihtaW51dHRlcik8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdIdmlzIHNwZXNpZmlzZXJ0LCB2aWwgYWxsZSBicnVrZXJlIHNvbSBoYXIgdiZhZWxpZztydCBha3RpdmUgaSBkZXR0ZSBhbnRhbGxldCBzZWt1bmRlciBpa2tlIGJsaSB0dmFuZ3MgdXRsb2dnZXQnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGUnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIHNsZXR0ZSBicnVrZXJlbiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ0RlbiBvcHBsYXN0ZWRlIGZpbGVuIHBhc3NlciBpa2tlIHRpbCBsaXN0ZW4gbWVkIHRpbGxhdHRlIGZpbHR5cGVyJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdBbGxlIGRhdGEgYXNzb3NpZXJ0IG1lZCBGcm9udEVuZFVzZXJzIG1vZHVsZW4gaGFyIGJsaXR0IHNsZXR0ZXQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnT20gc2wmYXJpbmc7dHQgcCZhcmluZzssIHMmYXJpbmc7IHZpbCBkZW5uZSBtb2R1bGVuIGx5dHRlIHAmYXJpbmc7IGhhbmRsaW5nZXIgZnJhIEVjb21tZXJjZSBzdWl0ZW4uIERlIGYmb3NsYXNoO2xnZW5kZSBpbm5zdGlsbGluZ2VuZSBoYXIga3VuIGVmZmVrdCBvbSBkZW5uZSBpbm5zdGlsbGluZ2VuIGVyIHAmYXJpbmc7c2wmYXJpbmc7dHQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTHl0dCBwJmFyaW5nOyBPcmRlciBoYW5kbGluZ2VyJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0RlIGYmb3NsYXNoO2xnZW5kZSBpbm5zdGlsbGluZ2VuZSBnamVsZGVyIGJhcmUgaHZpcyBkdSBicnVrZXIgU2VsdnJlZ2lzdHJlcmluZyhTZWxmIFJlZ2lzdHJhdGlvbikgb2cgdGlsbGF0ZXIgQmV0YWx0IHAmYXJpbmc7bWVsZGluZyc7CiRsYW5nWydub25lJ10gPSAnSW5nZW4nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdTbGV0dCBicnVrZXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdUaWRzdXRsJm9zbGFzaDtwIGJydWtlcic7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnSGFuZGxpbmcgJmFyaW5nOyB1dGYmb3NsYXNoO3JlIG4mYXJpbmc7ciBlbiBhYm9ubmVtZW50YmVzdGlsbGluZyBlciBrYW5zZWxsZXJ0JzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnSGFuZGxpbmcgJmFyaW5nOyB1dGYmb3NsYXNoO3JlIG4mYXJpbmc7ciBlbiBhYm9ubmVtZW50b3JkcmUgZXIgc2xldHRldCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1Npa2tlcnQgZmVsdCBtYXJrJm9zbGFzaDtyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTaWtrZXJ0IGZlbHQgZmFyZ2UnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdMYWdyZSBkaXNzZSBkYXRhIGtyeXB0ZXJ0IGkgZGF0YWJhc2VuJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ0RlbiB2YWxndGUgb3Bzam9uZW4gZXIgaWtrZSBzdCZvc2xhc2g7dHRldCBtZWQgZGluIG4mYXJpbmc7diZhZWxpZztyZW5kZSBrb25maWd1cmFzam9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ0JydWtlciBhdXRvbWF0aXNrIG9wcHJldHRldCc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdPbSBlbiBicnVrZXIgZXIgaWRlbnRpZmlzZXJ0IGF2IGVuIGVrc3Rlcm4gaWRlbnRpZmlrYXNqb25zbW9kdWwsIG1lbiBpa2tlIGVyIGtqZW50IGkgRnJvbnRFbmRVc2VycyBtb2R1bGVuIC0gc2thbCBkYSBlbiBGRVUta29udG8gb3BwcmV0dGVzIGF1dG9tYXRpc2s/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnT3BwcmV0dCBhdXRvbWF0aXNrIHVramVudGUgYnJ1a2VyZSc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnVmlzbmluZ3Npbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdEZW4gZiZvc2xhc2g7bGdlbmRlIGlubnN0aWxsaW5nZW4gZXIga3VuIGd5bGRpZyBvbSAmcXVvdDtJbm5lYnlnZCBpZGVudGlmaWthc2pvbiZxdW90OyBlciBiZW55dHRldC4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJyZBcmluZzsgdmVsZ2UgTmVpIHZpIHNsJmFyaW5nOyBhdiBtdWxpZ2hldGVuIGZvciBlbiBicnVrZXIgdGlsICZhcmluZzsgYmUgb20gZ2xlbXQgaW5ubG9nZ2luZ3NpbmZvcm1hc2pvbiwgdWF2aGVuZ2lnIGF2IGFuZHJlIGlubnN0aWxsaW5nZXInOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJyZBcmluZzsgdmVsZ2UgTmVpIHZpbCBzbCZhcmluZzsgYXYgbXVsaWdoZXRlbiBmb3IgZW4gYnJ1a2VyIHRpbCAmYXJpbmc7IGJlIG9tIHRpbGJha2VzdGlsbGluZyBhdiBwYXNzb3JkLCB1YXZoZW5naWcgYXYgYW5kcmUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdUaWxsYXQgYnJ1a2VyZSAmYXJpbmc7IGJlIG9tIHNpdHQgYnJ1a2VybmF2bic7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdUaWxsYXQgYnJ1a2VyZSAmYXJpbmc7IGJlIG9tIHBhc3NvcmRlbmRyaW5nJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdJZGVudGlmaWthc2pvbnNpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnSW5uZWJ5Z2QgaWRlbnRpZmlrYXNqb24nOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnRkVVIFN0YW5kYXJkIGlkZW50aWZpa2Fzam9uJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnSWRlbnRpZmlrYXNqb25zbW9kdWwvbWV0b2RlJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdGcm9udGVuZFVzZXJzIG1vZHVsZW4gc3Qmb3NsYXNoO3R0ZXIgc3Qmb3NsYXNoO3R0ZXIgYnJ1ayBhbHRlcm5hdGl2ZSBtZXRvZGVyIGZvciBpZGVudGlmaWthc2pvbiwgbWVkIHZhcmllcmVuZGUgZnVua3Nqb25lci4gTm9lIGZ1bmtzam9uYWxpdGV0IHZpbCBpa2tlIGZ1bmdlcmUgZWxsZXIgdmlsIHYmYWVsaWc7cmUgZGVha3RpdmVydCBuJmFyaW5nO3IgaWtrZSBkZW4gaW5uZWJ5Z2RlIGlkZW50aWZpa2Fzam9uc21ldG9kZSBlciBpIGJydWsnOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdWZXJkaWVuIG9wcGdpdHQgZm9yICVzIGVyIGFsbGVyZWRlIGkgYnJ1ayBhdiBlbiBhbm5lbiBicnVrZXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5payc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdWZXJkaWVuIHNvbSBlciBvcHBnaXR0IGZvciAlcyAoJXMpIGVyIGlra2UgdW5payc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnVHZpbmcgdmVyZGllciBmb3IgZGVubmUgZWdlbnNrYXBlbiB0aWwgJmFyaW5nOyB1bmlrIHAmYXJpbmc7IHR2ZXJzIGF2IGFsbGUga29udG9lcic7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdPbSBiZW55dHRldCBtZWQgaW5ubG9nZ2luZy0gb2cgdXRsb2dnaW5nLXNramVtYWVuZSB2aWwgZGVubmUgcGFyYW1ldGVyLCBvbSBkZW4gZXIgc3Blc2lmaXNlcnQsIGluZGlrZXJlIGF0IGJydWtlcmVuIHNrYWwgc2VuZGVzIHRpbGJha2UgdGlsIHNpZGVuIChldHRlciB1cmwpIHNvbSBicnVrZXJlbiB2YXIgcCZhcmluZzsgZiZvc2xhc2g7ciBoYW5kbGluZ2VuIGhlbmR0ZS4gRGVubmUgcGFyYW1ldGVyIHZpbCBvdmVyc3R5cmUgb21kaXJpZ2VyaW5nIHByZWZlcmFuc2VuZSwgb2cgcmV0dXJudG8gcGFyYW1ldGVyZW4uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdCZW55dHRldCBtZWQgZW4gYXYgc2tqZW1hZW5lLCBkZW5uZSBwYXJhbWV0ZXIgc3Blc2lmaXNlcmVyIGF0IHNramVtYWVuZSBpa2tlIHNrYWwgcGxhc3NlcmVzIGlubGluZS4gSXN0ZWRldCBza2FsIGRlIHJlc3VsdGVyZW5kZSB1dGRhdGFlbmUgZXR0ZXIgaW5uc2VuZGluZyBhdiBza2plbWFldCBlcnN0YXR0ZSBzdGFuZGFyZCBpbm5ob2xkc2Jsb2trZW4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0lubmxvZ2dpbmdzIHNlc3Npb25zdGlkc3V0bCZvc2xhc2g7cHNhZHZhcnNlbCc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ0RpbiBpbm5sb2dnaW5nc2Vzc2lvbiBlciBpIGZlcmQgbWVkICZhcmluZzsgdXRsJm9zbGFzaDtwZSwgdmVubmxpZ3N0IGtsaWtrICBPSyAgZm9yICZhcmluZzsgYmVrcmVmdGUgZGluIHRpbHN0ZWRldiZhZWxpZztyZWxzZSBwJmFyaW5nOyBkZXR0ZSBuZXR0c3RlZGV0Lic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1RpbGJha2VzdGlsbCBzZXNzaW9uc21hbGVuJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ0RldHRlIGVyIGZlbHRuYXZuZXQsIHNvbSBza2FsIGJlbnl0dGVzIGZvciBhZHJlc3NlcmluZyBpIHNtYXJ0eS4gRGV0IG0mYXJpbmc7IGJlc3QmYXJpbmc7IGF2IGt1biBhbGZhbnVtbWVyaXNrZSBib2tzdGF2ZXIgb2cgdW5kZXJzdHJla2VyLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXMmb3NsYXNoO2tlcmUnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdWZWxnIGVuIGVsbGVyIGZsZXJlIEZFVS1ncnVwcGVyIHNvbSBlciB0aWxsYXR0ICZhcmluZzsgc2UgZGVubmUgc2lkZW4nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0VuIGdydXBwZSBtJmFyaW5nOyB2ZWxnZXMnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVmVsZyBlbic7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnU3RhcnQmYXJpbmc7cic7CiRsYW5nWydlbmRfeWVhciddID0gJ1NsdXR0JmFyaW5nO3InOwokbGFuZ1snZGF0ZSddID0gJ0RhdG8nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnTWluaWF0eXJiaWxkZXN0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ1ZlZCBlbmRyaW5nIGF2IEJydWtlcmdydXBwZShVc2VyIEdyb3VwKSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdGb3IgbWFuZ2UgYnJ1a2VyZSBibGUgdmFsZ3QgZm9yIG1hc3NlLWhhbmRsaW5nZXIuLi4uIFZlbm5saWdzdCByZWR1c2VyIG5lZCB0aWwgMjUwIGVsbGVyIG1pbmRyZSc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgc2xldHRlIGRlIHZhbGd0ZSBicnVrZXJuZT8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnU2xldHRpbmcgdmFsZ3QnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnR2VuZXJlciBldCB0aWxmZWxkaWcgYnJ1a2VuYXZuIHZlZCBvcHByZXR0ZWxzZSBhdiBueWUgYnJ1a2VyZSc7CiRsYW5nWydtb250aHMnXSA9ICdtJmFyaW5nO25lZGVyJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdTdGFuZGFyZCBicnVrZXIgdXRsJm9zbGFzaDtwc3RpZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdWYXJzbGluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnRWdlbnNrYXAgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ09tZGlyaWdlcmluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBvZyBjb29raWUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZlbHQgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdMb3N0dXNlcm5hbWUoR2xlbXQgQnJ1a2VybmF2bikgZmxhZ2dldCBrYW4ga3VuIGJlbnl0dGVzIHAmYXJpbmc7a3JldmRlIGZlbHRlcic7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdUaWxsYXQgYnJ1ayBhdiB3eXNpd3lnIHAmYXJpbmc7IGRldHRlIHRla3N0b21yJmFyaW5nO2RldCc7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdSZWRpZ2VyIGJydWtlcic7CiRsYW5nWydub2lubGluZSddID0gJ0lra2UgYnJ1ayBza2plbWEgc29tIGlubGluZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0tsaWtrIGhlciBvbSBkdSBpa2tlIGthbiBodXNrZSBkaW5lIGlubmxvZ2dpbmdzZGV0YWxqZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWtrIGhlciBvbSBkdSBpa2tlIGthbiBodXNrZSBkaXR0IHBhc3NvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdLbGlrayBoZXIgZm9yICZhcmluZzsgbG9nZ2UgdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0tsaWtrIGhlciBmb3IgJmFyaW5nOyBlbmRyZSBkaXR0IHBhc3NvcmQgZWxsZXIgYW5uZW4gaW5mb3JtYXNqb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaXMgYnJ1a2VyIG1hbCc7CiRsYW5nWydldmVudCddID0gJ0hlbmRlbHNlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgSGVuZGVsc2UgdmFyc2VsJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ1ZhcnNlbCBlLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdWYXJzbGluZyBFLXBvc3RtYWwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnVmFyc2xpbmcgRS1wb3N0ZW1uZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0UtcG9zdHZhcnNsaW5nJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdWZWQgaW5ubG9nZ2luZyc7CiRsYW5nWydPbkxvZ291dCddID0gJ1ZlZCB1dGxvZ2dpbmcnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnVmVkIHV0bCZvc2xhc2g7cCBhdiBzZXNzaW9uJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1ZlZCBCcnVrZXIgb3BwcmV0dGV0JzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ1ZlZCBCcnVrZXIgc2xldHRldCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdWZWQgZW5kcmluZyBhdiBicnVrZXJpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdWZWQgb3BwcmV0dGVsc2UgYXYgYnJ1a2VyZ3J1cHBlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdWZWQgc2xldHRpbmcgYXYgYnJ1a2VyZ3J1cHBlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnRnVua3Nqb25lbiBmb3IgbWlzdGV0IGlubmxvZ2dpbmdzZGV0YWxqZXIgZXIgZnVsbGYmb3NsYXNoO3J0LiBWaSBoYXIgZnVubmV0IGV0IHVuaWt0IGJydWtlcm5hdm4gc29tIHBhc3NlciB0aWwgZGUgZGV0YWxqZW5lIGR1IGhhciBvcHBnaXR0Lic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnRGl0dCBicnVrZXJuYXZuIGVyJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZpIGFuYmVmYWxlciBhdCBkdSB0YXIgdmFyZSBwJmFyaW5nOyBkZW5uZSBpbmZvcm1hc2pvbmVuIHAmYXJpbmc7IGVuIHNpa2tlciwgbWVuIHRpbGdqZW5nZWxpZyBwbGFzcy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyAmYXJpbmc7IGhvcHBlIHRpbCBldHRlciBlbmRyaW5nIGF2IGlubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzICZhcmluZzsgaG9wcGUgdGlsIGV0dGVyIGtvZGUgYmVrcmVmdGVsc2UgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0dsZW10IEJydWtlcm5hdm4gZGV0YWxqbWFsJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnR2xlbXQgQnJ1a2VybmF2biBiZWtyZWZ0ZWxzZXNtYWwnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGZWlsOiBNZXJlIGVubiBlbiBicnVrZXJrb250byBwYXNzZXIgbWVkIGRlIHNwZXNpZmlzZXJ0ZSBlZ2Vuc2thcGVyJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZlaWw6IEt1bm5lIGlra2UgZmlubmUgZW4gYnJ1a2VyIHNvbSBwYXNzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0ZlaWw6IEt1bm5lIGlra2UgZmlubmUgZW4gZ3J1cHBlIG1lZCBkZXQgbmF2bmV0JzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2tyaXZlYmVza3l0dGV0JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdCcnVrZXIgTWFuaXB1bGF0b3IgS2xhc3NlJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dldCB1dCBhdiBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdWaXMga3VuIGRlIHNvbSBlciBpbm5sb2dnZXQnOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0xvZ2cgdXQgZGVubmUgYnJ1a2VyZW4nOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnQnJ1a2VyIGVnZW5za2FwZXInOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdCcnVrZXIgaGlzdG9yaWUnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9ydGVyJzsKJGxhbmdbJ2NsZWFyJ10gPSAnVCZvc2xhc2g7bSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFa3Nwb3J0ZXIgQnJ1a2VyaGlzdG9yaWUgdGlsIEFTQ0lJIGZpbCBzb20gZXIgbWluc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdUJm9zbGFzaDttIEJydWtlcmhpc3RvcmllIG9wcGYmb3NsYXNoO3JpbmdlciBzb20gZXIgbWluc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnR2xlbXQgZGluZSBpbm5sb2dnaW5nc2RldGFsamVyPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0ZXIgZ3J1cHBlZGVmaW5pc2pvbiAob2cgZWdlbnNrYXBlcikgdGlsIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnQmVoYW5kbGUgQnJ1a2VyaGlzdG9yaWUnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWknOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnYXYnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogSW5nZW4gZ3JlbnNlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ0VuIHRpbWUgZ2FtbGUnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2VrcyB0aW1lciBnYW1sZSc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUb2x2IHRpbWVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRW4gZGFnIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0VuIHVrZSBnYW1sZSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVG8gdWtlciBnYW1sZSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnRW4gbSZhcmluZztuZWQgZ2FtbGUnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZSBtJmFyaW5nO25lZGVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VrcyBtJmFyaW5nO25lZGVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0V0dCAmYXJpbmc7ciBnYW1sZSc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwcGVyaW5nIG9nIFNvcnRlcmluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnT3BwZiZvc2xhc2g7cmluZ2VyIHNvbSBwYXNzZXIga3JpdGVyaWV0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnU3lua2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnU3RpZ2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnU3lua2VuZGUgRGF0byc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdTdGlnZW5kZSBEYXRvJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1N5bmtlbmRlIEhlbmRlbHNlc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdTdGlnZW5kZSBIZW5kZWxzZXN0eXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1N5bmtlbmRlIElQLWFkcmVzc2UnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdTdGlnZW5kZSBJUC1hZHJlc3NlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdJa2tlIG5vZSBoaXN0b3Jpc2sgZnVubmV0JzsKJGxhbmdbJ3Jlc2V0J10gPSAnVGlsYmFrZXN0aWxsJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBwZXIgZXR0ZXIgSVAtYWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0hlbmRlbHNlc3R5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ZpcyBrdW4gaGVuZGVsc2VyIHNvbSBlciBtaW5kcmUgZW5uOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2lkZWdyZW5zZSc7CiRsYW5nWydmb3InXSA9ICdmb3IgJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnQnJ1a2VyaGlzdG9yaWUgcmFwcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVWtqZW50JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1hZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdIZW5kZWxzZXN0eXBlJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0byc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGlsYmFrZSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IG9wcGdhdmVuIGVyIGZlcmRpZyc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5qZXIgcHJvc2Vzc2VydCc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRGV0IG9wcHN0b2QgZmVpbCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUG9zdGVyIGxhZ3QgdGlsJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGVnZW5za2FwZXIgZm9yIGdydXBwZSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0Zpa2sgaW5nZW4gcmVzcG9ucyBmcmEgU01UUCBzZXJ2ZXJlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdTcGVzaWZpc2VydGUgZmlsZXIgKCVzKSBibGUgaWtrZSBmdW5uZXQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1VneWxkaWcgdmVyZGkgZm9yIG5lZHRyZWtrIGVsbGVyIGZsZXJ2YWxnc2ZlbHQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGZWx0ICVzIG92ZXJza3JpZGVyIG1ha3NpbXVtIGxlbmdkZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBGZWlsIChsaW5qZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdLdW5uZSBpa2tlIGYmYXJpbmc7IHRhayBpIGVnZW5za2FwIGRlZmluaXNqb25lbmUgKGludGVybiBmZWlsKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIG1lZCAmYXJpbmc7IHNldHRlIGJydWtlcmluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0t1bm5lIGlra2UgZmlubmUgZW4ga29sb25uZSBzb20gc2Ftc3ZhcnRlIG1lZCBkZXQgcCZhcmluZztrcmV2ZGUgZmVsdGV0ICVlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0t1bm5lIGlra2UgZmlubmUgZWdlbnNrYXBlciBmb3IgZGVuIHNwZXNpZmlzZXJ0ZSBncnVwcGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdGaWxlbiBvcHBnaXR0IGZvciBpbXBvcnQgZXIgaWtrZSBpIGtvcnJla3QgZm9ybWF0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdLdW5uZSBpa2tlICZhcmluZztwbmUgZmlsZW4nOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBUaGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPjxici8+DQo8aDY+PHN0cm9uZz5Db2x1bW5hciBEYXRhPC9zdHJvbmc+PC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VyaWQ8L3N0cm9uZz4gRmllbGQgLSBUaGUgdXNlcmlkIGZvciB0aGUgdXNlci4gQSB2YWx1ZSBpbiB0aGlzIGZpZWxkIHdpbGwgaW5kaWNhdGUgeW91IGFyZSBkb2luZyBhbiB1cGRhdGUuICBUaGVyZSBpcyBhIGNoZWNrYm94IGR1cmluZyB0aGUgaW1wb3J0IHByb2Nlc3MgdG8gc3BlY2lmeSB0aGF0IHR1ZSB1c2VyaWQgZmllbGQgY2FuIGJlIGlnbm9yZWQgZm9yIHRoZSBwdXJwb3NlcyBvZiBtaWdyYXRpbmcgdXNlcnMgZnJvbSBvbmUgc2VydmVyIHRvIGFub3RoZXIuPC9saT4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY2ggYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHBhc3N3b3JkIHRvIHNldCBmb3IgdGhlIHVzZXIuICBPcHRpb25hbGx5LCBhIDxzdHJvbmc+cGFzc3dvcmRoYXNoPC9zdHJvbmc+IGZpZWxkIG1heSBiZSBpbmNsdWRlZCB0aGF0IHNwZWNpZmllcyB0aGVlIDxlbT5zYWx0ZWQ8L2VtPiBNRDUgaGFzaCBvZiB0aGUgdXNlcnMgcGFzc3dvcmQuICBJZiB0aGUgcGFzc3dvcmQgZmllbGQgaXMgZW1wdHkgd2hlbiBjcmVhdGluZyBuZXcgdXNlcnMgdGhlIHBhc3N3b3JkICZhbXA7cXVvdDtjaGFuZ2VtZSZhbXA7cXVvdDsgaXMgaGFyZGNvZGVkLjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+Y3JlYXRlZGF0ZTwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSB0b2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5ncm91cG5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZ3JvdXBzIHRoYXQgeW91IHdhbnQgdG8gaGF2ZSB0aGUgdXNlciBiZSBhIG1lbWJlciBvZi4gSWYgYWxsIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IGZpbGxlZCBpbiB0aGUgaW5zZXJ0L3VwZGF0ZSBvZiB0aGUgcmVjb3JkIHdpbGwgZmFpbC4gU2VlIE11bHRpc2VsZWN0IEZpZWxkcyBiZWxvdyBmb3Igc3ludGF4LjwvbGk+DQo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+RGF0ZSBGaWVsZHMNCiAgICA8cD5NdXN0IGJlIGluIHRoZSBmb3JtYXQgb2YgTU0tREQtWVlZWTwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+PC9saT4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxwPlRoZSBFeHBvcnQgZGF0YSBpcyBpbiB0aGUgc2FtZSBmb3JtYXQgYXMgbmVlZGVkIGZvciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRlciBCcnVrZXJlIHRpbCBkZW5uZSBncnVwcGVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lubmRhdGEgQ1NWIGZpbCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lubmRhdGEgWE1MIGZpbCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFa3Nwb3J0ZXIgQnJ1a2VyZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRlciBCcnVrZXJlJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1Qmb3NsYXNoO20nOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdCaWxkZSBtJmFyaW5nO2xzdGknOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFdCBwcm9ibGVtIGhhciBvcHBzdCZhcmluZzt0dCBtZWQgZW4gbWFuZ2xlbmRlIChtZW4gbiZvc2xhc2g7ZHZlbmRpZykgb3BwbGFzdGluZyc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnS3VubmUgaWtrZSBiZWhhbmRsZSBkZW4gdGlsYnVkdGUgWE1MIGZpbGVuJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdLYW4gaWtrZSBzbGV0dGUgZW4gZ3J1cHBlIHNvbSBmb3J0c2F0dCBoYXIgYnJ1a2VyZSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRGVubmUgYnJ1a2VyZW4gZXIgYWxsZXJlZGUgaW5ubG9nZ2V0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGRldCBibGUgaWtrZSBza3JldmV0IHJpa3RpZyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnVGlsbGF0ZXIgYnJ1a2VyZSAmYXJpbmc7IGxvZ2dlIGlubiBtZXIgZW4gZW4gZ2FuZyc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnQmlsZGUgZmlsZW5kZWxzZXIgc29tIGJydWtlcmUgZiZhcmluZztyIGxvdiAmYXJpbmc7IGxhc3RlIG9wcCc7CiRsYW5nWydldmVudF9oZWxwX09uUmVmcmVzaFVzZXInXSA9ICc8aDM+T25SZWZyZXNoVXNlcjwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZC48L3A+DQo8aDQ+UGFyYW1ldGVyczo8L2g0Pg0KPHVsPg0KICA8bGk+PGVtPmlkPC9lbT4gLSBUaGUgVXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkVuIGhlbmRlbHNlL2V2ZW50IGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXIgc2xldHRlczwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIEJydWtlcm5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXIgSURlbjwvbGk+DQo8bGk+PGVtPnByb3BzPC9lbT4gLSBFbiBoYXNoIGZ5bHQgbWVkIGVnZW5za2FwZW5lIHRpbCBicnVrZXJlbjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIG9wcHJldHRlczwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQnJ1a2VybmF2bmV0PC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEJydWtlciBJRGVuPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkVuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXIgZXIgb3BwZGF0ZXJ0IChlbnRlbiBhdiBicnVrZXJlbiBzZWx2IGVsbGVyIGF2IGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gQnJ1a2VybmF2bmV0PC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEJydWtlcklEJiMwMzk7ZW48L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gZ3J1cHBlIGVyIG9wcHJldHRldDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gR3J1cHBlbmF2bmV0PC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIEdydXBwZWJlc2tyaXZlbHNlbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBHcnVwcGUgSURlbjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkVuIGhlbmRlbHNlL2V2ZW50IGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBncnVwcGUgZXIgc2xldHRldDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gR3J1cHBlbmF2bmV0PC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEdydXBwZSBJRGVuPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGJydWtlciBsb2dnZXIgc2VnIGlubjwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIGlkJiMwMzk7ZW4gZm9yIGRlbiBpbm5sb2dnZWRlIGJydWtlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBOYXZuZXQgcCZhcmluZzsgYnJ1a2VyZW4gc29tIGVyIGxvZ2dldCBpbm48L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gV2Via2xpZW50ZW5zIElQIGFkcmVzc2UgPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkVuIGhlbmRlbHNlL2V2ZW50IGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXIgbG9nZ2VyIHV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gQnJ1a2VyIElEZW48L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkVuIGhlbmRlbHNlL2V2ZW50IGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXJzZXNzaW9uIHV0bCZvc2xhc2g7cGVyPC9wPg0KPGg0PlBhcmFtZXRlcmVoND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBicnVrZXJlbiBzb20gdXRsJm9zbGFzaDtwPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEJydWtlciBJRGVuIHRpbCBicnVrZXJlbiBzb20gdXRsJm9zbGFzaDtwPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnRW4gaGVuZGVsc2Ugc29tIGdlbmVyZXJlcyBuJmFyaW5nO3IgZW4gYnJ1a2VyIGxvZ2dlciBzZWcgaW5uIGkgc3lzdGVtZXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0VuIGhlbmRlbHNlIHNvbSBnZW5lcmVyZXMgbiZhcmluZztyIGVuIGJydWtlciBsb2dnZXIgc2VnIHV0IGF2IHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnRW4gaGVuZGVsc2Ugc29tIGdlbmVyZXJlcyBuJmFyaW5nO3IgZW4gYnJ1a2VyLXNlc3Npb24gaGFyIHV0bCZvc2xhc2g7cHQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIGVyIG9wcHJldHRldCc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdFbiBoZW5kZWxzZSBzb20gZ2VuZXJlcmVzIG4mYXJpbmc7ciBlbiBicnVrZXItc2Vzc2lvbiBlciBvcHBmcmlza2V0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGJydWtlcnMgaW5mbyBlciBvcHBkYXRlcnQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2Vya29udG8gZXIgc2xldHRldCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyZ3J1cHBlIGVyIG9wcHJldHRldCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyZ3J1cHBlIGVyIG9wcGRhdGVydCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyZ3J1cHBlIGVyIHNsZXR0ZXQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgZ3J1cHBlJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogRiZvc2xhc2g7bGdlbmRlIGZlbHQgZXIgZnVsbHN0ZW5kaWdlIFNtYXJ0eW1hbGVyLjxici8+U2FtbWVuIG1lZCBhbmRyZSB0aWRsaWdlcmUgZWtzaXN0ZXJlbmRlIHNtYXJ0eSB2YXJpYWJsZXIgb2cgcGx1Z2lucywgcyZhcmluZzsgZXIgKCR1c2VybmFtZSkgb2cgKCQgZ3J1cHBlKSB2YXJpYWJsZW5lIHRpbGdqZW5nZWxpZ2UuIDxlbT4gKCgkZ3JvdXApLXZhcmlhYmxlbiBrb2JsZXIgZGVuIGYmb3NsYXNoO3JzdGUgZ3J1cHBlbiB0aWwgZGVuIHNvbSBicnVrZXJlbiB0aWxoJm9zbGFzaDtyZXIuKTwvIGVtPi4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ1JlZGlnZXIgZGV0dGUgZmVsdGV0IGZvciAmYXJpbmc7IGVuZHJlIGJydWtlcmVucyBwYXNzb3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdSZWRpZ2VyIGRldHRlIGZlbHRldCBmb3IgJmFyaW5nOyBlbmRyZSBicnVrZXJlbnMgcGFzc29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdFbiBicnVrZXIgbWVkIHNhbW1lIGJydWtlcm5hdm4gZmlubmVzIGFsbGVyZWRlJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0luZ2VuIHJlc3VsdGF0ZXIgZnJhIGNzdiBla3Nwb3J0ZW4nOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ2RlbiBwJmFyaW5nOyBicnVrZXJuYXZuZmVsdGV0JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmdkZW4gcCZhcmluZzsgcGFzc29yZGZlbHRldCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01ha3MgbGVuZ2RlIHAmYXJpbmc7IHBhc3NvcmRldCBlciB1Z3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWFrcyBsZW5nZGUgcCZhcmluZzsgYnJ1a2VybmF2biBlciB1Z3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdVZ3lsZGlnIGUtcG9zdGFkcmVzc2UnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdWaSBrdW5uZSBpa2tlIGZpbm5lIGVuIGUtcG9zdGFkcmVzc2UgZm9yIGRlbm5lIGtvbnRvZW4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ0thbiBpa2tlIGxhZ3JlIGJydWtlcmluZm9ybWFzam9uZW4nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnS2FuIGlra2UgbGFncmUgZWdlbnNrYXBlbic7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnQnJ1a2VyIGxhZ3QgdGlsICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnQnJ1a2VyIHNsZXR0ZXQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnRWdlbnNrYXBlcic7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmVyZGkgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBZHZhcnNlbDogRGlzc2UgZmVsdGVuZSBwJmFyaW5nO3ZpcmtlciBzdCZvc2xhc2g7cnJlbHNlbiBwJmFyaW5nOyBpbm5kYXRhZmVsdGVuZSBpIHNramVtYWVyLiAmQXJpbmc7IG1pbnNrZSBkaXNzZSB2ZXJkaWVuZSBwJmFyaW5nOyBldCBla3Npc3RlcmVuZGUgbmV0dHN0ZWQgZXIgaWtrZSAmYXJpbmc7IGFuYmVmYWxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIGVuZHJlIGRlbm5lIG1vZHVsZW5zIGlubnN0aWxsaW5nZXI/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLXBvc3RhZHJlc3NlbiBlciBhbGxlcmVkZSBpIGJydWsnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnQnJ1ayBpbmZvcm1hc2pvbnNrYXBzbGVyKGNvb2tpZXMpIGZvciAmYXJpbmc7IGh1c2tlIGlubmxvZ2dpbmdzZGV0YWxqZXInOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOYXZuZXQgcCZhcmluZzsgaW5mb3JtYXNqb25za2Fwc2VsZW4oY29va2llKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1RpbGxhdCBpZGVudGlza2UgZS1wb3N0YWRyZXNzZXInOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1wb3N0YWRyZXNzZSBlciBicnVrZXJuYXZuJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0ZvcnMmb3NsYXNoO2sgJmFyaW5nOyBob2xkZSBpbm5sb2dnaW5nZW4gdmVkIGxpdmUgdmVkICZhcmluZzsgYmVueXR0ZSBlbiBpbmZvcm1hc2pvbnNrYXBzZWwgPGVtPmluZm9ybWFzam9uc2thcHNlbGVuIHZpbCBibGkgdGlsYmFrZXNhdHQgbiZhcmluZztyIGR1IGVyIGFrdGl2IHAmYXJpbmc7IG5ldHRzdGVkZXQpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHRpbGxhdCBmbGVyZSBicnVrZXJlIG1lZCBzYW1tZSBlLXBvc3RhZHJlc3NlKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGJydWtlcnMgZS1wb3N0YWRyZXNzZSBlciBkZXJlcyBicnVrZXJuYXZuIC0tIGlra2Ugc2V0dCBkZXR0ZSBzYW1tZW4gbWVkICZxdW90O1RpbGxhdCBpZGVudGlza2UgZS1wb3N0YWRyZXNzZXImcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1RpbGxhdCBmbGVyZSAmcXVvdDtnbGVtdCBwYXNzb3JkJnF1b3Q7IHAmYXJpbmc7bWlubmVsc2VyPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcodGlsbGF0IGF0IGVuIGJydWtlciBiZXIgb20gbnVsbHN0aWxsaW5nIGF2IHBhc3NvcmRldCwgc2VsdiBvbSBkZSBpa2tlIGhhciBiZW55dHRldCBkZXQgZm9ycmlnZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdCZW55dHQgRnJvbnQtZW5kIFVzZXIgc3Blc2lmaWtlIHRpbGxhdGVsc2VyPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsdCBlciwgRkVVc2VyIHRpbGxhdGVsc2VyIGRlIHNhbW1lIHNvbSB0aWxzdmFyZW5kZSBBZG1pbi1vbXImYXJpbmc7ZGUgdGlsbGF0ZWxzZXIgLSBMZWdnIHRpbCBicnVrZXIsIExlZ2cgdGlsIGdydXBwZSwgb3N2LiBPbSBkdSBoYWtlciBhdiBoZXIsIHZpbCBkZXQgdiZhZWxpZztyZSBhZHNraWx0ZS9lZ25lIHRpbGxhdGVsc2VyIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0tsYXJ0ZSBpa2tlICZhcmluZzsgZmlubmUgZGVuIG9wcGxhc3RlZGUgZmlsYSAoaW50ZXJuIGZlaWwpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnRGV0IGVyIGV0IHByb2JsZW0gbWVkIGRpbiBvcHBsYXN0ZWRlIGZpbC4gVmVubmxpZ3N0IGZvcnMmb3NsYXNoO2sgcCZhcmluZzsgbnl0dCc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdEdSBvcHBnYSBpa2tlIGJydWtlcm5hdm4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnRHUgb3BwZ2EgaWtrZSBlbiBlLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ0R1IG9wcGdhIGlra2UgcGFzc29yZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgYnJ1a2VyIHV0bG9nZ2luZyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBicnVrZXIgaW5ubG9nZ2luZyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlYmQUVsaWc7UiBWQVJTT008L2I+IG4mYXJpbmc7ciBla3Npc3RlcmVuZGUgZWdlbnNrYXBlciBzb20gZXIgdGlsZWduZXQgZ3J1cHBlciBmb3JhbmRyZXMsIGR1IGthbiBrb21tZSBpIHNrYWRlIGZvciAmYXJpbmc7ICZvc2xhc2g7ZGVsZWdnZSBub2Ugb2cgZGVybWVkIG5ldHRzdGVkZXQgPGk+KHNwZXNpZWx0IGh2aXMgZHUgbWluc2tlciBmZWx0bGVuZ2RlciwgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRGVubmUgZnVua3Nqb25lbiB2aXJrZXIgaWtrZSBpIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0lra2Ugb3BwcmV0dCBlZ2Vuc2thcGVyIGZvciBicnVrZXJuYXZuIGVsbGVyIHBhc3NvcmQgZGEgZGlzc2UgZWdlbnNrYXBlbmUgZXIgaW5uZWJ5Z2dldCBpIHNlbHZlIEZyb250RW5kVXNlciBtb2R1bGVuLic7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRWtzcG9ydGVyIGJydWtlcmUgdGlsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbiAnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdSZWRpZ2VyIGVnZW5za2FwJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3MgbGVuZ2RlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdPcHByZXR0ZXQnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydGVyIGV0dGVyJzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0ZXJlcic7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdCcnVrZXJlIGkgdmFsZ3QoZSkgZ3J1cHBlKHIpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0JlZ3JlbnMgcmVzdWx0YXRlbmUgdGlsJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0t1bm5lIGlra2UgZmlubmUgZXQgZS1wb3N0ZmVsdCBmb3IgZGVubmUgYnJ1a2VyZW4uIER1IG0mYXJpbmc7IGthbnNramUga29udGFrdGUgc3lzdGVtYWRtaW5pc3RyYXRvcmVuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGZvciBza2plbWFldCBHbGVtdCBwYXNzb3JkJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGZvciBza2plbWFldCBFbmRyZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGRldCBza2FsIGhvcHBlcyB0aWwgZXR0ZXIgaW5ubG9nZ2luZyAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1NpZGVJRC9BbGlhcyBkZXQgc2thbCBob3BwZXMgdGlsIGV0dGVyIHV0bG9nZ2luZyAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdOb2VuIGJydWtlcmUgaG9sZGVyIHAmYXJpbmc7ICZhcmluZzsgdGlsYmFrZXN0aWxsZSBzaW5lIHRhcHRlIHBhc3NvcmQuIE4mYXJpbmc7IGVyIGRldHRlIGFudGFsbGV0OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cgc29tIGVyIG1lciBlbm4gZW4gdWtlIGdhbWxlJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0ZqZXJuIGFsbGUgaW5ubGVnZyBzb20gZXIgbWVyIGVubiBlbiBtJmFyaW5nO25lZCBnYW1sZSc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0VyIGR1IHNpa2tlcj8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdFbiB1Z3lsZGlnIGtvZGUgZXIgbGFndCBpbm4sIHZlbm5saWdzdCBwciZvc2xhc2g7diBpZ2plbi4nOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0VuIG1pZGxlcnRpZGlnIGtvZGUgZm9yIGRpbiBicnVrZXJJRCBibGUgaWtrZSBmdW5uZXQgaSBkYXRhYmFzZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNYWwgc29tIGJlbnl0dGVzIGZvciAmYXJpbmc7IHZpc2UgdmVyaWZpa2Fzam9uc3NramVtYWV0JzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdNYWwgc29tIGJlbnl0dGVzIHAmYXJpbmc7IGdsZW10IHBhc3NvcmQgZXBzb3Rlbic7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRW5kcmluZyBhdiBwYXNzb3JkIGZvciBkZW5uZSBrb250b2VuIGVyIGFsbGVyZWRlIHNhdHQgaSBnYW5nIGF2IGRlZyBlbGxlciBub2VuIGFubmVuLiBTamVrayBlLXBvc3RlbiBkaW4sIGR1IGthbiBoYSBtb3R0YXR0IHZpZGVyZSBpbnN0cnVrc2pvbmVyIG9tIGh2b3JkYW4gZGV0dGUgc2thbCBnamVubm9tZiZvc2xhc2g7cmVzLiAnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGZlaWwnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnRHUgZiZhcmluZztyIGRlbm5lIG1lbGRpbmdlbiBmb3JkaSBub2VuIGhhciBmb3J0YWx0IHYmYXJpbmc7ciBuZXR0c2lkZSBhdCBkdSBoYXIgbWlzdGV0IGRpdHQgcGFzc29yZC4gIE9tIGRldHRlIGVyIGtvcnJla3QsIGxlcyBpbnN0cnVrc2pvbmVuZSBuZWRlbmZvci4gIE9tIGR1IGlra2Ugc2tqJm9zbGFzaDtubmVyIGh2YSBkZXR0ZSBrYW4gdiZhZWxpZztyZSwgcyZhcmluZzsga2FuIGR1IHRyeWd0IHNsZXR0ZSBkZW5uZSBtZWxkaW5nZW4sIG9nIHZpIHRha2tlciBmb3IgZGluIG9wcG1lcmtzb21oZXQuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdEZW4gZiZvc2xhc2g7bGdlbmRlIGtvZGUgaGFyIGJsaXR0IGdlbmVyZXJ0IHRpbGZlbGRpZyBmb3IgJmFyaW5nOyBnamVua2plbm5lIGJydWtlcmtvbnRvZW4uICBuJmFyaW5nO3IgZHUga2xpa2tlciBsaW5rZW4gbmVkZW5mb3IgdmlsIGR1IGYmYXJpbmc7IG9wcCBldCBmZWx0IGZvciAmYXJpbmc7IHNrcml2ZSBpbm4gZGVubmUga29kZW4uICBOb3JtYWwgZXIgZmVsdGV0IGZvcmgmYXJpbmc7bmRzdXRmeWx0IGZvciBkZWcsIG1lbiBpIHRpbGZlbGxlIGRldCBpa2tlIGVyIC0gcyZhcmluZzsgZXIga29kZW46JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnSHZpcyBkdSBrbGlra2VyIHAmYXJpbmc7IGxpbmtlbiBzb20gZiZvc2xhc2g7bGdlciB2aWwgZHUgYmxpIGYmb3NsYXNoO3J0IHRpbCBlbiBuZXR0c2lkZSBodm9yIGR1IGthbiBsZWdnZSBpbm4gdmVkbGFndGUga29kZSBvZyBsZWdnZSBpbm4gbnl0dCBwYXNzb3JkLic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2xlbXQgcGFzc29yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0t1bm5lIGlra2UgZmlubmUgQ01TTWFpbGVyIG1vZHVsZW4nOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRW4gZS1wb3N0IGVyIGJsaXR0IHNlbmR0IHRpbCAlcyBtZWQgaW5zdHJ1a3Nqb25lciBvbSBodm9yZGFuIHBhc3NvcmRldCBrYW4gbGVnZ2VzIGlubiBwJmFyaW5nOyBueS4gVGFray4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTJmFyaW5nOyBkdSBoYXIgZ2xlbXQgZWxsZXIgbWlzdGV0IHBhc3NvcmRldCBkaXR0LiBWZWwsIGxlZ2cgaW5uIGJydWtlcm5hdm5ldCBkaXR0IGhlciwgb2cgb20gdmkgZmlubmVyIGRlZyBzJmFyaW5nOyB2aWwgdmkgc2VuZGUgZGVnIGVuIGUtcG9zdCBvbSBodm9yZGFuIGR1IGthbiB0aWxiYWtlc3RpbGxlIGRldC4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIGdsZW10IHBhc3NvcmQnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnJiMwMzk7TWlzdGV0IGJydWtlcm5hdm4mIzAzOTsgbWFsJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0VnZW5za2FwICVzIGlra2UgZnVubmV0JzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdFZ2Vuc2thcCBmdW5uZXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0xlZ2cgdGlsIGVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdFdCBvYmxpZ2F0b3Jpc2sgZmVsdCAoJXMpIHZhciB0b210JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRXZ0LiBueXR0IHBhc3NvcmQgaGVyIGZvciAmYXJpbmc7IGVuZHJlIGRldCBla3Npc3RlcmVuZGUnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdEZXQgc2VyIGlra2UgdXQgdGlsIGF0IGR1IGVyIGlubmxvZ2dldCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5uc3RpbGxpbmdlcic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJlcmluZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0tvbnRvZW4gaGFyIHV0bCZvc2xhc2g7cHQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ZlaWwgcCZhcmluZzsgZS1wb3N0YWRyZXNzZW5zIGZvcm1hdGVyaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnVWd5bGRpZyB1dGwmb3NsYXNoO3BzZGF0by4gRGV0dGUga2FuIHYmYWVsaWc7cmUgc3lzdGVtcmVsYXRlcnQuIEZvcnMmb3NsYXNoO2sgbWVkICZhcmluZzsgc2V0dGUgZXQgdGlkbGlnZXJlICZhcmluZztyLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRmVpbCB2ZWQgc2V0dGluZyBhdiBlZ2Vuc2thcCAlcyBmb3IgYnJ1a2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnVWd5bGRpZyBncnVwcGVJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01lcmtlIGZvciBza2p1bHQgZmVsdCc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnRmFyZ2UgZm9yIHNranVsdCBmZWx0JzsKJGxhbmdbJ2hpZGRlbiddID0gJ1NranVsdCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRW4gZWdlbnNrYXAgbWVkIGRldCBuYXZuZXQgZXIgYWxsZXJlZGUgZGVmaW5lcnQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnSW5nZW4gZWdlbnNrYXAgZGVmaW5lcnQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdJbmdlbiBlZ2Vuc2thcGVyIGJsZSB2YWxndCBmb3IgZGVubmUgZ3J1cHBlbic7CiRsYW5nWydub2dyb3VwcyddID0gJ0luZ2VuIGdydXBwZXIgZXIgZGVmaW5lcnQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwcGVyIGZ1bm5ldCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnRGV0IG0mYXJpbmc7IHRpbGRlbGVzIG1lZGxlbXNrYXAgZm9yIG1pbnN0IGVuIGdydXBwZSAnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ0tyZXYgbWVkbGVtc2thcCBmb3IgbWluc3QgZW4gZ3J1cHBlJzsKJGxhbmdbJ2JhY2snXSA9ICdUaWxiYWtlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBmZWx0ZXQgbSZhcmluZzsgZnlsbGVzIHV0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNZXJrIG9ibGlnYXRvcmlza2UgZmVsdCBtZWQgJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ1V0aGV2IG9ibGlnYXRvcmlza2UgZmVsdCBtZWQnOwokbGFuZ1snbmV4dCddID0gJ05lc3RlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRW4gZ3J1cHBlIG1lZCBkZXQgbmF2bmV0IGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3Jpc2snOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdWYWxnZnJpdHQnOwokbGFuZ1snb2ZmJ10gPSAnQXYnOwokbGFuZ1snc2l6ZSddID0gJ1N0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYWtzIHN0Jm9zbGFzaDtycmVsc2UgaSBwaXhsZXIgZm9yIGVuaHZlciBkaW1lbnNqb24gcCZhcmluZzsgYmlsZGV0KSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5nZGUnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oYm9rc3RhdmVyIGkgdGVrc3Rpbm5za3JpdmluZ2VuKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTmVkdHJla2tzdmFsZywgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3MuIEh1bm5raiZvc2xhc2g7bm49Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2tuYXBwIGV0aWtldHRlciwgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3M6IEh1bm5raiZvc2xhc2g7bm49ayc7CiRsYW5nWydwcm9tcHQnXSA9ICdTcCZvc2xhc2g7cic7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0ZlbHQgU3RhdHVzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1NwJm9zbGFzaDtyIGkgTWlzdGV0PGJyLz5icnVrZXJuYXZuJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdCc7CiRsYW5nWydjaGVja2JveCddID0gJ0F2a3J5c3NuaW5nc2Jva3MnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdGbGVydmFsZ3NsaXN0ZSc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpb2tuYXBwZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkZSc7CiRsYW5nWydlbWFpbCddID0gJ0UtcG9zdGFkcmVzc2UnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdG9tciZhcmluZztkZSc7CiRsYW5nWydkcm9wZG93biddID0gJ05lZHRyZWtrc21lbnknOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdWZWxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnTG9nZyB1dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnQmVueXR0IGRldHRlIGdydXBwZW5hdm5ldCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdGb3JhbmRyZSBtaW5lIGlubnN0aWxsaW5nZXInOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdJbm5sb2dnaW5nIG1pc3NseWtrZXQgLSB1Z3lsZGlnIGJydWtlcm5hdm4gZWxsZXIgcGFzc29yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dnIGlubic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0xvZ2cgaW5uIGtuYXBwIGV0aWtldHQnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3NvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdIdXNrIG1lZyBwJmFyaW5nOyBkZW5uZSBkYXRhbWFza2luZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdHbGVtdCBwYXNzb3JkZXQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0hhciBkdSBnbGVtdCBpbm5sb2dnaW5nc2RldGFsamVuZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdUaWxiYWtlc3RpbGwgdGlsIHN0YW5kYXJkJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTWFsJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0t1bm5lIGlra2UgZmlubmUgaW5mb3JtYXNqb24gb20gZGVubmUgYnJ1a2VyZW4nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RldCBicnVrZXJuYXZuZXQgKCVzKSBlciBhbGxlcmVkZSBpIGJydWsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0JydWsgU01UUCBmb3IgJmFyaW5nOyBrb250cm9sbGVyZSBlLXBvc3RhZHJlc3Nlcj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSBsZW5nZGUgcCZhcmluZzsgcGFzc29yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYWtzaW11bSBsZW5nZGUgcCZhcmluZzsgcGFzc29yZCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIExlbmdkZSBwJmFyaW5nOyBicnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01ha3NpbXVtIGxlbmdkZSBwJmFyaW5nOyBicnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2VrdW5kZXIpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdCcnVrIGNvb2tpZXMgZm9yICZhcmluZzsgaG9sZGUgaW5ubG9nZ2luZ2VuIHZlZCBsaXYnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdUaWxsYXQgZS1wb3N0IHJlZ2lzdHJlcmluZyc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnU3RhbmRhcmRncnVwcGUgZm9yIG55ZSBicnVrZXJlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnTWFsIGZvciBmb3JhbmRyZSBicnVrZXJkYXRhJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXNzb3JkZW5lIGVyIGlra2UgbGlrZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVZ3lsZGlnIGJydWtlcm5hdm4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnVWd5bGRpZyBwYXNzb3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnUmVkaWdlciBicnVrZXInOwokbGFuZ1sndmFsaWQnXSA9ICdHeWxkaWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRGVubmUgYnJ1a2VyZW4gZXIgaWtrZSBtZWRsZW0gYXYgbm9lbiBncnVwcGUnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ0luZ2VuIGVnZW5za2FwZXInOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdGb3JzJm9zbGFzaDtrICZhcmluZzsgaW1wb3J0ZXJlIGR1cGxpa2F0ZSBlZ2Vuc2thcGVyJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmVyZGknOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cHBlcic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWdlbnNrYXBlcic7CiRsYW5nWydwcm9wbmFtZSddID0gJ0VnZW5za2FwZW5zIE5hdm4gJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ0VnZW5za2FwZW5zIHZlcmRpJzsKJGxhbmdbJ2FkZCddID0gJ0xlZ2cgdGlsJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3JpZSc7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcic7CiRsYW5nWydleHBpcmVzJ10gPSAnVXRsJm9zbGFzaDtwZXInOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3Blc2lmaXNlciBkYXRvJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdGltZXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCB0aW1lcic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHRpbWVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB1a2UnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBVa2VyJzsKJGxhbmdbJzFtb250aCddID0gJzEgTSZhcmluZztuZWQnOwokbGFuZ1snM21vbnRocyddID0gJzMgTSZhcmluZztuZWRlcic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNJmFyaW5nO25lZGVyJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSAmQXJpbmc7cic7CiRsYW5nWyduZXZlciddID0gJ0FsZHJpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ1ZlbGx5a2tldCBpbnN0YWxsYXNqb24gYXYgbW9kdWxlbi48YnIvPkh1c2sgJmFyaW5nOyBha3RpdmlzZXJlICAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4mcXVvdDsNCkkgdGlsbGVnZywgYW5iZWZhbGVyIHZpIGRlZyAmYXJpbmc7IGluc3RhbGxlcmUgQ2FwdGNoYSBtb2R1bGVuLiAgT20gZGVubmUgZXIgaW5zdGFsbGVydCwgZW4gZ3lsZGlnaGV0c3Rlc3QgYXYgZXQgY2FwdGNoYWJpbGRlIHZpbCBrcmV2ZXMgaSB0aWxsZWdnIHRpbCBicnVrZXJuYXZuIG9nIHBhc3NvcmQgZm9yICZhcmluZzsgbG9nZ2UgaW5uLiBNZW5pbmdlbiBtZWQgZGV0dGUgZXIgJmFyaW5nOyBoaW5kcmUgYnJ1dGUgZm9yY2UgYW5ncmVwLiAgPHN0cm9uZz5NZXJrOjwvc3Ryb25nPiBQYXJhbWV0ZXJlbiBub2NhcHRjaGEga2FuIGJlbnl0dGVzIGZvciAmYXJpbmc7IHNsJmFyaW5nOyBhdiBkZW5uZSBmdW5rc2pvbmVuIHNlbHYgb20gQ2FwdGNoYSBtb2R1bGVuIGVyIGluc3RhbGxlcnQuJnF1b3Q7JzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnTnl0dCBwYXNzb3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnR2plbnRhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdSZWRpZ2VyIGdydXBwZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdMYWdyZSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldHQnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZGV0dGUgZXIga29ycmVrdGUgdmFsZyBmb3IgZGVubmUgZ3J1cHBlbj9cbiZBcmluZzsgc2wmYXJpbmc7IGVuIGVnZW5za2FwIGF2L29mZiB2aWwgaWtrZSBzbGV0dGUgbm9lbiBpbm5sZWdnIGkgZWdlbnNrYXAtdGFiZWxsZW4gZm9yIGRlbm5lIGdydXBwZW4vYnJ1a2VyZW4uICBFZ2Vuc2thcGVuIHZpbCBpIHN0ZWRldCBibGkgdXRpbGdqZW5nZWxpZy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgc2xldHRlIGRlbm5lIGdydXBwZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIHNsZXR0ZSBkZW5uZSBlZ2Vuc2thcGVuIGhlbHQ/XG4mQXJpbmc7IGdqJm9zbGFzaDtyZSBkZXR0ZSB2aWwgb2dzJmFyaW5nOyBzbGV0dGUgZW5odmVyIGJydWtlcnMgaW5ubGVnZyBpIGRlbm5lIGVnZW5za2FwZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1VmdWxsc3RlbmRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBtZWQgJmFyaW5nOyBsZWdnZSB0aWwgZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgdGlsIGdydXBwZWVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgdGlsIGdydXBwZSc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgZW4gYnJ1a2VyIHRpbCBncnVwcGVuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIG1lZCAmYXJpbmc7IHNsZXR0ZSBlbiBlZ2Vuc2thcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ0t1bm5lIGlra2UgZmlubmUgZW4gZS1wb3N0YWRyZXNzZSc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnSW5nZW4gc2tyaXZlcmV0dGlnaGV0IGkgbSZhcmluZztsbWFwcGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdVZ3lsZGlnZSBwYXJhbWV0ZXJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS3VubmUgaWtrZSBmaW5uZSBub2VuIGdydXBwZXInOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdCcnVrJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0JydWtlcm5hdm4gdmFubGlnIHV0dHJ5a2snOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcnVwcGVuYXZuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FkZ2FuZyBuZWt0ZXQnOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTGVnZyB0aWwgZ3J1cHBlJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0ZXIgR3J1cHBlJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdMZWdnIHRpbCBicnVrZXInOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0JydWtlcmUgc29tIHBhc3NlciBtZWQga3JpdGVyaWVuZSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwZSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1ZlbGcgZ3J1cHBlJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01hbCBmb3IgcmVnaXN0cmVyaW5nJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ01hbCBmb3IgdXRsb2dnaW5nJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTWFsIGZvciBpbm5sb2dnaW5nJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyYW5zZXInOwokbGFuZ1sndXNlcnMnXSA9ICdCcnVrZXJlJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIGJydWtlcmUnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBZG1pbmlzdHJlciBGcm9udGVuZCBicnVrZXJlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdTdGFuZGFyZCBmb3JzaWRlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdTaXN0ZSB2aXN0ZSBzaWRlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ0FubmVuIHNpZGU6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3BwZ2kgdGVrc3RlbiBmcmEgYmlsZGV0JzsKJGxhbmdbJ3FjYSddID0gJ1AwLTUzNjg0OTExNS0xMzA3OTgzNDk1MjEwJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTQxMDY2OTQ2MC4xMzYwMzM0NzQ4LjEzNjM5MDg2NTUuMTM2Mzk5MDE2MC41Nyc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzNjAzMzQ3NDguMS4xLnV0bWNzcj0oZGlyZWN0KXx1dG1jY249KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjIuMTAuMTM2Mzk5MDE2MCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3NvcnRieV91c2VybmFtZV9hc2MnXSA9ICdHZWJydWlrZXJzbmFhbSAob3Bsb3BlbmQpJzsKJGxhbmdbJ3NvcnRieV91c2VybmFtZV9kZXNjJ10gPSAnR2VicnVpa2Vyc25hYW0gKGFmbG9wZW5kKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2FzYyddID0gJ0Fhbm1hYWtkYXR1bSAob3Bsb3BlbmQpJzsKJGxhbmdbJ3NvcnRieV9jcmVhdGVfZGVzYyddID0gJ0Fhbm1hYWtkYXR1bSAoYWZsb3BlbmQpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2FzYyddID0gJ1Zlcmxvb3BkYXR1bSAob3Bsb3BlbmQpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2Rlc2MnXSA9ICdWZXJsb29wZGF0dW0gKGFmbG9wZW5kKSc7CiRsYW5nWydlbmNyeXB0ZWQnXSA9ICdWZXJzbGV1dGVsZCc7CiRsYW5nWydpbmZvX2Nvb2tpZW5hbWUnXSA9ICdTY2hha2VsdCBkZSAmcXVvdDtyZW1lbWJlciBtZSZxdW90OyBmdW5jdGllIGluLiBEaXQgaXMgZ2VsaWprIGFhbiBkZSBjb29raWUga2VlcGFsaXZlIGZ1bmN0aWUsIG1hYXIgZGFuIHZvb3IgNjAgZGFnZW4uJzsKJGxhbmdbJ21zZ191c2VybmFtZV9yZWFkb25seSddID0gJ0hldCBpcyBuaWV0IHRvZWdlc3RhYW4gb20gZGUgZ2VicnVpa2Vyc25hYW0gdm9vciBkaXQgYWNjb3VudCBhYW4gdGUgcGFzc2VuJzsKJGxhbmdbJ21zZ19wYXNzd29yZF9yZWFkb25seSddID0gJ0hldCBpcyBuaWV0IHRvZWdlc3RhYW4gb20gaGV0IHdhY2h0d29vcmQgdm9vciBkaXQgYWNjb3VudCBhYW4gdGUgcGFzc2VuJzsKJGxhbmdbJ3Byb21wdF9ub3JtYWxsb2dpbiddID0gJ0RpcmVjdGUgTG9naW4nOwokbGFuZ1snbW92ZV91cCddID0gJ09taG9vZyc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdPbWxhYWcnOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ0RlemUgcHJvcGVydHkgaXMgZ2VtYWFrdCBkb29yIGVlbiBtb2R1bGUgZW4ga2FuIG5pZXQgd29yZGVuIGFhbmdlcGFzdCc7CiRsYW5nWydub3RfYXZhaWxhYmxlJ10gPSAnTmlldCBiZXNjaGlrYmFhcic7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnU3RhbmRhYXJkIGhvb3J0IGRpdCB2ZWxkIGFhbmdldmlua3QgdGUgemlqbic7CiRsYW5nWydvcGVyYXRpb25fY29tcGxldGVkJ10gPSAnQWt0aWUgY29tcGxlZXQnOwokbGFuZ1snbWVtYmVycyddID0gJ0xlZGVuJzsKJGxhbmdbJ3ZpZXdfZmlsdGVyJ10gPSAnQmVraWprIEZpbHRlcic7CiRsYW5nWydkYXRhJ10gPSAnRGF0YSc7CiRsYW5nWydhcHBsaWVkJ10gPSAnVmVyd2Vya3QnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdpbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0gd2lqemlnZW4gdG9lc3RhYW4nOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ0luZGllbiBpbmdlc2NoYWtlbGQgaXMgaGV0IGdlYnJ1aWtlcnMgdG9lZ2VzdGFhbiBvbSBkZSBlaWdlbiBnZWJydWlrZXJzbmFhbSBlbiBhbmRlcmUgaW5zdGVsbGluZ2VuIHRlIHdpanppZ2VuLic7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ1NqYWJsb29uIG9wZ2VzbGFnZW4nOwokbGFuZ1sndGVtcGxhdGVfcmVzZXRkZWZhdWx0cyddID0gJ1NqYWJsb29uIG5hYXIgc3RhbmRhYXJkIHRlcnVnemV0dGVuJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0luc3RlbGxpbmdlbic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnU2phYmxvbmVuJzsKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnU2NoYWtlbCBjYXB0Y2hhIGluIHZvb3IgaGV0IGxvZ2luZm9ybXVsaWVyJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdBbHMgZGUgZ2VicnVpa2VyIG5pZXQgaXMgYWFuZ2VtZWxkIGVuIGRlIG1vZHVsZXZvb3JrZXVyZW4gc3RhYW4gem8gaW5nZXN0ZWxkIGRhdCBlciBkYW4gZWVuIGxvZ2luZm9ybXVsaWVyIHdvcmR0IHdlZXJnZXZlbiwgZGFuIGt1bnQgdSBtZXQgZGV6ZSBvcHRpZSBhYW5nZXZlbiBvZiB1IHdpbHQgZGF0IGVyIGVlbiBjYXB0Y2hhIHdvcmR0IHdlZXJnZWdldmVuLiBBbGxlZW4gaW5kaWVuIGNhcHRjaGEgYmVzY2hpa2JhYXIgaXMuJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1UgYmVudCBuaWV0IGJldm9lZ2Qgb20gZGUgaW5ob3VkIHZhbiBkZXplIHBhZ2luYSB0ZSB6aWVuJzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnTWFhayBlZW4gc2VsZWN0aWUgdmFuIEZFVSBncm9lcGVuIGRpZSB0b2VnYW5nIG1vZ2VuIGhlYmJlbiB0b3QgZGV6ZSBwYWdpbmEuIEFscyBlciBnZWVuIGdyb2VwZW4gZ2VzZWxlY3RlZXJkIHppam4sIGlzIGVsa2UgbWV0IEZFVSBpbmdlbG9nZGUgZ2VicnVpa2VyIGdlcmVjaHRpZ2Qgb20gZGV6ZSBwYWdpbmEgdGUgemllbi4nOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdCZXZlaWxpZ2RlIHBhZ2luYSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnVG9lZ2VzdGFuZSBncm9lcGVuJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnU2VsZWN0ZWVyIGRlIGdyb2VwKGVuKSBkaWUgc3RhbmRhYXJkIGRlIGFmZ2VzY2hlcm1kZSBwYWdpbmEmIzAzOTtzIG1vZ2VuIHppZW4uIEVlbiBlZGl0b3IgbWV0IGRlICZhbXA7cXVvdDtiZWhlZXIgYWxsZSBpbmhvdWQgKG1hbmFnZSBhbGwgY29udGVudCkmYW1wO3F1b3Q7IHJlY2h0ZW4ga2FuIGRpdCB2b29yIGVsa2UgcGFnaW5hIG9waGVmZmVuLic7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdCZXdlcmtpbmcgdm9vciBuaWV0IHZvbGRvZW5kZSByZWNodGVuJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnR2VlZiBkZSBhY3RpZXMgYWFuIHZvb3IgcGVyc29uZW4gZGllIGRlemUgcGFnaW5hIGJlbmFkZXJlbiB6b25kZXIgZGF0IHplIHZvbGRvZW5kZSByZWNodGVuIGhlYmJlbi4gVSBrdW50IG9md2VsIGxhdGVuIGRvb3JzdHVyZW4gbmFhciBlZW4gYmVwYWFsZGUgcGFnaW5hIG9mIGhldCBsb2dpbiBmb3JtdWxpZXIgdG9uZW4uJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdUb29uIGhldCBMb2dpbiBmb3JtdWxpZXInOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdEb29ydmVyd2lqemVuIG5hYXIgZWVuIHBhZ2luYSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnRG9vcnZlcndpanplbiBuYWFyJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ0dlZWYgYWFuIG5hYXIgd2Vsa2UgcGFnaW5hIGRvb3JnZXN0dXVyZCB3b3JkdC4gQWxzIHUgaGllciBnZWVuIHBhZ2luYSBzZWxlY3RlZXJ0IGVuIGRlIGFjdGllIHN0YWF0IGluZ2VzdGVsZCBvcCAmYW1wO3F1b3Q7ZG9vcnN0dXJlbiZhbXA7cXVvdDsgemFsIGRlIGdlYnJ1aWtlciBlZW4gYmVyaWNodCBnZXRvb25kIHdvcmRlbiBkYXQgaGlqIGdlZW4gdG9lZ2FuZyBoZWVmdCB0b3QgZGUgcGFnaW5hLic7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1JlY2h0ZW4nOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnQmV2ZWlsaWdkZSBpbmhvdWQnOwokbGFuZ1sncHJvbXB0X3ZpZXdwcm9wcyddID0gJ1NlbGVjdGVlciBleHRyYSBlaWdlbnNjaGFwcGVuIG9tIHdlZXIgdGUgZ2V2ZW4nOwokbGFuZ1sndmlldyddID0gJ1dlZXJnZXZlbic7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdXYW5uZWVyIGFhbmdldmlua3QgemFsIGRlIGltcG9ydCByb3V0aW5lIHByb2JlcmVuIGdlYnJ1aWtlcnMgb25hZmhhbmtlbGlqayB2YW4gZGUgVXNlcklEIGtvbG9tIHRvZSB0ZSB2b2VnZW4uIFdhbm5lZXIgZWVuIGdlYnJ1aWtlciBiZXN0YWF0IG1ldCBkZXplbGZkZSBuYWFtLCB6YWwgZWVuIGZvdXRtZWxkaW5nIHdvcmRlbiB3ZWVyZ2VnZXZlbi4nOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ1NsYSBVc2VySUQga29sb20gb3ZlciBiaWogaW1wb3J0ZXJlbic7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnRlZXIgZGUgd2FjaHR3b29yZCBoYXNoIG5hYXIgaGV0IGJlc3RhbmQnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdEZSB3YWNodHdvb3JkIGhhc2ggaXMgZW5rZWwgbnV0dGlnIGFscyBkZSB3YWNodHdvb3JkdmVyc2xldXRlbGluZ3Njb2RlIG9wIGRlIGltcG9ydGVyZW5kZSBob3N0cyBpZGVudGllayBpcyBhYW4gZGVnZW5lIG9wIGRlIGV4cG9ydGVyZW5kZSBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdEZSB3YWNodHdvb3JkdmVyc2xldXRlbGluZ3Njb2RlIGthbiBuaWV0IHdvcmRlbiBhYW5nZXBhc3QnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1dhY2h0d29vcmR2ZXJzbGV1dGVsaW5nJzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyB2b2VndCB2ZXJzbGV1dGVsaW5nIHRvZSBhYW4gd2FjaHR3b29yZGVuLiBEZSBzbGV1dGVsIHdvcmR0IGdlZ2VnZW5lZXJkIHRpamRlbnMgZGUgaW5zdGFsbGF0aWUuIERlemUgc2xldXRlbCBrYW4gbmlldCB3b3JkZW4gZ2V3aWp6aWdkLiBEZSB2ZXJzbGV1dGVsaW5nc2NvZGUga2FuIGxlZWcgemlqbiBiaWogb3VkZSBpbnN0YWxsYXRpZXMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnVWl0Z2VicmVpZGUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2luZm9fc2Vzc2lvbnRpbWVvdXQnXSA9ICdHZWVmIGhldCBhYW50YWwgc2Vjb25kZW4gb3Agdm9vcmRhdCBlZW4gaW5hY3RpZXZlIGdlYnJ1aWtlciBhdXRvbWF0aXNjaCBtb2V0IHdvcmRlbiBhZmdlbWVsZCB2YW4gZGUgd2Vic2l0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdJbnRlcnZhbCBnZWJydWlrZXJzdmVybG9vcCc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnR2VlZiBlZW4gd2FhcmRlIG9wIChpbiBzZWNvbmRlbikgZGllIGFhbmdlZWZ0IGhvZSB2YWFrIGhldCBzeXN0ZWVtIG1vZXQgY29udHJvbGVyZW4gd2Vsa2UgZ2VicnVpa2Vyc3Nlc3NpZSB6aWpuIHZlcmxvcGVuIGVuIGFmZ2VtZWxkIG1vZXRlbiB3b3JkZW4uIERpdCBpcyBlZW4gb3B0aW1hbGlzYXRlaSBvbSBkYXRhYmFzZXF1ZXJ5JiMwMzk7cyB0ZSBiZXNwYXJlbi4gQWxzIHUgZGl0IHZlbGQgbGVlZyBsYWF0IG9mIDAgaW52b2VydCBkYW4gemFsIGhldCB3b3JkZW4gdWl0Z2V2b2VyZCBiaWogaWVkZXJlIGFhbnZyYWFnLic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnVXcgaW5zdGVsbGluZ2VuIHppam4gc3VjY2Vzdm9sIGJpamdld2Vya3QnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnVmVycGxpY2h0IGdlYnJ1aWtlcnMgb20gYWYgdGUgbWVsZGVuIG9wIHJlZ2VsbWF0aWdlIGludGVydmFsbGVuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RpamQgdm9vciBnZWR3b25nZW4gYWZtZWxkZW4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ0dlZWYgZWVuIGxpanN0IG1ldCBrb21tYWdlc2NoZWlkZW4gd2FhcmRlbiB2YW4gdGlqZGVuIG9wIChiaWp2b29yYmVlbGQ6IEhIOk1NLEhIOk1NKSB3YWFyb3AgZ2VicnVpa2VyIGdlZm9yY2VlcmQgYWZnZW1lbGQgd29yZGVuLiBPcG1lcmtpbmc6IGRpdCBnZWJydWlrdCBoZXQgcHNldWRvY3JvbiBtZWNoYW5pc21lIGVuIHUgbW9ldCB6ZWtlciB6aWpuIGRhdCBkZSBpbmdldm9lcmRlIHRpamRlbiB6dWxsZW4gc2FtZW52YWxsZW4gbWV0IHV3ICYjMDM5O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmIzAzOTsgZW4gZGF0IGRlcmdlbGlqa2UgYWFudnJhZ2VuIHp1bGxlbiB3b3JkZW4gdWl0Z2V2b2VyZCBvcCB1dyB3ZWJzaXRlIG9tIHRlIGNvbnRyb2xlcmVuIG9mIGRlIHBzZXVkb2Nyb24gaXMgdWl0Z2V2b2VyZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdTbHVpdCBnZWJydWlrZXJzIHVpdCBkaWUgYWN0aWVmIHppam4gZ2V3ZWVzdCBpbiBkZSBsYWF0c3RlIDxlbT4obWludXRlbik8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdBbHMgZGl0IGlzIG9wZ2VnZXZlbiwgenVsbGVuIGdlYnJ1aWtlcnMgZGllIGFjdGllZiB3YXJlbiBpbiBkaXQgYWFudGFsIG1vZXRlbiBuaWV0IHdvcmRlbiBnZWR3b25nZW4gb20gYWYgdGUgbWVsZGVuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgZ2VicnVpa2VyIHdpbHQgdmVyd2lqZGVyZW4gJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdIZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZCBpcyBlZW4gbmlldCB0b2VnZXN0YWFuIGJlc3RhbmRzdHlwZSc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsZSBiaWpiZWhvcmVuZGUgZGF0YSB2YW4gZGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaXMgdmVyd2lqZGVyZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJbmRpZW4gaW5nZXNjaGFrZWxkIHphbCBkZXplIG1vZHVsZSBzYW1lbndlcmtlbiBtZXQgZGUgRS1jb21tZXJjZSBzdWl0ZS4gRGUgdm9sZ2VuZGUgaW5zdGVsbGluZ2VuIHdlcmtlbiBhbGxlZW4gd2FubmVlciBkZXplIGluc3RlbGxpbmcgaXMgaW5nZXNjaGFrZWxkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ1ZvbGdvcmRlIHZvb3Igc29ydGVyZW4gdmFuIGdlYmV1cnRlbmlzc2VuJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0RlIHZvbGdlbmRlIGluc3RlbGxpbmdlbiB6aWpuIGFsbGVlbiBhY3RpZWYgaW5kaWVuIGVyIGdlYnJ1aWsgd29yZHQgZ2VtYWFrdCB2YW4gemVsZnJlZ2lzdHJhdGllIGVuIGVyIGJldGFhbGQgd29yZHQgdm9vciByZWdpc3RyYXRpZSc7CiRsYW5nWydub25lJ10gPSAnR2Vlbic7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ1ZlcndpamRlciBnZWJydWlrZXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdWZXJsb29wIGdlYnJ1aWtlcic7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQmV3ZXJraW5nIG9tIHVpdCB0ZSB2b2VyZW4gaW5kaWVuIGFhbm1lbGRpbmdzdmVyem9layBpcyBnZWFubnVsZWVyZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0Jld2Vya2luZyBvbSB1aXQgdGUgdm9lcmVuIGluZGllbiBhYW5tZWxkaW5nc3ZlcnpvZWsgaXMgdmVyd2lqZGVyZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFLWNvbW1lcmNlIGluc3RlbGxpbmdlbic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ0JldmVpbGlnZCB2ZWxkIG1hcmtlcic7CiRsYW5nWydzZWN1cmVmaWVsZGNvbG9yJ10gPSAnQmV2ZWlsaWdkIHZlbGQga2xldXInOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTbGEgZGV6ZSBkYXRhIGJldmVpbGlnZCBvcCBpbiBkZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdEZXplIG9wdGllIHdvcmR0IG5pZXQgb25kZXJzdGV1bmQgaW4gdXcgaHVpZGlnZSBjb25maWd1cmF0aWUnOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnR2VicnVpa2VyIGF1dG9tYXRpc2NoIGdlY3JlJmV1bWw7ZXJkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0luZGllbiBkZSBnZWJydWlrZXIgd29yZHQgZ2Vjb250cm9sZWVyZCBkb29yIGVlbiBleHRlcm5lIGF1dGhlbmNhdGllbW9kdWxlIGRpZSBuaWV0IGJla2VuZCBpcyBpbiBGcm9udEVuZFVzZXJzIG1vZHVsZSBtb2V0IGVyIGRhbiBhdXRvbWF0aXNjaCBlZW4gRkVVIGFjY291bnQgd29yZGVuIGFhbmdlbWFha3Q/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGlzY2ggb25iZWtlbmRlIGdlYnJ1aWtlcnMgYWFubWFrZW4nOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ1dlZXJnYXZlIGluc3RlbGxpbmdlbic7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnRGUgdm9sZ2VuZGUgaW5zdGVsbGluZ2VuIHdvcmRlbiBhbGxlZW4gdG9lZ2VwYXN0IGluZGllbiBlciBnZWJydWlrIHdvcmR0IGdlbWFha3QgdmFuIGRlICYjMDM5O0luZ2Vib3V3ZGUgYXV0aGVudGljYXRpZSYjMDM5Oy4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ0FscyB1IE5lZSBzZWxlY3RlZXJ0IHphbCBkZSBvcHRpZSB2b29yIGRlIGdlYnJ1aWtlciBvbSB2ZXJsb3JlbiBsb2dpbiBpbmZvcm1hdGllIHVpdGdlc2NoYWtlbGQgd29yZGVuLCBvbmdlYWNodCBhbmRlcmUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdBbHMgdSBOZWUgc2VsZWN0ZWVydCB6YWwgZGUgb3B0aWUgdm9vciBkZSBnZWJydWlrZXIgb20gaGV0IHdhY2h0d29vcmQgb3BuaWV1dyBpbiB0ZSBzdGVsbGVuLCB1aXRnZXNjaGFrZWxkIHdvcmRlbi4gRGl0IG9uZ2VhY2h0IGFuZGVyZSBpbnN0ZWxsaW5nZW4uJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ1N0YSBnZWJydWlrZXJzIHRvZSBodW4gZ2VicnVpa2Vyc25hYW0gb3AgdGUgdnJhZ2VuJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1N0YSBnZWJydWlrZXJzIHRvZSBlZW4gbmlldXcgd2FjaHR3b29yZCBhYW4gdGUgdnJhZ2VuJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdBdXRoZW5jYXRpZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdJbmdlYm91d2RlIGF1dGhlbmNhdGllJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ1N0YW5kYWFyZCBGRVUgQXV0aGVuY2F0aWUnOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdBdXRoZW5jYXRpZSBNb2R1bGUvTWV0aG9kZSc7CiRsYW5nWydpbmZvX2F1dGhfbW9kdWxlJ10gPSAnRGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgb25kZXJzdGV1bmQgYWx0ZXJuYXRpZXZlIGF1dGhlbnRpY2F0aWUgbWV0aG9kZXMgbWV0IHZlcnNjaGlsbGVuZGUgbW9nZWxpamtoZWRlbi4gU29tbWlnZSBmdW5jdGlvbmFsaXRlaXQgemFsIG5pZXQgd2Vya2VuIGFscyB1IGdlZW4gZ2VicnVpayBtYWFrdCB2YW4gZGUgaW5nZWJvdXdkZSBhdXRoZW50aWNhdGllIG1ldGhvZGUuJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGUgd2FhcmRlIGluZ2V2dWxkIHZvb3IgJXMgaXMgYWwgaW4gZ2VicnVpayBiaWogZWVuIGFuZGVyZSBnZWJydWlrZXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pZWsnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGUgd2FhcmRlIGluZ2VzdGVsZCB2b29yICVzICglcykgaXMgbmlldCB1bmllayc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRGV6ZSBlaWdlbnNjaGFwIG1vZXQgdW5pZWsgemlqbiB0ZW4gb3AgemljaHRlIHZhbiBhbGxlIGdlYnJ1aWtlcnMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnR2VicnVpa3Qgdm9vciBkZSBhYW4tIGVuIGFmbWVsZGZvcm11bGllcmVuLCBkZXplIHBhcmFtZXRlciB6b3JndCBlcnZvb3IgZGF0IGRlIGdlYnJ1aWtlciB0ZXJ1Z2tlZXJ0IG5hYXIgZGUgcGFnaW5hIChkb29ybWlkZGVsIHZhbiBkZSBVUkwpIHdhYXIgZGUgZ2VicnVpa2VyIHdhcyB2b29yZGF0IGRlIGFjdGllIHdlcmQgdWl0Z2V2b2VyZC4gRGV6ZSBwYXJhbWV0ZXIgb3ZlcnNjaHJpamZ0IGFsbGUgZG9vcnN0dXVyIGluc3RlbGxpbmdlbiBlbiBkZSByZXR1cm50byBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdHZWJydWlrdCB2b29yIGVlbiB2YW4gZGUgZm9ybXVsaWVyZW4uIERlemUgcGFyYW1ldGVyIHpvcmd0IGVyIHZvb3IgZGF0IGRlIGZvcm11bGllcmVuIG5pZXQgaW5saW5lIHdvcmRlbiBnZXBsYWF0c3QgbWFhciBpbiBwbGFhdHMgZGFhcnZhbiByZXN1bHRlZXJ0IGhldCBpbiBlZW4gZm9ybXVsaWVyIGRhdCBoZXQgc3RhbmRhYXJkIGNvbnRlbnQgYmxvayB2ZXJ2YW5ndC4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0xvZ2luc2Vzc2llIHRpbWVvdXQgd2FhcnNjaHV3aW5nJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnVXcgbG9naW4gc2Vzc2llIGlzIGJpam5hIHZlcmxvcGVuLiBLbGlrIG9wIE9LIG9tIHV3IGFjdGl2aXRlaXQgb3AgZGUgd2Vic2l0ZSB0ZSBiZXZlc3RpZ2VuLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ0hlcnN0ZWwgU2Vzc2llIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ0RpdCBpcyBkZSB2ZWxkbmFhbSwgZGV6ZSBrYW4gYWFuZ2Vyb2VwZW4gd29yZGVuIGluIGVlbiBzbWFydHkuIEhldCBtYWcgYWxsZWVuIGJlc3RhYW4gdWl0IGFsZmFudW1lcmlla2UgdGVrZW5zIGVuIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXpvZWtlcnMnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3RlZXIgZWVuIG9mIG1lZXIgRkVVLWdyb2VwZW4gZGllIGRlemUgcGFnaW5hIG1vZ2VuIHppZW4nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0VyIG1vZXQgZWVuIGdyb2VwIHppam4gZ2VzZWxlY3RlZXJkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdGVlciAmZWFjdXRlOyZlYWN1dGU7bic7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnU3RhcnQgamFhcic7CiRsYW5nWydlbmRfeWVhciddID0gJ0VpbmQgamFhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0dW0nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnTWluaWF0dXVyYWZtZXRpbmcnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0dlYnJ1aWtlcnNncm9lcCBnZXdpanppZ2QnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVGUgdmVlbCBnZWJydWlrZXJzIGdlc2VsZWN0ZWVyZCB2b29yIGVlbiBidWxrIG9wZXJhdGllLi4uIFZlcmxhYWcgaGV0IGFhbnRhbCB0b3QgMjUwIG9mIG1pbmRlci4nOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGUgZ2VzZWxlY3RlZXJkZSBnZWJydWlrZXJzIHdpbHQgdmVyd2lqZGVyZW4/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ1ZlcndpamRlciBnZXNlbGVjdGVlcmRlbic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmVlciB3aWxsZWtldXJpZ2UgZ2VicnVpa2Vyc25hbWVuIHdhbm5lZXIgZXIgbmlldXdlIGdlYnJ1aWtlcnMgd29yZGVuIGFhbmdlbWFha3QnOwokbGFuZ1snbW9udGhzJ10gPSAnbWFhbmRlbic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnU3RhbmRhYXJkIGdlYnJ1aWtlciB2ZXJsb29wcGVyaW9kZSc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdFaWdlbnNjaGFwIGluc3RlbGxpbmdlbic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1ZlcndpanppbmdzaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdBbGdlbWVuZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3NpZSBlbiBjb29raWUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnVmVsZGluc3RlbGxpbmdlbic7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdEZSB2ZXJsb3JlbiBnZWJydWlrZXJzbmFhbWZsYWcga2FuIGFsbGVlbiBnZWJydWlrdCB3b3JkZW4gb3AgdmVyZWlzdGUgdmVsZGVuJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1N0YSBoZXQgZ2VicnVpayB2YW4gV1lTSVdZRyB0b2Ugdm9vciBkaXQgdGVrc3R2ZWxkJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0FhbnBhc3NlbiBnZWJydWlrZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdHZWJydWlrIGdlZW4gaW5saW5lIGZvcm11bGllcmVuJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2xpayBoaWVyIGFscyB1IHV3IGlubG9nZ2VnZXZlbnMgYmVudCB2ZXJnZXRlbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnS2xpayBoaWVyIGFscyB1IHV3IHdhY2h0d29vcmQgYmVudCB2ZXJnZXRlbic7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWsgaGllciBvbSBhZiB0ZSBtZWxkZW4nOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0tsaWsgaGllciBvbSB1dyB3YWNodHdvb3JkIGVuIGFuZGVyZSBpbmZvcm1hdGllIGluIHRlIHN0ZWxsZW4nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdHZWVmIGdlYnJ1aWtlcnN0ZW1wbGF0ZSB3ZWVyJzsKJGxhbmdbJ2V2ZW50J10gPSAnR2ViZXVydGVuaXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBHZWJldXJ0ZW5pc3Nlbm5vdGlmaWNhdGllJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ05vdGlmaWNhdGllIGUtbWFpbGFkcmVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdOb3RpZmljYXRpZSBlLW1haWwgdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnTm90aWZpY2F0aWUgZS1tYWlsb25kZXJ3ZXJwJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRS1tYWlsIG5vdGlmaWNhdGllcyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnQmlqIGFhbm1lbGRlbic7CiRsYW5nWydPbkxvZ291dCddID0gJ0JpaiBhZm1lbGRlbic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdCaWogdmVybG9vcCB2YW4gc2Vzc2llJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ0JpaiBoZXQgYWFubWFrZW4gdmFuIG5pZXV3ZSBnZWJydWlrZXInOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnQmlqIGhldCB2ZXJ3aWpkZXJlbiB2YW4gZWVuIGdlYnJ1aWtlcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdXYW5uZWVyIGdlYnJ1aWtlcnNpbnN0ZWxsaW5nZW4gd29yZGVuIGdld2lqemlnZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnV2FubmVlciBlZW4gZ2VicnVpa2Vyc2dyb2VwIHdvcmR0IGFhbmdlbWFha3QnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ1dhbm5lZXIgZWVuIGdlYnJ1aWtlcnNncm9lcCB3b3JkdCB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnRGUgdmVybG9yZW4gbG9naW4tZ2VnZXZlbnMgZnVuY3Rpb25hbGl0ZWl0IGlzIHN1Y2Nlc3ZvbCBhZmdlcm9uZC4gV2UgaGViYmVuIGVlbiB1bmlla2UgZ2VicnVpa2Vyc25hYW0gZ2V2b25kZW4gZGllIG92ZXJlZW5rb210IG1ldCBkZSBnZWdldmVucyBkaWUgdSBoZWJ0IG9wZ2VnZXZlbi4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1V3IGdlYnJ1aWtlcnNuYWFtIGlzJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIGJldmVsZW4gdSBhYW4gb20gZGV6ZSBpbmZvcm1hdGllIG9wIGVlbiB2ZWlsaWdlIG1hYXIgd2VsIHRvZWdhbmtlbGlqa2UgcGxhYXRzIG9wIHRlIHNsYWFuLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnaW5hIElEL0FsaWFzIG9tIG5hYXIgZG9vciB0ZSB2ZXJ3aWp6ZW4gbmEgaGV0IHdpanppZ2VuIHZhbiBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnaW5hIElEL0FsaWFzIG9tIG5hYXIgZG9vciB0ZSB2ZXJ3aWp6ZW4gbmEgZGUgY29kZXZlcmlmaWNhdGllIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdWZXJnZXRlbiBnZWJydWlrZXJzbmFhbSBkZXRhaWxzIHNqYWJsb29uJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnVmVyZ2V0ZW4gZ2VicnVpa2Vyc25hYW0gYmV2ZXN0aWdpbmdzIHNqYWJsb29uJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRm91dDogTWVlciBkYW4gZWVuIGdlYnJ1aWtlcnNhY2NvdW50IGtvbXQgb3ZlcmVlbiBtZXQgZGUgb3BnZWdldmVuIGVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRm91dDogS2FuIGdlZW4gb3ZlcmVlbmtvbXN0aWdlIGdlYnJ1aWtlciB2aW5kZW4nOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0ZvdXQ6IEthbiBnZWVuIGdyb2VwIHZpbmRlbiBtZXQgZGUgb3BnZWdldmVuIG5hYW0nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdBbGxlZW4gbGV6ZW4nOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0dlYnJ1aWtlciBtYW5pcHVsYXRvciBrbGFzc2UnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnQWZnZW1lbGQgZG9vciBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdMYWF0IGFsbGVlbiBpbmdlbG9nZGUgZ2VicnVpa2VycyB6aWVuJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdNZWxkIGRlemUgZ2VicnVpa2VyIGFmJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0dlYnJ1aWtlcmVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdHZWJydWlrZXJzZ2VzY2hpZWRlbmlzJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydGVyZW4nOwokbGFuZ1snY2xlYXInXSA9ICdIZXJzdGVsbGVuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGVlciBnZWJydWlrZXJzZ2VzY2hpZWRlbmlzIG5hYXIgQVNDSUkgdmFuIG1pbnN0ZW5zJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnVmVyd2lqZGVyIGdlYnJ1aWtlcnNnZXNjaGllZGVuaXMgdmFuIHJlY29yZHMgZGllIG1pbnN0ZW5zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0FjY291bnRnZWdldmVucyB2ZXJnZXRlbj8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0ZWVyIGdyb2Vwc2RlZmVuaXRpZSAoZW4gZWlnZW5zY2hhcHBlbikgbmFhciBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ09uZGVyaG91ZCBnZWJydWlrZXJzZ2VzY2hpZWRlbmlzJzsKJGxhbmdbJ3llcyddID0gJ0phJzsKJGxhbmdbJ25vJ10gPSAnTmVlJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ1Zhbic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBHZWVuIGxpbWlldCAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFZW4gdXVyIG91ZCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdaZXMgdXVyIG91ZCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUd2FhbGYgdXVyIG91ZCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VlbiBkYWcgb3VkJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0VlbiB3ZWVrIG91ZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdlZSB3ZWtlbiBvdWQnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0VlbiBtYWFuZCBvdWQnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ0RyaWUgbWFhbmRlbiBvdWQnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdaZXMgbWFhbmRlbiBvdWQnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnRWVuIGphYXIgb3VkJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dyb2VwZXJlbiBlbiBzb3J0ZXJlbic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVjb3JkcyBkaWUgb3ZlcmVlbmtvbWVuIG1ldCBoZXQgdm9sZ2VuZGUgY3JpdGVyaXVtJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnQWZsb3BlbmQgb3AgZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ09wbG9wZW5kIG9wIGdlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdBZmxvcGVuZCBvcCBkYXR1bSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdPcGxvcGVuZCBvcCBkYXR1bSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdBZmxvcGVuZCBvcCBnZWJldXJ0ZW5pc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdPcGxvcGVuZCBvcCBnZWJldXJ0ZW5pc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnQWZsb3BlbmQgb3AgSVAgQWRyZXMnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdPcGxvcGVuZCBvcCBJUCBBZHJlcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnR2VlbiBnZXNjaGllZGVuaXMgZ2V2b25kZW4nOwokbGFuZ1sncmVzZXQnXSA9ICdIZXJzdGVsbGVuJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1NvcnRlcmVuIGJpaiBJUCBhZHJlcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0dlYmV1cnRlbmlzdHlwZSBmaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnQWxsZWVuIGdlYmV1cnRlbmlzc2VuIHdlZXJnZXZlbiBkaWUgbWluZGVyIHppam4gZGFuJzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdpbmFsaW1pZXQnOwokbGFuZ1snZm9yJ10gPSAndm9vcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0dlYnJ1aWtlcnNnZXNjaGllZGVuaXNyYXBwb3J0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdPbmJla2VuZCc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgQWRyZXMnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0dlYmV1cnRlbmlzdHlwZSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdUZXJ1Zyc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IHZvbHRvb2lkJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1JlZ2VscyB1aXRnZXZvZXJkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdQcm9ibGVtZW4gb3BnZXRyZWRlbic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyB0b2VnZXZvZWdkJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLYW4gZ2VlbiBlaWdlbnNjaGFwcGVuIHZpbmRlbiB2b29yIGRlIGdyb2VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnS3Jpamd0IGdlZW4gcmVhY3RpZSB2YW4gZGUgU01UUC1zZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnSGV0IGJlc3RhbmQgKCVzKSBrYW4gbmlldCBnZXZvbmRlbiB3b3JkZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ09uZ2VsZGlnZSB3YWFyZGUgdm9vciBkcm9wZG93biBvZiBtZWVya2V1emUgdmVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0hldCB2ZWxkICVzIG92ZXJzY2hyaWpkdCBkZSBtYXhpbXVtIGxlbmd0ZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBmb3V0IChyZWdlbCAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdLYW4gZGUgZWlnZW5zY2hhcCBkZWZlbml0aWVzIG5pZXQgdmluZGVuIChpbnRlcm5lIGZvdXQpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZWVtIG1ldCBoZXQgdmVya3JpamdlbiB2YW4gZ2VicnVpa2Vyc2luZm9ybWF0aWUnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0thbiBnZWVuIGtvbG9tIHZpbmRlbiBkaWUgb3ZlcmVlbmtvbXQgbWV0IGhldCB2ZXJlaXN0ZSB2ZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnS2FuIGdlZW4gZWlnZW5zY2hhcHBlbiB2aW5kZW4gdm9vciBkZSBnZXNwZWNpZmljZWVyZGUgZ3JvZXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ0hldCBiZXN0YW5kIGFhbmdlZ2V2ZW4gdm9vciBkZSBpbXBvcnQgaXMgbmlldCBpbiBoZXQganVpc3RlIGZvcm1hYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0thbiBiZXN0YW5kIG5pZXQgb3BlbmVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRlZXIgZ2VicnVpa2VycyBpbiBkZXplIGdyb2VwJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0ludm9lciBDU1YtYmVzdGFuZCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0ludm9lciBYTUwtYmVzdGFuZCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnRlZXIgZ2VicnVpa2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRlZXIgZ2VicnVpa2Vycyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdIZXJzdGVsJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnRG9lbG1hcCB2b29yIGFmYmVlbGRpbmdlbic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0VyIGlzIGVlbiBwcm9ibGVlbSBvcGdldHJlZGVuIG1ldCBlZW4gbWlzc2VuZGUgKG1hYXIgd2VsIHZlcmVpc3RlKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ1Byb2JsZWVtIG1ldCBoZXQgcGFyc2VuIHZhbiBoZXQgZ2V2cmFhZ2RlIFhNTC1iZXN0YW5kJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdFZW4gZ3JvZXAgbWV0IGdlYnJ1aWtlcnMga2FuIG5pZXQgd29yZGVuIHZlcndpamRlcmQnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0RlemUgZ2VicnVpa2VyIGlzIHJlZWRzIGluZ2Vsb2dkJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0RlIHRla3N0IHZhbiBkZSBhZmJlZWxkaW5nIGlzIG5pZXQgY29ycmVjdCBpbmdldm9lcmQnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1N0YSBnZWJydWlrZXJzIHRvZSBtZWVyIGRhbiBlZW4ga2VlciBhYW4gdGUgbWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdCZXN0YW5kc3R5cGVuIGRpZSBnZWJydWlrZXJzIG1vZ2VuIHVwbG9hZGVuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXIgYWFubWVsZGRlIG9wIGhldCBzeXN0ZWVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2VyIHppY2ggYWZtZWxkZSBvcCBoZXQgc3lzdGVlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXJzc2Vzc2llIHZlcmxpZXAnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gbmlldXdlIGdlYnJ1aWtlciBpcyBhYW5nZW1hYWt0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGRlIHNlc3NpZSB2YW4gZGUgZ2VicnVpa2VyIHdlcmQgdmVybmlldXdkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnRXIgaXMgZWVuIGdlYmV1cnRlbmlzIGdlZ2VuZXJlZXJkIHRvZW4gZGUgZ2VicnVpa2Vyc2luZm9ybWF0aWUgaXMgYmlqZ2V3ZXJrdCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXJzYWNjb3VudCBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXJncm9lcCB3ZXJkIGFhbmdlbWFha3QnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnRXIgaXMgZWVuIGdlYmV1cnRlbmlzIGdlZ2VuZXJlZXJkIHRvZW4gZWVuIGdlYnJ1aWtlcnNncm9lcCBpcyBiaWpnZXdlcmt0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXJncm9lcCBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIGdyb2VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogRGUgdm9sZ2VuZGUgdmVsZGVuIHppam4gdm9sbGVkaWdlIHNtYXJ0eSB0ZW1wbGF0ZXMuPGJyLz5FdmVuYWxzIHJlZWRzIGJlc3RhYW5kZSBzbWFydHkgdmFyaWFiZWxlbiBlbiBwbHVnaW5zLCBkZSB7JHVzZXJuYW1lfSBlbiB7JGdyb3VwfSB2YXJpYWJlbGVuIHppam4gYmVzY2hpa2JhYXIuICA8ZW0+KERlIHskZ3JvdXB9IGtvbXQgb3ZlcmVlbiBtZXQgZGUgZWVyc3RlIGdlYnJ1aWtlcnNncm9lcCB3YWFyIGRlIGdlYnJ1aWtlciBhYW4gdG9lYmVob29yZC4pPC9lbT4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdXaWp6aWcgZGl0IHZlbGQgb20gaGV0IHdhY2h0d29vcmQgdmFuIGRlIGdlYnJ1aWtlciBvcG5pZXV3IGluIHRlIHN0ZWxsZW4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1dpanppZyBkaXQgdmVsZCBvbSBoZXQgd2FjaHR3b29yZCB2YW4gZGUgZ2VicnVpa2VyIG9wbmlldXcgaW4gdGUgc3RlbGxlbic7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdFciBiZXN0YWF0IGFsIGVlbiBnZWJydWlrZXIgbWV0IGRlemUgbmFhbSc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdHZWVuIHJlc3VsdGF0ZW4gdGVydWcgdmFuIGRlIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RlIHZhbiBnZWJydWlrZXJzbmFhbXZlbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RlIHZhbiB3YWNodHdvb3JkdmVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCB3YWNodHdvb3JkbGVuZ3RlIGlzIG9uZ2VsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IGxlbmd0ZSB2YW4gZ2VicnVpa2Vyc25hYW0gaXMgb25nZWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ09uZ2VsZGlnIGUtbWFpbGFkcmVzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2Uga3VubmVuIGdlZW4gZS1tYWlsYWRyZXMgdmluZGVuIHZvb3IgZGl0IGFjY291bnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ0ZvdXQgdGlqZGVucyBoZXQgb3BzbGFhbiB2YW4gZGUgZ2VicnVpa2Vyc2luZm9ybWF0aWUnOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnRm91dCB0aWpkZW5zIGhldCBvcHNsYWFuIHZhbiBkZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0dlYnJ1aWtlciB0b2VnZXZvZWdkICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnR2VicnVpa2VyIHZlcndpamRlcmQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnRWlnZW5zY2hhcCc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnV2FhcmRlIChyZWd1bGllcmUgZXhwcmVzc2llKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0xldCBvcDogRGV6ZSB2ZWxkZW4gaGViYmVuIGludmxvZWQgb3AgZGUgZ3Jvb3R0ZSB2YW4gZGUgaW52b2VydmVsZGVuIHZvb3IgZm9ybXVsaWVyZW4uIFZlcmxhZ2VuIHZhbiBkaXQgZ2V0YWwgb3AgZWVuIGJlc3RhYW5kZSB3ZWJzaXRlIHdvcmR0IG5pZXQgYWFuZ2VyYWRlbic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgbW9kdWxlIGluc3RlbGxpbmdlbiB3aWx0IGFhbnBhc3Nlbj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0UtbWFpbGFkcmVzIGlzIGFsIGluZ2VicnVpa3QnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnR2VicnVpayBjb29raWVzIG9tIGRlIGxvZ2luZ2VnZXZlbnMgdGUgb250aG91ZGVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnTmFhbSB2YW4gZGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnU3RhIHR3ZWUga2VlciBoZXR6ZWxmZGUgZS1tYWlsYWRyZXMgdG9lJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0hldCBlLW1haWxhZHJlcyBpcyBkZSBnZWJydWlrZXJzbmFhbSc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoU3RhIG1lZXJkZXJlIGdlYnJ1aWtlcnMgbWV0IGhldCB6ZWxmZGUgZS1tYWlsYWRyZXMgdG9lKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGdlYnJ1aWtlcnMgZS1tYWlsYWRyZXMgaXMgZGUgZ2VicnVpa2Vyc25hYW0gLS0gZ2VicnVpayBkaXQgbmlldCBpbiBjb21iaW5hdGllIG1ldCBkZSBvcHRpZSAmcXVvdDtTdGEgdHdlZSBrZWVyIGhldHplbGZkZSBlLW1haWxhZHJlcyB0b2UmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1N0YSBkdWJiZWxlICYjMDM5O3dhY2h0d29vcmQgdmVyZ2V0ZW4mIzAzOTstbWVsZGluZ2VuIHRvZT8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKFN0YSB0b2UgZ2VicnVpa2VycyBlZW4gd2FjaHR3b29yZCByZXNldCBhYW4gdGUgdnJhZ2VuLCBvb2sgYWxzIHplIGRlIHZvcmlnZSBuaWV0IGhlYmJlbiBiZW51dCknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdHZWJydWlrIEZyb250RW5kVXNlciBzcGVjaWZpZWtlIHJlY2h0ZW4/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWFsIHppam4gZGUgRkVVLXJlY2h0ZW4gaGV0emVsZmRlIGFscyBkZSByZWNodGVuIGluIGhldCBhZG1pbmlzdHJhdG9yIGdlZGVlbHRlIHpvYWxzIEdlYnJ1aWtlciB0b2V2b2VnZW4sIEdyb2VwIHRvZXZvZWdlbiwgZXRjLiBBbHMgdSBkZXplIG9wdGllIHNlbGVjdGVlcnQga29tZW4gZXIgYXBhcnRlIHJlY2h0ZW4gdm9vciBoZXQgYmVoZWVyIHZhbiBGRVUtZ2VicnVpa2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdLYW4gaGV0IGdlJnV1bWw7cGxvYWRlIGJlc3RhbmQgbmlldCB2aW5kZW4gKGludGVybmUgZm91dCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdFciB3YXMgZWVuIHByb2JsZWVtIG1ldCBoZXQgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZC4gUHJvYmVlciBoZXQgbm9nIGVlbiBrZWVyJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1UgaGVidCBnZWVuIGdlYnJ1aWtlcnNuYWFtIGluZ2V2b2VyZCc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdVIGhlYnQgdXcgZS1tYWlsYWRyZXMgbmlldCBpbmdldm9lcmQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnVSBoZWJ0IGdlZW4gd2FjaHR3b29yZCBpbmdldm9lcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kZ2VicnVpa2VyIGFmZ2VtZWxkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kZ2VicnVpa2VyIGFhbmdlbWVsZCc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPldFRVMgVk9PUlpJQ0hURzwvYj4gV2FubmVlciB1IGVpZ2Vuc2NoYXBwZW4gdmFuIGVlbiB2ZWxkIGRpZSBpbiBnZWJydWlrIGlzIHdpanppZ3QgZGFuIGthbiB1IGRlemUgd2Vic2l0ZSBzY2hhZGUgdG9lYnJlbmdlbiEgPGk+KG1ldCBuYW1lIGFscyB1IHZlbGRhZm1ldGluZ2VuIGtsZWluZXIgbWFha3QpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdEZXplIGZ1bmN0aW9uYWxpdGVpdCB3ZXJrdCBuaWV0IG9wIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ01hYWsgZ2VlbiB2ZWxkIGFhbiB2b29yIGRlIGVpZ2Vuc2NoYXAgZ2VicnVpa2Vyc25hYW0gb2Ygd2FjaHR3b29yZC4gRGV6ZSBlaWdlbnNjaGFwcGVuIHppam4gYWwgcmVlZHMgaW5nZWJvdXdkIGluIGRlIEZyb250RW5kVXNlcnMgbW9kdWxlLic7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZWVyIGdlYnJ1aWtlcnMgbmFhciBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZWVyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGVlcic7CiRsYW5nWydhZG1pbiddID0gJ0JlaGVlcic7CiRsYW5nWydlZGl0cHJvcCddID0gJ1dpanppZyBlaWdlbnNjaGFwOiA8ZW0+JXM8L2VtPic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIGxlbmd0ZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQWFuZ2VtYWFrdCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0ZXJlbiBvcCc7CiRsYW5nWydzb3J0J10gPSAnU29ydGVyaW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0dlYnJ1aWtlcnMgaW4gZGUgZ2VzZWxlY3RlZXJkZSBncm9lcChlbiknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXRlZXIgcmVzdWxhdGVuIG5hYXInOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnS2FuIGdlZW4gRS1tYWlsIHZlbGQgdmluZGVuIHZvb3IgZGV6ZSBnZWJydWlrZXIuIE5lZW0gY29udGFjdCBvcCBtZXQgdXcgc3lzdGVlbWJlaGVlcmRlci4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdpbmEgSUQvQWxpYXMgdm9vciBXYWNodHdvb3JkIFZlcmdldGVuLWZvcm11bGllcic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2luYSBJRC9BbGlhcyB2b29yIFdpanppZyBJbnN0ZWxsaW5nZW4tZm9ybXVsaWVyJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnaW5hIElEL0FsaWFzIG9tIG5hYXIgdGUgdmVyd2lqemVuIG5hIGFhbm1lbGRlbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2luYSBJRC9BbGlhcyBvbSBuYWFyIHRlIHZlcndpanplbiBuYSBhZm1lbGRlbiAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnRlZXIgdm9sZ29yZGUnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnRWVuIGFhbnRhbCBnZWJydWlrZXJzIHppdHRlbiBpbiBoZXQgcHJvY2VzIHZhbiBoZXQgaGVyc3RlbGxlbiB2YW4gdmVyZ2V0ZW4gd2FjaHR3b29yZGVuLiBPcCBkaXQgbW9tZW50IGlzIGRpdCBhYW50YWw6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnVmVyd2lqZGVyIGFsbGUgaXRlbXMgdmFuIG1lZXIgZGFuIGVlbiB3ZWVrIG91ZCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdWZXJ3aWpkZXIgYWxsZSBpdGVtcyB2YW4gbWVlciBkYW4gZWVuIG1hYW5kIG91ZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdWZXJ3aWpkZXJlIGFsbGUgcmVjb3Jkcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnV2VldCB1IGhldCB6ZWtlcj8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdFciBpcyBlZW4gb25nZWxkaWdlIGNvZGUgaW5nZXZvZXJkLCBwcm9iZWVyIGhldCBvcG5pZXV3JzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdFZW4gdGlqZGVsaWprZSBjb2RlIHZvb3IgdXcgZ2VicnVpa2Vyc2lkIGtvbiBuaWV0IHdvcmRlbiBnZXZvbmRlbiBpbiBkZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1NqYWJsb29uIGdlYnJ1aWt0IGZvb3IgaGV0IHdlZXJnZXZlbiB2YW4gY29udHJvbGVmb3JtdWxpZXInOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1NqYWJsb29uIGdlYnJ1aWt0IHZvb3IgZGUgd2FjaHR3b29yZCB2ZXJnZXRlbiBlLW1haWwnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1Ugb2YgaWVtYW5kIGFuZGVycyBoZWVmdCBhbCBlZXJkZXIgZ2Vwcm9iZWVyZCBvbSBlZW4gd2FjaHR3b29yZCBoZXJzdGVsIGFhbiB0ZSB2cmFnZW4gdm9vciBkaXQgYWNjb3VudC4gQ29udHJvbGVlciB1dyBlLW1haWwsIHdlbGxpY2h0IGhlZWZ0IHUgZGUgZS1tYWlsIG1ldCBpbnN0cnVjdGllcyBhbCByZWVkcyBvbnR2YW5nZW4gb3ZlciBob2UgdSB1dyB3YWNodHdvb3JkZW4gb3BuaWV1dyBrdW50IGluc3RlbGxlbi4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGZvdXQnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVSBvbnR2YW5ndCBkaXQgYmVyaWNodCBvbWRhdCBpZW1hbmQgb3Agb256ZSBzaXRlIGhlZWZ0IGFhbmdlZ2V2ZW4gZGF0IHUgdXcgd2FjaHR3b29yZCBiZW4gdmVyZ2V0ZW4uIEFscyBkaXQgaGV0IGdldmFsIGlzLCBsZWVzIGRhbiBkZSBvbmRlcnN0YWFuZGUgaW5zdHJ1Y3RpZXMuIEFscyB1IGdlZW4gaWRlZSBoZWVmdCB3YWFyb20gdSBkaXQgYmVyaWNodCBvbnR2YW5ndCwgZGFuIGt1bnQgdSBkaXQgYmVyaWNodCB6b25kZXIgcHJvYmxlbWVuIHZlcndpamRlcmVuIGVuIGJlZGFua2VuIHdlIHUgdm9vciB1dyB0aWpkLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZGUnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRGUgdm9sZ2VuZGUgY29kZSBpcyB3aWxsZWtldXJpZyBhYW5nZW1hYWt0IG9tIHRlIGNvbnRyb2xlcmVuIG9mIGhldCBlY2h0IG9tIHV3IGdlYnJ1aWtlcnNhY2NvdW50IGdhYXQuIEFscyB1IG9wIGRlIG9uZGVyc3RhYW5kZSBsaW5rIGtsaWt0IGRhbiBrb210IHUgb3AgZGUgd2VicGFnaW5hIHdhYXIgZGV6ZSBjb2RlIGFsIHJlZWRzIHZvb3IgdSBpcyBpbmdldm9lcmQuIE1vY2h0IGRhdCBuaWV0IGhldCBnZXZhbCB6aWpuLCBkYW4gaXMgdXcgY29kZTonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdBbHMgdSBvcCBkZSB2b2xnZW5kZSBsaW5rIGtsaWt0IGtvbXQgdSBvcCBkZSB3ZWJwYWdpbmEgd2FhciB1IGRlIGJvdmVuc3RhYW5kZSBjb2RlIGt1bnQgaW52b2VyZW4gZW4gdSB2ZXJ2b2xnZW5zIHV3IHdhY2h0d29vcmQgb3BuaWV1dyBrdW50IGluc3RlbGxlbjonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1dhY2h0d29vcmQgdmVyZ2V0ZW4nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdLYW4gZGUgQ01TTWFpbGVyIG1vZHVsZSBuaWV0IHZpbmRlbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdFciBpcyBlZW4gRS1tYWlsIHZlcnpvbmRlbiBtZXQgaW5zdHJ1Y3RpZXMgbmFhciAlcyBvdmVyIGhldCBvcG5pZXV3IGluc3RlbGxlbiB2YW4gdXcgd2FjaHR3b29yZC4gQmVkYW5rdCc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1UgYmVudCB1dyB3YWNodHdvb3JkIGt3aWp0IG9mIHZlcmdldGVuLiBUeXBlIGhpZXIgdXcgZ2VicnVpa2Vyc25hYW0gZW4gYWxzIHdlIGRlemUga3VubmVuIHZpbmRlbiB6dWxsZW4gd2UgZWVuIEUtbWFpbCBuYWFyIHUgdmVyemVuZGVuIG1ldCBpbnN0cnVjdGllcyBvdmVyIGhvZSB1IHV3IHdhY2h0d29vcmQgb3BuaWV1dyBrdW50IGluc3RlbGxlbic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1ZlcmdldGVuIHdhY2h0d29vcmQgc2phYmxvb24nOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnVmVyZ2V0ZW4gZ2VicnVpa2Vyc25hYW0gc2phYmxvb24nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnRWlnZW5zY2hhcCAlcyBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdFaWdlbnNjaGFwcGVuIGdldm9uZGVuJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdFaWdlbnNjaGFwIHRvZXZvZWdlbic7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnRWVuIHZlcnBsaWNodCB2ZWxkICglcykgaXMgbGVlZyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1ZvZXIgZWVuIG5pZXV3IHdhY2h0d29vcmQgaW4gb20gdXcgd2FjaHR3b29yZCB0ZSB2ZXJhbmRlcmVuJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnSGV0IHppZXQgZXIgbmlldCBuYWFyIHVpdCBkYXQgdSBiZW50IGFhbmdlbWVsZCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmF0aWUnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdEaXQgYWNjb3VudCBpcyB2ZXJsb3Blbic7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVmVya2VlcmRlIEUtbWFpbCBhZHJlcyBvcGJvdXcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdPbmdlbGRpZ2UgdmVybG9vcGRhdHVtLiBEaXQga2FuIHN5c3RlZW1nZXJlbGF0ZWVyZCB6aWpuLiBQcm9iZWVyIGVlbiBqYWFyIGVlcmRlci4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0ZvdXQgYmlqIGluc3RlbGxlbiB2YW4gZWlnZW5zY2hhcCAlcyB2b29yIGdlYnJ1aWtlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ09uZ2VsZGlnZSBncm9lcCBJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1ZlcmJvcmdlbiB2ZWxkIG1hcmtlcmluZyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnVmVyYm9yZ2VuIHZlbGQga2xldXInOwokbGFuZ1snaGlkZGVuJ10gPSAnVmVyYm9yZ2VuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdFZW4gZWlnZW5zY2hhcCBtZXQgZGV6ZSBuYWFtIGJlc3RhYXQgYWwgcmVlZHMnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnR2VlbiBlaWdlbnNjaGFwcGVuIGluZ2VzdGVsZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0VyIHppam4gZ2VlbiBlaWdlbnNjaGFwcGVuIGdlc2VsZWN0ZWVyZCB2b29yIGRlemUgZ3JvZXAuIEVlbiBncm9lcCBtb2V0IHRlbiBtaW5zdGUgJmVhY3V0ZTsmZWFjdXRlO24gZWlnZW5zY2hhcCBoZWJiZW4uJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnR2VlbiBncm9lcGVuIGFhbmdlbWFha3QnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm9lcGVuIGdldm9uZGVuJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdMaWRtYWF0c2NoYXAgdmFuIG1pbnN0ZW5zIGVlbiBncm9lcCBpcyB2ZXJlaXN0JzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdWZXJlaXMgbGlkbWFhdHNjaGFwIHZhbiBtaW5zdGVucyBlZW4gZ3JvZXAnOwokbGFuZ1snYmFjayddID0gJ1RlcnVnJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBpcyBlZW4gdmVyZWlzdCB2ZWxkJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrZWVyIHZlcmVpc3RlIHZlbGRlbiBtZXQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHZlcmVpc3RlIHZlbGRlbiBpbic7CiRsYW5nWyduZXh0J10gPSAnVm9sZ2VuZGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdFZW4gZ3JvZXAgbWV0IGVlbiBuYWFtIGRpZSByZWVkcyBiZXN0YWF0JzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnVmVyZWlzdCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmVlbCc7CiRsYW5nWydvZmYnXSA9ICdVaXQnOwokbGFuZ1snc2l6ZSddID0gJ0dyb290dGUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIgLz4oTWF4aW11bSBncm9vdHRlIHZhbiBlbGtlIGRlbWVudGllIHZhbiBkZSBhZmJlZWxkaW5nIGluIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnTGVuZ3RlJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnIgLz4odGVrZW5zIGluIGRlIHRla3N0aW52b2VyKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnRHJvcGRvd24gbW9nZWxpamtoZWRlbiwgZ2VzY2hlaWRlbiBkb29yIHJlZ2VsZWluZGVuLiBXYWFyZGVuIGt1bm5lbiBsb3MgdmFuIGRlIHRla3N0IG1ldCBhID0gdGVrZW4uIEJpanZvb3JiZWVsZDogVnJvdXc9dic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpbyBidXR0b24gbGFiZWxzLCBnZXNjaGVpZGVuIGRvb3IgcmVnZWxlaW5kZW4uIFdhYXJkZW4ga3VubmVuIGxvcyB2YW4gZGUgdGVrc3QgbWV0IGEgPSB0ZWtlbi4gQmlqdm9vcmJlZWxkOiBWcm91dz12JzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdWZWxkc3RhdHVzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1ZyYWFnIGluIFZlcmdldGVuPGJyIC8+R2VicnVpa2Vyc25hYW0nOwokbGFuZ1sndGV4dCddID0gJ1Rla3N0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnVmlua3Zha2plJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGktc2VsZWN0aWVsaWpzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBLbm9wcGVuJzsKJGxhbmdbJ2ltYWdlJ10gPSAnQWZiZWVsZGluZyc7CiRsYW5nWydlbWFpbCddID0gJ0UtbWFpbCBhZHJlcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1Rla3N0Z2ViaWVkJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxrb20nOwokbGFuZ1snbG9nb3V0J10gPSAnQWZtZWxkZW4nOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ0dlYnJ1aWsgZGV6ZSBncm9lcHNuYWFtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1dpanppZyBtaWpuIGluc3RlbGxpbmdlbic7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0Fhbm1lbGRpbmcgbWlzbHVrdCAtIE9uZ2VsZGlnZSBnZWJydWlrZXJzbmFhbSBvZiB3YWNodHdvb3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ0Fhbm1lbGRlbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0Fhbm1lbGRidXR0b24gbGFiZWwnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS1tYWlsIGFkcmVzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1dhY2h0d29vcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdPbnRob3VkIG1paiBvcCBkZXplIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmVyZW4nOwokbGFuZ1snZm9yZ290cHcnXSA9ICdXYWNodHdvb3JkIHZlcmdldGVuPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSB2ZXJnZXRlbj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFhcmQgd2FhcmRlbic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1NqYWJsb29uJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0thbiBnZWVuIGluZm9ybWF0aWUgdmluZGVuIHZvb3IgZGV6ZSBnZWJydWlrZXInOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RlIGdlYnJ1aWtlcnNuYWFtICglcykgaXMgYWwgcmVlZHMgaW4gZ2VicnVpayc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnR2VicnVpayBTTVRQIG9tIGhldCBlLW1haWxhZHJlcyB0ZSBjb250cm9sZXJlbj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSB3YWNodHdvb3JkbGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gd2FjaHR3b29yZGxlbmd0ZSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIGdlYnJ1aWtlcnNuYWFtbGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltdW0gZ2VicnVpa2Vyc25hYW1sZW5ndGUnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnU2Vzc2llIHRpbWUtb3V0IChzZWNvbmRlbiknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ0dlYnJ1aWsgY29va2llcyBvbSBsb2dpbnNlc3NpZSBhY3RpZWYgdGUgaG91ZGVuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnU3RhIEUtbWFpbHJlZ2lzdHJhdGllIHRvZSc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnU3RhbmRhYXJkIGdyb2VwIHZvb3IgbmlldXdlIGdlYnVpa2Vycyc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ1dpanppZyBpbnN0ZWxsaW5nZW50ZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnV2FjaHR3b29yZGVuIGtvbWVuIG5pZXQgb3ZlcmVlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdPbmdlbGRpZ2UgZ2VidWlrZXJzbmFhbSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdPbmdlbGRpZyB3YWNodHdvb3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnV2lqemlnIGdlYnJ1aWtlcic7CiRsYW5nWyd2YWxpZCddID0gJ0dlbGRpZyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0dlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdEZXplIGdlYnJ1aWtlciBpcyB2YW4gZ2VlbiBlbmtlbGUgZ3JvZXAgbGlkJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdHZWVuIGVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdQb2dpbmcgdG90IGhldCBpbXBvcnRlcmVuIHZhbiBkdWJiZWxlIGVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1sndmFsdWUnXSA9ICdXYWFyZGUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvZXBlbic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWlnZW5zY2hhcHBlbic7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hYW0gZWlnZW5zY2hhcCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdXYWFyZGUgZWlnZW5zY2hhcCc7CiRsYW5nWydhZGQnXSA9ICdUb2V2b2VnZW4nOwokbGFuZ1snaGlzdG9yeSddID0gJ0dlc2NoaWVkZW5pcyc7CiRsYW5nWydlZGl0J10gPSAnQWFucGFzc2VuJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdWZXJsb29wdCc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZpY2VlciBkYXR1bSc7CiRsYW5nWycxMmhycyddID0gJzEyIHV1cic7CiRsYW5nWycyNGhycyddID0gJzI0IHV1cic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHV1cic7CiRsYW5nWycxd2VlayddID0gJzEgd2Vlayc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHdla2VuJzsKJGxhbmdbJzFtb250aCddID0gJzEgbWFhbmQnOwokbGFuZ1snM21vbnRocyddID0gJzMgbWFhbmRlbic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBtYWFuZGVuJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBqYWFyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTm9vaXQnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1dhY2h0d29vcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdPcG5pZXV3JzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFciBiZXN0YWF0IGFsIGVlbiBncm9lcCBtZXQgZGV6ZSBuYWFtJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1dpanppZyBncm9lcCc7CiRsYW5nWydzdWJtaXQnXSA9ICdPcHNsYWFuJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXJlbic7CiRsYW5nWydkZWxldGUnXSA9ICdWZXJ3aWpkZXJlbic7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgZGl0IGRlIGp1aXN0ZSBpbnN0ZWxsaW5nZW4gemlqbiB2b29yIGRlemUgZ3JvZXA/XG5IZXQgdWl0c2NoYWtlbGVuIHZhbiBlZW4gZWlnZW5zY2hhcCB6YWwgZ2VlbiBlbmtlbGUgdmVybWVsZGluZyB2YW4gZGUgZWlnZW5zY2hhcHBlbnRhYmVsIHZlcndpamRlcmVuIHZhbiBkZXplIGdyb2VwL2dlYnJ1aWtlci4gWmUgenVsbGVuIGFsbGVlbiBuaWV0IGJlc2NoaWtiYWFyIHppam4uJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBncm9lcCB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgZWlnZW5zY2hhcCB2b2xsZWRpZyB3aWx0IHZlcndpamRlcmVuP1xuQWxzIHUgZGF0IGRvZXQgZGFuIHp1bGxlbiB0ZXZlbnMgYWxsZSBnZWJydWlrZXJzZ2VnZXZlbnMgdmFuIGRlemUgZWlnZW5zY2hhcCBvb2sgdmVyd2lqZGVyZCB3b3JkZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ09uZ2VsZGlnZSBwYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05hYW0nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVlbSBiaWogaGV0IHRvZXZvZWdlbiB2YW4gZWlnZW5zY2hhcCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V2b2VnZW4gdmFuIGdyb2Vwc3JlbGF0aWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V2b2VnZW4gdmFuIGdyb2VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V3aWp6ZW4gdmFuIGdyb2VwIGFhbiBnZWJydWlrZXInOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZWVtIGJpaiBoZXQgdmVyd2lqZGVyZW4gdmFuIGVlbiBlaWdlbnNjaGFwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnS2FuIGdlZW4gRS1tYWlsIGFkcmVzIHZpbmRlbic7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnR2VlbiBzY2hyaWpmcmVjaHRlbiBpbiBkZSBkb2VsbWFwJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdPbmdlbGRpZ2UgcGFyYW1ldGVycyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0thbiBnZWVuIGVua2VsZSBncm9lcCB2aW5kZW4nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdUb2VwYXNzZW4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdHZWJydWlrZXJzbmFhbSByZWd1bGllcmUgZXhwcmVzc2llJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyaWp2aW5nJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dyb2Vwc3NuYWFtJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0dlZW4gdG9lZ2FuZyc7CiRsYW5nWydlcnJvciddID0gJ0ZvdXQnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdWb2VnIGdyb2VwIHRvZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGVlciBncm9lcCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnVm9lZyBnZWJydWlrZXIgdG9lJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdHZWJydWlrZXJzIGdldm9uZGVuIGRpZSB2b2xkb2VuIGFhbiBoZXQgY3JpdGVyaXVtJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3JvZXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3RlZXIgZ3JvZXAnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aWV0ZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdBZm1lbGR0ZW1wbGF0ZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0Fhbm1lbGR0ZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sndXNlcnMnXSA9ICdHZWJydWlrZXJzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgQmVoZWVyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU3RhIGdlYnJ1aWtlcnMgdG9lIGluIHRlIGxvZ2dlbiBvcCBkZSBmcm9udGVuZCB2YW4gdXcgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhYXJkIHZvb3JwYWdpbmEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xhYXRzdCBiZXpvY2h0ZSBwYWdpbmEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5kZXJlIHBhZ2luYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1ZvZXIgZGUgdGVrc3QgdmFuIGRlIGFmYmVlbGRpbmcgaW4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My42MDYwMTY0MzQuMTM4NTkxNzEwNy4xMzg1OTE3MTA3LjEzODU5MTcxMDcuMSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEzODU5MTcxMDcuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkeXRvd2FuaWUgdcW8eXRrb3duaWthJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnTmllIHdzdGF3aWFqIGZvcm11bGFyenkgaW5saW5lICh3IHRyZcWbY2kpJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2xpa25paiB0dXRhaiwgZ2R5IG5pZSBwYW1pxJl0YXN6IHN3b2ljaCBkYW55Y2ggZG8gemFsb2dvd2FuaWEnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWtuaWogdHV0YWosIGplxZtsaSBuaWUgcGFtacSZdGFzeiBzd29qZWdvIGhhc8WCYSc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuaWogdHV0YWosIGJ5IHNpxJkgd3lsb2dvd2HEhyc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa25paiB0dXRhaiBieSB6bWllbmnEhyBzd29qZSBoYXPFgm8gbHViIGlubmUgZGFuZSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcG9kZ2zEhWR1IHXFvHl0a293bmlrYSc7CiRsYW5nWydldmVudCddID0gJ1pkYXJ6ZW5pZSc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnWmF3aWFkb21pZW5pZSBvIHpkYXJ6ZW5pdSBGRVUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnQWRyZXMgZW1haWwgZG8gemF3aWFkb21pZW5pYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBtYWlsYSBwb3dpYWRhbWlhasSFY2Vnbyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdUeXR1xYIgbWFpbGEgcG93aWFkYW1pYWrEhWNlZ28nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdQb3dpYWRvbWllbmllIGVtYWlsJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdHZHkgemFsb2dvd2FuaWUnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdHZHkgd3lsb2dvd2FuaWUnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnR2R5IHd5Z2FzYSBzZXNqYSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdHZHkgc3R3b3J6b255IG5vd3kgdcW8eXRrb3duaWsnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnR2R5IHXFvHl0a293bmlrIHNrYXNvd2FueSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdHZHkgem1pZW5pb25lIHVzdGF3aWVuaWEgdcW8eXRrb3duaWthJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdHZHkgc3R3b3J6b25hIGdydXDEmSB1xbx5dGtvd25payZvYWN1dGU7dyc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnR2R5IHNrYXNvd2FubyBncnVwxJknOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdGdW5rY2pvbmFsbm/Fm8SHIHphZ3ViaW9ueWNoIGRhbnljaCBsb2dvd2FuaWEgdXJ1Y2hvbWlvbmEuIFpuYWxlemlvbm8gdW5pa2FsbnkgbG9naW4sIGt0Jm9hY3V0ZTtyeSBwYXN1amUgZG8gVHdvaWNoIGRhbnljaC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1R3b2phIG5hendhIHXFvHl0a293bmlrYSB0bzonOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnUG9sZWNhbXksIMW8ZWJ5IHRhIGluZm9ybWFjamEgem9zdGHFgmEgemFub3Rvd2FuYSB3IGJlenBpZWN6bnltLCBhbGUgem5hbnltIENpIG1pZWpzY3UhJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRCBzdHJvbi9BbGlhcyBkbyBwcnplc2tvY3plbmlhIHBvIHptaWFuaWUgdXN0YXdpZcWEJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0lkLXN0cm9ueS9BbGlhcy1zdHJvbnkgZG8gcHJ6ZXNrb2N6ZW5pYSBwbyB3ZXJ5ZmlrYWNqaSBrb2R1IConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdTemFibG9uIHpndWJpb25lZ28gbG9naW51JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBwb3R3aWVyZHplbmlhIHBvIHpndWJpb255bSBsb2dpbmllJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnQsWCxIVkOiB3acSZY2VqIG5pxbwgamVkbm8ga29udG8gc3BlxYJuaWEgd2FydW5raSB3cHJvd2Fkem9uZSBkbyBzeXN0ZW11JzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0LFgsSFZDogbmllIG1vZ8SZIHpuYWxlxbrEhyBwYXN1asSFY2VnbyB1xbx5dGtvd25pa2EnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0LFgsSFZDogbmllIG1vZ8SZIHpuYWxlxbrEhyB0YWtpZWogZ3J1cHknOwokbGFuZ1sncmVhZG9ubHknXSA9ICdUeWxrbyBkbyBvZGN6eXR1JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLbGFzYSBvcGVyYWNqaSB1xbx5dGtvd25pa2EgKFVzZXIgTWFuaXB1bGF0b3IgQ2xhc3MpJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ1d5bG9nb3dhbnkgcHJ6ZXogYWRtaW5pc3RyYXRvcmEnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1Bva2F6dWogdHlsa28gemFsb2dvd2FueWNoIHXFvHl0a293bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdXeWxvZ3VqIHRlZ28gdcW8eXRrb3duaWthJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0NlY2h5IGtvbnQnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdIaXN0b3JpYSc7CiRsYW5nWydleHBvcnQnXSA9ICdFa3Nwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnV3ljennFm8SHJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ1phcGlzeiBoaXN0b3JpxJkgdyB0cnliaWUgQVNDSUkgeiBwcnplZHppYcWCdSBjemFzdSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1d5Y3p5xZvEhyBoaXN0b3JpxJkgeiBvc3RhdG5pZWdvIG9rcmVzdSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdaYXBvbW5pYW55IGxvZ2luPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0dWogZGVmaW5pY2plIGdydXB5IChpIGNlY2h5KSBkbyBmb3JtYXR1IFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnWmFyesSFZHphbmllIGhpc3RvcmnEhSc7CiRsYW5nWyd5ZXMnXSA9ICdUYWsnOwokbGFuZ1snbm8nXSA9ICdOaWUnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAneic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBCZXogbGltaXR1ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJzEgZ29kemlueSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICc2IGdvZHppbic7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICcxMiBnb2R6aW4nOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICcxIGRuaWEnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnMSB0eWdvZG5pYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnMiB0eWdvZG5pJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICcxIG1pZXNpxIVjYSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnMyBtaWVzacSZY3knOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICc2IG1pZXNpxJljeSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICcxIHJva3UnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cG93YW5pZSBpIHNvcnRvd2FuaWUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1Jla29yZHksIGt0Jm9hY3V0ZTtyZSBzcGXFgmFuaWFqxIUga3J5dGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdOYXp3YSB1xbx5dGtvd25pa2EgLSBtYWxlasSFY28nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ05hendhIHXFvHl0a293bmlrYSAtIHJvc27EhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgLSByb3NuxIVjbyc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUeXAgemRhcnplbmlhIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnVHlwIHpkYXJ6ZW5pYSAtIHJvc27EhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0FkcmVzIElQIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQWRyZXMgSVAgLSByb3NuxIVjbyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTmllIG9kbm90b3dhbm8gxbxhZG55Y2ggemRhcnplxYQnOwokbGFuZ1sncmVzZXQnXSA9ICdXeWN6ecWbxIcnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3J1cHVqIHBvZCBhZHJlc2llIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHIgdHlwJm9hY3V0ZTt3IHpkYXJ6ZcWEJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1d5xZt3aWV0bCB0eWxrbyB6ZGFyemVuaWEgeiBvc3RhdG5pZWdvIG9rcmVzdSc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnTGltaXQgcmVrb3JkJm9hY3V0ZTt3IG5hIHN0cm9uaWUnOwokbGFuZ1snZm9yJ10gPSAnZGxhJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnUmFwb3J0IGhpc3RvcmlpJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOaWV6bmFuZSc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnQWRyZXMgSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1R5cCB6ZGFyemVuaWEnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdQb3dyJm9hY3V0ZTt0JzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdPcGVyYWNqYSBpbXBvcnR1IHpha2/FhGN6ecWCYSBzacSZIHN1a2Nlc2VtJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ3ByemV0d29yem9uZSBsaW5pZSc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnT2Rrcnl0ZSBixYLEmWR5JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdEb2RhbmUgcmVrb3JkeSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTmllIG1vZ8SZIHpuYWxlxbrEhyBjZWNoeSBncnVweSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ05pZSBtb2fEmSB1enlza2HEhyBvZHBvd2llZHppIHogc2Vyd2VyYSBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ1BsaWsgbyBuYXp3aWUgKCVzKSBuaWUgem9zdGHFgiBvZG5hbGV6aW9ueSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnTmllcHJhd2lkxYJvd2Egd2FydG/Fm8SHIGRsYSB3YXJ0b8WbY2kgbHViIGxpc3R5ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnUG9sZSAlcyBwcnpla3JhY3phIG1ha3N5bWFsbsSFIGTFgnVnb8WbxIcnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdCxYLEhWQgcHJ6eSBpbXBvcmNpZSAobGluaWEgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnTmllIG1vxbxuYSBwb2JyYcSHIGNlY2ggKGLFgsSFZCB3ZXduxJl0cnpueSBtb2R1xYJ1KSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHByenkgdXN0YXdpYW5pdSBpbmZvcm1hY2ppIG8gdcW8eXRrb3duaWt1JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdOaWUgb2RuYWxlemlvbm8gxbxhZG5laiBrb2x1bW55LCBrdCZvYWN1dGU7cmEgc3BlxYJuaWEgd2FydW5raSAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05pZSBvZG5hbGV6aW9ubyBjZWNoIGRsYSB3c2themFuZWogZ3J1cHknOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1BsaWsgd3NrYXphbnkgZG8gaW1wb3J0dSBuaWUgemFjaG93dWplIHd5bWFnYW5lZ28gZm9ybWF0dSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnTmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0dWogdcW8eXRrb3duaWsmb2FjdXRlO3cgZG8gZ3J1cHknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnxblyJm9hY3V0ZTtkxYJvd3kgcGxpayBDU1YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdQbGlrIFhNTCBkbyBvZGN6eXR1JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0Vrc3BvcnR1aiB1xbx5dGtvd25payZvYWN1dGU7dyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnR1aiB1xbx5dGtvd25pa293JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1d5Y3p5xZvEhyc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0RvY2Vsb3dhIMWbY2llxbxrYSBwbGlrJm9hY3V0ZTt3IHogb2JyYXprYW1pJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnUG9qYXdpxYIgc2nEmSBwcm9ibGVtIHogYnJha3VqxIVjeW0gKGFsZSB3eW1hZ2FueW0pIHdncnl3YW5pZW0gcGxpayZvYWN1dGU7dyc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnTmllIG1vZ8SZIHByemV0d29yennEhyB3c2themFuZWdvIHBsaWt1IFhNTCAoesWCeSBmb3JtYXQ/KSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTmllIG1vxbxuYSBza2Fzb3dhxIcgZ3J1cHksIGt0Jm9hY3V0ZTtyYSBtYSBwcnp5cGlzYW55Y2ggdcW8eXRrb3duaWsmb2FjdXRlO3cnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1RlbiB1xbx5dGtvd25payBqdcW8IGplc3QgemFsb2dvd2FueSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZWtzdCB6IG9icmF6a2EgbmllIHpvc3RhxYIgcHJ6ZXBpc2FueSBwb3ByYXduaWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Bvencmb2FjdXRlO2wgdcW8eXRrb3duaWtvbSBsb2dvd2HEhyBzacSZIHdpxJljZWogbmnFvCByYXonOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ1JvenN6ZXJ6ZW5pZSBwbGlrJm9hY3V0ZTt3IHogb2JyYXprYW1pLCBrdCZvYWN1dGU7cmUgdcW8eXRrb3duaWN5IG1vZ8SFIHdncnl3YcSHJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwYSBzeXN0ZW11IENNUyc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIE5hc3TEmXB1asSFY2Ugem5hY3puaWtpIG1vZ8SFIHpvc3RhxIcgd3lrb3J6eXN0YW5lIHcgdHljaCBwb2xhY2g6IHskdXNlcm5hbWV9LCB7JGdyb3VwfS4gVcW8eXdhasSFYyB6bmFjem5pa2EgeyRncm91cH0sIHN5c3RlbSBwb2RtaWVuaSBuYXp3xJkgcGllcndzemVnbyBjesWCb25rYSBncnVweSwgZG8ga3Qmb2FjdXRlO3JlaiB1xbx5dGtvd25payBuYWxlxbx5IC0gaSBwcnpla2llcnVqZSBkbyB0ZWogc3Ryb255Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWR5dHVqIHRvIHBvbGUgYnkgd3lrYXNvd2HEhyBoYXPFgm8gdcW8eXRrb3duaWthJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZHl0dWogdG8gcG9sZSBieSB3eWthc293YcSHIGhhc8WCbyB1xbx5dGtvd25pa2EnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnVcW8eXRrb3duaWsgbyB0ZWogbmF6d2llIGp1xbwgaXN0bmllamUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnRWtzcG9ydCBkbyBDU1YgbmllIHphcGlzYcWCIMW8YWRueWNoIHd5bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0TFgnVnb8WbxIcgcG9sYSBuYXp3eSB1xbx5dGtvd25pa2EnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnRMWCdWdvxZvEhyBwb2xhIGhhc8WCYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBkxYJ1Z2/Fm2NpIGhhc8WCYSBzxIUgbmllcHJhd2lkxYJvd2UnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZMWCdWdvxZtjaSBuYXp3eSB1xbx5dGtvd25pa2Egc8SFIG5pZXByYXdpZMWCb3dlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOaWVwcmF3aWTFgm93eSBhZHJlcyBlbWFpbCc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05pZSB6bmFsZXppb25vIGFkcmVzdSBlbWFpbCBwcnp5cGlzYW5lZ28gZG8gdGVnbyBrb250YSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSB6IHVzdGFsZW5pZW0gaW5mb3JtYWNqaSBvIHXFvHl0a293bmlrdSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHogdXN0YWxlbmllbSBjZWNoJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVxbx5dGtvd25payBkb2RhbnkgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVxbx5dGtvd25payB1c3VuacSZdHkgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnQ2VjaGEnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1dhcnRvxZvEhyAod3lyYcW8ZW5pZSByZWd1bGFybmUpJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnVXdhZ2E6IHRlIHBvbGEgbWFqxIUgd3DFgnl3IG5hIHdpZWxrb8WbxIcgcCZvYWN1dGU7bCB3ecWbd2lldGxhbmVnbyBmb3JtdWxhcnphLiBabWllbmlhbmllIHRlaiBsaWN6YnkgbmEgaXN0bmllasSFY2VqIHN0cm9uaWUgbW/FvGUgbmllIGJ5xIcgbmFqbGVwc3p5bSBwb215c8WCZW0hJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdabWllbmnEhyBwcmVmZXJlbmNqZSBhZG1pbmlzdHJhdG9yYT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ1RlbiBlbWFpbCBqdcW8IGplc3QgdcW8eXdhbnkgdyBzeXN0ZW1pZSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVxbx5d2FqIGNpYXN0ZWN6ZWsgYnkgemFwYW1pxJl0YcSHIHN6Y3plZyZvYWN1dGU7xYJ5IGxvZ293YW5pYSc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ05hendhIGNpYXN0ZWN6a2EgKGNvb2tpZSknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdQb3p3Jm9hY3V0ZTtsIG5hIHdpZWxva3JvdG5lIGVtYWlsZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdBZHJlcyBlbWFpbCBqZXN0IHImb2FjdXRlO3duaWXFvCBuYXp3xIUgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ1ByJm9hY3V0ZTtiYSB1dHJ6eW1hbmlhIHphbG9nb3dhbmlhIHByemV6IHXFvHljaWUgY2lhc3RlY3prYSAoY29va2llKSA8ZW0+KGNpYXN0ZWN6a28gamVzdCB1c3Rhd2lhbmUgcHJ6ZXogYWt0eXdub8WbxIcgbmEgc3Ryb25pZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcocG96dyZvYWN1dGU7bCB3aWVsdSB1xbx5dGtvd25pa29tIHXFvHl3YcSHIHRlZ28gc2FtZWdvIGVtYWlsYSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyhlbWFpbCB3cGlzYW55IHByemV6IHXFvHl0a293bmlrYSBqZXN0IHXFvHl0eSBqYWtvIG5hendhIHRlZ28gdcW8eXRrb3duaWthIChqZWdvIGxvZ2luKSAtIHR5bGtvIG5pZSB6ZXN0YXdpYWogdGVnbyB6IG9wY2rEhSAmcXVvdDtwb3p3Jm9hY3V0ZTtsIG5hIHdpZWxva3JvdG5lIGVtYWlsZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnUG96dyZvYWN1dGU7bCBuYSB3aWVsb2tyb3RuZSAmcXVvdDtwcnp5cG9taW5hY3plIGhhc2XFgiZxdW90Oz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHBvencmb2FjdXRlO2wgdcW8eXRrb3duaWtvbSB3eXPFgmHEhyDFvMSFZGFuaWUga2Fzb3dhbmlhIGhhc8WCYSBuYXdldCBnZHkgbmllIHXFvHl3YWxpIHBvcHJ6ZWRuaWVnbyknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVxbx5d2HEhyB1cHJhd25pZcWEIGRlZHlrb3dhbnljaCBkbGEgVcW8eXRrb3duaWsmb2FjdXRlO3cgRkVVPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoWmF6d3ljemFqLCB1xbx5dGtvd25pY3kgRkVVIG1hasSFIHRha2llIHNhbWUgdXByYXduaWVuaWEgamFrIHVwcmF3bmllbmlhIGFkbWluaXN0cmFjeWpuZSBDTVMtYSwgdGFraWUgamFrICZxdW90O2RvZGF3YW5pYSB1xbx5dGtvd25payZvYWN1dGU7dyZxdW90OywgJnF1b3Q7ZG9kYXdhbmllIGdydXAmcXVvdDsgaXRwLiBKYWsgemF6bmFjenlzeiB0xJkgb3BjasSZIC0gdXByYXduaWVuaWEgQ01TLWEgaSB1xbx5dGtvd25payZvYWN1dGU7dyBGRVUgem9zdGFuxIUgcm96ZHppZWxvbmUpJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOaWUgem5hbGV6aW9ubyB3Z3JhbmVnbyBwbGlrdSAoYsWCxIVkIHdld27EmXRyem55IHN5c3RlbXUpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnQnnFgiBwcm9ibGVtIHogdHdvaW0gcGxpa2llbSBkbyB3Z3J5d2FuaWEuIFNwciZvYWN1dGU7YnVqIHBvbm93bmllLic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdOaWUgd3Byb3dhZHpvbm8gbmF6d3kgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ05pZSB3cGlzYW5vIGVtYWlsYSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOaWUgd3Byb3dhZHpvbm8gaGFzxYJhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdXeWxvZ3VqIHXFvHl0a293bmlrYSBGRVUnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnWmFsb2d1aiB1xbx5dGtvd25pa2EgRkVVJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0mYW1wO2FtcDthbXA7YW1wO3F1b3Q7cmVkJmFtcDthbXA7YW1wO2FtcDtxdW90Oz48Yj5VxbtZV0FKIE9TVFJPxbtOSUU8L2I+IGdkeSB6bWllbmlhc3ogaXN0bmllasSFY2UgY2VjaHksIGt0Jm9hY3V0ZTtyZSBzxIUganXFvCBwcnp5cGlzYW5lIGRvIGdydXAsIG1vxbxlc3ogY2/FmyB1c3prb2R6acSHLCBzdHJhY2nEhyBkYW5lIGx1YiBzcG93b2Rvd2HEhywgxbxlIHN0cm9uYSBixJlkemllIHNpxJkgaW5hY3plaiB3ecWbd2lldGxhxYJhISA8aT4obnAuIGdkeSB6bW5pZWpzemFzeiBkxYJ1Z2/Fm2NpIHAmb2FjdXRlO2wpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUYSBmdW5rY2phIG5pZSBkemlhxYJhIG5hIHN5c3RlbWllIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05pZSB0dyZvYWN1dGU7cnogY2VjaHkgZGxhIG5hend5IHXFvHl0a293bmlrYSBhbmkgaGFzxYJhIC0gc8SFIG9uZSBqdcW8IHdidWRvd2FuZSBzdGFuZGFyZG93byB3IG1vZHXFgiB1xbx5dGtvd25payZvYWN1dGU7dyBGRVUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcnQgdcW8eXRrb3duaWsmb2FjdXRlO3cgZG8gZm9ybWF0dSBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkeWNqYSBjZWNoJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3N5bWFsbmEgZMWCdWdvxZvEhyc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU3R3b3J6b25vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnR1aiBwbyc7CiRsYW5nWydzb3J0J10gPSAnU29ydHVqZSc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVxbx5dGtvd25payZvYWN1dGU7dyB6IHphem5hY3pvbmVqIGdydXB5IChncnVwKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdPZ3JhbmljeiB3eW5pa2kgZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmllIHpuYWxlemlvbm8gcG9sYSBlbWFpbCBkbGEgdGVnbyB1xbx5dGtvd25pa2EuIEJ5xIcgbW/FvGUga29uaWVjem55IGLEmWR6aWUga29udGFrdCB6IGFkbWluaXN0cmF0b3JlbSBzeXN0ZW11JzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSURTdHJvbnkvQWxpYXMgZGxhIGZvcm11bGFyemEgemFwb21uaWFuZWdvIGhhc8WCYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEU3Ryb255L0FsaWFzIGRsYSBmb3JtdWxhcnphIHptaWFueSB1c3Rhd2llxYQnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdJRFN0cm9ueS9BbGlhcyBkbyBwcnplc2tvY3plbmlhIHBvIHphbG9nb3dhbml1IConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnSURTdHJvbnkvQWxpYXMgZG8gcHJ6ZXNrb2N6ZW5pYSBwbyB3eWxvZ293YW5pdSAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1BvcnrEhWRlayBzb3J0b3dhbmlhJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0N6xJnFm8SHIHXFvHl0a293bmlrJm9hY3V0ZTt3IHfFgmHFm25pZSBqZXN0IHcgdHJha2NpZSByZXNldG93YW5pYSB6YWd1YmlvbmVnbyBoYXPFgmEuIE9iZWNuaWUgdHljaCB1xbx5dGtvd25payZvYWN1dGU7dyBqZXN0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1VzdcWEIHdzenlzdGtpZSB3cGlzeSBzdGFyc3plIG5pxbwgdHlkemllxYQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnVXN1xYQgd3N6eXN0a2llIHdwaXN5IHN0YXJzemUgbmnFvCBtaWVzacSFYyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdVc3XFhCB3c3p5c3RraWUgd3Bpc3knOwokbGFuZ1snYXJleW91c3VyZSddID0gJ05hIHBld25vPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ05pZXByYXdpZMWCb3d5IGtvZCB6b3N0YcWCIHdwcm93YWR6b255LCBzcHImb2FjdXRlO2J1aiBwb25vd25pZSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnVHltY3phc293eSBrb2QgZGxhIGlkIHXFvHl0a293bmlrYSBuaWUgem9zdGHFgiB6bmFsZXppb255IHcgYmF6aWUgZGFueWNoJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnU3phYmxvbiB1xbx5d2FueSBkbyB3ecWbd2lldGxhbmlhIGZvcm11bGFyeiB3ZXJ5ZmlrdWrEhWNlZ28nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1N6YWJsb24gdcW8eXdhbnkgZG8gemFwb21uaWFueWNoIGhhc2XFgiBkbGEga29udCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnQWxibyBrdG/FmyBqdcW8IHVydWNob21pxYIgb3BlcmFjasSZIG9wZXJhY2rEmSByZXNldG93YW5pYSBoYXPFgmEgZGxhIHRlZ28ga29udGEsIGFsYm8gc2FtIGp1xbwgdG8genJvYmnFgmXFmy4gU3ByYXdkxbogc3dvasSFIHBvY3p0xJkgZW1haWwsIGJ5xIcgbW/FvGUganXFvCBvdHJ6eW1hxYJlxZsgZGFsc3plIGluc3RydWtjamUsIGphayB6cmV6ZXRvd2HEhyBzd29qZSBoYXPFgm8uJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdCxYLEhWQgYmF6eSBkYW55Y2gnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnT3RyenltYcWCYcWbL8WCZcWbLCBnZHnFvCBrdG/FmyB6Z8WCb3NpxYIgbmFtLCBpxbwgemd1YmnFgmHFmy/FgmXFmyBzd29qZSBoYXPFgm8uIFcgdHltIHByenlwYWRrdSBwcnplY3p5dGFqIHBvbmnFvHN6ZSBpbnN0cnVrY2plLiBKZcW8ZWxpIG5pZSBtYXN6IHBvasSZY2lhIGNvIHRvIGplc3QsIG1vxbxlc3ogYmV6cGllY3puaWUgdXN1bsSFxIcgdMSFIHdpYWRvbW/Fm8SHOyBkemnEmWt1amVteSB6YSBwb8Wbd2nEmWNvbnkgY3phcy4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLb2QnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnUG9uacW8c3p5IGtvZCB6b3N0YcWCIHd5Z2VuZXJvd2FueSBhdXRvbWF0eWN6bmllIHcgY2VsdSB3ZXJ5ZmlrYWNqaSBrb250YSB1xbx5dGtvd25pa2EuIEdkeSBrbGlrbmllc3ogcG9uacW8c3p5IGxpbmssIHd5xZt3aWV0bGkgc2nEmSBwb2xlLCB3IGt0Jm9hY3V0ZTtyeW0gbmFsZcW8eSB3cGlzYcSHIHRlbiBrb2QuIFphend5Y3phaiB0byBwb2xlIGplc3QganXFvCB3eXBlxYJuaW9uZSwgamXFvGVsaSBqZWRuYWsgbmllIGplc3QsIHRvIGtvZCBqZXN0IG5hc3TEmXB1asSFY3k6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnS2xpa2FqxIVjIG5hIHRlbiBvZG5vxZtuaWsgcHJ6ZW5pZXNpZXN6IHNpxJkgZG8gc3Ryb255LCBnZHppZSBwbyB3cHJvd2FkemVuaXUgcG93ecW8c3plZ28ga29kdSBixJlkemllIG1vxbxsaXdlIHd5a2Fzb3dhbmllIHR3b2plZ28gaGFzxYJhOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnWmFndWJpb25lIGhhc8WCbyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05pZSBtb8W8bmEgb2RuYWxlxbrEhyBtb2R1xYJ1IENNUyBNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnV2lhZG9tb8WbxIcgZW1haWwgem9zdGHFgmEgd3lzxYJhbmEgZG8gJXMgeiBpbnN0cnVrY2phbWkgZG90eWN6xIVjeW1pIHptaWFueSBoYXPFgmEuIER6acSZa3VqZW15Lic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1pndWJpb25lIGx1YiB6YXBvbW5pYW5lIGhhc8WCbz8gV3Byb3dhZMW6IHN3b2rEhSBuYXp3xJkgdcW8eXRrb3duaWthIC0gamXFm2xpIG5hc3ogc3lzdGVtIHpuYWpkemllIHByenl3acSFemFueSBkbyB0ZWdvIHXFvHl0a293bmlrYSBhZHJlcyBlbWFpbCwgd3nFm2xlbXkgaW5zdHJ1a2NqZSBkb3R5Y3rEhWNlIHVzdGF3aWVuaWEgbm93ZWdvIGhhc8WCYS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdTemFibG9uIHN0cm9ueSB6YXBvbW5pYW5lZ28gaGFzxYJhJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ1N6YWJsb24gemd1YmlvbmVqIG5hend5IHXFvHl0a293bmlrYSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdDZWNoYSAlcyBuaWUgem9zdGHFgmEgem5hbGV6aW9uYSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnem5hbGV6aW9ueWNoIGNlY2gnOwokbGFuZ1snYWRkcHJvcCddID0gJ0RvZGFqIGNlY2jEmSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnV3ltYWdhbmUgcG9sZSAoJXMpIGplc3QgcHVzdGUnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdXcHJvd2FkxbogdHV0YWogbm93ZSBoYXPFgm8gYnkgem1pZW5pxIcgc3RhcmUnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdXeWRhamUgc2nEmSwgxbxlIG5pZSBqZXN0ZcWbIHphbG9nb3dhbmEoeSknOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1VzdGF3aWVuaWEnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWplc3RyYWNqYSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RvIGtvbnRvIHd5Z2FzxYJvJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdOaWV3xYJhxZtjaXd5IGZvcm1hdCBhZHJlc3UgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOaWVwcmF3aWTFgm93YSBkYXRhIHd5Z2HFm25pxJljaWEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0LFgsSFZCBwcnp5IHVzdGF3aWFuaXUgY2VjaHkgJXMgZGxhIHXFvHl0a293bmlrYSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05pZXByYXdpZMWCb3dlIElEIGdydXB5ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnWm5hY3puaWsgdWtyeXRlZ28gcG9sYSc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnS29sb3IgdWtyeXRlZ28gcG9sYSc7CiRsYW5nWydoaWRkZW4nXSA9ICdVa3J5dGUnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0NlY2hhIG8gdGVqIG5hendpZSBqdcW8IGplc3QgemRlZmluaW93YW5hJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0JyYWsgemRlZmluaW93YW55Y2ggY2VjaCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05pZSB6YXpuYWN6b25vIGNlY2ggZGxhIHRlaiBncnVweSc7CiRsYW5nWydub2dyb3VwcyddID0gJ05pZSB6ZGVmaW5pb3dhbnkgxbxhZG5laiBncnVweSc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ2dydXAgem5hbGV6aW9ubyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnQ3rFgm9ua29zdHdvIHcgY28gbmFqbW5pZWogamVkbmVqIGdydXBpZSBqZXN0IHd5bWFnYW5lJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdXeW1hZ2FqIGN6xYJvbmtvc3R3YSB3IGNvIG5ham1uaWVqIGplZG5laiBncnVwaWUnOwokbGFuZ1snYmFjayddID0gJ1dyJm9hY3V0ZTvEhyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgdG8gd3ltYWdhbmUgcG9sZSc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnWmF6bmFjeiB3eW1hZ2FuZSBwb2xhIHXFvHl3YWrEhWMnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnUG9kxZt3aWV0bCB3eW1hZ2FuZSBwb2xhIHcnOwokbGFuZ1snbmV4dCddID0gJ0RhbGVqJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnR3J1cGEgbyB0ZWogbmF6d2llIGp1xbwgaXN0bmllamUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdXeW1hZ2FuZSBwb2xlJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3Bjam9uYWxuaWUnOwokbGFuZ1snb2ZmJ10gPSAnV3nFgsSFY3pvbmUnOwokbGFuZ1snc2l6ZSddID0gJ1Jvem1pYXInOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYWtzeW1hbG55IHJvem1pYXIgbmFqd2nEmWtzemVnbyBib2t1IG9icmF6a2EgLSB3IHBpa3NlbGFjaCknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRMWCdWdvxZvEhyc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KHpuYWsmb2FjdXRlO3cgdyBwb2x1IHdwcm93YWR6ZW5pYSB0ZWtzdHUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcGNqZSBsaXN0IHJvendpamFueWNoLCBvZGR6aWVsb25lIG5vd3ltaSBsaW5pYW1pJzsKJGxhbmdbJ3Byb21wdCddID0gJ1phY2jEmXRhJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXAnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdTdGF0dXMgcG9sYSc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdaYXB5dGFqIHcgWmd1YmlvbmVqPGJyIC8+bmF6d2llIHXFvHl0a293bmlrYSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0xpc3RhIHdpZWxva3JvdG5lZ28gd3lib3J1JzsKJGxhbmdbJ2ltYWdlJ10gPSAnT2JyYXplayc7CiRsYW5nWydlbWFpbCddID0gJ0FkcmVzIGVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnUG9sZSB0ZWtzdG93ZSc7CiRsYW5nWydkcm9wZG93biddID0gJ0xpc3RhIHJvendpamFuYSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dpdGFteSc7CiRsYW5nWydsb2dvdXQnXSA9ICdXeWxvZ3VqJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVxbx5d2FqIHRlbiBuYXp3eSBncnVweSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdabWllxYQgbW9qZSB1c3Rhd2llbmlhJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9nb3dhbmllIG5pZSBwb3dpb2TFgm8gc2nEmSAtIHrFgnkgdcW8eXRrb3duaWsgbHViIGhhc8WCbz8nOwokbGFuZ1snbG9naW4nXSA9ICdaYWxvZ3VqJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnRXR5a2lldGEgZ3V6aWthIFphcGlzeiBzacSZJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1XFvHl0a293bmlrJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0FkcmVzIGVtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0hhc8WCbyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ1BhbWnEmXRhaiBtbmllIG5hIHR5bSBrb21wdXRlcnplJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVqZXN0cmFjamEnOwokbGFuZ1snZm9yZ290cHcnXSA9ICdaYXBvbW5pYW5lIGhhc8WCbz8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnWmd1YmlvbnkgbG9naW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnV2FydG/Fm2NpIGRvbXnFm2xuZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1N6YWJsb24nOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnTmllIHpuYWxlemlvbm8gSUQgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdUYSBuYXp3YSB1xbx5dGtvd25pa2EgKCVzKSBqZXN0IGp1xbwgdcW8eXdhbmEnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1XFvHl3YWogU01UUCBieSBzcHJhd2R6YcSHIGFkcmVzIGVtYWlsPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbWFsbmEgZMWCdWdvxZvEhyBoYXPFgmEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWFrc3ltYWxuZSBkxYJ1Z2/Fm8SHIGhhc8WCYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbWFsbmEgZMWCdWdvxZvEhyBuYXp3eSB1xbx5dGtvd25pa2EnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWFrc3ltYWxuYSBkxYJ1Z2/Fm8SHIG5hend5IHXFvHl0a293bmlrYSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdUaW1lb3V0IHNlc2ppICh3IHNla3VuZGFjaCknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1XFvHl3YWogY2lhc3RlY3playwgYnkgbG9nb3dhbmllIGJ5xYJvIHphcGFtacSZdHl3YW5lIGkgdXRyenlteXdhbmUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQb3p3Jm9hY3V0ZTtsIG5hIHJlamVzdHJhY2rEmSBlbWFpbG93xIUnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0RvbXnFm2xuYSBncnVwYSBkbGEgbm93eWNoIHXFvHl0a293bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU3phYmxvbiB6bWlhbnkgdXN0YXdpZcWEJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdIYXPFgmEgbmllIHpnYWR6YWrEhSBzacSZJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05pZXByYXdpZMWCb3dhIG5hendhIHXFvHl0a293bmlrYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOaWVwcmF3aWTFgm93ZSBoYXPFgm8nOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZHl0dWogdcW8eXRrb3duaWthJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnUG9wcmF3bmllJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTmF6d2EgdcW8eXRrb3duaWthJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUZW4gdcW8eXRrb3duaWsgbmllIGplc3QgY3rFgm9ua2llbSDFvGFkbmVqIGdydXB5JzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdCcmFrIGNlY2gnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdQciZvYWN1dGU7YnVqIHphaW1wb3J0b3dhxIcgemR1cGxpa293YW5lIGNlY2h5JzsKJGxhbmdbJ3ZhbHVlJ10gPSAnV2FydG/Fm8SHJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXB5JzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdDZWNoeSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hendhIGNlY2h5JzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1dhcnRvxZvEhyBjZWNoeSc7CiRsYW5nWydhZGQnXSA9ICdEb2Rhaic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWEnOwokbGFuZ1snZWRpdCddID0gJ0VkeXR1aic7CiRsYW5nWydleHBpcmVzJ10gPSAnV3lnYXNhJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1BvZGFqIGRhdMSZJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgZ29kemluJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgZ29kemlueSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IGdvZHppbnknOwokbGFuZ1snMXdlZWsnXSA9ICcxIHR5ZHppZcWEJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgdHlnb2RuaWUnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBtaWVzacSFYyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtaWVzacSFY2UnOwokbGFuZ1snNm1vbnRocyddID0gJzYgbWllc2nEhWNlJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWdkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1xYIgem9zdGHFgiB6YWluc3RhbG93YW55IHBvcHJhd25pZS4gPGJyLz5VcGV3bmlqIHNpxJksIMW8ZSB1c3Rhd2lzeiB1cHJhd25pZW5pYSBkbyAmcXVvdDtabWlhbiB3xYJhxZtjaXdvxZtjaSBtb2R1xYJ1IHXFvHl0a293bmlrJm9hY3V0ZTt3IEZFVS4mcXVvdDs8YnIgLz48YnIgLz4NCkRvZGF0a293byAtIHBvbGVjYW15IHphaW5zdGFsb3dhbmllIG1vZHXFgnUgQ2FwdGNoYS4gUG8gemFpbnN0YWxvd2FuaXUgLSBvZGN6eXRhbmllIHdhcnRvxZtjaSB6IG9icmF6a2EgYsSZZHppZSBrb25pZWN6bmUsIMW8ZWJ5IHd5cGXFgm5pxIcgZm9ybXVsYXJ6LiBUbyB0YWtpIHRyaWNrLCDFvGVieSB6cmVkdWtvd2HEhyBsaWN6YsSZIHNwYW11IGkgYXV0b21hdHljem55Y2ggcm9ib3Qmb2FjdXRlO3csIGt0Jm9hY3V0ZTtyZSB1dHJ1ZG5pYWrEhSDFvHljaWUgdyBzaWVjaS4NCg0KPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSBldmVuIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQuJnF1b3Q7JzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnSGFzxYJvJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUG9ub3duaWUnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dydXBhIG8gdGFraWVqIG5hendpZSBqdcW8IGlzdG5pZWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkeXR1aiBncnVwxJknOwokbGFuZ1snc3VibWl0J10gPSAnV3nFm2xpaic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsdWonOwokbGFuZ1snZGVsZXRlJ10gPSAnS2FzdWonOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdDenkgbmEgcGV3bm8gc8SFIHRvIHfFgmHFm2Npd2UgdXN0YXdpZW5pYSBkbGEgdGVqIGdydXB5P1xuIFd5xYLEhWN6ZW5pZSB0ZWogY2VjaHkgbmllIHVzdW5pZSDFvGFkbnljaCB3cGlzJm9hY3V0ZTt3IHogdGFiZWxpIGNlY2ggZGxhIHRlaiBncnVweS91xbx5dGtvd25pa2EuIFBvIHByb3N0dSBixJlkxIUgb25lIG5pZWRvc3TEmXBuZSc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnTmEgcGV3bm8gdXN1bsSFxIcgdMSZIGdydXDEmT8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ05hIHBld25vIHVzdW7EhcSHIHTEmSBjZWNoxJk/IFxuIHBvIHRlaiBha2NqaSBza2Fzb3dhbmUgem9zdGFuxIUgdGXFvCBkYW5lIHXFvHl0a293bmlrJm9hY3V0ZTt3IGRvIG5pZWogcHJ6eXBpc2FueWNoLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdaYSBtYcWCbyBwYXJhbWV0ciZvYWN1dGU7dyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXp3YSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0geiBkb2RhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHJlbGFjamkgZ3J1cHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIGdydXB5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHXFvHl0a293bmlrYSBkbyBncnVweSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSB6ZSBza2Fzb3dhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05pZSBtb2fEmSBvZG5hbGXFusSHIGFkcmVzdSBlbWFpbCc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnQnJhayB1cHJhd25pZcWEIGRvIHphcGlzdSB3IGthdGFsb2d1IGRvY2Vsb3d5bSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnTmllcHJhd2lkxYJvd2UgcGFyYW1ldHJ5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTmllIG1vZ8SZIG9kbmFsZcW6xIcgxbxhZG55Y2ggZ3J1cCc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1phc3Rvc3VqJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRydWonOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05hendhIHXFvHl0a293bmlrYSAtIHd5cmHFvGVuaWUgcmVndWxhcm5lJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnT3Bpcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOYXp3YSBncnVweSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdEb3N0xJlwIHphYnJvbmlvbnknOwokbGFuZ1snZXJyb3InXSA9ICdCxYLEhWQnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdEb2RhaiBncnVwxJknOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnR1aiBncnVwxJknOwokbGFuZ1snYWRkdXNlciddID0gJ0RvZGFqIHXFvHl0a293bmlrYSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW8eXRrb3duaWsmb2FjdXRlO3cgem5hbGV6aW9ubyBzcGXFgm5pYWrEhWN5Y2gga3J5dGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwYSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1d5YmllcnogZ3J1cMSZJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcmVqZXN0cmFjamknOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnU3phYmxvbiB3eWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnU3phYmxvbiB6YWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnVXN0YXdpZW5pYSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvHl0a293bmljeSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdaYXJ6xIVkemFuaWUgdcW8eXRrb3duaWthbWkgRkVVJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUG96dyZvYWN1dGU7bCB1xbx5dGtvd25pa29tIGxvZ293YcSHIHNpxJkgbmEgc3Ryb25pZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRG9tecWbbG5hIHN0cm9uYSBnxYImb2FjdXRlO3duYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnT3N0YXRuaW8gb3R3aWVyYW5hIHN0cm9uYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdJbm5hIHN0cm9uYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1dwcm93YWTFuiB0ZWtzdCB6IG9icmF6a2EnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pt_BR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGE6IDwvc3Ryb25nPiBFc3RlIG0mb2FjdXRlO2R1bG8gdXNhIG8gbWNyeXB0IHBhcmEgY3JpcHRvZ3JhZmlhLCBvIG1jcnlwdCBuJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvIGVtIHN1YSBpbnN0YWxhJmNjZWRpbDsmYXRpbGRlO28uIFBvciBmYXZvciBjb250YXRlIG8gYWRtaW5pc3RyYWRvciBkbyBzZXUgc2Vydmlkb3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRhbmRvIFVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaXF1ZSBhcXVpIHNlIHZvYyZlY2lyYzsgbiZhdGlsZGU7byBzZSBsZW1icmEgZGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgbG9naW4nOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaXF1ZSBhcXVpIHNlIHZvYyZlY2lyYzsgZXNxdWVjZXUgc3VhIHNlbmhhJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVlIGFxdWkgcGFyYSBmYXplciBsb2dvZmYnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaXF1ZSBhcXVpIHBhcmEgYXR1YWxpemFyIHN1YSBzZW5oYSBvdSBvdXRyYXMgaW5mb3JtYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1ZlciBtb2RlbG8gZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudG8nOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ05vdGlmaWNhJmNjZWRpbDsmYXRpbGRlO28gZGUgRXZlbnRvIGRvIEZFVSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdFbmRlcmUmY2NlZGlsO28gZG8gZW1haWwgZGUgbm90aWZpY2EmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRvIGVtYWlsIGRlIG5vdGlmaWNhJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnQXNzdW50byBkbyBlbWFpbCBkZSBub3RpZmljYSZjY2VkaWw7JmF0aWxkZTtvJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgZW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0FvIGxvZ2FyJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQW8gZGVzbG9nYXInOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQW8gZXhwaXJhciBhIHNlc3MmYXRpbGRlO28nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQW8gY3JpYXIgbm92byB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdBbyBkZWxldGFyIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0FvIGFsdGVyYXIgY29uZmlndXJhJmNjZWRpbDsmb3RpbGRlO2VzIGRvIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdBbyBjcmlhciBncnVwbyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0FvIGRlbGV0YXIgZ3J1cG8gZGUgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnQXMgaW5mb3JtYSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBsb2dpbiBmb3ImYXRpbGRlO28gdmVyaWZpY2FkYXMgZSBhY2hhbW9zIHVtIHVzdSZhYWN1dGU7cmlvIHF1ZSBjb3JyZXNwb25kZSBhb3MgZGV0YWxoZXMgcXVlIHZvYyZlY2lyYzsgZGlnaXRvdS4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1NldSBub21lIGRlIHVzdSZhYWN1dGU7cmlvICZlYWN1dGU7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ04mb2FjdXRlO3MgcmVjb21lbmRhZG9zIHF1ZSB2b2MmZWNpcmM7IGd1YXJkZSBlc3NhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIG51bSBsdWdhciBzZWd1cm8gbWFzIHF1ZSB2b2MmZWNpcmM7IHBvc3NhIGFjZXNzYXIuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRC9hcGVsaWRvIGRhIHAmYWFjdXRlO2dpbmEgZGVzdGlubyBhcCZvYWN1dGU7cyBhbHRlcmFyIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdJRC9hcGVsaWRvIGRhIHAmYWFjdXRlO2dpbmEgZGVzdGlubyBhcCZvYWN1dGU7cyBjZXJpZmljYSZjY2VkaWw7JmF0aWxkZTtvIGRlIGMmb2FjdXRlO2RpZ28gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0RldGFsaGVzIGRvIGVtYWlsIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ01vZGVsbyBkZSBjb25maXJtYSZjY2VkaWw7JmF0aWxkZTtvIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm86IE1haXMgZGUgdW1hIGNvbnRhIGRlIHVzdSZhYWN1dGU7cmlvIGNvcnJlc3BvbmRlIGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZGlnaXRhZGFzLic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgYWNoYXIgdW0gdXN1JmFhY3V0ZTtyaW8gY29ycmVzcG9uZGVudGUuJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgZW5jb250cmFyIHVtIGdydXBvIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdBcGVuYXMgTGVpdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc3NlIGRlIG1hbmlwdWxhJmNjZWRpbDsmYXRpbGRlO28gZGUgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0Rlc2xvZ2FkbyBwZWxvIGFkbWluaXN0cmFkb3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ01vc3RyYXIgYXBlbmFzIHVzdSZhYWN1dGU7cmlvcyBsb2dhZG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEZXNsb2dhciBlc3RlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByaWVkYWRlcyBkbyB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpY28gZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0YXInOwokbGFuZ1snY2xlYXInXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0YXIgaGlzdCZvYWN1dGU7cmljbyBkbyB1c3UmYWFjdXRlO3JpbyBxdWUgdGVuaGFtIGFvIG1lbm9zIHBhcmEgQVNDSUknOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdMaW1wYXIgaGlzdCZvYWN1dGU7cmljbyBkbyB1c3UmYWFjdXRlO3JpbyBxdWUgdGVuaGFtIGFvIG1lbm9zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1IHNldXMgZGV0YWxoZXMgZGUgbG9naW4/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyIGFzIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyAoZSBwcm9wcmllZGFkZXMpIGRlIGdydXBvIHBhcmEgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdNYW51dGVuJmNjZWRpbDsmYXRpbGRlO28gZG8gaGlzdCZvYWN1dGU7cmljbyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1sneWVzJ10gPSAnU2ltJzsKJGxhbmdbJ25vJ10gPSAnTiZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdkZSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBTZW0gTGltaXRlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1VtYSBob3JhIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWlzIGhvcmFzIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdEb3plIGhvcmFzIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1VtIGRpYSBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnVW1hIHNlbWFuYSBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R1YXMgc2VtYW5hcyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1VtIG0mZWNpcmM7cyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyJmVjaXJjO3MgbWVzZXMgYXRyJmFhY3V0ZTtzJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VpcyBtZXNlcyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVW0gYW5vIGF0ciZhYWN1dGU7cyc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdBZ3J1cGFuZG8gZSBBcnJ1bWFucm8nOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlZ2lzdHJvcyBkZSBhY29yZG8gY29tIG8gY3JpdCZlYWN1dGU7cmlvJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTm9tZSBkZSB1c3UmYWFjdXRlO3JpbyAtIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21lIGRlIHVzdSZhYWN1dGU7cmlvIC0gYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRGF0YSAtIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgLSBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RpcG8gZGUgZXZlbnRvIC0gZGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXBvIGRlIGV2ZW50byAtIGFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRW5kZXJlJmNjZWRpbDtvIElQIC0gZGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdFbmRlcmUmY2NlZGlsO28gSVAgLSBhc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOZW5odW0gaGlzdCZvYWN1dGU7cmljbyBkZXRlY3RhZG8nOwokbGFuZ1sncmVzZXQnXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnQWdydXBhciBwb3IgZW5kZXJlJmNjZWRpbDtvIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJvIHBvciB0aXBvIGRlIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIGFwZW5hcyBldmVudG9zIHF1ZSBzZWphbSBtZW5vcyBxdWUnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0ZSBkYSBQJmFhY3V0ZTtnaW5hJzsKJGxhbmdbJ2ZvciddID0gJ3BhcmEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZWxhdCZvYWN1dGU7cmlvIGRvIGhpc3Qmb2FjdXRlO3JpY28gZGUgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1sndW5rbm93biddID0gJ0Rlc2NvbmhlY2lkbyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnRW5kZXJlJmNjZWRpbDtvIElQJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUaXBvIGRlIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1ZvbHRhcic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIENvbXBsZXRhJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpbmhhcyBwcm9jZXNzYWRhcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyb3MgZW5jb250cmFkb3MnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1JlZ2lzdHJvcyBhZGljaW9uYWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBwcm9wcmllZGFkZXMgcGFyYSBvIGdydXBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIG9idGVyIHJlc3Bvc3RhIGRvIHNlcnZpZG9yIFNNVFAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnTyBhcnF1aXZvIGVzcGVjaWZpY2FkbyAoJXMpIG4mYXRpbGRlO28gcG9kZSBzciBsb2NhbGl6YWRvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWYWxvciBpbnZhbGlkbyBwYXJhIGRyb3Bkb3duIG91IG11bHRpc2VsZWN0IC0gY2FtcG8gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdPIGNhbXBvICVzIGV4Y2VkZSBvIHRhbW5haG8gbSZhYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vycm8gZGUgaW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIChsaWhhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBvYnRlciBhcyBkZWZpbmkmY2NlZGlsOyZvdGlsZGU7ZXMgZGEgcHJvcHJpZWRhZGUgKGVycm8gaW50ZXJubyknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbWEgYXBsaWNhbmRvIGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhY2hhciB1bWEgY29sdW5hIHBhcmEgbyBjYW1wbyAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgYXMgcHJvcHJpZWRhZGVzIGRvIGdydXBvIGVzcGVjaWZpY2Fkbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnTyBhcnF1aXZvIGVzcGVjaWZpY2FkbyBwYXJhIHNlciBpbXBvcnRhZG8gbiZhdGlsZGU7byBlc3QmYWFjdXRlOyBubyBmb3JtYXRvIGNvcnJldG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhYnJpciBvIGFycXVpdm8nOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0YXIgdXN1JmFhY3V0ZTtyaW9zIHBhcmEgZXN0ZSBncnVwbyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnNlcmlyIGFycXVpdm8gQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5zZXJpciBhcnF1aXZvIFhNTCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnRhciB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXIgVXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0xpbXBhcic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NhbWluaG8gZGVzdGlubyBkYSBpbWFnZW0nOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdVbSBwcm9ibGVtYSBvY29ycmV1IGNvbSB1bSBhcnF1aXZvIHJlcXVlcmlkbyBuJmF0aWxkZTtvIGVuY29udHJhZG8nOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBzZXBhcmFyIG8gYXJxdWl2byBYTUwgZXNwZWNpZmljYWRvJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdOJmF0aWxkZTtvICZlYWN1dGU7IHBvc3MmaWFjdXRlO3ZlbCBkZWxldGFyIHVtIGdydXBvIHF1ZSBhaW5kYSBwb3NzdWkgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdFc3NlIHVzdSZhYWN1dGU7cmlvIGomYWFjdXRlOyBlc3QmYWFjdXRlOyBsb2dhZG8uJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ08gdGV4dG8gZGEgaW1hZ2VtIG4mYXRpbGRlO28gZm9pIGluc2VyaWRvIGNvcnJldGFtZW50ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUGVybWl0aXIgdXN1JmFhY3V0ZTtyaW9zIGxvZ2FyIG1haXMgZGUgdW1hIHZleic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnRXh0ZW5zJm90aWxkZTtlcyBkZSBhcnF1aXZvcyBkZSBpbWFnZW5zIHF1ZSBvcyB1c3UmYWFjdXRlO3Jpb3MgcG9kZW0gZW52aWFyJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gdXN1JmFhY3V0ZTtyaW8gbG9nYSBubyBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyB1bSB1c3UmYWFjdXRlO3JpbyBkZXNsb2dhIGRvIHNpc3RlbWEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhIHNlc3MmYXRpbGRlO28gZGUgdW0gdXN1JmFhY3V0ZTtyaW8gZXhwaXJhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gbm92byB1c3UmYWFjdXRlO3JpbyAmZWFjdXRlOyBjcmlhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGRlIHVtIHVzdSZhYWN1dGU7cmlvIHMmYXRpbGRlO28gYXR1YWxpemFkYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhIGNvbnRhIGRlIHVtIHVzdSZhYWN1dGU7cmlvICZlYWN1dGU7IGRlbGV0YWRhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ1VtIGV2ZW50byBnZXJhZG8gcXVhbmRvIHVtIGdydXBvIGRlIHVzdSZhYWN1dGU7cmlvcyAmZWFjdXRlOyBjcmlhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gZ3J1cG8gZGUgdXN1JmFhY3V0ZTtyaW9zICZlYWN1dGU7IGRlbGV0YWRvJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwbyBCYWNrZW5kJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogQXMgc2VndWludGVzIG1hY3JvcyBwb2RlbSBzZXIgdXNhZGFzIG5lc3RlcyBjYW1wb3M6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBRdWFuZG8gdXNhbmRvIGEgbWFjcm8geyRncm91cH0sIE8gc2lzdGVtYSBpciZhYWN1dGU7IHN1YnN0aXR1aXIgbyBub21lIGRvIHByaW1laXJvIG1lbWJybyBkbyBncnVwbyBxdWUgbyB1c3UmYWFjdXRlO3JpbyBwZXJ0ZW5jZSBlIGVudCZhdGlsZGU7byBkaXJlY2lvbmFyIHBhcmEgYXF1ZWxhIHAmYWFjdXRlO2dpbmEnOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRlIGVzdGUgY2FtcG8gcGFyYSByZXNldGFyIGFzIHNlbmhhcyBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdGUgZXN0ZSBjYW1wbyBwYXJhIHJlc2V0YXIgYXMgc2VuaGFzIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0Vzc2Ugbm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05lbmh1bSByZXN1bHRhZG9wIG9idGlkbyBkYSBleHBvcnRhJmNjZWRpbDsmYXRpbGRlO28gY3N2JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ1RhbWFuaG8gZG8gY2FtcG8gbm9tZSBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdUYW1hbmhvIGRvIGNhbXBvIHNlbmhhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICd0YW1hbmhvcyBtJmlhY3V0ZTtuaW1vIGUgbSZhYWN1dGU7eGltbyBwYXJhIHNlbmhhcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAndGFtYW5ob3MgbSZpYWN1dGU7bmltbyBlIG0mYWFjdXRlO3hpbW8gcGFyYSBub21lcyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBpbnYmYWFjdXRlO2xpZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIHVtIGVuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBwYXJhIGVzdGEgY29udGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGFsdGVyYW5kbyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGRvIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIGFvIGNvbmZpZ3VyYXIgcHJvcHJpZWRhZGUnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzdSZhYWN1dGU7cmlvIGFkaWNpb25hZG8gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc3UmYWFjdXRlO3JpbyByZW1vdmlkbyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmllZGFkZSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsb3IgKGV4cHJlc3MmYXRpbGRlO28gcmVndWxhciknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBdGVuJmNjZWRpbDsmYXRpbGRlO286IEVzdGVzIGNhbXBvcyBhZmV0YW0gbyB0YW1hbmhvIGRvcyBjYW1wb3MgZSBmb3JtdWwmYWFjdXRlO3Jpb3MgZGUgZW50cmFkYS4gRGV2ZS1zZSB0b21hciBjdWlkYWRvIGFvIGRpbWludWlyIGVzc2VzIGNhbXBvcyBlbSB1bSBzaXRlIGV4aXN0ZW50ZS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1ZvYyZlY2lyYzsgdGVtIGNlcnRlemEgcXVlIGRlc2VqYSBhbHRlcmFyIGFzIHByZWZlciZlY2lyYztuY2lhcyBkbyBtJm9hY3V0ZTtkdWxvJzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFbmRlcmUmY2NlZGlsO28gZGUgZW1haWwgaiZhYWN1dGU7IHV0aWxpemFkbyc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSBsZW1icmFyIG8gbG9naW4nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOb21lIGRvIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1pdGlyIGVtYWlscyBkdXBsaWNhZG9zJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ08gZW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsICZlYWN1dGU7IG8gbm9tZSBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdUZW50YXIgbWFudGVyIG9zIGxvZ2lucyBhdGl2b3MgY29tIG8gdXNvIGRlIGNvb2tpZXMgPGVtPihPIGNvb2tpZSAmZWFjdXRlOyByZWluaWNpYWRvIGNvbSBhdGl2aWRhZGUgbm8gc2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcocGVybWl0aXIgcXVlIG0mdWFjdXRlO2x0aXBsb3MgdXN1JmFhY3V0ZTtyaW9zIHRlbmhhbSBvIG1lc21vIGVuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgJnF1b3Q7Zm9yZ290IHBhc3N3b3JkJnF1b3Q7IHJlbWluZGVycz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGFsbG93IGEgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIHJlc2V0LCBldmVuIGlmIHRoZXkgaGF2ZW4mIzAzOTt0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzYXIgcGVybWlzcyZvdGlsZGU7ZXMgZXNwZWMmaWFjdXRlO2ZpY2FzIGRvIEZyb250IEVuZCBVc2Vycz8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbG1lbnRlIGFzIHBlcm1pc3Mmb3RpbGRlO2VzIGRvcyBGRVVzZXJzIHMmYXRpbGRlO28gYXMgbWVzbWFzIHF1ZSBhcyBwZXJtaXNzJm90aWxkZTtlcyBkZSAmYWFjdXRlO3JlYSBkb3MgYWRtaW5zLCBjb21vIGFkaWNpb25hciB1c3UmYWFjdXRlO3JpbywgYWRpY2lvbmFyIGdydXBvLCBldGMuIENhc28gdm9jJmVjaXJjOyBzZWxlY2lvbmUgZXN0YSBvcCZjY2VkaWw7JmF0aWxkZTtvIGFzIHBlcm1pc3Mmb3RpbGRlO2VzIHBhcmEgb3VzIEZFVXNlcnMgc2VyJmF0aWxkZTtvIHNlcGFyYWRhcyknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhY2hhciBvIGFycXVpdm8gZW52aWFkbyAoZXJybyBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0hvdXZlIHVtIHByb2JsZW1hIGNvbSBvIGFycXVpdm8gZW52aWFkby4gUG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdWb2MmZWNpcmM7IG4mYXRpbGRlO28gZGlnaXRvdSB1bSBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1ZvYyZlY2lyYzsgbiZhdGlsZGU7byBkaWdpdG91IHNldSBlbmRlcmUmY2NlZGlsO28gZGUgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnVm9jJmVjaXJjOyBuJmF0aWxkZTtvIGRpZ2l0b3UgdW1hIHNlbmhhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdTYWlyIGRvIEZyb250ZW5kIFVzZXInOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnTG9naW4gZG8gRnJvbnRlbmQgVXNlcic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPkN1aWRhZG88L2I+Vm9jJmVjaXJjOyBwb2RlIGNhdXNhciBkYW5vcyBwZXJtYW5lbnRlcyBhbyBzaXRlIGFvIGFsdGVyYXIgcHJvcHJpZWRhZGVzIGV4aXN0ZW50ZXMgZW0gdW0gZ3J1cG8gYXRpdm8gbm8gc2l0ZSA8aT4ocHJpbmNpcGFsbWVudGUgY2FzbyByZWR1emEgbyB0YW1hbmhvIGRlIGNhbXBvcywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRXN0YSBmdW4mY2NlZGlsOyZhdGlsZGU7byBuJmF0aWxkZTtvIGVzdCZhYWN1dGU7IGRpc3BvbiZpYWN1dGU7dmVsIG5vIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ04mYXRpbGRlO28gY3JpZSB1bWEgcHJvcHJpZWRhZGUgcGFyYSBub21lIGRlIHVzdSZhYWN1dGU7cmlvIG91IHNlbmhhLCBpc3RvIHBvcnF1ZSBlc3NhcyBwcm9wcmllZGFkZXMgcyZhdGlsZGU7byBpbmNsdXNhcyBubyBtJm9hY3V0ZTtkdWxvIEZyb250RW5kVXNlcnMuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnRhciB1c3UmYWFjdXRlO3Jpb3MgcGFyYSBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbmlzdHJhZG9yJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdGFyIFByb3ByaWVkYWRlJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ0NvbXByaW1lbnRvIG0mYWFjdXRlO3hpbW8nOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyaWFkbyc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRlbmFyIHBvcic7CiRsYW5nWydzb3J0J10gPSAnT3JkZW5hbmRvJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzdSZhYWN1dGU7cmlvcyBub3MgZ3J1cG9zIHNlbGVjaW9uYWRvcyc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGFyIHJlc3VsdGFkb3MgZW0gJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgdW0gY2FtcG8gZGUgZW1haWwgcGFyYSBlc3RlIHVzdSZhYWN1dGU7cmlvLiBWb2MmZWNpcmM7IHBvZGUgcHJlY2lzYXIgZW50cmFyIGVtIGNvbnRhdG8gY29tIG8gYWRtaW5pc3RyYWRvciBkbyBzaXN0ZW1hLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGZvcm11bCZhYWN1dGU7cmlvIGRlIHNlbmhhIGVzcXVlY2lkYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGZvcm11bCZhYWN1dGU7cmlvIGRlIGFsdGVyYXIgY29uZmlndXJhJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnSUQgZGEgcCZhYWN1dGU7Z2luYS9BcGVsaWRvIHBhcmEgaXIgYXAmb2FjdXRlO3MgbyBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGlyIGFwJm9hY3V0ZTtzIHNhaXIgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRlbmFyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ1VtIG4mdWFjdXRlO21lcm8gZGUgdXN1JmFhY3V0ZTtyaW9zIGVzdCZhdGlsZGU7byBhdHVhbG1lbnRlIG1vZGlmaWNhbmRvIHN1YXMgc2VuaGFzLiBBdHVhbG1lbnRlIGVzdGUgbiZ1YWN1dGU7bWVybyBlc3QmYWFjdXRlOyBlbTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdBcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgbWFpcyB2ZWxoYXMgcXVlIHVtYSBzZW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnQXBhZ2FyIHRvZGFzIGFzIGVudHJhZGFzIG1haXMgdmVsaGFzIHF1ZSB1bSBtJmVjaXJjO3MnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnQXBhZ2FyIHRvZGFzIGFzIGVudHJhZGFzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdUZW0gY2VydGV6YT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdDJm9hY3V0ZTtkaWdvIGludiZhYWN1dGU7bGlkbywgcG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAndW0gYyZvYWN1dGU7ZGlnbyB0ZW1wb3ImYWFjdXRlO3JpbyBwYXJhIHNldSBJRCBuJmF0aWxkZTtvIGZvaSBsb2NhbGl6YWRvIG5hIGJhc2UgZGUgZGFkb3MnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNb2RlbG8gdXNhZG8gcGFyYSBleGliaXIgZm9ybXVsJmFhY3V0ZTtyaW8gZGUgdmVyaWZpY2EmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnTW9kZWxvIHVzYWRvIHBhcmEgbyBlbWFpbCBkZSBzZW5oYSc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnT3Ugdm9jJmVjaXJjOyBvdSBvIGFkbWluaXN0cmFkb3IgaiZhYWN1dGU7IGFjaW9ub3UgYSBvcGVyYSZjY2VkaWw7JmF0aWxkZTtvIHBhcmEgcmVzZXRhciBhIHNlbmhhIGRlc3RhIGNvbnRhLiBWZXJpZmlxdWUgc2V1IGVtYWlsIHBhcmEgb2J0ZXIgbWFpb3JlcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGVtIGNvbW8gcmVzZXRhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvIGRlIGJhbmNvIGRlIGRhZG9zJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1ZvYyZlY2lyYzsgZXN0JmFhY3V0ZTsgcmVjZWJlbmRvIGVzdGEgbWVuc2FnZW0gcG9ycXVlIGFsZ3UmZWFjdXRlO20gY29tdW5pY291IG8gc2l0ZSBxdWUgc3VhIHNlbmhhIGZvaSBwZXJkaWRhLiBTZSBmb3IgZXN0ZSBvIGNhc28gbGVpYSBhcyBpbnN0cnUmY2NlZGlsOyZvdGlsZGU7ZXMgYWJhaXhvLiBTZSB2b2MmZWNpcmM7IG4mYXRpbGRlO28gdGVtIGlkJmVhY3V0ZTtpYSBkbyBxdWUgc2VqYSBlc3RhIG1lbnNhZ2VtIGVudCZhdGlsZGU7byB2b2MmZWNpcmM7IHBvZGUgZGVsZXRhciBlc3RhIG1lbnNhZ2VtIHNlbSBwcm9ibGVtYXMuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQyZvYWN1dGU7ZGlnbyc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdPIGMmb2FjdXRlO2RpZ28gc2VndWludGUgZm9pIGdlcmFkbyBhdXRvbWF0aWNhbWVudGUgcGFyYSBwb2RlciB2ZXJpZmljYXIgYSBjb250YSBkZSB1c3UmYWFjdXRlO3Jpby4gQW8gY2xpY2FyIG5vIGxpbmsgYWJhaXhvIHNlciZhYWN1dGU7IGFwcmVzZW50YWRvIHVtIGNhbXBvIHBhcmEgYSBlbnRyYWRhIGRlc3RlIGMmb2FjdXRlO2RpZ28sIG5vcm1hbG1lbnRlIG8gY2FtcG8gaiZhYWN1dGU7IHZlbSBwcmVlbmNoaWRvLCBtYXMgY2FzbyBuJmF0aWxkZTtvIHZlbmhhIG8gYyZvYWN1dGU7ZGlnbyAmZWFjdXRlOzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGljYXIgbm8gbGluYmsgc2VndWludGUgaXImYWFjdXRlOyBlbmNhbWluaCZhYWN1dGU7LWxvIGFvIHNpdGUsIGFvbmRlIHBvZGVyJmFhY3V0ZTsgZW50cmFyIG8gYyZvYWN1dGU7ZGlnbyBhY2ltYSBlIHJlaW5pY2lhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdTZW5oYSBQZXJkaWRhJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBvIG0mb2FjdXRlO2R1bG8gQ01TTWFpbGVyJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VtIGVtYWlsIGZvaSBlbnZpYWRvIHBhcmEgJXMgY29tIGFzIGluc3RydSZjY2VkaWw7Jm90aWxkZTtlcyBkbyBjb21vIHJlc2V0YXIgc3VhIHNlbmhhLiBPYnJpZ2Fkby4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdFbnQmYXRpbGRlO28gdm9jJmVjaXJjOyBlc3F1ZWNldSBzdWEgc2VuaGEuIEVudCZhdGlsZGU7bywgZXNjcmV2YSBzZXUgbm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBhcXVpLCBjYXNvIHBvc3NhbW9zIGxvY2FsaXphciB2b2MmZWNpcmM7IG4mb2FjdXRlO3MgZW52aWFyZW1vcyB1bSBlbWFpbCBjb20gYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGRlIGNvbW8gcmVzZXRhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnTW9kZWxvcyBkZSBzZW5oYSBlc3F1ZWNpZGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9wcmllZGFkZSAgJXMgbiZhdGlsZGU7byBlbmNvbnRyYWRhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wcmllZGFkZXMgZW5jb250cmFkYXMnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkaWNpb25hciBQcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnTyBjYW1wbyByZXF1ZXJpZG8gICglcykgZXN0YXZhIHZhemlvJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRW50cmUgY29tIHVtYSBub3ZhIHNlbmhhIGFxdWkgcGFyYSBhbHRlcmFyIGEgc2VuaGEgZXhpc3RlbnRlJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnVm9jJmVjaXJjOyBuJmF0aWxkZTtvIHBhcmVjZSBlc3RhciBsb2dhZG8nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhcic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0Vzc2EgY29udGEgZXhwaXJvdSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnRm9ybWF0byBlcnJhZG8gZGUgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvIGFsdGVyYW5kbyBwcm9wcmllZGFkZSAlcyBwYXJhIHVzdSZhYWN1dGU7cmlvICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSWQgZGUgZ3J1cG8gaW52JmFhY3V0ZTtsaWRhICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnTWFyY2Fkb3Igb2N1bHRvIGRlIGNhbXBvJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdDb3Igb2N1bHRhIGRlIGNhbXBvJzsKJGxhbmdbJ2hpZGRlbiddID0gJ09jdWx0byhhKSc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVW1hIHByb3ByaWVkYWRlIGNvbSBlc3RlIG5vbWUgaiZhYWN1dGU7IGV4aXN0ZSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZW5odW1hIHByb3ByaWVkYWRlIGRlZmluaWRhJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVuaHVtYSBwcm9wcmllZGFkZSBmb2kgc2VsZWNpb25hZGEgcGFyYSBlc3RlIGdydXBvJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTmVuaHVtIGdydXBvIGRlZmluaWRvJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cG9zIGVuY29udHJhZG9zJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdTZXIgbWVtYnJvIGRlIGFvIG1lbm9zIHVtIGdydXBvICZlYWN1dGU7IHJlcXVlcmlkbyc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWVyZXIgc2VyIG1lbWJybyBkZSBhbyBtZW5vcyB1bSBncnVwbyc7CiRsYW5nWydiYWNrJ10gPSAnVm9sdGFyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyAmZWFjdXRlOyB1bSBjYW1wbyBvYnJpZ2F0Jm9hY3V0ZTtyaW8nOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmNhciBjYW1wb3Mgb2JyaWdhdCZvYWN1dGU7cmlvcyBjb20nOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIGNhbXBvcyByZXF1ZXJpZG9zIGVtJzsKJGxhbmdbJ25leHQnXSA9ICdQciZvYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VtIGdydXBvIGNvbSBvIG1lc21vIG5vbWUgaiZhYWN1dGU7IGV4aXN0ZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1JlcXVlcmlkbyc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wY2lvbmFsJzsKJGxhbmdbJ29mZiddID0gJ0Rlc2xpZ2Fkbyc7CiRsYW5nWydzaXplJ10gPSAnVGFtYW5obyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFRhbWFuaG8gbSZhYWN1dGU7eGltbyBlbSBxdWFscXVlciBlaXhvIGRhIGltYWdlbSBlbSBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1RhbWFuaG8nOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2FyYWN0ZXJlcyBuYSBlbnRyYWRhIGRlIHRleHRvKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnT3AmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgZHJvcGRvd24sIHNlcGFyYWRvcyBwb3F1ZWJyYXMgZGUgbGluaGFzLiAgT3MgdmFsb3JlcyBwb2RlbSBzZXIgc2VwYXJhZG9zIGRvIHRleHRvIGNvbSBvIGNhcmFjdGVyZT0gY2FyYWN0ZXIuIGkuZTogRmVtaW5pbm89Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdJbmljaWFyJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVGlwbyc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwbyc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXR1cyBkbyBjYW1wbyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdQZXJndWludGFyIGFvIGVzcXVlY2VyPGJyLz5Ob21lIGRlIFVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgbXVsdGlzZWxlY3QnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW0gJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnJmFncmF2ZTtyZWEgZGUgVGV4dG8nOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ0JlbSB2aW5kbyc7CiRsYW5nWydsb2dvdXQnXSA9ICdTYWlyJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgZXN0ZSBub21lIGRlIGdydXBvJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0FsdGVyYXIgbWluaGFzIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ08gbG9naW4gZmFsaG91IC0gTm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBvdSBzZW5oYSBpbnYmYWFjdXRlO2xpZG9zID8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0xvZ2luJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1VzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1NlbmhhJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnTGVtYnJhciBuZXN0ZSBjb21wdXRhZG9yJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnQ2FkYXN0cmEtc2UnOwokbGFuZ1snZm9yZ290cHcnXSA9ICdFc3F1ZWNldSBzdWEgc2VuaGE/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1IHNldSBMb2dpbj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQYWRyJm90aWxkZTtlcyc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01vZGVsbyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgc29icmUgZXN0ZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnTyBub21lIGRlIHVzdSZhYWN1dGU7cmlvICglcykgaiZhYWN1dGU7IGVzdCZhYWN1dGU7IGVtIHVzbyc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNhciBTTVRQIHBhcmEgdmFsaWRhciBlbmRlcmUmY2NlZGlsO29zIGRlIGVtYWlsPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdUYW1hbmhvIG0maWFjdXRlO25pbW8gZGEgc2VuaGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnVGFtYW5obyBtJmFhY3V0ZTt4aW1vIGRhIHNlbmhhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ1RhbWFuaG8gbSZpYWN1dGU7bmltbyBkbyBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ1RhbWFuaG8gbSZhYWN1dGU7eGltbyBkbyBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RlbXBvIGRlIFNlc3MmYXRpbGRlO28gZXhwaXJhZG8gKHNlZ3VuZG9zKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNhciBjb29raWVzIHBhcmEgbWFudGVyIG9zIGxvZ2lucyBhdGl2b3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQZXJtaXRpciByZWdpc3RybyBwb3IgZW1haWwnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0dydXBvIHBhZHImYXRpbGRlO28gcGFyYSBub3ZvcyB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdBbHRlcmFyIGFzIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyBkbyBtb2RlbG8nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0FzIHNlbmhhcyBzJmF0aWxkZTtvIGRpZmVyZW50ZXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTm9tZSBkZSB1cyZhYWN1dGU7cmlvIGludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdTZW5oYSBpbnYmYWFjdXRlO2xpZGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0YXIgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1sndmFsaWQnXSA9ICdWJmFhY3V0ZTtsaWRvJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tZSBkZSBVc3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRXN0ZSB1c3UmYWFjdXRlO3JpbyBuJmF0aWxkZTtvICZlYWN1dGU7IG1lbWJybyBkZSBuZW5odW0gZ3J1cG8nOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ1NlbSBwcm9wcmllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXIgaW1wb3J0YXIgcHJvcHJpZWRhZGVzIGR1cGxpY2FkYXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvcic7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwb3MnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaWVkYWRlcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05vbWUgZGEgcHJvcHJpZWRhZGUnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnVmFsb3IgZGEgcHJvcnByaWVkYWRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkaWNpb25hcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdCZvYWN1dGU7cmljbyc7CiRsYW5nWydlZGl0J10gPSAnRWRpdGFyJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmEnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnRXNwZWNpZmljYXIgZGF0YSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvcmFzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG9yYXMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Jhcyc7CiRsYW5nWycxd2VlayddID0gJzEgU2VtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgU2VtYW5hcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE0mZWNpcmM7cyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNZXNlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNlcyc7CiRsYW5nWycxeWVhciddID0gJzEgQW5vJzsKJGxhbmdbJ25ldmVyJ10gPSAnTnVuY2EnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1NlbmhhJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnU2VuaGEgTm92YW1lbnRlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdKJmFhY3V0ZTsgZXhpc3RlIHVtIGdydXBvIGNvbSBlc3RlIG5vbWUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyIGdydXBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudmlhcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdFeGNsdWlyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnVm9jJmVjaXJjOyB0ZW0gY2VydGV6YSBxdWUgZXN0YXMgcyZhdGlsZGU7byBhcyBjb25maWd1cmEmY2NlZGlsOyZvdGlsZGU7ZXMgY29ycmV0YXMgcGFyYSBlc3RlIGdydXBvP1xuRGVzYXRpdmFyIHVtIHByb3ByaWVkYWRlIG4mYXRpbGRlO28gaXImYWFjdXRlOyBkZWxldGFyIG5lbmh1bWEgZW50cmFkYSBuYSB0YWJlbGEgcGFyYSBlc3RlIGdydXBvL3VzdSZhYWN1dGU7cmlvLiBBcGVuYXMgdG9ybmFyJmFhY3V0ZTsgYSBwcm9wcmllZGFkZSBpbmRpc3BvbiZpYWN1dGU7dmVsLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnVGVtIGNlcnRlemEgcXVlIHF1ZXIgZGVsZXRhciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnUmVhbG1lbnRlIHF1ZXIgZGVsZXRhciBlc3RhIHByb3ByaWVkYWRlP1xuRmF6ZXIgaXNzbyB0YW1iJmVhY3V0ZTttIGlyJmFhY3V0ZTsgZGVsZXRhciBhcyBlbnRyYWRhcyBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgaW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYW8gYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhbyBhZGljaW9uYXIgcmVsYWNpb25hbWVudG8gZW50cmUgZ3J1cG9zJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciB1c3UmYWFjdXRlO3JpbyBhbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZGVsZXRhciBwcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgdW0gZW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdTZW0gcGVybWlzcyZhdGlsZGU7byBkZSBlc2NyaXRhIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyJmFjaXJjO21ldHJvcyBpbnYmYWFjdXRlO2xpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBuZW5odW0gZ3J1cG8nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyYXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc3MmYXRpbGRlO28gcmVndWxhciBwYXJhIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRvIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjZXNzbyBOZWdhZG8nOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQWRpY2lvbmFyIEdydXBvJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXIgR3J1cG8nOwokbGFuZ1snYWRkdXNlciddID0gJ0FkaWNpb25hciBVc3UmYWFjdXRlO3Jpbyc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXN1JmFhY3V0ZTtyaW8gZW5jb250cmFkb3MgZW0gY29uZm9ybWlkYWRlIGNvbSBvIGNyaXQmZWFjdXRlO3Jpbyc7CiRsYW5nWydncm91cCddID0gJ0dydXBvJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWNpb25lIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbyBkZSBSZWdpc3Rybyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNb2RlbG8gZGUgc2EmaWFjdXRlO2RhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRlIExvZ2luJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyJmFjaXJjO25jaWFzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VyZW5jaWFtZW50byBkbyBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgcXVlIHVzdSZhYWN1dGU7cmlvcyBsb2d1ZW0gbm8gZnJvbnRlbmQgZG8gc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUCZhYWN1dGU7Z2luYSBkZSBmcmVudGUgcGFkci9hbyc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnJlVhY3V0ZTtsdGltYSBwJmFhY3V0ZTtnaW5hIGFjZXNzYWRhJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ091dHJhIHAmYWFjdXRlO2dpbmE6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRyZSBjb20gbyB0ZXh0byBkYSBpbWFnZW0nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pt_PT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRhbmRvIFV0aWxpemFkb3InOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOJmF0aWxkZTtvIGFsaW5oYXIgZm9ybXVsJmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnQ2xpcXVlIGFxdWkgY2FzbyBuJmF0aWxkZTtvIGNvbnNpZ2EgbGVtYnJhci1zZSBkb3Mgc2V1cyBkZXRhbGhlcyBkZSB1dGlsaXphZG9yJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGlxdWUgYXF1aSBjYXNvIG4mYXRpbGRlO28gY29uc2lnYSBsZW1icmFyLXNlIGRhIHN1YSBwYWxhdnJhIGNoYXZlJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVlIGFxdWkgcGFyYSBsb2dvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaXF1ZSBhcXVpIHBhcmEgYWp1c3RhciBhIHN1YSBwYWxhdnJhIGNoYXZlIG91IG91dHJhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgVmlzdWFsaXphciBVdGlsaXphZG9yJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbnRvJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgTm90aWZpY2EmY2NlZGlsOyZhdGlsZGU7byBFdmVudG8nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRW5kZXJlJmNjZWRpbDtvIEVtYWlsIHBhcmEgTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGRvIEVtYWlsIGRlIE5vdGlmaWNhJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ0Fzc3VudG8gZG8gRW1haWwgZGUgTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBOb3RpZmljYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnTm8gTG9naW4nOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdObyBMb2dvdXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnTmEgRXhwcmlyYSZjY2VkaWw7JmF0aWxkZTtvIGRhIFNlc3MmYXRpbGRlO28nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnTmEgQ3JpYSZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIE5vdm8gVXRpbGl6YWRvcic7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdOYSBSZW1vJmNjZWRpbDsmYXRpbGRlO28gZGUgdW0gVXRpbGl6YWRvcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdOYSBBbHRlcmEmY2NlZGlsOyZhdGlsZGU7byBkb3MgRGV0YWxoZXMgZGUgVXRpbGl6YWRvcic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnTmEgQ3JpYSZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIEdydXBvIGRlIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnTmEgUmVtbyZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIEdydXBvIGRlIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0EgcGVzcXVpc2EgcGVsb3Mgc2V1cyBkYWRvcyBkZSB1dGlsaXphZG9yIHRlcm1pbm91LiBGb2kgZW5jb250cmFkbyB1bSBub21lIGRlIHV0aWxpemFkb3IgY29tIGRldGFsaGVzIGlndWFpcyBhb3MgcXVlIGludHJvZHV6aXUuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdPIHNldSBub21lIGRlIHV0aWxpemFkb3IgJmVhY3V0ZTsnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnUmVjb21lbmRhbW9zIHF1ZSBndWFyZGUgZXN0YSBpbmZvcm1hJmNjZWRpbDsmYXRpbGRlO28gbnVtIGxvY2FsIHNlZ3VybywgbWFzIGFjZXNzJmlhY3V0ZTt2ZWwuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY29kZSB2ZXJpZmljYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgRGV0YWlscyBUZW1wbGF0ZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgQ29uZmlybSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm86IE1haXMgZG8gcXVlIHVtIHV0aWxpemFkb3IgZm9pIGVuY29udHJhZG8gY29tIG9zIGRhZG9zIHF1ZSBmb3JuZWNldSc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvIG5lbmh1bSB1dGlsaXphZG9yIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm86IE4mYXRpbGRlO28gZm9pIGVuY29udHJhZG8gbmVuaHVtIGdydXBvIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdTJm9hY3V0ZTsgTGVpdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dnZWQgb3V0IHBlbG8gYWRtaW5pc3RyYWRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnTW9zdHJhciBBcGVuYXMgVXRpbGl6YWRvcmVzIEF1dGVudGljYWRvcyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nb3V0IHV0aWxpemFkb3InOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnUHJvcHJpZWRhZGVzIGRvIFV0aWxpemFkb3InOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdIaXN0b3JpYWwgZG8gVXRpbGl6YWRvcic7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhcic7CiRsYW5nWydjbGVhciddID0gJ0xpbXBhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRhciBIaXN0b3JpYWwgZGUgVXRpbGl6YWRvciBQYXJhIEFTQ0lJIHF1ZSAmZWFjdXRlOyBwZWxvIG1lbm9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnTGltcGFyIEhpc3RvcmlhbCBkZSBVdGlsaXphZG9yIHF1ZSAmZWFjdXRlOyBwZWxvIG1lbm9zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1LXNlIGRvcyBzZXVzIGRldGFsaGVzIGRlIHV0aWxpemFkb3I/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBncnVwbyAoZSBwcm9wcmllZGFkZXMpIHBhcmEgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnU2ltJzsKJGxhbmdbJ25vJ10gPSAnTiZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdEZSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBTZW0gTGltaXRlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1VtYSBIb3JhIGRlIElkYWRlJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NlaXMgSG9yYXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnRG96ZSBIb3JhcyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1VtIERpYSBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdVbWEgU2VtYW5hIGRlIElkYWRlJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdWFzIFNlbWFuYXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1VtIE0mZWNpcmM7cyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHImZWNpcmM7cyBNZXNzZXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTZWlzIE1lc3NlcyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdVbSBBbm8gZGUgSWRhZGUnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQWdydXBhbWVudG8gZSBPcmRlbmEmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVnaXN0b3MgcXVlIGNvbmRpemVtIGNvbSBvcyBjcml0JmVhY3V0ZTtyaW9zJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yIERlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21lIGRlIFV0aWxpemFkb3IgQXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRGF0YSBEZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXRhIEFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnVGlwbyBkZSBFdmVudG8gRGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXBvIGRlIEV2ZW50byBBc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBJUCBEZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBJUCBBc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOJmF0aWxkZTtvIGZvaSBEZXRlY3RhZG8gbmVuaHVtIEhpc3RvcmlhbCc7CiRsYW5nWydyZXNldCddID0gJ1JlcG9yJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0FncnVwYXIgcG9yIEVuZGVyZSZjY2VkaWw7byBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRybyBkZSBUaXBvIGRlIEV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIGFwZW5hcyBldmVudG9zIGNvbSBtZW5vcyBkZTonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0ZSBkZSBQJmFhY3V0ZTtnaW5hJzsKJGxhbmdbJ2ZvciddID0gJ3BhcmEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZWxhdCZvYWN1dGU7cmlvIGRvIEhpc3RvcmlhbCBkbyBVdGlsaXphZG9yJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdEZXNjb25oZWNpZG8nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0VuZGVyZSZjY2VkaWw7byBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwbyBkZSBFdmVudG8nOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdWb2x0YXInOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09wZXJhJmNjZWRpbDsmYXRpbGRlO28gZGUgSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIENvbXBsZXRhZGEnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaGFzIFByb2Nlc3NhZGFzJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcyBFbmNvbnRyYWRvcyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVnaXN0b3MgQWRpY2lvbmFkb3MnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBlbmNvbnRyYXIgYXMgcHJvcHJpZWRhZGVzIGRvIGdydXBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIG9idGVyIHVtYSByZXNwb3N0YSBkbyBzZXJ2aWRvciBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ08gZmljaGVpcm8gKCVzKSBuJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ08gY2FtcG8gJXMgZXhjZWRldSBvIHRhbWFuaG8gbSZhYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vycm8gZGUgSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIChsaW5oYSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhYnJpciBvIGZpY2hlaXJvJzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oND4NCjxwPlRoZSBpbnB1dCBmaWxlIG11c3QgYmUgaW4gQVNDSUkgZm9ybWF0IHVzaW5nIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMuICBFYWNoIGxpbmUgaW4gdGhpcyBpbnB1dCBmaWxlICh3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhlYWRlciBsaW5lLCBkaXNjdXNzZWQgYmVsb3cpIHJlcHJlc2VudHMgb25lIHVzZXIgcmVjb3JkLiAgRWFjaCBsaW5lIG11c3QgY29udGFpbiB0aGUgc2FtZSBudW1iZXIgb2YgZmllbGRzLCBhbmQgdGhlIG9yZGVyIG9mIHRoZSBmaWVsZHMgaW4gZWFjaCBsaW5lIG11c3QgYmUgaWRlbnRpY2FsLjwvcD4NCjxoNT5IZWFkZXIgbGluZTwvaDU+DQo8dWw+DQo8bGk+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgbXVzdCBiZWdpbiB3aXRoIHR3byBwb3VuZCAoXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD4NCjxoNT5Db2x1bW5hciBEYXRhPC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY2ggYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPkRyb3Bkb3duIEZpZWxkcw0KICAgIDxwPlRoZSB2YWx1ZSBvZiBkcm9wZG93biBwcm9wZXJ0aWVzIGluIGFuIGltcG9ydCBmaWxlIGlzIHJlcHJlc2VudGVkIGFzIHRoZSBzdHJpbmcgdGhhdCBpcyBzaG93biBpbiB0aGUgZHJvcGRvd24gY29udHJvbCBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUuPC9wPg0KPC9saT4NCjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMNCiAgICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+DQo8L2xpPg0KPGxpPkltYWdlIEZpZWxkcw0KICAgIDxwPkltYWdlIGFyZSBmaWVsZHMgd2hvJiMwMzk7cyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgYSByZXF1aXJlZCBwYXJ0IG9mIHRoZSBkZXN0aW5hdGlvbiBncm91cCwgdGhlbiB0aGUgbmFtZSBzcGVjaWZpZWQgaW4gdGhlc2UgY29sdW1ucyBtdXN0IGV4aXN0IGluIHRoZSB1cGxvYWRzIGRpc3JlY3Rvcnkgb2YgdGhlIENNUyBpbnN0YWxsYXRpb24uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+DQonOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGFyIFV0aWxpemFkb3JlcyBwYXJhIEluY2x1cyZhdGlsZGU7byBubyBHcnVwbyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdGaWNoZWlybyBDU1YgZGUgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdGaWNoZWlybyBYTUwgZGUgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0YXIgVXRpbGl6YWRvcmVzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGFyIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDYW1pbmhvIGRlIERlc3Rpbm8gZGEgSW1hZ2VtJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTiZhdGlsZGU7byAmZWFjdXRlOyBwb3NzJmlhY3V0ZTt2ZWwgcmVtb3ZlciB1bSBncnVwbyBxdWUgYWluZGEgY29udGVtIHV0aWxpemFkb3Jlcyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRXN0ZSB1dGlsaXphZG9yIGomYWFjdXRlOyBzZSBlbmNvbnRyYSBhdXRlbnRpY2Fkbyc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUaGUgdGV4dCBmcm9tIHRoZSBpbWFnZSB3YXMgbm90IGVudGVyZWQgY29ycmVjdGx5JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdBbGxvdyB1c2VycyB0byBsb2dpbiBtb3JlIHRoYW4gb25jZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnSW1hZ2UgRmlsZSBFeHRlbnNpb25zIHRoYXQgVXNlcnMgYWxsb3dlZCB0byB1cGxvYWQnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ1VtIHV0aWxpemFkb3IgY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdFbmRlcmUmY2NlZGlsO28gZGUgRW1haWwgSW52JmFhY3V0ZTtsaWRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnTiZhdGlsZGU7byBmb2kgZW5jb250cmFkbyBuZW5odW0gZW5kcmUmY2NlZGlsO28gZGUgZW1haWwgcGFyYSBlc3RhIGNvbnRhJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXRpbGl6YWRvciBBZGljaW9uYWRvICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXRpbGl6YWRvciBSZW1vdmlkbyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmllZGFkZSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsb3IgKGV4cHJlc3MmYXRpbGRlO28gcmVndWxhciknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBlbSB1dGlsaXphJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ04mYXRpbGRlO28gaW50cm9kdXppdSBvIG5vbWUgZGUgdXRpbGl6YWRvcic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOJmF0aWxkZTtvIGludHJvZHV6aXUgbyBzZXUgZS1tYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ04mYXRpbGRlO28gaW50cm9kdXppdSBhIHBhbGF2cmEgY2hhdmUnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHknOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBMZW5ndGgnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyaWFkbyc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRlbmFyIFBvcic7CiRsYW5nWydzb3J0J10gPSAnT3JkZW5hJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXRpbGl6YWRvcmVzIG5vKHMpIGdydXBvKHMpIHNlbGVjaW9uYWRvKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0YXIgcmVzdWx0YWRvcyBhdCZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1RlbSBhIGNlcnRlemE/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnRm9pIGludHJvZHV6aWRvIHVtIGMmb2FjdXRlO2RpZ28gaW52JmFhY3V0ZTtsaWRvLCBwb3IgZmF2b3Igdm9sdGUgYSB0ZW50YXInOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0EgdGVtcG9yYXJ5IGNvZGUgZm9yIHlvdXIgdXNlciBpZCBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCB0byBkaXNwbGF5IHZlcmlmaWNhdGlvbiBmb3JtJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIGZvciBmb3Jnb3R0ZW4gcGFzc3dvcmQgZW1haWwnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1ZvYyZlY2lyYzsgb3Ugb3V0cmEgcGVzc29hIGluaWNpb3UgcGFyYSBlc3RhIGNvbnRhLCB1bSBwcm9jZXNzbyBkZSByZWN1cGVyYSZjY2VkaWw7JmF0aWxkZTtvIGRhIHBhbGF2cmEgY2hhdmUuIFZlcmlmaXF1ZSBvIHNldSBlbWFpbCBlIHNpZ2EgYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIHBhcmEgcHJvY2VkZXIgY29tIGEgcmVjdXBlcmEmY2NlZGlsOyZhdGlsZGU7byBkYSBtZXNtYS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm8gbmEgYmFzZSBkZSBkYWRvcyc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdFc3QmYWFjdXRlOyBhIHJlY2ViZXIgZXN0YSBtZW5zYWdlbSBwb3JxdWUgYWxndSZlYWN1dGU7bSBpbmljaW91IHVtIHByb2Nlc3NvIGRlIHJlY3VwZXJhJmNjZWRpbDsmYXRpbGRlO28gZGEgc3VhIHBhbGF2cmEgY2hhdmUuIENhc28gdGVuaGEgbWVzbW8gYSBlc3F1ZWNpZG8gZW50JmF0aWxkZTtvIGxlaWEgYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGFiYWl4bywgY2FzbyBjb250ciZhYWN1dGU7cmlvIHBvZGUgaWdub3JhciBlc3RhIG1lbnNhZ2VtIGUgcGVkaW1vcyBkZXNkZSBqJmFhY3V0ZTsgZGVzY3VscGEgcGVsbyBpbmNvbW9kby4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDJm9hY3V0ZTtkaWdvJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ08gc2VndWludGUgYyZvYWN1dGU7ZGlnbyBmb2kgZ2VyYWRvIGF1dG9tYXRpY2FtZW50ZSBlIGFsZWF0b3JpYW1lbnRlIGRlIGZvcm1hIGEgdmVyaWZpY2FyIGEgc3VhIGNvbnRhLiBRdWFuZG8gc2VndWlyIG8gbGluayBhYmFpeG8gdGVyJmFhY3V0ZTsgdW0gY2FtcG8gb25kZSBvIHRlciZhYWN1dGU7IGRlIGNvbG9jYXIuIE5vcm1hbG1lbnRlIGVzdGUgY2FtcG8gJmVhY3V0ZTsgcHJlZW5jaGlkbyBhdXRvbWF0aWNhbWVudGUsIG1hcyBubyBjYXNvIGRlIG4mYXRpbGRlO28gbyB0ZXIgc2lkbyBvIGMmb2FjdXRlO2RpZ28gJmVhY3V0ZTs6ICc7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0FvIHNlZ3VpciBvIGxpbmsgaXImYWFjdXRlOyBzZXIgbGV2YWRvIHBhcmEgbyBzaXRlIG9uZGUgcG9kZXImYWFjdXRlOyBpbnRyb2R1emlyIG8gYyZvYWN1dGU7ZGlnbyBlIHJlcG9yIHVtYSBwYWxhdnJhIGNoYXZlOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGVyZGV1IGEgc3VhIHBhbGF2cmEgY2hhdmUnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgQ01TTWFpbGVyIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdPIHNldSBwZWRpZG8gZm9pIGVudmlhZG8gcGFyYSBhIGNhaXhhIGRlIGNvcnJlaW8gJXMgY29tIGluc3RydSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBjb21vIHByb2NlZGVyIHBhcmEgcmVwb3IgYSBzdWEgcGFsYXZyYSBjaGF2ZS4gT2JyaWdhZG8nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdDYXNvIHRlbmhhIHBlcmRpZG8gYSBzdWEgcGFsYXZyYSBjaGF2ZSwgaW50cm9kdXphIG8gc2V1IG5vbWUgZGUgdXRpbGl6YWRvci4gQ2FzbyBlc3RlIHNlamEgZW5jb250cmFkbyBlbnZpYXJlbW9zLWxoZSB1bSBlbWFpbCBjb20gaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGRlIGNvbW8gcHJvY2VkZXIgcGFyYSBhIHJlcG9yLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlcyBGb3Jnb3QgUGFzc3dvcmQnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgTG9zdCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdBIHByb3ByaWVkYWRlICVzIG4mYXRpbGRlO28gZm9pIGVuY29udHJhZGEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Byb3BlcnRpZXMgZm91bmQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkaWNpb25hciBQcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnQSByZXF1aXJlZCBmaWVsZCAoJXMpIHdhcyBlbXB0eSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0ludHJvZHV6YSBhIHN1YSBub3ZhIHBhbGF2cmEgY2hhdmUgcGFyYSBwcm9jZWRlciAmYWdyYXZlOyBzdWEgYWx0ZXJhJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdOJmF0aWxkZTtvIHNlIGVuY29udHJhIGF1dGVudGljYWRvJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdG8nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdFc3RhIGNvbnRhIGV4cGlyb3UnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ltcHJvcGVyIGVtYWlsIGFkZHJlc3MgZm9ybWF0dGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ludmFsaWQgZXhwaXJ5IGRhdGUnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIHNldHRpbmcgcHJvcGVydHkgJXMgZm9yIHVzZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJbnZhbGlkIGdyb3VwIGlkICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnSGlkZGVuIGZpZWxkIG1hcmtlcic7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnSGlkZGVuIGZpZWxkIGNvbG9yJzsKJGxhbmdbJ2hpZGRlbiddID0gJ0VzY29uZGlkbyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnQSBwcm9wZXJ0eSB3aXRoIHRoYXQgbmFtZSBpcyBhbHJlYWR5IGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVuaHVtYSBwcm9wcmllZGFkZSBmb2kgZGVmaW5pZGEnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdOZW5odW1hIHByb3ByaWVkYWRhIGZvaSBzZWxlY2lvbmFkYSBwYXJhIGVzdGUgZ3J1cG8nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdOZW5odW0gR3J1cG8gZm9pIGRlZmluaWRvICZsYXF1bzsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwb3MgRW5jb250cmFkb3MnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ1ZvbHRhcic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgJmVhY3V0ZTsgdW0gY2FtcG8gb2JyaWdhdCZvYWN1dGU7cmlvJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ1ByJm9hY3V0ZTt4aW1vJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnVW0gR3J1cG8gY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnT2JyaWdhdCZvYWN1dGU7cmlvJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3BjaW9uYWwnOwokbGFuZ1snb2ZmJ10gPSAnRGVzbGlnYWRvJzsKJGxhbmdbJ3NpemUnXSA9ICdUYW1hbmhvJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1RhbWFuaG8nOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcG8nOwokbGFuZ1sndHlwZSddID0gJ1RpcG8nOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW0nOwokbGFuZ1snZW1haWwnXSA9ICdFbmRlcmUmY2NlZGlsO28gRW1haWwnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmVtIHZpbmRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ291dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNlIHRoaXMgZ3JvdXAgbmFtZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdBbHRlcmFyIERhZG9zJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTyBsb2dpbiBmYWxob3UgLSBOb21lIGRlIHV0aWxpemFkb3Igb3UgcGFsYXZyYSBjaGF2ZSBpbnYmYWFjdXRlO2xpZGEuJzsKJGxhbmdbJ2xvZ2luJ10gPSAnTG9naW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOb21lIGRlIFV0aWxpemFkb3InOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRW5kZXJlJmNjZWRpbDtvIGRlIEVtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1BhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNZW1vcml6YXItbWUgbmVzdGUgY29tcHV0YWRvcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGFyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRXNxdWVjZXUtc2UgZGEgc3VhIHBhbGF2cmEtY2hhdmUgb3UgJnF1b3Q7cGFzc3dvcmQmcXVvdDs/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1LXNlIGRvcyBzZXVzIGRldGFsaGVzIGRlIHV0aWxpemFkb3I/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnUGFkciZhdGlsZGU7byc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRhIG5lbmh1bWEgaW5mb3JtYSZjY2VkaWw7JmF0aWxkZTtvIHBhcmEgZXN0ZSB1dGlsaXphZG9yJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdPIG5vbWUgZGUgdXRsaXphZG9yICglcykgbiZhdGlsZGU7byBlc3QmYWFjdXRlOyBkaXNwb24maWFjdXRlO3ZlbCc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNhciBTTVRQIHBhcmEgdmFsaWRhciBlbmRlcmUmY2NlZGlsO29zIGRlIGUtbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnVGFtYW5obyBNJmlhY3V0ZTtuaW1vIGRhIFBhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnVGFtYW5obyBNJmFhY3V0ZTt4aW1vIGRhIFBhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnVGFtYW5obyBNJmlhY3V0ZTtuaW1vIGRvIE5vbWUgZGUgVXRpbGl6YWRvcic7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdUYW1hbmhvIE0mYWFjdXRlO3hpbW8gZG8gTm9tZSBkZSBVdGlsaXphZG9yJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0FzIFBhbGF2cmFzIENoYXZlIG4mYXRpbGRlO28gY29uZGl6ZW0nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yIEludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdQYWxhdnJhIENoYXZlIEludiZhYWN1dGU7bGlkYSc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXRhciBVdGlsaXphZG9yJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWRvJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0VzdGFkbyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdFc3RlIHV0aWxpemFkb3IgbiZhdGlsZGU7byAmZWFjdXRlOyBtZW1icm8gZGUgbmVuaHVtIGRvcyBncnVwb3MnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ1NlbSBQcm9wcmllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXRpdmEgZGUgaW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIGRlIHByb3ByaWVkYWRlcyBkdXBsaWNhZGFzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsb3InOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cG9zJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wcmllZGFkZXMnOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdOb21lIGRlIFByb3ByaWVkYWRlJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1ZhbG9yIGRlIFByb3ByaWVkYWRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkaWNpb25hcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWFsJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXInOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyYSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdFc3BlY2lmaWNhciBEYXRhJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG9yYXMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Jhcyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvcmFzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBTZW1hbmEnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBTZW1hbmFzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTSZlY2lyYztzJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1lc3Nlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNzZXMnOwokbGFuZ1snMXllYXInXSA9ICcxIEFubyc7CiRsYW5nWyduZXZlciddID0gJ051bmNhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYWxhdnJhIENoYXZlJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnRGUgTm92byc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnVW0gZ3J1cG8gY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkaXRhciBHcnVwbyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtZXRlcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdSZW1vdmVyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnVGVtIGNlcnRlemEgZGUgcXVlIGVzdGFzIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyBzJmF0aWxkZTtvIGNvcnJlY3RhcyBwYXJhIGVzdGUgZ3J1cG8/IFxuQ29sb2NhciB1bWEgcHJvcHJpZWRhZGUgb2ZmIG4mYXRpbGRlO28gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgbmEgdGFiZWxhIGRlIHByb3ByaWVkYWRlcyBkZXNzZSBncnVwby91dGlsaXphZG9yLiBFbGFzIHNpbXBsZXNtZW50ZSBuJmF0aWxkZTtvIGlyJmF0aWxkZTtvIGVzdGFyIGRpc3BvbiZpYWN1dGU7dmVpcy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1RlbSBhIGNlcnRlemEgcXVlIHF1ZXIgcmVtb3ZlciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnVGVtIGNlcnRlemEgZGUgcXVlIGRlc2VqYSBhcGFnYXIgY29tcGxldGFtZW50ZSBlc3RhIHByb3ByaWVkYWRlPyBcbkRlc3RhIGZvcm1hIHRhbWImZWFjdXRlO20gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgZG8gdXRpbGl6YWRvciBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZGljaW9uYXIgcmVsYSZjY2VkaWw7JmF0aWxkZTtvIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGEgYWRpY2lvbmFyIHV0aWxpemFkb3IgYSB1bSBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZXhjbHVpciB1bWEgcHJvcHJpZWRhZGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIHVtIGVuZGVyZSZjY2VkaWw7byBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05lbmh1bWEgcGVybWlzcyZhdGlsZGU7byBwYXJhIGVzY3JldmVyIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW52JmFhY3V0ZTtsaWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ04mYXRpbGRlO28gZm9pIGVuY29udHJhZG8gbmVuaHVtIGdydXBvJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBsaWNhcic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05vbWUgZGUgVXRpbGl6YWRvciBFeHByZXNzJm90aWxkZTtlcyBSZWd1bGFyZXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRlIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2Vzc28gTmVnYWRvJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJybyc7CiRsYW5nWydhZGRncm91cCddID0gJ0FkaWNpb25hciBHcnVwbyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGFyIEdydXBvJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBZGljb25hciBVdGlsaXphZG9yJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVdGlsaXphZG9yZXMgZW5jb250cmFkb3MgZGUgYWNvcmRvIGNvbSBjcml0JmVhY3V0ZTtyaW9zIGRlIGJ1c2NhJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3J1cG8nOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGRlIFJlZ2lzdG8nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9nb3V0JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9naW4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWNpcmM7bmNpYXMnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphZG9yZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VzdCZhdGlsZGU7byBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYW9zIHVzdSZhYWN1dGU7cmlvcyBhY2Vzc2FyICZhZ3JhdmU7IGZyZW50ZSBkbyBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdQcmltZWlyYSBwJmFhY3V0ZTtnaW5hIFBhZHImYXRpbGRlO28nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJyZVYWN1dGU7bHRpbWEgcCZhYWN1dGU7Z2luYSBhY2Vzc2FkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdXRyYSBwJmFhY3V0ZTtnaW5hOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0RpZ2l0ZSBvIHRleHRvIGRhIGltYWdlbSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ro_RO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVmFsb2FyZWEgc3BlY2lmaWNhdGEgcGVudHJ1ICVzIGVzdGUgZGVqYSBmb2xvc2l0YSBkZSBhbHQgdXRpbGl6YXRvcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmljJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZhbG9hcmVhIHNwZWNpZmljYXRhIHBlbnRydSAlcyAoJXMpIG51IGVzdGUgdW5pY2EnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ1NlIGZvcnRlYXphIGNhIHZhbG9yaWxlIGFjZXN0ZWkgcHJvcHJpZXRhdGkgc2EgZmllIHVuaWNlIHBlbnRydSB0b2F0ZSBjb250dXJpbGUgZGUgdXRpbGl6YXRvcmknOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnRm9sb3NpdCBwZW50cnUgZm9ybXVsYXJlbGUgZGUgYXV0ZW5yaWZpY2FyZSBzaSBkZWF1dGVudGlmaWNhcmUsIGFjZXN0IHBhcmFtZXRydSBkYWNhIGVzdGUgc3BlY2lmaWNhdCB2YSBpbmRpY2EgZmFwdHVsIGNhIHV0aWxpemF0b3J1bCBhciB0cmVidWkgc2EgZmllIHJlZGlyZWN0aW9uYXQgY2F0cmUgIHBhZ2luYSAodXJsLXVsKSB1bmRlIGVyYSB1dGlsaXphdG9ydWwgaW5haW50ZSBkZSBlZmVjdHVhcmVhIGFjdGl1bmlpLiBBY2VzdCBwYXJhbWV0cnUgdmEgc3VwcmFzY3JpZSBwcmVmZXJpbnRlbGUgZGUgcmVkaXJlY3Rpb25hcmUsIHNpIHBhcmFtZXRydWwgZGUgcmV0dXJudG8uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdGb2xvc2l0IGN1IHVudWwgZGluIGZvcm11bGFyZSwgYWNlc3QgcGFyYW1ldHJ1IHNwZWNpZmljYSBmYXB0dWwgY2EgZm9ybWVsZSBhciB0cmVidWkgc2EgbnUgZmllIHBsYXNhdGUgaW5saW5lLCBkdXBhIHRyaW1pdGVyZWEgZm9ybXVsYXJ1bHVpIHJlenVsdGF0dWwgdmEgaW5sb2N1aSBibG9jdWwgZGUgY29udGludXQgaW1wbGljaXQuJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdBdmVydGl6YXJlIFRpbWVvdXQgU2VzaXVuZSBBdXRlbnRpZmljYXJlJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnU2VzaXVuZWEgZGUgYXV0ZW50aWZpY2FyZSBlc3RlIHBlIGNhbGUgc2Egc2UgdGVybWluZSwgZGF0aSBjY2xpYyBwZSAmcXVvdDsmcXVvdDtPayZxdW90OyBwZW50cnUgYSBjb25maXJtYSBhY3Rpdml0YXRlYSBpbiBzaXRlLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIFJlc2V0YXJlIFNlc2l1bmUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnQWNlc3RhIGVzdGUgbnVtZWxlIGNhbXB1bHVpLCBzZSB2YSBmb2xvc2kgcGVudHJ1IGFwZWxhcmUgZGluIHNtYXJ0eS4gIFRyZWJ1aWUgc2EgY29udGluYSBudW1haSBjYXJhY3RlcmUgYWxmYW51bWVyaWNlIHNpIHVuZGVyc2NvcmUgKF8pLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXppdGF0b3JpJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0YXRpIHVudWwgc2F1IG1haSBtdWx0ZSBncnVwdXJpIGNhcmUgcG90IHZlZGVhIGFjZWFzdGEgcGFnaW5hJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdVbiBncnVwIHRyZWJ1aWUgc2EgZmllIHNlbGVjdGF0JzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdGF0aSB1bnVsJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBbiBzdGFydCc7CiRsYW5nWydlbmRfeWVhciddID0gJ0FuIHNmYXJzaXQnOwokbGFuZ1snZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnRGltZW5zaXVuZSBtaW5pYXR1cmEnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0RpbiBHcnVwIFV0aWxpemF0b3JpIE1vZGlmaWNhdCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdQcmVhIG11bHRpIHV0aWxpemF0b3JpIHN1bnQgc2VsZWN0YXRpIHBlbnRydSBvcGVyYXRpdW5pIGluIGdydXAuLi4uIFZhIHJ1Z2FtIHNhIHNlbGVjdGF0aSBtYXhpbSAyNTAnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdTdW50ZXRpIHNpZ3VyIGNhIGRvcml0aSBzYSBzdGVyZ2V0aSB1dGlsaXphdG9yaWkgc2VsZWN0YXRpPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTdGVyZ2VyZSBzZWxlY3RpYSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmFyZSBudW1lIHV0aWxpemF0b3IgbGEgaW50YW1wbGFyZSBjYW5kIHNlIGFkYXVnYSB1dGlsaXphdG9yaSBub2knOwokbGFuZ1snbW9udGhzJ10gPSAnbHVuaSc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnUGVyaW9hZGEgaW1wbGljaXRhIGV4cGlyYXJlIHV0aWxpemF0b3InOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnU2V0YXJpIG5vdGlmaWNhcmUnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdTZXRhcmkgcHJvcHJpZXRhdGUnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdTZXRhcmkgcmVkaXJlY3Rpb25hcmUnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ1NldGFyaSBnZW5lcmFsZSc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2V0YXJpIHNlc2l1bmkgc2kgY29va2llLXVyaSc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ1NldGFyaSBjYW1wJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1N0ZWd1bGV0dWwgbG9zdHVzZXJuYW1lIHBvYXRlIGZpIGZvbG9zaXQgbnVtYWkgbGEgY2FtcHVyaSBvYmxpZ2F0b3JpaSc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdTZSBwZXJtaXRlIGZvbG9zaXJlYSBlZGl0b3J1bHVpIHd5c2l3eWcgcGVudHJ1IGFjZWFzdGEgYXJpZSBkZSB0ZXh0JzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGE6IDwvc3Ryb25nPiBBY2Vhc3RhIGZvbG9zZXN0ZSBmdW5jdGlhIG1jcnlwdCBwZW50cnUgY3JpcHRhcmUsIHNpIG51IGF1IHB1dHV0IGZpIHN0ZXJzZSBkaW4gaW5zdGFsYXJlYSBkdW1uZWF2b2FzdHJhLiBMdWF0aSBsZWdhdHVyYSBjdSBhZG1pbmlzdHJhdG9ydWwgc2VydmVydWx1aS4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGFyZSB1dGlsaXphdG9yJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnTnUgc2UgcHVuIGlubGluZSBmb3JtdWxhcmVsZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWMgYWljaSBkYWNhIGF0aSB1aXRhdCBkZXRhbGlpbGUgZGUgYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnQ2xpYyBhaWNpIGRhY2EgYXRpIHVpdGF0IHBhcm9sYSc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWMgYWljaSBwZW50cnUgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljIGFpY2kgcGVudHJ1IGEgbW9kaWZpY2EgcGFyb2xhIHNhdSBhbHRlIGluZm9ybWF0aWknOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaXp1YWxpemFyZSB0ZW1wbGF0ZSB1dGlsaXphdG9yJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbmltZW50dCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnTm90aWZpY2FyZSBldmVuaW1lbnQgRkVVJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0FkcmVzYSBlLW1haWwgbm90aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZS1tYWlsIG5vdGlmaWNhcmUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnU3ViaWVjdCBlLW1haWwgbm90aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWNhcmkgZS1tYWlsJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdMYSBhdXRlbnRpZmljYXJlJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnTGEgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0xhIGV4cGlyYXJlIHNlc2l1bmUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnTGEgY3JlYXJlIGNvbnQgdXRpbGl6YXRvciBub3UnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnTGEgc3RlcmdlcmUgdXRpbGl6YXRvcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdMYSBtb2RpZmljYXJlIHNldGFyaSB1dGlsaXphdG9yJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdMYSBjcmVhcmUgZ3J1cCB1dGlsaXphdG9yaSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnTGEgc3RlcmdlcmUgZ3J1cCB1dGlsaXphdG9yaSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0FtIGdhc2l0IHVuIG51bWUgZGUgdXRpbGl6YXRvciBjYXJlIHNlIHBvdHJpdmVzdGUgY3UgZGV0YWxpaWxlIGludHJvZHVzZSBkZSBkdW1uZWF2b2FzdHJhLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnTnVtZWxlIGR1bW5lYXZvYXN0cmEgZGUgdXRpbGl6YXRvciBlc3RlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZhIHJlY29tYW5kYW0gc2EgcGFzdHJhdGkgYWNlc3RlIGluZm9ybWF0aWkgaW50ci11biBsb2Mgc2lndXIsIGRhciBpbiBhY2VsYXNpIHRpbXAgdW5kZSBzYSBsZSBnYXNpdGkgdXNvci4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ0FsaWFzL0lEIHBhZ2luYSB1bmRlIHNhIHNlIHNhcmEgZHVwYSBzY2hpbWJhcmUgc2V0YXJpJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0FsaWFzL0lEIHBhZ2luYSB1bmRlIHNhIHNlIHNhcmEgZHVwYSBjb2R1bCBkZSB2ZXJpZmljYXJlIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBkZXRhbGlpIG51bWUgdXRpbGl6YXRvciBwaWVyZHV0JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgY29uZmlybWFyZSBudW1lIHV0aWxpemF0b3IgcGllcmR1dCc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vyb2FyZTogTWFpIG11bHQgZGUgdW4gc2luZ3VyIGNvbnQgZGUgdXRpbGl6YXRvciBzZSBwb3RyaXZlc2MgY3UgZGF0ZWxlIHNwZWNpZmljYXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vyb2FyZTogTnUgYW0gZ2FzaXQgbmljaSB1biB1dGlsaXphdG9yIGNhcmUgc2EgY29yZXNwdW5kYSc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJvYXJlOiBOdSBhIGZvc3QgZ2FzaXQgbmljaSB1biBncnVwIGN1IGFjZXN0IG51bWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdOdW1haSBjaXRpcmUnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0NsYXNhIG1hbmlwdWxhdG9yIHV0aWxpemF0b3InOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnU2NvcyBkaW4gY29udCBkZSBjYXRyZSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTZSBhZmlzZWF6YSBudW1haSB1dGlsaXphdG9yaWkgYXV0ZW50aWZpY2F0aSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnU2NvYXRldGkgZGluIGNvbnQgYWNlcyB1cmlsaXphdG9yJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByaWV0YXRpIHV0aWxpemF0b3InOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdJc3RvcmljIHV0aWxpemF0b3InOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0YXJlJzsKJGxhbmdbJ2NsZWFyJ10gPSAnR29saXJlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGFyZSBpc3RvcmljIHV0aWxpemF0b3JpIGNhdHJlIEFTQ0lJIGNhcmUgc3VudCBtYWNhcic7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0dvbGlyZSBpbnJlZ2lzdHJhcmkgaXN0b3JpYyB1dGlsaXphdG9yIGNhcmUgc3VudCBtYWNhcic7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdBdGkgdWl0YXQgZGF0ZWxlIGRlIGF1dGVudGlmaWNhcmU/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyZSBkZWZpbml0aWUgZ3J1cCAoc2kgcHJvcHJpZW50YXRpbGUpIGNhdHJlIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnTWVudGVuYW50YSBpc3RvcmljIHV0aWxpemF0b3InOwokbGFuZ1sneWVzJ10gPSAnRGEnOwokbGFuZ1snbm8nXSA9ICdOdSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdhbCc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBGYXJhIExpbWl0YSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdPIG9yYSB2ZWNoaW1lJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJzYgb3JlIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnMTIgb3JlIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdPIHppIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnTyBzYXB0YW1hbmEgdmVjaGltZSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnMiBzYXB0YW1hbmkgdmVjaGltZSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnTyBsdW5hIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJzMgbHVuaSB2ZWNoaW1lJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnNiBsdW5pIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVW4gYW4gdmVjaGltZSc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwYXJlIHNpIHNvcnRhcmUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0lucmVnaXN0cmFyaSBjYXJlIHNlIHBvdHJpdmVzYyBjdSBjcml0ZXJpaWxlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTnVtZSB1dGlsaXphdG9yIGRlc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ051bWUgdXRpbGl6YXRvciBhc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0RhdGEgZGVzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXRhIGFzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXAgZXZlbmltZW50IGRlc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXAgZXZlbmltZW50IGFzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdBZHJlc2EgSVAgZGVzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0FkcmVzYSBJUCBhc2NlbmRlbnQnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ051IGFzLWEgZGV0ZWN0YXQgaXN0b3JpYyc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0YXJlJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBhcmUgZHVwYSBhZHJlc2EgSVAnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0cnUgdGlwIGV2ZW5pbWVudCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdTZSBhZmlzZWF6YSBudW1haSBldmVuaW1lbnRlbGUgY2FyZSBzdW50IG1haSBwdXRpbiBkZTonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0YSBwYWdpbmEnOwokbGFuZ1snZm9yJ10gPSAncGVudHJ1JzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnUmFwb3J0IGlzdG9yaWMgdXRpbGl6YXRvcmknOwokbGFuZ1sndW5rbm93biddID0gJ05lY3Vub3NjdXQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0FkcmVzYSBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwIGV2ZW5pbWVudCc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ0ludG9hcmNlcmUnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09wZXJhdGl1bmUgaW1wb3J0IGZpbmFsaXphdGEnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaWkgcHJvY2VzYXRlJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcm9yaSBpbnRhbG5pdGUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0lucmVnaXN0cmFyaSBhZGF1Z2F0ZSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTnUgYXUgZm9zdCBnYXNpdGUgcHJvcHJpZXRhdGkgcGVudHJ1IGdydXB1bCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ051IGEgdmVuaXQgbmljaSB1biByYXNwdW5zIGRlIGxhIHNlcnZlcnVsIFNNVFAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlzaWVydWwgc3BlY2lmaWNhdCAoJXMpIG51IGEgcHV0aXQgZmkgZ2FzaXQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1ZhbG9hcmUgaW52YWxpZGEgcGVudHJ1IGNhbXB1bCBkcm9wZG93biBzYXUgbXVsdGlzZWxlY3QgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdDYW1wdWwgJXMgZGVwYXNlc3RlIGx1bmdpbWVhIG1heGltYSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vyb2FyZSBsYSBpbXBvcnQgKGxpbmlhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ051IGF1IHB1dGl0IGZpIG9idGludXRlIGRlZmluaXRpaWxlIHByb3ByaWV0YXRpaSAoZXJvYXJlIGludGVybmEpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGxhIHNldGFyZSBpbmZvcm1hdGlpIHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ051IGEgZm9zdCBnYXNpdGEgbyBjb2xvYW5hIGNhcmUgc2Egc2UgcG90cml2ZWFzY2EgY3UgY2FtcHVsIG9ibGlnYXRvcml1ICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnTnUgYXUgZm9zdCBnYXNpdGUgcHJvcHJpZXRhdGkgcGVudHJ1IGdydXB1bCBzcGVjaWZpY2F0JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdGaXNpZXJ1bCBzcGVjaWZpY2F0IHBlbnRydSBpbXBvcnQgbnUgZXN0ZSBpbiBmb3JtYXR1bCBjb3JlY3QnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ051IHMtYSBwdXR1dCBkZXNjaGlkZSBmaXNpZXJ1bCc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5JbmZvcm1hdGlpIGZvcm1hdCBmaXNpZXI8L2g0Pg0KPHA+RmlzaWVydWwgZGUgaW1wb3J0IHRyZWJ1aWUgc2EgZmllIGluIGZvcm1hdCBBU0NJSSBzaSBzYSBmb2xvc2Vhc2NhIHZhbG9yaSBzZXBhcmF0ZSBwcmluIHZpcmd1bGEuIEZpZWNhcmUgbGluaWUgZGluIGZpc2llciAoY3UgZXhjZXB0aWEgbGluaWVpIGhlYWRlciwgZGlzY3V0YXRhIG1haSBqb3MpIHJlcHJlemludGEgbyBpbnJlZ2lzdHJhcmUgZGUgdXRpbGl6YXRvci4gT3JkaW5lYSBjYW1wdXJpbG9yIGRpbiBmaWVjYXJlIGxpbmllIHRyZWJ1aWUgc2EgZmllIGlkZW50aWNhLjwvcD4NCjxoNT5MaW5pZSBoZWFkZXI8L2g1Pg0KPHVsPg0KPGxpPlByaW1hIGxpbmllIGEgZmlzaWVydWx1aSB0cmVidWllIHNhIGluY2VhcGEgY3UgMiBjYXJhY3RlcmUgZGlleiAoXCMpLCBzaSBkYSBudW1lbGUgZmllY2FydWkgY2FtcCBkaW4gZmlzaWVyLiBOdW1lbGUgYWNlc3RvciBjYW1wdXJpIGVzdGUgc2VtbmlmaWNhdGl2LiBTdW50IHVuZWxlIGNhbXB1cmkgb2JsaWdhdG9yaWkgKHZlZGV0aSBtYWkgam9zKSwgc2kgYWx0ZSBudW1lIHRyZWJ1aWUgc2Egc2EgcG90cml2ZWFzY2EgY3UgbnVtZWxlIHByb3ByaWV0YXRpaSBhc29jaWF0ZSBncnVwdWx1aSBpbiBjYXJlIHNlIGFkYXVnYSB1dGlsaXphdG9yaWkuPC9saT4NCjxsaT5Qcm9jZXN1bCBkZSBpbXBvcnQgdmEgZXN1YSBkYWNhIGNhbXB1cmlsZSBkaW4gZmlzaWVydWwgZGUgaW1wb3J0IG51IHNlIHBvdHJpdmVzYyBjdSB0b2F0ZSBwcm9wcmlldGF0aWxlIG9ibGlnYXRvcmlpIGFzb2NpYXRlIGdydXB1bHVpIGluIGNhcmUgc2UgYWRhdWdhIHV0aWxpemF0b3JpaTwvbGk+DQo8bGk+ZmlzaWVydWwgZGUgaW1wb3J0IHBvYXRlIGNvbnRpbmUgY2FtcHVyaSByZXByZXplbnRhbmQgcHJvcHJpZXRhdGkgb3B0aW9uYWxlIGFsZSBncnVwdWx1aSBzcGVjaWZpY2F0LjwvbGk+DQo8bGk+UHJvY2VzdWwgZGUgaW1wb3J0IHZhIGlnbm9yYSBvcmljZSBjYW1wdXJpIGRpbiBmaXNpZXIgY2FyZSBudSBzdW50IGN1bm9zY3V0ZSBzYXUgY2FyZSBzZSBwb3RyaXZlc2MgY3UgcHJvcHJpZXRhdGkgY2FyZSBzdW50IDxlbT5pbmFjdGl2ZTwvZW0+IGluIGdydXB1bCBzcGVjaWZpY2F0LjwvbGk+DQo8L3VsPg0KPGg1PkRhdGUgY29sb2FuZTwvaDU+DQo8dWw+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IC0gSUQgdXRpbGl6YXRvci4gTyB2YWxvYXJlIGluIGFjZXN0IGNhbXAgdmEgaW5kaWNhIGNhIGZhY2V0aSBvIGFjdHVhbGl6YXJlLjwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gLSBOdW1lbGUgZGUgdXRpbGl6YXRvciBkb3JpdC4NCiAgICA8cD5BY2VzdCBjYW1wIHRyZWJ1aWUgc2EgZXhpc3RlIGluIGxpbmlhIGhlYWRlciBzaSBpbiBmaWVjYXJlIGxpbmllIGRpbiBmaXNpZXJ1bCBkZSBpbXBvcnQuIEluZWdpc3RyYXJlYSB2YSBlc3VhIGRhY2EgdW4gdXRpbGl6YXRvciBjdSBhY2VsYXNpIG51bWUgZGUgdXRpbGl6YXRvciBleGlzdGEgZGVqYSBpbiBiYXphIGRlIGRhdGUuPC9wPjwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gLSBQYXJvbGEgY2FyZSBzZSBzZXRhZXphIHBlbnRydSB1dGlsaXphdG9yPC9saT4NCjxsaT5DYW1wdWwgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IC0gZGUgZmFjdXQ8L2xpPg0KPGxpPkNhbXB1bCA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gLSBkZSBmYWN1dDwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+Z3JvdXBuYW1lPC9zdHJvbmc+IC0gR3J1cHVyaWxlIGluIGNhcmUgZG9yaXRpIHV0aWxpemF0b3J1bCBzYSBmaWUgZmFjdXQgbWVtYnJ1LiBEYWNhIG51IHN1bnQgY29tcGxldGF0ZSB0b2F0ZSBjYW1wdXJpbGUgY2VydXRlIGxhIGluc2VyYXJlL2FjdHVhbGl6YXJlIGlucmVnaXN0cmFyZSB2YSBlc3VhLiBWZWRldGkgbGEgQ2FtcHVyaSBNdWx0aXNlbGVjdCBtYWkgam9zIHBlbnRydSBzaW50YXhhLjwvbGk+DQo8bGk+Q2FtcHVyaSBEcm9wZG93bi9SYWRpbw0KICAgIDxwPlZhbG9hcmVhIHByb3ByaWV0YXRpbG9yIGRyb3Bkb3duIGludHItdW4gZmlzaWVyIGRlIGltcG9ydCBlc3RlIHJlcHJlemVudGF0YSBjYSBzaXJ1bCBjYWUgc2UgYWZpc2VhemEgaW4gY2FtcHVsIGRyb3Bkb3duIGRpbiBtb2R1bHVsIEZyb250RW5kVXNlcnMuPC9wPg0KPC9saT4NCjxsaT5DYW1wdXJpIE11bHRpc2VsZWN0DQogICAgPHA+Q2FtcHVyaWxlIE11bHRpc2VsZWN0IHN1bnQgY29uaXRudXRlIGluIGZpc2llciBjYSBvIGxpc3RhIHNlcGFyYXRhIGRlIHN0cmluZ3VyaSwgdW5kZSBmaWVjYXJlIHN0cmluZyByZXByZXppbnRhIHRleHR1bCBhZmlzYXQgaW4gbGlzdGEgbXVsdGlzZWxlY3Q8L3A+DQo8L2xpPg0KPGxpPkNhbXB1cmkgRGF0YQ0KICAgIDxwPlRyZWJ1aWUgc2EgZmllIGluIGZvcm1hdHVsIE1NLURELVlZWVk8L3A+DQo8L2xpPg0KPGxpPkNhbXB1cmkgSW1hZ2luZQ0KICAgIDxwPkltYWdpbmlsZSBzdW50IGNhbXB1cmkgYSBjYXJvciBudW1lIGRlIGNvbG9hbmEgc2UgcG90cml2ZXN0ZSBjdSBvIHByb3ByaWV0YXRlIGRlIHRpcCBpbWFnaW5lLiBEYWNhIGFjZXN0IGNhbXAgZXN0ZSBvIHBhcnRlIG9ibGlnYXRvcmllIGRpbiBncnVwdWwgZGUgZGVzdGluYXRpZSwgYXR1bmNpIG51bWVsZSBzcGVjaWZpY2F0IGluIGFjZXN0ZSBjb2xvYW5lIHRyZWJ1aWUgc2EgZXhpc3RlIGluIGZvbGRlcnVsIC91cGxvYWRzIGEgQ01TTVMuIERhY2EgaW1hZ2luZWEgbnUgZXhpc3RhLCBzaSBjYW1wdWwgZXN0ZSBvYmxpZ2F0b3JpdSwgYXR1bmNpIGlucmVnaXN0cmFyZWEgdmEgZXN1YS4gPC9wPjwvbGk+DQo8L3VsPg0KPGg1Pk5vdGU8L2g1Pg0KPHA+UHJvY2VzdWwgZGUgaW1wb3J0IGVzdGUgc3ViaWVjdCBhbCBsaW1pdGFyaWxvciBpbXB1c2UgZGUgY2VsIGNhcmUgb2ZlcmEgaG9zdGluZ3VsLCBjdW0gYXIgZmkgbGltaXRhcmlsZSBkZSBtZW1vcmllLCB0aW1wIGRlIHByb2Nlc2FyZSwgZGltZW5zaXVuZSB1cGxvYWQgZmlzaWVyLCBzaSByZXN0cmljdGlpIHNhZmUgbW9kZS4gT3JpY2FyZSBkaW4gYWNlc3RlIGxpbWl0YXJpIHBvdCBjYXV6YSBjYSBpbXBvcnR1bCBzYSBlc3VlemUuIENhIGF0YXJlIGluY2VyY2F0aSBzYSBwYXN0cmF0aSBmaXNpZXJlbGUgZGUgaW1wb3J0IGxhIGRpbWVuc2l1bmkgcmVkdXNlLCBzaSBzaW1wbGUgaW4gc3RydWN0dXJhLjwvcD4NCjxwPkRlc2kgYW0gZmFjdXQgb3JpY2UgZWZvcnQgcGVudHJ1IGEgbmUgYXNpZ3VyYSBjYSBudSBlc3RlIHBvc2liaWxhIGNvcnVwZXJlYSBiYXplaSBkZSBkYXRlLCBlc3RlIGRlIHByZWZlcmF0IHNhIGVmZWN0dWF0aSB1biBiYWNrLXVwIGFsIGJhemVpIGRlIGRhdGUgaW5haW50ZSBkZSBlZmVjdHVhcmVhIGltcG9ydHVsdWkuPC9wPg0KPHA+RGF0ZWxlIGV4cG9ydGF0ZSBzdW50IGluIGFjZWxhc2kgZm9ybWF0IGNhIGNlbCBjZXJ1dCBwZW50cnUgaW1wb3J0LjwvcD4NCjxoNT5FeGVtcGx1PC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRhcmUgdXRpbGl6YXRvcmkgaW4gYWNlc3QgZ3J1cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnRyb2R1Y2VyZSBmaXNpZXIgQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW50cm9kdWNlcmUgZmlzaWVyIFhNTCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnRhcmUgdXRpbGl6YXRvcmknOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXJlIHV0aWxpemF0b3JpJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0dvbGlyZSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NhbGUgZGVzdGluYXRpZSBpbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBhcGFydXQgbyBwcm9ibGVtYSBjdSB1biB1cGxvYWQgbGlwc2EgKGRhciBvYmxpZ2F0b3JpdSknOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0Zpc2llcnVsIFhNTCBmdXJuaXphIG51IGEgcHV0dXQgZmkgcGFyc2F0JzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdOdSBzZSBwb2F0ZSBzdGVyZ2UgdW4gZ3J1cCBjYXJlIGFyZSBpbmNhIHV0aWxpemF0b3JpJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdBY2VzdCB1dGlsaXphdG9yIGVzdGUgZGVqYSBhdXRlbnRpZmljYXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGV4dHVsIGRpbiBpbWFnaW5lIG51IGEgZm9zdCBpbnRyb2R1cyBjb3JlY3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1NlIHBlcm1pdGUgY2EgdXRpbGl6YXRvcmlpIHNhIHNlIGF1dGVudGlmaWNlIG1haSBtdWx0IGRlIG8gc2luZ3VyYSBkYXRhJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdFeHRlbnNpaSBmaXNpZXJlIGltYWdpbmUgY2FyZSBzdW50IHBlcm1pc2UgbGEgdXBsb2FkIHBlbnRydSB1dGlsaXphdG9yaSc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBzdGVyczwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIGRlIHV0aWxpemF0b3I8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBjcmVhdDwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIGRlIHV0aWxpemF0b3I8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBhY3R1YWxpemF0IChmaWUgZWwgc2luZ3VyIGZpZSBkZSB1biBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE51bWVsZSBkZSB1dGlsaXphdG9yPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEIHV0aWxpemF0b3I8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgZXN0ZSBjcmVhdDwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOdW1lbGUgZ3J1cHVsdWk8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gRGVzY3JpZXJlIGdydXA8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgZ3J1cDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPlVuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gZ3J1cCBlc3RlIHN0ZXJzPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE51bWVsZSBncnVwdWx1aTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCBncnVwPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+VW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biB1dGlsaXphdG9yIHNlIGF1dGVudGlmaWNhPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRC11bCB1dGlsaXphdG9ydWx1aSBjYXJlIHMtYSBhdXRlbnRpZmljYXQ8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIHV0aWxpemF0b3J1bHVpIGNhcmUgcy1hIGF1dGVudGlmaWNhdDwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBBZHJlc2EgSVAgYSBjbGllbnR1bHVpPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPlVuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gdXRpbGl6YXRvciBpZXNlIGRpbiBjb250PC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBOdW1lbGUgZGUgdXRpbGl6YXRvciBhbCBjZWx1aSBjYXJlIGEgaWVzaXQgZGluIGNvbnQ8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+VW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCBvIHNlc2l1bmUgdXRpbGl6YXRvciBleHBpcmE8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE51bWVsZSBkZSB1dGlsaXphdG9yIHBlbnRydSBjYXJlIGEgZXhwaXJhdCBzZXNpdW5lYTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCB1dGlsaXphdG9yPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biB1dGlsaXphdG9yIHNlIGF1dGVudGlmaWNhIGluIHNpdGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gdXRpbGl6YXRvciBpZXNlIGRpbiBjb250JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCBvIHNlc2l1bmUgdXRpbGl6YXRvciBhIGV4cGlyYXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGNvbnQgbm91IHV0aWxpemF0b3IgZXN0ZSBjcmVhdCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgaW5mb3JtYXRpaWxlIHVudWkgdXRpbGl6YXRvciBzdW50IGFjdHVhbGl6YXRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biBjb250IHV0aWxpemF0b3IgZXN0ZSBzdGVycyc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgdXRpbGl6YXRvcmkgZXN0ZSBjcmVhdCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgdXRpbGl6YXRvcmkgZXN0ZSBhY3R1YWxpemF0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gZ3J1cCB1dGlsaXphdG9yaSBlc3RlIHN0ZXJzJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwIGJhY2tlbmQnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBVcm1hdG9hcmVsZSBtYWNyby11cmkgcG90IGZpIGZvbG9zaXRlIGluIGFjZXN0ZSBjYW1wdXJpOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gQ2FuZCBzZSBmb2xvc2VzdGUgbWFjcm8tdWwgeyRncm91cH0sIHNpc3RlbXVsIHZhIGlubG9jdWkgY3UgbnVtZWxlIHByaW11bHVpIGdydXAgZGluIGNhcmUgZmFjZSBwYXJ0ZSB1dGlsaXphdG9ydWwsIHNpIHZhIHJlZGlyZWN0aW9uYSBjYXRyZSBhY2VhIHBhZ2luYS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRhdGkgYWNlc3QgY2FtcCBwZW50cnUgYSByZXNldGEgcGFyb2xhIHV0aWxpemF0b3J1bHVpJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0YXRpIGFjZXN0IGNhbXAgcGVudHJ1IGEgcmVzZXRhIHBhcm9sYSB1dGlsaXphdG9ydWx1aSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVbiB1dGlsaXphdG9yIGN1IGFjZWxhc2kgbnVtZSB1dGlsaXphdG9yIGV4aXN0YSBkZWphJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ051IGF1IGZvc3Qgb2J0aW51dGUgcmV6dWx0YXRlIGRpbiBleHBvcnR1bCBDU1YnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTHVuZ2ltZSBjYW1wIG51bWUgdXRpbGl6YXRvcic7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMdW5naW1lIGNhbXAgcGFyb2xhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMdW5naW1pIE1pbi9NYXggcGVudHJ1IHBhcm9sYSBpbnZhbGlkZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTHVuZ2ltaSBNaW4vTWF4IHBlbnRydSBudW1lIHV0aWxpemF0b3IgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0FkcmVzYSBkZSBlLW1haWwgaW52YWxpZGEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdOdSBhbSBnYXNpdCBvIGFkcmVzYSBkZSBlLW1haWwgcGVudHJ1IGFjZXN0IGNvbnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGxhIHNldGFyZSBpbmZvcm1hdGlpIHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWEgbGEgc2V0YXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVdGlsaXphdG9yIGFkYXVnYXQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGlsaXphdG9yIHN0ZXJzIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3ByaWV0YXRlJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvYXJlIChleHByZXNpZSByZWd1bGFyYSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBVEVOVElFOiBBY2VzdGUgY2FtcHVyaSBhZmVjdGVhemEgZGltZW5zaXVuZWEgY2FtcHVyaWxvciBkZSBpbnRyb2R1Y2VyZSBwZW50cnUgZm9ybXVsYXJlLiBTY2FkZXJlYSBhY2VzdHVpIG51bWFyIHBlIHVuIHNpdGUgZXhpc3RlbnQgcG9hdGUgZmkgY29udHJpbmRpY2F0YSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU3VudGV0aSBzaWd1ciBjYSBkb3JpdGkgc2EgYWp1c3RhdGkgcHJlZmVyaW50ZWxlIG1vZHVsdWx1aT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0FkcmVzYSBkZSBlLW1haWwgZm9sb3NpdGEgZGVqYSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdTZSBmb2xvc2VzYyBjb29raWUtdXJpIHBlbnRydSBwYXN0cmFyZSBkZXRhbGlpIGF1dGVudGlmaWNhcmUnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOdW1lIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1NlIHBlcm1pdGUgZm9sb3NpcmVhIGFkcmVzZWxvciBkZSBlLW1haWwgZHVwbGljYXRlJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0FkcmVzYSBkZSBlLW1haWwgZXN0ZSBudW1lbGUgZGUgdXRpbGl6YXRvcic7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdTZSBpbmNlYXJjYSBwYXN0cmFyZWEgYXV0ZW50aWZpY2FyaWxvciBpbiB2aWF0YSBwcmluIGZvbG9zaXJlYSB1bnVpIGNvb2tpZSA8ZW0+KGNvb2tpZS11bCBlc3RlIHJlc2V0YXQgbGEgYWN0aXZpdGFlIGluIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKFNlIHBlcm1pdGUgZXhpc3RlbnRhIG1haSBtdWx0b3IgdXRpbGl6YXRvcmkgY3UgYWNlZWFzaSBhZHJlc2EgZGUgZS1tYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGFkcmVzYSBkZSBlLW1haWwgYSB1dGlsaXphdG9yaWxvciBlc3RlIGZvbG9zaXRhIGNhIG51bWUgZGUgdXRpbGl6YXRvciAtLSBudSBhY3RpdmF0aSBhY2Vhc3Rhb3B0aXVuZSBpbXByZXVuYSBjdSAmcXVvdDtTZSBwZXJtaXRlIGZvbG9zaXJlYSBhZHJlc2Vsb3IgZGUgZS1tYWlsIGR1cGxpY2F0ZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnU2UgcGVybWl0ZSByZW1pbmRlcmUgZHVwbGljYXQgcGVudHJ1ICZxdW90O3JlY3VwZXJhcmUgcGFyb2xhJnF1b3Q7Pyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoU2UgcGVycm1pdGUgdXRpbGl6YXRvcmlsb3Igc2EgY2VhcmEgbyBub3VhIHBhcm9sYSwgY2hpYXIgZGFjYSBudSBhdSBhY3Rpb25hdCBsYSBvIGNlcmVyZSBzaW1pbGFyYSBleGlzdGVudGEgZGVqYSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdTZSBmb2xvc2VzYyBwZXJtaXNpdW5pIHNwZWNpZmljZSBwZW50cnUgVXRpbGl6YXRvciBGcm9udC1lbmQ/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhJbiBtb2Qgbm9ybWFsLCBwZXJtaXNpdW5pbGUgcGVudHJ1IHV0aWxpemF0b3JpaSBGRSBzdW50IGFjZWxlYXNpIGNhIHNpIHBlcm1pc2l1bmlsZSBlY2hpdmFsZW50ZSBkaW4gYXJpYSBkZSBhZG1pbmlzdHJhcmVjdW0gYXIgZmkgQWRhdWdhcmUgVXRpbGl6YXRvciwgQWRhdWdhcmUgR3J1cCwgZXRjLiBEYWNhIHNlbGVjdGF0aSBhY2VzdGEgb3B0aXVuZSwgdm9yIGZpIHBlcm1pc2l1bmkgc2VwYXJhdGUgcGVudHJ1IHV0aWxpemF0b3JpaSBGRS4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOdSBhIHB1dHV0IGZpIGdhc2l0IGZpc2llcnVsIHVwbG9hZGF0IChlcm9hcmUgaW50ZXJuYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdBIGZvc3QgbyBwcm9ibGVtYSBjdSBmaXNpZXJ1bCB1cGxvYWRhdC4gSW5jZXJjYXRpIGRpbiBub3UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTnUgYXRpIGludHJvZHVzIHVuIG51bWUgZGUgdXRpbGl6YXRvcic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOdSBhdGkgaW50cm9kdXMgYWRyZXNhIGRlIGUtbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOdSBhdGkgaW50cm9kdXMgcGFyb2xhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdJZXNpcmUgZGluIGNvbnQgdXRpbGl6YXRvciBGcm9udGVuZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdBdXRlbnRpZmljYXJlIHV0aWxpemF0b3IgRnJvbnRlbmQnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5GSVRJIFBSRUNBVVQ8L2I+IGNhbmQgbW9kaWZpY2F0aSBwcm9wcmlldGF0aSBleGlzdGVudGUgY2FyZSBzdW50IGFsb2NhdGUgdW5vciBncnVwdXJpLCBwdXRldGkgc2EgY3JlYXRpIHByb2JsZW1lIHNhdSBjaGlhciBzYSBzdHJpY2F0aSB1biBzaXRlIGV4aXN0ZW50IDxpPihpbiBtb2Qgc3BlY2lhbCBkYWNhIHJlZHVjZXRpIGx1bmdtZWEgY2FtcHVyaWxyLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdBY2Vhc3RhIGZ1bmN0aWUgbnUgZnVuY3Rpb25lYXphIGluIGZlcmVzdHJlJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOdSBjcmVhdGkgbyBwcm9wcmlldGF0ZSBwZW50cnUgbnVtZSB1dGlsaXphdG9yIHNhdSBwYXJvbGEgcGVudHJ1IGNhIGFjZXN0ZWEgc3VudCBwYXJ0ZSBpbnRlZ3JhbnRhIGRpbiBtb2R1bHVsIEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyZSB1dGlsaXphdG9yaSBpbiBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXJlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGFyZSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmFyZSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXRhcmUgUHJvcGlldGF0ZTogPGVtPiVzPC9lbT4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTHVuZ2ltZSBtYXhpbWEnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRhcmUgZHVwYSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGFyZSc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVdGlsaXphdG9yaSBpbiBncnVwdWwgLSBncnVwdXJpbGUgc2VsZWN0YXQoZSknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXRhcmUgcmV6dWx0YXRlIGxhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ051IHMtYSBnYXNpdCB1biBjYW1wIGUtbWFpbCBwZW50cnUgYWNlc3QgdXRpbGl6YXRvci4gRSBwb3NpYmlsIHNhIHRyZWJ1aWFzY2Egc2EgY29udGFjdGF0aSBhZG1pbmlzdHJhdG9ydWwgc2lzdGVtdWx1aSc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0FsaWFzL0lEIHBhZ2luYSBwZW50cnUgZm9ybXVsYXIgcmVjdXBlcmFyZSBwYXJvbGEnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdBbGlhcy9JRCBwYWdpbmEgcGVudHJ1IGZvcm11bGFyIG1vZGlmaWNhcmUgc2V0YXJpJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnQWxpYXMvSUQgcGFnaW5hIHVuZGUgc2Ugc2FyZSBkdXBhIGF1dGVudGlmaWNhcmUgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdBbGlhcy9JRCBwYWdpbmEgdW5kZSBzZSBzYXJlIGR1cGEgaWVzaXJlIGRpbiBjb250IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnT3JkaW5lIHNvcnRhcmUnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtYXIgZGUgdXRpbGl6YXRvcmkgc3VudCBpbiB0aW1wdWwgcHJvY2VzdWx1aSBkZSByZWN1cGVyYXJlIHBhcm9sZSB1aXRhdGUuIE51bWFydWwgY3VyZW50IGVzdGU6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnSW5sYXR1cmFyZSB0b2F0ZSBpbnRyYXJpbGUgbWFpIHZlY2hpIGRlIG8gc2FwdGFtYW5hJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0lubGF0dXJhcmUgdG9hdGUgaW50cmFyaWxlIG1haSB2ZWNoaSBkZSBvIGx1bmEnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnSW5sYXR1cmFyZSB0b2F0ZSBpbnRyYXJpbGUnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1N1bnRldGkgc2lndXI/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnQSBmb3N0IGludHJvZHVzIHVuIGNvbnQgaW52YWxpZCwgaW5jZXJjYXRpIGRpbiBub3UnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ1VuIGNvZCB0ZW1wb3JhciBwZW50cnUgSUQtdWwgZHVtbmVhdm9hc3RyYSBkZSB1dGlsaXphdG9yIG51IGEgcHV0dXQgZmkgZ2FzaXQgaW4gYmF6YSBkZSBkYXRlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZm9sb3NpdCBwZW50cnUgYWZpc2FyZSBmb3JtdWxhciB2ZXJpZmljYXJlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmb2xvc2l0IHBlbnRydSBlLW1haWwgcmVjdXBlcmFyZSBwYXJvbGEnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0R1bW5lYXZvYXN0cmEgc2F1IGFsdGNpbmV2YSBhIGluaXRpYXQgZGVqYSBvIG9wZXJhdGl1bmUgZGUgcmVjdXBlcmFyZSBwYXJvbGEgcGVudHJ1IGFjZXN0IGNvbnQuIFZlcmlmaWNhdGkgY2FzdXRhIGRlIGUtbWFpbCwgYXIgdHJlYnVpIHNhIGZpIHByaW1pdCBpbnN0cnVjdGl1bmkgcGVudHJ1IHJlc2V0YXJlYSBwYXJvbGVpIGluIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcm9hcmUgbGEgYmF6YSBkZSBkYXRlJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1ByaW1pdGkgYWNlc3QgbWVzYWogZGVvYXJlY2UgY2luZXZhIChkdW1uZWF2b2FzdHJhPykgYSBzcHVzIHNpdGUtdWx1aSBub3N0cnUgY2EgYXRpIHBpZXJkdXQgcGFyb2xhLiBEYWNhIGVzdGUgYXNhLCBjaXRpdGkgaW5zdHJ1Y3RpdW5pbGUgZGUgbWFpIGpvcy4gRGFjYSBudSBhdmV0aSBuaWNpIG8gbGVnYXR1cmEsIGF0dW5jaSBwdXRldGkgc3RlcmdlIGN1IGluY3JlZGVyZSBhY2VzdCBlLW1haWwgc2kgdmEgbXVsdHVtaW0gcGVudHJ1IHRpbXB1bCBkdW1uZWF2b2FzdHJhLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdVcm1hdG9ydWwgY29kIGEgZm9zdCBnZW5lcmF0IGxhIGludGFtcGxhcmUgcGVudHJ1IGEgdmVyaWZpY2EgY29udHVsIGRlIHV0aWxpemF0b3IuIENhbmQgdmV0aSBkYSBjbGljIHBlIGxpbmstdWwgZGUgbWFpIGpvcyB2ZXRpIHZlZGVhIHVuIGNhbXAgdW5kZSB0cmVidWllIHNhIGludHJvZHVjZXRpIGFjZXN0IGNvZC4gIGluIG1vZCBub3JtYWwgY2FtcHVsIGVzdGUgcHJlLWNvbXBsZXRhdCBwZW50cnUgZHVtbmVhdm9hc3RyYSwgZGFyIGluIGNheiBjYSBudSBlc3RlIGFzYSBjb2R1bCBlc3RlOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0RhbmQgY2xpYyBwZSB1cm1hdG9ydWwgbGluayB2ZXRpIG1lcmdlIGluIHNpdGUgdW5kZSBwdXRldGkgc2EgaW50cm9kdWNldGkgY29kdWwgZGUgbWFpIHN1cyBwZW50cnUgYSByZXNldGEgcGFyb2xhOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGFyb2xhIHVpdGF0YSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ051IGEgZm9zdCBnYXNpdCBtb2R1bHVsIENNU01haWxlcic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdVbiBlLW1haWwgYSBmb3N0IHRyaW1pcyBsYSAlcyBjdSBpbnN0cnVjdGl1bmkgcGVudHJ1IHJlc2V0YXJlYSBwYXJvbGVpLiBWYSBtdWx0dW1pbSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NlIHBhcmUgY2EgYXRpIHVpdGF0IHNhdSBhdGkgcGllcmR1dCBwYXJvbGEuIEVpIGJpbmUsIGludHJvZHVjZXRpIG51bWVsZSBkZSB1dGlsaXphdG9yIGFpY2ksIHNpIGRhY2EgaWwgZ2FzaW0gdmEgdm9tIHRyaW1pdGUgdW4gZS1tYWlsIGN1IGluc3RydWN0aXVuaSBwZW50cnUgcmVzZXRhcmVhIHBhcm9sZWkuJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUtdXJpIHBhcm9sYSB1aXRhdGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgbnVtZSB1dGlsaXphdG9yIHVpdGF0JzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1Byb3ByaWF0YXRlYSAlcyBudSBhIGZvc3QgZ2FzaXRhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdwcm9wcmlldGF0aSBnYXNpdGUnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkYXVnYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wIG9ibGlnYXRvcml1ICglcykgZXN0ZSBnb2wnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdJbnRyb2R1Y2V0aSBhaWNpIHBhcm9sYSBub3VhIHBlbnRydSBhIHNjaGltYmEgcGFyb2xhIGR1bW5lYXZvYXN0cmEnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdOdSBwYXJldGkgc2EgZml0aSBhdXRlbnRpZmljYXQnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1NldGFyaSc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ0lucmVnaXN0cmFyZSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0FjZXN0IGNvbnQgYSBleHBpcmF0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdGb3JtYXRhcmUgYWRyZXNhIGRlIGUtbWFpbCBncmVzaXRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnRGF0YSBleHBpcmFyZSBpbnZhbGlkYS4gUG9hdGUgZmkgbGVnYXRhIGRlIHNpc3RlbS4gSW5jZXJjYXRpIHNhIHB1bmV0aSB1biBhbiBtYWkgYXByb2FwZSBpbiB0aW1wJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcm9hcmUgbGEgc2V0YXJlIHByb3ByaWV0YXRlICVzIHBlbnRydSB1dGlsaXphdG9ydWwgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJRCBncnVwIGludmFsaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdNYXJjYWogY2FtcCBhc2N1bnMnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0N1bG9hcmUgY2FtcCBhc2N1bnMnOwokbGFuZ1snaGlkZGVuJ10gPSAnQXNjdW5zJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdPIHByb3ByaWV0YXRlIGN1IGFjZXN0IG51bWUgZXN0ZSBkZWphIGRlZmluaXRhJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05pY2lvIHByb3ByaWV0YXRlIGRlZmluaXRhJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmNpbyBwcm9wcmlldGF0ZSBudSBhIGZvc3Qgc2VsZWN0YXRhIHBlbnRydSBhY2VzdCBncnVwJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTmljaSB1biBncnVwIG51IGEgZm9zdCBkZWZpbml0JzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cHVyaSBnYXNpdGUnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0NhbGl0YXRlYSBkZSBtZW1icnUgaW4gY2VsIHB1dGluIHVuIGdydXAgZXN0ZSBvYmxpZ2F0b3JpZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnU2UgY2VyZSBhcGFydGVuZW50YSBsYSBtaW5pbSB1biBncnVwJzsKJGxhbmdbJ2JhY2snXSA9ICdJbmFwb2knOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGVzdGUgdW4gY2FtcCBvYmxpZ2F0b3JpdSc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2FyZSBjYW1wdXJpIG9ibGlnYXRvcmlpIGN1JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0V2aWRlbnRpZXJlIGNhbXB1cmkgb2JsaWdhdG9yaWkgaW4nOwokbGFuZ1snbmV4dCddID0gJ0luYWludGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdVbiBncnVwIGN1IGFjZXN0IG51bWUgZXhpc3RhIGRlamEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3JpdSc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsICc7CiRsYW5nWydvZmYnXSA9ICdJbmFjdGl2JzsKJGxhbmdbJ3NpemUnXSA9ICdEaW1lbnNpdW5lJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oRGltZW5zaXVuZSBtYXhpbWEgYSBvcmljYXJlaSBkaW1lbnNpdW5pIGEgaW1hZ2luaWkgaW4gcGl4ZWxpKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMdW5naW1lJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KGNhcmFjdGVyZSBpbiBjYW1wdWwgZGUgaW50cm9kdWNlcmUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHRpdW5pIERyb3Bkb3duLCBzZXBhcmF0ZSBkZSBjYW1wdXJpIGRlIGxpbmllIG5vdWEuICBWYWxvcmlsZSBwb3QgZmkgc2VwYXJhdGUgZGUgdGV4dCBjdSB1biA9IChzZW1udWwgZWdhbCkuIEV4OiBGZW1laWU9Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdFdGljaGV0ZSBidXRvYW5lIHJhZGlvLCBzZXBhcmF0ZSBkZSBjYW1wdXJpIGRlIGxpbmllIG5vdWEuIFZhbG9yaWxlIHBvdCBmaSBzZXBhcmFyZSBkZSB0ZXh0IGN1IHVuID0gKHNlbW51bCBlZ2FsKS4gRXg6IEZlbWVpZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ0FmaXNhcmUnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXAnOwokbGFuZ1sndHlwZSddID0gJ1RpcCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXR1cyBjYW1wJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0ludHJlYmFyZSBpbiBOdW1lIHV0aWxpemF0b3I8YnIvPnVpdGF0JzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ICc7CiRsYW5nWydjaGVja2JveCddID0gJ0Nhc3V0YSBzZWxlY3RpZSc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0xpc3RhIG11bHRpIHNlbGVjdGllJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ0J1dG9hbmUgcmFkaW8nOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnaW5lJzsKJGxhbmdbJ2VtYWlsJ10gPSAnQWRyZXNhIEUtbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0FyaWUgdGV4dCc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duICc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ0JpbmUgYXRpIHZlbml0JzsKJGxhbmdbJ2xvZ291dCddID0gJ0llc2lyZSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnU2UgZm9sb3Nlc3RlIGFjZXN0IG51bWUgZGUgZ3J1cCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNb2RpZmljYXJlIHNldGFyaSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0F1dGVudGlmaWNhcmUgZXN1YXRhIC0gTnVtZSB1dGlsaXphdG9yIHNhdSBwYXJvbGEgZ3Jlc2l0ZT8nOwokbGFuZ1snbG9naW4nXSA9ICdBdXRlbnRpZmljYXJlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnRXRpY2hldGEgYnV0b24gYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3InOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnQWRyZXNhIEUtbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdQYXNyb2xhJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnVGluZS1tYSBtaW50ZSBwZSBhY2VzdCBjYWxjdWxhdG9yJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnSW5yZWdpc3RyYXJlJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnQXRpIHVpdGF0IHBhcm9sYT8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnQXRpIHVpdGF0IGRhdGVsZSBkZSBhdXRlbnRpZmljYXJlPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ0ltcGxpY2l0ZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOdSBzLWF1IGdhc2l0IGluZm9ybWF0aWkgcGVudHJ1IGFjZXN0IHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0FjZXN0IG51bWUgZGUgdXRpbGl6YXRvciAoJXMpIGVzdGUgZGVqYSBsdWF0JzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdTZSBmb2xvc2VzdGUgU01UUCBwZW50cnUgdmFsaWRhcmUgYWRyZXNlIGRlIGUtbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTHVuZ2ltZSBtaW5pbWEgcGFyb2xhJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0x1bmdpbWUgbWF4aW1hIHBhcm9sYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMdW5naW1lIG1pbmltYSBudW1lIHV0aWxpemF0b3InOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTHVuZ2ltZSBtYXhpbWEgbnVtZSB1dGlsaXphdG9yJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RpbWVvdXQgc2VzaXVuZSAoc2VjdW5kZSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1NlIGZvbG9zZXNjIGNvb2tpZS11cmkgcGVudHJ1IGEgcGFzdHJhIHNlc2l1bmlsZSBpbiB2aWF0YSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1NlIHBlcm1pdGUgaW5yZWdpc3RyYXJlIGUtbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3J1cCBpbXBsaWNpdCBwZW50cnUgdXRpbGl6YXRvcmkgbm9pJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgbW9kaWZpY2FyZSBzZXRhcmknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhcm9sZWxlIG51IHNlIHBvdHJpdmVzYyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3IgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdQYXJvbGEgaW52YWxpZGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0YXJlIHV0aWxpemF0b3InOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZCAnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3InOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzICc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdBY2VzdCB1dGlsaXphdG9yIG51IGVzdGUgbWVtYnJ1IGluIG5pY2kgdW4gZ3J1cCc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTmljaW8gcHJvcHJpZXRhdGUnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdTZSBpbmNlYXJjYSBpbXBvcnR1bCBwcm9wcmlldGF0aWxvciBkdXBsaWNhdGUnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvYXJlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXB1cmknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaWV0YXRpJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTnVtZSBwcm9wcmlldGF0ZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkYXVnYXJlJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdJc3RvcmljJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXJlJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmEnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNhcmUgZGF0YSc7CiRsYW5nWycxMmhycyddID0gJzEyIG9yZSc7CiRsYW5nWycyNGhycyddID0gJzI0IG9yZSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IG9yZSc7CiRsYW5nWycxd2VlayddID0gJzEgc2FwdGFtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgc2FwdGFtYW5pJzsKJGxhbmdbJzFtb250aCddID0gJzEgbHVuYSc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBsdW5pJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IGx1bmknOwokbGFuZ1snMXllYXInXSA9ICcxIGFuJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmljb2RhdGEnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWx1bCBhIGZvc3QgaW5zdGFsYXQgY3Ugc3VjY2VzLjxici8+VmVyaWZpY2F0aSBjYSBhdGkgc2V0YXQgcGVybWlzaXVuaWxlIHBlbnRydSAmcXVvdDtNb2RpZmljYXJlIHByb3ByaWV0YXRpIEZyb250RW5kVXNlciZxdW90Oy4gIEFkaXRpb25hbCwgdmEgcmVjb21hbmRhbSBzYSBpbnN0YWxhdGkgbW9kdWx1bCBDYXB0Y2hhLiAgRGFjYSBhY2VzdGEgZXN0ZSBpbnN0YWxhdCwgc2UgdmEgZm9sb3NpIHNpIHZhbGlkYXJlYSBpbWFnaW5lIGluIHBsdXMgZmF0YSBkZSBudW1lIHV0aWxpemF0b3Igc2kgcGFyb2xhIHBlbnRydSBhdXRlbnRpZmNhcmUuIFNlIGZvbG9zZXN0ZSBwZW50cnUgcHJldmVuaXJlYSBhdGFjdXJpbG9yIGJydXRlIGZvcmNlLiAgPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBQYXJhbWV0cnVsIG5vY2FwdGNoYSBwb2F0ZSBmaSBmb2xvc2l0IHBlbnRydSBhIGRlemFjdGl2YSBhY2Vhc3RhIGZ1bmN0aW9uYWxpdGF0ZSBjaGlhciBkYWNhIG1vZHVsdWwgQ2FwdGNoYSBlc3RlIGluc3RhbGF0LiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhcm9sYSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0RpbiBub3UnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1VuIGdydXAgY3UgYWNlc3QgbnVtZSBleGlzdGEgZGVqYS4nOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyZSBncnVwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1RyaW1pdGVyZSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsYXJlJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1N0ZXJnZXJlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnU3VudGV0aSBzaWd1ciBjYSBhY2VzdGVhIHN1bnQgc2V0YXJpbGUgY29yZWN0ZSBwZW50cnUgYWNlc3QgZ3J1cD8gXG4gRGV6YWN0aXZhbmQgbyBwcm9wcmlldGF0ZSBudSB2YSBzdGVyZ2UgbmljaW8gaW50cmFyZSBkaW4gYmF6YSBkZSBkYXRlIHBlbnRydSBhY2VzdCBncnVwL3V0aWxpemF0b3IuIERvYXIgdm9yIGZpIGluZHNwb25pYmlsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1N1bnRldGkgc2lndXIgY2EgZG9yaXRpIHNhIHN0ZXJnZXRpIGFjZXN0IGdydXA/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdTdW50ZXRpIHNpZ3VyIGNhIGRvcml0aSBzYSBzdGVyZ2V0aSBjb21wbGV0IGFjZWFzdGEgcHJvcHJpZXRhdGU/IFxuIEZhY2FuZCBhY2VzdCBsdWNydSB2ZXRpIHN0ZXJnZSB0b2F0ZSBpbnRyYXJpbGUgZGUgbGEgdXRpbGl6YXRvcmkgcGVudHJ1IGFjZWFzdGEgcHJvcHJpZXRhdGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnN1ZmljaWVudGknOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWyduYW1lJ10gPSAnTnVtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBsYSBhZGF1Z2FyZSByZWxhdGllIGRlIGdydXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbWEgbGEgYWRhdWdhcmUgZ3J1cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlYSB1bnVpIHV0aWxpemF0b3IgaW50ci11biBncnVwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtYSBsYSBzdGVyZ2VyZWEgdW5laSBwcm9wcmlldGF0aSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ051IHMtYSBnYXNpdCBvIGFkcmVzYSBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1Blcm1pc2l1bmkgZGUgc2NyaWVyZSBpbnN1ZmljaWVudGUgcGVudHJ1IGZvbGRlcnVsIGRlc3RpbmF0aWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnZhbGl6aSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ051IGF1IGZvc3QgZ2FzaXRlIGdydXB1cmknOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyZSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cnUnOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc2llIHJlZ3VsYXJhIG51bWUgdXRpbGl6YXRvcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaWVyZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOdW1lIGdydXAnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXMgSW50ZXJ6aXMnOwokbGFuZ1snZXJyb3InXSA9ICdFcm9hcmUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGF1Z2FyZSBncnVwJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXJlIGdydXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkYXVnYXJlIHV0aWxpemF0b3InOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1V0aWxpemF0b3JpIGdhc2l0aSBjYXJlIGNvcmVzcHVuZCBjcml0ZXJpaWxvcic7CiRsYW5nWydncm91cCddID0gJ0dydXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3RhcmUgZ3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBpbnJlZ2lzdHJhcmUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmludGUnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphdG9yaSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdNYW5hZ2VtZW50IHV0aWxpemF0b3IgZnJvbnRlbmQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTZSBwZXJtaXRlIHV0aWxpemF0b3JpbG9yIHNhIHNlIGF1dGVudGlmaWNlIGluIGZyb250ZW5kIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1BhZ2luYSBpbXBsaWNpdGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1VsdGltYSBwYWdpbmEgYWNjZXNhdGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQWx0YSBwYWdpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdWNldGkgdGV4dHVsIGRpbiBpbWFnaW5lJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ9CS0Ysg0L3QtSDQsNCy0YLQvtGA0LjQt9C+0LLQsNC90Ysg0LTQu9GPINC/0YDQvtGB0LzQvtGC0YDQsCDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+JzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3BlY2lmeSBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB0aGF0IG1heSBoYXZlIGFjY2VzcyB0byB0aGlzIHBhZ2UuICBTZWxlY3Rpbmcgbm8gZ3JvdXBzIHdpbGwgYWxsb3cgYW55IHVzZXIgbG9nZ2VkIGluIHRvIEZFVSB0byB2aWV3IHRoZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnUHJvdGVjdGVkIFBhZ2UgU2V0dGluZ3MnOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnQWxsb3dlZCBHcm91cHMnOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTZWxlY3QgdGhlIGdyb3VwcyB0aGF0IGFyZSAoYnkgZGVmYXVsdCkgYWxsb3dlZCB0byB2aWV3IHByb3RlY3RlZCBwYWdlcy4gIEFuIGVkaXRvciB3aXRoIHRoZSAiTWFuYWdlIEFsbCBDb250ZW50IiBwZXJtaXNzaW9uIGNhbiBvdmVycmlkZSB0aGlzIGZvciBlYWNoIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfYWN0aW9uJ10gPSAnQWN0aW9uIGZvciBpbnN1ZmZpY2llbnQgYWNjZXNzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmeSB0aGUgYmVoYXZpb3IgZm9yIHBlb3BsZSBhY2Nlc3NpbmcgdGhpcyBwYWdlIHdpdGhvdXQgc3VmZmljaWVudCBwZXJtaXNzaW9uLiAgWW91IGNhbiBlaXRoZXIgcmVkaXJlY3QgdG8gYSBzcGVjaWZpZWQgcGFnZSwgb3IgZGlzcGxheSB0aGUgbG9naW4gZm9ybSc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnU2hvdyB0aGUgTG9naW4gRm9ybSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyZWN0IHRvIGEgUGFnZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnUmVkaXJlY3QgVG8nOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICJyZWRpcmVjdCIgdGhlIHVzZXIgd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIG1lc3NhZ2UgaW5kaWNhdGluZyB0aGF0IHRoZXkgZG8gbm90IGhhY2UgYWNjZXNzIHRvIHRoZSBwYWdlJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUGVybWlzc2lvbnMnOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnUHJvdGVjdGVkIENvbnRlbnQnOwokbGFuZ1sncHJvbXB0X3ZpZXdwcm9wcyddID0gJ1NlbGVjdCBBZGRpdGlvbmFsIFByb3BlcnRpZXMgdG8gVmlldyc7CiRsYW5nWyd2aWV3J10gPSAnVmlldyc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGcm9udEVuZFVzZXJzIHNhbHRzIGFsbCBwYXNzd29yZHMgd2l0aCB0aGlzIGtleSB3aGljaCBpcyBjcmVhdGVkIHVwb24gaW5zdGFsbC4gIE9uY2UgdXNlcnMgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZSB0aGUgc2FsdCBjYW5ub3QgYmUgY2hhbmdlZC4gVGhlIHNhbHQgbWF5IGJlIGVtcHR5IGZvciBvbGRlciBpbnN0YWxscy4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdBZHZhbmNlZCBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQiaGlzIGlzIGFuIG9wdGltaXphdGlvbiB0byBzYXZlIGRhdGFiYXNlIHF1ZXJpZXMuICBJZiBsZWZ0IGVtcHR5IG9yIHNldCB0byAwIGV4cGlyeSB3aWxsIGJlIHBlcmZvcm1lZCBvbiBldmVyeSByZXF1ZXN0Lic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnWW91ciBzZXR0aW5ncyB3ZXJlIHN1Y2Nlc3NmdWxseSB1cGRhdGVkJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcmNlIHVzZXJzIHRvIGxvZ291dCBhdCByZWd1bGFyIGludGVydmFscyc7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdUaW1lcyBmb3IgZm9yY2VkIGxvZ291dCc7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnU3BlY2lmeSBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHRpbWVzIGxpa2UgSEg6TU0sSEg6TU0gd2hlcmUgdXNlcnMgd2lsbCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0LiBOb3RlLCB0aGlzIHVzZXMgdGhlIHBzdWVkb2Nyb24gbWVjaGFuaXNtIHNvIHlvdSBtdXN0IGJlIHN1cmUgdGhhdCB0aGUgdGltZXMgZW50ZXJlZCBoZXJlIHdpbGwgY29pbmNpZGUgcmVhc29uYWJseSB3aXRoIHlvdXIgInBzZXVkb2Nyb24gZ3JhbnVsYXJpdHkiIGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdWRlIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiA8ZW0+KG1pbnV0ZXMpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSWYgc3BlY2lmaWVkLCBhbnkgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIHRoaXMgbnVtYmVyIG9mIHNlY29uZHMgd2lsbCBub3QgYmUgZm9yY2libHkgbG9nZ2VkIG91dCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHVzZXIgJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdUaGUgdXBsb2FkZWQgZmlsZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGlzdCBvZiBhbGxvd2VkIGZpbGUgdHlwZXMnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaGFzIGJlZW4gZGVsZXRlZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJZiBlbmFibGVkLCB0aGlzIG1vZHVsZSB3aWxsIGxpc3RlbiB0byBldmVudHMgZnJvbSB0aGUgRWNvbW1lcmNlIHN1aXRlLiAgVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGhhdmUgZWZmZWN0IGlmIHRoaXMgc2V0dGluZyBpcyBlbmFibGVkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0xpc3RlbiB0byBPcmRlciBFdmVudHMnOwokbGFuZ1snaW5mb19wYWlkcmVnX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGFwcGx5IGlmIHVzaW5nIHNlbGYgcmVnaXN0cmF0aW9uIGFuZCBhbGxvd2luZyBmb3IgcGFpZCByZWdpc3RyYXRpb24nOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdEZWxldGUgVXNlcic7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgU2V0dGluZ3MnOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0Rpc3BsYXkgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3MgYXJlIG9ubHkgYXBwbGljYWJsZSBpZiB1c2luZyB0aGUgIkJ1aWx0aW4gQXV0aGVudGljYXRpb24iLic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIHJlcXVlc3QgbG9zdCBsb2dpbiBpbmZvcm1hdGlvbiwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gYSBwYXNzd29yZCByZXNldCwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgdGhlaXIgdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIGNoYW5nZSc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAiIk9rIiB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0b3JzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0IG9uZSBvciBtb3JlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoaXMgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnQSBncm91cCBtdXN0IGJlIHNlbGVjdGVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IFllYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmQgWWVhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUaHVtYm5haWwgU2l6ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSBzZWxlY3RlZCB1c2Vycz8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9udGhzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQcm9wZXJ0eSBTZXR0aW5ncyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1JlZGlyZWN0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaW9uIGFuZCBDb29raWUgU2V0dGluZ3MnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGaWVsZCBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdUaGUgbG9zdHVzZXJuYW1lIGZsYWcgY2FuIG9ubHkgYmUgdXNlZCBvbiByZXF1aXJlZCBmaWVsZHMnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoaXMgdXNlcyB0aGUgbWNyeXB0IGZ1bmN0aW9ucyBmb3IgZW5jcnlwdGlvbiBwdXJwb3NlcywgYW5kIHRoZXkgY291bGQgbm90IGJlIGRldGVjdGVkIG9uIHlvdXIgaW5zdGFsbC4gICBQbGVhc2UgY29udGFjdCB5b3VyIHNlcnZlciBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICfQmNC30LzQtdC90LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydub2lubGluZSddID0gJ9Cd0LUg0LLRgdGC0YDQvtC10L3QvdGL0LUg0YTQvtGA0LzRiyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINC10YHQu9C4INCy0Ysg0LfQsNCx0YvQu9C4INGB0LLQvtC5INC70L7Qs9C40L0nOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINC10YHQu9C4INCy0Ysg0LfQsNCx0YvQu9C4INGB0LLQvtC5INC/0LDRgNC+0LvRjCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINGH0YLQvtCx0Ysg0LLRi9C50YLQuCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAn0J3QsNC20LzQuNGC0LUg0LfQtNC10YHRjCwg0YfRgtC+0LHRiyDQuNC30LzQtdC90LjRgtGMINGB0LLQvtC5INC/0LDRgNC+0LvRjCDQuNC70Lgg0LTRgNGD0LPRg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAn0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0YjQsNCx0LvQvtC9INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydldmVudCddID0gJ9Ch0L7QsdGL0YLQuNC1JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUg0YPQstC10LTQvtC80LvQtdC90LjRjyDQviDRgdC+0LHRi9GC0LjRj9GFJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ9CQ0LTRgNC10YEgZW1haWwg0YPQstC10LTQvtC80LvQtdC90LjRjyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INGD0LLQtdC00L7QvNC70LXQvdC40Y8g0L/QviBlbWFpbCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICfQotC10LzQsCDRg9Cy0LXQtNC+0LzQu9C10L3QuNGPINC/0L4gZW1haWwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICfQo9Cy0LXQtNC+0LzQu9C10L3QuNGPINC/0L4gZW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ9Cd0LAg0LLRhdC+0LQnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICfQndCwINCy0YvRhdC+0LQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAn0J3QsCDQuNGB0YLQtdC60YjRg9GOINGB0LXRgdGB0LjRjic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICfQndCwINCy0L3QvtCy0Ywg0YHQvtC30LTQsNC90L3QvtCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ9Cd0LAg0YPQtNCw0LvQtdC90L3QvtCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ9CS0LDRiNC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAn0JzRiyDRgNC10LrQvtC80LXQvdC00YPQtdC8INCS0LDQvCDRgdC+0YXRgNCw0L3QuNGC0Ywg0Y3RgtGDINC40L3RhNC+0YDQvNCw0YbQuNGOINCyINCx0LXQt9C+0L/QsNGB0L3QvtC8LCDQvdC+INC00L7RgdGC0YPQv9C90L7QvCDQvNC10YHRgtC1Lic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICfQntGI0LjQsdC60LA6INCx0L7Qu9C10LUg0YfQtdC8INC+0LTQuNC9INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQuNC80LXQtdGCINGD0LrQsNC30LDQvdC90YvQtSDRgdCy0L7QudGB0YLQstCwJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ9Ce0YjQuNCx0LrQsDog0L3QtdCy0L7Qt9C80L7QttC90L4g0L3QsNC50YLQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ9Ce0YjQuNCx0LrQsDog0L3QtdCy0L7Qt9C80L7QttC90L4g0L3QsNC50YLQuCDQs9GA0YPQv9C/0YMg0YEg0Y3RgtC40Lwg0LjQvNC10L3QtdC8JzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAn0KLQvtC70YzQutC+INC00LvRjyDRh9GC0LXQvdC40Y8nOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ9Ca0LvQsNGB0YEgVXNlciBNYW5pcHVsYXRvciAnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAn0JLRi9C/0L7Qu9C90LXQvSDQstGL0YXQvtC0INCw0LTQvNC40L3QuNGB0YLRgNCw0YLQvtGA0LAnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ9Cf0L7QutCw0LfQsNGC0Ywg0YLQvtC70YzQutC+INC30LDQu9C+0LPQuNC90LXQstGI0LjRhdGB0Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ9CS0YvRhdC+0LQg0Y3RgtC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAn0J3QsNGB0YLRgNC+0LnQutC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ9CY0YHRgtC+0YDQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydleHBvcnQnXSA9ICfQrdC60YHQv9C+0YDRgic7CiRsYW5nWydjbGVhciddID0gJ9Ce0YfQuNGB0YLQutCwJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ9Ct0LrRgdC/0L7RgNGCINC40YHRgtC+0YDQuNC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQsiBBU0NJSSDQv9C+INC60YDQsNC50L3QtdC5INC80LXRgNC1JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAn0J7Rh9C40YHRgtC40YLRjCDQuNGB0YLQvtGA0LjRjiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0L/QviDQutGA0LDQudC90LXQuSDQvNC10YDQtSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICfQl9Cw0LHRi9C70Lgg0LLQsNGIINC70L7Qs9C40L0/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ9Ct0LrRgdC/0L7RgNGCINC+0L/RgNC10LTQtdC70LXQvdC40Y8g0LPRgNGD0L/Qv9GLICjQuCDRgdCy0L7QudGB0YLQsikg0LIgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICfQntCx0YHQu9GD0LbQuNCy0LDQvdC40LUg0LjRgdGC0L7RgNC40Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3llcyddID0gJ9CU0LAnOwokbGFuZ1snbm8nXSA9ICfQndC10YInOwokbGFuZ1sncHJvbXB0X29mJ10gPSAn0LInOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiog0JHQtdC3INC+0LPRgNCw0L3QuNGH0LXQvdC40LkgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAn0JfQsCDRgtC10LrRg9GJ0LjQuSDRh9Cw0YEnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAn0JfQsCDRiNC10YHRgtGMINGH0LDRgdC+0LInOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAn0JfQsCDQtNCy0LXQvdCw0LTRhtCw0YLRjCDRh9Cw0YHQvtCyJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAn0JfQsCDQvtC00LjQvSDQtNC10L3RjCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICfQl9CwINC+0LTQvdGDINC90LXQtNC10LvRjic7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAn0JfQsCDQtNCy0LUg0L3QtdC00LXQu9C4JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICfQl9CwINC+0LTQuNC9INC80LXRgdGP0YYnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ9CX0LAg0YLRgNC4INC80LXRgdGP0YbQsCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ9CX0LAg0YjQtdGB0YLRjCDQvNC10YHRj9GG0LXQsic7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICfQl9CwINC+0LTQuNC9INCz0L7QtCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICfQk9GA0YPQv9C/0LjRgNC+0LLQutCwINC4INGB0L7RgNGC0LjRgNC+0LLQutCwJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICfQl9Cw0L/QuNGB0LgsINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDQutGA0LjRgtC10YDQuNGP0LwnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICfQn9C+INCw0LvRhNCw0LLQuNGC0YMg0JAt0K8nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ9Cf0L4g0LDQu9GE0LDQstC40YLRgyDQry3QkCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAn0J/QviDQtNCw0YLQtSAo0YPQsdGL0LLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAn0J/QviDQtNCw0YLQtSAo0LLQvtC30YDQsNGB0YLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAn0J/QviDRgtC40L/RgyDRgdC+0LHRi9GC0LjRjyAo0YPQsdGL0LLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICfQn9C+INGC0LjQv9GDINGB0L7QsdGL0YLQuNGPICjQstC+0LfRgNCw0YHRgtCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICfQn9C+IElQICjRg9Cx0YvQstCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ9Cf0L4gSVAgKNCy0L7Qt9GA0LDRgdGC0LDQvdC40LUpJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICfQmNGB0YLQvtGA0LjRjyDQvdC1INC90LDQudC00LXQvdCwJzsKJGxhbmdbJ3Jlc2V0J10gPSAn0KHQsdGA0L7RgdC40YLRjCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICfQk9GA0YPQv9C/0LjRgNC+0LLQsNGC0Ywg0L/QviBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ9Ck0LjQu9GM0YLRgCDRgtC40L/QsCDRgdC+0LHRi9GC0LjRjyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICfQn9C+0LrQsNC30YvQstCw0YLRjCDRgtC+0LvRjNC60L4g0YHQvtCx0YvRgtC40Y8sINC60L7RgtC+0YDRi9C1INGA0LDQvdGM0YjQtSDRh9C10Lw6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICfQm9C40LzQuNGCINGB0YLRgNCw0L3QuNGG0YsnOwokbGFuZ1snZm9yJ10gPSAn0LTQu9GPJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAn0J7RgtGH0ZHRgiDQuNGB0YLQvtGA0LjQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sndW5rbm93biddID0gJ9Cd0LXQuNC30LLQtdGB0YLQvdGL0LknOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQINCw0LTRgNC10YEnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ9Ci0LjQvyDRgdC+0LHRi9GC0LjRjyc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ9CU0LDRgtCwJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICfQktC10YDQvdGD0YLRjNGB0Y8nOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ9Ce0L/QtdGA0LDRhtC40Y8g0LjQvNC/0L7RgNGC0LAg0LfQsNCy0LXRgNGI0LXQvdCwJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ9Ce0LHRgNCw0LHQvtGC0LDQvdC+INGB0YLRgNC+0LonOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ9Ce0LHQvdCw0YDRg9C20LXQvdC+INC+0YjQuNCx0L7Quic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAn0JTQvtCx0LDQstC70LXQvdC+INC30LDQv9C40YHQtdC5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICfQndC10LLQvtC30LzQvtC20L3QviDQvdCw0LnRgtC4INGB0LLQvtC50YHRgtCy0LAg0LTQu9GPINCz0YDRg9C/0L/RiyAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ9C90LXRgiDQvtGC0LLQtdGC0LAg0L7RgiBTTVRQINGB0LXRgNCy0LXRgNCwJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ9Cj0LrQsNC30LDQvdC90YvQuSDRhNCw0LnQuyAoJXMpINC90LUg0L7QsdC90LDRgNGD0LbQtdC9JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICfQvdC10LLQtdGA0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0LLRi9C/0LDQtNCw0Y7RidC10LPQviDRgdC/0LjRgdC60LAgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICfQn9GA0LXQstGL0YjQtdC90LjQtSDQvNCw0LrRgdC40LzQsNC70YzQvdC+0Lkg0LTQu9C40L3RiyDQv9C+0LvRjyAlcyAnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICfQntGI0LjQsdC60LAg0LjQvNC/0L7RgNGC0LAgKNGB0YLRgNC+0LrQsCAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD4NCjxoNT5Db2x1bW5hciBEYXRhPC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY2ggYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPkRyb3Bkb3duIEZpZWxkcw0KICAgIDxwPlRoZSB2YWx1ZSBvZiBkcm9wZG93biBwcm9wZXJ0aWVzIGluIGFuIGltcG9ydCBmaWxlIGlzIHJlcHJlc2VudGVkIGFzIHRoZSBzdHJpbmcgdGhhdCBpcyBzaG93biBpbiB0aGUgZHJvcGRvd24gY29udHJvbCBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUuPC9wPg0KPC9saT4NCjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMNCiAgICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+DQo8L2xpPg0KPGxpPkltYWdlIEZpZWxkcw0KICAgIDxwPkltYWdlIGFyZSBmaWVsZHMgd2hvXCdzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAn0JjQvNC/0L7RgNGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INCyINGN0YLRgyDQs9GA0YPQv9C/0YMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAn0JLRhdC+0LTQvdC+0Lkg0YTQsNC50LsgQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAn0JLRhdC+0LTQvdC+0Lkg0YTQsNC50LsgWE1MJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ9Ct0LrRgdC/0L7RgNGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ9CY0LzQv9C+0YDRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICfQntGH0LjRgdGC0LrQsCc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0ltYWdlIERlc3RpbmF0aW9uIFBhdGgnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCBhIG1pc3NpbmcgKGJ1dCByZXF1aXJlZCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdDb3VsZCBub3QgcGFyc2UgdGhlIHByb3ZpZGVkIFhNTCBmaWxlJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdDYW5ub3QgZGVsZXRlIGEgZ3JvdXAgdGhhdCBzdGlsbCBoYXMgdXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1RoaXMgdXNlciBpcyBhbHJlYWR5IGxvZ2dlZCBpbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUaGUgdGV4dCBmcm9tIHRoZSBpbWFnZSB3YXMgbm90IGVudGVyZWQgY29ycmVjdGx5JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdBbGxvdyB1c2VycyB0byBsb2dpbiBtb3JlIHRoYW4gb25jZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnSW1hZ2UgRmlsZSBFeHRlbnNpb25zIHRoYXQgVXNlcnMgYWxsb3dlZCB0byB1cGxvYWQnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnPGgzPk9uUmVmcmVzaFVzZXI8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPg0KPGg0PlBhcmFtZXRlcnM6PC9oND4NCjx1bD4NCiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnQSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyByZXN1bHRzIHJldHVybmVkIGZyb20gY3N2IGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5ndGggb2YgdXNlcm5hbWUgZmllbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHBhc3N3b3JkIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IHBhc3N3b3JkIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggdXNlcm5hbWUgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW52YWxpZCBFbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2UgY291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXNlciBBZGRlZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ1VzZXIgRGVsZXRlZCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wZXJ0eSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsdWUgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsIGFkZHJlc3MgYWxyZWFkeSB1c2VkJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQWxsb3cgZHVwbGljYXRlIGVtYWlscyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBhZGRyZXNzIGlzIHVzZXJuYW1lJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+KHRoZSBjb29raWUgaXMgcmVzZXQgb24gYWN0aXZpdHkgaW4gdGhlIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGFsbG93IG11bHRpcGxlIHVzZXJzIHdpdGggdGhlIHNhbWUgZW1haWwgYWRkcmVzcyknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyXCdzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uXCd0IHNldCB0aGlzIHdpdGggImFsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMiISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgImZvcmdvdCBwYXNzd29yZCIgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlblwndCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSB1c2VybmFtZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciB5b3VyIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSJyZWQiPjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RoaXMgZnVuY3Rpb24gZG9lcyBub3Qgd29yayBvbiB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0IFVzZXJzIHRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0JzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0IFByb3BlcnR5JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltdW0gTGVuZ3RoJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnQgQnknOwokbGFuZ1snc29ydCddID0gJ1NvcnRpbmcnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXNlcnMgaW4gdGhlIHNlbGVjdGVkIGdyb3VwKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0IHJlc3VsdHMgdG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgZmllbGQgZm9yIHRoaXMgdXNlci4gIFlvdSBtYXkgbmVlZCB0byBjb250YWN0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSB3ZWVrIG9sZCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgbW9udGggb2xkJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0FuIGludmFsaWQgY29kZSBoYXMgYmVlbiBlbnRlcmVkLCBwbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ9Ce0YjQuNCx0LrQsCDQsdCw0LfRiyDQtNCw0L3QvdGL0YUnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2Ugc29tZWJvZHkgdG9sZCBvdXIgc2l0ZSB0aGF0IHlvdSBoYWQgbG9zdCB5b3VyIHBhc3N3b3JkLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSwgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGJlbG93LiAgSWYgeW91IGRvblwndCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICfQmtC+0LQnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnVGhlIGZvbGxvd2luZyBjb2RlIGhhcyBiZWVuIGdlbmVyYXRlZCByYW5kb21seSBnZW5lcmF0ZWQgaW4gb3JkZXIgdG8gdmVyaWZ5IHRoZSB1c2VyIGFjY291bnQuICB3aGVuIHlvdSBjbGljayBvbiB0aGUgbGluayBiZWxvdyB5b3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGZpZWxkIHRvIGVudGVyIHRoaXMgY29kZS4gIE5vcm1hbGx5IHRoZSBmaWVsZCBpcyBwcmUtY29tcGxldGVkIGZvciB5b3UsIGJ1dCBpbmNhc2UgaXQgaXNuXCd0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0NsaWNraW5nIG9uIHRoZSBmb2xsb3dpbmcgbGluayB3aWxsIHRha2UgeW91IHRvIHRoZSB3ZWJzaXRlIHdoZXJlIHlvdSBjYW4gZW50ZXIgdGhlIGFib3ZlIGNvZGUsIGFuZCByZXNldCB5b3VyIHBhc3N3b3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAn0JfQsNCx0YvQu9C4INC/0LDRgNC+0LvRjCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDQvNC+0LTRg9C70YwgQ01TTWFpbGVyJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ9Cd0LAg0Y3Qu9C10LrRgtGA0L7QvdC90YPRjiDQv9C+0YfRgtGDINCx0YvQu9C+INCy0YvRgdC70LDQvdC+ICVzICDRgSDQuNC90YHRgtGA0YPQutGG0LjQtdC5INC60LDQuiDRgdCx0YDQvtGB0LjRgtGMINC/0LDRgNC+0LvRjC4g0KHQv9Cw0YHQuNCx0L4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfQmNGC0LDQuiDQstGLINC30LDQsdGL0LvQuCDQuNC70Lgg0L/QvtGC0LXRgNGP0LvQuCDRgdCy0L7QuSDQv9Cw0YDQvtC70YwuINCl0L7RgNC+0YjQviwg0LLQstC10LTQuNGC0LUg0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQsiDRgdC40YHRgtC10LzRgywg0Lgg0LXRgdC70Lgg0LzRiyDRgdC80L7QttC10Lwg0L3QsNC50YLQuCDQstCw0YEg0LzRiyDQvtGC0L/RgNCw0LLQuNC8INCy0LDQvCDQv9C40YHRjNC80L4g0YEg0LjQvdGB0YLRgNGD0LrRhtC40LXQuSDQv9C+INGB0LzQtdC90LUg0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INCy0L7RgdGB0YLQsNC90L7QstC70LXQvdC40Y8g0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSDQstC+0YHRgdGC0LDQvdC+0LLQu9C10L3QuNGPINC40LzQtdC90Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ9Ch0LLQvtC50YHRgtCy0L4gJXMg0L3QtSDQvdCw0LnQtNC10L3Qvic7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAn0KHQstC+0LnRgdGC0LLQsCDQvdCw0LnQtNC10L3Riyc7CiRsYW5nWydhZGRwcm9wJ10gPSAn0JTQvtCx0LDQstC40YLRjCDRgdCy0L7QudGB0YLQstC+JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICfQntCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUgKCVzKSDQvdC1INC30LDQv9C+0LvQvdC10L3Qvic7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0VudGVyIGEgbmV3IHBhc3N3b3JkIGhlcmUgdG8gY2hhbmdlIHlvdXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdZb3UgZG8gbm90IGFwcGVhciB0byBiZSBsb2dnZWQgaW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ9Cd0LDRgdGC0YDQvtC50LrQuCc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ9Cg0LXQs9C40YHRgtGA0LDRhtC40Y8nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICfQrdGC0LAg0YPRh9C10YLQvdCw0Y8g0LfQsNC/0LjRgdGMINC/0YDQvtGB0YDQvtGH0LXQvdCwJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cCc7CiRsYW5nWydub2dyb3VwcyddID0gJ9Cd0LXRgiDQvtC/0YDQtdC00LXQu9GR0L3QvdGL0YUg0LPRgNGD0L/Qvyc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ9Cd0LDQudC00LXQvdC+INCz0YDRg9C/0L8nOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ9Cd0LDQt9Cw0LQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzINGN0YLQviDQvtCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ9Cf0L7QvNC10YfQsNGC0Ywg0L7QsdGP0LfQsNGC0LXQu9GM0L3Ri9C1INC/0L7Qu9GPJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ9CU0LDQu9GM0YjQtSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAn0KDQsNC30LzQtdGAJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ9CU0LvQuNC90LAnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4o0YHQuNC80LLQvtC70L7QsiDQsiDQstCy0L7QtNC1INGC0LXQutGB0YLQsCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAn0KLQuNC/JzsKJGxhbmdbJ3R5cGUnXSA9ICfQotC40L8nOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICfQn9C+0LvQtSDRgdGC0LDRgtGD0YHQsCc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ9Ci0LXQutGB0YInOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICfQmNC30L7QsdGA0LDQttC10L3QuNC1JzsKJGxhbmdbJ2VtYWlsJ10gPSAn0JDQtNGA0LXRgSBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ9Ce0LHQu9Cw0YHRgtGMINGC0LXQutGB0YLQsCc7CiRsYW5nWydkcm9wZG93biddID0gJ9Ch0L/QuNGB0L7Quic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ9CU0L7QsdGA0L4g0L/QvtC20LDQu9C+0LLQsNGC0YwnOwokbGFuZ1snbG9nb3V0J10gPSAn0JLRi9GF0L7QtCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAn0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDRjdGC0L4g0L3QsNC30LLQsNC90LjQtSDQs9GA0YPQv9C/0YsnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAn0JjQt9C80LXQvdC40YLRjCDQvNC+0Lgg0L3QsNGB0YLRgNC+0LnQutC4JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAn0JLRhdC+0LQg0L3QtSDRg9C00LDQu9GB0Y8gLSDQndC10LLQtdGA0L3QvtC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0LjQu9C4INC/0LDRgNC+0LvRjD8nOwokbGFuZ1snbG9naW4nXSA9ICfQktGF0L7QtCc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1NpZ24gaW4gYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ9CY0LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAn0JDQtNGA0LXRgSBlbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICfQn9Cw0YDQvtC70YwnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICfQl9Cw0L/QvtC80L3QuNGC0Ywg0LzQtdC90Y8g0L3QsCDRjdGC0L7QvCDQutC+0LzQv9GM0Y7RgtC10YDQtSc7CiRsYW5nWydyZWdpc3RlciddID0gJ9Cg0LXQs9C40YHRgtGA0LDRhtC40Y8nOwokbGFuZ1snZm9yZ290cHcnXSA9ICfQl9Cw0LHRi9C70Lgg0LLQsNGIINC/0LDRgNC+0LvRjD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAn0JfQsNCx0YvQu9C4INCy0LDRiCDQu9C+0LPQuNC9Pyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ9Cf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9JzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQvtCxINGN0YLQvtC8INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAoJXMpINGD0LbQtSDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8nOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ9CY0YHQv9C+0LvRjNC30L7QstCw0YLRjCBTTVRQINC00LvRjyDQv9C+0LTRgtCy0LXQttC00LXQvdC40Y8gZW1haWwg0LDQtNGA0LXRgdCwPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICfQnNC40L3QuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ9Cc0LDQutGB0LjQvNCw0LvRjNC90LDRjyDQtNC70LjQvdCwINC/0LDRgNC+0LvRjyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICfQnNC40L3QuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0LjQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAn0JzQsNC60YHQuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0LjQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAn0KLQsNC50Lwt0LDRg9GCINGB0LXQsNC90YHQsCAo0LIg0YHQtdC60YPQvdC00LDRhSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICfQk9GA0YPQv9C/0LAg0L/Qvi3Rg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINC90L7QstC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICfQmNC30LzQtdC90LjRgtGMINC90LDRgdGC0YDQvtC50LrQuCDRiNCw0LHQu9C+0L3QsCc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAn0J/QsNGA0L7Qu9C4INC90LUg0YHQvtCy0L/QsNC00LDRjtGCJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ9Cd0LXQv9GA0LDQstC40LvRjNC90L7QtSDQuNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ9Cd0LXQv9GA0LDQstC40LvRjNC90YvQuSDQv9Cw0YDQvtC70YwnOwokbGFuZ1snZWRpdHVzZXInXSA9ICfQmNC30LzQtdC90LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd2YWxpZCddID0gJ9CU0LXQudGB0YLQstC40YLQtdC70YzQvdGL0LknOwokbGFuZ1sndXNlcm5hbWUnXSA9ICfQmNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3N0YXR1cyddID0gJ9Ch0YLQsNGC0YPRgSc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICfQrdGC0L7RgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LvQtdC90L7QvCDQutCw0LrQvtC5LdC70LjQsdC+INCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAn0J3QtdGCINGB0LLQvtC50YHRgtCyJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAn0J/QvtC/0YvRgtC60LAg0LjQvNC/0L7RgNGC0LAg0LTRg9Cx0LvQuNC60LDRgtCwINGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1sndmFsdWUnXSA9ICfQl9C90LDRh9C10L3QuNC1JzsKJGxhbmdbJ2dyb3VwcyddID0gJ9CT0YDRg9C/0L/Riyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAn0KHQstC+0LnRgdGC0LLQsCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ9Cd0LDQt9Cy0LDQvdC40LUg0YHQstC+0LnRgdGC0LLQsCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICfQl9C90LDRh9C10L3QuNC1INGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1snYWRkJ10gPSAn0JTQvtCx0LDQstC40YLRjCc7CiRsYW5nWydoaXN0b3J5J10gPSAn0JjRgdGC0L7RgNC40Y8nOwokbGFuZ1snZWRpdCddID0gJ9CY0LfQvNC10L3QuNGC0YwnOwokbGFuZ1snZXhwaXJlcyddID0gJ9CY0YHRgtC10LrQsNC10YInOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAn0KPQutCw0LbQuNGC0LUg0LTQsNGC0YMnOwokbGFuZ1snMTJocnMnXSA9ICcxMiDRh9Cw0YHQvtCyJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQg0YfQsNGB0LAnOwokbGFuZ1snNDhocnMnXSA9ICc0OCDRh9Cw0YHQvtCyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSDQvdC10LTQtdC70Y8nOwokbGFuZ1snMndlZWtzJ10gPSAnMiDQvdC10LTQtdC70LgnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSDQvNC10YHRj9GGJzsKJGxhbmdbJzNtb250aHMnXSA9ICczINC80LXRgdGP0YbQsCc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiDQvNC10YHRj9GG0LXQsic7CiRsYW5nWycxeWVhciddID0gJzEg0LPQvtC0JzsKJGxhbmdbJ25ldmVyJ10gPSAn0J3QuNC60L7Qs9C00LAnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAiTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4iJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAn0J/QsNGA0L7Qu9GMJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAn0JXRidGRINGA0LDQtyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAn0JPRgNGD0L/Qv9CwINGBINGC0LDQutC40Lwg0LjQvNC10L3QtdC8INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgic7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQs9GA0YPQv9C/0YMnOwokbGFuZ1snc3VibWl0J10gPSAn0J7RgtC/0YDQsNCy0LjRgtGMJzsKJGxhbmdbJ2NhbmNlbCddID0gJ9Ce0YLQvNC10L3QsCc7CiRsYW5nWydkZWxldGUnXSA9ICfQo9C00LDQu9C40YLRjCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XFxuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICfQktGLINGD0LLQtdGA0LXQvdGLINGH0YLQviDRhdC+0YLQuNGC0LUg0YPQtNCw0LvQuNGC0Ywg0Y3RgtGDINCz0YDRg9C/0L/Rgz8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xcbkRvaW5nIHNvIHdpbGwgYWxzbyBlcmFzZSBhbnkgdXNlciBlbnRyaWVzIGZvciB0aGlzIHByb3BlcnR5Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICfQndC10LTQvtGB0YLQsNGC0L7Rh9C90L4g0L/QsNGA0LDQvNC10YLRgNC+0LInOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAn0JjQvNGPJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAn0J/RgNC+0LHQu9C10LzQsCDQtNC+0LHQsNCy0LvQtdC90LjRjyDRgdCy0L7QudGB0YLQstCwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICfQn9GA0L7QsdC70LXQvNCwINC/0YDQuCDQtNC+0LHQsNCy0LvQtdC90LjQuCDRgdCy0Y/Qt9C4INCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICfQn9GA0L7QsdC70LXQvNCwINC00L7QsdCw0LLQu9C10L3QuNGPINCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ9Cf0YDQvtCx0LvQtdC80LAg0LTQvtCx0LDQstC70LXQvdC40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINCyINCz0YDRg9C/0L/Rgyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAn0J/RgNC+0LHQu9C10LzQsCDRg9C00LDQu9C10L3QuNGPINGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICfQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0LggZW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ9Cd0LXRgiDQv9GA0LDQsiDQvdCwINC30LDQv9C40YHRjCDQsiDQv9Cw0L/QutGDINC90LDQt9C90LDRh9C10L3QuNGPJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICfQndC10L/RgNCw0LLQuNC70YzQvdGL0LUg0L/QsNGA0LDQvNC10YLRgNGLJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAn0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC60LDQutC40LUt0LvQuNCx0L4g0LPRgNGD0L/Qv9GLJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAn0J/RgNC40LzQtdC90LjRgtGMJzsKJGxhbmdbJ2ZpbHRlciddID0gJ9Ck0LjQu9GM0YLRgCc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICfQntC/0LjRgdCw0L3QuNC1JzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ9CY0LzRjyDQs9GA0YPQv9C/0YsnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAn0JTQvtGB0YLRg9C/INC30LDQv9GA0LXRidGR0L0nOwokbGFuZ1snZXJyb3InXSA9ICfQntGI0LjQsdC60LAnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICfQlNC+0LHQsNCy0LjRgtGMINCz0YDRg9C/0L/Rgyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ9CY0LzQv9C+0YDRgiDQs9GA0YPQv9C/0YsnOwokbGFuZ1snYWRkdXNlciddID0gJ9CU0L7QsdCw0LLQuNGC0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICfQndCw0LnQtNC10L3RiyDQv9C+0LvRjNC30L7QstCw0YLQtdC70LgsINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDQutGA0LjRgtC10YDQuNGOJzsKJGxhbmdbJ2dyb3VwJ10gPSAn0JPRgNGD0L/Qv9CwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAn0JLRi9Cx0LXRgNC40YLQtSDQs9GA0YPQv9C/0YMnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INGA0LXQs9C40YHRgtGA0LDRhtC40LgnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INCy0YvRhdC+0LTQsCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSDQstGF0L7QtNCwJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAn0J3QsNGB0YLRgNC+0LnQutC4JzsKJGxhbmdbJ3VzZXJzJ10gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9C4JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ9CY0L3RgtC10YDRhNC10LnRgSDRg9C/0YDQsNCy0LvQtdC90LjRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y/QvNC4JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAn0KDQsNC30YDQtdGI0LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj9C8INCy0L7QudGC0Lgg0LLQviDRhNGA0L7QvdGC0LXQvdC0INCy0LDRiNC10LPQviDRgdCw0LnRgtCwJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICfQk9C70LDQstC90LDRjyDRgdGC0YDQsNC90LjRhtCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOICc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAn0J/QvtGB0LvQtdC00L3QuNC5INC00L7RgdGC0YPQvyDQuiDRgdGC0YDQsNC90LjRhtC1JzsKJGxhbmdbJ290aGVycGFnZSddID0gJ9CU0YDRg9Cz0LDRjyDRgdGC0YDQsNC90LjRhtCwOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ9CS0LLQtdC00LjRgtC1INC60L7QtCDRgSDQutCw0YDRgtC40L3QutC4JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sk_SK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FwcGxpZWQnXSA9ICdVcHJhdmVuJmVhY3V0ZTsnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTdHJhbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnUG92b2xpxaUgem1lbnUgcG91xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ2luZm9fYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdQb3XFviZpYWN1dGU7dmF0ZcS+IHNpIG0mb2NpcmM7xb5lIHptZW5pxaUgamVobyBwb3XFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vIHNwb2x1IHMgb3N0YXRuJnlhY3V0ZTttaSAmdWFjdXRlO2Rham1pJzsKJGxhbmdbJ3RlbXBsYXRlX3NhdmVkJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHVsb8W+ZW4mYWFjdXRlOyc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHptZW5lbiZhYWN1dGU7IG5hIHByZWRuYXN0YXZlbiZ1YWN1dGU7JzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtueSc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ1Bvdm9sacWlIG92ZXJlbmllIGNhcHRjaGEgdiBwcmlobGFzb3ZhY2lvbSBmb3JtdWwmYWFjdXRlO3JpJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdBayBwb3XFviZpYWN1dGU7dmF0ZcS+IG5pZSBqZSBwcmlobCZhYWN1dGU7c2VueSBhIGplIHpvYnJhemVuJnlhY3V0ZTsgcHJpaGxhc292YWMmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3IsIHRvdG8gbmFzdGF2ZW5pZSBvdnBsaXZuJmlhY3V0ZTssIMSNaSBidWRlIHBvdcW+aXQmZWFjdXRlOyBvdmVyZW5pZSBwb21vY291IGsmb2FjdXRlO2R1IGNhcHRjaGEsIHBva2lhxL4gamUgZG9zdHVwbiZ5YWN1dGU7Lic7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdOZW0mYWFjdXRlO3RlIG9wciZhYWN1dGU7dm5lbmllIG5hIHByZXplcmFuaWUgdG9ob3RvIG9ic2FodSc7CiRsYW5nWydpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCddID0gJ05hc3RhdiB6b3puYW0gRkVVIHBvdcW+JmlhY3V0ZTt2YXRlxL5zayZ5YWN1dGU7Y2ggc2t1cCZpYWN1dGU7biwga3RvciZlYWN1dGU7IG1haiZ1YWN1dGU7IHByJmlhY3V0ZTtzdHVwIGsgdGVqdG8gc3RyJmFhY3V0ZTtua2UuIFBva2lhxL4gbmllIGplIHZ5YnJhbiZhYWN1dGU7IMW+aWFkbmEgc2t1cGluYSwgbWFqJnVhY3V0ZTsgayBuZWogcHImaWFjdXRlO3N0dXAgdiZzY2Fyb247ZXRjaSBwcmlobCZhYWN1dGU7c2VuJnlhY3V0ZTsgcG91xb4maWFjdXRlO3ZhdGVsaWEuJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSBjaHImYWFjdXRlO25lbiZ5YWN1dGU7Y2ggc3RyJmFhY3V0ZTtub2snOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnUG92b2xlbiZlYWN1dGU7IHNrdXBpbnknOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdWeWJlcnRlIHNrdXBpbnksIGt0b3ImeWFjdXRlO20gamUgeiZhYWN1dGU7a2xhZG5lIHBvdm9sZW4mZWFjdXRlOyB6b2JyYXplbmllIGNociZhYWN1dGU7bmVuJnlhY3V0ZTtjaCBzdHImYWFjdXRlO25vay4gQWRtaW5pc3RyJmFhY3V0ZTt0b3IgcyBwciZhYWN1dGU7dmFtaSBwcmUgJnVhY3V0ZTtwcmF2dSBvYnNhaHUsIG0mYWFjdXRlOyBtb8W+bm9zxaUgdXByYXZpxaUgdGlldG8gbmFzdGF2ZW5pYSBwcmUgamVkbm90bGl2JmVhY3V0ZTsgc3RyJmFhY3V0ZTtua3kuJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FrY2lhIHByaSBuZWRvc3RhdG/EjW5vbSBvcHImYWFjdXRlO3ZuZW4maWFjdXRlOyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FrY2lhLCBrdG9yJmFhY3V0ZTsgc2EgbSZhYWN1dGU7IHZ5a29uYcWlIHBva2lhxL4gcG91xb4maWFjdXRlO3ZhdGXEviBuZW0mYWFjdXRlOyBkb3N0YXRvxI1uJmVhY3V0ZTsgb3ByJmFhY3V0ZTt2bmVuaWEgbmEgem9icmF6ZW5pZSBvYnNhaHUuIE0mb2NpcmM7xb5lIGJ5xaUgcHJlc21lcm92YW4meWFjdXRlOyBuYSB1csSNaXQmdWFjdXRlOyBzdHImYWFjdXRlO25rdSwgYWxlYm8gbXUgbSZvY2lyYzvFvmUgYnnFpSB6b2JyYXplbiZ5YWN1dGU7IHByaWhsYXNvdmFjJmlhY3V0ZTsgZm9ybXVsJmFhY3V0ZTtyJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdab2JyYXppxaUgcHJpaGxhc292YWMmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3InOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdQcmVzbWVyb3ZhxaUgbmEgc3RyJmFhY3V0ZTtua3UnOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1ByZXNtZXJvdmHFpSBuYSc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdWeWJlcnRlIHN0ciZhYWN1dGU7bmt1IG5hIGt0b3ImdWFjdXRlOyBtJmFhY3V0ZTsgYnnFpSBwb3XFviZpYWN1dGU7dmF0ZcS+IHByZXNtZXJvdmFuJnlhY3V0ZTsuIFBva2lhxL4gamUgYWtjaWEgbmFzdGF2ZW4mYWFjdXRlOyBuYSBwcmVzbWVyb3ZhbmllIGEgbmllIGplIHZ5YnJhbiZhYWN1dGU7IMW+aWFkbmEgc3RyJmFhY3V0ZTtua2EgcHJlIHByZXNtZXJvdmFuaWUsIHBvdcW+JmlhY3V0ZTt2YXRlxL5vdmkgYnVkZSB6b2JyYXplbiZhYWN1dGU7IHZhcm92biZhYWN1dGU7IHNwciZhYWN1dGU7dmEuJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnT3ByJmFhY3V0ZTt2bmVuaWEnOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnQ2hyJmFhY3V0ZTtuZW4meWFjdXRlOyBvYnNhaCc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnVnliZXJ0ZSBkb2RhdG/EjW4mZWFjdXRlOyB2bGFzdG5vc3RpIG5hIHpvYnJhemVuaWUnOwokbGFuZ1sndmlldyddID0gJ1pvYnJhemnFpSc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGRVUgcHJpZCZhYWN1dGU7dmEgcmXFpWF6ZWMgayBoZXNsdSBrYcW+ZCZlYWN1dGU7aG8gcG91xb4maWFjdXRlO3ZhdGXEvmEuIFBvIHRvbSBha28gcyZ1YWN1dGU7IHBvdcW+JmlhY3V0ZTt2YXRlbGlhIHByaWRhbiZ5YWN1dGU7IGRvIGRhdGFiJmFhY3V0ZTt6aSBuaWUgamUgbW/Fvm4mZWFjdXRlOyB0ZW50byByZcWlYXplYyBtZW5pxaUuIFByZSBzdGFyJnNjYXJvbjtpZSBpbiZzY2Fyb247dGFsJmFhY3V0ZTtjaWUgbSZvY2lyYzvFvmUgYnnFpSBwciZhYWN1dGU7emRueS4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdSb3omc2Nhcm9uOyZpYWN1dGU7cmVuJmVhY3V0ZTsgbmFzdGF2ZW5pYSc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnxIxhc292JnlhY3V0ZTsgaW50ZXJ2YWwgcG8ga3Rvcm9tIGplIHBvdcW+JmlhY3V0ZTt2YXRlxL4gYXV0b21hdGljayZ5YWN1dGU7IG9kaGwmYWFjdXRlO3NlbiZ5YWN1dGU7IHogZCZvY2lyYzt2b2R1IG5lxI1pbm5vc3RpICh2IHNla3VuZCZhYWN1dGU7Y2gpJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0tvbnRyb2xhIGV4cGlyJmFhY3V0ZTtjaWUnOwokbGFuZ1snaW5mb19leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ8SMYXNvdiZ5YWN1dGU7IGludGVydmFsLCBha28gxI1hc3RvIG0mYWFjdXRlOyBzeXN0JmVhY3V0ZTttIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2nFpSBwb3XFviZpYWN1dGU7dmF0ZcS+b3YsIGt0b3ImeWFjdXRlO2NoIHNlZGVuaWUgdnlwciZzY2Fyb247YWxvICh2IHNla3VuZCZhYWN1dGU7Y2gpLiBTbCZ1YWN1dGU7xb5pIGFrbyBvcHRpbWFsaXomYWFjdXRlO2NpYSBuYSB6biZpYWN1dGU7xb5lbmllIHphxaVhxb5lbmlhIGRhdGFiJmFhY3V0ZTt6aS4gUHJpIDAgc2Ega29udHJvbGEgdnlrb24mYWFjdXRlO3ZhIHByaSBrYcW+ZGVqIHBvxb5pYWRhdmtlLic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnWW91ciBzZXR0aW5ncyB3ZXJlIHN1Y2Nlc3NmdWxseSB1cGRhdGVkJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcmNlIHVzZXJzIHRvIGxvZ291dCBhdCByZWd1bGFyIGludGVydmFscyc7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICfEjGFzaSBwcmUgbiZ1YWN1dGU7dGVuJmVhY3V0ZTsgb2RobCZhYWN1dGU7c2VuaWUnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1pvem5hbSDEjWFzb3YsIG9kZGVsZW4meWFjdXRlO2NoIMSNaWFyb3YgdiB0dmFyZSBISDpNTSxISDpNTSwga2VkeSBtYWomdWFjdXRlOyBiecWlIHBvdcW+JmlhY3V0ZTt2YXRlbGlhIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2VuJnlhY3V0ZTsuIEJlcnRlIGRvICZ1YWN1dGU7dmFoeSwgxb5lIHNhIHZ5dcW+JmlhY3V0ZTt2YSBtZWNoYW5pem11cyBwc2V1ZG9jcm9uLCB0YWvFvmUgamUgcG90cmVibiZlYWN1dGU7IHYgZGFuJnlhY3V0ZTtjaCDEjWFzb2NoIHphaXN0acWlIHNwbG5lbmllIHBvZG1pZW5vayBuYSB2eXZvbGFuaWUgcHImaWFjdXRlO2thenUuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnVnluZWNoYcWlIHBvdcW+JmlhY3V0ZTt2YXRlxL5vdiwga3RvciZ5YWN1dGU7IGJvbGkgYWt0JmlhY3V0ZTt2bnkgcG9zbGVkbiZ5YWN1dGU7Y2ggPGVtPihtaW4mdWFjdXRlO3QpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnUG91xb4maWFjdXRlO3ZhdGXEviwga3RvciZ5YWN1dGU7IGJvbCBha3QmaWFjdXRlO3ZueSB2IGRhbm9tIMSNYXNvdm9tIHJvem1lZHomaWFjdXRlOywgbmVidWRlIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2VuJnlhY3V0ZTsuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ1RoZSB1cGxvYWRlZCBmaWxlIGRvZXMgbm90IG1hdGNoIHRoZSBsaXN0IG9mIGFsbG93ZWQgZmlsZSB0eXBlcyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBoYXMgYmVlbiBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0lmIGVuYWJsZWQsIHRoaXMgbW9kdWxlIHdpbGwgbGlzdGVuIHRvIGV2ZW50cyBmcm9tIHRoZSBFY29tbWVyY2Ugc3VpdGUuICBUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgaGF2ZSBlZmZlY3QgaWYgdGhpcyBzZXR0aW5nIGlzIGVuYWJsZWQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTGlzdGVuIHRvIE9yZGVyIEV2ZW50cyc7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgYXBwbHkgaWYgdXNpbmcgc2VsZiByZWdpc3RyYXRpb24gYW5kIGFsbG93aW5nIGZvciBwYWlkIHJlZ2lzdHJhdGlvbic7CiRsYW5nWydub25lJ10gPSAnxb1pYWRuZSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ09kc3RyJmFhY3V0ZTtuacWlIHXFvnZhdGXEvmEnOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdFeHBpciZhYWN1dGU7Y2lhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBjYW5jZWxsZWQnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGRlbGV0ZWQnOwokbGFuZ1snZWNvbW1lcmNlX3NldHRpbmdzJ10gPSAnRWNvbW1lcmNlIFNldHRpbmdzJzsKJGxhbmdbJ3NlY3VyZWZpZWxkbWFya2VyJ10gPSAnT3puYcSNZW5pZSB6YWJlenBlxI1lbiZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsnOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0ZhcmJhIHphYmV6cGXEjWVuJnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1Vsb8W+acWlIGQmYWFjdXRlO3RhIHYgZGF0YWImYWFjdXRlO3plICZzY2Fyb247aWZyb3ZhbiZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQWsgamUgc2EgcG91xb4maWFjdXRlO3ZhdGXEviBhdXRlbnRpZmlrdWplIHBvbW9jb3UgZXh0ZXJuJmVhY3V0ZTtobyBtb2R1bHUgYSBuZWV4aXN1amUgeiZhYWN1dGU7em5hbSB2IGRhdGFiJmFhY3V0ZTt6ZSBGRVUgbW9kdWx1LCBtJmFhY3V0ZTsgYnnFpSB0YWsmeWFjdXRlO3RvIHomYWFjdXRlO3puYW0gdnl0dm9yZW4meWFjdXRlOz8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNreSB2eXR2b3JpxaUgbmV6biZhYWN1dGU7bXljaCBwb3XFviZpYWN1dGU7dmF0ZcS+b3YnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWUgem9icmF6b3ZhbmlhJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdOYXNsZWR1aiZ1YWN1dGU7Y2UgbmFzdGF2ZW5pYSBzYSBiZXImdWFjdXRlOyBkbyAmdWFjdXRlO3ZhaHUsIGliYSBwb2tpYcS+IHNhIHBvdcW+JmlhY3V0ZTt2YSB2c3RhdmFuJmFhY3V0ZTsgYXV0ZW50aWZpayZhYWN1dGU7Y2lhJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdWJnlhY3V0ZTtiZXJvbSBuaWUsIHphayZhYWN1dGU7xb5ldGUgcG91xb4maWFjdXRlO3ZhdGXEvm9tIHBvxb5pYWRhxaUgbyBvYm5vdmVuaWUgc3RyYXRlbiZ5YWN1dGU7Y2ggcHJpaGxhc292YWMmaWFjdXRlO2NoICZ1YWN1dGU7ZGFqb3YsIGJleiBvaMS+YWR1IG5hIG9zdGF0biZlYWN1dGU7IG5hc3RhdmVuaWEnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1YmeWFjdXRlO2Jlcm9tIG5pZSwgemFrJmFhY3V0ZTvFvmV0ZSBwb3XFviZpYWN1dGU7dmF0ZcS+b20gcG/FvmlhZGHFpSBvIG9ibm92ZW5pZSBzdHJhdGVuJmVhY3V0ZTtobyBoZXNsYSwgYmV6IG9oxL5hZHUgbmEgb3N0YXRuJmVhY3V0ZTsgbmFzdGF2ZW5pYSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdQb3ZvbGnFpSBwb3XFviZpYWN1dGU7dmF0ZcS+b20gem1lbnUgcG91xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1Bvdm9sacWlIHBvdcW+JmlhY3V0ZTt2YXRlxL5vbSB2ecW+aWFkYcWlIHptZW51IGhlc2xhJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhIGF1dGVudGlmaWsmYWFjdXRlO2NpZSc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ1ZzdGF2YW4mYWFjdXRlOyBhdXRlbnRpZmlrJmFhY3V0ZTtjaWEnOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnJlNjYXJvbjt0YW5kYXJkbiZhYWN1dGU7IGF1dGVudGlmaWsmYWFjdXRlO2NpYSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGVudGlmaWthxI1uJnlhY3V0ZTsgTW9kdWwnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ01vZHVsIHBvZHBvcnVqZSBwb3XFviZpYWN1dGU7dmFuaWUgYWx0ZXJuYXQmaWFjdXRlO3ZueWNoIGF1dGVudGlmaWthxI1uJnlhY3V0ZTtjaCBtZXQmb2FjdXRlO2QuIE5pZWt0b3ImZWFjdXRlOyBmdW5rY2llIG5lbXVzaWEgYnnFpSBkb3N0dXBuJmVhY3V0ZTssIHBva2lhxL4gamUgcG91xb4maWFjdXRlO3ZhbiZhYWN1dGU7IGluJmFhY3V0ZTsgYWtvICZzY2Fyb247dGFuZGFyZG4mYWFjdXRlOyBmb3JtYSBhdXRlbnRpZmlrJmFhY3V0ZTtjaWUuJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaWsmYWFjdXRlO3RueSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ1Z5xb5hZG92YcWlIGFieSBib2xhIGhvZG5vdGEgdW5payZhYWN1dGU7dG5hIG1lZHppIHYmc2Nhcm9uO2V0ayZ5YWN1dGU7bWkgJnVhY3V0ZTvEjXRhbWknOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcmVzZXRvdmFuaWEgc2VkZW5pYSc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdUaGlzIGlzIHRoZSBmaWVsZCBuYW1lLCB0byBiZSB1c2VkIGZvciBhZGRyZXNzaW5nIGluIHNtYXJ0eS4gIEl0IG11c3QgY29uc2lzdCBvZiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnTiZhYWN1dGU7diZzY2Fyb247dGV2biZpYWN1dGU7Y2knOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3Qgb25lIG9yIG1vcmUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhpcyBwYWdlJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdTa3VwaW5hIG11cyZpYWN1dGU7IGJ5xaUgdnlicmFuJmFhY3V0ZTsnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVnlicmHFpSc7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnUG/EjWlhdG/EjW4meWFjdXRlOyByb2snOwokbGFuZ1snZW5kX3llYXInXSA9ICdLb25lxI1uJnlhY3V0ZTsgcm9rJzsKJGxhbmdbJ2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVmXEvmtvc8WlIG4mYWFjdXRlO2jEvmFkdSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnUHJpIHptZW5lIHNrdXBpbnknOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnUHImaWFjdXRlO2xpJnNjYXJvbjsgdmXEvmEgdcW+JmlhY3V0ZTt2YXRlxL5vdiB6dm9sZW4meWFjdXRlO2NoIHByZSBocm9tYWRuJnVhY3V0ZTsgYWtjaXUuIE1heGltJmFhY3V0ZTtsbnkgcG/EjWV0IGplIDI1JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7LCDFvmUgY2hjZXRlIG9kc3RyJmFhY3V0ZTtuacWlIHZ5YnJhbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdabWF6YcWlIHZ5YnJhbiZlYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyb3ZhxaUgbiZhYWN1dGU7aG9kbmUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbnUgcHJpIHZsb8W+ZW4maWFjdXRlOyc7CiRsYW5nWydtb250aHMnXSA9ICdtZXNpYWNlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyBob2Rub3RlIHByZSBleHBpciZhYWN1dGU7Y2l1JzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEgbm90aWZpayZhYWN1dGU7Y2llJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSB2bGFzdG5vc3RpJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSBwcmVzbWVyb3ZhbmlhJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdIbGF2biZlYWN1dGU7IG5hc3RhdmVuaWEnOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEgU2Vzc2lvbiBhIENvb2tpZSAnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhIHBvbCZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1puYcSNa2EgcG/EvmEgcHJlIHphYnVkbnV0JmVhY3V0ZTsgaGVzbG8gbSZvY2lyYzvFvmUgYnnFpSBsZW4gcHJpIHBvdmlubiZ5YWN1dGU7Y2ggcG9saWFjaCc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdQb3ZvbGnFpSB3eXNpd3lnIGVkaXRvcmUgcHJlIHRleHRvdiZlYWN1dGU7IHBvbGUnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+UG96biZhYWN1dGU7bWthOiA8L3N0cm9uZz4gVnl1xb4maWFjdXRlO3ZhIGZ1bmtjaWUgbWNyeXB0LCBwcmUgJnNjYXJvbjtpZnJvdmFjaSAmdWFjdXRlO8SNZWx5LCB0aWUgbmllIGplIG1vxb5uJmVhY3V0ZTsgZGV0ZWtvdmHFpSBwcmkgaW4mc2Nhcm9uO3RhbCZhYWN1dGU7Y2lpLiBQcm9zJmlhY3V0ZTttIGtvbnRha3R1anRlIGFkbWluaXN0ciZhYWN1dGU7dG9yYSBzZXJ2ZXJ1Lic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdVcHJhdm92YW4meWFjdXRlOyB1xb4maWFjdXRlO3ZhdGXEvic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWNrIGhlcmUgdG8gc2lnbiBvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaWNrIGhlcmUgdG8gYWRqdXN0IHlvdXIgcGFzc3dvcmQgb3Igb3RoZXIgaW5mb3JtYXRpb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIHYmeWFjdXRlO3BpcyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydldmVudCddID0gJ1VkYWxvc8WlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgRXZlbnQgTm90aWZpY2F0aW9uJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0FkcmVzYSBwcmUgemFzaWVsYW5pZSB1cG96b3JuZW4maWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHVwb3pvcm5lbmlhJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ1ByZWRtZXQgdXBvem9ybmVuaWEnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdVcG96b3JuZW5pZSBlLW1haWxvbSc7CiRsYW5nWydPbkxvZ2luJ10gPSAnUHJpIHByaWhsJmFhY3V0ZTtzZW4maWFjdXRlOyc7CiRsYW5nWydPbkxvZ291dCddID0gJ1ByaSBvZGhsJmFhY3V0ZTtzZW4maWFjdXRlOyc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdQcmkgZXhwaXImYWFjdXRlO2NpaSBzZWRlbmlhJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1ByaSB2eXR2b3JlbiZpYWN1dGU7IG5vdiZlYWN1dGU7aG8gcG91xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnUHJpIG9kc3RyJmFhY3V0ZTtuZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdQcmkgem1lbmUgbmFzdGF2ZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnUHJpIHZ5dHZvcmVuJmlhY3V0ZTsgbm92ZWogc2t1cGlueSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnUHJpIG9kdHImYWFjdXRlO25lbiZpYWN1dGU7IHNrdXBpbnknOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1ZhJnNjYXJvbjtlIHXFviZpYWN1dGU7dmF0ZcS+c2tlIG1lbm8gamUnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIHptZW5lIG5hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIG92ZXJlbiZpYWN1dGU7IHJlZ2lzdHImYWFjdXRlO2NpZSAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSBvYm5vdnUgc3RyYXRlbiZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcG90dnJkZW5pZSBvYm5vdnkgc3RyYXRlbiZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yOiBNb3JlIHRoYW4gb25lIHVzZXIgYWNjb3VudCBtYXRjaGVkIHRoZSBwcm9wZXJ0aWVzIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdDaHlieTogdcW+JmlhY3V0ZTt2YXRlxL4gbmVuJmFhY3V0ZTtqZGVuJnlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0NoeWJhOiBOZWJvbGEgbiZhYWN1dGU7amRlbiZhYWN1dGU7IHNrdXBpbmEgcyB0JnlhY3V0ZTttdG8gbWVub20nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdJYmEgbmEgxI0maWFjdXRlO3RhbmllJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdUcmllZGEgVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdPZGhsJmFhY3V0ZTtzZW5pZSBhZG1pbmlzdHImYWFjdXRlO3Rvcm9tJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdVayZhYWN1dGU7emHFpSBpYmEgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnT2RobCZhYWN1dGU7c2nFpSB0b2h0byB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnVmxhc25vc3RpIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0b3ZhxaUnOwokbGFuZ1snY2xlYXInXSA9ICdWecSNaXN0acWlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydG92YcWlIGhpc3Qmb2FjdXRlO3JpdSBkbyBBU0NJSSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1Z5xI1pc3RpxaUgaGlzdCZvYWN1dGU7cml1IHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdaYWJ1ZGxpIHN0ZSB2YSZzY2Fyb247ZSBwcmlobGFzb3ZhY2llICZ1YWN1dGU7ZGFqZT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0b3ZhxaUgc2t1cGlueSBhIGljaCB2bGFzdG5vc3QmaWFjdXRlOyBkbyBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJyZVYWN1dGU7ZHLFvmJhIGhpc3Qmb2FjdXRlO3JpZSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sneWVzJ10gPSAnJkFhY3V0ZTtubyc7CiRsYW5nWydubyddID0gJ05pZSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICd6JzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEJleiBsaW1pdHUgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnMSBob2RpbnUgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJzYgaG9kJmlhY3V0ZTtuIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICcxMiBob2QmaWFjdXRlO24gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnSmVkZW4gZGVuIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdKZWRlbiB0JnlhY3V0ZTvFvmRlxYggc3RhcmUnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R2YSB0JnlhY3V0ZTvFvmRuZSBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0plZGVuIG1lc2lhYyBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyaSBtZXNpYWNlIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJyZTY2Fyb247ZXPFpSBtZXNpYWNvdiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnSmVkZW4gcm9rIHN0YXImZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdab3NrdXBvdmFuaWUgYSB0cmllZGVuaWUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1omYWFjdXRlO3puYW15IG9kcG92ZWRhaiZ1YWN1dGU7Y2UgcG9kbWllbmtlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlO2hvIG1lbmEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIGQmYWFjdXRlO3R1bXUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnVnpvc3R1cG5lIHBvZMS+YSBkJmFhY3V0ZTt0dW11JzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1pvc3R1cG5lIHBvZMS+YSB0eXB1IHVkYWxvc3QmaWFjdXRlOyc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgdHlwdSB1ZGFsb3N0JmlhY3V0ZTsnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIElQIGFkcmVzeSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgSVAgYWRyZXN5JzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdIaXN0Jm9hY3V0ZTtyaWEgbmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldG92YcWlJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1pvc2t1cGnFpSBwb2TEvmEgSVAgYWRyaWVzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJvdmFuaWUgcG9kxL5hIHR5cG92IHVkYWxvc3QmaWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdab2JyYXppxaUgaWJhIGFrY2llLCBrdG9yJmVhY3V0ZTsgc3UgbWVuZWogYWtvOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU3RyJmFhY3V0ZTtua292YWMmaWFjdXRlOyBsaW1pdCc7CiRsYW5nWydmb3InXSA9ICdwcmUnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdaJmFhY3V0ZTt6bmFtIHXFviZpYWN1dGU7dmF0ZcS+b3YgaGlzdCZvYWN1dGU7cmllJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZXpuJmFhY3V0ZTttaSc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgYWRyZXNhJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUeXAgdWRhbG9zdGknOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ04mYWFjdXRlO3ZyYXQnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBrb21wbGV0biZ5YWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1NwcmFjb3ZhbiZ5YWN1dGU7Y2ggcmlhZGtvdic7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnQ2h5YnknOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1ByaWRhbiZ5YWN1dGU7Y2ggeiZhYWN1dGU7em5hbW92JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdOZW4mYWFjdXRlO2pkZW4mZWFjdXRlOyB2bGFzdG5vc3QmaWFjdXRlOyBwcmUgc2t1cGludSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0JleiBvZG96dnkgU01UUCBzZXJ2ZXJhJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdDaHlibiZhYWN1dGU7IGhvZG5vdGEgdiZ5YWN1dGU7YmVyb3YmZWFjdXRlO2hvIHBvxL5hIGFsZWJvIHZpYWN2JnlhY3V0ZTtiZXJvdiZlYWN1dGU7aG8gcG/EvmEgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdQb2xlICVzIHByZXNpYWhsbyBtYXhpbSZhYWN1dGU7bG55IHBvxI1ldCB6bmFrb3YnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdDaHliYSBwcmkgaW1wb3J0ZSAgKHJpYWRvayAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05pZSBqZSBtb8W+biZlYWN1dGU7IG90dm9yacWlIHMmdWFjdXRlO2Jvcic7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRvdmHFpSB1xb4maWFjdXRlO3ZhdGXEvm92IGRvIHRlanRvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmxvxb5pxaUgQ1NWIHMmdWFjdXRlO2Jvcic7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ1Zsb8W+acWlIFhNTCBzJnVhY3V0ZTtib3InOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0b3ZhxaUgdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRvdmHFpSB1xb4maWFjdXRlO3ZhdGXEvm92JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1Z5xI1pc3RpxaUnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDZXN0YSBrIG9iciZhYWN1dGU7emt1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUG92b2xpxaUgdmlhYyBzaW11bHQmYWFjdXRlO2xueWNoIHByaWhsJmFhY3V0ZTtzZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnVHlweSBzJnVhY3V0ZTtib3Jvdiwga3RvciZlYWN1dGU7IHMmdWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+b20gZG92b2xlbiZlYWN1dGU7IG5haHImYWFjdXRlO3ZhxaUgbmEgc2VydmVyJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBOYXNsZWR1aiZ1YWN1dGU7Y2UgbWFrcmEgbSZvY2lyYzvFvnUgYnnFpSBwb3XFvml0JmVhY3V0ZTsgdiB0JnlhY3V0ZTtjaHRvIHBvbGlhY2g6IHskdXNlcm5hbWV9Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnVXByYXZ0ZSB0b3RvIHBvbGUgcHJlIHJlc2V0b3ZhbmllIGhlc2xhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnVXByYXZ0ZSB0b3RvIHBvbGUgcHJlIHJlc2V0b3ZhbmllIGhlc2xhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVxb4maWFjdXRlO3ZhdGXEviBzIHQmeWFjdXRlO210byB1xb4maWFjdXRlO3ZhdGXEvnNrJnlhY3V0ZTttIG1lbm9tIHXFviBleGlzdHVqZSc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdDU1YgZXhwb3J0IG5ldnImYWFjdXRlO3RpbCDFvmlhZG5lIHYmeWFjdXRlO3NsZWRreSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdExLrFvmthIHBvxL5hIHByZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdExLrFvmthIHBvxL5hIHByZSBoZXNsbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBkxLrFvmthIGhlc2xhIG5pZSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hIG5pZSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ05lcGxhdG4mYWFjdXRlOyBlLW1haWxvdiZhYWN1dGU7IGFkcmVzYSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhIHByZSB0ZW50byAmdWFjdXRlO8SNZXQgbmVib2xpIG4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcyBuYXN0YXZlbiZpYWN1dGU7bSB1xb4maWFjdXRlO3ZhdGXEvnNrJnlhY3V0ZTtjaCBpbmZvcm0mYWFjdXRlO2NpaSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibCZlYWN1dGU7bSBzIG5hc3RhdmVuJmlhY3V0ZTttIHZsYXNub3N0aSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL4gcHJpZGFsICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL4gdnltYXphbCAgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnVmxhc3Rub3PFpSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnSG9kbm90YSAocmVndWwmYWFjdXRlO3JueSB2JnlhY3V0ZTtyYXopJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnVmFyb3ZhbmllOiBUaWV0byBwb2xpYSBvdnBseW5pYSB2ZcS+a29zxaUgdnN0dXBuJnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3Jvdi4gWm4maWFjdXRlO8W+ZW4maWFjdXRlO20gdG9odG8gxI0maWFjdXRlO3NsYSBuYSBleGlzdHVqJnVhY3V0ZTtjZWogc3RyJmFhY3V0ZTtua2UgbmVkb3BvcnXEjXVqZW1lLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7LCDFvmUgY2hjZXRlIHptZW5pxaUgbmFzdGF2ZW5pYSBtb2R1bHU/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSB1xb4gamUgcG91xb4maWFjdXRlO3ZhbiZhYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1BvdcW+acWlIGNvb2tpZSBwcmUgemFwYW0mYXVtbDt0YW5pZSBwcmlobGFzb3ZhYyZpYWN1dGU7Y2ggJnVhY3V0ZTtkYWpvdic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ01lbm8gY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnUG92b2xpxaUgZHVwbGljaXRuJmVhY3V0ZTsgZS1tYWlseSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBqZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyAnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnU2smdWFjdXRlOyZzY2Fyb247YcWlIHVkcsW+YcWlICBwcmlobCZhYWN1dGU7c2VuJnlhY3V0ZTtjaCB1xb4maWFjdXRlO3ZhdGXEvm92IHBvbW9jb3UgY29va2llcyA8ZW0+KGNvb2tpZSByZXNldHVqZSBha3Rpdml0dSBuYSBzdHImYWFjdXRlO25rYWNoKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhwb3ZvbGnFpSB2aWFjIHXFviZpYWN1dGU7dmF0ZcS+b3YgcyByb3ZuYWtvdSBlLW1haWxvdm91IGFkcmVzb3UpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcocG91xb4maWFjdXRlO3ZhdGXEvm92YSBlLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBqZSB6JmFhY3V0ZTtyb3ZlxYggYWogamVobyBwb3XFviZpYWN1dGU7dmF0ZcS+c2smeWFjdXRlO20gbWVub20gLS0gbmVwb3XFviZpYWN1dGU7dmFqdGUgcyBuYXN0YXZlbiZpYWN1dGU7bSAmcXVvdDtwb3ZvbGnFpSBkdXBsaWNpdG4mZWFjdXRlOyBlLW1haWx5JnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQb3ZvbGnFpSBkdXBsaWNpdG4mZWFjdXRlOyB2ecW+aWFkYW5pZSBzdHJhdGVuJmVhY3V0ZTtobyBoZXNsYSc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoUG92b2xpxaUgcG91xb4maWFjdXRlO3ZhdGXEvm92aSBwb8W+aWFkYcWlIG8gb2Jub3ZlbmllIGhlc2xhLCBwb2tpYcS+IG5lcmVhZ292YWwgbmEgcHJlZGNoJmFhY3V0ZTtkemFqJnVhY3V0ZTtjdSDFvmlhZG9zxaUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnUG/FvmnFpSBvcHImYWFjdXRlO3ZuZW5pYSAmc2Nhcm9uO3BlY2lmaWNrJmVhY3V0ZTsgcHJlIEZyb250LWVuZCBVc2VyIG1vZHVsPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoWnZ5xI1ham5lIHMmdWFjdXRlOyBwcmUgRkVVc2VycyBtb2R1bCAgcG91xb4maWFjdXRlO3ZhbiZlYWN1dGU7IHJvdm5hayZlYWN1dGU7IG9wciZhYWN1dGU7dm5lbmlhIGFrbyBwcmUgYWRtaW5pc3RyYcSNbiZlYWN1dGU7IHJvemhyYW5pZS4gUG9raWHEviB2eWJlcmV0ZSB0JnVhY3V0ZTt0byBtb8W+bm9zxaUsIGJ1ZCZ1YWN1dGU7IHByZSBGRVVzZXNycyBwb3XFvml0JmVhY3V0ZTsgdmxhc3RuJmVhY3V0ZTsgbmFzdGF2ZW5pYS4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOYWhyYXQmeWFjdXRlOyBzJnVhY3V0ZTtib3IgbmVib2wgbiZhYWN1dGU7amRlbiZ5YWN1dGU7IChpbnRlcm4mYWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdQcmkgbmFociZhYWN1dGU7dmFuJmlhY3V0ZTsgcyZ1YWN1dGU7Ym9ydSBkbyZzY2Fyb247bG8gayBjaHliZS4gU2t1c3RlIHRvIHpub3Z1JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05ldmxvxb5pbGkgc3RlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ05ldmxvxb5pbGkgc3RlIGUtbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZXZsb8W+aWxpIHN0ZSBoZXNsbyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIHByaWhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVQT1pPUk5FTklFPC9iPiB6bWVuYSBzdCZhYWN1dGU7dmFqJnVhY3V0ZTtjaWNoIHZsYXNub3N0JmlhY3V0ZTssIGt0b3ImZWFjdXRlOyBzJnVhY3V0ZTsgcHJpcmFkZW4mZWFjdXRlOyBza3VwaW4mYWFjdXRlO20gbSZvY2lyYzvFvnUgc3Amb2NpcmM7c29iacWlIHByb2JsJmVhY3V0ZTtteSA8aT4ocHJlZG92JnNjYXJvbjtldGsmeWFjdXRlO20gcHJpIHNrciZhYWN1dGU7dGVuJmlhY3V0ZTsgbmlla3RvciZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTspPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUJmFhY3V0ZTt0byBmdW5rY2lhIG5lcHJhY3VqZSBwb2Qgd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTmV2eXR2JmFhY3V0ZTtyYWp0ZSB2bGFzbm9zxaUgcHJlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vLCBwcmV0b8W+ZSB0byB1xb4gamUgcyZ1YWN1dGU7xI1hc8Wlb3UgbW9kdWx1IEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydG92YcWlIHXFviZpYWN1dGU7dmF0ZcS+b3YgZG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydG9ydG92YcWlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydG92YcWlJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyJmFhY3V0ZTtjaWEnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdVcHJhdmnFpSB2bGFzbm9zxaUnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdWeXR2b3JlbiZlYWN1dGU7JzsKJGxhbmdbJ3NvcnRieSddID0gJ1pvcmFkacWlIHBvZMS+YSc7CiRsYW5nWydzb3J0J10gPSAnWm9yYWRlbmllJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSB2byB2eWJyYW5lai92eWJyYW4meWFjdXRlO2NoIHNrdXBpbiZhYWN1dGU7Y2gnOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnT2JtZWR6acWlIHYmeWFjdXRlO3NsZWRreSBkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdOaWUgamUgbW/Fvm4mZWFjdXRlOyBuJmFhY3V0ZTtqc8WlIHBvbG/Fvmt1IGUtbWFpbCBwcmUgdG9odG8gdcW+JmlhY3V0ZTt2YXRlxL5hLiBLb250YWt0dWp0ZSBhZG1pbmlzdHImYWFjdXRlO3RvcmEgd2VidS4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIGZvcm11bCZhYWN1dGU7ciB6bWVueSBoZXNsYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBzdHImYWFjdXRlO25reSBwcmUgZm9ybXVsJmFhY3V0ZTtyIHptZW55IG5hc3RhdmVuaWEnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcG8gcHJpaGwmYWFjdXRlO3NlbmkgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIG9kaGwmYWFjdXRlO3NlbmllIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnUG9yYWRpZSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdQb8SNZXQgdcW+JmlhY3V0ZTt2YXRlbG/Evm92LCBrdG9yJnlhY3V0ZTsgbW9tZW50JmFhY3V0ZTtsbmUgxb5pYWRhaiZ1YWN1dGU7IG8gcmVzZXQgaGVzbGE6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnT2RzdHJhbmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIHQmeWFjdXRlO8W+ZGXFiCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIG1lc2lhYyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVmxvxb5lbiZ5YWN1dGU7IGJvbCBuZXNwciZhYWN1dGU7dm55IGsmb2FjdXRlO2QsIHNrJnVhY3V0ZTtzdGUgdG8gem5vdnUnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0RvxI1hc24meWFjdXRlOyBrJm9hY3V0ZTtkIHByZSB2YSZzY2Fyb247ZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyBuZWJvbG8gbiZhYWN1dGU7amRlbiZlYWN1dGU7IHYgZGF0YWImYWFjdXRlO3plJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHZlcmlmaWsmYWFjdXRlO2NpdSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHphYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ8SOYWwmc2Nhcm9uO2llIGluJnNjYXJvbjt0cnVrY2llIG4mYWFjdXRlO2pkZXRlIHZvIHN2b2plaiBlLW1haWxvdmVqIHNjaHImYWFjdXRlO25reS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1Byb2JsZW0gcyBkYXRhYiZhYWN1dGU7em92JzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1QmdWFjdXRlO3RvIHNwciZhYWN1dGU7dnUgc3RlIGRvc3RhbGksIHByZXRvxb5lIG5pZWt0byBwb8W+aWFkYWwgbyBvYm5vdmVuaWUgemFidWRudXQmZWFjdXRlO2hvIGhlc2xhIGsgdiZhYWN1dGU7JnNjYXJvbjttdSAmdWFjdXRlO8SNdHUgbmEgbmEmc2Nhcm9uO2VqIHN0ciZhYWN1dGU7bmtlLiBQb2tpYcS+IGplIHRvIHRhaywgcG9zdHVwdWp0ZSBwb2TEvmEgbmnFviZzY2Fyb247aWUgdXZlZGVuJnlhY3V0ZTtjaCBpbiZzY2Fyb247dHJ1a2NpJmlhY3V0ZTsuIFBva2lhxL4gbmV0dSZzY2Fyb247JmlhY3V0ZTt0ZSBvIMSNbyBpZGUsIHRhayB0ZW50byBlLW1haWwgcHJvcyZpYWN1dGU7bSBpZ25vcnVqdGUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnSyZvYWN1dGU7ZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOYXNsZWR1aiZ1YWN1dGU7Y2kgayZvYWN1dGU7ZCBib2wgbiZhYWN1dGU7aG9kbmUgdnlnZW5lcm92YW4meWFjdXRlOyBwcmUgb3ZlcmVuaWUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gJnVhY3V0ZTvEjXR1LiBQbyBrbGlrbnV0JmlhY3V0ZTsgbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmUgbmEgc3RyJmFhY3V0ZTtua3UsIGtkZSB6YWQmYWFjdXRlO3RlIHRlbnRvIGsmb2FjdXRlO2QuUG9sZSBidWRlIHByZWR2eXBsbmVuJmVhY3V0ZTsuIFBva2lhxL4gbmllLCBrJm9hY3V0ZTtkIGplIHR1Oic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0tsaWtudXQmaWFjdXRlO20gbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmV0ZSBuYSBzdHImYWFjdXRlO25rdSwga2RlIG0mb2NpcmM7xb5ldGUgemFkYcWlIHZ5JnNjYXJvbjtpZSB1dmVkZW4meWFjdXRlOyBrJm9hY3V0ZTtkIGEgb2Jub3ZpxaUgdmEmc2Nhcm9uO2UgaGVzbG8nOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdOZW4mYWFjdXRlO2pkZW4meWFjdXRlOyBDTVNNYWlsZXIgbW9kdWwnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnTmEgZS1tYWlsICVzIGJvbGkgemFzbGFuJmVhY3V0ZTsgaW4mc2Nhcm9uO3RydWtjaWUgcHJlIG9ibm92ZW5pZSBoZXNsYS4gxI5ha3VqZW1lJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUG9raWHEviBzdGUgemFidWRsaSBhbGVibyBzdHJhdGlsaSBzdm9qZSBoZXNsbywgdGFrIHByb3MmaWFjdXRlO20gdnlwbMWIdGUgc3ZvamUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8gYSBlLW1haWxvbSBkb3N0YW5lbmUgaW4mc2Nhcm9uO3RydWtjaWUgYWtvIHBva3JhxI1vdmHFpSBwcmkgb2Jub3ZlbiZpYWN1dGU7IGhlc2xhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByaSBzdHJhdGUgaGVzbGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByaSBzdHJhdGUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdWbGFzbm9zxaUgJXMgbmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1ZsYXNub3PFpSBuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1snYWRkcHJvcCddID0gJ1ByaWRhxaUgdmxhc25vc8WlJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQb3Zpbm4mZWFjdXRlOyBwb2xlICglcykgYm9sbyBwciZhYWN1dGU7emRuZSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1phZGFqdGUgbm92JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdQcmF2ZGVwb2RvYm5lIG5pZSBzdGUgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7JzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0ciZhYWN1dGU7Y2lhJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGVudG8gJnVhY3V0ZTvEjWV0IHZ5cHImc2Nhcm9uO2FsJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdOZXNwciZhYWN1dGU7dm55IGZvcm0mYWFjdXRlO3QgZS1tYWlsb3ZlaiBhZHJlc3knOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOZXBsYXRuJnlhY3V0ZTsgZCZhYWN1dGU7dHVtIGV4cGlyJmFhY3V0ZTtjaWUnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0NoeWJhIHByaSBuYXN0YXZlbiZpYWN1dGU7IHZsYXNub3N0JmlhY3V0ZTsgJXMgcHJlIHXFviZpYWN1dGU7dmF0ZcS+YSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05lcGxhbnQmZWFjdXRlOyBJRCBza3VwaW55ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnT3puYcSNZW5pYSBza3J5dCZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0ZhcmJhIHNrcnl0JmVhY3V0ZTtobyBwb8S+YSc7CiRsYW5nWydoaWRkZW4nXSA9ICdTa3J5dCZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdWbGFzdG5vc8WlIHMgdCZ5YWN1dGU7bXRvIG1lbm9tIHXFviBib2xhIG5hZGVmaW5vdmFuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVib2xpIG5hZGVmaW5vdmFuJmVhY3V0ZTsgxb5pYWRuZSB2bGFzdG5vc3RpJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVib2xpIHZ5YnJhbiZlYWN1dGU7IHZsYXNub3N0aSBwcmUgdCZ1YWN1dGU7dG8gc2t1cGludSc7CiRsYW5nWydub2dyb3VwcyddID0gJ8W9aWFkbmUgc2t1cGlueSBuaWUgcyZ1YWN1dGU7IG5hZGVmaW5vdmFuJmVhY3V0ZTsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdTa3VwaW55IG4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnSmUgbnV0JmVhY3V0ZTsgcHJpcmFkZW5pZSBhc3BvxYggayBqZWRuZWogc2t1cGluZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnVnnFvmFkb3ZhxaUgcHJpcmFkZW5pZSBhc3BvxYggZG8gamVkbmVqIHNrdXBpbnknOwokbGFuZ1snYmFjayddID0gJ1NwJmF1bWw7xaUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGplIHBvdmlubiZhYWN1dGU7IHBvbG/FvmthJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdPem5hxI1pxaUgcG92aW5uJmVhY3V0ZTsgcG9saWEgcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdadiZ5YWN1dGU7cmF6bmnFpSBwb8W+YWRvdmFuJmVhY3V0ZTsgcG9saWEnOwokbGFuZ1snbmV4dCddID0gJ8SOYWwmc2Nhcm9uO2llJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2t1cGluYSBzIHQmeWFjdXRlO210byBuJmFhY3V0ZTt6dm9tIHXFviBleGlzdHVqZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1Z5xb5hZG92YW4mYWFjdXRlOyc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZvbGl0ZcS+biZhYWN1dGU7JzsKJGxhbmdbJ29mZiddID0gJ1Z5cG4mdWFjdXRlO8WlJzsKJGxhbmdbJ3NpemUnXSA9ICdWZcS+a29zxaUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihtYXhpbSZhYWN1dGU7bG5hIHJvem1lciB2IHB4IHByZSBqZWRlbiB6IHJvem1lcm92IC0gdiZ5YWN1dGU7JnNjYXJvbjtrYSwgJnNjYXJvbjsmaWFjdXRlO3JrYSknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRMS6xb5rYSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihwb8SNZXQgem5ha292IHYgdGV4dG92b20gcG9saSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ1BvbG/Fvmt5IHJvemJhxL5vdmFjaWVobyBtZW51IG9kZGVsZW4mZWFjdXRlOyBub3YmeWFjdXRlO21pIHJpYWRrYW1pLic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdWZXJlam4meWFjdXRlOyBuJmFhY3V0ZTt6b3YgcG/EvmEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXYgcG/EvmEnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnUCZ5YWN1dGU7dGHFpSBwcmkgc3RyYXRlPGJyLz5Vxb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWyd0ZXh0J10gPSAnVGV4dCc7CiRsYW5nWydjaGVja2JveCddID0gJ1phJnNjYXJvbjtrcnQmYWFjdXRlO3ZhY2llIHBvbCZpYWN1dGU7xI1rbyc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ1ZpYWN2JnlhY3V0ZTtiZXJvdiZlYWN1dGU7IHBvbGUnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnU2t1cGluYSByYWRpbyBwcnZrb3YnOwokbGFuZ1snaW1hZ2UnXSA9ICdPYnImYWFjdXRlO3pvayc7CiRsYW5nWydlbWFpbCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dG92JmFhY3V0ZTsgb2JsYXPFpSc7CiRsYW5nWydkcm9wZG93biddID0gJ1JvemJhxL5vdmFjaWUgbWVudSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1ZpdGFqJzsKJGxhbmdbJ2xvZ291dCddID0gJ09kaGwmYWFjdXRlO3NpxaUnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ1BvdcW+acWlIHRvaG8gbWVubyBza3VwaW55JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1VwcmF2IG1vamUgbmFzdGF2ZW5pYSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0NoeWJhIHByaSBwcmlobCZhYWN1dGU7c2VuJmlhY3V0ZTsgLSBuZXNwciZhYWN1dGU7dm5lIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vIGFsZWJvIGhlc2xvPyc7CiRsYW5nWydsb2dpbiddID0gJ1ByaWhsJmFhY3V0ZTtzacWlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTiZhYWN1dGU7em92IHByaWhsYXNvdmFjaWVobyBwb2wmaWFjdXRlO8SNa2EnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnSGVzbG8nOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdaYXBhbSZhdW1sO3RhaiBzaSBtYSBuYSB0b210byBwb8SNJmlhY3V0ZTt0YcSNaSc7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJvdmHFpSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1phYnVkbnV0JmVhY3V0ZTsgcHJpaGxhc292YWNpZSAmdWFjdXRlO2RhamU/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnViZ5YWN1dGU7Y2hvZHppZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOZWJvbGkgbiZhYWN1dGU7amRlbiZlYWN1dGU7IMW+aWFkbmUgaW5mb3JtJmFhY3V0ZTtjaWUgbyB1xb4maWFjdXRlO3ZhdGXEvm92aSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVG90byB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgKCVzKSB1xb4gbmlla2RvIHBvdcW+JmlhY3V0ZTt2YSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnUG91xb5pxaUgU01UUCBwcmUgdmFsaWQmYWFjdXRlO2NpdSBlLW1haWxvdiZ5YWN1dGU7Y2ggYWRyaWVzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbSZhYWN1dGU7bG5hIGTEusW+a2EgaGVzbGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthIGhlc2xhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Z5cHImc2Nhcm9uO2FuaWUgc2VkZW5pYSAoc2VrdW5keSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1BvdcW+acWlIGNvb2tpZXMgbmEgdWRyxb5hbmllIHByaWhsJmFhY3V0ZTtzZW5pYSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1Bvdm9sacWlIGUtbWFpbG92JnVhY3V0ZTsgcmVnaXN0ciZhYWN1dGU7Y2l1JzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdWJnlhY3V0ZTtjaG9kemlhIHNrdXBpbnkgcHJlIG5vdiZlYWN1dGU7aG8gdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSB6bWVudSBuYXN0YXZlbiZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdIZXNsYSBzYSBuZXpob2R1aiZ1YWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05lc3ByJmFhY3V0ZTt2bmUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnTmVzcHImYWFjdXRlO3ZuZSBoZXNsbyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1VwcmF2acWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd2YWxpZCddID0gJ1NwciZhYWN1dGU7dm5lJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snc3RhdHVzJ10gPSAnU3Rhdic7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUZW50byB1xb4maWFjdXRlO3ZhdGXEviBuaWUgamUgcHJpcmFkZW4meWFjdXRlOyBkbyDFvmlhZG5laiBza3VwaW55JzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICfFvWlhZG5lIHZsYXNub3N0aSc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ1Bva3VzIG8gaW1wb3J0IGR1cGxpY2l0biZ5YWN1dGU7Y2ggdmxhc3Rub3N0JmlhY3V0ZTsnOwokbGFuZ1sndmFsdWUnXSA9ICdIb2Rub3R5JzsKJGxhbmdbJ2dyb3VwcyddID0gJ1NrdXBpbnknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1ZsYXNub3N0aSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ04mYWFjdXRlO3pvdiB2bGFzdG5vc3RpJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ0hvZG5vdGEgdmxhc25vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ1ByaWRhxaUnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpxaUnOwokbGFuZ1snZXhwaXJlcyddID0gJ1BsYW5vc8WlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJyZTY2Fyb247cGVjaWZpa3VqdGUgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB0JnlhY3V0ZTvFvmRlxYgnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB0JnlhY3V0ZTvFvmRuZSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG1lc2lhYyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtZXNpYWNlJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1lc2lhY292JzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bCAmdWFjdXRlO3NwZSZzY2Fyb247bmUgbmFpbiZzY2Fyb247dGFsb3ZhbiZ5YWN1dGU7LjxiciAvPiBOZXphYnVkbml0ZSBuYXN0YXZpxaUgcHImYWFjdXRlO3ZhICAmYW1wO3F1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzJmFtcDtxdW90Oy4nOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdIZXNsbyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1pub3ZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdTa3VwaW5hIHMgdCZ5YWN1dGU7bXRvIG4mYWFjdXRlO3p2b20gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1VwcmF2acWlIHNrdXBpbnUnOwokbGFuZ1snc3VibWl0J10gPSAnT2Rvc2xhxaUnOwokbGFuZ1snY2FuY2VsJ10gPSAnWnJ1JnNjYXJvbjtpxaUnOwokbGFuZ1snZGVsZXRlJ10gPSAnT2RzdHImYWFjdXRlO25pxaUnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTssIMW+ZSB0b3RvIGplIHNwciZhYWN1dGU7dm5lIG5hc3RhdmVuaWVwcmUgdCZ1YWN1dGU7dG8gc2t1cGludT9cbiBWeXBudXQmaWFjdXRlO20gdmxhc3Rub3N0JmlhY3V0ZTsgc2EgbmVvZHN0ciZhYWN1dGU7bmlhIMW+aWFkbmUgJnVhY3V0ZTtkYWplIHZvIHZsYXNub3N0aWFjaCB1xb4maWFjdXRlO3ZhdGXEvmEvc2t1cGlueS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1N0ZSBzaSBpc3QmeWFjdXRlOywgxb5lIGNoY2V0ZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHNrdXBpbnU/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdOYW96YWogY2hjZXRlIGtvbXBsZXRuZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHZsYXNub3PFpT9cblZ5bWHFvnUgc2EgdCZ5YWN1dGU7bSBhaiB2JnNjYXJvbjtldGt5IGhvZG5vdHkgdGVqdG8gdmxhc25vc3RpIHUgdcW+JmlhY3V0ZTt2YXRlxL5vY2guJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lZG9zdGF0b8SNbiZlYWN1dGU7IHBhcmFtZXRyZSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdNZW5vJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmwmZWFjdXRlO20gcHJpIHByaWQmYWFjdXRlO3ZhbiZpYWN1dGU7IHZsYXNub3N0JmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgb2RzdHImYWFjdXRlO25lbiZpYWN1dGU7bSB2bGFzbm9zdCZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsgZS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0JleiBwciZhYWN1dGU7diBuYSB6YXBpc292YW5pZSBkbyBjaWXEvm92JmVhY3V0ZTtobyBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0NoeWJuJmVhY3V0ZTsgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnU2t1cGluYSBuZWJvbGEgcHJpZGFuJmFhY3V0ZTsnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdQb3XFvmnFpSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ1JlZ3VsJmFhY3V0ZTtybnkgdiZ5YWN1dGU7cmF6IHByZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ1BvcGlzJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ04mYWFjdXRlO3pvdiBza3VwaW55JzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1ByJmlhY3V0ZTtzdHVwIHphbWlldG51dCZ5YWN1dGU7JzsKJGxhbmdbJ2Vycm9yJ10gPSAnQ2h5YmEnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdQcmlkYcWlIHNrdXBpbnUnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRvdmHFpSBza3VwaW51JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdQcmlkYcWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW+JmlhY3V0ZTt2YXRlbGlhIHNwbMWIdWomdWFjdXRlO2NpIGtyaXQmZWFjdXRlO3JpYSB2eWjEvmFkJmFhY3V0ZTt2YW5pYSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWeWJyYcWlIHNrdXBpbnUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSByZWdpc3RyJmFhY3V0ZTtjaXUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbiZhYWN1dGU7IHByZSBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcHJpaGwmYWFjdXRlO3NlbmllJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZHZvxL5ieSc7CiRsYW5nWyd1c2VycyddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQgKHNwciZhYWN1dGU7dmEgdcW+JmlhY3V0ZTt2YXRlxL5vdiknOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hvZHppYSBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU3RyJmFhY3V0ZTtua2EgcyBwb3NsZWRuJnlhY3V0ZTttIHByJmlhY3V0ZTtzdHVwb20nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSW4mYWFjdXRlOyBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVmxvxb50ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a2EnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sl_SI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPYiBzcHJlbWVtYmkgdXBvcmFibmkmc2Nhcm9uO2tlIHNrdXBpbmUnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnWmEgc2t1cGluc2tlIG9wZXJhY2lqZSBqZSBpemJyYW5paCBwcmV2ZcSNIHVwb3JhYm5pa292Li4uIFByb3NpbW8sIG9tZWppdGUgbmEgMjUwIGFsaSBtYW5qLic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ1N0ZSBwcmVwcmnEjWFuaSwgZGEgxb5lbGl0ZSBpemJyaXNhdGkgaXpicmFuZSB1cG9yYWJuaWtlPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdJemJyaSZzY2Fyb247aSBpemJyYW5lJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyaXJhaiBuYWtsanXEjW5vIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgb2IgZG9kYWphbmp1IG5vdmloIMSNbGFub3YnOwokbGFuZ1snbW9udGhzJ10gPSAnbWVzZWNldic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnUHJpdnpldG8gb2Jkb2JqZSB2ZWxqYXZub3N0aSDEjWxhbnN0dmEnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTmFzdGF2aXR2ZSBvYnZlJnNjYXJvbjvEjWFuamEnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdOYXN0YXZpdHZlIGxhc3Rub3N0aSc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ05hc3Rhdml0dmUgcHJldXNtZXJpdGV2JzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdTcGxvJnNjYXJvbjtuZSBuYXN0YXZpdHZlJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdOYXN0YXZpdHZlIHNlaiBpbiBwaSZzY2Fyb247a290a292JzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnTmFzdGF2aXR2ZSBwb2xqJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ096bmFrYSBwb3phYmxqZW5vIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgc2UgbGFoa28gdXBvcmFiaSBzYW1vIG5hIG9idmV6bmloIHBvbGppaCc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdEb3ZvbGkgdXBvcmFibyB2aXp1YWxuZWdhIHVyZWpldmFsbmlrYSBuYSB0ZW0gdGVrc3Rvdm5lbSBwb2xqdSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Qb3pvcjogPC9zdHJvbmc+IFVwb3JhYmxqYSBtY3J5cHQgZnVua2NpamUgemEgZW5rcmlwY2lqby4gT2IgbmFtZXN0aXR2aSBkb2RhdGVrIG1jcnlwdCBuaSBiaWwgemF6bmFuLiBQcm9zaW1vLCBvYnZlc3RpdGUgYWRtaW5pc3RyYXRvcmphLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdVcmVqYW5qZSB1cG9yYWJuaWthJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnQnJleiBpbmxpbmUgb2JyYXpjZXYnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrbml0ZSwgxI1lIHN0ZSBwb3phYmlsaSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGluIGdlc2xvJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdLbGlrbml0ZSwgxI1lIHN0ZSBwb3phYmlsaSB2YSZzY2Fyb247ZSBnZXNsbyc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuaXRlIHphIG9kamF2byc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa25pdGUsIMSNZSDFvmVsaXRlIG5hc3Rhdml0aSB2YSZzY2Fyb247ZSBnZXNsbyBhbGkgZHJ1Z2UgaW5mb3JtYWNpamUnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdQb2dsZWogcHJlZGxvZ28gdXBvcmFibmlrYSc7CiRsYW5nWydldmVudCddID0gJ0RvZ29kZWsnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ09idmVzdGlsbyBvIEZFVSBkb2dvZGt1JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0UtcG8mc2Nhcm9uO3RuaSBuYXNsb3ZpIHphIG9idmVzdGlsYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnUHJlZGxvZ2UgemEgb2J2ZXN0aWxhIHBvIEUtcG8mc2Nhcm9uO3RpJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ1phZGV2YSAoc3ViamVjdCkgb2J2ZXN0aWwgcG8gRS1wbyZzY2Fyb247dGknOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdPYnZlc3RpbGEgcG8gRS1wbyZzY2Fyb247dGknOwokbGFuZ1snT25Mb2dpbiddID0gJ09iIHByaWphdmknOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdPYiBvZGphdmknOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnT2IgaXp0ZWt1IHNlamUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnT2IgcmVnaXN0cmFjaWppJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09iIGl6YnJpc3UgdXBvcmFibmlrYSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPYiBzcHJlbWVtYmkgbmFzdGF2aXRldic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT2IgdXN0YW5vdml0dmkgc2t1cGluZSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT2IgaXpicmlzdSBza3VwaW5lJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVXBvcmFibmkmc2Nhcm9uO2tvIGltZSwga2kgdXN0cmV6YSBwb2RhdGtvbSwga2kgc3RlIGppaCB2cGlzYWxpLCBqZSBiaWxvIHVzcGUmc2Nhcm9uO25vIG5hamRlbm8uJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdWYSZzY2Fyb247ZSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGplJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1N2ZXR1amVtbyB2YW0sIGRhIHNpIHRlIHBvZGF0a2Ugc2hyYW5pdGUgbmEgdmFybm8gbG9rYWNpam8uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRCBzdHJhbmkvYWxpYXMgemEgcHJldXNtZXJpdGV2IHBvIHNwcmVtZW1iaSBwb2RhdGtvdic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdJRCBzdHJhbmkvYWxpYXMgemEgcHJldXNtZXJpdGV2IHBvIHByZXZlcmphbmp1IGtvZGUgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHBvemFibGplbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHBvdHJkaXRldiBwb3phYmxqZW5lZ2EgdXBvcmFibmkmc2Nhcm9uO2tlZ2EgaW1lbmEnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdOYXBha2E6IFZuZSZzY2Fyb247ZW5pbSBuYXN0YXZpdHZhbSB1c3RyZXphIHZlxI0gcmHEjXVub3YnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnTmFwYWthOiBOZSBuYWpkZW0gdXN0cmV6bmVnYSB1cG9yYWJuaWthJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdOYXBha2E6IE5lIG5hamRlbSBza3VwaW5lIHMgdGVtIGltZW5vbSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NhbW8gemEgYnJhbmplJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdSYXpyZWQgemEgdXJlamFuamUgdXBvcmFibmlrb3YnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnT2RqYXZsamVuIHMgc3RyYW5pIGFkbWluaXN0cmF0b3JqYSc7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnUHJpa2HFvmkgc2FtbyBwcmlqYXZsamVuZSB1cG9yYWJuaWtlJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdPZGphdmkgdGVnYSB1cG9yYWJuaWthJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ05hc3Rhdml0dmUgdXBvcmFibmlrYSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1pnb2RvdmluYSB1cG9yYWJuaWthJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0l6dm96aSc7CiRsYW5nWydjbGVhciddID0gJ0l6YnJpJnNjYXJvbjtpJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0l6dm96aSB1cG9yYWJuaWtvdm8gemdvZG92aW5vIHYgQVNDSUksIGtpIGltYSBuYWptYW5qJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnSXpicmkmc2Nhcm9uO2kgdXBvcmFibmlrb3ZvIHpnb2Rvdmlubywga2kgaW1hIG5ham1hbmonOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnU3RlIHBvemFiaWxpIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgYWxpIGdlc2xvPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdJenZvemkgZGVmaW5pY2lqbyBza3VwaW5lIChpbiBuYXN0YXZpdHZlKSB2IFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVnpkcsW+ZXZhbmplIHpnb2RvdmluZSB1cG9yYWJuaWtvdic7CiRsYW5nWyd5ZXMnXSA9ICdEYSc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ29kJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIGJyZXogb21laml0dmUgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnc3Rhcm9zdCAxIHVybyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdzdGFyb3N0IDYgdXInOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnc3Rhcm9zdCAxMiB1cic7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ3N0YXJvc3QgMSBkYW4nOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnc3Rhcm9zdCAxIHRlZGVuJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdzdGFyb3N0IDIgdGVkbmEnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ3N0YXJvc3QgMSBtZXNlYyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnc3Rhcm9zdCAzIG1lc2VjZSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ3N0YXJvc3QgNiBtZXNlY2V2JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ3N0YXJvc3QgMSBsZXRvJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dydXBpcmFuamUgaW4gc29ydGlyYW5qZSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnWmFwaXNpLCBraSB1c3RyZXpham8ga3JpdGVyaWp1JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnVXBvcmFibmkmc2Nhcm9uO2tvIGltZSBwYWRham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1Vwb3JhYm5pJnNjYXJvbjtrbyBpbWUgbmFyYSZzY2Fyb247xI1ham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0RhdHVtIHBhZGFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXR1bSBuYXJhJnNjYXJvbjvEjWFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXAgZG9nb2RrYSBwYWRham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXAgZG9nb2RrYSBuYXJhJnNjYXJvbjvEjWFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdJUCBuYXNsb3YgcGFkYWpvxI1lJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSVAgbmFzbG92IG5hcmEmc2Nhcm9uO8SNYWpvxI1lJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOZSBuYWpkZW0gemdvZG92aW5lJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUG9uYXN0YXZpJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBpcmFqIHBvIElQIG5hc2xvdnUnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0ZXIgcG8gdGlwdSBkb2dvZGthJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ByaWthxb5pIHNhbW8gZG9nb2RrZSwga2kgc28gbWFuaiBrb3Q6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdPbWVqaXRldiBzdHJhbmknOwokbGFuZ1snZm9yJ10gPSAnemEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdQb3JvxI1pbG8gbyB6Z29kb3ZpbmkgdXBvcmFibmlrYSc7CiRsYW5nWyd1bmtub3duJ10gPSAnTmV6bmFubyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgbmFzbG92JzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUaXAgZG9nb2RrYSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdOYXphaic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnVXZveiBrb27EjWFuJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ09iZGVsYW5paCB2cnN0aWMnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1phem5hbmloIG5hcGFrJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdaYXBpc292IGRvZGFuaWgnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ05lIG5hamRlbSBuYXN0YXZpdGV2IHphIHNrdXBpbm8gJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdOZSBtb3JlbSBkb2JpdGkgb2Rnb3ZvcmEgcyBTTVRQIHN0cmXFvm5pa2EnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnSXpicmFuYSBkYXRvdGVrYSAoJXMpIG5lIG9ic3RhamEnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ05hcGHEjW5hIHZyZWRub3N0IHphIGl6YmlybyAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ1BvbGplICVzIHByZXNlZ2EgbmFqdmXEjWpvIGRvdm9samVubyBkb2zFvmlubyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ05hcGFrYSBwcmkgdXZvenUgKHZyc3RpY2EgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnTmUgbW9yZW0gZG9iaXRpIHZyZWRub3N0aSBuYXN0YXZpdHZlIChpbnRlcm5hIG5hcGFrYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnVGXFvmF2ZSBwcmkgbmFzdGF2bGphbmp1IHVwb3JhYm5pa292aWggbmFzdGF2aXRldic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnTmUgbmFqZGVtIHN0b2xwY2EgemEgb2J2ZXpubyBwb2xqZSAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05lIG5hamRlbSBuYXN0YXZpdGV2IGl6YnJhbmUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGF0b3Rla2EgemEgdXZveiBuaSB2IHByYXZpbG5lbSB6YXBpc3UnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05lIG1vcmVtIG9kcHJldGkgZGF0b3Rla2UnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnVXZvemkgdXBvcmFibmlrZSB2IHRvIHNrdXBpbm8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmhvZG5hIENTViBkYXRvdGVrYSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ1Zob2RuYSBYTUwgZGF0b3Rla2EnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnSXp2b3ppIHVwb3JhYm5pa2UnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnVXZvemkgdXBvcmFibmlrZSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdJemJyaSZzY2Fyb247aSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1BvdCB6YSBzaHJhbmpldmFuamUgc2xpayc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ05pc3RlIGl6YnJhbGkgZGF0b3Rla2UgemEgcHJlbm9zIChvYnZlem5vKSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnTmUgbW9yZW0gcHJlYnJhdGkgcG9kYW5lIFhNTCBkYXRvdGVrZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTmUgbW9yZW0gaXpicmlzYXRpIHNrdXBpbm8sIGtpIHZzZWJ1amUgdXBvcmFibmlrZSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVGEgdXBvcmFibmlrIGplIMW+ZSBwcmlqYXZsamVuJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0Jlc2VkaWxvIHMgc2xpa2Ugc3RlIHByZXBpc2FsaSBuYXBhxI1ubyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnRG92b2xpIHVwb3JhYm5pa29tIHZlxI1rcmF0bm8gcHJpamF2byc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnS2F0ZXJlIGtvbsSNbmljZSBzbGlrb3ZuaWggZGF0b3RlayBsYWhrbyB1cG9yYWJuaWtpIG5hbG/Fvmlqbyc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIHNrdXBpbmEnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBWIHRlaCBwb2xqaWggbGFoa28gdXBvcmFiaXRlIG5hc2xlZG5qZSBtYWtyZTogeyR1c2VybmFtZX0seyRncm91cH0uIEtvIHVwb3JhYmxqYXRlIG1ha3JvIHskZ3JvdXB9IGJvIHNpc3RlbSB6YW1lbmphbCBpbWUgc2t1cGluZSBwcnZlZ2EgxI1sYW5hIGluIHByZXVzbWVyaWwgbmEgdG8gc3RyYW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdVcmVkaXRlIHRvIHBvbGplLCDEjWUgxb5lbGl0ZSBzcHJlbWVuaXRpIGdlc2xvIHVwb3JhYm5pa2EnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1VyZWRpdGUgdG8gcG9samUsIMSNZSDFvmVsaXRlIHNwcmVtZW5pdGkgZ2VzbG8gdXBvcmFibmlrYSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVcG9yYWJuaWsgcyB0ZW0gdXBvcmFibmkmc2Nhcm9uO2tpbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTmkgcmV6dWx0YXRvdiBpeiBDU1YgaXp2b3phJzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0RvbMW+aW5hIHVwb3JhYm5pJnNjYXJvbjtrZWdhIGltZW5hJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0RvbMW+aW5hIGdlc2xhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IGRvbMW+aW5pIGdlc2xhIHN0YSBuYXBhxI1uaSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCBkb2zFvmluaSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSBzdGEgbmFwYcSNbmknOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ05hcGHEjWVuIEUtbWFpbCBuYXNsb3YnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdFLXBvJnNjYXJvbjt0bmkgbmFzbG92IHphIHRhIHJhxI11biBuaSBiaWwgbmFqZGVuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdUZcW+YXZlIHByaSBuYXN0YXZsamFuanUgdXBvcmFibmlrb3ZpaCBpbmZvcm1hY2lqJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Rlxb5hdmEgcHJpIGRvZGVsamV2YW5qdSBuYXN0YXZpdHZlJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVcG9yYWJuaWsgZG9kYW4gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVcG9yYWJuaWsgaXpicmlzYW4gdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnTmFzdGF2aXRldic7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVnJlZG5vc3QgKHJlZ3VsYXJuaSBpenJheiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdQb3pvcjogdGEgcG9samEgaW1ham8gdnBsaXYgbmEgdmVsaWtvc3QgcG9saiB6YSBvYnJhemNlLiBabWFuaiZzY2Fyb247ZXZhbmplIHRlZ2EgJnNjYXJvbjt0ZXZpbGEgbmEgb2JzdG9qZcSNaSBzdHJhbmkgbmkgcHJpcG9yb8SNbGppdmEuJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdTdGUgcHJlcHJpxI1hbmksIGRhIMW+ZWxpdGUgbmFzdGF2aXRpIG1vxb5ub3N0aSBtb2R1bGE/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWwgbmFzbG92IGplIMW+ZSB2IHVwb3JhYmknOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXBvcmFiaSBwaSZzY2Fyb247a290a2UgemEgc2hyYW5pdGV2IHByaWphdmUnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdJbWUgcGkmc2Nhcm9uO2tvdGthJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnRG92b2xpIHBvZHZvamVuZSBFLW1haWwgbmFzbG92ZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFLW1haWwgbmFzbG92IGplIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnUG9pemt1c2kgb2hyYW5pdGkgcHJpamF2bGplbmUgdXBvcmFibmlrZSB6IHVwb3JhYm8gcGkmc2Nhcm9uO2tvdGtvdiA8ZW0+KHBpJnNjYXJvbjtrb3RlayBqZSBwb25hc3RhdmxqZW4gb2IgYWt0aXZub3N0aSBuYSBzdHJhbmkpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGRvdm9saSB2ZcSNIHVwb3JhYm5pa292IHogaXN0aW0gRS1wbyZzY2Fyb247dG5pbSBuYXNsb3ZvbSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1cG9yYWJuaWtvdiBFLXBvJnNjYXJvbjt0bmkgbmFzbG92IGplIG5qZWdvdm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSAtLSB0ZSBtb8W+bm9zdGkgbmUgbmFzdGF2aXRlIGhrcmF0aSB6IG1vxb5ub3N0am8gJnF1b3Q7RG92b2xpIHBvZHZvamVuZSBFX21haWwgbmFzbG92ZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnRG92b2xpIHBvZHZvamVuZSAmcXVvdDtwb3phYmxqZW5vIGdlc2xvJnF1b3Q7IG9wb21uaWtlPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoZG92b2xpIHVwb3JhYm5pa29tIG9kZGFqbyB6YWh0ZXZrYSB6YSBwb3Zybml0ZXYgZ2VzbGEsIMSNZXByYXYgc2UgbmlzbyBvZHp2YWxpIG5hIHByZWomc2Nhcm9uO25qaSB6YWh0ZXZlayknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVcG9yYWJpIHNwZWNpZmnEjW5lIHByYXZpY2UgemEgZnJvbnQtZW5kIHVwb3JhYm5pa2U/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhQb25hdmFkaSBzbyBwcmF2aWNlIGZyb250LWVuZCB1cG9yYWJuaWtvdiBlbmFrZSB0aXN0aW0gdiBhZG1pbmlzdHJhY2lqaSwga290IG5wci4gZG9kYWogdXBvcmFibmlrYSwgZG9kYWogc2t1cGlubyBpdGQuIMSMZSBpemJlcmV0ZSB0byBtb8W+bm9zdCwgYm9zdGUgbGFoa28gaXpiaXJhbGkgbG/EjWVuZSBwcmF2aWNlIHphIGZyb250LWVuZCB1cG9yYWJuaWtlKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnTmUgbmFqZGVtIG5hbG/FvmVuZSBkYXRvdGVrZSAoaW50ZXJuYSBuYXBha2EpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnUHJpJnNjYXJvbjtsbyBqZSBkbyBuYXBha2UgcHJpIG5hbGFnYW5qdSBkYXRvdGVrZS4gUHJvc2ltbyBwb2l6a3VzaXRlIHBvbm92bm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTmlzdGUgdnBpc2FsaSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOaXN0ZSB2cGlzYWxpIEUtbWFpbCBuYXNsb3ZhJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ05pc3RlIHZwaXNhbGkgZ2VzbGEnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ09kamF2YSBmcm9udGVuZCB1cG9yYWJuaWthJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ1ByaWphdmEgZnJvbnRlbmQgdXBvcmFibmlrYSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RhIGZ1bmtjaWphIG5lIGRlbHVqZSBuYSBXaW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOZSB1c3R2YXJqYWp0ZSBtb8W+bm9zdGkgemEgdXBvcmFibmkmc2Nhcm9uO2tvIGltZSBhbGkgZ2VzbG8sIHNhaiBzbyBsZS10ZSDFvmUgdmtsanXEjWVuZSB2IHNhbSBtb2R1bCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnSXp2b3ppIHVwb3JhYm5pa2UgdiBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnSXp2b3onOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnVXZveic7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnVXJlZGkgbW/Fvm5vc3QnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTmFqdmXEjWphIGRvbMW+aW5hJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdVc3R2YXJqZW5vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1JhenZyc3RpIHBvJzsKJGxhbmdbJ3NvcnQnXSA9ICdSYXp2ciZzY2Fyb247xI1hbmplJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1Vwb3JhYm5pa2kgdiBpemJyYW5paCBza3VwaW5haCc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdPbWVqaSByZXp1bHRhdGUgbmEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmUgbmFqZGVtIEUtbWFpbCBwb2xqYSB6YSB0ZWdhIHVwb3JhYm5pa2EuIFByb3NpbW8sIG9idmVzdGl0ZSBhZG1pbmlzdHJhdG9yamEuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSUQgc3RyYW5pL0FsaWFzIHphIG9icmF6ZWMgemEgcG96YWJsamVubyBnZXNsbyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEIHN0cmFuaS9BbGlhcyB6YSBvYnJhemVjIHphIHNwcmVtZW1ibyBuYXN0YXZpdGV2JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnSUQgc3RyYW5pL0FsaWFzIHphIG9icmF6ZWMgemEgcHJldXNtZXJpdGV2IHBvIHByaWphdmkgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdJRCBzdHJhbmkvQWxpYXMgemEgb2JyYXplYyB6YSBwcmV1c21lcml0ZXYgcG8gb2RqYXZpIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU21lciByYXp2ciZzY2Fyb247xI1hbmphJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ05la2F0ZXJpIHVwb3JhYm5pa2kgc28gdiBwb3N0b3BrdSByZXNldGlyYW5qYSBwb3phYmxqZW5lZ2EgZ2VzbGEuIFRyZW51dG5vICZzY2Fyb247dGV2aWxvIHRlaCB1cG9yYWJuaWtvdjonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdJemJyaSZzY2Fyb247aSB2c2Ugdm5vc2UsIHN0YXJlaiZzY2Fyb247ZSBvZCBlbmVnYSB0ZWRuYSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdJemJyaSZzY2Fyb247aSB2c2Ugdm5vc2UsIHN0YXJlaiZzY2Fyb247ZSBvZCBlbmVnYSBtZXNlY2EnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnSXpicmkmc2Nhcm9uO2kgdnNlIHZub3NlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTdGUgcHJlcHJpxI1hbmk/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVnBpc2FsaSBzdGUgbmFwYcSNbm8ga29kby4gUHJvc2ltbywgcG9pemt1c2l0ZSBwb25vdm5vJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdaYcSNYXNuYSBrb2RhIHphIHZhJnNjYXJvbjsgdXBvcmFibmkmc2Nhcm9uO2tpIHJhxI11biBuZSBvYnN0YWphIHYgYmF6aSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHByaWtheiBvYnJhemNhIHphIHByZXZlcmphbmplJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBwb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdNb3JkYSBzdGUgdmkgYWxpIGtkbyBkcnVnIMW+ZSB6YWh0ZXZhbGkgcmVzZXRpcmFuamUgZ2VzbGEgemEgdGEgcmHEjXVuLiBQcm9zaW1vLCBwcmV2ZXJpdGUgdmEmc2Nhcm9uOyBFLXBvJnNjYXJvbjt0bmkgcHJlZGFsLCBramVyIHZhcyDEjWFrYWpvIG5hdm9kaWxhIHphIHJlc2V0aXJhbmplIGdlc2xhLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnTmFwYWthIG5hIGJhemknOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVG8gc3Bvcm/EjWlsbyBzdGUgcHJlamVsaSwgc2FqIHN0ZSBwb2RhbGkgemFodGV2ZWsgemEgcG96YWJsamVubyBnZXNsby4gxIxlIHN0ZSBnZXNsbyB6YXJlcyBwb3phYmlsaSwgc2xlZGl0ZSBuYXZvZGlsb20gdiBuYWRhbGpldmFuanUuIFYga29saWtvciBtZW5pdGUsIGRhIHN0ZSB0byBzcG9yb8SNaWxvIHByZWplbGkgcG8gcG9tb3RpLCBnYSBsYWhrbyBicmV6IHNrcmJpIGl6YnJpJnNjYXJvbjtldGUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29kYSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOYXNsZWRuamEga29kYSBqZSBiaWxhIGF2dG9tYXRpxI1ubyBnZW5lcmlyYW5hIHphIHByZXZlcmphbmplIHVwb3JhYm5pa292ZWdhIHJhxI11bmEuIEtvIGtsaWtuZXRlIG5hIHNwb2Ruam8gcG92ZXphdm8gYm9zdGUgcHJpJnNjYXJvbjtsaSBuYSBzdHJhbiBzIHBvbGplbSB6YSB2bm9zIHRlIGtvZGUuIFRvIHBvbGplIGJvIMW+ZSB2bmFwcmVqIGl6cG9sbmplbm8sIHYga29saWtvciBuaSwgdmFuaiB2cGkmc2Nhcm9uO2l0ZSBuYXNsZWRuam8ga29kbzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdTIGtsaWtvbSBuYSBzcG9kbmpvIHBvdmV6YXZvIGJvc3RlIHByaSZzY2Fyb247bGkgbmEgc3BsZXRubyBzdHJhbiwga2plciB2cGkmc2Nhcm9uO2l0ZSB6Z29ybmpvIGtvZG8gaW4gcmVzZXRpcmFqdGUgdmEmc2Nhcm9uO2UgZ2VzbG86JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdQb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTmUgbmFqZGVtIG1vZHVsYSBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRS1tYWlsIGplIGJpbCBwb3NsYW4gbmEgbmFzbG92ICVzIHogbmF2b2RpbGkgemEgcG9uYXN0YXZpdGV2IHZhJnNjYXJvbjtlZ2EgZ2VzbGEuIFByb3NpbW8sIHByZXZlcml0ZSB2YSZzY2Fyb247IHBvJnNjYXJvbjt0bmkgcHJlZGFsLic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1Yga29saWtvciBzdGUgcG96YWJpbGkgZ2VzbG8sIHZwaSZzY2Fyb247aXRlIHZhJnNjYXJvbjtlIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgaW4gcG9zbGFsaSB2YW0gYm9tbyBFLW1haWwgeiBuYXZvZGlsaSB6YSBwcmlkb2JpdGV2IG5vdmVnYSBnZXNsYS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdQcmVkbG9nZSB6YSBwb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ1ByZWRsb2dlIHphIHBvemFibGplbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdNb8W+bm9zdCAlcyBuaSBuYWpkZW5hJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdNb8W+bm9zdGkgbmFqZGVuZSc7CiRsYW5nWydhZGRwcm9wJ10gPSAnRG9kYWogbW/Fvm5vc3QnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ09idmV6bm8gcG9samUgKCVzKSBqZSBiaWxvIHByYXpubyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1ZwaSZzY2Fyb247aXRlIG5vdm8gZ2VzbG8gemEgc3ByZW1lbWJvIGdlc2xhJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnTmlzdGUgcHJpamF2bGplbmkgdiBzaXN0ZW0nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ05hc3Rhdml0dmUnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYWNpamEnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdUYSByYcSNdW4gamUgcG90ZWtlbCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnTmVwcmF2aWxlbiBFLW1haWwgbmFzbG92JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnTmFwYcSNZW4gZGF0dW0gcG90ZWthJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdOYXBha2EgcHJpIG5hc3RhdmxqYW5qdSBtb8W+bm9zdGkgJXMgemEgdXBvcmFibmlrYSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05hcGHEjWVuIElEIHNrdXBpbmUgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdPem5hxI1ldmFsZWMgc2tyaXRlZ2EgcG9samEnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0JhcnZhIHNrcml0ZWdhIHBvbGphJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1Nrcml0byc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnTW/Fvm5vc3QgcyB0ZW0gaW1lbm9tIGplIMW+ZSBkZWZpbmlyYW5hJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05pIGRlZmluaXJhbmloIG1vxb5ub3N0aSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vYmVuYSBtb8W+bm9zdCBuaSBiaWxhIGl6YnJhbmEgemEgdG8gc2t1cGlubyc7CiRsYW5nWydub2dyb3VwcyddID0gJ05vYmVuYSBza3VwaW5hIG5pIGRlZmluaXJhbmEnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdOYWpkZW5lIHNrdXBpbmUnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ09idmV6bm8gamUgxI1sYW5zdHZvIHYgdnNhaiBlbmkgc2t1cGluaSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnWmFodGV2YWogxI1sYW5zdHZvIHYgdnNhaiBlbmkgc2t1cGluaSc7CiRsYW5nWydiYWNrJ10gPSAnTmF6YWonOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGplIG9idmV6bm8gcG9samUnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ096bmHEjWkgb2J2ZXpuYSBwb2xqYSB6JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ01hcmtpcmFqIG9idmV6bmEgcG9samEgeic7CiRsYW5nWyduZXh0J10gPSAnTmFwcmVqJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2t1cGluYSBzIHRlbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYnZlem5vJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnTmVvYnZlem5vJzsKJGxhbmdbJ29mZiddID0gJ0l6a2xvcGxqZW5vJzsKJGxhbmdbJ3NpemUnXSA9ICdWZWxpa29zdCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE5hanZlxI1qYSB2ZWxpa29zdCBuYWpkYWxqJnNjYXJvbjtlIHN0cmFuaWNlIHNsaWtlIHYgcGl4bGloKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdEb2zFvmluYSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPih6bmFrb3YgdiB0ZWtzdG92bmVtIHBvbGp1KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTW/Fvm5vc3RpIGl6dmxlxI1uZWdhIG1lbmlqYSwgbG/EjWVuZSB6IG5vdmltaSB2cnN0aWNhbWkuIFZyZWRub3N0aSBzbyBsYWhrbyBsb8SNZW5lIG9kIGJlc2VkaWxhIHogem5ha29tID07IG5wcjogTW8mc2Nhcm9uO2tpPW0nOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnVm5vcyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcCc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnU3RhdHVzIHBvbGphJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1ZwcmEmc2Nhcm9uO2FqIHYgcG96YWJsamVuZW08YnIvPnVwb3JhYm5pJnNjYXJvbjtrZW0gaW1lbnUnOwokbGFuZ1sndGV4dCddID0gJ0Jlc2VkaWxvICh0ZXh0KSc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnU2V6bmFtIHogdmXEjWtyYXRubyBpemJpcm8gKG11bHRpc2VsZWN0KSc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnU2xpa2EnOwokbGFuZ1snZW1haWwnXSA9ICdFLW1haWwgbmFzbG92JzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnQmVzZWRpbG8gKHRleHRhcmVhKSc7CiRsYW5nWydkcm9wZG93biddID0gJ0l6dmxlxI1uaSBtZW5pJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnRG9icm9kbyZzY2Fyb247bGknOwokbGFuZ1snbG9nb3V0J10gPSAnT2RqYXZhJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVcG9yYWJpIHRvIGltZSBza3VwaW5lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1NwcmVtZW1iYSBtb2ppaCBuYXN0YXZpdGV2JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnUHJpamF2YSBuaSB1c3BlJnNjYXJvbjtuYSAtIHN0ZSBwb3phYmlsaSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGFsaSBnZXNsbz8nOwokbGFuZ1snbG9naW4nXSA9ICdQcmlqYXZhJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTmFwaXMgbmEgZ3VtYnUgemEgcHJpamF2byc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVcG9yYWJuaSZzY2Fyb247a28gaW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbCBuYXNsb3YnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnR2VzbG8nOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdaYXBvbW5pIHNpIG1lJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmFjaWphJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnU3RlIHBvemFiaWxpIGdlc2xvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdTdGUgcG96YWJpbGkgdXBvcmFibmkmc2Nhcm9uO2tvIGltZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQcml2emV0byc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1ByZWRsb2dhJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ05lIG5hamRlbSBpbmZvcm1hY2lqIG8gdGVtIHVwb3JhYm5pa3UnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RvIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgKCVzKSBqZSDFvmUgdiB1cG9yYWJpJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVcG9yYWJpIFNNVFAgemEgcHJldmVyamFuamUgRS1tYWlsIG5hc2xvdm92Pyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdOYWptYW5qJnNjYXJvbjthIGRvbMW+aW5hIGdlc2xhJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ05hanZlxI1qYSBkb2zFvmluYSBnZXNsYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdOYWptYW5qJnNjYXJvbjthIGRvbMW+aW5hIHVwb3JhYm5pJnNjYXJvbjtrZWdhIGltZW5hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ05hanZlxI1qYSBkb2zFvmluYSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdJenRlayBzZWplIHYgc2VrdW5kYWggKHRpbWVvdXQpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVcG9yYWJpIHBpJnNjYXJvbjtrb3RrZSB6YSBzaHJhbmpldmFuamUgcHJpamF2JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnRG92b2xpIHJlZ2lzdHJhY2lqbyBwcmVrIEUtbWFpbGEnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1ByaXZ6ZXRhIHNrdXBpbmEgemEgbm92ZSB1cG9yYWJuaWtlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU3ByZW1lbmkgcHJlZGxvZ28geiBuYXN0YXZpdHZhbWknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0dlc2xpIHNlIG5lIHVqZW1hdGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTmFwYcSNbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOYXBhxI1ubyBnZXNsbyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1VyZWRpIHVwb3JhYm5pa2EnOwokbGFuZ1sndmFsaWQnXSA9ICdWZWxqYXZlbic7CiRsYW5nWyd1c2VybmFtZSddID0gJ1Vwb3JhYm5pJnNjYXJvbjtrbyBpbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RhIHVwb3JhYm5payBuaSDEjWxhbiBub2JlbmUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTmkgbW/Fvm5vc3RpJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnUG9pemt1cyB1dm96YSBwb2R2b2plbmloIG1vxb5ub3N0aSc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZyZWRub3N0JzsKJGxhbmdbJ2dyb3VwcyddID0gJ1NrdXBpbmUnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ01vxb5ub3N0aSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ0ltZSBtb8W+bm9zdGknOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnVnJlZG5vc3QgbW/Fvm5vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ0RvZGFqJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdaZ29kb3ZpbmEnOwokbGFuZ1snZWRpdCddID0gJ1VyZWRpJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdQb3RlxI1lJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0RvbG/EjWl0ZXYgZGF0dW1hJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCB1cic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB0ZWRlbic7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHRlZG5hJzsKJGxhbmdbJzFtb250aCddID0gJzEgbWVzZWMnOwokbGFuZ1snM21vbnRocyddID0gJzMgbWVzZWNlJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1lc2VjZXYnOwokbGFuZ1snMXllYXInXSA9ICcxIGxldG8nOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtvbGknOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ0dlc2xvJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUG9ub3Zubyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnU2t1cGluYSBzIHRlbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnVXJlamFuamUgc2t1cGluZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdQbyZzY2Fyb247bGppJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1ByZWtsacSNaSc7CiRsYW5nWydkZWxldGUnXSA9ICdJemJyaSZzY2Fyb247aSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ1N0ZSBwcmVwcmnEjWFuaSwgZGEgc28gdG8gcHJhdmlsbmUgbmFzdGF2aXR2ZSB6YSB0byBza3VwaW5vP1xuxIxlIG9uZW1vZ2/EjWl0ZSBtb8W+bm9zdCBuZSBib2RvIGl6YnJpc2FuaSBub2JlbmkgemFwaXNpIHYgdGFiZWxpIHphIHRvIHNrdXBpbm8vdXBvcmFibmlrYSwgYW1wYWsgc2FtbyBuZSBib2RvIG5hIHZvbGpvLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnU3RlIHByZXByacSNYW5pLCBkYSDFvmVsaXRlIGl6YnJpc2F0aSB0byBza3VwaW5vPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnU3RlIHByZXByacSNYW5pLCBkYSDFvmVsaXRlIGl6YnJpc2F0aSB0byBtb8W+bm9zdD9cbsSMZSBqbyBpemJyaSZzY2Fyb247ZXRlLCBib2RvIGl6YnJpc2FuZSB0dWRpIHZzZSB2cmVkbm9zdGkgdXBvcmFibmlrb3YgemEgdG8gbW/Fvm5vc3QuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lemFkb3N0bmkgcGFyYW1ldHJpJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ0ltZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ05hcGFrYSBwcmkgZG9kYWphbmp1IG1vxb5ub3N0aSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnTmFwYWthIHByaSBkb2RhamFuanUgcmVsYWNpamUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdOYXBha2EgcHJpIGRvZGFqYW5qdSBza3VwaW5lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnTmFwYWthIHByaSBkb2RhamFuanUgdXBvcmFibmlrYSBza3VwaW5pJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdOYXBha2EgcHJpIGl6YnJpc3UgbW/Fvm5vc3RpJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTmUgbmFqZGVtIEUtbWFpbCBuYXNsb3ZhJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdOaSBwcmF2aWMgemEgcGlzYW5qZSB2IHRvIG1hcG8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ05hcGHEjW5pIHBhcmFtZXRyaSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ05lIG5hamRlbSBub2JlbmloIHNrdXBpbic7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1Vwb3JhYmknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGFybmkgaXpyYXogemEgdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ09waXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnSW1lIHNrdXBpbmUnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnRG9zdG9wIHphdnJuamVuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnTmFwYWthJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnRG9kYWogc2t1cGlubyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ1V2b3ppIHNrdXBpbm8nOwokbGFuZ1snYWRkdXNlciddID0gJ0RvZGFqIHVwb3JhYm5pa2EnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ05hamRlbmkgdXBvcmFibmlraSwga2kgdXN0cmV6YWpvIGtyaXRlcmlqdSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdJemJlcml0ZSBza3VwaW5vJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHJlZ2lzdHJhY2lqbyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBvZGphdm8nOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBwcmlqYXZvJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnTmFzdGF2aXR2ZSc7CiRsYW5nWyd1c2VycyddID0gJ1Vwb3JhYm5pa2knOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnVXByYXZpdGVsaiB1cG9yYWJuaWtvdi/EjWxhbm92JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRG92b2xpIHByaWphdm8gdXBvcmFibmlrb3YgcHJla28gc3BsZXRuZSBzdHJhbmknOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1ByaXZ6ZXRhIHZzdG9wbmEgc3RyYW4nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1phZG5qYSBkb3N0b3BhbmEgc3RyYW4nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnRHJ1Z2Egc3RyYW46ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVnBpJnNjYXJvbjtpdGUgYmVzZWRpbG8gcyBzbGlrZSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGV0IGFuZ2l2bmEgdiZhdW1sO3JkZXQgZiZvdW1sO3IgJSBzIGFudiZhdW1sO25kcyByZWRhbiBhdiBlbiBhbm5hbiBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlrJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RldCBhbmdpdm5hIHYmYXVtbDtyZGV0IGYmb3VtbDtyICUgcyAoJSBzKSAmYXVtbDtyIGludGUgdW5pa3QnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJyZBcmluZzt0ZXJzdCZhdW1sO2xsIFNlc3Npb25zbWFsbCc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEZXR0YSAmYXVtbDtyIGYmYXVtbDtsdG5hbW5ldCwgc29tIHNrYSBhbnYmYXVtbDtuZGFzIGYmb3VtbDtyIGF0dCB0YSBpdHUgbWVkIFNtYXJ0eS4gRGV0IHNrYWxsIGJlc3QmYXJpbmc7IGF2IGVuZGFzdCBhbGZhbnVtZXJpc2thIHRlY2tlbiBvY2ggdW5kZXJzdHJlY2suJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ0JlcyZvdW1sO2thcmUnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdWJmF1bWw7bGogZW4gZWxsZXIgZmxlcmEgRkVVIGdydXBwZXIgc29tIGhhciB0aWxsZyZhcmluZztuZyB0aWxsIGRlbm5hIHNpZGEnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0R1IG0mYXJpbmc7c3RlIHYmYXVtbDtsamEgZW4gZ3J1cHAnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhdW1sO2xqIGVuJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCAmYXJpbmc7cic7CiRsYW5nWydlbmRfeWVhciddID0gJ1NsdXQgJmFyaW5nO3InOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ1N0b3JsZWsgZiZvdW1sO3IgdHVtbmFnZWxiaWxkJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkICc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdGJm91bWw7ciBtJmFyaW5nO25nYSBhbnYmYXVtbDtuZGFyZSAmYXVtbDtyIHZhbGRhIGYmb3VtbDtyIGJ1bGsgdmVya3NhbWhldCAuLi4uIFNrdWxsZSBkdSBrdW5uYSB0cmltbWEgZGVuIHRpbGwgMjUwIGVsbGVyIG1pbmRyZSc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCByYWRlcmEgZGVuIHZhbGRhIGFudiZhdW1sO25kYXJlbj8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnUmFkZXJhIG1hcmtlcmFkZSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmVyYSBzbHVtcG0mYXVtbDtzc2lndCBhbnYmYXVtbDtuZGFybmFtbiB2aWQgYWRkZXJpbmcgYXYgbnkgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snbW9udGhzJ10gPSAnbSZhcmluZztuYWRlcic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnR3J1bmRhbnYmYXVtbDtuZGFyZW5zIHV0ZyZhcmluZztuZ3N0aWQnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZlcmluZ3NpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdFZ2Vuc2thcHNpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdPbWRpcmlnZXJpbmdzIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsbSZhdW1sO25uYSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gb2NoIENvb2tpZSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGJmF1bWw7bHQgaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ0dsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4gZmxhZ2dhbiBrYW4gYmFyYSBhbnYmYXVtbDtuZGFzIHAmYXJpbmc7IG9ibGlnYXRvcmlza2EgZiZhdW1sO2x0JzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZG5pbmcgYXYgd3lzaXd5ZyBwJmFyaW5nOyBkZXR0YSB0ZXh0b21yJmFyaW5nO2RldCc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3Rpc2U6IDwvc3Ryb25nPiBEZXR0YSBhbnYmYXVtbDtuZGVyIG1jcnlwdCBmdW5rdGlvbmVyIGYmb3VtbDtyIGtyeXB0ZXJpbmcsIG9jaCBkZSBrdW5kZSBpbnRlIHVwcHQmYXVtbDtja2FzIHAmYXJpbmc7IGRpbiBpbnN0YWxsYXRpb24uIEtvbnRha3RhIGRpbiBzZXJ2ZXIgYWRtaW5pc3RyYXQmb3VtbDtyLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdSZWRpZ2VyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydub2lubGluZSddID0gJ0FudiZhdW1sO25kIGludGUgZm9ybXVsJmF1bWw7ciBzb20gaW5saW5lJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnR2wmb3VtbDttdCBkaW5hIGFudiZhdW1sO25kYXJ1cHBnaWZ0ZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0dsJm91bWw7bXQgZGl0dCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2xpY2thIGgmYXVtbDtyIGYmb3VtbDtyIGF0dCBsb2dnYSB1dCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpY2thIGgmYXVtbDtyIGYmb3VtbDtyIGF0dCAmYXVtbDtuZHJhIGRpdHQgbCZvdW1sO3Nlbm9yZCBlbGxlciBhbm5hbiBpbmZvcm1hdGlvbic7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Zpc2EgYW52JmF1bWw7bmRhcm1hbGwnOwokbGFuZ1snZXZlbnQnXSA9ICdIJmF1bWw7bmRlbHNlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgSCZhdW1sO25kZWxzZW5vdGlmaWVyaW5nJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0Vwb3N0YWRyZXNzIGYmb3VtbDtyIG5vdGlmaWVyaW5nJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIG5vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICcmQXVtbDttbmVzcmFkIGYmb3VtbDtyIG5vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydPbkxvZ2luJ10gPSAnVmlkIGlubG9nZ25pbmcnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdWaWQgdXRsb2dnbmluZyc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdWaWQgdXRsJm91bWw7cHQgc2Vzc2lvbic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdWaWQgc2thcGFuZGUgYXYgbnkgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnVmlkIGJvcnR0YWdhbmRlIGF2IGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ1ZpZCAmYXVtbDtuZHJhZGUgYW52JmF1bWw7bmRhcmluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnVmlkIHNrYXBhbmRlIGF2IGFudiZhdW1sO25kYXJncnVwcCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnVmlkIGJvcnR0YWdhbmRlIGF2IGFudiZhdW1sO25kYXJncnVwcCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1ZpIGhhciBmdW5uaXQgZXR0IHVuaWt0IGFudiZhdW1sO25kYXJuYW1uIHNvbSBtYXRjaGFyIGRlIHVwcGdpZnRlciBkdSBsJmF1bWw7bW5hdC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0RpdHQgYW52JmF1bWw7bmRhcm5hbW4gJmF1bWw7cic7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdWaSByZWtvbW1lbmRlcmFyIGF0dCBkdSBzcGFyYXIgZGVubmEgaW5mb3JtYXRpb24gcCZhcmluZzsgZW4gcyZhdW1sO2tlciBwbGF0cy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyBhdHQgZyZhcmluZzsgdGlsbCBlZnRlciAmYXVtbDtuZHJhZGUgaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyBhdHQgZyZhcmluZzsgdGlsbCBlZnRlciB2ZXJpZmllcmluZyBhdiBrb2QgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3IgdXBwZ2lmdGVyIG9tIGdsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIGJla3ImYXVtbDtmdGVsc2UgdmlkIGdsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGZWw6IE1lciAmYXVtbDtuIGVuIGFudiZhdW1sO25kYXJlIHN0JmF1bWw7bWRlICZvdW1sO3ZlcmVucyBtZWQgZGUgZWdlbnNrYXBlciBzb20gYW5nYXZzJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZlbDogS3VuZGUgaW50ZSBoaXR0YSBlbiBhbnYmYXVtbDtuZGFyZSBzb20gc3QmYXVtbDttZGUgJm91bWw7dmVyZW5zIG1lZCBzJm91bWw7a2tyaXRlcmllcm5hJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdGZWw6IEt1bmRlIGludGUgaGl0dGEgZW4gZ3J1cHAgbWVkIGRldCBuYW1uZXQnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdFbmJhcnQgbCZhdW1sO3NyJmF1bWw7dHRpZ2hldGVyJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLbGFzcyBmJm91bWw7ciBhbnYmYXVtbDtuZGFyaGFudGVyaW5nIChVc2VyIE1hbmlwdWxhdG9yIENsYXNzKSc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdVdGxvZ2dhZCBhdiBhZG1pbmlzdHJhdCZvdW1sO3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1Zpc2EgZW5iYXJ0IGlubG9nZ2FkZSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nZ2EgdXQgZGVuIGgmYXVtbDtyIGFudiZhdW1sO25kYXJlbic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdBbnYmYXVtbDtuZGFyZWdlbnNrYXBlcic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0FudiZhdW1sO25kYXJoaXN0b3Jpayc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRlcmEnOwokbGFuZ1snY2xlYXInXSA9ICdSZW5zYSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRlcmEgYW52JmF1bWw7bmRhcmhpc3RvcmlrIHRpbGwgQVNDSUkgc29tICZhdW1sO3IgbWluc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdSZW5zYSBhbnYmYXVtbDtuZGFyaGlzdG9yaWsgc29tICZhdW1sO3IgbWluc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnU3VwcG9ydGZvcm11bCZhdW1sO3IgZiZvdW1sO3IgZiZvdW1sO3Jsb3JhdCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRlcmEgZ3J1cHBkZWZpbml0aW9uIChvY2ggZWdlbnNrYXBlcikgdGlsbCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1VuZGVyaCZhcmluZztsbCBhbnYmYXVtbDtuZGFyaGlzdG9yaWsnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWonOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnQXYnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogSW5nZW4gYmVnciZhdW1sO25zbmluZyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFbiB0aW1tZSBnYW1tYWwnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2V4IHRpbW1hciBnYW1tYWwnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVG9sdiB0aW1tYXIgZ2FtbWFsJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRW4gZGFnIGdhbW1hbCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdFbiB2ZWNrYSBnYW1tYWwnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1R2JmFyaW5nOyB2ZWNrb3IgZ2FtbWFsJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFbiBtJmFyaW5nO25hZCBnYW1tYWwnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZSBtJmFyaW5nO25hZGVyIGdhbW1hbCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NleCBtJmFyaW5nO25hZGVyIGdhbW1hbCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFdHQgJmFyaW5nO3IgZ2FtbWFsJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dydXBwZXJpbmcgb2NoIHNvcnRlcmluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnRiZhdW1sO2x0IHNvbSAmb3VtbDt2ZXJlbnNzdCZhdW1sO21tZXIgbWVkIGtyaXRlcmlldCc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0ZhbGxhbmRlIGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdTdGlnYW5kZSBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRmFsbGFuZGUgZGF0dW0nOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnU3RpZ2FuZGUgZGF0dW0nOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnRmFsbGFuZGUgaCZhdW1sO25kZWxzZXR5cCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1N0aWdhbmRlIGgmYXVtbDtuZGVsc2V0eXAnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRmFsbGFuZGUgSVAtYWRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3RpZ2FuZGUgSVAtYWRyZXNzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdJbmdlbiBoaXN0b3JpayBoaXR0YWRlcyc7CiRsYW5nWydyZXNldCddID0gJyZBcmluZzt0ZXJzdCZhdW1sO2xsJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBwZXJhIHAmYXJpbmc7IElQLWFkcmVzcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0gmYXVtbDtuZGVsc2V0eXBzZmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1Zpc2EgYmFyYSBoJmF1bWw7bmRlbHNlIHNvbSAmYXVtbDtyIG1pbmRyZSAmYXVtbDtuOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2lkZ3ImYXVtbDtucyc7CiRsYW5nWydmb3InXSA9ICdmJm91bWw7cic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1JhcHBvcnQgZiZvdW1sO3IgYW52JmF1bWw7bmRhcmhpc3RvcmlrJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdPayZhdW1sO25kJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1hZHJlc3MnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0gmYXVtbDtuZGVsc2V0eXAnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnJkFyaW5nO3RlcnYmYXVtbDtuZCc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0ZW4gc2x1dGYmb3VtbDtyZCc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdIYW50ZXJhZGUgcmFkZXInOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1AmYXJpbmc7dHImYXVtbDtmZmFkZSBmZWwnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1RpbGxhZ2RhIHJhZGVyJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGVnZW5zcGFlciBmJm91bWw7ciBncnVwcGVuICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnS3VuZGUgaW50ZSBmJmFyaW5nOyBuJmFyaW5nO2dvdCBzdmFyIGZyJmFyaW5nO24gU01UUC1zZXJ2ZXJuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGVuICglcykga3VuZGUgaW50ZSBoaXR0YXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ09naWx0aWd0IHYmYXVtbDtyZGUgZiZvdW1sO3IgZHJvcGRvd24gZWxsZXIgZmxlcnZhbHNmJmF1bWw7bHRldCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0YmYXVtbDtsdGV0ICVzICZvdW1sO3ZlcnN0aWdlciBtYWdsJmF1bWw7bmdkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0ZmVsIChyYWQgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnS3VuZGUgaW50ZSBoJmF1bWw7bXRhIGRlZmluaXRpb25lciBmJm91bWw7ciBlZ2Vuc2thcGVuIChpbnRlcm50IGZlbCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBtZWQgYXR0IHN0JmF1bWw7bGxhIGluIGFudiZhdW1sO25kYXJpbmZvcm1hdGlvbic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnS3VuZGUgaW50ZSBoaXR0YSBlbiBrb2x1bW4gZiZvdW1sO3IgZiZhdW1sO2x0ZXQgJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGVnZW5za2FwZXIgZiZvdW1sO3IgZGVuIGFuZ2l2bmEgZ3J1cHBlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGVuIGFuZ2l2bmEgaW1wb3J0ZmlsZW4gJmF1bWw7ciBpbnRlIGtvcnJla3QgZm9ybWF0dGVyYWQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0t1bmRlIGludGUgJm91bWw7cHBuYSBmaWwnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0ZXJhIGFudiZhdW1sO25kYXJlIHRpbGwgZGVubmEgZ3J1cHBlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdBbmdlIENTVi1maWwnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdBbmdlIFhNTC1maWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0ZXJhIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdSZW5zYSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1Mmb3VtbDtrdiZhdW1sO2cgZiZvdW1sO3IgYmlsZCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0V0dCBwcm9ibGVtIHVwcHN0b2QgbWVkIGVuIHNha25hZCAobWVuIGtyJmF1bWw7dmQpIHVwcGxhZGRuaW5nJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLdW5kZSBpbnRlIGhhbnRlcmEgZGVuIHRpbGxoYW5kYWgmYXJpbmc7bGxuYSBYTUwtZmlsZW4nOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0thbiBpbnRlIHRhIGJvcnQgZW4gZ3J1cHAgc29tIGlubmVoJmFyaW5nO2xsZXIgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0RlbiBoJmF1bWw7ciBhbnYmYXVtbDtuZGFyZW4gaGFyIHJlZGFuIGxvZ2dhdCBpdCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdCaWxkZW5zIHRleHQgaGFyIGludGUgbWF0YXRzIGluIGtvcnJla3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBhdHQgbG9nZ2EgaW4gbWVkIGZsZXJhIHNlc3Npb25lcic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnVGlsbCZhcmluZzt0bmEgZmlsJmF1bWw7bmRlbHNlIGYmb3VtbDtyIGJpbGRlciBzb20gYW52JmF1bWw7bmRhcmUgdGlsbCZhcmluZzt0cyBsYWRkYSB1cHAnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnRW4gaCZhdW1sO25kZWxzZSBzb20gc2thcGFzIGQmYXJpbmc7IGVuIGFudiZhdW1sO25kYXJlIGxvZ2dhciBpbiBpIHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmUgbG9nZ2FyIHV0IHVyIHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnRW4gaCZhdW1sO25kZWxzZSBzb20gc2thcGFzIGQmYXJpbmc7IGVuIGFudiZhdW1sO25kYXJlcyBpbmxvZ2duaW5nc3Nlc3Npb24gbCZvdW1sO3BlciB1dCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0VuIGgmYXVtbDtuZGVsc2Ugc29tIHNrYXBhcyBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZSBza2FwYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmVzIGluZm9ybWF0aW9uIHVwcGRhdGVyYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZXR0IGFudiZhdW1sO25kYXJrb250byB0YXMgYm9ydCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmdydXBwIHNrYXBhcyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdFbiBnZW5lcmVyYWQgaCZhdW1sO25kZWxzZSBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZ3J1cHAgJmF1bWw7ciB1cHBkYXRlcmFkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0VuIGgmYXVtbDtuZGVsc2Ugc29tIHNrYXBhcyBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZ3J1cHAgdGFzIGJvcnQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQtZ3J1cHAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBGJm91bWw7bGphbmRlIG1ha3JvbiBrYW4gYW52JmF1bWw7bmRhcyBpIGRlc3NhIGYmYXVtbDtsdCB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gTiZhdW1sO3IgJiMwMzk7eyRncm91cH0tbWFrcm90JiMwMzk7IGFudiZhdW1sO25kcyBrb21tZXIgc3lzdGVtZXQgZXJzJmF1bWw7dHRhIG5hbW5ldCAgcCZhcmluZzsgZGVuIGYmb3VtbDtyc3RhIG1lZGxlbXNncnVwcGVuIHNvbSBhbnYmYXVtbDtuZGFyZW4gdGlsbGgmb3VtbDtyIG9jaCBrb21tZXIgc3R5cmEgb20gdGlsbCBkZW4gc2lkYW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdSZWRpZ2VyYSBkZXR0YSBmJmF1bWw7bHRldCBmJm91bWw7ciBhdHQgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGFudiZhdW1sO25kYXJlbnMgbCZvdW1sO3Nlbm9yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnUmVkaWdlcmEgZGV0dGEgZiZhdW1sO2x0ZXQgZiZvdW1sO3IgYXR0ICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBhbnYmYXVtbDtuZGFyZW5zIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRGV0IGZpbm5zIHJlZGFuIGVuIGFudiZhdW1sO25kYXJlIG1lZCBkZXQgYW52JmF1bWw7bmRhcm5hbW5ldCc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdJbmdldCByZXN1bHRhdCByZXR1cm5lcmFkZXMgZnImYXJpbmc7biBDU1YtZXhwb3J0ZW4nOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTCZhdW1sO25nZCBwJmFyaW5nOyBmJmF1bWw7bHRldCBmJm91bWw7ciBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMJmF1bWw7bmdkIHAmYXJpbmc7IGYmYXVtbDtsdGV0IGYmb3VtbDtyIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9tYXgtdiZhdW1sO3JkZW5hIGYmb3VtbDtyIGwmYXVtbDtuZ2RlbiBwJmFyaW5nOyBsJm91bWw7c2Vub3JkICZhdW1sO3Igb2dpbHRpZ2EnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9tYXgtdiZhdW1sO3JkZW5hIGYmb3VtbDtyIGwmYXVtbDtuZ2RlbiBwJmFyaW5nOyBhbnYmYXVtbDtuZGFybmFtbiAmYXVtbDtyIG9naWx0aWdhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdPZ2lsdGlnIGVwb3N0YWRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnSW5nZW4gZXBvc3RhZHJlc3MgaGl0dGFkZXMgZiZvdW1sO3IgZGV0dGEga29udG90JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdFdHQgZmVsIHVwcHN0b2QgbiZhdW1sO3IgYW52JmF1bWw7bmRhcmluZm9ybWF0aW9uZW4gc2t1bGxlIHNwYXJhcyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdFdHQgZmVsIHVwcHN0b2QgbiZhdW1sO3IgYW52JmF1bWw7bmRhcmVnZW5za2FwZW4gc2t1bGxlIHNwYXJhcyc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnQW52JmF1bWw7bmRhcmVuICVzID0gJXMgbGFkZXMgdGlsbCc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdBbnYmYXVtbDtuZGFyZW4gdWlkPSVzIHRvZ3MgYm9ydCc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VnZW5za2FwJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWJmF1bWw7cmRlIChyZWd1bGomYXVtbDtydCB1dHRyeWNrKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm5pbmc6IERlc3NhIGYmYXVtbDtsdCBwJmFyaW5nO3ZlcmthciBzdG9ybGVrZW4gcCZhcmluZzsgZiZhdW1sO2x0IGkgZm9ybXVsJmF1bWw7ci4gRGV0ICZhdW1sO3IgaW50ZSB0aWxsciZhcmluZztkbGlndCBhdHQgbWluc2thIGRlc3NhIHYmYXVtbDtyZGVuIGkgZW4gZXhpc3RlcmFuZGUgd2ViYnBsYXRzLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIGp1c3RlcmEgaW5zdCZhdW1sO2xsbmluZ2FybmEgZiZvdW1sO3IgbW9kdWxlbj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0Vwb3N0YWRyZXNzZW4gYW52JmF1bWw7bmRzIHJlZGFuJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0FudiZhdW1sO25kIGNvb2tpZXMgZiZvdW1sO3IgYXR0IGtvbW1hIGloJmFyaW5nO2cgaW5sb2dnbmluZ3N1cHBnaWZ0ZXInOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOYW1uIHAmYXJpbmc7IGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1RpbGwmYXJpbmc7dCBkdWJsZXR0ZXIgcCZhcmluZzsgZXBvc3RhZHJlc3Nlcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdlcG9zdGFkZHJlc3NlbiAmYXVtbDtyIGFudiZhdW1sO25kYXJuYW1uZXQnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnRiZvdW1sO3JzJm91bWw7ayBoJmFyaW5nO2xsYSBpbmxvZ2duaW5nYXIgdmlkIGxpdiBnZW5vbSBhdHQgYW52JmF1bWw7bmRhIGNvb2tpZXMgPGVtPihjb29raWU6biAmYXJpbmc7dGVyc3QmYXVtbDtsbHMgdmlkIGFrdGl2aXRldCBpIHdlYmJwbGF0c2VuKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyh0aWxsJmFyaW5nO3QgbXVsdGlwbGEgYW52JmF1bWw7bmRhcmUgbWVkIHNhbW1hIGVwb3N0YWRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1RpbGwmYXJpbmc7dCBtdWx0aXBsYSBwJmFyaW5nO21pbm5lbHNlciBhdiB0eXBlbiAmcXVvdDtnbCZvdW1sO210IGwmb3VtbDtzZW5vcmQmcXVvdDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHRpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBhdHQgYmVnJmF1bWw7cmEgZW4gJmFyaW5nO3RlcnN0JmF1bWw7bGxuaW5nIGF2IGwmb3VtbDtzZW5vcmRldCwgJmF1bWw7dmVuIG9tIGRlIGludGUgaGFyIGJla3ImYXVtbDtmdGF0IHRpZGlnYXJlKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ0FudiZhdW1sO25kIEZyb250LWVuZCBVc2VyOnMgc3BlY2lmaWthIHImYXVtbDt0dGlnaGV0ZXI/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWx0ICZhdW1sO3IgciZhdW1sO3R0aWdoZXRlcm5hIGYmb3VtbDtyIEZyb250ZW5kLWFudiZhdW1sO25kYXJlIHNhbW1hIHNvbSBtb3RzdmFyYW5kZSByJmF1bWw7dHRpZ2hldGVyIGYmb3VtbDtyIEFkbWluLWRlbGVuIHNvbSBMJmF1bWw7Z2cgdGlsbCBhbnYmYXVtbDtuZGFyZSwgTCZhdW1sO2dnIHRpbGwgZ3J1cHAgb3N2LiBPbSBkdSB2JmF1bWw7bGplciBkZXR0YSBhbHRlcm5hdGl2IGtvbW1lciBkZXQgYmxpIHNlcGFyYXRhIHImYXVtbDt0dGlnaGV0ZXIgZiZvdW1sO3IgRnJvbnRlbmQtYW52JmF1bWw7bmRhbmRhcmUuKS4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0t1bmRlIGludGUgaGl0dGEgZGVuIHVwcGxhZGRhZGUgZmlsZW4gKGludGVybnQgZmVsKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0RldCB1cHBzdG9kIGV0dCBmZWwgbWVkIGZpbGVuIGR1IGxhZGRhdCB1cHAuIEYmb3VtbDtycyZvdW1sO2sgaWdlbic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdEdSBhbmdhdiBpbmdldCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdEdSBhbmdhdiBpbnRlIGRpbiBlcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdEdSBhbmdhdiBpbmdldCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdMb2dnYXQgdXQgZnImYXJpbmc7biBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0xvZ2dhIGluIGkgRnJvbnRlbmQgVXNlcic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0RlbiBoJmF1bWw7ciBmdW5rdGlvbmVuIGZ1bmdlcmFyIGludGUgcCZhcmluZzsgV2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnU2thcGEgaW50ZSBlZ2Vuc2thcGVyIGYmb3VtbDtyIGFudiZhdW1sO25kYXJuYW1uIG9jaCBsJm91bWw7c2Vub3JkIGVmdGVyc29tIGRlc3NhICZhdW1sO3IgaW5neWdnZGEgaSBtb2R1bGVuIEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyYSBhbnYmYXVtbDtuZGFyZSB0aWxsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRlcmEnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXJhJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyZXJhJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnUmVkaWdlcmEgZWdlbnNrYXAnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4bCZhdW1sO25nZCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU2thcGFkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlcmEgZWZ0ZXInOwokbGFuZ1snc29ydCddID0gJ1NvcnRlcmFyJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0FudiZhdW1sO25kYXJlIGkgZGVuIHZhbGRhIGdydXBwZW4vZ3J1cHBlcm5hJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0JlZ3ImYXVtbDtuc2EgcmVzdWx0YXRldCBlZnRlcic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGV0dCBlLXBvc3RmJmF1bWw7bHQgZiZvdW1sO3IgZGVubmEgYW52JmF1bWw7bmRhcmVuLiBEdSBrYW5za2UgYmVoJm91bWw7dmVyIGtvbnRha3RhIHN5c3RlbWFkbWluaXN0cmF0Jm91bWw7cmVuLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgR2wmb3VtbDttdCBsJm91bWw7c2Vub3JkLWZvcm11bCZhdW1sO3JldCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgJkF1bWw7bmRyYSBpbnN0JmF1bWw7bGxuaW5nYXItZm9ybXVsJmF1bWw7cmV0JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnU2lkLUlELy1hbGlhcyBmJm91bWw7ciBnJmFyaW5nOyB0aWxsIGVmdGVyIGlubG9nZ25pbmcqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgZyZhcmluZzsgdGlsbCBlZnRlciB1dGxvZ2duaW5nIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydGVyaW5nc29yZG5pbmcnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnRXR0IGFudGFsIGFudiZhdW1sO25kYXJlIGgmYXJpbmc7bGxlciBwJmFyaW5nOyBhdHQgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGdsJm91bWw7bWRhIGwmb3VtbDtzZW5vcmQuIEp1c3QgbnUgJmF1bWw7ciBhbnRhbGV0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JhZGVyYSBwb3N0ZXIgc29tICZhdW1sO3IgJmF1bWw7bGRyZSBlbiB2ZWNrYSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSYWRlcmEgcG9zdGVyIHNvbSAmYXVtbDtyICZhdW1sO2xkcmUgZW4gbSZhcmluZztuYWQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnVGEgYm9ydCBhbGxhIHBvc3Rlcic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0VuIG9naWx0aWcga29kIGhhciBhbmdldHRzLCB2JmF1bWw7bmxpZ2VuIGYmb3VtbDtycyZvdW1sO2sgaWdlbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnSW5nZW4gdGlsbGYmYXVtbDtsbGlnIGtvZCBmJm91bWw7ciBkaXR0IGFudiZhdW1sO25kYS1JRCBrdW5kZSBoaXR0YXMgaSBkYXRhYmFzZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNYWxsIHNvbSBhbnYmYXVtbDtuZHMgZiZvdW1sO3IgYXR0IHZpc2EgYmVrciZhdW1sO2Z0ZWxzZWZvcm11bCZhdW1sO3InOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ01hbGwgc29tIGFudiZhdW1sO25kcyBmJm91bWw7ciBhdHQgc2tpY2thIGJvcnRnbCZvdW1sO21kYSBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdBbnRpbmdlbiBoYXIgZHUgc2omYXVtbDtsdiBlbGxlciBuJmFyaW5nO2dvbiBhbm5hbiBiZWcmYXVtbDtydCBhdHQgZiZhcmluZzsgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGwmb3VtbDtzZW5vcmRldCBmJm91bWw7ciBkZXR0YSBrb250by4gS29udHJvbGxlcmEgZGluIGUtcG9zdCwgZHUgaGl0dGFyIHZpZGFyZSBpbnN0cnVrdGlvbmVyIGYmb3VtbDtyIGh1ciBkdSAmYXJpbmc7dGVyc3QmYXVtbDtsbGVyIGwmb3VtbDtzZW5vcmRldCBpIGRpbiBpbmtvcmcuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZmVsJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ0R1IGYmYXJpbmc7ciBkZXR0YSBtZWRkZWxhbmRlIGVmdGVyc29tIG4mYXJpbmc7Z29uIGhhciBhbmdldHQgYXR0IGR1IGhhciBnbCZvdW1sO210IGRpdHQgbCZvdW1sO3Nlbm9yZC4gT20gcyZhcmluZzsgJmF1bWw7ciBmYWxsZXQsIGwmYXVtbDtzIGluc3RydWt0aW9uZXJuYSBuZWRhbi4gT20gZHUgaW50ZSBoYXIgZW4gYW5pbmcgb20gdmFkIGRldHRhICZhdW1sO3Iga2FuIGR1IHRhIGJvcnQgZGV0dGEgbWVkZGVsYW5kZSBvY2ggdmkgdGFja2FyIGRpZyBmJm91bWw7ciBkaW4gdGlkLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0tvZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdGJm91bWw7bGphbmRlIGtvZCBoYXIgc2x1bXBtJmF1bWw7c3NpZ3QgZ2VuZXJlcmF0cyBmJm91bWw7ciBhdHQgdmVyaWZpZXJhIGFudiZhdW1sO25kYXJrb250b3QuIE4mYXVtbDtyIGR1IGtsaWNrYXIgcCZhcmluZzsgbCZhdW1sO25rZW4gbmVkYW4ga29tbWVyIGR1IGF0dCBzZSBldHQgZiZhdW1sO2x0IGYmb3VtbDtyIGF0dCBza3JpdmEgaW4gZGVubmEga29kZW4uIE5vcm1hbHQgJmF1bWw7ciBmJmF1bWw7bHRldCByZWRhbiBpZnlsbHQgZiZvdW1sO3IgZGlnLCBtZW4gb20gZGV0IGludGUgJmF1bWw7ciBzJmFyaW5nOyAmYXVtbDtyIGtvZGVuOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0dlbm9tIGF0dCBrbGlja2EgcCZhcmluZzsgZiZvdW1sO2xqYW5kZSBsJmF1bWw7bmsga29tbWVyIGR1IGhhbW5hIHAmYXJpbmc7IHdlYmJwbGF0c2VuIGQmYXVtbDtyIGR1IGthbiBtYXRhIGluIGtvZGVuIG92YW4gb2NoIGQmYXVtbDtybWVkICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBkaXR0IGwmb3VtbDtzZW5vcmQuOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2wmb3VtbDttdCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnS2FuIGludGUgaGl0dGEgbW9kdWxlbiBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRXR0IG1haWwgaGFyIHNraWNrYXRzIHRpbGwgJXMgbWVkIGluc3RydWt0aW9uZXIgb20gaHVyIGwmb3VtbDtzZW5vcmRldCAmYXJpbmc7dGVyc3QmYXVtbDtsbHMuJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUyZhcmluZzsgZHUgaGFyIGdsJm91bWw7bXQgZWxsZXIgdGFwcGF0IGJvcnQgZGl0dCBsJm91bWw7c2Vub3JkPyBNYXRhIGluIGRpdHQgYW52JmF1bWw7bmRhcm5hbW4gaCZhdW1sO3IuIE9tIHZpIGthbiBoaXR0YSBkaWcgaSB2JmFyaW5nO3IgbGlzdGEgJm91bWw7dmVyIGFudiZhdW1sO25kYXJlIGtvbW1lciB2aSBza2lja2EgaW5zdHJ1a3Rpb25lciBmJm91bWw7ciBodXIgZHUga2FuICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBkaXR0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNYWxsYXIgZiZvdW1sO3IgZ2wmb3VtbDttdCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3IgZ2wmb3VtbDttdCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdFZ2Vuc2thcGVuICVzIGt1bmRlIGludGUgaGl0dGFzJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdIaXR0YWRlIGVnZW5za2FwZXInOwokbGFuZ1snYWRkcHJvcCddID0gJ0wmYXVtbDtnZyB0aWxsIGVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdFdHQgYmVnJmF1bWw7cnQgZiZhdW1sO2x0ICglcykgdmFyIHRvbXQnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdBbmdlIGV0dCBueXR0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdEdSB2ZXJrYXIgaW50ZSB2YXJhIGlubG9nZ2FkJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZXJpbmcnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdEZXQgaCZhdW1sO3Iga29udG90IGhhciBsJm91bWw7cHQgdXQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ09naWx0aWd0IGZvcm1hdCBwJmFyaW5nOyBlcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ09naWx0aWd0IHV0ZyZhcmluZztuZ3NkYXR1bSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXR0IGZlbCB1cHBzdG9kIG4mYXVtbDtyIGVnZW5za2FwZW4gJXMgc2t1bGxlIHMmYXVtbDt0dGFzIGYmb3VtbDtyIGFudiZhdW1sO25kYXJlICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnT2dpbHRpZ3QgZ3J1cHBJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmsmb3VtbDtyIGYmb3VtbDtyIGcmb3VtbDttdCBmJmF1bWw7bHQnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0YmYXVtbDtyZyBmJm91bWw7ciBnJm91bWw7bXQgZiZhdW1sO2x0JzsKJGxhbmdbJ2hpZGRlbiddID0gJ0cmb3VtbDttZCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRW4gZWdlbnNrYXAgbWVkIGRldCBuYW1uZXQgJmF1bWw7ciByZWRhbiBza2FwYXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnSW5nYSBlZ2Vuc2thcGVyIGRlZmluaWVyYWRlJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnSW5nYSBlZ2Vuc2thcGVyIHZhbGRlcyBmJm91bWw7ciBkZW4gaCZhdW1sO3IgZ3J1cHBlbic7CiRsYW5nWydub2dyb3VwcyddID0gJ0luZ2EgZ3J1cHBlciAmYXVtbDtyIGRlZmluaWVyYWRlJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnSGl0dGFkZSBncnVwcGVyJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdNZWRsZW1za2FwIGkgbWluc3QgZW4gZ3J1cHAga3ImYXVtbDt2cyc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnS3ImYXVtbDt2IG1lZGxlbXNza2FwIGkgbWluc3QgZW4gZ3J1cHAnOwokbGFuZ1snYmFjayddID0gJ1RpbGxiYWthJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyAmYXVtbDtyIGV0dCBvYmxpZ2F0b3Jpc2t0IGYmYXVtbDtsdCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFya2VyYSBvYmxpZ2F0b3Jpc2thIGYmYXVtbDtsdCBtZWQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnTWFya2VyYSBvYmxpZ2F0b3Jpc2thIGYmYXVtbDtsdCBtZWQnOwokbGFuZ1snbmV4dCddID0gJ04mYXVtbDtzdGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdFbiBncnVwcCBtZWQgZGV0IG5hbW5ldCBleGlzdGVyYXIgcmVkYW4nOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3Jpc2snOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdGcml2aWxsaWcnOwokbGFuZ1snb2ZmJ10gPSAnQXYnOwokbGFuZ1snc2l6ZSddID0gJ1N0b3JsZWsnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhzdG9ybGVrIHAmYXJpbmc7IGJpbGQgaSBhbnRhbCBwaXhsYXIpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0wmYXVtbDtuZ2QnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4odGVja2VuIGkgaW5tYXRuaW5nc2YmYXVtbDtsdGV0KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnQWx0ZXJuYXRpdiBpIHJ1bGxnYXJkaW5zbWVueSwgc2VwYXJlcmFkZSBtZWQgcmFkYnJ5dG5pbmdhci4gViZhdW1sO3JkZW4gc2VwYXJlcmFzIG1lZCAmcXVvdDtsaWthIG1lZCZxdW90Oy10ZWNrZW4gKHQuZXguIEt2aW5uYT1rKSc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpbyBidXR0b24gZXRpa2V0dCwgc2VwYXJlcmFkIG1lZCByYWRicnl0bmluZ2FyLiBWJmF1bWw7cmRlbiBzZXBhcmVyYXMgbWVkICZxdW90O2xpa2EgbWVkJnF1b3Q7LXRlY2tlbiAodC5leC4gS3Zpbm5hPWspJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCAnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0YmYXVtbDtsdHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdGciZhcmluZztnYSBpIGJvcnR0YXBwYXQ8YnIvPmFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ICc7CiRsYW5nWydjaGVja2JveCddID0gJ0tyeXNzcnV0YSc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0ZsZXJ2YWxzbGlzdGEnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyAnOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRXBvc3RhZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0cnV0YSc7CiRsYW5nWydkcm9wZG93biddID0gJ1J1bGxnYXJkaW5zbWVueSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1YmYXVtbDtsa29tbWVuJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ2dhIHV0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdBbnYmYXVtbDtuZCBkZXR0YSBncnVwcG5hbW4nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnJkF1bWw7bmRyYSBtaW5hIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0lubG9nZ25pbmdlbiBtaXNzbHlja2FkZXMgLSBGZWxha3RpZ3QgYW52JmF1bWw7bmRhcm5hbW4gZWxsZXIgbCZvdW1sO3Nlbm9yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dnYSBpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0V0aWtldHQgZiZvdW1sO3IgaW5sb2dnbmluZ3NrbmFwcCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdBbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFcG9zdGFkcmVzcyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdMJm91bWw7c2Vub3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnS29tIGloJmFyaW5nO2cgbWlnIHAmYXJpbmc7IGRlbiBoJmF1bWw7ciBkYXRvcm4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXJhJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnR2wmb3VtbDttdCBkaXR0IGwmb3VtbDtzZW5vcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0dsJm91bWw7bXQgZGluYSBpbmxvZ2duaW5nc3VwcGdpZnRlcj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZHYmYXVtbDtyZGVuJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTWFsbCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdBbnYmYXVtbDtuZGFySUQgaGl0dGFkZXMgaW50ZSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnQW52JmF1bWw7bmRhcm5hbW5ldCAoJXMpIGFudiZhdW1sO25kcyByZWRhbic7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnQW52JmF1bWw7bmQgU01UUCBmJm91bWw7ciBhdHQgdmFsaWRlcmEgZXBvc3RhZHJlc3Nlcj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluc3RhIGwmYXVtbDtuZ2QgcCZhcmluZzsgbCZvdW1sO3Nlbm9yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhsJmF1bWw7bmdkIGYmb3VtbDtyIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluc3RhIGwmYXVtbDtuZ2QgcCZhcmluZzsgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4bCZhdW1sO25nZCBmJm91bWw7ciBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNla3VuZGVyKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnQW52JmF1bWw7bmQgY29va2llcyBmJm91bWw7ciBhdHQgaCZhcmluZztsbGEgaW5sb2dnbmluZ2FyIHZpZCBsaXYnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdUaWxsJmFyaW5nO3QgZXBvc3RyZWdpc3RyZXJpbmcnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkZ3J1cHAgZiZvdW1sO3IgbnlhIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnTWFsbCBmJm91bWw7ciAmYXVtbDtuZHJpbmdhciBhdiBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0wmb3VtbDtzZW5vcmRlbiBzdCZhdW1sO21tZXIgaW50ZSAmb3VtbDt2ZXJlbnMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnT2d0aWx0aWd0IGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ09naWx0aWd0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRpZ2VyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWyd2YWxpZCddID0gJ0dpbHRpZyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0FudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRGVuIGgmYXVtbDtyIGFudiZhdW1sO25kYXJlbiAmYXVtbDtyIGludGUgbWVkbGVtIGkgbiZhcmluZztnb24gZ3J1cHAnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ0luZ2EgZWdlbnNrYXBlcic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0Ymb3VtbDtycyZvdW1sO2sgaW1wb3J0ZXJhIGR1YmxldHRlciBhdiBlZ2Vuc2thcGVyJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhdW1sO3JkZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGVyJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdFZ2Vuc2thcGVyJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTmFtbiBwJmFyaW5nOyBlZ2Vuc2thcCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWJmF1bWw7cmRlJzsKJGxhbmdbJ2FkZCddID0gJ0wmYXVtbDtnZyB0aWxsJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3Jpayc7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcmEnOwokbGFuZ1snZXhwaXJlcyddID0gJ0wmb3VtbDtwZXIgdXQnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnQW5nZSBkYXR1bSc7CiRsYW5nWycxMmhycyddID0gJzEyIHRpbW1hcic7CiRsYW5nWycyNGhycyddID0gJzI0IHRpbW1hcic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHRpbW1hcic7CiRsYW5nWycxd2VlayddID0gJzEgdmVja2EnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB2ZWNrb3InOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBtJmFyaW5nO25hZCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtJmFyaW5nO25hZGVyJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG0mYXJpbmc7bmFkZXInOwokbGFuZ1snMXllYXInXSA9ICcxICZhcmluZztyJzsKJGxhbmdbJ25ldmVyJ10gPSAnQWxkcmlnJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdMJm91bWw7c2Vub3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnSWdlbic7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnRW4gZ3J1cHAgbWVkIGRldCBuYW1uZXQgZXhpc3RlcmFyIHJlZGFuJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1JlZGlnZXJhIGdydXBwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NraWNrYSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnVGEgYm9ydCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZGV0dGEgJmF1bWw7ciBkZSBrb3JyZWt0YSBpbnN0JmF1bWw7bGxuaWduYXJuYSBmJm91bWw7ciBkZW4gaCZhdW1sO3IgZ3J1cHBlbj9cbkF0dCBzdCZhdW1sO25nYSBhdiBkZW5uYSBlZ2Vuc2thcGVuIHRhciBpbnRlIGJvcnQgbiZhcmluZztncmEgcG9zdGVyIGkgZWdlbnNrYXBzdGFiZWxsZW4gZiZvdW1sO3IgZGVubmEgZ3J1cHAvYW52JmF1bWw7bmRhcmUuIERlIGtvbW1hIGJhcmEgaW50ZSB2YXJhIHRpbGxnJmF1bWw7bmdsaWdhLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIHRhIGJvcnQgZGVuIGgmYXVtbDtyIGdydXBwZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgdGEgYm9ydCBkZW4gaCZhdW1sO3IgZWdlbnNrYXBlbj9cbkdlbm9tIGF0dCB0YSBib3J0IGRlbiBmJm91bWw7cnN2aW5uZXIgYWxsYSBldmVudHVlbGxhIGFudiZhdW1sO25kYXJ1cHBnaWZ0ZXIgbWVkIGRlbiBoJmF1bWw7ciBlZ2Vuc2thcGVuLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdPdGlsbHImYXVtbDtja2xpZ2EgcGFyYW1ldHJhcic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGVuIGVnZW5za2FwIGYmb3VtbDtyIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ0V0dCBmZWwgdXBwc3RvZCBkJmFyaW5nOyBlbiByZWxhdGlvbiB0aWxsIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGF0dCBsJmF1bWw7Z2dhIHRpbGwgYW52JmF1bWw7bmRhcmUgdGlsbCBncnVwcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBtZWQgYXR0IHRhIGJvcnQgZW4gZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z29uIGUtcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnSW5nYSBza3JpdnImYXVtbDt0dGlnaGV0ZXIgdGlsbCBtJmFyaW5nO2xtYXBwZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ09naWx0aWdhIHBhcmFtZXRyYXInOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z3JhIGdydXBwZXInOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdWZXJrc3QmYXVtbDtsbCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGomYXVtbDtydCB1dHRyeWNrIGYmb3VtbDtyIGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cHBuYW1uJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1RpbGx0ciZhdW1sO2RlIG5la2FzJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRmVsJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTCZhdW1sO2dnIHRpbGwgZ3J1cHAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRlcmEgZ3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0wmYXVtbDtnZyB0aWxsIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdBbnYmYXVtbDtuZGFyZSBzb20gJm91bWw7dmVyZW5zc3QmYXVtbDttbWVyIG1lZCBrcml0ZXJpZXQnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwcCc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYXVtbDtsaiBncnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHV0bG9nZ25pbmcnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIGlubG9nZ25pbmcnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndXNlcnMnXSA9ICdBbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdIYW50ZXJpbmcgYXYgRnJvbnRlbmQgVXNlcic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBsb2dnYSBpbiB2aWEgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0Ymb3VtbDtydmFsZCBmJm91bWw7cnN0YXNpZGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1NlbmFzdCBsJmF1bWw7c3RhIHNpZGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5uYW4gc2lkYTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTa3JpdiBpbiB0ZXh0ZW4gaSBiaWxkZW4nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/tr_TR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0t1bGxhbsSxY8SxIGQmdXVtbDt6ZW5sZW1lJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ8WeaWZyZW5pemkgaGF0xLFybGFtxLF5b3JzYW7EsXogdMSxa2xhecSxbic7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJyZDY2VkaWw7xLFrxLHFnyBpJmNjZWRpbDtpbiB0xLFrbGF5xLFuxLF6JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljayBoZXJlIHRvIGFkanVzdCB5b3VyIHBhc3N3b3JkIG9yIG90aGVyIGluZm9ybWF0aW9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVmlldyBVc2VyIFRlbXBsYXRlJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbnQnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgU3ViamVjdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0VtYWlsIE5vdGlmaWNhdGlvbnMnOwokbGFuZ1snT25Mb2dpbiddID0gJ09uIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnT24gTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ09uIFNlc3Npb24gRXhwaXJ5JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ09uIE5ldyBVc2VyIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnT24gVXNlciBEZWxldGVkJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1lvdXIgdXNlcm5hbWUgaXMnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTW9yZSB0aGFuIG9uZSB1c2VyIGFjY291bnQgbWF0Y2hlZCB0aGUgcHJvcGVydGllcyBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgdXNlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgZ3JvdXAgYnkgdGhhdCBuYW1lJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2FsdCBPa3VudXInOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ1VzZXIgTWFuaXB1bGF0b3IgQ2xhc3MnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnTG9nZ2VkIG91dCBieSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTaG93IE9ubHkgTG9nZ2VkIEluIFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdMb2dvdXQgdGhpcyB1c2VyJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1VzZXIgUHJvcGVydGllcyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTm8gTGltaXQgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnT25lIEhvdXIgT2xkJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NpeCBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVHdlbHZlIEhvdXJzIE9sZCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ09uZSBEYXkgT2xkJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ09uZSBXZWVrIE9sZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdvIHdlZWtzIE9sZCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnT25lIE1vbnRoIE9sZCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVGhyZWUgTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NpeCBNb250aHMgT2xkJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ09uZSBZZWFyIE9sZCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcm91cGluZyBhbmQgU29ydGluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVjb3JkcyBtYXRjaGluZyB0aGUgY3JpdGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdBc2NlbmRpbmcgVXNlcm5hbWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0Rlc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdBc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdBc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdBc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTm8gSGlzdG9yeSBEZXRlY3RlZCc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dyb3VwIEJ5IElQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlIEZpbHRlcic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdEaXNwbGF5IG9ubHkgZXZlbnRzIHRoYXQgYXJlIGxlc3MgdGhhbjonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1BhZ2UgTGltaXQnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IFJlcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1JldHVybic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IE9wZXJhdGlvbiBDb21wbGV0ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lcyBQcm9jZXNzZWQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9ycyBFbmNvdW50ZXJlZCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyBBZGRlZCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0NvdWxkIG5vdCBvcGVuIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBUaGUgZm9sbG93aW5nIG1hY3JvcyBjYW4gYmUgdXNlZCBpbiB0aGVzZSBmaWVsZHM6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBXaGVuIHVzaW5nIHRoZSB7JGdyb3VwfSBtYWNybywgdGhlIHN5c3RlbSB3aWxsIHN1YnNpdHV0ZSB0aGUgbmFtZSBvZiB0aGUgZmlyc3QgbWVtYmVyIGdyb3VwIHRoYXQgdGhlIHVzZXIgYmVsb25ncyB0bywgYW5kIHdpbGwgcmVkaXJlY3QgdG8gdGhhdCBwYWdlLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdBIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbnZhbGlkIEVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdXZSBjb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc2VyIEFkZGVkICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXNlciBEZWxldGVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3BlcnR5JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgYWRkcmVzcyBhbHJlYWR5IHVzZWQnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgdXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgeW91ciBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHBhc3N3b3JkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdGcm9udGVuZCBVc2VyIExvZ291dCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIExvZ2luJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB3b3JrIG9uIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0RvIG5vdCBjcmVhdGUgYSBwcm9wZXJ0eSBmb3IgdXNlcm5hbWUsIG9yIHBhc3N3b3JkIGFzIHRoZXNlIHByb3BlcnRpZXMgYXJlIGJ1aWx0aW4gdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnQgVXNlcnMgdG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHknOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBMZW5ndGgnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0ZWQnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydCBCeSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGluZyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVc2VycyBpbiB0aGUgc2VsZWN0ZWQgZ3JvdXAocyknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXQgcmVzdWx0cyB0byc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBmaWVsZCBmb3IgdGhpcyB1c2VyLiAgWW91IG1heSBuZWVkIHRvIGNvbnRhY3QgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBGb3Jnb3QgUGFzc3dvcmQgZm9ybSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgQ2hhbmdlIFNldHRpbmdzIGZvcm0nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ291dCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnQgb3JkZXInOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVzZXR0aW5nIGxvc3QgcGFzc3dvcmRzLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIHdlZWsgb2xkJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSBtb250aCBvbGQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBcmUgeW91IHN1cmU/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnQW4gaW52YWxpZCBjb2RlIGhhcyBiZWVuIGVudGVyZWQsIHBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0EgdGVtcG9yYXJ5IGNvZGUgZm9yIHlvdXIgdXNlciBpZCBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCB0byBkaXNwbGF5IHZlcmlmaWNhdGlvbiBmb3JtJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIGZvciBmb3Jnb3R0ZW4gcGFzc3dvcmQgZW1haWwnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0VpdGhlciB5b3Vyc2VsZiBvciBzb21lb25lIGVsc2UgaGFzIGFscmVhZHkgdHJpZ2dlcmVkIGEgcGFzc3dvcmQgcmVzZXQgb3BlcmF0aW9uIGZvciB0aGlzIGFjY291bnQuICBDaGVjayB5b3VyIGVtYWlsLCB5b3UgbWF5IGhhdmUgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQgaW4geW91ciBpbmJveCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UgZXJyb3InOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2Ugc29tZWJvZHkgdG9sZCBvdXIgc2l0ZSB0aGF0IHlvdSBoYWQgbG9zdCB5b3VyIHBhc3N3b3JkLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSwgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGJlbG93LiAgSWYgeW91IGRvbiYjMDM5O3QgaGF2ZSBhIGNsdWUgd2hhdCB0aGlzIGlzLCB0aGVuIHlvdSBhcmUgc2FmZSB0byBkZWxldGUgdGhpcyBtZXNzYWdlLCBhbmQgd2UgdGhhbmsgeW91IGZvciB5b3VyIHRpbWUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gZ2VuZXJhdGVkIHJhbmRvbWx5IGdlbmVyYXRlZCBpbiBvcmRlciB0byB2ZXJpZnkgdGhlIHVzZXIgYWNjb3VudC4gIHdoZW4geW91IGNsaWNrIG9uIHRoZSBsaW5rIGJlbG93IHlvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgZmllbGQgdG8gZW50ZXIgdGhpcyBjb2RlLiAgTm9ybWFsbHkgdGhlIGZpZWxkIGlzIHByZS1jb21wbGV0ZWQgZm9yIHlvdSwgYnV0IGluY2FzZSBpdCBpc24mIzAzOTt0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0NsaWNraW5nIG9uIHRoZSBmb2xsb3dpbmcgbGluayB3aWxsIHRha2UgeW91IHRvIHRoZSB3ZWJzaXRlIHdoZXJlIHlvdSBjYW4gZW50ZXIgdGhlIGFib3ZlIGNvZGUsIGFuZCByZXNldCB5b3VyIHBhc3N3b3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnTG9zdCBQYXNzd29yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0NvdWxkIG5vdCBmaW5kIHRoZSBDTVNNYWlsZXIgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ0FuIGVtYWlsIGhhcyBiZWVuIHNlbnQgdG8gJXMgd2l0aCBpbnN0cnVjdGlvbnMgYXMgdG8gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQuICBUaGFuayB5b3UnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTbyB5b3UgZm9yZ290IG9yIGxvc3QgeW91ciBwYXNzd29yZC4gV2VsbCwgdHlwZSB5b3VyIHVzZXJuYW1lIGluIGhlcmUsIGFuZCBpZiB3ZSBjYW4gZmluZCB5b3Ugd2Ugd2lsbCBzZW5kIHlvdSBhbiBlbWFpbCB3aXRoIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgaXQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGxhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGlvbic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RoaXMgYWNjb3VudCBoYXMgZXhwaXJlZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnSW1wcm9wZXIgZW1haWwgYWRkcmVzcyBmb3JtYXR0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnSW52YWxpZCBleHBpcnkgZGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0ludmFsaWQgZ3JvdXAgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgQWRkcmVzcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxjb21lJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NpZ24gb3V0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgdGhpcyBncm91cCBuYW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0NoYW5nZSBNeSBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIGZhaWxlZCAtIEludmFsaWQgdXNlcm5hbWUgb3IgcGFzc3dvcmQ/JzsKJGxhbmdbJ2xvZ2luJ10gPSAnU2lnbiBpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1NpZ24gaW4gYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdSZW1lbWJlciBtZSBvbiB0aGlzIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0ZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdGb3Jnb3QgWW91ciBQYXNzd29yZD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRm9yZ290IFlvdXIgTG9naW4gRGV0YWlscz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0NvdWxkIG5vdCBmaW5kIGluZm9ybWF0aW9uIGZvciB0aGlzIHVzZXInOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgKCVzKSBpcyBhbHJlYWR5IGluIHVzZSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNlIFNNVFAgdG8gdmFsaWRhdGUgZW1haWwgYWRkcmVzc2VzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNlY29uZHMpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2UgY29va2llcyB0byBrZWVwIGxvZ2lucyBhbGl2ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0FsbG93IEVtYWlsIFJlZ2lzdHJhdGlvbic7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnRGVmYXVsdCBHcm91cCBmb3IgbmV3IHVzZXJzJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2hhbmdlIFNldHRpbmdzIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXNzd29yZHMgRG8gbm90IG1hdGNoJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0ludmFsaWQgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnSW52YWxpZCBQYXNzd29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsdWUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wZXJ0aWVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnUHJvcGVydHkgTmFtZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdQcm9wZXJ0eSBWYWx1ZSc7CiRsYW5nWydhZGQnXSA9ICdBZGQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyZXMnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmeSBEYXRlJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG91cnMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Vycyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvdXJzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBXZWVrJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgV2Vla3MnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNb250aCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNb250aHMnOwokbGFuZ1snNm1vbnRocyddID0gJzYgTW9udGhzJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBZZWFyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmV2ZXInOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnQWdhaW4nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dyb3VwIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdFZGl0IEdyb3VwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGdyb3VwPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYWRkaW5nIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCByZWxhdGlvbic7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gYWRkaW5nIGEgdXNlciB0byBhIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGRlbGV0aW5nIGEgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQ291bGQgbm90IGZpbmQgYW55IGdyb3Vwcyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/.#class.FEUForcedLogoutTask.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lib/class.FEUForcedLogoutTask.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBGRVVGb3JjZWRMb2dvdXRUYXNrIGltcGxlbWVudHMgQ21zUmVndWxhclRhc2sKewogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbmFtZSgpCiAgewogICAgcmV0dXJuIGdldF9jbGFzcygpOwogIH0KICAKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZXNjcmlwdGlvbigpCiAgewogICAgJG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgcmV0dXJuICRtb2QtPkxhbmcoJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYycpOwogIH0KICAKICAKICBwdWJsaWMgZnVuY3Rpb24gdGVzdCgkdGltZSA9ICcnKQogIHsKICAgIGlmKCAhJHRpbWUgKSAkdGltZSA9IHRpbWUoKTsKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICRsYXN0cnVuID0gJG1vZC0+R2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfbGFzdHJ1bicpOwogICAgCiAgICAkdGltZXMgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF90aW1lcycpOyAvLyBsaWtlOiAxODozMCwyMDozMCwwODowMCwgZXRjLgogICAgaWYoICR0aW1lcyA9PSAnJyApIHJldHVybiBGQUxTRTsKICAgIAogICAgJHRtcCA9IGFycmF5KCk7CiAgICAkdGltZXMgPSBleHBsb2RlKCcsJywkdGltZXMpOwogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRpbWVzKTsgJGkrKyApCiAgICAgIHsKCSR0X2ggPSAnJzsKCSR0X20gPSAnJzsKCWlmKCBzdGFydHN3aXRoKCR0aW1lc1skaV0sJyonKSApCgkgIHsKCSAgICBsaXN0KCRqdW5rLCRtaW51dGVzKSA9IGV4cGxvZGUoJy8nLCR0aW1lc1skaV0sMik7CgkgICAgJG1pbnV0ZXMgPSAoaW50KSRtaW51dGVzOwoJICAgICRtaW51dGVzID0gbWF4KCRtaW51dGVzLDEpOyAvLyBtaW51bXVtIDIgbWludXRlcwoJICAgICRtaW51dGVzID0gbWluKCRtaW51dGVzLDE4MCk7IC8vIG1heGltdW0gMTgwIG1pbnV0ZXMuCgkgICAgZm9yKCAkaSA9IDA7ICRpIDwgNjAqMjQ7ICRpICs9ICRtaW51dGVzICkKCSAgICAgIHsKCQkkdF9oID0gKGludCkoJGkvNjApOwoJCSR0X20gPSAoaW50KSgkaSU2MCk7CgkJJHRtcFtdID0gbWt0aW1lKChpbnQpJHRfaCwoaW50KSR0X20sMCwoaW50KWRhdGUoJ20nLCR0aW1lKSwoaW50KWRhdGUoJ2QnLCR0aW1lKSwoaW50KWRhdGUoJ1knLCR0aW1lKSk7CgkgICAgICB9CgkgIH0KCWVsc2UKCSAgewoJICAgIGxpc3QoJHRfaCwkdF9tKSA9IGV4cGxvZGUoJzonLHRyaW0oJHRpbWVzWyRpXSksMik7CgkgIH0KICAgICAgfQogICAgcnNvcnQoJHRtcCk7CiAgICAKICAgICRmaSA9ICcnOwogICAgJGZ0ID0gJyc7CiAgICAvLyBmaW5kIHRoZSBjbG9zZXN0IGVudHJ5LgogICAgCiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRtcCk7ICRpKysgKQogICAgICB7CglpZiggJHRpbWUgPiAkdG1wWyRpXSApIGJyZWFrOyAvLyBub3RoaW5nIHRvIGRvLi4KCgkKCSRkdCA9ICR0bXBbJGldIC0gJHRpbWU7CglpZiggJGZ0ID09ICcnIHx8ICRkdCA8ICgkZnQgLSAkdGltZSkgKQoJICB7CgkgICAgJGZpID0gJGk7CgkgICAgJGZ0ID0gJHRtcFskaV07CgkgIH0KCQogICAgICB9CiAgICBpZiggJGZ0ICE9ICcnICYmICRmaSAhPSAnJyAmJiAoJHRpbWUgLSAkZnQpIDwgNjAgKQogICAgICB7CgkvLyB3ZSBmb3VuZCBzb21ldGhpbmcgdGhhdCBjYW4gZXhlY3V0ZS4KCSRfU0VTU0lPTltnZXRfY2xhc3MoKS4nX3J1bnRpbWUnXSA9ICR0bXBbJGldOwoJcmV0dXJuIFRSVUU7CiAgICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CiAgCiAgCiAgcHVibGljIGZ1bmN0aW9uIGV4ZWN1dGUoJHRpbWUgPSAnJykKICB7CiAgICBpZiggISR0aW1lICkgJHRpbWUgPSB0aW1lKCk7CiAgICBpZiggIWlzc2V0KCRfU0VTU0lPTltnZXRfY2xhc3MoKS4nX3J1bnRpbWUnXSkgKSByZXR1cm4gRkFMU0U7CiAgICAkdGhlX3RpbWUgPSAkX1NFU1NJT05bZ2V0X2NsYXNzKCkuJ19ydW50aW1lJ107CiAgICB1bnNldCgkX1NFU1NJT05bZ2V0X2NsYXNzKCkuJ19ydW50aW1lJ10pOwoKICAgIC8vIG5vdyBmaW5kIGFsbCB0aGUgdWlkJ3MgdGhhdCBhcmUgbG9nZ2VkIGluIGJ1dCBub3QgYWN0aXZlIHNpbmNlICR0aGVfdGltZQogICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJGZvcmdpdmVuZXNzID0gKGludCkkZmV1LT5HZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF9zZXNzaW9uYWdlJyk7CiAgICAkZm9yZ2l2ZW5lc3MgPSBtYXgoMCwkZm9yZ2l2ZW5lc3MpKjYwOwogICAgJHRoZV90aW1lIC09ICRmb3JnaXZlbmVzczsKICAgICR1aWRzID0gJGZldS0+R2V0TG9nZ2VkSW5Vc2VycygkdGhlX3RpbWUpOwogICAgaWYoICFpc19hcnJheSgkdWlkcykgfHwgY291bnQoJHVpZHMpID09IDAgKQogICAgICB7CglyZXR1cm4gVFJVRTsgLy8gbm90aGluZyB0byBkby4KICAgICAgfQoKICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR1aWRzKTsgJGkrKyApCiAgICAgIHsKCSRmZXUtPkxvZ291dCgkdWlkc1skaV0sJ2ZvcmNlZCBsb2dvdXQnKTsKICAgICAgfQogICAgJGZldS0+QXVkaXQoJycsJGZldS0+R2V0TmFtZSgpLCdGb3JjZWQgbG9nb3V0IG9mICcuY291bnQoJHVpZHMpLicgdXNlcnMgYXQgJy5zdHJmdGltZSgnJUg6JU0nLCR0aGVfdGltZSkpOwogICAgcmV0dXJuIFRSVUU7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIG9uX3N1Y2Nlc3MoJHRpbWUgPSAnJykKICB7CiAgICBpZiggISR0aW1lICkgJHRpbWUgPSB0aW1lKCk7CiAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAkZmV1LT5TZXRQcmVmZXJlbmNlKCdmb3JjZWxvZ291dF9sYXN0cnVuJywkdGltZSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gb25fZmFpbHVyZSgkdGltZSA9ICcnKQogIHsKICAgIGlmKCAhJHRpbWUgKSAkdGltZSA9IHRpbWUoKTsKICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_content_attribute_helper.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfY29udGVudF9hdHRyaWJ1dGVfaGVscGVyIGV4dGVuZHMgQ21zQ29udGVudEF0dHJpYnV0ZUhlbHBlckJhc2UKewogIHByaXZhdGUgc3RhdGljICRfaW5zdGFuY2U7CgoKICBwcml2YXRlIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICAvLyBub3RoaW5nIGhlcmUuCiAgfQoKCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfaW5zdGFuY2UoKQogIHsKICAgIGlmICghc2VsZjo6JF9pbnN0YW5jZSkKICAgICAgewogICAgICAgIHNlbGY6OiRfaW5zdGFuY2UgPSBuZXcgZmV1X2NvbnRlbnRfYXR0cmlidXRlX2hlbHBlcigpOwogICAgICB9CiAgICAKICAgIHJldHVybiBzZWxmOjokX2luc3RhbmNlOwogIH0KCgogIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uICZnZXRfZmV1KCkKICB7CiAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICByZXR1cm4gJGdDbXMtPm1vZHVsZXNbJ0Zyb250RW5kVXNlcnMnXVsnb2JqZWN0J107CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9hdHRyaWJ1dGVfdGFicygpCiAgewogICAgJGZldSA9IHNlbGY6OmdldF9mZXUoKTsKICAgICRkYXRhID0gYXJyYXkoKTsKICAgICRkYXRhWyd2aXNpdG9ycyddID0gYXJyYXkoJ3Byb21wdCc9PiRmZXUtPkxhbmcoJ3Zpc2l0b3JzX3RhYicpLCdwZXJtaXNzaW9uJz0+JycpOwogICAgcmV0dXJuICRkYXRhOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfYXR0cmlidXRlX2lucHV0KCRhdHRyLCRjb250ZW50X29iaiwkYWRkaW5nKQogIHsKICAgICRnQ21zID0gY21zbXMoKTsKICAgICRmZXUgPSBzZWxmOjpnZXRfZmV1KCk7CgogICAgc3dpdGNoKCAkYXR0ci0+Z2V0X25hbWUoKSApCiAgICB7CiAgICBjYXNlICdmZXVfZ3JvdXBzJzoKICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2FueV9sb2dnZWRfaW5fdXNlcicpPT4nLTEnKTsKICAgICAgJHQyID0gJGZldS0+R2V0R3JvdXBMaXN0KCk7CiAgICAgIGZvcmVhY2goICR0MiBhcyAkayA9PiAkdiApCgl7CgkgICR0bXBbJGtdID0gJHY7Cgl9CiAgICAgIGlmKCBpc19hcnJheSgkdG1wKSApCgl7CgkgICRzZWwgPSBhcnJheSgpOwoJICAkc2VsX3N0ciA9ICRjb250ZW50X29iai0+Z2V0X3Byb3BlcnR5X3ZhbHVlKCdmZXVfZ3JvdXBzJyk7CgkgIGlmKCAkc2VsX3N0ciApCgkgICAgewoJICAgICAgJHNlbCA9IGV4cGxvZGUoJywnLCRzZWxfc3RyKTsKCSAgICB9CgkgICRwcm9tcHQgPSAkZmV1LT5MYW5nKCdmZXVfZ3JvdXBzX3Byb21wdCcpOwoJICAkZmllbGQgPSAkZmV1LT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJycsJ2ZldV9ncm91cHNbXScsJHRtcCwkc2VsLAoJCQkJCSAgICAgICBtaW4oY291bnQoJHRtcCksNSkpOwoJICByZXR1cm4gYXJyYXkoJHByb21wdC4nOicsJGZpZWxkKTsKCX0KICAgICAgYnJlYWs7CgogICAgY2FzZSAnZmV1X3JlZGlyZWN0JzoKICAgICAgLy8gZ2V0IGEgbGlzdCBvZiBwYWdlcwogICAgICAkdmFsID0gJGNvbnRlbnRfb2JqLT5nZXRfcHJvcGVydHlfdmFsdWUoJ2ZldV9yZWRpcmVjdCcsLTEpOwogICAgICAkcHJvbXB0ID0gJGZldS0+TGFuZygnZmV1X3JlZGlyZWN0X3Byb21wdCcpOwogICAgICAkZmllbGQgPSBDbXNDb250ZW50T3BlcmF0aW9uczo6Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJHZhbCwnJywnZmV1X3JlZGlyZWN0Jyk7CiAgICAgIHJldHVybiBhcnJheSgkcHJvbXB0Lic6JywkZmllbGQpOwogICAgICBicmVhazsKICAgIH0KICAgIAogIH0KCgogIGZ1bmN0aW9uIGdldF9hdHRyaWJ1dGVzX2Zyb21fZm9ybWRhdGEoJGNvbnRlbnRfb2JqLCRwYXJhbXMpCiAgewogICAgJHByb3BzID0gYXJyYXkoJ2ZldV9ncm91cHMnLCdmZXVfcmVkaXJlY3QnKTsKICAgIGZvcmVhY2goICRwcm9wcyBhcyAkb25lICkKICAgICAgewoJc3dpdGNoKCAkb25lICkKCSAgewoJICBjYXNlICdmZXVfZ3JvdXBzJzoKCSAgICBpZiggaXNzZXQoJHBhcmFtc1skb25lXSkgKQoJICAgICAgewoJCSRzdHIgPSBpbXBsb2RlKCcsJywkcGFyYW1zWyRvbmVdKTsKCQkkY29udGVudF9vYmotPnNldF9wcm9wZXJ0eV92YWx1ZSgkb25lLCRzdHIpOwoJICAgICAgfQoJICAgIGVsc2UKCSAgICAgIHsKCQkkY29udGVudF9vYmotPnNldF9wcm9wZXJ0eV92YWx1ZSgkb25lLCcnKTsKCSAgICAgIH0KCSAgICBicmVhazsKCSAgICAKCSAgZGVmYXVsdDoKCSAgICBpZiggaXNzZXQoJHBhcmFtc1skb25lXSkgKQoJICAgICAgewoJCSRjb250ZW50X29iai0+c2V0X3Byb3BlcnR5X3ZhbHVlKCRvbmUsJHBhcmFtc1skb25lXSk7CgkgICAgICB9CgkgIH0KICAgICAgfQogIH0KICAKCn0gLy8gZW5kIG9mIGNsYXNzCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_protected_page.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfcHJvdGVjdGVkX3BhZ2UgZXh0ZW5kcyBDb250ZW50CnsKICBwcml2YXRlICRfZGF0YTsKICBjb25zdCBGRVVfUFJPUE5BTUUgPSAnX19mZXVfZGF0ZV9fJzsgLy8gb29wczogdHlwbywgY2FuJ3QgY2hhbmdlIGl0IG5vdyB0aG91Z2guCiAgY29uc3QgVEFCX0ZFVSA9ICdjY19mZXUnOwoKICBwcml2YXRlIGZ1bmN0aW9uIF9nZXREYXRhKCkKICB7CiAgICBpZiggIWlzX2FycmF5KCR0aGlzLT5fZGF0YSkgKSB7CiAgICAgICR0bXAgPSAkdGhpcy0+R2V0UHJvcGVydHlWYWx1ZShzZWxmOjpGRVVfUFJPUE5BTUUpOwogICAgICAkdGhpcy0+X2RhdGEgPSBhcnJheSgpOwogICAgICBpZiggJHRtcCApICR0aGlzLT5fZGF0YSA9IHVuc2VyaWFsaXplKCR0bXApOwogICAgfQogIH0KCiAgcHJpdmF0ZSBmdW5jdGlvbiBfc2V0RGF0YSgpCiAgewogICAgaWYoIGlzX2FycmF5KCR0aGlzLT5fZGF0YSkgJiYgY291bnQoJHRoaXMtPl9kYXRhKSApIHsKICAgICAgJHRoaXMtPlNldFByb3BlcnR5VmFsdWUoc2VsZjo6RkVVX1BST1BOQU1FLHNlcmlhbGl6ZSgkdGhpcy0+X2RhdGEpKTsKICAgIH0KICAgIGVsc2UgewogICAgICAkdGhpcy0+U2V0UHJvcGVydHlWYWx1ZShzZWxmOjpGRVVfUFJPUE5BTUUsJycpOwogICAgfQogIH0KCiAgcHJpdmF0ZSBmdW5jdGlvbiBfaXNBdXRob3JpemVkKCkKICB7CiAgICAvLyBkbyB3ZSBoYXZlIGFjY2VzcyB0byBpdD8KICAgICR0aGlzLT5fZ2V0RGF0YSgpOwoKICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgaWYoICEkZmV1ICkgcmV0dXJuIEZBTFNFOwogICAgJHVpZCA9ICRmZXUtPkxvZ2dlZEluSWQoKTsKICAgIGlmKCAhJHVpZCApIHJldHVybiBGQUxTRTsgLy8gbm90IGxvZ2dlZCBpbiBpcyBhIGZhbHNlLgoKICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgfHwgY291bnQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgPT0gMCApIHsKICAgICAgcmV0dXJuIFRSVUU7CiAgICAgIC8vIG5vIG1lbWJlciBncm91cHMgc2VsZWN0ZWQsIGJ1dCBzdGlsbCBsb2dnZWQgaW4sIHdlIGNhbiBkaXNwbGF5IHRoaXMuCiAgICB9CgogICAgLy8gZ2V0IG1lbWJlciBncm91cHMgYW5kIGRvIGEgY3Jvc3MgcmVmZXJlbmNlLgogICAgJGdyb3VwcyA9ICRmZXUtPkdldE1lbWJlckdyb3Vwc0FycmF5KCR1aWQpOwogICAgaWYoICFpc19hcnJheSgkZ3JvdXBzKSB8fCBjb3VudCgkZ3JvdXBzKSA9PSAwICkgcmV0dXJuIEZBTFNFOwogICAgJG1lbWJlcmdyb3VwcyA9IGNnZV9hcnJheTo6ZXh0cmFjdF9maWVsZCgkZ3JvdXBzLCdncm91cGlkJyk7CiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKTsgJGkrKyApIHsKICAgICAgaWYoIGluX2FycmF5KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ11bJGldLCRtZW1iZXJncm91cHMpICkgcmV0dXJuIFRSVUU7CiAgICB9CgogICAgLy8gbm8gbWF0Y2guCiAgICByZXR1cm4gRkFMU0U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gRnJpZW5kbHlOYW1lKCkKICB7CiAgICByZXR1cm4gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKS0+TGFuZyhnZXRfY2xhc3MoKSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gR2V0TW9kaWZpZWREYXRlKCkKICB7CiAgICAvLyBvbiBmcm9udGVuZCByZXF1ZXN0cyB0aGlzIHdpbGwgZm9yY2UgdGhlIHRlbXBsYXRlIHRvIGJlIHJlY29tcGlsZWQKICAgIC8vIGFuZCB0aGVyZWZvcmUgZXZhbHVhdGlvbiB0byBiZSBkb25lIGZvciBlYWNoIHJlcXVlc3QuCiAgICBpZiggY21zbXMoKS0+aXNfZnJvbnRlbmRfcmVxdWVzdCgpICkgcmV0dXJuIHRpbWUoKTsKICAgIHJldHVybiBwYXJlbnQ6OkdldE1vZGlmaWVkRGF0ZSgpOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIFNldFByb3BlcnRpZXMoKQogIHsKICAgIHBhcmVudDo6U2V0UHJvcGVydGllcygpOwogICAgJHRoaXMtPlJlbW92ZVByb3BlcnR5KCdjYWNoYWJsZScsZmFsc2UpOwogICAgJGNhcHRjaGEgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NhcHRjaGEnKTsKICAgIGlmKCB2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sJzEuOTgnKSA8IDAgKSB7CiAgICAgICAgJHRoaXMtPkFkZENvbnRlbnRQcm9wZXJ0eSgnX19mZXVfZ3JvdXBzX18nLDEpOwogICAgICAgIGlmKCBpc19vYmplY3QoJGNhcHRjaGEpICkgJHRoaXMtPkFkZENvbnRlbnRQcm9wZXJ0eSgnX19mZXVfY2FwdGNoYV9fJywyKTsKICAgIH0KICAgIGVsc2UgewogICAgICAkdGhpcy0+QWRkUHJvcGVydHkoJ19fZmV1X2dyb3Vwc19fJywxLHNlbGY6OlRBQl9GRVUpOwogICAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSApICR0aGlzLT5BZGRQcm9wZXJ0eSgnX19mZXVfY2FwdGNoYV9fJywxLHNlbGY6OlRBQl9GRVUpOwogICAgfQogIH0KCiAgcHVibGljIGZ1bmN0aW9uIFNob3coJHBhcmFtID0gJycpCiAgewogICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICBpZiggISRmZXUgKSByZXR1cm47IC8vIHRvZG86IHRocm93IGV4Y2VwdGlvbiBoZXJlLgoKICAgICRhY3Rpb24gPSAkZmV1LT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9hY3Rpb24nLCdzaG93bG9naW4nKTsKICAgICRzbWFydHktPmFzc2lnbignc2hvd193aGF0JywkcGFyYW0sVFJVRSk7CiAgICAkYXV0aCA9ICR0aGlzLT5faXNBdXRob3JpemVkKCk/MTowOwogICAgaWYoICRhdXRoICkgJHNtYXJ0eS0+YXNzaWduKCdvdXRwdXQnLHBhcmVudDo6U2hvdygkcGFyYW0pKTsKICAgICRzbWFydHktPmFzc2lnbignZmV1X2F1dGhvcml6ZWQnLCRhdXRoLFRSVUUpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdhY3Rpb24nLCRhY3Rpb24sVFJVRSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZldV9wYWdlJywkZmV1LT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9yZWRpcmVjdHRvJywtMSksVFJVRSk7CiAgICAkdGhpcy0+X2dldERhdGEoKTsKICAgICRzbWFydHktPmFzc2lnbignZG9jYXB0Y2hhJywxLFRSVUUpOwogICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnY2FwdGNoYSddKSAmJiAkdGhpcy0+X2RhdGFbJ2NhcHRjaGEnXSA9PSAwICkgJHNtYXJ0eS0+YXNzaWduKCdkb2NhcHRjaGEnLDAsVFJVRSk7CgogICAgJHRwbCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmZXUtPkdldE1vZHVsZVBhdGgoKS4nL3RlbXBsYXRlcy9wcm90ZWN0ZWRjb250ZW50LnRwbCcpOwogICAgcmV0dXJuICRmZXUtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCR0cGwpOwogIH0KCiAgLy8gQ01TTVMgMS4xMS54IGFuZCBwcmV2aW91cyBvbmx5CiAgcHVibGljIGZ1bmN0aW9uIFRhYk5hbWVzKCkKICB7CiAgICAkcmVzID0gcGFyZW50OjpUYWJOYW1lcygpOwogICAgaWYoIGNoZWNrX3Blcm1pc3Npb24oZ2V0X3VzZXJpZCgpLCdNYW5hZ2UgQWxsIENvbnRlbnQnKSApIHsKICAgICAgJHJlc1tdID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKS0+TGFuZygnZnJvbnRlbmRfYWNjZXNzJyk7CiAgICB9CiAgICByZXR1cm4gJHJlczsKICB9CgogIC8vIENNU01TIDEuMTEueCBhbmQgcHJldmlvdXMgb25seQogIHB1YmxpYyBmdW5jdGlvbiBFZGl0QXNBcnJheSgkYWRkaW5nID0gZmFsc2UsICR0YWIgPSAwLCAkc2hvd2FkbWluID0gZmFsc2UpCiAgewogICAgJG5hbWVzID0gJHRoaXMtPlRhYk5hbWVzKCk7CiAgICAkc3RyID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKS0+TGFuZygnZnJvbnRlbmRfYWNjZXNzJyk7CiAgICBpZiggIWlzc2V0KCRuYW1lc1skdGFiXSkgfHwgJG5hbWVzWyR0YWJdICE9ICRzdHIgKSByZXR1cm4gcGFyZW50OjpFZGl0QXNBcnJheSgkYWRkaW5nLCR0YWIsJHNob3dhZG1pbik7CgogICAgJHJldCA9IGFycmF5KCk7CiAgICAvLyB0aGUgcGVybWlzc2lvbnMgdGFiLgogICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJGdyb3VwbGlzdCA9IGFycmF5X2ZsaXAoJGZldS0+R2V0R3JvdXBMaXN0KCkpOwoKICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKSApIHsKICAgICAgJHRtcCA9IGV4cGxvZGUoJywnLCRmZXUtPkdldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX2dyb3VwcycpKTsKICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgJHRoaXMtPl9kYXRhWydncm91cHMnXSA9ICR0bXA7CiAgICB9CiAgICAkc2l6ZSA9IG1pbihjb3VudCgkZ3JvdXBsaXN0KSwxMCk7CiAgICAkdG1wID0gYXJyYXkoJGZldS0+TGFuZygnZ3JvdXBzJykuJzonKTsKICAgICRvcHQgPSAnPHNlbGVjdCBuYW1lPSJfX2ZldV9ncm91cHNfX1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IicuJHNpemUuJyI+JzsKICAgIGZvcmVhY2goICRncm91cGxpc3QgYXMgJGdpZCA9PiAkZ25hbWUgKSB7CiAgICAgICRzZWxlY3RlZCA9ICcnOwogICAgICBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgJiYgaW5fYXJyYXkoJGdpZCwkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKSApICRzZWxlY3RlZD0nc2VsZWN0ZWQ9InNlbGVjdGVkIiAnOwogICAgICAkb3B0IC49ICc8b3B0aW9uICcuJHNlbGVjdGVkLid2YWx1ZT0iJy4kZ2lkLiciPicuJGduYW1lLic8L29wdGlvbj4nOwogICAgfQogICAgJG9wdCAuPSAnPC9zZWxlY3Q+PGJyLz4nLiRmZXUtPkxhbmcoJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0Jyk7CiAgICAkdG1wW10gPSAkb3B0OwogICAgJHJldFtdID0gJHRtcDsKCiAgICAkY2FwdGNoYSA9ICRmZXUtPkdldE1vZHVsZUluc3RhbmNlKCdDYXB0Y2hhJyk7CiAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSApIHsKICAgICAgJHZhbCA9IChpc3NldCgkdGhpcy0+X2RhdGFbJ2NhcHRjaGEnXSkpPyR0aGlzLT5fZGF0YVsnY2FwdGNoYSddOjE7CiAgICAgICR0bXAgPSBhcnJheSgkZmV1LT5MYW5nKCdlbmFibGVfY2FwdGNoYScpLic6Jyk7CiAgICAgICR0bXBbXSA9ICRmZXUtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bignJywnX19mZXVfY2FwdGNoYV9fJywkdmFsKS4nPGJyLz4nLiRmZXUtPkxhbmcoJ2luZm9fZW5hYmxlX2NhcHRjaGEnKTsKICAgICAgJHJldFtdID0gJHRtcDsKICAgIH0KICAgIHJldHVybiAkcmV0OwogIH0KCiAgLy8gQ01TTVMgMi4wCiAgcHVibGljIGZ1bmN0aW9uIEdldFRhYk5hbWVzKCkKICB7CiAgICAkb3V0ID0gcGFyZW50OjpHZXRUYWJOYW1lcygpOwogICAgaWYoICFjaGVja19wZXJtaXNzaW9uKGdldF91c2VyaWQoKSwnTWFuYWdlIEFsbCBDb250ZW50JykgKSB7CiAgICAgIGlmKCBpc3NldCgkb3V0W3NlbGY6OlRBQl9GRVVdKSApIHVuc2V0KCRvdXRbc2VsZjo6VEFCX0ZFVV0pOwogICAgfQogICAgZWxzZSB7CiAgICAgIGlmKCBpc3NldCgkb3V0W3NlbGY6OlRBQl9GRVVdKSApICRvdXRbc2VsZjo6VEFCX0ZFVV0gPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpLT5MYW5nKCdmcm9udGVuZF9hY2Nlc3MnKTsKICAgIH0KICAgIHJldHVybiAkb3V0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIEZpbGxQYXJhbXMoJHBhcmFtcywkZWRpdGluZyA9IGZhbHNlKQogIHsKICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ19fZmV1X2dyb3Vwc19fJ10pICkgewogICAgICAkdGhpcy0+X2RhdGFbJ2dyb3VwcyddID0gJHBhcmFtc1snX19mZXVfZ3JvdXBzX18nXTsKICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgewogICAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKTsKICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydfX2ZldV9jYXB0Y2hhX18nXSkgKSAkdGhpcy0+X2RhdGFbJ2NhcHRjaGEnXSA9ICRwYXJhbXNbJ19fZmV1X2NhcHRjaGFfXyddOwogICAgcGFyZW50OjpGaWxsUGFyYW1zKCRwYXJhbXMsJGVkaXRpbmcpOwogICAgJHRoaXMtPlNldENhY2hhYmxlKGZhbHNlKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBTaG93SW5NZW51KCkKICB7CiAgICAkcmVzID0gcGFyZW50OjpTaG93SW5NZW51KCk7CiAgICBpZiggISRyZXMgKSByZXR1cm4gJHJlczsKICAgIHJldHVybiAkdGhpcy0+X2lzQXV0aG9yaXplZCgpOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIFNhdmUoKQogIHsKICAgICR0aGlzLT5fc2V0RGF0YSgpOwogICAgcmV0dXJuIHBhcmVudDo6U2F2ZSgpOwogIH0KCiAgLy8gcG9zc2libGUgZm9yIDEuMTEueCwgcmVxdWlyZWQgZm9yIENNU01TIDIuMAogIHByb3RlY3RlZCBmdW5jdGlvbiBkaXNwbGF5X3NpbmdsZV9lbGVtZW50KCRvbmUsJGFkZGluZykKICB7CiAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwoKICAgICAgc3dpdGNoKCAkb25lICkgewogICAgICBjYXNlICdfX2ZldV9ncm91cHNfXyc6CiAgICAgICAgICAkcmV0ID0gYXJyYXkoKTsKICAgICAgICAgIC8vIHRoZSBwZXJtaXNzaW9ucyB0YWIuCiAgICAgICAgICAkZ3JvdXBsaXN0ID0gYXJyYXlfZmxpcCgkZmV1LT5HZXRHcm91cExpc3QoKSk7CgogICAgICAgICAgJHRoaXMtPl9nZXREYXRhKCk7CiAgICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgewogICAgICAgICAgICAgICR0bXAgPSBleHBsb2RlKCcsJywkZmV1LT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9ncm91cHMnKSk7CiAgICAgICAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgJHRoaXMtPl9kYXRhWydncm91cHMnXSA9ICR0bXA7CiAgICAgICAgICB9CiAgICAgICAgICAkc2l6ZSA9IG1pbihjb3VudCgkZ3JvdXBsaXN0KSwxMCk7CiAgICAgICAgICAkdG1wID0gYXJyYXkoJGZldS0+TGFuZygnZ3JvdXBzJykuJzonKTsKICAgICAgICAgICRvcHQgPSAnPHNlbGVjdCBuYW1lPSJfX2ZldV9ncm91cHNfX1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IicuJHNpemUuJyI+JzsKICAgICAgICAgIGZvcmVhY2goICRncm91cGxpc3QgYXMgJGdpZCA9PiAkZ25hbWUgKSB7CiAgICAgICAgICAgICAgJHNlbGVjdGVkID0gJyc7CiAgICAgICAgICAgICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICYmIGluX2FycmF5KCRnaWQsJHRoaXMtPl9kYXRhWydncm91cHMnXSkgKSAkc2VsZWN0ZWQ9J3NlbGVjdGVkPSJzZWxlY3RlZCIgJzsKICAgICAgICAgICAgICAkb3B0IC49ICc8b3B0aW9uICcuJHNlbGVjdGVkLid2YWx1ZT0iJy4kZ2lkLiciPicuJGduYW1lLic8L29wdGlvbj4nOwogICAgICAgICAgfQogICAgICAgICAgJG9wdCAuPSAnPC9zZWxlY3Q+PGJyLz4nLiRmZXUtPkxhbmcoJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0Jyk7CiAgICAgICAgICAkdG1wW10gPSAkb3B0OwogICAgICAgICAgcmV0dXJuICR0bXA7CgogICAgICBjYXNlICdfX2ZldV9jYXB0Y2hhX18nOgogICAgICAgICAgJGNhcHRjaGEgPSAkZmV1LT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwogICAgICAgICAgaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgKSB7CiAgICAgICAgICAgICAgJHZhbCA9IChpc3NldCgkdGhpcy0+X2RhdGFbJ2NhcHRjaGEnXSkpPyR0aGlzLT5fZGF0YVsnY2FwdGNoYSddOjE7CiAgICAgICAgICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2VuYWJsZV9jYXB0Y2hhJykuJzonKTsKICAgICAgICAgICAgICAkdG1wW10gPSAkZmV1LT5DcmVhdGVJbnB1dFllc05vRHJvcGRvd24oJycsJ19fZmV1X2NhcHRjaGFfXycsJHZhbCkuJzxici8+Jy4kZmV1LT5MYW5nKCdpbmZvX2VuYWJsZV9jYXB0Y2hhJyk7CiAgICAgICAgICAgICAgcmV0dXJuICR0bXA7CiAgICAgICAgICB9CiAgICAgICAgICBicmVhazsKCiAgICAgIGRlZmF1bHQ6CiAgICAgICAgICByZXR1cm4gcGFyZW50OjpkaXNwbGF5X3NpbmdsZV9lbGVtZW50KCRvbmUsJGFkZGluZyk7CiAgICAgIH0KICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_pure_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfcHVyZV9jb25zdW1lciBpbXBsZW1lbnRzIGZldV9hdXRoX2NvbnN1bWVyCnsKICBwdWJsaWMgZnVuY3Rpb24gaXNfYXV0aGVudGljYXRlZCgpIHsKICAgIHJldHVybiBGQUxTRTsKICB9CgogIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBoYXNfY2FwYWJpbGl0eSgpCiAgewogICAgJGZsYWcgPSBmdW5jX2dldF9hcmdzKCk7CiAgICBpZiggIWlzX2FycmF5KCRmbGFnKSApICRmbGFnID0gYXJyYXkoJGZsYWcpOwogICAgZm9yZWFjaCggJGZsYWcgYXMgJG9uZSApIHsKICAgICAgaWYoIGluX2FycmF5KCRvbmUsJHRoaXMtPmdldF9jYXBhYmlsaXRpZXMoKSkgKSByZXR1cm4gVFJVRTsKICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2FwYWJpbGl0aWVzKCkKICB7CiAgICByZXR1cm4gYXJyYXkoKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jaGFuZ2VzZXR0aW5nc19kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICB7CiAgICByZXR1cm47CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJfaW5mbygpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jb25uZWN0aW5nX3Byb3BlcnR5X25hbWUoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdW5pcXVlX2lkZW50aWZpZXIoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbWVtYmVyc2hpcCgkdXNlcmlkKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZGVmYXVsdF9ncm91cHMoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWUoJHVpZCA9IG51bGwpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF91c2VybmFtZV9wcm9tcHQoKQogIHsKICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgIHJldHVybiAkZmV1LT5MYW5nKCdwcm9tcHRfdXNlcm5hbWUnKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZV91c2VybmFtZSgkdXNlcm5hbWUsJGNoZWNrX2VtYWlsX2FkZHIgPSBGQUxTRSwkdWlkID0gLTEpCiAgewogICAgcmV0dXJuIFRSVUU7CiAgfQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_smarty.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfc21hcnR5CnsKICAgIHByaXZhdGUgJF9tb2R1bGU7CiAgICBwcml2YXRlICRfcHJvcGVydGllczsKCgogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCYkbW9kdWxlKQogICAgewogICAgICAgICR0aGlzLT5fbW9kdWxlID0mICRtb2R1bGU7CiAgICB9CgogICAgZnVuY3Rpb24gZ2V0X3VzZXJpZCgkdXNlcm5hbWUsJGFzc2lnbiA9ICcnKQogICAgewogICAgICAgICR1c2VybmFtZSA9IHRyaW0oJHVzZXJuYW1lKTsKICAgICAgICAkdWlkID0gbnVsbDsKICAgICAgICBpZiggJHVzZXJuYW1lICkgJHVpZCA9IChpbnQpJHRoaXMtPl9tb2R1bGUtPkdldFVzZXJJRCgkdXNlcm5hbWUpOwogICAgICAgIGlmKCAkYXNzaWduICkgewogICAgICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbih0cmltKCRhc3NpZ24pLCR1aWQpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdWlkOwogICAgfQoKICAgIGZ1bmN0aW9uIGdldF91c2VyaW5mbygkdWlkLCRhc3NpZ24gPSAnJykKICAgIHsKICAgICAgICAkdWlkID0gKGludCkkdWlkOwogICAgICAgIGlmKCAkdWlkID4gMCApIHsKICAgICAgICAgICAgaWYoIGlzX29iamVjdCgkdGhpcy0+X21vZHVsZSkgKSB7CiAgICAgICAgICAgICAgICAkdWluZm8gPSAkdGhpcy0+X21vZHVsZS0+R2V0VXNlckluZm8oJHVpZCxUUlVFKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHVpbmZvKSB8fCBjb3VudCgkdWluZm8pID09IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoICR1aW5mb1swXSA9PSBGQUxTRSApIHsKCiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkdWluZm9bMV1bJ2Zwcm9wcyddKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0bXAgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCggJHVpbmZvWzFdWydmcHJvcHMnXSBhcyAkb25lcHJvcCApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdG1wWyRvbmVwcm9wWyd0aXRsZSddXSA9ICRvbmVwcm9wWydkYXRhJ107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQoJHVpbmZvWzFdWydmcHJvcHMnXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdWluZm9bMV1bJ3Byb3BzJ10gPSAkdG1wOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiggJGFzc2lnbiApIHsKICAgICAgICAgICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24odHJpbSgkYXNzaWduKSwkdWluZm9bMV0pOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJHVpbmZvWzFdOwogICAgfQoKICAgIGZ1bmN0aW9uIGdldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduID0gJycpCiAgICB7CiAgICAgICAgaWYoICFlbXB0eSgkZ3JvdXBuYW1lKSApIHsKICAgICAgICAgICAgaWYoICFpc19vYmplY3QoJHRoaXMtPl9tb2R1bGUpICkgewoKICAgICAgICAgICAgICAgICRnaWQgPSAkdGhpcy0+X21vZHVsZS0+R2V0R3JvdXBJRCgkZ3JvdXBuYW1lKTsKICAgICAgICAgICAgICAgIGlmKCAkZ2lkICkgewogICAgICAgICAgICAgICAgICAgICR1c2Vyc2Z1bGwgPSAkdGhpcy0+X21vZHVsZS0+R2V0VXNlcnNJbkdyb3VwKCRnaWQpOwoKICAgICAgICAgICAgICAgICAgICAkdXNlcnMgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgICAgIGZvcmVhY2goICR1c2Vyc2Z1bGwgYXMgJG9uZXVzZXIgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR1c2Vyc1tdID0gYXJyYXkoJ2lkJz0+JG9uZXVzZXJbJ2lkJ10sJ3VzZXJuYW1lJz0+JG9uZXVzZXJbJ3VzZXJuYW1lJ10pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYoICRhc3NpZ24gKSB7CiAgICAgICAgICAgICRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJHVzZXJzKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gZ2V0X3VzZXJfZXhwaXJ5KCR1aWQsJGFzc2lnbiA9ICcnKQogICAgewogICAgICAgICRyZXMgPSBudWxsOwogICAgICAgIGlmKCAkdWlkID4gMCApIHsKICAgICAgICAgICAgaWYoIGlzX29iamVjdCgkdGhpcy0+X21vZHVsZSkgKSB7CiAgICAgICAgICAgICAgICAkcmVzID0gJHRoaXMtPl9tb2R1bGUtPkdldEV4cGlyeURhdGUoJHVpZCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKCAkYXNzaWduICkgewogICAgICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigkYXNzaWduLCRyZXMpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBmdW5jdGlvbiB1c2VyX2V4cGlyZWQoJHVpZCwkYXNzaWduID0gJycpCiAgICB7CiAgICAgICAgaWYoIGVtcHR5KCR1aWQpICkgcmV0dXJuOwogICAgICAgIGlmKCAhaXNfb2JqZWN0KCR0aGlzLT5fbW9kdWxlKSApIHJldHVybjsKCiAgICAgICAgJHJlcyA9ICR0aGlzLT5fbW9kdWxlLT5Jc0FjY291bnRFeHBpcmVkKCR1aWQpOwoKICAgICAgICBpZiggJGFzc2lnbiApIHsKICAgICAgICAgICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJGFzc2lnbiwkcmVzKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBmdW5jdGlvbiBnZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbiA9ICcnKQogICAgewogICAgICAgICRyZXMyID0gbnVsbDsKICAgICAgICB0cnkgewogICAgICAgICAgICAkdWlkID0gKGludCkkdWlkOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdhJyk7CiAgICAgICAgICAgIGlmKCBlbXB0eSgkYXNzaWduKSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2InKTsKICAgICAgICAgICAgaWYoICFpc19vYmplY3QoJHRoaXMtPl9tb2R1bGUpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignYycpOwoKICAgICAgICAgICAgJHJlcyA9ICR0aGlzLT5fbW9kdWxlLT5HZXRVc2VyUHJvcGVydGllcygkdWlkKTsKICAgICAgICAgICAgaWYoICEkcmVzICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignZCcpOwoKICAgICAgICAgICAgJHJlczIgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkcmVzIGFzICRvbmUgKSB7CiAgICAgICAgICAgICAgICAkcmVzMlskb25lWyd0aXRsZSddXSA9ICRvbmVbJ2RhdGEnXTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCggRXhjZXB0aW9uICRlICkgewogICAgICAgIH0KCiAgICAgICAgaWYoICRhc3NpZ24gKSB7CiAgICAgICAgICAgICRzbWFydHkgPSBjbXNtcygpLT5HZXRTbWFydHkoKTsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJHJlczIpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHJldHVybiAkcmVzMjsKICAgIH0KCiAgICBmdW5jdGlvbiBnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduID0gJycpCiAgICB7CiAgICAgICAgJHJlcyA9IG51bGw7CgogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmKCAhaXNfb2JqZWN0KCR0aGlzLT5fbW9kdWxlKSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2EnKTsKICAgICAgICAgICAgaWYoICR0aGlzLT5fcHJvcGVydGllcyA9PSBudWxsICkgewogICAgICAgICAgICAgICAgJHRoaXMtPl9wcm9wZXJ0aWVzID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+X21vZHVsZS0+R2V0UHJvcGVydHlEZWZucygpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHRtcCBhcyAkb25lICkgewogICAgICAgICAgICAgICAgICAgIGlmKCAkb25lWyd0eXBlJ10gPT0gNCB8fCAkb25lWyd0eXBlJ10gPT0gNSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHRtcDIgPSAkdGhpcy0+X21vZHVsZS0+R2V0U2VsZWN0T3B0aW9ucygkb25lWyduYW1lJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAkb25lWydvcHRpb25zJ10gPSBhcnJheSgpOwogICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoKCAkdG1wMiBhcyAkayA9PiAkdiApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRvbmVbJ29wdGlvbnMnXVskdl0gPSAkazsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+X3Byb3BlcnRpZXNbJG9uZVsnbmFtZSddXSA9ICRvbmU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9wcm9wZXJ0aWVzWyRwcm9wbmFtZV0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignYicpOwoKICAgICAgICAgICAgaWYoICgkdGhpcy0+X3Byb3BlcnRpZXNbJHByb3BuYW1lXVsndHlwZSddICE9IDQgJiYKICAgICAgICAgICAgJHRoaXMtPl9wcm9wZXJ0aWVzWyRwcm9wbmFtZV1bJ3R5cGUnXSAhPSA1KSB8fAogICAgICAgICAgICAhaXNzZXQoJHRoaXMtPl9wcm9wZXJ0aWVzWyRwcm9wbmFtZV1bJ29wdGlvbnMnXSkgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdjJyk7CgogICAgICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fcHJvcGVydGllc1skcHJvcG5hbWVdWydvcHRpb25zJ11bJHByb3B2YWx1ZV0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignZCcpOwoKICAgICAgICAgICAgJHJlcyA9ICR0aGlzLT5fcHJvcGVydGllc1skcHJvcG5hbWVdWydvcHRpb25zJ11bJHByb3B2YWx1ZV07CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgfQoKICAgICAgICBpZiggJGFzc2lnbiApIHsKICAgICAgICAgICAgJHNtYXJ0eSA9IGNtc21zKCktPkdldFNtYXJ0eSgpOwogICAgICAgICAgICAkc21hcnR5LT5hc3NpZ24oJGFzc2lnbiwkcmVzKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBmdW5jdGlvbiBnZXRfbXVsdGlzZWxlY3RfdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduID0gJycpCiAgICB7CiAgICAgICAgJHZhbHVlcyA9IGV4cGxvZGUoJywnLCRwcm9wdmFsdWUpOwogICAgICAgICRyZXMgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2goICR2YWx1ZXMgYXMgJG9uZSApIHsKICAgICAgICAgICAgJHJlc1tdID0gJHRoaXMtPmdldF9kcm9wZG93bl90ZXh0KCRwcm9wbmFtZSwkb25lKTsKICAgICAgICB9CgogICAgICAgIGlmKCAkYXNzaWduICkgewogICAgICAgICAgICAkc21hcnR5ID0gY21zbXMoKS0+R2V0U21hcnR5KCk7CiAgICAgICAgICAgICRzbWFydHktPmFzc2lnbigkYXNzaWduLCRyZXMpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIHJldHVybiAkcmVzOwogICAgfQp9CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_std_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfc3RkX2NvbnN1bWVyIGV4dGVuZHMgZmV1X3B1cmVfY29uc3VtZXIKewogIHB1YmxpYyBmdW5jdGlvbiBpc19hdXRoZW50aWNhdGVkKCkKICB7CiAgICAkcmVzID0gJHRoaXMtPmdldF91bmlxdWVfaWRlbnRpZmllcigpOwogICAgaWYoICRyZXMgKSByZXR1cm4gVFJVRTsKICAgIHJldHVybiBGQUxTRTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2FwYWJpbGl0aWVzKCkKICB7CiAgICAkcmVzID0gYXJyYXkoKTsKICAgIC8vJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9MT0dJTjsKICAgIC8vJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9DSEFOR0VTRVRUSU5HUzsKICAgIC8vJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9MT1NUVVNFUk5BTUU7CiAgICAvLyRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRk9SR09UUEFTU1dEOwogICAgLy8kcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0xPR09VVDsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfVVNFU1REQ0hBTkdFU0VUVElOR1M7CiAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0NIQU5HRVBBU1NXRDsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfTElTVEdST1VQUzsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRURJVEdST1VQUzsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRURJVEdST1VQUFJPUFM7CiAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0xJU1RQUk9QUzsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRURJVFBST1BTOwogICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTOwogICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9HUk9VUE1FTUJFUlNISVA7CiAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0RFRkFVTFRHUk9VUFM7CiAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX1VTRVJOQU1FOwogICAgJG1vZCA9IGNnZV91dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfY2hhbmdldXNlcm5hbWUnKSApIHsKICAgICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9DSEFOR0VVU0VSTkFNRTsKICAgIH0KCiAgICByZXR1cm4gJHJlczsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgLy8gdG9kbwogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgLy8gdG9kbwogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jaGFuZ2VzZXR0aW5nc19kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICB7CiAgICAvLyB0b2RvCiAgICByZXR1cm47CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJfaW5mbygpCiAgewogICAgLy8gdG9kbwogICAgc3RhY2tfdHJhY2UoKTsKICAgIGRpZSgnbm90IGltcGxlbWVudGVkJyk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VuaXF1ZV9pZGVudGlmaWVyKCkKICB7CiAgICAkbW9kdWxlID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICRtYW5pcCA9ICRtb2R1bGUtPkdldE1hbmlwdWxhdG9yKCk7CiAgICByZXR1cm4gJG1hbmlwLT5fc3RkX0xvZ2dlZGluSWQoKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKQogIHsKICAgIC8vIHRoaXMgbWV0aG9kIGRvZXNuJ3QgZXhhY3RseSBsaXN0ZW4gdG8gdGhlIGRvY3MuCiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3Vwcyc7CiAgICBpZiggJHdpdGhfY291bnQgKSB7CiAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZy4qLGNvdW50KGIudXNlcmlkKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgZwogICAgICAgICAgICAgICAgTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGIKICAgICAgICAgICAgICAgIE9OIGcuaWQgPSBiLmdyb3VwaWQKICAgICAgICAgICAgICAgIEdST1VQIEJZIGcuaWQnOwogICAgfQogICAgJGRiciA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKICAgIGlmKCBpc19hcnJheSgkZGJyKSAmJiBjb3VudCgkZGJyKSApIHsKICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgIGZvcmVhY2goICRkYnIgYXMgJG9uZSApIHsKCSR0bXBbJG9uZVsnaWQnXV0gPSAkb25lOwogICAgICB9CiAgICAgIHJldHVybiAkdG1wOwogICAgfQogICAgcmV0dXJuICRkYnI7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJpZCkKICB7CiAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgJHEgPSAiU0VMRUNUIGdyb3VwaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSB1c2VyaWQ9PyI7CiAgICAkZGJyID0gJGRiLT5HZXRDb2woJHEsYXJyYXkoJHVzZXJpZCkpOwogICAgcmV0dXJuICRkYnI7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2RlZmF1bHRfZ3JvdXBzKCkKICB7CiAgICAkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICR0bXAgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2dyb3VwJyk7CiAgICBpZiggKGludCkkdG1wID4gMCApIHJldHVybiBhcnJheSgkdG1wKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWUoJGlkZW50aWZpZXIgPSBudWxsKQogIHsKICAgIGlmKCAhJGlkZW50aWZpZXIgKSAkaWRlbnRpZmllciA9ICR0aGlzLT5nZXRfdW5pcXVlX2lkZW50aWZpZXIoKTsKICAgICRyb3cgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJGlkZW50aWZpZXIpOwogICAgaWYoICEkcm93ICkgcmV0dXJuIEZBTFNFOwogICAgcmV0dXJuICRyb3dbJ3VzZXJuYW1lJ107CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJuYW1lX3Byb21wdCgpCiAgewogICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICBpZiggJGZldS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSApIHsKICAgICAgcmV0dXJuICRmZXUtPkxhbmcoJ3Byb21wdF9lbWFpbCcpOwogICAgfQogICAgcmV0dXJuICRmZXUtPkxhbmcoJ3Byb21wdF91c2VybmFtZScpOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZV91c2VybmFtZSgkdXNlcm5hbWUsJGNoZWNrX2VtYWlsX2FkZHIgPSBGQUxTRSwkdWlkID0gLTEpCiAgewogICAgLy8gYSB1c2VybmFtZSBpcyB2YWxpZCwgaWYgaXQncyBsZW5ndGggaXMKICAgIC8vIHdpdGhpbiBjZXJ0YWluIHJhbmdlcywgYW5kIGl0IGNvbnRhaW5zCiAgICAvLyBvbmx5IGFscGhhbnVtZXJpY3MKICAgICRtb2R1bGUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgJG1pbmxlbiA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ21pbl91c2VybmFtZWxlbmd0aCcsIDQgKTsKICAgICRtYXhsZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnLCAyMCApOwogICAgaWYoIHN0cmxlbiggJHVzZXJuYW1lICkgPCAkbWlubGVuIHx8IHN0cmxlbiggJHVzZXJuYW1lICkgPiAkbWF4bGVuICkgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICBpZiAoJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSkgewogICAgICAkdGVzdCA9ICRtb2R1bGUtPklzVmFsaWRFbWFpbEFkZHJlc3MoJHVzZXJuYW1lLCR1aWQsJGNoZWNrX2VtYWlsX2FkZHIpOwogICAgICBpZiAoJHRlc3RbMF0gPT09IGZhbHNlKSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0KICAgIGVsc2UgaWYoICFwcmVnX21hdGNoKCAnL15bYS16QS1aMC05Xy1cc1wuXSokLycsICR1c2VybmFtZSApICkgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICAgIHJldHVybiB0cnVlOwogIH0KfSAvLyBlbmQgb2YgY2xhc3MKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_cache.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovKioKICogdGhpcyBpcyBhbiBpbnRlcm5hbCBjbGFzcyAuLi5kbyBubyB1c2UKICovCgpmaW5hbCBjbGFzcyBmZXVfdXNlcl9jYWNoZQp7CiAgcHJpdmF0ZSBzdGF0aWMgJF91c2VycyA9IGFycmF5KCk7CiAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgogIC8qKgogICAqIEdldCB1c2VyIGluZm9ybWF0aW9uIGZvciBhIHVpZAogICAqIHdpbGwgcmV0dXJuIGRlZXAgaW5mb3JtYXRpb24gaWYgYWxyZWR5IGxvYWRlZAogICAqIHdpbGwgbm90IGxvYWQgYW55IGluZm8KICAgKiovCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdXNlcl9ub2xvYWQoJHVpZCkKICB7CiAgICAkdWlkID0gKGludCkkdWlkOwogICAgaWYoICR1aWQgPD0gMCApIHJldHVybjsKICAgIGlmKCAhaXNzZXQoc2VsZjo6JF91c2Vyc1skdWlkXSkgKSByZXR1cm47CgogICAgcmV0dXJuIHNlbGY6OiRfdXNlcnNbJHVpZF07CiAgfQoKICAvKiogCiAgICogR2V0IHVzZXIgaW5mb3JtYXRpb24gZm9yIGEgdWlkCiAgICogd2lsbCByZXR1cm4gZGVlcCBpbmZvIGlmIGl0IGlzIGFscmVhZHkgbG9hZGVkLCBldmVuIGlmICRkZWVwID0gRkFMU0UKICAgKiB3aWxsIGxvYWQgdGhlIHVzZXIgaWYgbm90IGluIG1lbW9yeQogICAqKi8KICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF91c2VyKCR1aWQsJGRlZXAgPSBGQUxTRSkKICB7CiAgICAkdWlkID0gKGludCkkdWlkOwogICAgaWYoICR1aWQgPD0gMCApIHJldHVybjsKICAgIGlmKCAhaXNzZXQoc2VsZjo6JF91c2Vyc1skdWlkXSkgfHwgKCRkZWVwICYmICFpc3NldChzZWxmOjokX3VzZXJzWyR1aWRdWydmcHJvcHMnXSkpICkgewogICAgICBzZWxmOjpsb2FkX3VzZXJzKGFycmF5KCR1aWQpLCRkZWVwKTsKICAgIH0KICAgIHJldHVybiBzZWxmOjpnZXRfdXNlcl9ub2xvYWQoJHVpZCk7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHNldF91c2VyKCR1aW5mbykKICB7CiAgICBpZiggIWlzX2FycmF5KCR1aW5mbykgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggIWlzc2V0KCR1aW5mb1snaWQnXSkgKSByZXR1cm4gRkFMU0U7CiAgICAkdWlkID0gKGludCkkdWluZm9bJ2lkJ107CiAgICBpZiggJHVpZCA8PSAwICkgcmV0dXJuIEZBTFNFOwogICAgaWYoICFpc3NldCgkdWluZm9bJ3VzZXJuYW1lJ10pICkgcmV0dXJuIEZBTFNFOwoKICAgIHNlbGY6OiRfdXNlcnNbJHVpZF0gPSAkdWluZm87CiAgICByZXR1cm4gVFJVRTsKICB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2V0X25ld191c2VyKCR1aW5mbykKICB7CiAgICBpZiggIWlzX2FycmF5KCR1aW5mbykgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggIWlzc2V0KCR1aW5mb1snaWQnXSkgKSByZXR1cm4gRkFMU0U7CiAgICAkdWlkID0gKGludCkkdWluZm9bJ2lkJ107CiAgICBpZiggJHVpZCA8PSAwICkgcmV0dXJuIEZBTFNFOwogICAgaWYoICFpc3NldCgkdWluZm9bJ3VzZXJuYW1lJ10pICkgcmV0dXJuIEZBTFNFOwogICAgaWYoIGlzc2V0KHNlbGY6OiRfdXNlcnNbJHVpZF0pICkgcmV0dXJuIEZBTFNFOwoKICAgIHNlbGY6OiRfdXNlcnNbJHVpbmZvWydpZCddXSA9ICR1aW5mbzsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBkZWxfdXNlcigkdWlkKQogIHsKICAgICR1aWQgPSAoaW50KSR1aWQ7CiAgICBpZiggJHVpZCA8PSAwICkgcmV0dXJuIEZBTFNFOwogICAgaWYoICFpc3NldChzZWxmOjokX3VzZXJzWyR1aWRdKSApIHJldHVybiBGQUxTRTsKCiAgICB1bnNldChzZWxmOjokX3VzZXJzWyR1aWRdKTsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBjbGVhcl9hbGwoKQogIHsKICAgIHNlbGY6OiRfdXNlcnMgPSBhcnJheSgpOwogIH0KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBsb2FkX3VzZXJzKCR1aWRfbGlzdCwkZGVlcCA9IEZBTFNFKQogIHsKICAgIGlmKCAhaXNfYXJyYXkoJHVpZF9saXN0KSB8fCBjb3VudCgkdWlkX2xpc3QpID09IDAgKSByZXR1cm47CgogICAgJG5lZWQgPSBhcnJheSgpOwogICAgJG5lZWRfcHJvcHMgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJHVpZF9saXN0IGFzICRvbmUgKSB7CiAgICAgICRvbmUgPSAoaW50KSRvbmU7CiAgICAgIGlmKCAkb25lIDw9IDAgKSBjb250aW51ZTsKCiAgICAgIGlmKCAhaXNzZXQoc2VsZjo6JF91c2Vyc1skb25lXSkgKSAkbmVlZFtdID0gJG9uZTsKICAgICAgaWYoICFpc3NldChzZWxmOjokX3VzZXJzWyRvbmVdWydmcHJvcHMnXSkgKSAkbmVlZF9wcm9wc1tdID0gJG9uZTsKICAgIH0KCiAgICAkbmVlZCA9IGFycmF5X3VuaXF1ZSgkbmVlZCk7CiAgICAkbmVlZF9wcm9wcyA9IGFycmF5X3VuaXF1ZSgkbmVlZF9wcm9wcyk7CiAgICBhc29ydCgkbmVlZCk7CiAgICBhc29ydCgkbmVlZF9wcm9wcyk7CgogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgIGlmKCBjb3VudCgkbmVlZCkgKSB7CiAgICAgIC8vIGdldCB0aGUgdXNlciBpbmZvCiAgICAgICR1cXVlcnkgPSAnU0VMRUNUIHUuKixjb3VudChsaS51c2VyaWQpIEFTIGxvZ2dlZGluIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUKICAgICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIGxpIE9OIHUuaWQgPSBsaS51c2VyaWQgCiAgICAgICAgICAgICAgICAgV0hFUkUgdS5pZCBJTiAoJzsKICAgICAgJHVxdWVyeSAuPSBpbXBsb2RlKCcsJywkbmVlZCkuJykgR1JPVVAgQlkgdS5pZCBPUkRFUiBCWSB1LmlkJzsKICAgICAgJHVpbmZvID0gJGRiLT5HZXRBcnJheSgkdXF1ZXJ5KTsKICAgICAgZm9yZWFjaCgkdWluZm8gYXMgJHJlYykgewoJc2VsZjo6JF91c2Vyc1skcmVjWydpZCddXSA9ICRyZWM7CiAgICAgIH0KICAgIH0KCiAgICBpZiggJGRlZXAgJiYgY291bnQoJG5lZWRfcHJvcHMpICkgewogICAgICAkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICRkZWZucyA9ICRtb2QtPkdldFByb3BlcnR5RGVmbnMoKTsKCiAgICAgICRwcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSB1c2VyaWQgSU4gKCc7CiAgICAgICRwcXVlcnkgLj0gaW1wbG9kZSgnLCcsJG5lZWRfcHJvcHMpLicpIE9SREVSIEJZIHVzZXJpZCx0aXRsZSc7CiAgICAgICRwaW5mbyA9ICRkYi0+R2V0QXJyYXkoJHBxdWVyeSk7CgogICAgICAkcHJldl91aWQgPSBudWxsOwogICAgICAkZnByb3BzID0gbnVsbDsKICAgICAgZm9yZWFjaCgkcGluZm8gYXMgJHJlYykgewoJaWYoIGNvdW50KCRmcHJvcHMpICYmICRyZWNbJ3VzZXJpZCddICE9ICRwcmV2X3VpZCAmJiAkcHJldl91aWQgIT0gbnVsbCkgewoJICAkdHVpZCA9ICRmcHJvcHNbMF1bJ3VzZXJpZCddOwoJICBpZiggIWlzc2V0KHNlbGY6OiRfdXNlcnNbJHR1aWRdKSApIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0xvYWRlZCBwcm9wZXJ0aWVzIGZvciB1c2VyLCBidXQgbm8gdXNlciBsb2FkZWQnKTsKCSAgc2VsZjo6JF91c2Vyc1skdHVpZF1bJ2Zwcm9wcyddID0gJGZwcm9wczsKCSAgJGZwcm9wcyA9IGFycmF5KCk7Cgl9CglpZiggJGRlZm5zWyRyZWNbJ3RpdGxlJ11dWydlbmNyeXB0J10gKSB7CgkgICRyZWNbJ2RhdGEnXSA9ICRtb2QtPkRlY3J5cHRVc2VyRGF0YSgkcmVjWyd1c2VyaWQnXSwkcmVjWydkYXRhJ10pOwoJfQoJJGZwcm9wc1tdID0gJHJlYzsKCSRwcmV2X3VpZCA9ICRyZWNbJ3VzZXJpZCddOwogICAgICB9CiAgICAgIGlmKCBjb3VudCgkZnByb3BzKSApIHsKCSR0dWlkID0gJGZwcm9wc1swXVsndXNlcmlkJ107CglpZiggIWlzc2V0KHNlbGY6OiRfdXNlcnNbJHR1aWRdKSApIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0xvYWRlZCBwcm9wZXJ0aWVzIGZvciB1c2VyLCBidXQgbm8gdXNlciBsb2FkZWQnKTsKCXNlbGY6OiRfdXNlcnNbJHR1aWRdWydmcHJvcHMnXSA9ICRmcHJvcHM7CiAgICAgIH0KICAgIH0KICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_query.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfdXNlcl9xdWVyeV9vcHQKewogIGNvbnN0IE1BVENIX1VTRVJOQU1FICAgID0gJyp1c2VybmFtZSonOwogIGNvbnN0IE1BVENIX1VTRVJOQU1FX1JFID0gJyp1c2VybmFtZS1yZSonOwogIGNvbnN0IE1BVENIX1BBU1NXT1JEICAgID0gJypwYXNzd29yZConOwogIGNvbnN0IE1BVENIX0VYUElSRVNfTFQgID0gJypleHBpcmVzLWx0Kic7CiAgY29uc3QgTUFUQ0hfR1JPVVAgICAgICAgPSAnKmdyb3VwKic7CiAgY29uc3QgTUFUQ0hfR1JPVVBJRCAgICAgPSAnKmdpZConOwogIGNvbnN0IE1BVENIX1BST1BFUlRZICAgID0gJypwcm9wZXJ0eSonOwogIGNvbnN0IE1BVENIX1BST1BFUlRZX1JFID0gJypwcm9wZXJ0eS1yZSonOwogIGNvbnN0IE1BVENIX1VTRVJMSVNUICAgID0gJyp1c2VybGlzdConOwogIGNvbnN0IE1BVENIX1VTRVJOQU1FTElTVCA9ICcqdXNlcm5hbWVsaXN0Kic7CiAgY29uc3QgTUFUQ0hfTE9HR0VESU4gICAgPSAnKmxvZ2dlZGluKic7CiAgY29uc3QgTUFUQ0hfQ1JFQVRFRF9HRSAgPSAnKmNyZWF0ZWRfZ2UqJzsKICBjb25zdCBNQVRDSF9DUkVBVEVEX0xUICA9ICcqY3JlYXRlZF9sdConOwoKICBwcml2YXRlICRfdHlwZTsKICBwcml2YXRlICRfZXhwcjsKICBwcml2YXRlICRfb3B0OwoKICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJHR5cGUsJGV4cHIsJG9wdCA9ICcnKQogIHsKICAgIGlmKCBlbXB0eSgkZXhwcikgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlIGZvciBleHByJyk7CgogICAgc3dpdGNoKCR0eXBlKSB7CiAgICBjYXNlIHNlbGY6Ok1BVENIX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTkFNRV9SRToKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfUEFTU1dPUkQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfR0U6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0dST1VQOgogICAgY2FzZSBzZWxmOjpNQVRDSF9HUk9VUElEOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTElTVDoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfVVNFUk5BTUVMSVNUOgogICAgY2FzZSBzZWxmOjpNQVRDSF9MT0dHRURJTjoKICAgICAgJHRoaXMtPl90eXBlID0gJHR5cGU7CiAgICAgICR0aGlzLT5fZXhwciA9ICRleHByOwogICAgICBicmVhazsKCiAgICBjYXNlIHNlbGY6Ok1BVENIX1BST1BFUlRZX1JFOgogICAgICBpZiggZW1wdHkoJG9wdCkgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIG9wdCB2YWx1ZScpOwoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfUFJPUEVSVFk6CiAgICAgICR0aGlzLT5fdHlwZSA9ICR0eXBlOwogICAgICAkdGhpcy0+X2V4cHIgPSAkZXhwcjsKICAgICAgJHRoaXMtPl9vcHQgPSAkb3B0OwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CiAgICB9CiAgfQogIAogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdHlwZSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZXhwcigpCiAgewogICAgcmV0dXJuICR0aGlzLT5fZXhwcjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vcHQ7CiAgfQp9IC8vIGNsYXNzCgoKY2xhc3MgZmV1X3VzZXJfcXVlcnkKewogIGNvbnN0IFJFU1VMVF9UWVBFX0lEID0gJyppZConOwogIGNvbnN0IFJFU1VMVF9UWVBFX0xJU1QgPSAnKmxpc3QqJzsKICBjb25zdCBSRVNVTFRfVFlQRV9GVUxMID0gJypmdWxsKic7CiAgY29uc3QgUkVTVUxUX1NPUlRPUkRFUl9BU0MgPSAnKmFzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUT1JERVJfREVTQyA9ICcqZGVzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUQllfVVNFUk5BTUUgPSAnKnVzZXJuYW1lKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9DUkVBVEVEID0gJypjcmVhdGVkYXRlKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9FWFBJUkVTID0gJypleHBpcmVzKic7CgogIHByaXZhdGUgJF9hbmRfb3B0cyAgID0gYXJyYXkoKTsKICBwcml2YXRlICRfZ3JvdXBzID0gJyc7CiAgcHJpdmF0ZSAkX3BhZ2VsaW1pdCA9IDEwMDAwMDsKICBwcml2YXRlICRfb2Zmc2V0ID0gMDsKICBwcml2YXRlICRfcmVzdWx0X3R5cGUgPSBzZWxmOjpSRVNVTFRfVFlQRV9JRDsKICBwcml2YXRlICRfc29ydGJ5ID0gc2VsZjo6UkVTVUxUX1NPUlRCWV9VU0VSTkFNRTsKICBwcml2YXRlICRfc29ydG9yZGVyID0gc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9BU0M7CiAgcHJpdmF0ZSAkX2RlZXAgPSBGQUxTRTsKICBwcml2YXRlICRfd2VicmVhZHkgPSBGQUxTRTsKCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICAvLyBub3RoaW5nIGhlcmUuCiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3BhZ2VsaW1pdCgkcGFnZWxpbWl0KQogIHsKICAgICRwYWdlbGltaXQgPSAoaW50KSRwYWdlbGltaXQ7CiAgICAkcGFnZWxpbWl0ID0gbWF4KDEsJHBhZ2VsaW1pdCk7CiAgICAkdGhpcy0+X3BhZ2VsaW1pdCA9ICRwYWdlbGltaXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3BhZ2VsaW1pdCgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fcGFnZWxpbWl0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF9vZmZzZXQoJG4pCiAgewogICAgJHRoaXMtPl9vZmZzZXQgPSBtYXgoMCwoaW50KSRuKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb2Zmc2V0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vZmZzZXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2RlZXAoJGZsYWcgPSBUUlVFKQogIHsKICAgICR0aGlzLT5fZGVlcCA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWVwKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9kZWVwOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF93ZWJyZWFkeSgkZmxhZyA9IFRSVUUpCiAgewogICAgJHRoaXMtPl93ZWJyZWFkeSA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF93ZWJyZWFkeSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fd2VicmVhZHk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3Jlc3VsdF90eXBlKCR0eXBlKQogIHsKICAgIHN3aXRjaCggJHR5cGUgKSB7CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9UWVBFX0lEOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9MSVNUOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9GVUxMOgogICAgICAkdGhpcy0+X3Jlc3VsdF90eXBlID0gJHR5cGU7CiAgICAgIGJyZWFrOwoKICAgIGRlZmF1bHQ6CiAgICAgIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0ludmFsaWQgcmVzdWx0IHR5cGUgJy4kdHlwZSk7CiAgICB9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3Jlc3VsdF90eXBlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9yZXN1bHRfdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfc29ydGJ5KCR2YWwpCiAgewogICAgc3dpdGNoKCAkdmFsICkgewogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX0NSRUFURUQ6CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9TT1JUQllfRVhQSVJFUzoKICAgICAgJHRoaXMtPl9zb3J0YnkgPSAkdmFsOwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdJbnZhbGlkIHNvcnRieSB2YWx1ZTogJy4kdmFsKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydGJ5KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0Ynk7CiAgfQogIAogIHB1YmxpYyBmdW5jdGlvbiBzZXRfc29ydG9yZGVyKCR2YWwpCiAgewogICAgc3dpdGNoKCAkdmFsICkgewogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVE9SREVSX0FTQzoKICAgIGNhc2Ugc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDOgogICAgICAkdGhpcy0+X3NvcnRvcmRlciA9ICR2YWw7CiAgICAgIGJyZWFrOwoKICAgIGRlZmF1bHQ6CiAgICAgIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0ludmFsaWQgc29ydG9yZGVyIHZhbHVlOiAnLiR2YWwpOwogICAgfQogIH0KICAKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3NvcnRvcmRlcigpCiAgewogICAgcmV0dXJuICR0aGlzLT5fc29ydG9yZGVyOwogIH0KICAKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHQoJHR5cGUsJHZhbHVlKQogIHsKICAgICR0aGlzLT5fYW5kX29wdHNbXSA9IG5ldyBmZXVfdXNlcl9xdWVyeV9vcHQoJHR5cGUsJHZhbHVlKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBhZGRfYW5kX29wdF9vYmooZmV1X3VzZXJfcXVlcnlfb3B0JiAkb3B0KQogIHsKICAgICR0aGlzLT5fYW5kX29wdHNbXSA9ICRvcHQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gY291bnRfb3B0cygpCiAgewogICAgcmV0dXJuIGNvdW50KCR0aGlzLT5fYW5kX29wdHMpOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9vcHRzKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9hbmRfb3B0czsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiAmZXhlY3V0ZSgpCiAgewogICAgJHJzID0gbmV3IGZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldCgkdGhpcyk7CiAgICByZXR1cm4gJHJzOwogIH0KCn0gLy8gZW5kIG9mIGNsYXNzCgoKCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_query_resultset.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQKewogIHByaXZhdGUgJF9xdWVyeTsKICBwcml2YXRlICRfZXhlY3V0ZWQ7CiAgcHJpdmF0ZSAkX3JzOwogIHByaXZhdGUgJF9mb3VuZF9yb3dzOwogIHByaXZhdGUgJF9ncm91cHM7CgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChmZXVfdXNlcl9xdWVyeSAmJHF1ZXJ5KQogIHsKICAgICR0aGlzLT5fcXVlcnkgPSAkcXVlcnk7CiAgICAkdGhpcy0+X2V4ZWN1dGUoJHF1ZXJ5KTsKICB9CgogIHByaXZhdGUgZnVuY3Rpb24gX2dldF9ncm91cHMoKQogIHsKICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9ncm91cHMpICkgewogICAgICAkZmV1ID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICR0bXAgPSAkZmV1LT5HZXRHcm91cExpc3RGdWxsKCk7CiAgICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApICR0aGlzLT5fZ3JvdXBzID0gY2dlX2FycmF5Ojp0b19oYXNoKCR0bXAsJ2dyb3VwbmFtZScpOwogICAgfQogICAgcmV0dXJuICR0aGlzLT5fZ3JvdXBzOwogIH0KCiAgcHJpdmF0ZSBmdW5jdGlvbiBfZXhlY3V0ZSgpCiAgewogICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICR3aGVyZSAgPSBhcnJheSgpOwogICAgJHFwYXJtcyA9IGFycmF5KCk7CiAgICAkam9pbnMgID0gYXJyYXkoKTsKICAgICRqY291bnQgPSAwOwogICAgJGhhdmluZyA9IG51bGw7CgogICAgJHFyZWMgPSAnU0VMRUNUIFNRTF9DQUxDX0ZPVU5EX1JPV1MgdS4qLGNvdW50KGxpLnVzZXJpZCkgQVMgbG9nZ2VkaW4gRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgdSc7CiAgICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIGxpIE9OIHUuaWQgPSBsaS51c2VyaWQnOwoKICAgIGZvcmVhY2goICR0aGlzLT5fcXVlcnktPmdldF9vcHRzKCkgYXMgJG9wdCApIHsKICAgICAgc3dpdGNoKCAkb3B0LT5nZXRfdHlwZSgpICkgewogICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfVVNFUk5BTUU6Cgkkd2hlcmVbXSAgPSAndS51c2VybmFtZSBMSUtFID8nOwoJJGV4cHIgPSBzdHJfcmVwbGFjZSgnKicsJyUnLCRvcHQtPmdldF9leHByKCkpOwoJJGV4cHIgPSBzdHJfcmVwbGFjZSgnJSUnLCclJywkZXhwcik7CgkkcXBhcm1zW10gPSAkZXhwcjsKCWJyZWFrOwoKICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FX1JFOgoJJHdoZXJlW10gID0gJ3UudXNlcm5hbWUgUkVHRVhQICcuJGRiLT5xc3RyKCRvcHQtPmdldF9leHByKCkpOwoJYnJlYWs7CgogICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfUEFTU1dPUkQ6Cgkkd2hlcmVbXSAgPSAndS5wYXNzd29yZCA9ID8nOwoJJHFwYXJtc1tdID0gJG9wdC0+Z2V0X2V4cHIoKTsKCWJyZWFrOwoJICAKICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0VYUElSRVNfTFQ6CgkkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKCSR3aGVyZVtdID0gInUuZXhwaXJlcyA8IHskdG1wfSI7CglicmVhazsKCiAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9DUkVBVEVEX0dFOgoJJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAoJG9wdC0+Z2V0X2V4cHIoKSk7Cgkkd2hlcmVbXSA9ICJ1LmNyZWF0ZWRhdGUgPj0geyR0bXB9IjsKCWJyZWFrOwoKICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0NSRUFURURfTFQ6CgkkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKCSR3aGVyZVtdID0gInUuY3JlYXRlZGF0ZSA8IHskdG1wfSI7CglicmVhazsKCiAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUDoKCSR0bXAgPSAkdGhpcy0+X2dldF9ncm91cHMoKTsKCWlmKCAhaXNzZXQoJHRtcFskb3B0LT5nZXRfZXhwcigpXSkgKSB7CgkgIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKCX0KCSRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncyBibCBPTiB1LmlkID0gYmwudXNlcmlkJzsKCSR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgPSA/JzsKCSRxcGFybXNbXSA9ICRvcHQtPmdldF9leHByKCk7CglicmVhazsKCiAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9MT0dHRURJTjoKCSRoYXZpbmcgPSAnY291bnQobGkudXNlcmlkKSA+IDAnOwoJYnJlYWs7CgogICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRDoKCSRleHByID0gJG9wdC0+Z2V0X2V4cHIoKTsKCWlmKCBpc19hcnJheSgkZXhwcikgKSB7CgkgICR0bXAgPSBhcnJheSgpOwoJICBmb3JlYWNoKCAkZXhwciBhcyAkb25lICkgewoJICAgICRvbmUgPSAoaW50KSRvbmU7CgkgICAgaWYoICRvbmUgPCAxICkgY29udGludWU7CgkgICAgaWYoICFpbl9hcnJheSgkb25lLCR0bXApICkgJHRtcFtdID0gJG9uZTsKCSAgfQoJICBpZiggY291bnQoJHRtcCkgPT0gMCApIHRocm93IG5ldyBFeGNlcHRpb24oJ05vIHZhbGlkIGdyb3VwIGlkcyBzcGVjaWZpZWQnKTsKCSAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwoJICAkd2hlcmVbXSA9ICdibC5ncm91cGlkIElOICgnLmltcGxvZGUoJywnLCR0bXApLicpJzsKCX0KCWVsc2UgewoJICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYmwgT04gdS5pZCA9IGJsLnVzZXJpZCc7CgkgICR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgPSA/JzsKCSAgJHFwYXJtc1tdID0gJGV4cHI7Cgl9CglicmVhazsKCiAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9VU0VSTkFNRUxJU1Q6CgkkdG1wID0gJG9wdC0+Z2V0X2V4cHIoKTsKCWlmKCAhaXNfYXJyYXkoJHRtcCkgKSAkdG1wID0gZXhwbG9kZSgnLCcsJHRtcCk7CgkkdG1wMiA9IGFycmF5KCk7Cglmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7CgkgICR0bXAyW10gPSAiJyIudHJpbSgkb25lKS4iJyI7Cgl9CgkkdG1wMiA9IGFycmF5X3VuaXF1ZSgkdG1wMik7Cgkkd2hlcmVbXSA9ICd1LnVzZXJuYW1lIElOICgnLmltcGxvZGUoJywnLCR0bXAyKS4nKSc7CglicmVhazsKCiAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9VU0VSTElTVDoKCSR0bXAgPSAkb3B0LT5nZXRfZXhwcigpOwoJaWYoICFpc19hcnJheSgkdG1wKSApICR0bXAgPSBleHBsb2RlKCcsJywkdG1wKTsKCSR0bXAyID0gYXJyYXkoKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKCSAgaWYoIChpbnQpJG9uZSA8IDEgKSBjb250aW51ZTsKCSAgJHRtcDJbXSA9IChpbnQpJG9uZTsKCX0KCSR0bXAyID0gYXJyYXlfdW5pcXVlKCR0bXAyKTsKCSR3aGVyZVtdID0gJ3UuaWQgSU4gKCcuaW1wbG9kZSgnLCcsJHRtcDIpLicpJzsKCWJyZWFrOwogICAgICAKICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1BST1BFUlRZOgoJJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJJGRlZm5zID0gJGZldS0+R2V0UHJvcGVydHlEZWZucygpOwoJaWYoICFpbl9hcnJheSgkb3B0LT5nZXRfZXhwcigpLGFycmF5X2tleXMoJGRlZm5zKSkgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CgkkamNvdW50Kys7Cgkkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgcHJ7JGpjb3VudH0KICAgICAgICAgICAgICAgICAgICBPTiBwcnskamNvdW50fS51c2VyaWQgPSB1LmlkIjsKICAgICAgICAkd2hlcmVbXSA9ICJwcnskamNvdW50fS50aXRsZSA9ICciLiRvcHQtPmdldF9leHByKCkuIiciOwoJaWYoICRvcHQtPmdldF9vcHQoKSApIHsKCSAgaWYoIHN0cnN0cigkb3B0LT5nZXRfb3B0KCksJyonKSA9PT0gRkFMU0UgKSB7CgkgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0uZGF0YSA9ICciLiRvcHQtPmdldF9vcHQoKS4iJyI7CgkgIH0KCSAgZWxzZSB7CgkgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0uZGF0YSBMSUtFICciLnN0cl9yZXBsYWNlKCcqJywnJScsJG9wdC0+Z2V0X29wdCgpKS4iJyI7CgkgIH0KCX0KCWJyZWFrOwoKICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1BST1BFUlRZX1JFOgoJJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJJGRlZm5zID0gJGZldS0+R2V0UHJvcGVydHlEZWZucygpOwoJaWYoICFpbl9hcnJheSgkb3B0LT5nZXRfZXhwcigpLGFycmF5X2tleXMoJGRlZm5zKSkgKSB7CgkgIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKCX0KCSRqY291bnQrKzsKCSRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBwcnskamNvdW50fSAKICAgICAgICAgICAgICAgICAgICAgIE9OIHByeyRqY291bnR9LnVzZXJpZCA9IHUuaWQgCiAgICAgICAgICAgICAgICAgICAgIEFORCBwcnskamNvdW50fS50aXRsZSA9ICciLiRvcHQtPmdldF9leHByKCkuIiciOwoJJHdoZXJlW10gPSAicHJ7JGpjb3VudH0uZGF0YSBSRUdFWFAgIi4kZGItPnFzdHIoJG9wdC0+Z2V0X29wdCgpKTsKCWJyZWFrOwogICAgICB9CiAgICB9CgogICAgLy8gYXNzZW1ibHkKICAgIGlmKCBjb3VudCgkam9pbnMpICkgJHFyZWMgLj0gJyAnLmltcGxvZGUoJyAnLCRqb2lucyk7CiAgICBpZiggY291bnQoJHdoZXJlKSApICRxcmVjIC49ICJcbldIRVJFICIuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CgogICAgJG9yZGVyYnkgPSAndXNlcm5hbWUnOwogICAgc3dpdGNoKCAkdGhpcy0+X3F1ZXJ5LT5nZXRfc29ydGJ5KCkgKSB7CiAgICBjYXNlIGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgICAkb3JkZXJieSA9ICd1c2VybmFtZSc7CiAgICAgIGJyZWFrOwogICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRCWV9DUkVBVEVEOgogICAgICAkb3JkZXJieSA9ICdjcmVhdGVkYXRlJzsKICAgICAgYnJlYWs7CiAgICBjYXNlIGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX0VYUElSRVM6CiAgICAgICRvcmRlcmJ5ID0gJ2V4cGlyZXMnOwogICAgICBicmVhazsKICAgIH0KCiAgICBzd2l0Y2goICR0aGlzLT5fcXVlcnktPmdldF9zb3J0b3JkZXIoKSApIHsKICAgIGNhc2UgZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUT1JERVJfQVNDOgogICAgICAkb3JkZXJieSAuPSAnIEFTQyc7CiAgICAgIGJyZWFrOwogICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDOgogICAgICAkb3JkZXJieSAuPSAnIERFU0MnOwogICAgICBicmVhazsKICAgIH0KCiAgICAkcXJlYyAuPSAnIEdST1VQIEJZIHUuaWQnOwogICAgaWYoICRoYXZpbmcgKSAkcXJlYyAuPSAnIEhBVklORyAnLiRoYXZpbmc7CiAgICAkcXJlYyAuPSAnIE9SREVSIEJZICcuJG9yZGVyYnk7CgogICAgJHRoaXMtPl9ycyA9ICRkYi0+U2VsZWN0TGltaXQoJHFyZWMsJHRoaXMtPl9xdWVyeS0+Z2V0X3BhZ2VsaW1pdCgpLCR0aGlzLT5fcXVlcnktPmdldF9vZmZzZXQoKSwkcXBhcm1zKTsKICAgIGlmKCAhJHRoaXMtPl9ycyApIHRocm93IG5ldyBFeGNlcHRpb24oJ0lOVEVSTkFMIEVSUk9SOiBRdWVyeSBmYWlsZWQgLSAnLiRkYi0+c3FsLicgLS0gJy4kZGItPkVycm9yTXNnKCkpOwoKICAgICR1aWRzID0gYXJyYXkoKTsKICAgIHdoaWxlKCAhJHRoaXMtPl9ycy0+RU9GICkgewogICAgICBmZXVfdXNlcl9jYWNoZTo6c2V0X25ld191c2VyKCR0aGlzLT5fcnMtPmZpZWxkcyk7CiAgICAgICR1aWRzW10gPSAkdGhpcy0+X3JzLT5maWVsZHNbJ2lkJ107CiAgICAgICR0aGlzLT5fcnMtPk1vdmVOZXh0KCk7CiAgICB9CiAgICAkdGhpcy0+X3JzLT5Nb3ZlRmlyc3QoKTsKICAgIAogICAgaWYoIGNvdW50KCR1aWRzKSAmJiAkdGhpcy0+X3F1ZXJ5LT5nZXRfZGVlcCgpICkgewogICAgICAvLyB1c2VycyBhcmUgYWxyZWFkeSBsb2FkZWQgKHNoYWxsb3cpLi4uIHRoaXMgd2lsbCBnZXQgcHJvcGVydHkgaW5mb3JtYXRpb24uCiAgICAgIGZldV91c2VyX2NhY2hlOjpsb2FkX3VzZXJzKCR1aWRzLFRSVUUpOwogICAgfQoKICAgICR0aGlzLT5fZm91bmRfcm93cyA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgRk9VTkRfUk9XUygpJyk7CiAgICAkdGhpcy0+X2V4ZWN1dGVkID0gVFJVRTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBSZWNvcmRDb3VudCgpCiAgewogICAgaWYoICR0aGlzLT5fcnMgKSByZXR1cm4gJHRoaXMtPl9ycy0+UmVjb3JkQ291bnQoKTsKICAgIHJldHVybiAwOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIE1vdmVOZXh0KCkKICB7CiAgICBpZiggJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5Nb3ZlTmV4dCgpOwogICAgcmV0dXJuIEZBTFNFOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIE1vdmVGaXJzdCgpCiAgewogICAgaWYoICR0aGlzLT5fcnMgKSByZXR1cm4gJHRoaXMtPl9ycy0+TW92ZUZpcnN0KCk7CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gRU9GKCkKICB7CiAgICBpZiggJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5FT0YoKTsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIENsb3NlKCkKICB7CiAgICBpZiggJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5DbG9zZSgpOwogICAgcmV0dXJuIFRSVUU7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gX19nZXQoJGtleSkKICB7CiAgICBpZiggJGtleSA9PSAnRU9GJyAmJiAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPkVPRjsKICAgIAogICAgaWYoICRrZXkgPT0gJ2ZpZWxkcycgJiYgJHRoaXMtPl9ycyApIHsKICAgICAgJHJlYyA9IGZldV91c2VyX2NhY2hlOjpnZXRfdXNlcigkdGhpcy0+X3JzLT5maWVsZHNbJ2lkJ10pOwogICAgICBpZiggJHRoaXMtPl9xdWVyeS0+Z2V0X3dlYnJlYWR5KCkgKSB7Cgl1bnNldCgkcmVjWydwYXNzd29yZCddKTsKCSRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAJJGRlZm5zID0gJGZldS0+R2V0UHJvcGVydHlEZWZucygpOwoJaWYoIGlzc2V0KCRyZWNbJ2Zwcm9wcyddKSApIHsKCSAgZm9yZWFjaCggJHJlY1snZnByb3BzJ10gYXMgJiRvbmUgKSB7CgkgICAgaWYoICRkZWZuc1skb25lWyd0aXRsZSddXVsndHlwZSddID09IEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9JTUFHRSApIHsKCSAgICAgIC8vIGdldCB0aGUgZnVsbCB1cmwuCgkgICAgICAkY29uZmlnID0gY21zbXMoKS0+R2V0Q29uZmlnKCk7CgkgICAgICAkb25lWyd1cmwnXSA9ICRjb25maWdbJ3VwbG9hZHNfdXJsJ10uJy9mZXVzZXJzLycuJG9uZVsnZGF0YSddOwoJICAgIH0KCSAgfQoJfQogICAgICB9CiAgICAgIHJldHVybiAkcmVjOwogICAgfQogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9mb3VuZF9yb3dzKCkKICB7CiAgICBpZiggISR0aGlzLT5fcnMgKSByZXR1cm47CiAgICByZXR1cm4gJHRoaXMtPl9mb3VuZF9yb3dzOwogIH0KCn0gLy8gY2xhc3MKCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfdXRpbHMKewogIHByaXZhdGUgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7fQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHVzaW5nX3N0ZF9jb25zdW1lcigpCiAgewogICAgJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJG5hbWUgPSAkZmV1LT5HZXRQcmVmZXJlbmNlKCdhdXRoX21vZHVsZScsJycpOwogICAgaWYoICRuYW1lID09ICcnIHx8ICRuYW1lID09ICdfX0JVSUxUSU5fXycgKSByZXR1cm4gVFJVRTsKICAgIHJldHVybiBGQUxTRTsKICB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gJmdldF9zdGRfY29uc3VtZXIoKQogIHsKICAgICRvYmogPSBuZXcgZmV1X3N0ZF9jb25zdW1lcigpOwogICAgcmV0dXJuICRvYmo7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uICZnZXRfYXV0aF9jb25zdW1lcigpCiAgewogICAgJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJG5hbWUgPSAkZmV1LT5HZXRQcmVmZXJlbmNlKCdhdXRoX21vZHVsZScsJycpOwogICAgaWYoICRuYW1lID09ICcnIHx8ICRuYW1lID09ICdfX0JVSUxUSU5fXycgKSB7CiAgICAgIHJldHVybiBzZWxmOjpnZXRfc3RkX2NvbnN1bWVyKCk7CiAgICB9CgogICAgJG1vZHVsZSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgkbmFtZSk7CiAgICAkcmVzID0gbnVsbDsKICAgIGlmKCBpc19vYmplY3QoJG1vZHVsZSkgKSB7CiAgICAgICRvYmogPSAkbW9kdWxlLT5HZXRGRVVBdXRoQ29uc3VtZXIoKTsKICAgICAgcmV0dXJuICRvYmo7CiAgICB9CgogICAgcmV0dXJuIHNlbGY6OmdldF9zdGRfY29uc3VtZXIoKTsKICB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2VuZXJhdGVfcmFuZG9tX3ByaW50YWJsZV9zdHJpbmcoJGxlbiA9IDEwKQogIHsKICAgICRvMSA9IG5ldyBSYW5kb20oIjIzNDU2Nzg5QUJDREVGR0hKS01OUFFSU1RVVldYWVoiKTsKICAgIHJldHVybiAkbzEtPmdldCgkbGVuKTsKICB9Cn0gLy8gY2xhc3MKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.FrontEndUsersManipulator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAojICB1c2VycywgYW5kIHRoZWlyIGxvZ2luIHByb2Nlc3Mgd2l0aGluIGEgQ01TIE1hZGUgU2ltcGxlIHBvd2VyZWQKIyAgd2Vic2l0ZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0cyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCmNsYXNzIEZyb250RW5kVXNlcnNNYW5pcHVsYXRvciBleHRlbmRzIFVzZXJNYW5pcHVsYXRvcgp7CiAgICBwcml2YXRlICRfY2FjaGVkX3Byb3BkZWZuczsKICAgIHByaXZhdGUgJF9lbmNyeXB0aW9uX2tleTsKICAgIHByaXZhdGUgJF9ncm91cGluZm9fY2FjaGU7CiAgICBwcml2YXRlICRfbXVsdGlzZWxlY3Rfb3B0aW9uczsKICAgIHByaXZhdGUgJF91c2VyaWRieW5hbWU7CiAgICBwcml2YXRlICRfZ3JvdXBwcm9wbWFwOwogICAgcHJpdmF0ZSAkX2xhc3RfdXNlcnF1ZXJ5X21hdGNoZXM7CiAgICBwcml2YXRlICRfbGFzdF91c2VycXVlcnlfY291bnQ7CgogICAgcHJpdmF0ZSAkX2hhc3J1bjEgPSBudWxsOwogICAgcHJpdmF0ZSAkX2hhc3J1bjIgPSBudWxsOwogICAgcHJpdmF0ZSAkX3JlYWRkYXRhMSA9IG51bGw7CiAgICBwcml2YXRlICRfaGFzcmVhZDEgPSBudWxsOwoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0X3NhbHQoKQogICAgewogICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgcmV0dXJuICRtb2QtPkdldFByZWZlcmVuY2UoJ3B3c2FsdCcsJycpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBhZGRfaGlzdG9yeSgkdWlkLCRtZXNzYWdlKQogICAgewogICAgICAgIGlmKCAkdWlkIDw9IDAgfHwgIWlzX3N0cmluZygkbWVzc2FnZSkgfHwgJG1lc3NhZ2UgPT0gJycgKQlyZXR1cm4gRkFMU0U7CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CiAgICAgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5ICh1c2VyaWQsc2Vzc2lvbmlkLGFjdGlvbixyZWZkYXRlLGlwYWRkcmVzcykgVkFMVUVTICg/LD8sPywkbm93LD8pIjsKICAgICAgICAkaXAgPSBjZ2VfdXRpbHM6OmdldF9yZWFsX2lwKCk7CiAgICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVpZCxzZXNzaW9uX2lkKCksJG1lc3NhZ2UsJGlwKSk7CiAgICAgICAgcmV0dXJuIFRSVUU7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0RW5jcnlwdGlvbktleSgkdWlkID0gLTEsJGZvcmNlID0gRkFMU0UgKQogICAgewogICAgICAgIGdsb2JhbCAkQ01TX0FETUlOX1BBR0U7CiAgICAgICAgJGdDbXMgPSBjbXNtcygpOwoKICAgICAgICBpZiggJENNU19BRE1JTl9QQUdFICkgewovLyBhbiBhZG1pbmlzdHJhdG9yIGNhbiBzZWUgZW5jcnlwdGVkIGRhdGEuCiAgICAgICAgICAgICRyZXMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHJlcykgfHwgJHJlc1swXSA9PSBGQUxTRSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgICAgICRrZXkgPSBtZDUoJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXS4kdWlkLiRyZXNbMV1bJ2NyZWF0ZWRhdGUnXS4kdGhpcy0+Z2V0X3NhbHQoKSk7CiAgICAgICAgICAgICR0aGlzLT5fZW5jcnlwdGlvbl9rZXkgPSAka2V5OwoKICAgICAgICAgICAgcmV0dXJuIFRSVUU7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkdHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgICAgIGlmKCAoJHR1aWQgIT0gJHVpZCB8fCAkdHVpZCA8PSAwKSAmJiAkZm9yY2UgPT09IEZBTFNFICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAgICAgJHJlcyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkcmVzKSB8fCAkcmVzWzBdID09IEZBTFNFICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAgICAgJGtleSA9IG1kNSgkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddLiR1aWQuJHJlc1sxXVsnY3JlYXRlZGF0ZSddLiR0aGlzLT5nZXRfc2FsdCgpKTsKICAgICAgICAgICAgJHRoaXMtPl9lbmNyeXB0aW9uX2tleSA9ICRrZXk7CiAgICAgICAgICAgIHJldHVybiBUUlVFOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIGZ1bmN0aW9uIERlY3J5cHRVc2VyRGF0YSgkdWlkLCRkYXRhKQogICAgewogICAgICAgICR1aWQgPSAoaW50KSR1aWQ7CiAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuOwogICAgICAgICR0aGlzLT5TZXRFbmNyeXB0aW9uS2V5KCR1aWQsVFJVRSk7CiAgICAgICAgJHggPSB0cmltKGNnZV9lbmNyeXB0OjpkZWNyeXB0KCR0aGlzLT5fZW5jcnlwdGlvbl9rZXksYmFzZTY0X2RlY29kZSgkZGF0YSkpKTsKICAgICAgICByZXR1cm4gJHg7CiAgICB9CgogICAgZnVuY3Rpb24gQ291bnRUZW1wQ29kZVJlY29yZHMoKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREQigpOwogICAgICAgICRxID0gIlNFTEVDVCBDT1VOVCgqKSBBUyBjb3VudCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIDA7CiAgICAgICAgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgICAgICByZXR1cm4gJHJvd1snY291bnQnXTsKICAgIH0KCiAgICBmdW5jdGlvbiBFeHBpcmVUZW1wQ29kZXMoJGV4cGlyeWNvZGUpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJGV4cGlyZXMgPSBzdHJ0b3RpbWUoICRleHBpcnljb2RlICk7CiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIFdIRVJFIGNyZWF0ZWQgPiA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGV4cGlyZXMgKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiB0cnVlOwogICAgfQoKICAgIGZ1bmN0aW9uIFJlbW92ZVVzZXJUZW1wQ29kZSggJHVpZCApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSBXSEVSRSB1c2VyaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCApICk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFVzZXJUZW1wQ29kZSggJHVpZCApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIFdIRVJFIHVzZXJpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkpOwogICAgICAgIGlmKCAkZGJyZXN1bHQgPT0gRkFMU0UgfHwgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpID09IDAgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFLCRyb3cpOwogICAgfQoKCiAgICBmdW5jdGlvbiBTZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlLCAkcmVwbGFjZT1mYWxzZSApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSBWQUxVRVMoPyw/LD8pIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGNvZGUsCiAgICAgICAgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSApICk7CgogICAgICAgIGlmKCAkZGJyZXN1bHQgPT0gZmFsc2UgKSB7CiAgICAgICAgICAgIGlmICgkcmVwbGFjZSkgewogICAgICAgICAgICAgICAgJHEgPSAidXBkYXRlICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSBzZXQgY29kZT0/LCBjcmVhdGVkPT8gV0hFUkUgdXNlcmlkPT8iOwogICAgICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoJGNvZGUsCiAgICAgICAgICAgICAgICB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpLCR1aWQgKSApOwogICAgICAgICAgICAgICAgaWYgKCRkYnJlc3VsdCA9PSBmYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cnVlOwogICAgfQoKCiAgICBmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm4oICRuYW1lLCAkbmV3bmFtZSwgJHByb21wdCwgJGxlbmd0aCwgJHR5cGUsICRtYXhsZW5ndGggPSAwLCAkYXR0cmlicyA9ICcnLCAkZm9yY2VfdW5pcXVlID0gMCwgJGVuY3J5cHQgPSAwICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+Z2V0RGIoKTsKCiAgICAgICAgaWYoICRtYXhsZW5ndGggPT0gMCApICRtYXhsZW5ndGggPSAkbGVuZ3RoOwogICAgICAgICRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4KICAgICAgICAgIFNFVCBuYW1lID0gPywgcHJvbXB0ID0gPywgdHlwZSA9ID8sIGxlbmd0aCA9ID8sIG1heGxlbmd0aCA9ID8sIGF0dHJpYnMgPSA/LCBmb3JjZV91bmlxdWUgPSA/LCBlbmNyeXB0ID0gPwogICAgICAgICAgV0hFUkUgbmFtZSA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmV3bmFtZSwgJHByb21wdCwgJHR5cGUsICRsZW5ndGgsICRtYXhsZW5ndGgsICRhdHRyaWJzLCAkZm9yY2VfdW5pcXVlLCAkZW5jcnlwdCwgJG5hbWUgKSk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZVByb3BlcnR5RGVmbiggJG5hbWUsICRmdWxsID0gRkFMU0UgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwoKICAgICAgICBpZiggJGZ1bGwgKSB7CiAgICAgICAgICAgICRxID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIHRpdGxlID0gPyc7CiAgICAgICAgICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHEsYXJyYXkoJG5hbWUpKTsKCiAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZ3JvdXBfaWQsc29ydF9rZXkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/JzsKICAgICAgICAgICAgJGRiciA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRuYW1lKSk7CgogICAgICAgICAgICBpZiggaXNfYXJyYXkoJGRicikgJiYgY291bnQoJGRicikgKSB7CiAgICAgICAgICAgICAgICAkcSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcAogICAgICAgICAgICAgIFNFVCBzb3J0X2tleSA9IHNvcnRfa2V5IC0gMQogICAgICAgICAgICAgIFdIRVJFIGdyb3VwX2lkID0gPyBBTkQgc29ydF9rZXkgPiA/JzsKICAgICAgICAgICAgICAgIGZvcmVhY2goICRkYnIgYXMgJHJvdyApIHsKICAgICAgICAgICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRyb3dbJ2dyb3VwX2lkJ10sJHJvd1snc29ydF9rZXknXSkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAkcSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/JzsKICAgICAgICAgICAgJGRiciA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRuYW1lKSk7CgogICAgICAgIH0KCiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIFdIRVJFIG5hbWU9PyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KCgogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlHcm91cFJlbGF0aW9ucyggJHRpdGxlICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/IE9SREVSIEJZIHNvcnRfa2V5IERFU0MiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdGl0bGUgKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgJHJlc3VsdCA9IGFycmF5KCk7CiAgICAgICAgd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKSB7CiAgICAgICAgICAgIGFycmF5X3B1c2goICRyZXN1bHQsICRyb3cgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9CgoKLyoqCiAqIFJldHVybiB0aGUgdW5peCB0aW1lc3RhbXAgb2YgdGhlIHVzZXJzIGV4cGlyeSBkYXRlCiAqIG9yIGZhbHNlOwogKi8KICAgIGZ1bmN0aW9uIEdldEV4cGlyeURhdGUoJHVpZCkKICAgIHsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgJHJlcyA9IGZldV91c2VyX2NhY2hlOjpnZXRfdXNlcigkdWlkKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHJlcykgJiYgJHJlc1snZXhwaXJlcyddICE9ICcnICkgewogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAgICAgcmV0dXJuICRkYi0+VW5peFRpbWVTdGFtcCgkcmVzWydleHBpcmVzJ10pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgoKICAgIGZ1bmN0aW9uIElzQWNjb3VudEV4cGlyZWQoICR1aWQgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiB0cnVlOyAvLyBkdW5ubyBhYm91dCB0aGlzCiAgICAgICAgJGV4cGlyeSA9ICR0aGlzLT5HZXRFeHBpcnlEYXRlKCAkdWlkICk7CgogICAgICAgIGlmKCAhJGV4cGlyeSApIHJldHVybiB0cnVlOwogICAgICAgIGlmKCAkZXhwaXJ5IDwgdGltZSgpICkgcmV0dXJuIHRydWU7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCiAgICBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlSZWxhdGlvbnMoICR1aWQgKQogICAgewogICAgICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBzKSB8fCBjb3VudCgkZ3JvdXBzKSA9PSAwICkgcmV0dXJuOwoKICAgICAgICAkdXByb3BzID0gYXJyYXkoKTsKICAgICAgICBmb3IoICRhID0gMDsgJGEgPCBjb3VudCgkZ3JvdXBzKTsgJGErKyApIHsKICAgICAgICAgICAgJGdpZCA9ICRncm91cHNbJGFdWydncm91cGlkJ107CiAgICAgICAgICAgICRyZWxucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCRnaWQpOwogICAgICAgICAgICAkdXByb3BzID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCgkdXByb3BzLCRyZWxucyk7CiAgICAgICAgICAgIHVzb3J0KCR1cHJvcHMsIGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdXByb3BzOwogICAgfQoKICAgIGZ1bmN0aW9uIEdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgICB7CiAgICAgICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2dyb3VwcHJvcG1hcCkgKSB7CiAgICAgICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgT1JERVIgQlkgZ3JvdXBfaWQsc29ydF9rZXkgREVTQyI7CiAgICAgICAgICAgICR0aGlzLT5fZ3JvdXBwcm9wbWFwID0gJGRiLT5HZXRBcnJheSgkcSk7CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPl9ncm91cHByb3BtYXAgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgICB9CgogICAgICAgICRyZXMgPSBhcnJheSgpOwogICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0aGlzLT5fZ3JvdXBwcm9wbWFwKTsgJGkrKyApIHsKICAgICAgICAgICAgJHJvdyA9ICR0aGlzLT5fZ3JvdXBwcm9wbWFwWyRpXTsKICAgICAgICAgICAgaWYoICRyb3dbJ2dyb3VwX2lkJ10gPCAkZ3JwaWQgKSBjb250aW51ZTsKICAgICAgICAgICAgaWYoICRyb3dbJ2dyb3VwX2lkJ10gPiAkZ3JwaWQgKSBicmVhazsKCiAgICAgICAgICAgICRyZXNbXSA9ICRyb3c7CiAgICAgICAgfQogICAgICAgIGlmKCAhY291bnQoJHJlcykgKSByZXR1cm4gYXJyYXkoRkFMU0UsJ25vdGZvdW5kJyk7CgogICAgICAgIHJldHVybiAkcmVzOwogICAgfQoKCiAgICBmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgVkFMVUVTKD8sPyw/LD8sPykiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcHJvcG5hbWUsICRncnBpZCwgJHNvcnRrZXksICR2YWwsICRsb3N0dW4gKSk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgV0hFUkUgZ3JvdXBfaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGdycGlkICkpOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgcmV0dXJuIGFycmF5KFRSVUUpOwogICAgfQoKCiAgICBmdW5jdGlvbiBEZWxldGVHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcAogICAgICAgICAgV0hFUkUgbmFtZSA9ID8gQU5EIGdyb3VwX2lkID0gPyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRwcm9wbmFtZSwgJGdycGlkICkpOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgcmV0dXJuIGFycmF5KFRSVUUpOwogICAgfQoKCiAgICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgIGlmKCAkbWF4bGVuZ3RoID09IDAgKSAkbWF4bGVuZ3RoID09ICRsZW5ndGg7CgogICAgICAgICRwID0gYXJyYXkoICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICk7CiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuCiAgICAgICAgICAobmFtZSxwcm9tcHQsdHlwZSxsZW5ndGgsbWF4bGVuZ3RoLGF0dHJpYnMsZm9yY2VfdW5pcXVlLGVuY3J5cHQpCiAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPykiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwICk7CiAgICAgICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApIHJldHVybiBhcnJheShGQUxTRSwgJGRiLT5zcWwuJzxici8+Jy4kZGItPkVycm9yTXNnKCkpOwogICAgICAgICRuZXdfaWQgPSAkZGItPkluc2VydF9JRCgpOwoKICAgICAgICAkdGhpcy0+X2NhY2hlZF9wcm9wZGVmbiA9IG51bGw7CiAgICAgICAgcmV0dXJuIGFycmF5KFRSVUUpOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFByb3BlcnR5RGVmbkV4dHJhKCRuYW1lLCRleHRyYSkKICAgIHsKICAgICAgICBpZiggaXNfYXJyYXkoJGV4dHJhKSApICRleHRyYSA9IHNlcmlhbGl6ZSgkZXh0cmEpOwogICAgICAgICRkYiA9IGNtc21zKCktPkdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gU0VUIGV4dHJhID0gPyBXSEVSRSBuYW1lID0gPyc7CiAgICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGV4dHJhLCRuYW1lKSk7CiAgICB9CgogICAgZnVuY3Rpb24gQWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRvcHRpb25zICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkaW5zZXJ0X3ZhbHMgPSAnJzsKICAgICAgICAkb3JkZXJfaWQgPSAwOwogICAgICAgIGZvcmVhY2ggKCRvcHRpb25zIGFzICRvcHR0ZXh0KXsKLy8gaWYgbm8gYWN0dWFsIHRleHQgaW4gdGhlIGxpbmUsIG1ha2Ugc3VyZSBpdCBlcXVhbHMgJycsCi8vIGluIG9yZGVyIG5vdCB0byBhZGQgaXQgdG8gdGhlIGRiCiAgICAgICAgICAgICRvcHR0ZXh0ID0gdHJpbSgkb3B0dGV4dCk7CiAgICAgICAgICAgIGlmKHRyaW0oJG9wdHRleHQpID09ICcnIHx8IHRyaW0oJG9wdHRleHQpID09ICdfXycgKSBjb250aW51ZTsKCiAgICAgICAgICAgICRvcHRuYW1lID0gdHJpbSgkb3B0dGV4dCk7CiAgICAgICAgICAgIGlmKCBzdHJjaHIoICRvcHR0ZXh0LCAnPScgKSAhPT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAkdG1wID0gZXhwbG9kZSgnPScsJG9wdHRleHQsMik7CiAgICAgICAgICAgICAgICAkb3B0bmFtZSA9IHRyaW0oJHRtcFsxXSk7CiAgICAgICAgICAgICAgICAkb3B0dGV4dCA9IHRyaW0oJHRtcFswXSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRvcmRlcl9pZCsrOwogICAgICAgICAgICAkaW5zZXJ0X3ZhbHMgLj0gIignIgogICAgICAgICAgICAgICAgLiAkb3JkZXJfaWQgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG9wdG5hbWUgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG9wdHRleHQgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG5hbWUuICInKSwgIjsKICAgICAgICB9CgogICAgICAgICRpbnNlcnRfdmFscyA9IHN1YnN0cigkaW5zZXJ0X3ZhbHMsIDAsIC0yKTsKCiAgICAgICAgJGRiID0gJHRoaXMtPmdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMKCQkJKG9yZGVyX2lkLCBvcHRpb25fbmFtZSwgb3B0aW9uX3RleHQsIGNvbnRyb2xfbmFtZSkKCQkJVkFMVUVTICIgLiAkaW5zZXJ0X3ZhbHM7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CiAgICAgICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApIHJldHVybiBhcnJheShGQUxTRSwgJGRiLT5FcnJvck1zZygpKTsKCiAgICAgICAgJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICB9CgoKCiAgICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm5zKCkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgICAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm4gPSBudWxsOwogICAgICAgIHJldHVybiBhcnJheShUUlVFKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMgV0hFUkUgY29udHJvbF9uYW1lID0gPyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgICAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoICRwcmVmaXggPSAndXNlcicgKQogICAgewogICAgICAgIHNyYW5kKHRpbWUoKSk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKCiAgICAgICAgJG51bSA9IHJhbmQoMTAwLDk5OTk5KTsKICAgICAgICAkY291bnQgPSAwOwogICAgICAgICRzdWZmaXggPSAnJzsKICAgICAgICBpZiAoJG1vZC0+R2V0UHJlZmVyZW5jZSgidXNlcm5hbWVfaXNfZW1haWwiKSkgJHN1ZmZpeCA9ICdAc2FtcGxlLmNvbSc7CiAgICAgICAgd2hpbGUoICRjb3VudCA8IDEwMCApIHsgLy8gdG9kbywgMTAwIHNob3VsZCBiZSBjb25maWd1cmFibGU/CiAgICAgICAgICAgICRxID0gIlNFTEVDVCBpZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSB1c2VybmFtZSA9ID8iOwogICAgICAgICAgICAkdG1wID0gJGRiLT5HZXRPbmUoICRxLCBhcnJheSggJHByZWZpeC4kbnVtLiRzdWZmaXggKSApOwogICAgICAgICAgICBpZiggISR0bXAgKSByZXR1cm4gJHByZWZpeC4kbnVtLiRzdWZmaXg7CiAgICAgICAgICAgICRudW0gPSByYW5kKDEwMCw5OTk5OSk7CiAgICAgICAgICAgICsrJGNvdW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgoKICAgIGZ1bmN0aW9uIENsZWFyUHJvcGVydHlDYWNoZSgpCiAgICB7CiAgICAgICAgdW5zZXQoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKTsKICAgIH0KCgogICAgZnVuY3Rpb24gX2NhY2hlX3Byb3BlcnR5ZGVmbnMoKQogICAgewogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHsKICAgICAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgICAgICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZucyA9IGFycmF5KCk7CgogICAgICAgICAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4nOwogICAgICAgICAgICAkZGF0YSA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKICAgICAgICAgICAgaWYoICEkZGF0YSApIHJldHVybjsKCiAgICAgICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRkYXRhKTsgJGkrKyApIHsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkZGF0YVskaV1bJ2V4dHJhJ10pICkgJGRhdGFbJGldWydleHRyYSddID0gdW5zZXJpYWxpemUoJGRhdGFbJGldWydleHRyYSddKTsKICAgICAgICAgICAgICAgICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skZGF0YVskaV1bJ25hbWUnXV0gPSAkZGF0YVskaV07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbiggJG5hbWUgKQogICAgewogICAgICAgICR0aGlzLT5fY2FjaGVfcHJvcGVydHlkZWZucygpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHJldHVybiBGQUxTRTsKICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skbmFtZV0pKSByZXR1cm4gRkFMU0U7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skbmFtZV07CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbnMoKQogICAgewogICAgICAgICR0aGlzLT5fY2FjaGVfcHJvcGVydHlkZWZucygpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHJldHVybiBGQUxTRTsKICAgICAgICByZXR1cm4gJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zOwogICAgfQoKLyoqCiAqIFJldHVybnMgc2VsZWN0IG9wdGlvbnMgYXMgYSBzaW1wbGUgb3IgYSAyIGRpbWVuc2lvbmFsIGFycmF5CiAqCiAqIEBwYXJhbSBTdHJpbmcgJGNvbnRyb2xuYW1lIC0gbmFtZSBvZiB0aGUgZHJvcGRvd24gYXMgaW4gdGhlIHByb3BkZWZuIHRhYmxlCiAqIEBwYXJhbSBpbnQgJGRpbSAtIGRpbWVuc2lvbiBvZiB0aGUgYXJyYXkKICogCWlmICRkaW0gPT0gMSwgcmV0dXJucyBhIDEgZGltZW5zaW9uYWwgYXJyYXkgdGV4dD0+bmFtZQogKiAgICBpZiAkZGltID09IDIsIHJldHVybnMgYSAyIGRpbWVuc2lvbmFsIGFycmF5LCBlYWNoIGl0ZW0gYmVpbmcgYW4KICogCQlhcnJheSB3aXRoIHByb3BlcnRpZXMgJ29wdGlvbl9uYW1lJywgJ29wdGlvbl90ZXh0JywgJ2NvbnRyb2xfbmFtZScuCiAqLwogICAgZnVuY3Rpb24gR2V0U2VsZWN0T3B0aW9ucyggJGNvbnRyb2xuYW1lLCAkZGltPTEgKQogICAgewogICAgICAgIGlmKCAhJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zICkgewogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyBPUkRFUiBCWSBvcmRlcl9pZCI7CiAgICAgICAgICAgICRkYnIgPSAkZGItPkdldEFycmF5KCRxKTsKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCRkYnIpICkgJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zID0gJGRicjsKICAgICAgICB9CgogICAgICAgIGlmKCAhY291bnQoJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zKSApIHJldHVybiBmYWxzZTsKCiAgICAgICAgJHJldCA9IGFycmF5KCk7CiAgICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zKTsgJGkrKyApIHsKICAgICAgICAgICAgJHJvdyA9ICR0aGlzLT5fbXVsdGlzZWxlY3Rfb3B0aW9uc1skaV07CgogICAgICAgICAgICBpZiggJHJvd1snY29udHJvbF9uYW1lJ10gPT0gJGNvbnRyb2xuYW1lICkgewogICAgICAgICAgICAgICAgaWYoICRkaW0gPT0gMiApIHsKICAgICAgICAgICAgICAgICAgICAkcmV0W10gPSAkcm93OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJHJldFt0cmltKCRyb3dbJ29wdGlvbl90ZXh0J10pXSA9IHRyaW0oJHJvd1snb3B0aW9uX25hbWUnXSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYoICFjb3VudCgkcmV0KSApIHJldHVybiBmYWxzZTsKCiAgICAgICAgcmV0dXJuICRyZXQ7CiAgICB9CgoKICAgIGZ1bmN0aW9uIExvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcyA9ICcnLCAkbWQ1cHcgPSBmYWxzZSwgJGZvcmNlX2xvZ291dCA9IGZhbHNlKQogICAgewogICAgICAgICRlcnJvciA9ICcnOwogICAgICAgICR1aWQgPSAtMTsKICAgICAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkY29uZmlnID0gJGdDbXMtPkdldENvbmZpZygpOwoKICAgICAgICBpZiggISR0aGlzLT5DaGVja1Bhc3N3b3JkKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcywgJG1kNXB3ICkgKSB7CiAgICAgICAgICAgICR1aWQgPSAkdGhpcy0+R2V0VXNlcklEKCAkdXNlcm5hbWUgKTsKICAgICAgICAgICAgaWYoICEkdWlkICkgJHVpZCA9IC0xOwogICAgICAgICAgICAkZXJyb3IgPSAkbW9kLT5MYW5nKCdlcnJvcl9sb2dpbmZhaWxlZCcpOwogICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwnZmFpbCcpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJGVycm9yKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICR1aWQgPSAkdGhpcy0+R2V0VXNlcklEKCAkdXNlcm5hbWUgKTsKICAgICAgICAgICAgaWYoICRmb3JjZV9sb2dvdXQgKSAkdGhpcy0+TG9nb3V0KCR1aWQpOwoKICAgICAgICAgICAgaWYoICR0aGlzLT5Jc0FjY291bnRFeHBpcmVkKCAkdWlkICkgKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZC0+TGFuZygnZXJyb3JfYWNjb3VudGV4cGlyZWQnKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJykgPT0gMCApIHsKLy8gbWFrZSBzdXJlIHRoaXMgdXNlciBpc24ndCBhbHJlYWR5IGxvZ2dlZCBpbgogICAgICAgICAgICAgICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgVVNFUklEID0gPyI7CiAgICAgICAgICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCApICk7CiAgICAgICAgICAgICAgICBpZiggJGRicmVzdWx0ICYmICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSApIHsKICAgICAgICAgICAgICAgICAgICAkZXJyb3IgPSAkbW9kLT5MYW5nKCdlcnJvcl9ub3JlcGVhdGVkbG9naW5zJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRlcnJvcik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICR0aGlzLT5fX3Jlc2V0KCk7CiAgICAgICAgJHRoaXMtPl9zZXRfc2F2ZWRfbG9naW5kZXRhaWxzKCR1aWQpOwoKLy8gYW5kIGFkZCBoaXN0b3J5IGluZm8KICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwnbG9naW4nKTsKCi8vIHNlbmQgdGhlIGV2ZW50LgogICAgICAgICRpcCA9IGNnZV91dGlsczo6Z2V0X3JlYWxfaXAoKTsKICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICRtb2R1bGUtPlNlbmRFdmVudCgnT25Mb2dpbicsYXJyYXkoJ2lkJz0+JHVpZCwndXNlcm5hbWUnPT4kdXNlcm5hbWUsJ2lwJz0+JGlwKSk7CgogICAgICAgIHJldHVybiBhcnJheSgkdWlkKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRmV1c2Vyc01hbmlwdWxhdG9yKCAkdGhlX21vZHVsZSApCiAgICB7CiAgICAgICAgcGFyZW50OjpVc2VyTWFuaXB1bGF0b3IoICR0aGVfbW9kdWxlICk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIHRydWUvZmFsc2UKICAgIGZ1bmN0aW9uIEFzc2lnblVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgLy8gdmFsaWRhdGUgdGhlIHVzZXIgaWQKICAgICAgICBpZiggISR0aGlzLT5Vc2VyRXhpc3RzQnlJRCggJHVpZCApICkgcmV0dXJuIGZhbHNlOwoKICAgICAgICAvLyB2YWxpZGF0ZSB0aGUgZ3JvdXAgaWQKICAgICAgICBpZiggISR0aGlzLT5Hcm91cEV4aXN0c0J5SUQoICRnaWQgKSApIHJldHVybiBmYWxzZTsKCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgLy8gbWFrZSBzdXJlIGl0IGFscmVhZHkgZG9lc24ndCBleGlzdAogICAgICAgICRxID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgV0hFUkUgdXNlcmlkID0gPyBBTkQgZ3JvdXBpZCA9ID8nOwogICAgICAgICR0bXAgPSAkZGItPkdldFJvdygkcSxhcnJheSgkdWlkLCRnaWQpKTsKICAgICAgICBpZiggJHRtcCApIHJldHVybiB0cnVlOwoKICAgICAgICAvLyBhZGQgdGhlIHJlY29yZCB0byB0aGUgdGFibGUgdG8gbWFrZSB0aGlzCiAgICAgICAgLy8gdXNlciBhIG1lbWJlciBvZiB0aGlzIGdyb3VwCiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgKHVzZXJpZCwgZ3JvdXBpZCkgVkFMVUVTICg/LD8pIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGdpZCApICk7CiAgICAgICAgcmV0dXJuKCAkZGJyZXN1bHQgIT0gZmFsc2UgKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogICAgewogICAgICAgIC8vIGEgcGFzc3dvcmQgaXMgdmFsaWQsIGlmIGl0J3MgbGVuZ3RoIGlzCiAgICAgICAgLy8gd2l0aGluIGNlcnRhaW4gcmFuZ2VzCiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkbWlubGVuID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywgNiApOwogICAgICAgICRtYXhsZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnLCAyMCApOwogICAgICAgICRsZW4gPSBzdHJsZW4oJHBhc3N3b3JkKTsKICAgICAgICBpZiggJGxlbiA8ICRtaW5sZW4gKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiggJGxlbiA+ICRtYXhsZW4gKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CgogICAgICAgIHJldHVybiB0cnVlOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gRGVsZXRlVXNlckZ1bGwoICRpZCApCiAgICB7CiAgICAgICAgLy8gbG9nIHRoZSB1c2VyIG91dAogICAgICAgICR0aGlzLT5Mb2dvdXRVc2VyKCAkaWQgKTsKCiAgICAgICAgLy8gZGVsZXRlIHVzZXIgcHJvcGVydGllcwogICAgICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwoICRpZCApOwoKICAgICAgICAvLyBkZWxldGUgdXNlciBmcm9tIGdyb3VwcwogICAgICAgICRyZXQgPSAkdGhpcy0+UmVtb3ZlVXNlckZyb21Hcm91cCggJGlkLCAnJyApOwogICAgICAgIGlmKCAkcmV0WzBdID09IGZhbHNlICkgcmV0dXJuICRyZXQ7CgogICAgICAgIC8vIGRlbGV0ZSB1c2VyIHJlY29yZAogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSBpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CgogICAgICAgIC8vIGFuZCBkZWxldGUgYW55dGhpbmcgZnJvbSB0aGUgdGVtcGNvZGVzIHRhYmxlIHRvbwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSBXSEVSRSB1c2VyaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSApOwoKICAgICAgICAkdGhpcy0+X3VzZXJpZGJ5bmFtZSA9IGFycmF5KCk7CiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmRlbF91c2VyKCRpZCk7CiAgICAgICAgcmV0dXJuIGFycmF5KCBUUlVFLCAiIiApOwogICAgfQoKCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9nZXRfZ3JvdXBpbmZvKCR3aXRoX2NvdW50ID0gZmFsc2UpCiAgICB7CiAgICAgICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2dyb3VwaW5mb19jYWNoZSkgKSB7CiAgICAgICAgICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgICAgICBpZiggJGF1dGhfY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRhdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0xJU1RHUk9VUFMpICkgewogICAgICAgICAgICAgICAgJHRtcCA9ICRhdXRoX2NvbnN1bWVyLT5nZXRfZ3JvdXBfbGlzdChUUlVFKTsKICAgICAgICAgICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHRtcCBhcyAkZ2lkID0+ICRyZWMgKSB7CiAgICAgICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheSgnaWQnPT4kZ2lkLCdncm91cGRlc2MnPT4nJyk7CiAgICAgICAgICAgICAgICAgICAgaWYoIGlzX3N0cmluZygkcmVjKSAmJiAhaXNfYXJyYXkoJHJlYykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0bXAyWydncm91cG5hbWUnXSA9ICRyZWM7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCBpc3NldCgkcmVjWyduYW1lJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAkdG1wMlsnZ3JvdXBuYW1lJ10gPSAkcmVjWyduYW1lJ107CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCBpc3NldCgkcmVjWydncm91cG5hbWUnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0bXAyWydncm91cG5hbWUnXSA9ICRyZWNbJ2dyb3VwbmFtZSddOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiggaXNfYXJyYXkoJHJlYykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcmVjWydkZXNjJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRtcDJbJ2dyb3VwZGVzYyddID0gJHJlY1snZGVzYyddOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoIGlzc2V0KCRyZWNbJ2Rlc2NyaXB0aW9uJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRtcDJbJ2dyb3VwZGVzYyddID0gJHJlY1snZGVzY3JpcHRpb24nXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKCBpc3NldCgkcmVjWydncm91cGRlc2MnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdG1wMlsnZ3JvdXBkZXNjJ10gPSAkcmVjWydncm91cGRlc2MnXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgaWYoIGlzc2V0KCRyZWNbJ2NvdW50J10pICkgJHRtcDJbJ2NvdW50J10gPSAkcmVjWydjb3VudCddOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgJG91dFskZ2lkXSA9ICR0bXAyOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSAkb3V0OwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyB0aGUgY29uc3VtZXIgZG9lcyBub3QgcHJvdmlkZSBncm91cCBpbmZvLi4uLiBzbyB3ZSBnb3R0YSBsaXN0IGVtLgogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3Vwcyc7CiAgICAgICAgICAgIGlmKCAkd2l0aF9jb3VudCApIHsKICAgICAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZy4qLGNvdW50KGIudXNlcmlkKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgZwogICAgICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYgogICAgICAgICAgICAgICAgICBPTiBnLmlkID0gYi5ncm91cGlkIEdST1VQIEJZIGcuaWQnOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRkYnIgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkZGJyKSApICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlID0gY2dlX2FycmF5Ojp0b19oYXNoKCRkYnIsJ2lkJyk7CiAgICAgICAgfQogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICYmIGlzc2V0KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdKSApIHJldHVybiAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZVskZ2lkXTsKICAgIH0KCi8qKgogKiBSZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBpbmZvcm1hdGlvbgogKgogKiBAcGFyYW0gYXJyYXkgQW4gYXJyYXkgb2YgaW50ZWdlciB1c2VyIGlkcwogKiBAcGFyYW0gYm9vb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHdldGhlciB0byByZXR1cm4gcHJvcGVydHkgaW5mb3JtYXRpb24KICogQHJldHVybiBhcnJheSBvZiB1c2VyIGluZm8uICBPciBudWxsLgogKiBAZGVwcmVjYXRlZAogKi8KICAgIGZ1bmN0aW9uIEdldEJ1bGtVc2VySW5mbyggJHVpZHMsICRkZWVwID0gVFJVRSApCiAgICB7CiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmxvYWRfdXNlcnMoJHVpZHMsJGRlZXApOwoKICAgICAgICAkb3V0ID0gYXJyYXkoKTsKICAgICAgICBmb3JlYWNoKCAkdWlkcyBhcyAkb25lICkgewogICAgICAgICAgICAkb25lID0gKGludCkkb25lOwogICAgICAgICAgICBpZiggJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgJHQgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXJfbm9sb2FkKCRvbmUpOwogICAgICAgICAgICBpZiggaXNfYXJyYXkoJHQpICkgJG91dFtdID0gJHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5Ci8vIHNlY29uZCBlbGVtZW50IG9mIGFycmF5IG1heSBiZSBhbiBhcnJheQogICAgZnVuY3Rpb24gR2V0VXNlckluZm8oICR1aWQsICRkZWVwID0gRkFMU0UgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBhcnJheShGQUxTRSk7IC8vIHRvZG8sIGFkZCBhIG1lc3NhZ2UKICAgICAgICAkcm93ID0gZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyKCR1aWQsJGRlZXApOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHJvdykgKSByZXR1cm4gYXJyYXkoRkFMU0UpOwogICAgICAgIHJldHVybiBhcnJheSggVFJVRSwgJHJvdyApOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQovLyBzZWNvbmQgZWxlbWVudCBvZiBhcnJheSBtYXkgYmUgYW4gYXJyYXkKICAgIGZ1bmN0aW9uIEdldFVzZXJJbmZvQnlOYW1lKCAkdXNlcm5hbWUgKQogICAgewogICAgICAgIGlmKCAhJHVzZXJuYW1lICkgcmV0dXJuIGFycmF5KEZBTFNFKTsgLy8gdG9kbywgYWRkIGEgbWVzc2FnZQoKICAgICAgICAkdWlkID0gJHRoaXMtPkdldFVzZXJJRCgkdXNlcm5hbWUpOwogICAgICAgIGlmKCAhJHVpZCApIHsKICAgICAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2R1bGUtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKICAgIH0KCgogICAgZnVuY3Rpb24gR2V0VXNlckluZm9CeVByb3BlcnR5KCRwcm9wbmFtZSwkcHJvcHZhbHVlID0gbnVsbCkKICAgIHsKICAgICAgICAvLyBub3RlLi4uIGNhbm5vdCB3b3JrIG9uIGVuY3J5cHRlZCBwcm9wZXJ0aWVzLgogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgICAgICBpZiggIWlzX2FycmF5KCRkZWZucykgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfZGJlcnJvcicpKTsKICAgICAgICBpZiggIWlzc2V0KCRkZWZuc1skcHJvcG5hbWVdKSApIHJldHVybiBhcnJheShGQUxTRSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJykpOwogICAgICAgIGlmKCAkZGVmbnNbJHByb3BuYW1lXVsnZW5jcnlwdCddICkgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2R1bGUtPkxhbmcoJ2Vycm9yX2RiZXJyb3InKSk7CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRwYXJtcyA9IGFycmF5KCRwcm9wbmFtZSk7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCB1c2VyaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyB1cCBXSEVSRSB1cC50aXRsZSA9ID8gQU5EIGRhdGEgPSA/JzsKCiAgICAgICAgaWYoICFpc19udWxsKCRwcm9wdmFsdWUpICkgewogICAgICAgICAgICAkcXVlcnkgLj0gJyBBTkQgZGF0YSA9ID8nOwogICAgICAgICAgICAkcGFybXNbXSA9ICRwcm9wdmFsdWU7CiAgICAgICAgfQogICAgICAgICR1aWQgPSAkZGItPkdldE9uZSgkcXVlcnksJHBhcm1zKTsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykpOwoKICAgICAgICByZXR1cm4gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFVzZXJIaXN0b3J5KCR1aWQsJGFjdGlvbj0nJywkY291bnQ9LTEpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHBhcm1zID0gYXJyYXkoJHVpZCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2hpc3RvcnkgV0hFUkUgdXNlcmlkID0gPyc7CiAgICAgICAgaWYoICFlbXB0eSgkYWN0aW9uKSApIHsKICAgICAgICAgICAgJHF1ZXJ5IC49ICcgQU5EIGFjdGlvbiA9ID8nOwogICAgICAgICAgICAkcGFybXNbXSA9ICRhY3Rpb247CiAgICAgICAgfQoKICAgICAgICAkcmVzdWx0cyA9ICcnOwogICAgICAgIGlmKCAkY291bnQgPD0gMCApIHsKICAgICAgICAgICAgJHJlc3VsdHMgPSAkZGItPkdldEFycmF5KCRxdWVyeSwkcGFybXMpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJGRiciA9ICRkYi0+U2VsZWN0TGltaXQoJHF1ZXJ5LChpbnQpJGNvdW50KTsKICAgICAgICAgICAgd2hpbGUoICRkYnIgJiYgKCRyb3cgPSAkZGJyLT5GZXRjaFJvdygpKSApIHsKICAgICAgICAgICAgICAgICRyZXN1bHRzW10gPSAkcm93OwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiggY291bnQoJHJlc3VsdHMpID09IDEgKSB7CiAgICAgICAgICAgICAgICAkdG1wID0gJHJlc3VsdHNbMF07CiAgICAgICAgICAgICAgICAkcmVzdWx0cyA9ICR0bXA7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZXN1bHRzOwogICAgfQoKCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0TG9nZ2VkSW5Vc2Vycygkbm90X2FjdGl2ZV9zaW5jZSA9ICcnKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwoKICAgICAgICAkcSA9ICdTRUxFQ1QgdXNlcmlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluJzsKICAgICAgICAkcXBhcm1zID0gYXJyYXkoKTsKICAgICAgICBpZiggJG5vdF9hY3RpdmVfc2luY2UgKSB7CiAgICAgICAgICAgICRxIC49ICIgV0hFUkUgbGFzdHVzZWQgPCA/IjsKICAgICAgICAgICAgJHFwYXJtc1tdID0gJG5vdF9hY3RpdmVfc2luY2U7CiAgICAgICAgfQoKICAgICAgICAkcmVzID0gJGRiLT5HZXRDb2woJHEsJHFwYXJtcyk7CiAgICAgICAgcmV0dXJuICRyZXM7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5IG9yIGZhbHNlCiAgICBmdW5jdGlvbiBDb3VudFVzZXJzSW5Hcm91cCggJGdyb3VwaWQgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwoKICAgICAgICAkcSA9ICcnOwogICAgICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAgICAgaWYoICRncm91cGlkID09ICcnIHx8ICRncm91cGlkIDwgMCApIHsKICAgICAgICAgICAgJHEgPSAiU0VMRUNUIGNvdW50KGlkKSBhcyBudW0gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMiOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHEgPSAiU0VMRUNUIGNvdW50KGlkKSBhcyBudW0gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMsIi4KICAgICAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSBpZD11c2VyaWQgQU5EIGdyb3VwaWQgPSA/IjsKICAgICAgICAgICAgJHBhcm1zW10gPSAkZ3JvdXBpZDsKICAgICAgICB9CgogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwYXJtcyApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGZhbHNlOwoKICAgICAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgICAgIHJldHVybiAkcm93WydudW0nXTsKICAgIH0KCgovKioKICogUmVwbGFjZSB0aGlzIGNvZGUgd2l0aCBhIHVzZXIgcXVlcnkKICovCiAgICBmdW5jdGlvbiBHZXRGdWxsVXNlcnNJbkdyb3VwKCRnaWQpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCB1c2VyaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSBncm91cGlkID0gPyc7CiAgICAgICAgJHRtcCA9ICRkYi0+R2V0Q29sKCRxdWVyeSxhcnJheSgkZ2lkKSk7CiAgICAgICAgaWYoICEkdG1wICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICBmZXVfdXNlcl9jYWNoZTo6bG9hZF91c2VycygkdG1wLFRSVUUpOwogICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgJG9uZSA9IChpbnQpJG9uZTsKICAgICAgICAgICAgaWYoICRvbmUgPCAxICkgY29udGludWU7CgogICAgICAgICAgICAkcmVjID0gZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyX25vbG9hZCgkb25lLFRSVUUpOwogICAgICAgICAgICBpZiggaXNfYXJyYXkoJHJlYykgJiYgaXNzZXQoJHJlY1snZnByb3BzJ10pICkgewogICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHJlY1snZnByb3BzJ10gYXMgJG9uZV9wcm9wICkgewogICAgICAgICAgICAgICAgICAgICR0bXAyWyRvbmVfcHJvcFsndGl0bGUnXV0gPSAkb25lX3Byb3BbJ2RhdGEnXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRyZWNbJ3Byb3BzJ10gPSAkdG1wMjsKICAgICAgICAgICAgfQogICAgICAgICAgICAkb3V0W10gPSAkcmVjOwogICAgICAgIH0KCiAgICAgICAgaWYoIGNvdW50KCRvdXQpICkgcmV0dXJuICRvdXQ7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKCi8vIGRlcHJlY2F0ZWQKICAgIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdyb3VwaWQgPSAnJywgJHVzZXJyZWdleCA9ICcnLCAkbGltaXQgPSAnJywgJHNvcnQgPSAnJywgJHByb3BlcnR5ID0gJycsICRwcm9wcmVnZXggPSAnJywKICAgICRsb2dnZWRpbm9ubHkgPSAwLCAkc3RhcnRfcmVjb3JkID0gMCkKICAgIHsKICAgICAgICAvLyB0b2RvOiB0aGlzIHNob3VsZCBnbyBpbnRvIHRoZSBjb25zdW1lci4KICAgICAgICAkdGhpcy0+cmVzZXRfbGFzdHVzZXJxdWVyeSgpOwogICAgICAgICRxdWVyeSA9IG5ldyBmZXVfdXNlcl9xdWVyeSgpOwogICAgICAgIGlmKCAoaW50KSRsaW1pdCA+IDAgKSAkcXVlcnktPnNldF9wYWdlbGltaXQoJGxpbWl0KTsKICAgICAgICBpZiggKGludCkkc3RhcnRfcmVjb3JkID4gMCApICRxdWVyeS0+c2V0X29mZnNldCgkc3RhcnRfcmVjb3JkKTsKICAgICAgICBpZiggJGdyb3VwaWQgPiAwICkgJHF1ZXJ5LT5hZGRfYW5kX29wdChmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0dST1VQSUQsJGdyb3VwaWQpOwogICAgICAgIGlmKCAkdXNlcnJlZ2V4ICkgJHF1ZXJ5LT5hZGRfYW5kX29wdChmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FX1JFLCR1c2VycmVnZXgpOwogICAgICAgIGlmKCAkcHJvcGVydHkgJiYgJHByb3ByZWdleCApICRxdWVyeS0+YWRkX2FuZF9vcHRfb2JqKG5ldyBmZXVfdXNlcl9xdWVyeV9vcHQoZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9QUk9QRVJUWV9SRSwkcHJvcGVydHksJHByb3ByZWdleCkpOwogICAgICAgIGlmKCAkbG9nZ2VkaW5vbmx5ICkgJHF1ZXJ5LT5hZGRfYW5kX29wdChmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0xPR0dFRElOLDEpOwogICAgICAgICRxdWVyeS0+c2V0X3Jlc3VsdF90eXBlKGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfVFlQRV9GVUxMKTsKCiAgICAgICAgc3dpdGNoKCAkc29ydCApIHsKICAgICAgICBjYXNlICd1c2VybmFtZSc6CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRieShmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRCWV9VU0VSTkFNRSk7CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRvcmRlcihmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0MpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICd1c2VybmFtZSBkZXNjJzoKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydGJ5KGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FKTsKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydG9yZGVyKGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVE9SREVSX0RFU0MpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdjcmVhdGVkYXRlJzoKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydGJ5KGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX0NSRUFURUQpOwogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0b3JkZXIoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUT1JERVJfQVNDKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnY3JlYXRlZGF0ZSBkZXNjJzoKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydGJ5KGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX0NSRUFURUQpOwogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0b3JkZXIoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUT1JERVJfREVTQyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2V4cGlyZXMnOgogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0YnkoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfRVhQSVJFUyk7CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRvcmRlcihmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0MpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdleHBpcmVzIGRlc2MnOgogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0YnkoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfRVhQSVJFUyk7CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRvcmRlcihmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQoKICAgICAgICAkcnMgPSAkcXVlcnktPmV4ZWN1dGUoKTsKICAgICAgICAkdG90YWxfbWF0Y2hlcyA9ICRycy0+Z2V0X2ZvdW5kX3Jvd3MoKTsKICAgICAgICAkZGF0YSA9IGFycmF5KCk7CiAgICAgICAgd2hpbGUoICEkcnMtPkVPRiApIHsKICAgICAgICAgICAgJGRhdGFbXSA9ICRycy0+ZmllbGRzOwogICAgICAgICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgfQogICAgICAgICR0aGlzLT5fbGFzdF91c2VycXVlcnlfbWF0Y2hlcyA9ICRkYXRhOwogICAgICAgICR0aGlzLT5fbGFzdF91c2VycXVlcnlfY291bnQgPSAkdG90YWxfbWF0Y2hlczsKICAgICAgICByZXR1cm4gJGRhdGE7CiAgICB9CgovLyBkZXByZWNhdGVkCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xhc3R1c2VycXVlcnlfY291bnQoKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+X2xhc3RfdXNlcnF1ZXJ5X2NvdW50OwogICAgfQoKLy8gZGVwcmVjYXRlZAogICAgcHVibGljIGZ1bmN0aW9uIGdldF9sYXN0dXNlcnF1ZXJ5X21hdGNoZXMoKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+X2xhc3RfdXNlcnF1ZXJ5X21hdGNoZXM7CiAgICB9CgovLyBkZXByZWNhdGVkCiAgICBwdWJsaWMgZnVuY3Rpb24gcmVzZXRfbGFzdHVzZXJxdWVyeSgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sYXN0X3VzZXJxdWVyeV9jb3VudCA9IG51bGw7CiAgICAgICAgJHRoaXMtPl9sYXN0X3VzZXJxdWVyeV9tYXRjaGVzID0gbnVsbDsKICAgIH0KCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgICBmdW5jdGlvbiBHcm91cEV4aXN0c0J5SUQoICRnaWQgKQogICAgewogICAgICAgICRkYXRhID0gJHRoaXMtPkdldEdyb3VwSW5mbyggJGdpZCApOwogICAgICAgIHJldHVybiggJGRhdGEgIT0gZmFsc2UgKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICkKICAgIHsKICAgICAgICAkZ2lkID0gJHRoaXMtPkdldEdyb3VwSUQoICRuYW1lICk7CiAgICAgICAgcmV0dXJuKCAkZ2lkICE9IGZhbHNlICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIExvZ2dlZEluRW1haWwoKQogICAgewogICAgICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPkdldEVtYWlsKCR1c2VyaWQpOwogICAgfQoKCiAgICBmdW5jdGlvbiBHZXRFbWFpbCgkdWlkKQogICAgewogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHJlc3VsdCA9IGZhbHNlOwoKICAgICAgICBpZiAoJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSkgewogICAgICAgICAgICAkdG1wID0gZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyKCR1aWQpOwogICAgICAgICAgICBpZiggIWlzX2FycmF5KCR0bXApICkgcmV0dXJuIEZBTFNFOwogICAgICAgICAgICAkcmVzdWx0ID0gJHRtcFsndXNlcm5hbWUnXTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIC8vIGdldCB0aGUgdXNlcnMgZmlyc3QgZW1haWwgYWRkcmVzcy4KICAgICAgICAgICAgJHEgPSAnU0VMRUNUIGRhdGEgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4sJy4KICAgICAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSBuYW1lPXRpdGxlIEFORCB0eXBlPTIgQU5EIHVzZXJpZCA9ID8nOwogICAgICAgICAgICAkcmVzdWx0ID0gJGRiLT5HZXRPbmUoICRxLCBhcnJheSggJHVpZCApICk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfQoKCi8vIHRvZG86IG1vdmUgdGhpcyB0byBtYWluIG1vZHVsZS4KICAgIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCA9IC0xLCAkY2hlY2tfZXhpc3RpbmcgPSB0cnVlICkKICAgIHsKICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgICAgIGlmKCAhaXNfZW1haWwoJGVtYWlsKSApIHsKICAgICAgICAgICAgJHJlc3VsdFswXSA9IGZhbHNlOwogICAgICAgICAgICAkcmVzdWx0WzFdID0gJG1vZHVsZS0+TGFuZygnZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCcpOwogICAgICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgICAgICB9CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwoKICAgICAgICBpZiggJGNoZWNrX2V4aXN0aW5nICkgewogICAgICAgICAgICBpZiAoJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSkgewogICAgICAgICAgICAgICAgJHEgPSAnU0VMRUNUIHVzZXJuYW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIHVzZXJuYW1lID0gPyc7CiAgICAgICAgICAgICAgICAkcGFybSA9IGFycmF5KCRlbWFpbCk7CiAgICAgICAgICAgICAgICBpZiAoJHVpZCA+IC0xKSB7CiAgICAgICAgICAgICAgICAgICAgJHEgLj0gJyBBTkQgaWQgIT0gPyc7CiAgICAgICAgICAgICAgICAgICAgJHBhcm1bXSA9ICR1aWQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCAkcGFybSApOwogICAgICAgICAgICAgICAgaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKSB7CiAgICAgICAgICAgICAgICAgICAgJHJlc3VsdFswXSA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICRyZXN1bHRbMV0gPSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9lbWFpbGFscmVhZHl1c2VkJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiggISRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnKSApIHsKICAgICAgICAgICAgICAgICRxID0gIlNFTEVDVCBkYXRhIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuLCIuCiAgICAgICAgICAgICAgICAgICAgY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIG5hbWU9dGl0bGUgQU5EIHR5cGU9MiBBTkQgZGF0YSBMSUtFID8iOwogICAgICAgICAgICAgICAgJHBhcm1zID0gYXJyYXkoICRlbWFpbCApOwogICAgICAgICAgICAgICAgaWYoICR1aWQgPiAtMSApIHsKICAgICAgICAgICAgICAgICAgICAkcSAuPSAnIEFORCB1c2VyaWQgIT0gPyc7CiAgICAgICAgICAgICAgICAgICAgJHBhcm1zW10gPSAkdWlkOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRlbWFpbCApICk7CiAgICAgICAgICAgICAgICBpZiggJGRicmVzdWx0ICYmICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSApIHsKICAgICAgICAgICAgICAgICAgICAkcmVzdWx0WzBdID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgJHJlc3VsdFsxXSA9ICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgJHJlc3VsdFswXSA9IHRydWU7CiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFVzZXJuYW1lUHJvbXB0KCkKICAgIHsKICAgICAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgcmV0dXJuICRjb25zdW1lci0+Z2V0X3VzZXJuYW1lX3Byb21wdCgpOwogICAgfQoKLy8gdG9kbzogbW92ZSB0aGlzIHRvIHRoZSBtYWluIG1vZHVsZS4KICAgIGZ1bmN0aW9uIElzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lLCAkY2hlY2tfZW1haWwgPSB0cnVlLCAkdWlkID0gLTEgKQogICAgewogICAgICAgICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgICAgICByZXR1cm4gJGNvbnN1bWVyLT52YWxpZGF0ZV91c2VybmFtZSgkdXNlcm5hbWUsJGNoZWNrX2VtYWlsLCR1aWQpOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gUmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KCBGQUxTRSApOyAvLyB0b2RvLCByZXR1cm4gZXJyb3IgbWVzc2FnZQogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRwYXJtcyA9IGFycmF5KCAkdWlkICk7CiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgV0hFUkUgdXNlcmlkID0gPyI7CiAgICAgICAgaWYoICRnaWQgIT0gJycgKSB7CiAgICAgICAgICAgICRxIC49ICIgQU5EIGdyb3VwaWQgPSA/IjsKICAgICAgICAgICAgYXJyYXlfcHVzaCggJHBhcm1zLCAkZ2lkICk7CiAgICAgICAgfQogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwYXJtcyApOwogICAgICAgIGlmKCAkZGJyZXN1bHQgPT0gZmFsc2UgKSByZXR1cm4gYXJyYXkoIEZBTFNFLCAkZGItPkVycm9yTXNnKCkgKTsKICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUgKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgYXJyYXkKICAgIGZ1bmN0aW9uIFNldEdyb3VwKCAkaWQsICRuYW1lLCAkZGVzYyApCiAgICB7CiAgICAgICAgJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSBudWxsOwogICAgICAgIGlmKCAhaXNzZXQoICRuYW1lICkgfHwgJG5hbWUgPT0gJycgKSB7CiAgICAgICAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLAkkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRlaWQgPSAkdGhpcy0+R2V0R3JvdXBJRCggJG5hbWUgKTsKICAgICAgICBpZiggJGVpZCAhPSBmYWxzZSAmJiAkZWlkICE9ICRpZCApIHsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnKSk7CiAgICAgICAgfQoKICAgICAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyBTRVQgZ3JvdXBuYW1lID0gPywgZ3JvdXBkZXNjID0gPyBXSEVSRSBpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmFtZSwgJGRlc2MsICRpZCApICk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKCiAgICAgICAgJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSBudWxsOwogICAgICAgIHJldHVybiBhcnJheSggVFJVRSwgJycpOwogICAgfQoKCiAgICBmdW5jdGlvbiBTZXRVc2VyUGFzc3dvcmQoICR1aWQsICRwYXNzd29yZCApCiAgICB7CiAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpKTsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIFNFVCBwYXNzd29yZCA9ID8gV0hFUkUgaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggbWQ1KCRwYXNzd29yZC4kdGhpcy0+Z2V0X3NhbHQoKSksICR1aWQgKSk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKCiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmRlbF91c2VyKCR1aWQpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFLCIiKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgYXJyYXkKICAgIGZ1bmN0aW9uIFNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyA9IGZhbHNlLCAkZG9fbWQ1ID0gdHJ1ZSApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KEZBTFNFLCIiKTsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwoKICAgICAgICAvLyBtYWtlIHN1cmUgdGhhdCB0aGlzIHVzZXIgZXhpc3RzCiAgICAgICAgJHJldCA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgICAgIGlmKCAkcmV0WzBdID09IEZBTFNFICkgcmV0dXJuIGFycmF5KEZBTFNFLCAkbW9kdWxlLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSk7CgogICAgICAgIC8vIG1ha2Ugc3VyZSB0aGF0IHRoaXMgdXNlcm5hbWUgaXMgbm90IHRha2VuIGJ5IHNvbWUgb3RoZXIgaWQKICAgICAgICAkbnVpZCA9ICR0aGlzLT5HZXRVc2VySUQoJHVzZXJuYW1lKTsKICAgICAgICBpZiggJG51aWQgIT0gZmFsc2UgJiYgJG51aWQgIT0gJHVpZCApIHJldHVybiBhcnJheShGQUxTRSwgJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5hbWV0YWtlbicsJHVpZCkpOwoKICAgICAgICAkZGJyZXN1bHQgPSAnJzsKICAgICAgICAkcGFybXMgPSBhcnJheSgpOwogICAgICAgICRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgU0VUIHVzZXJuYW1lID0gPyI7CgogICAgICAgICRwYXJtc1tdID0gJHVzZXJuYW1lOwogICAgICAgIGlmKCB0cmltKCAkcGFzc3dvcmQgKSAhPSAnJyApIHsKICAgICAgICAgICAgJHEgLj0gIiwgcGFzc3dvcmQgPSA/IjsKICAgICAgICAgICAgaWYoICRkb19tZDUgKSB7CiAgICAgICAgICAgICAgICAkcGFybXNbXSA9IG1kNSgkcGFzc3dvcmQuJHRoaXMtPmdldF9zYWx0KCkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJHBhcm1zW10gPSAkcGFzc3dvcmQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYoICRleHBpcmVzICE9IGZhbHNlICkgewogICAgICAgICAgICAkcSAuPSAiLCBleHBpcmVzID0gPyI7CiAgICAgICAgICAgICRwYXJtc1tdID0gdHJpbSgkZGItPkRCVGltZVN0YW1wKCRleHBpcmVzKSwiJyIpOwogICAgICAgIH0KICAgICAgICAkcSAuPSAiIFdIRVJFIGlkID0gPyI7CiAgICAgICAgJHBhcm1zW10gPSAkdWlkOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwYXJtcyApOwoKICAgICAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkgcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CgogICAgICAgICR0aGlzLT5fdXNlcmlkYnluYW1lID0gYXJyYXkoKTsKICAgICAgICBmZXVfdXNlcl9jYWNoZTo6ZGVsX3VzZXIoJHVpZCk7CgogICAgICAgIC8vIENoYW5nZWQgdG8gcGFzcyAkdWlkIGJhY2sgc28gaXQgbWF0Y2hlcyBBZGRVc2VyKCkKICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICR1aWQgKTsKICAgIH0KCgovKioKICogU2V0IHRoZSB1c2VyIGdyb3VwIG1lbWJlcnNoaXBzCiAqIGRvZXMgbm90IGFsdGVyIGFueSB1c2VyIHByb3BlcnRpZXMuCiAqIGRvZXMgbm90IHZhbGlkYXRlIGdyb3VwIGlkcywgYnV0IGRvZXMgdmFsaWRhdGUgdWlkCiAqCiAqIEBwYXJhbSBpbnQgdXNlcmlkCiAqIEBwYXJhbSBhcnJheSBhcnJheSBvZiBpbnRlZ2VyIGdyb3VwIGlkcwogKiBAcmV0dXJuIGFycmF5IChzdGF0dXMsbXNnKQogKi8KICAgIGZ1bmN0aW9uIFNldFVzZXJHcm91cHMoICR1aWQsICRncnBpZHMgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBhcnJheShGQUxTRSwiIik7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgIC8vIGZpcnN0IG1ha2Ugc3VyZSB0aGlzIHVzZXIgZXhpc3RzCiAgICAgICAgJHJldCA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgICAgIGlmKCAkcmV0WzBdID09IEZBTFNFICkgcmV0dXJuIGFycmF5KEZBTFNFLCAiVXNlciBkb2VzIG5vdCBleGlzdCIpOwoKICAgICAgICAvLyB0aGVuIHJlbW92ZSBhbGwgaGlzIGN1cnJlbnQgYXNzaWdubWVudHMKICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSB1c2VyaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCApKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSAgKTsKCiAgICAgICAgaWYoIGlzX2FycmF5KCRncnBpZHMpICYmIGNvdW50KCRncnBpZHMpICkgewogICAgICAgICAgICAvLyBhbmQgYWRkIGFsbCBvZiB0aGVtIGluCiAgICAgICAgICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFZBTFVFUyAoPyw/KSI7CiAgICAgICAgICAgIGZvcmVhY2goICRncnBpZHMgYXMgJGdycGlkICkgewogICAgICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQsICRncnBpZCApICk7CiAgICAgICAgICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICIiICk7CiAgICB9CgogICAgZnVuY3Rpb24gQWRkVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+QXNzaWduVXNlclRvR3JvdXAoJHVpZCwkZ2lkKTsKICAgIH0KCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgICBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydGllcyggJHVpZCwgJHByb3BzICkKICAgIHsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgLy8gRGVsZXRlIGFsbCB0aGUgdXNlciBwcm9wZXJ0aWVzCiAgICAgICAgLy8gYW5kIHNldCBuZXcgb25lcwogICAgICAgICR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCAnJywgJHVpZCwgdHJ1ZSApOwogICAgICAgIGZldV91c2VyX2NhY2hlOjpkZWxfdXNlcigkdWlkKTsKCiAgICAgICAgaWYoIGlzX2FycmF5KCRwcm9wcykgJiYgY291bnQoJHByb3BzKSApIHsKICAgICAgICAgICAgaWYoIGNnZV9hcnJheTo6aXNfaGFzaCgkcHJvcHMpICkgewogICAgICAgICAgICAgICAgZm9yZWFjaCggJHByb3BzIGFzICRrZXkgPT4gJHZhbCApIHsKICAgICAgICAgICAgICAgICAgICBpZiAoICgkciA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydHlGdWxsKCAka2V5LCAkdmFsLCAkdWlkICkpID09IGZhbHNlKSByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJHByb3AgKSB7CiAgICAgICAgICAgICAgICAgICAgbGlzdCggJGtleSwgJHZhbCApID0gZXhwbG9kZSgnPScsJHByb3AsMik7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAoJHIgPSAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCggJGtleSwgJHZhbCwgJHVpZCApKSA9PSBmYWxzZSkgcmV0dXJuIEZBTFNFOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gVFJ1RTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICAgICAkZGF0YSA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgICAgIHJldHVybiggJGRhdGFbMF0gIT09IEZBTFNFICk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5IG9yIGZhbHNlCiAgICBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydGllcygkdWlkKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICAgICAkdWluZm8gPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHVpZCxUUlVFKTsKICAgICAgICBpZiggIWlzX2FycmF5KCR1aW5mbyApIHx8ICFpc3NldCgkdWluZm9bJ2Zwcm9wcyddKSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgcmV0dXJuICR1aW5mb1snZnByb3BzJ107CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5IG9mIHJlY29yZHMgb3IgZmFsc2UKICAgIGZ1bmN0aW9uIEdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpCiAgICB7CiAgICAgICAgJGF1dGhfY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgaWYoICRhdXRoX2NvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9HUk9VUE1FTUJFUlNISVApICkgewogICAgICAgICAgICAkb3V0ID0gJGF1dGhfY29uc3VtZXItPmdldF9ncm91cF9tZW1iZXJzaGlwKCR1c2VyaWQpOwogICAgICAgICAgICBpZiggIWlzX2FycmF5KCRvdXQpIHx8IGNvdW50KCRvdXQpID09IDAgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICRyZXMgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkb3V0IGFzICRvbmUgKSB7CiAgICAgICAgICAgICAgICAkcmVzW10gPSBhcnJheSgndXNlcmlkJz0+JHVzZXJpZCwnZ3JvdXBpZCc9PiRvbmUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAkcmVzOwogICAgICAgIH0KCiAgICAgICAgLy8gc2hvdWxkbid0IGJlIHVzZWQgYW55IG1vcmUuLi4gYnV0IGp1c3QgaW4gY2FzZS4KICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZD0/IjsKICAgICAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLGFycmF5KCR1c2VyaWQpKTsKICAgICAgICBpZiAoJGRicmVzdWx0ICYmICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSkgewogICAgICAgICAgICAkcmVzdWx0PWFycmF5KCk7OwogICAgICAgICAgICB3aGlsZSAoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsKICAgICAgICAgICAgICAgICRyZXN1bHRbXSA9ICRyb3c7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgIH0KCi8vCi8vIGVuZCBvZiByYyBmdW5jdGlvbnMKLy8KCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRlZmF1bHR2YWx1ZT1mYWxzZSkKICAgIHsKICAgICAgICAkdXNlcmlkPSR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYgKCR1c2VyaWQ9PT1mYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiAkdGhpcy0+R2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkZGVmYXVsdHZhbHVlKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCAkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICAkdWluZm8gPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHVzZXJpZCxUUlVFKTsKCiAgICAgICAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCR0aXRsZSk7CiAgICAgICAgaWYoICEkZGVmbiApIHJldHVybiBmYWxzZTsKCiAgICAgICAgaWYoIGlzc2V0KCR1aW5mb1snZnByb3BzJ10pICkgewogICAgICAgICAgICBmb3JlYWNoKCAkdWluZm9bJ2Zwcm9wcyddIGFzICRvbmVwcm9wICkgewogICAgICAgICAgICAgICAgaWYoICRvbmVwcm9wWyd0aXRsZSddID09ICR0aXRsZSApIHJldHVybiAkb25lcHJvcFsnZGF0YSddOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAkZGVmYXVsdHZhbHVlOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIElzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVpZCwkdGl0bGUsJGRhdGEpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJGRiciA9ICcnOwogICAgICAgIGlmKCAkdWlkID4gMCApIHsKICAgICAgICAgICAgJHEgPSAnU0VMRUNUIGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMKICAgICAgICAgICAgV0hFUkUgdGl0bGUgPSA/IEFORCB1c2VyaWQgIT0gPyBBTkQgZGF0YSA9ID8nOwogICAgICAgICAgICAkZGJyID0gJGRiLT5HZXRPbmUoJHEsYXJyYXkoJHRpdGxlLCR1aWQsJGRhdGEpKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICRxID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzCiAgICAgICAgICAgIFdIRVJFIHRpdGxlID0gPyBBTkQgZGF0YSA9ID8nOwogICAgICAgICAgICAkZGJyID0gJGRiLT5HZXRPbmUoJHEsYXJyYXkoJHRpdGxlLCRkYXRhKSk7CiAgICAgICAgfQogICAgICAgIGlmKCAkZGJyICkgcmV0dXJuIEZBTFNFOwogICAgICAgIHJldHVybiBUUlVFOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpCiAgICB7CiAgICAgICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCRkYXRhLCR1c2VyaWQpOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCRkYXRhLCR1c2VyaWQpCiAgICB7CiAgICAgICAgaWYgKCR1c2VyaWQ9PT1mYWxzZSkgcmV0dXJuIEZBTFNFOwogICAgICAgICRkZWZuID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbigkdGl0bGUpOwogICAgICAgIGlmKCAhJGRlZm4gKSByZXR1cm4gRkFMU0U7CgogICAgICAgIGlmKCAkZGVmblsnZW5jcnlwdCddICkgewogICAgICAgICAgICAvLyBnb3R0YSBlbmNyeXB0LgogICAgICAgICAgICAkdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdXNlcmlkLFRSVUUpOwogICAgICAgICAgICAkZGF0YSA9IGJhc2U2NF9lbmNvZGUoY2dlX2VuY3J5cHQ6OmVuY3J5cHQoJHRoaXMtPl9lbmNyeXB0aW9uX2tleSwkZGF0YSkpOwogICAgICAgIH0KCiAgICAgICAgaWYoICRkZWZuWydmb3JjZV91bmlxdWUnXSAmJiAhJHRoaXMtPklzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVzZXJpZCwkdGl0bGUsJGRhdGEpICkgewogICAgICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgICAgfQoKICAgICAgICAkZGI9JHRoaXMtPkdldERCKCk7CiAgICAgICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdGl0bGU9PyBBTkQgdXNlcmlkPT8iOwogICAgICAgICRwPWFycmF5KCR0aXRsZSwkdXNlcmlkKTsKICAgICAgICAkcj0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgICAgIGlmICghJHIgfHwgKCRyLT5OdW1Sb3dzKCk9PTApKSB7CiAgICAgICAgICAgICRuZXdpZD0kZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllc19zZXEiKTsKICAgICAgICAgICAgJHE9IklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIChpZCx1c2VyaWQsdGl0bGUsZGF0YSkgVkFMVUVTICg/LD8sPyw/KSI7CiAgICAgICAgICAgICRwPWFycmF5KCRuZXdpZCwkdXNlcmlkLCR0aXRsZSwkZGF0YSk7CiAgICAgICAgICAgICRyPSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJHJvdz0kci0+RmV0Y2hSb3coKTsKICAgICAgICAgICAgJHE9IlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBTRVQgZGF0YT0/IFdIRVJFIGlkPT8iOwogICAgICAgICAgICAkcD1hcnJheSgkZGF0YSwoaW50KSRyb3dbImlkIl0pOwogICAgICAgICAgICAkcj0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgICAgIH0KCiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmRlbF91c2VyKCR1c2VyaWQpOwogICAgICAgIHJldHVybiAoJHIhPWZhbHNlKTsKICAgIH0KCgovLyBkZWxldGUgYWxsIG9jY3VyYW5jZXMgb2YgdGhlIHVzZXJwcm9wZXJ0eSBieSBuYW1lCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHlCeU5hbWUoICR0aXRsZSApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERCKCk7CiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdGl0bGU9PyI7CiAgICAgICAgJHAgPSBhcnJheSggJHRpdGxlICk7CiAgICAgICAgJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwICk7CgogICAgICAgIGZldV91c2VyX2NhY2hlOjpjbGVhcl9hbGwoKTsKICAgICAgICByZXR1cm4gKCRyZXN1bHQhPWZhbHNlKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGw9ZmFsc2UpCiAgICB7CiAgICAgICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbCk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsPWZhbHNlKQogICAgewogICAgICAgICRkYj0kdGhpcy0+R2V0REIoKTsKICAgICAgICAkcT0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdXNlcmlkPT8iOwogICAgICAgIGlmICghJGFsbCkgJHEuPSIgQU5EIHRpdGxlPT8iOwogICAgICAgICRwPWFycmF5KCk7CiAgICAgICAgaWYgKCRhbGwpICRwPWFycmF5KCR1c2VyaWQpOyBlbHNlICRwPWFycmF5KCR1c2VyaWQsJHRpdGxlKTsKICAgICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CgogICAgICAgIGZldV91c2VyX2NhY2hlOjpkZWxfdXNlcigkdXNlcmlkKTsKICAgICAgICByZXR1cm4gKCRyZXN1bHQhPWZhbHNlKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHkoIiIsdHJ1ZSk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCIiLCR1c2VyaWQsdHJ1ZSk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gQ2hlY2tQYXNzd29yZCgkdXNlcm5hbWUsJHBhc3N3b3JkLCRncm91cHMgPSAnJywkbWQ1cHcgPSBmYWxzZSkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcT0iU0VMRUNUIHUuKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyB1IjsKICAgICAgICBpZiAoJGdyb3VwcyAhPSAnJykgewogICAgICAgICAgICAkcSAuPSAnIElOTkVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYiBPTiB1LmlkID0gYi51c2VyaWQgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzIGcgT04gZy5pZCA9IGIuZ3JvdXBpZCAnOwogICAgICAgIH0KICAgICAgICAkcSAuPSAnIFdIRVJFIHUudXNlcm5hbWU9PyBBTkQgdS5wYXNzd29yZD0/JzsKICAgICAgICAkcCA9ICcnOwogICAgICAgIGlmKCAkbWQ1cHcgKSB7CiAgICAgICAgICAgICRwPWFycmF5KCR1c2VybmFtZSwkcGFzc3dvcmQpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHA9YXJyYXkoJHVzZXJuYW1lLG1kNSh0cmltKCRwYXNzd29yZCkuJHRoaXMtPmdldF9zYWx0KCkpKTsKICAgICAgICB9CiAgICAgICAgaWYgKCRncm91cHMgIT0gJycpIHsKICAgICAgICAgICAgLy9zcGxpdCB0aGUgc3RyaW5nIG9uIHRoZSBjb21tYXMKICAgICAgICAgICAgJGdyb3VwcyA9IGV4cGxvZGUoJywnLCRncm91cHMpOwogICAgICAgICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZ3JvdXBzKTsgJGkrKyApIHsKICAgICAgICAgICAgICAgICRncm91cHNbJGldID0gJGRiLT5xc3RyKHRyaW0oJGdyb3Vwc1skaV0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkZ3JvdXBzID0gJygnLmltcGxvZGUoJywnLCRncm91cHMpLicpJzsKICAgICAgICAgICAgJHEgLj0gJyBBTkQgZy5ncm91cG5hbWUgSU4gJy4kZ3JvdXBzOwogICAgICAgIH0KICAgICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICAgICAgaWYgKCRyZXN1bHQgJiYgJHJlc3VsdC0+UmVjb3JkQ291bnQoKSkgcmV0dXJuIHRydWU7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIExvZ2dlZEluTmFtZSgpCiAgICB7CiAgICAgICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmICgkdXNlcmlkKSByZXR1cm4gJHRoaXMtPkdldFVzZXJOYW1lKCR1c2VyaWQpOyBlbHNlIHJldHVybiAiIjsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBMb2dvdXQoJHVpZCA9ICcnLCRtZXNzYWdlID0gJ2xvZ291dCcpCiAgICB7CiAgICAgICAgJGdDbXMgPSBjbXNtcygpOwogICAgICAgICRjb25maWcgPSAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHEgPSAnJzsKICAgICAgICAkcCA9ICcnOwogICAgICAgIGlmKCAkdWlkID09ICcnICkgewogICAgICAgICAgICAkdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgICAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgJHRoaXMtPl9jbGVhcl9sb2dpbmRldGFpbHMoJHVpZCk7CgogICAgICAgIC8vIGFuZCBhZGQgaGlzdG9yeSBpbmZvCiAgICAgICAgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJG1lc3NhZ2UpOwoKICAgICAgICAvLyBzZW5kIHRoZSBldmVudC4KICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICRtb2R1bGUtPlNlbmRFdmVudCgnT25Mb2dvdXQnLGFycmF5KCdpZCc9PiR1aWQpKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBMb2dvdXRVc2VyKCR1aWQsJGV2ZW50bXNnID0gJ2xvZ291dCcpCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgdXNlcmlkPT8iOwogICAgICAgICRwPWFycmF5KCR1aWQpOwogICAgICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLCRwKTsKCiAgICAgICAgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJGV2ZW50bXNnKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBFeHBpcmVVc2VycygpCiAgICB7CiAgICAgICAgLy8gdG9kbzogbW92ZWQgdG8gY29uc3VtZXIuLi4KICAgICAgICBpZiggJHRoaXMtPl9oYXNydW4xICkgcmV0dXJuOwogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgJGV4cGlyZV9pbnRlcnZhbCA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2V4cGlyZXVzZXJzX2ludGVydmFsJyw2MCk7CiAgICAgICAgJGV4cGlyZV9sYXN0cnVuID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnZXhwaXJldXNlcnNfbGFzdHJ1bicpOwogICAgICAgIGRlYnVnX2J1ZmZlcignRkVVIEV4cGlyZVVzZXJzICcuJGV4cGlyZV9pbnRlcnZhbC4nIC0tICcuJGV4cGlyZV9sYXN0cnVuKTsKICAgICAgICBpZiggdGltZSgpIC0gJGV4cGlyZV9sYXN0cnVuID49ICRleHBpcmVfaW50ZXJ2YWwgKSB7CiAgICAgICAgICAgICRleHBpcnl0aW1lID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgndXNlcl9zZXNzaW9uX2V4cGlyZXMnKTsKICAgICAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgICAgICRxPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBXSEVSRSBsYXN0dXNlZDw/IjsKICAgICAgICAgICAgJHA9YXJyYXkodGltZSgpLSRleHBpcnl0aW1lKTsKICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHAgKTsKICAgICAgICAgICAgd2hpbGUoICRkYnJlc3VsdCAmJiAoJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHJvd1sndXNlcmlkJ10sJ2V4cGlyZScpOwogICAgICAgICAgICAgICAgaWYoIGlzc2V0KCRfU0VTU0lPTlsnX19GRVVfXyddKSAmJiAkX1NFU1NJT05bJ19fRkVVX18nXSAhPSAnJyApIHsKICAgICAgICAgICAgICAgICAgICAkZGF0YSA9IHVuc2VyaWFsaXplKGJhc2U2NF9kZWNvZGUoJF9TRVNTSU9OWydfX0ZFVV9fJ10pKTsKICAgICAgICAgICAgICAgICAgICBpZiggaXNzZXQoJGRhdGFbJ3VpZCddKSAmJiAkZGF0YVsndWlkJ10gPT0gJHJvd1sndXNlcmlkJ10gKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5fY2xlYXJfbG9naW5kZXRhaWxzKCRyb3dbJ3VzZXJpZCddLFRSVUUpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICR0aGlzLT5Ob3RpZnlFeHBpcmVkVXNlciggJHJvd1sndXNlcmlkJ10gKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBXSEVSRSBsYXN0dXNlZDw/IjsKICAgICAgICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwoKICAgICAgICAgICAgJG1vZHVsZS0+U2V0UHJlZmVyZW5jZSgnZXhwaXJldXNlcnNfbGFzdHJ1bicsdGltZSgpKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPl9oYXNydW4xID0gMTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBMb2dnZWRJbklkKCkKICAgIHsKICAgICAgICAvLyBpZiB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkIHVzaW5nIHRoZSBhdXRoIG1vZHVsZQogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgJGF1dGhfY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgaWYoICEkYXV0aF9jb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGF1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfTE9HSU4pICkgewogICAgICAgICAgICAvLyBpdHMgdGhlIGJ1aWx0IGluIHN0dWZmLgogICAgICAgICAgICAkcmVzID0gJHRoaXMtPl9zdGRfTG9nZ2VkSW5JZCgpOwogICAgICAgICAgICBpZiggJHJlcyApIHJldHVybiAkcmVzOwogICAgICAgIH0KCiAgICAgICAgLy8gZWl0aGVyIHRoZSBjb25zdW1lciBkb2Vzbid0IHByb3ZpZGUgYWJzb2x1dGUgbG9naW4gKENBUEFCSUxJVFlfTE9HSU4pIE9SIHRoZSB1c2VyIGlzIG5vdAogICAgICAgIC8vIGF1dGhlbnRpY2F0ZWQgdmlhIHRoZSBvbGQgc3R1ZmYuCiAgICAgICAgaWYoICRhdXRoX2NvbnN1bWVyLT5pc19hdXRoZW50aWNhdGVkKCkgKSB7CiAgICAgICAgICAgIC8vIGF1dGhlbnRpY2F0ZWQgdmlhIHNvbWUgZXh0ZXJuYWwgbWVjaGFuaXNtLi4uIHN0aWxsIG5lZWQgdG8gdGllIHRoaXMgdG8gYW4KICAgICAgICAgICAgLy8gaW50ZXJuYWwgdXNlciByZWNvcmQgZm9yIHByb3BlcnRpZXMgYW5kIGdyb3VwcyBhbmQgY3J1ZnQuCgogICAgICAgICAgICAvLyBzZWFyY2ggZm9yIGEgdXNlcmlkIGJhc2VkIG9uIGEgcHJvcGVydHkKICAgICAgICAgICAgJHByb3AgPSAkYXV0aF9jb25zdW1lci0+Z2V0X2Nvbm5lY3RpbmdfcHJvcGVydHlfbmFtZSgpOwogICAgICAgICAgICAkdmFsICA9ICRhdXRoX2NvbnN1bWVyLT5nZXRfdW5pcXVlX2lkZW50aWZpZXIoKTsKICAgICAgICAgICAgaWYoICEkdmFsICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAgICAgJHVpbmZvID0gJyc7CiAgICAgICAgICAgICR1c2Vwcm9wID0gZmFsc2U7CiAgICAgICAgICAgIGlmKCAkcHJvcCA9PSAnJyB8fCAkcHJvcCA9PSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVVNFUk5BTUUgKSB7CiAgICAgICAgICAgICAgICAvLyBnZXQgdXNlciBieSBuYW1lCiAgICAgICAgICAgICAgICAkdWluZm8gPSAkdGhpcy0+R2V0VXNlckluZm9CeU5hbWUoICRhdXRoX2NvbnN1bWVyLT5nZXRfdXNlcm5hbWUoJHZhbCkgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIGlmKCAkcHJvcCA9PSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVUlEICkgewogICAgICAgICAgICAgICAgLy8gc2VlIGlmIHRoZSB1aWQgZXhpc3RzLgogICAgICAgICAgICAgICAgJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdmFsICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAvLyBpdCdzIGEgcHJvcGVydHkgb2Ygc29tZSB0eXBlLgogICAgICAgICAgICAgICAgJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvQnlQcm9wZXJ0eSgkcHJvcCwkdmFsKTsKICAgICAgICAgICAgICAgICR1c2Vwcm9wID0gdHJ1ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkdWluZm8pIHx8IChpc19hcnJheSgkdWluZm8pICYmICR1aW5mb1swXSA9PSBGQUxTRSkgKSB7CiAgICAgICAgICAgICAgICAvLyB1c2VyIGF1dGhlbnRpY2F0ZWQgYnV0IG5vdCBmb3VuZCwgZG8gd2UgbmVlZCB0byBjcmVhdGUgb25lPwogICAgICAgICAgICAgICAgaWYoICRhdXRoX2NvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9BTFRMT0dJTikgfHwgJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnYXV0b19jcmVhdGVfdW5rbm93bicpICkgewoKICAgICAgICAgICAgICAgICAgICAvLyB3ZSdyZSBnb25uYSBjcmVhdGUgYSBuZXcgdXNlci4KICAgICAgICAgICAgICAgICAgICAkdXNlcm5hbWUgPSAnJzsKCiAgICAgICAgICAgICAgICAgICAgaWYoICRhdXRoX2NvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VSTkFNRSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR1c2VybmFtZSA9ICRhdXRoX2NvbnN1bWVyLT5nZXRfdXNlcm5hbWUoKTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmKCAhJHVzZXJuYW1lICkgewogICAgICAgICAgICAgICAgICAgICAgICAkdXNlcm5hbWUgPSAkdmFsOwogICAgICAgICAgICAgICAgICAgICAgICBpZiggJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgndXNlX3JhbmRvbXVzZXJuYW1lJykgJiYKICAgICAgICAgICAgICAgICAgICAgICAgJHByb3AgIT0gZmV1X2F1dGhfY29uc3VtZXI6OlBST1BFUlRZX1VTRVJOQU1FICYmCiAgICAgICAgICAgICAgICAgICAgICAgICRwcm9wICE9IGZldV9hdXRoX2NvbnN1bWVyOjpQUk9QRVJUWV9VSUQgJiYKICAgICAgICAgICAgICAgICAgICAgICAgJHByb3AgIT0gJycgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdXNlcm5hbWUgPSAkbW9kdWxlLT5HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICR0bXAgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdleHBpcmVhZ2VfbW9udGhzJyw2KTsKICAgICAgICAgICAgICAgICAgICAkZXhwaXJlcyA9IHN0cnRvdGltZShzcHJpbnRmKCIrJWQgbW9udGhzIiwkdG1wKSk7CgogICAgICAgICAgICAgICAgICAgICRyZXQgPSAkdGhpcy0+QWRkVXNlciggJHVzZXJuYW1lLAogICAgICAgICAgICAgICAgICAgIGZldV91dGlsczo6Z2VuZXJhdGVfcmFuZG9tX3ByaW50YWJsZV9zdHJpbmcoKSwKICAgICAgICAgICAgICAgICAgICAkZXhwaXJlcywgVFJVRSwgVFJVRSApOwoKICAgICAgICAgICAgICAgICAgICBpZiggJHJldFswXSA9PSBGQUxTRSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJG1vZHVsZS0+QXVkaXQoJycsJG1vZHVsZS0+R2V0TmFtZSgpLCRyZXRbMV0pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICR1aWQgPSAkcmV0WzFdOwoKICAgICAgICAgICAgICAgICAgICAvLyBzZXQgaGlzIGdyb3Vwcy4KICAgICAgICAgICAgICAgICAgICAkZGZsdF9ncm91cHMgPSAkdGhpcy0+R2V0RGZsdEdyb3VwcygpOwogICAgICAgICAgICAgICAgICAgIGlmKCBpc19hcnJheSgkZGZsdF9ncm91cHMpICYmIGNvdW50KCRkZmx0X2dyb3VwcykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXMgPSAkdGhpcy0+U2V0VXNlckdyb3VwcygkdWlkLCRkZmx0X2dyb3Vwcyk7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAvLyBub3cgc2V0IGEgcHJvcGVydHkuCiAgICAgICAgICAgICAgICAgICAgaWYoICR1c2Vwcm9wICkgewogICAgICAgICAgICAgICAgICAgICAgICAkcmV0ID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoJHByb3AsJHZhbCwkdWlkKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYoICRyZXQgPT0gZmFsc2UgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzaG91bGQgcmVtb3ZlIHRoZSB1c2VyLi4uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbW9kdWxlLT5BdWRpdCgnJywkbW9kdWxlLT5HZXROYW1lKCksJG1vZHVsZS0+TGFuZygnZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJykpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAkbW9kdWxlLT5BdWRpdCgkdWlkLCRtb2R1bGUtPkdldE5hbWUoKSwkbW9kdWxlLT5MYW5nKCdhdWRpdF91c2VyX2NyZWF0ZWQnKSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICR1aWQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJHVpbmZvWzFdWydpZCddOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9kZWNyeXB0KCRrZXksJGVuY2RhdGEpCiAgICB7CiAgICAgICAgaWYoICFmdW5jdGlvbl9leGlzdHMoJ21jcnlwdF9tb2R1bGVfb3BlbicpICkgcmV0dXJuIEZBTFNFOwogICAgICAgICRkYXRhID0gRkFMU0U7CiAgICAgICAgJHRkID0gQG1jcnlwdF9tb2R1bGVfb3BlbihNQ1JZUFRfREVTLCcnLE1DUllQVF9NT0RFX0VDQiwnJyk7CiAgICAgICAgaWYoICR0ZCA9PT0gRkFMU0UgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICRrZXkgPSBzdWJzdHIoJGtleSwwLG1jcnlwdF9lbmNfZ2V0X2tleV9zaXplKCR0ZCkpOwogICAgICAgICRpdl9zaXplID0gQG1jcnlwdF9lbmNfZ2V0X2l2X3NpemUoJHRkKTsKICAgICAgICAkaXYgPSBAbWNyeXB0X2NyZWF0ZV9pdigkaXZfc2l6ZSwgTUNSWVBUX1JBTkQpOwoKICAgICAgICAvLyBpbml0aWFsaXplIGVuY3J5cHRpb24gaGFuZGxlCiAgICAgICAgJHRtcCA9IEBtY3J5cHRfZ2VuZXJpY19pbml0KCR0ZCwka2V5LCAkaXYpOwogICAgICAgIGlmKCAkdG1wICE9IC0xICkgewogICAgICAgICAgICAkZGF0YSA9IEBtZGVjcnlwdF9nZW5lcmljKCR0ZCwkZW5jZGF0YSk7CiAgICAgICAgICAgIG1jcnlwdF9nZW5lcmljX2RlaW5pdCgkdGQpOwogICAgICAgIH0KICAgICAgICBAbWNyeXB0X21vZHVsZV9jbG9zZSgkdGQpOwogICAgICAgIHJldHVybiAkZGF0YTsKICAgIH0KCi8qKgogKiBOT1QgRk9SIEVYVEVSTkFMIFVTRQogKgogKiBAaW50ZXJuYWwKICovCiAgICBwdWJsaWMgZnVuY3Rpb24gX3N0ZF9Mb2dnZWRJbklkKCkKICAgIHsKICAgICAgICAkc2Vzc2lvbmlkID0gc2Vzc2lvbl9pZCgpOwogICAgICAgIGlmKCAkc2Vzc2lvbmlkID09ICIiICkgcmV0dXJuIEZBTFNFOwogICAgICAgICR0aGlzLT5FeHBpcmVVc2VycygpOwoKICAgICAgICAkZGF0YSA9ICR0aGlzLT5fZ2V0X3NhdmVkX2xvZ2luZGV0YWlscygpOwogICAgICAgIGlmKCAhJGRhdGEgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgaWYoICFpc3NldCgkZGF0YVsndWlkJ10pICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAkdWlkID0gJGRhdGFbJ3VpZCddOwogICAgICAgICR0aGlzLT5fc2V0X3NhdmVkX2xvZ2luZGV0YWlscygkdWlkKTsKICAgICAgICByZXR1cm4gJHVpZDsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBMb2dnZWRJbigpCiAgICB7CiAgICAgICAgaWYoICEkdGhpcy0+TG9nZ2VkSW5JZCgpICkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiB0cnVlOwogICAgfQoKCi8qKgogKiBEZXRlcm1pbmUgaWYgdGhlIHVzZXIgaWQgaXMgYSBtZW1iZXIgb2YgdGhlIGdyb3VwKHMpIHNwZWNpZmllZC4KICoKICogQHBhcmFtIGludGVnZXIgdXNlcmlkCiAqIEBwYXJhbSBtaXhlZCBpbnRlZ2VyIChwb3NpdGl2ZSkgZ3JvdXAgaWQsIG9yIGFuIGFycmF5IG9mIHBvc2l0aXZlIGludGVnZXIgZ3JvdXAgaWRzLgogKiBAcmV0dXJuIGJvb2xlYW4KICovCiAgICBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpCiAgICB7CiAgICAgICAgaWYoICR1c2VyaWQgPCAxICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAvLyBjbGVhbnVwIHRoZSBpbnB1dCBncm91cGlkIGxpc3QuCiAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBpZCkgKSAkZ3JvdXBpZCA9IGFycmF5KChpbnQpJGdyb3VwaWQpOwogICAgICAgICRncm91cGlkID0gYXJyYXlfdmFsdWVzKCRncm91cGlkKTsKICAgICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZ3JvdXBpZCk7ICRpKysgKSB7CiAgICAgICAgICAgIGlmKCAkZ3JvdXBpZFskaV0gPCAxICkgdW5zZXQoJGdyb3VwaWRbJGldKTsKICAgICAgICB9CiAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBpZCkgfHwgY291bnQoJGdyb3VwaWQpID09IDAgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICR0bXAgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkdG1wKSB8fCBjb3VudCgkdG1wKSA9PSAwICkgcmV0dXJuIEZBTFNFOwogICAgICAgICRtZW1iZXJzaGlwID0gY2dlX2FycmF5OjpleHRyYWN0X2ZpZWxkKCR0bXAsJ2dyb3VwaWQnKTsKCiAgICAgICAgJHRtcCA9IGFycmF5X2ludGVyc2VjdCgkbWVtYmVyc2hpcCwkZ3JvdXBpZCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgcmV0dXJuIFRSVUU7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIEdldFVzZXJOYW1lKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHJvdyA9IGZldV91c2VyX2NhY2hlOjpnZXRfdXNlcigkdXNlcmlkKTsKICAgICAgICBpZiggISRyb3cgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgcmV0dXJuICRyb3dbJ3VzZXJuYW1lJ107CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0VXNlcklEKCR1c2VybmFtZSkKICAgIHsKICAgICAgICBpZiggIWlzX2FycmF5KCR0aGlzLT5fdXNlcmlkYnluYW1lKSApICR0aGlzLT5fdXNlcmlkYnluYW1lID0gYXJyYXkoKTsKICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fdXNlcmlkYnluYW1lWyR1c2VybmFtZV0pICkgewogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAgICAgJHEgPSAiU0VMRUNUIGlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIHVzZXJuYW1lID0gPyI7CiAgICAgICAgICAgICR1aWQgPSAoaW50KSAkZGItPkdldE9uZSgkcSxhcnJheSgkdXNlcm5hbWUpKTsKICAgICAgICAgICAgJHRoaXMtPl91c2VyaWRieW5hbWVbJHVzZXJuYW1lXSA9ICR1aWQ7CiAgICAgICAgICAgIHJldHVybiAkdWlkOwogICAgICAgIH0KICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgYXJyYXkKICAgIGZ1bmN0aW9uIEFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgLy8gc2VlIGlmIGl0IGV4aXN0cyBhbHJlYWR5IG9yIG5vdCAoYnkgbmFtZSkKICAgICAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgV0hFUkUgZ3JvdXBuYW1lID0gPyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgICAgaWYoICRyb3cgKSB7CiAgICAgICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgICAgIHJldHVybiBhcnJheShGQUxTRSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9ncm91cG5hbWVfZXhpc3RzJykpOwogICAgICAgIH0KCiAgICAgICAgJGdycGlkID0gJGRiLT5HZW5JRCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHNfc2VxIiApOwogICAgICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgVkFMVUVTICg/LD8sPykiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZ3JwaWQsICRuYW1lLCAkZGVzY3JpcHRpb24gKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgdW5zZXQoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFLCRncnBpZCk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFycmF5CiAgICBmdW5jdGlvbiBBZGRVc2VyKCAkbmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcywgJGRvX21kNSA9IHRydWUsICRub25zdGQgPSBGQUxTRSApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgIC8vIHNlZSBpZiBpdCBleGlzdHMgYWxyZWFkeSBvciBub3QgKGJ5IG5hbWUpCiAgICAgICAgJHVpZCA9ICR0aGlzLT5HZXRVc2VySUQoJG5hbWUpOwogICAgICAgIGlmKCAkdWlkICkgewogICAgICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5hbWVfZXhpc3RzJykpOwogICAgICAgIH0KCiAgICAgICAgLy8gZ2VuZXJhdGUgdGhlIHNlcXVlbmNlCiAgICAgICAgJHVpZCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnNfc2VxIiApOwoKICAgICAgICAkcHd0eHQgPSAkcGFzc3dvcmQ7CiAgICAgICAgaWYoICRkb19tZDUgPT0gdHJ1ZSApICRwd3R4dCA9IG1kNSgkcGFzc3dvcmQuJHRoaXMtPmdldF9zYWx0KCkpOwoKICAgICAgICAvLyBpbnNlcnQgdGhlIHJlY29yZAogICAgICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLgogICAgICAgICAgICAibW9kdWxlX2ZldXNlcnNfdXNlcnMgKGlkLHVzZXJuYW1lLHBhc3N3b3JkLGNyZWF0ZWRhdGUsZXhwaXJlcyxub25zdGQpIFZBTFVFUyAoPyw/LD8sPyw/LD8pIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJG5hbWUsICRwd3R4dCwKICAgICAgICB0cmltKCRkYi0+RGJUaW1lU3RhbXAodGltZSgpKSwiJyIpLAogICAgICAgIHRyaW0oJGRiLT5EYlRpbWVTdGFtcCgkZXhwaXJlcyksIiciKSwKICAgICAgICAkbm9uc3RkICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFLCR1aWQpOwogICAgfQoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0R3JvdXBOYW1lKCRnaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9nZXRfZ3JvdXBpbmZvKCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlKSAmJiBpc3NldCgkdGhpcy0+X2dyb3VwaW5mb19jYWNoZVskZ2lkXSkgKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZVskZ2lkXVsnZ3JvdXBuYW1lJ107CiAgICAgICAgfQogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIEdldEdyb3VwRGVzYygkZ3JvdXBpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICYmIGlzc2V0KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdKSApIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdWydncm91cGRlc2MnXTsKICAgICAgICB9CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5CiAgICBmdW5jdGlvbiBEZWxldGVHcm91cEZ1bGwoICRpZCApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERCKCk7CiAgICAgICAgJHJlc3VsdCA9IGFycmF5KCk7CgogICAgICAgIC8vIGRlbGV0ZSBhbGwgcHJvcGVydHkgcmVsYXRpb25zIGZyb20gdGhpcyBncm91cAogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgV0hFUkUgZ3JvdXBfaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSApOwoKICAgICAgICAvLyBkZWxldGUgYWxsIGluZGljYXRpb24gdGhhdCBhbnlib2R5IGlzIGEgbWVtYmVyCiAgICAgICAgLy8gb2YgdGhpcyBncm91cAogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIGdyb3VwaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSApOwoKICAgICAgICAvLyBhbmQgdGhlbiBkZWxldGUgdGhlIGdyb3VwCiAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyBXSEVSRSBpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CgogICAgICAgICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICcnICk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICAkcmVzdWx0ID0gYXJyYXkoKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICkgewogICAgICAgICAgICBmb3JlYWNoKCAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZSBhcyAkZ2lkID0+ICRpbmZvICkgewogICAgICAgICAgICAgICAgJHJlc3VsdFskaW5mb1snZ3JvdXBuYW1lJ11dID0gJGdpZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRHcm91cExpc3RGdWxsKCR3aXRoX2NvdW50ID0gRkFMU0UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9nZXRfZ3JvdXBpbmZvKCR3aXRoX2NvdW50KTsKICAgICAgICAkcmVzdWx0ID0gYXJyYXkoKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICkgJHJlc3VsdCA9ICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlOwogICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfQoKCi8vIG9sZCB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRHcm91cElEKCRncm91cG5hbWUpCiAgICB7CiAgICAgICAgJHRoaXMtPl9nZXRfZ3JvdXBpbmZvKCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZSApICkgewogICAgICAgICAgICBmb3JlYWNoKCAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZSBhcyAkZ2lkID0+ICRpbmZvICkgewogICAgICAgICAgICAgICAgaWYoICRpbmZvWydncm91cG5hbWUnXSA9PSAkZ3JvdXBuYW1lICkgcmV0dXJuICRnaWQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCi8qKgogKiBSZXR1cm4gYSBsaXN0IG9mIGdyb3VwcyB0aGF0IHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mCiAqCiAqIEBkZXByZWNhdGVkCiAqIEBwYXJhbSBpbnRlZ2VyIFRoZSB1c2VyIGlkZW50aWZpZXIKICogQHJldHVybiBzdHJpbmcgQSBjb21tYSBkZWxpbWl0ZWQgc3RyaW5nIGNvbnRhaW5pbmcgbWVtYmVyIGdyb3VwIG5hbWVzLiAgb3IgJ25vbmUnCiAqLwogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJGF1dGhfY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgaWYoICEkYXV0aF9jb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGF1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfR1JPVVBNRU1CRVJTSElQKSApIHsKICAgICAgICAgICAgcmV0dXJuICdub25lJzsKICAgICAgICB9CgogICAgICAgICRvdXQgPSAkYXV0aF9jb25zdW1lci0+Z2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJpZCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkb3V0KSB8fCBjb3VudCgkb3V0KSA9PSAwICkgcmV0dXJuICdub25lJzsKCiAgICAgICAgJGluZm8gPSAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICBmb3JlYWNoKCAkb3V0IGFzICRvbmUgKSB7CiAgICAgICAgICAgIGlmKCBpc3NldCgkaW5mb1skb25lXSkgKSAkdG1wW10gPSAkaW5mb1skb25lXVsnZ3JvdXBuYW1lJ107CiAgICAgICAgfQogICAgICAgIGlmKCBjb3VudCgkb3V0KSA9PSAwICkgcmV0dXJuICdub25lJzsKCiAgICAgICAgcmV0dXJuIGltcGxvZGUoJywnLCR0bXApOwogICAgfQoKCi8vIG9sZCB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyKCRpZCkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICBpZiAoaXNzZXQoJF9HRVRbJGlkLiJ1c2VyaWQiXSkpIHsKICAgICAgICAgICAgJHVzZXJpZD1zdHJfcmVwbGFjZSgiJyIsJ18nLCRfR0VUWyRpZC4idXNlcmlkIl0pOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICAkcT0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIGlkPSckdXNlcmlkJyI7CiAgICAgICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSk7CiAgICAgICAgJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZD0nJHVzZXJpZCciOwogICAgICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHEpOwoKICAgICAgICAkdGhpcy0+X3VzZXJpZGJ5bmFtZSA9IGFycmF5KCk7CiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmRlbF91c2VyKCR1c2VyaWQpOwogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBHZXREZmx0R3JvdXBzKCkKICAgIHsKICAgICAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0RFRkFVTFRHUk9VUFMpICkgcmV0dXJuICRjb25zdW1lci0+Z2V0X2RlZmF1bHRfZ3JvdXBzKCk7CgogICAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgICRkZmx0X2dyb3VwID0gJGZldS0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcpOwogICAgICAgIHJldHVybiBhcnJheSgoaW50KSRkZmx0X2dyb3VwKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9nZXRfc2F2ZWRfbG9naW5kZXRhaWxzKCkKICAgIHsKICAgICAgICAka2V5ID0gJ19fRkVVX18nOwogICAgICAgICRrZXkyID0gJ19fRkVVX19scic7CiAgICAgICAgJHNlc3Npb25pZCA9IHNlc3Npb25faWQoKTsKICAgICAgICBpZiggISRzZXNzaW9uaWQgKSByZXR1cm47CiAgICAgICAgJGxhc3RyID0gMDsKICAgICAgICAkZG9fcmVhZCA9IEZBTFNFOwogICAgICAgICRkYXRhID0gbnVsbDsKCiAgICAgICAgaWYoICR0aGlzLT5fcmVhZGRhdGExICkgcmV0dXJuICR0aGlzLT5fcmVhZGRhdGExOwoKICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRrZXkyXSkgKSAkbGFzdHIgPSAkX1NFU1NJT05bJGtleTJdOwogICAgICAgIGlmKCAkbGFzdHIgPCB0aW1lKCkgLSAxODAgKSAkZG9fcmVhZCA9IFRSVUU7CgogICAgICAgIGlmKCAhJGRvX3JlYWQgKSB7CiAgICAgICAgICAgIGlmKCBpc3NldCgkX1NFU1NJT05bJGtleV0pICYmICRfU0VTU0lPTlska2V5XSAhPSAnJyApICRkYXRhID0gdW5zZXJpYWxpemUoYmFzZTY0X2RlY29kZSgkX1NFU1NJT05bJGtleV0pKTsKICAgICAgICB9CgogICAgICAgIGlmKCAhJGRvX3JlYWQgJiYgISRkYXRhICkgewogICAgICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICBpZiggJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsMCkgKSAkZGF0YSA9IHVuc2VyaWFsaXplKGJhc2U2NF9kZWNvZGUoJF9DT09LSUVbJGtleV0pKTsKICAgICAgICB9CgogICAgICAgIGlmKCAhJGRvX3JlYWQgJiYgISRkYXRhICkgewogICAgICAgICAgICBpZiggKCRjbiA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJykpICE9ICcnICkgewogICAgICAgICAgICAgICAgLy8gdGhpcyBpcyByZW1lbWJlciBtZSBmdW5jdGlvbmFsaXR5LgogICAgICAgICAgICAgICAgJGRhdGEgPSB1bnNlcmlhbGl6ZSgkX0NPT0tJRVskY25dKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYoICEkZG9fcmVhZCAmJiAkZGF0YSApIHsKICAgICAgICAgICAgJHRoaXMtPl9yZWFkZGF0YTEgPSAkZGF0YTsKICAgICAgICAgICAgcmV0dXJuICRkYXRhOwogICAgICAgIH0KCiAgICAgICAgLy8gcmVhZCBsb2dnZWQgaW4gZGF0YSBmcm9tIGRhdGFiYXNlCiAgICAgICAgaWYoICEkdGhpcy0+X2hhc3JlYWQxICkgewogICAgICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICAgICAkcSA9ICdTRUxFQ1QgdXNlcmlkIEFTIHVpZCxsYXN0dXNlZCBBUyB0aW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIHNlc3Npb25pZCA9ID8nOwogICAgICAgICAgICAkdGhpcy0+X2hhc3JlYWQxID0gVFJVRTsKICAgICAgICAgICAgJGRhdGEgPSAkZGItPkdldFJvdygkcSxhcnJheSgkc2Vzc2lvbmlkKSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkZGF0YSkgJiYgY291bnQoJGRhdGEpICkgewogICAgICAgICAgICAgICAgJF9TRVNTSU9OWyRrZXkyXSA9IHRpbWUoKTsKICAgICAgICAgICAgICAgICR0aGlzLT5fcmVhZGRhdGExID0gJGRhdGE7CiAgICAgICAgICAgICAgICByZXR1cm4gJGRhdGE7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfc2V0X3NhdmVkX2xvZ2luZGV0YWlscygkdWlkKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X2hhc3J1bjIgPT0gVFJVRSApIHJldHVybjsKICAgICAgICAkdGhpcy0+X2hhc3J1bjIgPSBUUlVFOwoKICAgICAgICAka2V5ID0gJ19fRkVVX18nOwogICAgICAgICRzZXNzaW9uaWQgPSBzZXNzaW9uX2lkKCk7CiAgICAgICAgaWYoICEkc2Vzc2lvbmlkICkgcmV0dXJuOwogICAgICAgICRsYXN0dXBkYXRlID0gMDsKICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRrZXkuJ19sdSddKSApICRsYXN0dXBkYXRlID0gJF9TRVNTSU9OWyRrZXkuJ19sdSddOwoKICAgICAgICAkZGF0YSA9IGFycmF5KCd1aWQnPT4oaW50KSR1aWQsJ3RpbWUnPT50aW1lKCksJ3Nlc3Npb25pZCc9PiRzZXNzaW9uaWQpOwogICAgICAgICRfU0VTU0lPTlska2V5XSA9IGJhc2U2NF9lbmNvZGUoc2VyaWFsaXplKCRkYXRhKSk7CgogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgaWYoICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLDApICkgewogICAgICAgICAgICAkdXNlcl9zZXNzaW9uX2V4cGlyZXMgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpOwogICAgICAgICAgICBpZiggJHVzZXJfc2Vzc2lvbl9leHBpcmVzICkgQHNldGNvb2tpZSgka2V5LGJhc2U2NF9lbmNvZGUoc2VyaWFsaXplKCRkYXRhKSksdGltZSgpKyR1c2VyX3Nlc3Npb25fZXhwaXJlcywnLycpOyAvLyBleHBpcnkgdG8gMjQgaG91cnMuCiAgICAgICAgfQoKICAgICAgICBpZiggdGltZSgpIC0gMTgwID4gJGxhc3R1cGRhdGUgKSB7CiAgICAgICAgICAgIC8vIG9ubHkgdXBkYXRlIHRoZSB1c2VyIGV2ZXJ5IDMgbWludXRlcy4uLgogICAgICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICAgICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBTRVQgbGFzdHVzZWQgPSA/IFdIRVJFIHVzZXJpZCA9ID8gQU5EIHNlc3Npb25pZCA9ID8nOwogICAgICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZGF0YVsndGltZSddLCRkYXRhWyd1aWQnXSwkZGF0YVsnc2Vzc2lvbmlkJ10pKTsKICAgICAgICAgICAgaWYoICEkZGJyIHx8ICRkYi0+QWZmZWN0ZWRfUm93cygpID09IDAgKSB7CiAgICAgICAgICAgICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIChzZXNzaW9uaWQsbGFzdHVzZWQsdXNlcmlkKSBWQUxVRVMgKD8sPyw/KSc7CiAgICAgICAgICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZGF0YVsnc2Vzc2lvbmlkJ10sJGRhdGFbJ3RpbWUnXSwkZGF0YVsndWlkJ10pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkX1NFU1NJT05bJGtleS4nX2x1J10gPSB0aW1lKCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBUUlVFOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX2NsZWFyX2xvZ2luZGV0YWlscygkdWlkLCRzZXNzaW9uX29ubHkgPSBGQUxTRSkKICAgIHsKICAgICAgICAka2V5ID0gJ19fRkVVX18nOwogICAgICAgICRzZXNzaW9uaWQgPSBzZXNzaW9uX2lkKCk7CiAgICAgICAgaWYoICEkc2Vzc2lvbmlkICkgcmV0dXJuOwoKICAgICAgICBmb3JlYWNoKCAkX1NFU1NJT04gYXMgJGsgPT4gJHYgKSB7CiAgICAgICAgICAgIGlmKCBzdGFydHN3aXRoKCRrLCRrZXkpICkgdW5zZXQoJF9TRVNTSU9OWyRrXSk7CiAgICAgICAgfQoKICAgICAgICBpZiggJHNlc3Npb25fb25seSA9PSBUUlVFICkgcmV0dXJuOwogICAgICAgIEBzZXRjb29raWUoJGtleSwnJyx0aW1lKCktNjAwMDAsJy8nKTsKICAgICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICBpZiggKCRjbiA9ICRmZXUtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKSkgIT0gJycgKSBAc2V0Y29va2llKCRjbiwnJyx0aW1lKCktNjAwMDAsJy8nKTsKCiAgICAgICAgJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBXSEVSRSB1c2VyaWQgPSA/JzsKICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVpZCkpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX19yZXNldCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9oYXNydW4xID0gbnVsbDsKICAgICAgICAkdGhpcy0+X2hhc3J1bjIgPSBudWxsOwogICAgICAgICR0aGlzLT5fcmVhZGRhdGExID0gbnVsbDsKICAgICAgICAkdGhpcy0+X2hhc3JlYWQxID0gbnVsbDsKICAgIH0KfSAvLyBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.Random.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBGcm9udEVuZFVzZXJzIChjKSAyMDA4LTIwMTQgYnkgUm9iZXJ0IENhbXBiZWxsCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAojICB1c2VycywgYW5kIHRoZWlyIGxvZ2luIHByb2Nlc3Mgd2l0aGluIGEgQ01TIE1hZGUgU2ltcGxlIHBvd2VyZWQKIyAgd2Vic2l0ZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVmlzaXQgdGhlIENNU01TIEhvbWVwYWdlIGF0OiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoNCi8qKg0KICogR2VuZXJhdGUgcmFuZG9tIGNoYXJhY3RlcnMuDQogKg0KICogQGF1dGhvciAgICBMYXVyZW50aXUgVGFuYXNlIDxleHBlcnRwaHBAeWFob28uY29tPg0KICogQHZlcnNpb24gICAxLjENCiAqLw0KDQpjbGFzcyBSYW5kb20NCnsNCgkvKioNCgkgKiBTZXQgZGVmYXVsdCBjaGFyYWN0ZXJzLg0KICAgICAqDQogICAgICogQHZhciAgICAgIHN0cmluZw0KICAgICAqIEBhY2Nlc3MgICBwcml2YXRlDQogICAgICovDQoNCgl2YXIgJF92Y3JzOw0KDQoJLyoqDQoJICogSWYgaGF2ZSBudW1iZXINCiAgICAgKg0KICAgICAqIEB2YXIgICAgICBib29sDQogICAgICogQGFjY2VzcyAgIHByaXZhdGUNCiAgICAgKi8NCg0KCXZhciAkX3ZudW07DQoNCgkvKioNCgkgKiBJZiBkb2Vzbid0IGhhdmUgbnVtYmVyDQogICAgICoNCiAgICAgKiBAdmFyICAgICAgYm9vbA0KICAgICAqIEBhY2Nlc3MgICBwcml2YXRlDQogICAgICovDQoNCgl2YXIgJF92bm90Ow0KDQoJLyoqDQoJICogQ29uc3RydWN0b3INCgkgKg0KCSAqIFNldCBkZWZhdWx0IHZhbHVlcw0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICRjcnMgICBDaGFyYWN0ZXJzIG91dHB1dA0KCSAqIEBwYXJhbSAgYm9vbCAgICAkbnVtICAgV2l0aCBudW1iZXINCgkgKiBAcGFyYW0gIGJvb2wgICAgJG5vdCAgIFdpdGggbm90IG51bWJlcg0KCSAqLw0KDQoJZnVuY3Rpb24gUmFuZG9tKCRjcnMgPSBmYWxzZSwgJG51bSA9IGZhbHNlLCAkbm90ID0gZmFsc2Upew0KCQkkdGhpcy0+X3ZudW0gPSAkbnVtOw0KCQkkdGhpcy0+X3Zub3QgPSAkbm90Ow0KCQlpZighJGNycyl7DQoJCQkkdGhpcy0+X3ZjcnMgPSAiMDEyMzQ1Njc4OSIuDQoJCQkJImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii4NCgkJCQkiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiOw0KCQl9ZWxzZXsNCgkJCSR0aGlzLT5fdmNycyA9ICRjcnM7DQoJCQlpZigoJG51bSB8fCAkbm90KSAmJiAhJHRoaXMtPl9yZWMoJGNycywgJG51bSwgJG5vdCkpew0KCQkJCWlmKCRudW0gJiYgJG5vdCkgJGVyciA9ICJudW1iZXIgb3Igbm90IG51bWJlciI7DQoJCQkJZWxzZWlmKCRudW0pICRlcnIgPSAibnVtYmVyIjsNCgkJCQllbHNlaWYoJG5vdCkgJGVyciA9ICJub3QgbnVtYmVyIjsNCgkJCQllbHNlICRlcnIgPSAiY29tcGFyYXRpb24iOw0KCQkJCXRyaWdnZXJfZXJyb3IoIkNsYXNzIFJhbmRvbSAtIFN0cmluZyBpbnB1dCBbICIuJGNycy4iIF0gZG9lc24ndCBoYXZlICIuJGVyciwgRV9VU0VSX0VSUk9SKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIENvbXBhcmUgaW5wdXQgc3RyaW5nDQoJICoNCgkgKiBAYWNjZXNzICBwcml2YXRlDQoJICogQHBhcmFtICAgc3RyaW5nICAgJHN0ciAgICAgIENoYXJhY3RlcnMgaW5wdXQNCgkgKiBAcGFyYW0gICBib29sICAgICAkbnVtYmVyICAgSGF2ZSBudW1iZXINCgkgKiBAcGFyYW0gICBib29sICAgICAkbm90bnVtICAgSGF2ZSBub3QgbnVtYmVyDQoJICogQHJldHVybiAgYm9vbCAgICAgSWYgaGF2ZSBudW1iZXIgb3IvYW5kIG5vdCBudW1iZXINCgkgKi8NCg0KCWZ1bmN0aW9uIF9yZWMoJHN0ciwgJG51bWJlciA9IHRydWUsICRub3RudW0gPSB0cnVlKXsNCgkJJGNudCA9IHN0cmxlbigkc3RyKTsNCgkJJHNldDEgPSAkc2V0MiA9IGZhbHNlOw0KCQlpZigkbnVtYmVyIHx8ICRub3RudW0pew0KCQkJZm9yKCRpPTA7JGk8JGNudDskaSsrKXsNCgkJCQlpZigkc3RyeyRpfSA9PT0gc3RydmFsKGludHZhbCgkc3RyeyRpfSkpKSAkc2V0MSA9IHRydWU7DQoJCQkJZWxzZSAkc2V0MiA9IHRydWU7DQoJCQkJaWYoJHNldDEgJiYgJHNldDIpIGJyZWFrOw0KCQkJfQ0KCQkJaWYoJG51bWJlciAmJiAkbm90bnVtKSByZXR1cm4gKCRzZXQxICYmICRzZXQyKTsNCgkJCWVsc2VpZigkbnVtYmVyKSByZXR1cm4gJHNldDE7DQoJCQllbHNlaWYoJG5vdG51bSkgcmV0dXJuICRzZXQyOw0KCQkJZWxzZSByZXR1cm4gdHJ1ZTsNCgkJfWVsc2UgcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJICogR2VuZXJhdGUgcmFuZG9tIGNoYXJhY3RlcnMNCgkgKg0KCSAqIEBhY2Nlc3MgIHB1YmxpYw0KCSAqIEBwYXJhbSAgIGludCAgICAgICRsZW4gICBMZW5ndGggb2YgdGhlIHN0cmluZyB5b3Ugd2FudCBnZW5lcmF0ZWQNCgkgKiBAcmV0dXJuICBzdHJpbmcgICBSYW5kb20gY2hhcmFjdGVycw0KCSAqLw0KDQoJZnVuY3Rpb24gZ2V0KCRsZW4pew0KCQlpZighKGlzX2ludCgkbGVuKSAmJiAkbGVuID4gMCkpIHJldHVybiAkdGhpcy0+X3ZjcnM7DQoJCSRyZXQgPSAiIjsNCgkJJGNudCA9IHN0cmxlbigkdGhpcy0+X3ZjcnMpLTE7DQoJCWZvcigkaT0wOyRpPCRsZW47JGkrKykgJHJldCAuPSAkdGhpcy0+X3ZjcnN7cmFuZCgwLCAkY250KX07DQoJCWlmKCR0aGlzLT5fdm51bSB8fCAkdGhpcy0+X3Zub3QpIHJldHVybiAkdGhpcy0+X3JlYygkcmV0LCAkdGhpcy0+X3ZudW0sICR0aGlzLT5fdm5vdCkgPyAkcmV0IDogUmFuZG9tOjpnZXQoJGxlbik7DQoJCWVsc2UgcmV0dXJuICRyZXQ7DQoJfQ0KDQp9DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.RRUtils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBSUlV0aWxzCnsKICBmdW5jdGlvbiBhcnJheV9rZXlfZXhpc3RzX3N1YnN0ciggJGFyciwgJGV4cHIgKQogIHsKICAgICRrZXlzID0gYXJyYXlfa2V5cyggJGFyciApOwogICAgZm9yZWFjaCggJGtleXMgYXMgJGsgKQogICAgICB7CglpZiggc3Ryc3RyKCAkaywgJGV4cHIgKSApIHJldHVybiB0cnVlOwogICAgICB9CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBmdW5jdGlvbiBhcnJheV9maW5kX2tleV9yZWdleHAoICRhcnIsICRleHByICkKICB7CiAgICAka2V5cyA9IGFycmF5X2tleXMoICRhcnIgKTsKICAgIGZvcmVhY2goICRrZXlzIGFzICRrICkKICAgICAgewoJaWYoIHByZWdfbWF0Y2goICRleHByLCAkayApICkgcmV0dXJuICRrOwogICAgICB9CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKCiAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBhcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkYXJyMSwgJGFycjIgKQogIHsKICAgICR4eHJlc3VsdCA9IGFycmF5KCk7CiAgICAvLyBhZGQgaXRlbXMgY29tbW9uIHRvIGFycjEgYW5kIGFycjIKICAgIC8vIGJ1dCBmYXZvciByZXF1aXJlZCBpdGVtcwogICAgaWYoICFpc19hcnJheSggJGFycjEgKSB8fCAhaXNfYXJyYXkoICRhcnIyICkgKQogICAgICB7CglyZXR1cm47CiAgICAgIH0KICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCWZvcmVhY2goICRhcnIyIGFzICRhMiApCgkgIHsKCSAgICBpZiggJGExWyduYW1lJ10gPT0gJGEyWyduYW1lJ10gKQoJICAgICAgewoJCWlmKCAkYTFbJ3JlcXVpcmVkJ10gPT0gMiApCgkJICB7CgkJICAgIGFycmF5X3B1c2goICR4eHJlc3VsdCwgJGExICk7CgkJICAgIGJyZWFrOwoJCSAgfQoJCWVsc2UKCQkgIHsKCQkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTIgKTsKCQkgICAgYnJlYWs7CgkJICB9CgkgICAgICB9CgkgIH0KICAgICAgfQoKICAgIC8vIGFkZCBpdGVtcyBpbiBhcnIxIG5vdCBpbiByZXN1bHQKICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCSRmb3VuZCA9IGZhbHNlOwoJZm9yZWFjaCggJHh4cmVzdWx0IGFzICRyZXMgKQoJICB7CgkgICAgaWYoICRhMVsnbmFtZSddID09ICRyZXNbJ25hbWUnXSApCgkgICAgICB7CgkJJGZvdW5kID0gdHJ1ZTsKCQlicmVhazsKCSAgICAgIH0KCSAgfQoJaWYoICEkZm91bmQgKQoJICB7CgkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTEgKTsKCSAgfQogICAgICB9CgogICAgLy8gYWRkIGl0ZW1zIGluIGFycjIgbm90IGluIHJlc3VsdAogICAgZm9yZWFjaCggJGFycjIgYXMgJGEyICkKICAgICAgewoJJGZvdW5kID0gZmFsc2U7Cglmb3JlYWNoKCAkeHhyZXN1bHQgYXMgJHJlcyApCgkgIHsKCSAgICBpZiggJGEyWyduYW1lJ10gPT0gJHJlc1snbmFtZSddICkKCSAgICAgIHsKCQkkZm91bmQgPSB0cnVlOwoJCWJyZWFrOwoJICAgICAgfQoJICB9CglpZiggISRmb3VuZCApCgkgIHsKCSAgICBhcnJheV9wdXNoKCAkeHhyZXN1bHQsICRhMiApOwoJICB9CiAgICAgIH0KICAgIHJldHVybiAkeHhyZXN1bHQ7CiAgfQoKCiAgZnVuY3Rpb24gY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5KCAkZTEsICRlMiApCiAgewogICAgaWYoICRlMVsnc29ydF9rZXknXSA8ICRlMlsnc29ydF9rZXknXSApCiAgICAgIHsKCXJldHVybiAtMTsKICAgICAgfQogICAgZWxzZSBpZiggJGUxWydzb3J0X2tleSddID4gJGUyWydzb3J0X2tleSddICkKICAgICAgewoJcmV0dXJuIDE7CiAgICAgIH0KICAgIHJldHVybiAwOwogIH0KCgogIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gaW1wbG9kZV93aXRoX2tleSgkYXNzb2MsICRpbmdsdWUgPSAnPScsICRvdXRnbHVlID0gJyYnKQogIHsKICAgICRyZXR1cm4gPSBudWxsOwogICAgZm9yZWFjaCAoJGFzc29jIGFzICR0ayA9PiAkdHYpICRyZXR1cm4gLj0gJG91dGdsdWUuJHRrLiRpbmdsdWUuJHR2OwogICAgcmV0dXJuIHN1YnN0cigkcmV0dXJuLHN0cmxlbigkb3V0Z2x1ZSkpOwogIH0KCgoKICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIG15Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICRuYW1lLCAkdmFsdWU9JycsICRzZWxlY3RlZHZhbHVlPScnLAoJCQkJICRhZGR0dGV4dD0nJykKICB7CiAgICAkdGV4dCA9ICc8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWx1ZS4nIic7CiAgICAkYXJyID0gZXhwbG9kZSgiLCIsJHNlbGVjdGVkdmFsdWUpOwogICAgZm9yZWFjaCggJGFyciBhcyAkYSApCiAgICAgIHsKCWlmICgkYSA9PSAkdmFsdWUpCgkgIHsKCSAgICAkdGV4dCAuPSAnICcgLiAnY2hlY2tlZD0iY2hlY2tlZCInOwoJICB9CiAgICAgIH0KICAgIGlmICgkYWRkdHRleHQgIT0gJycpCiAgICAgIHsKCSR0ZXh0IC49ICcgJy4kYWRkdHRleHQ7CiAgICAgIH0KICAgICR0ZXh0IC49ICIgLz5cbiI7CiAgICByZXR1cm4gJHRleHQ7CiAgfQoKICBmdW5jdGlvbiBteUNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJG5hbWUsICR2YWx1ZT0nJywgJGltYWdlPScnLCAkYWRkdHRleHQ9JycpCiAgewogICAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICAkdGV4dCA9ICc8aW5wdXQgbmFtZT0iJy4kaWQuJG5hbWUuJyIgdmFsdWU9IicuJHZhbHVlLiciIHR5cGU9JzsKICAgIGlmICgkaW1hZ2UgIT0gJycpCiAgICAgIHsKCSR0ZXh0IC49ICciaW1hZ2UiJzsKCSRpbWcgPSAkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGltYWdlOwoJJHRleHQgLj0gJyBzcmM9IicuJGltZy4nIic7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJHRleHQgLj0gJyJzdWJtaXQiJzsKICAgICAgfQogICAgaWYgKCRhZGR0dGV4dCAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyAnLiRhZGR0dGV4dDsKICAgICAgfQogICAgJHRleHQgLj0gJyAvPic7CiAgICByZXR1cm4gJHRleHQgLiAiXG4iOwogIH0KCgogIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gbXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAkbmFtZSwgJHZhbHVlPScnLCAkYWRkdGV4dD0nJywgJGRlbGltPScsJykKICB7CiAgICBpZiggaXNfYXJyYXkoICR2YWx1ZSApICkKICAgICAgewoJJHZhbCA9IFJSVXRpbHM6OmltcGxvZGVfd2l0aF9rZXkoICR2YWx1ZSApOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR2YWwgPSAkdmFsdWU7CiAgICAgIH0KICAgICR2YWwgPSBzdHJfcmVwbGFjZSgnIicsICcmcXVvdDsnLCAkdmFsKTsKICAgICR0ZXh0ID0gJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWwuJyInOwogICAgaWYgKCRhZGR0ZXh0ICE9ICcnKQogICAgICB7CgkkdGV4dCAuPSAnICcuJGFkZHRleHQ7CiAgICAgIH0KICAgICR0ZXh0IC49ICIgLz5cbiI7CiAgICByZXR1cm4gJHRleHQ7CiAgfQoKICBmdW5jdGlvbiBpc19hc3NvY2lhdGl2ZSgmJGFycmF5KXsKICAgIGlmICghaXNfYXJyYXkoJGFycmF5KSkgcmV0dXJuIGZhbHNlOwogICAgZm9yZWFjaChhcnJheV9rZXlzKCRhcnJheSkgYXMgJGtleT0+JHZhbHVlKSB7CiAgICAgIGlmKCAhaXNfbnVtZXJpYygka2V5KSApIHJldHVybiB0cnVlOwogICAgfQogICAgcmV0dXJuIGZhbHNlOwp9Cgp9IC8vIEVuZCBvZiBjbGFzcwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.UserManipulator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgphYnN0cmFjdCBjbGFzcyBVc2VyTWFuaXB1bGF0b3IKewogIHByaXZhdGUgJG1vZDsKICBwcml2YXRlICRfZXhwaXJlX25vdGlmaWVyX2NhbGxiYWNrOwoKICAvLwogIC8vIEludGVybmFscwogIC8vCgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCggJiR0aGVfbW9kdWxlICkKICB7CiAgICAkdGhpcy0+bW9kID0mICR0aGVfbW9kdWxlOwogIH0KCgogIHByb3RlY3RlZCBmdW5jdGlvbiAmR2V0RGIoKQogIHsKICAgIHJldHVybiAkdGhpcy0+bW9kLT5HZXREYigpOwogIH0KCgogIHByb3RlY3RlZCBmdW5jdGlvbiAmR2V0TW9kdWxlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPm1vZDsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBTZXRFeHBpcmVOb3RpZmllcigkY2FsbGJhY2spCiAgewogICAgaWYoIGlzX2NhbGxhYmxlKCRjYWxsYmFjaykgKQogICAgewogICAgICAkdGhpcy0+X2V4cGlyZV9ub3RpZmllcl9jYWxsYmFjayA9ICRjYWxsYmFjazsKICAgIH0KICB9CgogIHByb3RlY3RlZCBmdW5jdGlvbiBOb3RpZnlFeHBpcmVkVXNlcigkcGFyYW1zID0gYXJyYXkoKSkKICB7CiAgICBpZiggIWlzX2FycmF5KCRwYXJhbXMpICYmIChpc19zdHJpbmcoJHBhcmFtcykgfHwgaXNfaW50KCRwYXJhbXMpKSAmJiAkcGFyYW1zICE9ICcnICkKICAgICAgewoJJHBhcmFtcyA9IGFycmF5KCRwYXJhbXMpOwogICAgICB9CiAgICBpZiggJHRoaXMtPl9leHBpcmVfbm90aWZpZXJfY2FsbGJhY2sgKSBjYWxsX3VzZXJfZnVuY19hcnJheSgkdGhpcy0+X2V4cGlyZV9ub3RpZmllcl9jYWxsYmFjaywkcGFyYW1zKTsKICB9CgogIC8vCiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIC8vCgogIHB1YmxpYyBmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBBZGQgYSBzaW5nbGUgcHJvcGVydHkgZGVmaW5pdGlvbgogIC8vISBccGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkKICAvLyEgXHBhcmFtIHByb21wdCBUaGUgcHJvbXB0IHRvIGRpc3BsYXkgdG8gdGhlIHVzZXIKICAvLyEgICAgICAgbm90ZSwgdGhpcyB3aWxsIGJlIExhbmdpZmllZAogIC8vISBccGFyYW0gdHlwZSAgVGhlIHR5cGUgb2YgdGhlIHByb3BlcnR5CiAgLy8hICAgICAgIDAgPSB0ZXh0LCAxID0gY2hlY2tib3gsIDIgPSBlbWFpbAogIC8vISBccGFyYW0gcmVxdWlyZWQgd2V0aGVyIG9yIG5vdCB0aGUgcHJvcGVydHkgaXMgcmVxdWlyZWQKICAvLyEgXHJldHVybiBBbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBib29sZWFuIHdoaWNoIGluZGljYXRlcyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZQogIC8vISAgICBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGNvbnRhaW5zIGFuIGVycm9yIG1lc3NhZ2UgaW4gdGhlIGV2ZW50IG9mIGFuIGVycm9yLgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBBZGQgYSBuZXcgZ3JvdXAKICAvLyEKICAvLyEgQWRkcyBhIG5ldyBncm91cCB3aXRoIHRoZSBzdXBwbGllZCBuYW1lIGFuZCBkZXNjcmlwdGlvbgogIC8vIQogIC8vISBccGFyYW0gbmFtZSBUaGUgbmV3IGdyb3VwIG5hbWUKICAvLyEgXHBhcmFtIGRlc2NyaXB0aW9uIHRoZSBncm91cCBkZXNjcmlwdGlvbgogIC8vISBccmV0dXJuIGFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGRlc2NyaXB0aW9uIGRlc2NyaWJpbmcgdGhlIHJldHVybiBzdGF0dXMKICAvLyEgICAgKHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZXJyb3IpLiAgVGhlIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgaXMgYW4gZXJyb3Igc3RyaW5nIGluIHRoZQogIC8vISAgICBldmVudCBvZiBhbiBlcnJvci4KICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gQWRkR3JvdXAoICRuYW1lLCAkZGVzY3JpcHRpb24gKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBBZGQgYSBuZXcgdXNlcgogIC8vIQogIC8vISBBZGQgdGhlIHNwZWNpZmllZCB1c2VyIHRvIHRoZSBkYXRhYmFzZQogIC8vIQogIC8vISBccGFyYW0gbmFtZSBUaGUgZGVzaXJlZCB1c2VybmFtZQogIC8vISBccGFyYW0gcGFzc3dvcmQgVGhlIGRlc2lyZWQgcGFzc3dvcmQgKHVuZW5jcnlwdGVkKQogIC8vISBccGFyYW0gZXhwaXJlcyBUaGUgZXhwaXJ5IGRhdGUKICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzCiAgLy8hICAgICh0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG9uIGVycm9yKS4gIFRoZSBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGlzIGFuIGVycm9yIHN0cmluZyBpbiB0aGUKICAvLyEgICAgZXZlbnQgb2YgYW4gZXJyb3IsIG9yIHRoZSB1c2VyaWQgb3RoZXJ3aXNlCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIEFkZFVzZXIoICRuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICAvLyEgQ2hlY2sgaWYgdGhlIHNwZWNpZmllZCB1c2VyIGhhcyB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24KICAvLyEgQXNzaWduIHRoZSB1c2VyIHNwZWNpZmllZCAoYnkgaWQpIHRvIHRoZSBncm91cCBzcGVjaWZpZWQgKGJ5IGlkKQogIC8vIQogIC8vIVxwYXJhbSAgdWlkICBUaGUgdXNlcmlkIGZvciB0aGUgbmV3IGFzc29jaWF0aW9uCiAgLy8hXHBhcmFtICBnaWQgIFRoZSBncm91cCBpZCBmb3IgdGhlIG5ldyBhc3NvY2lhdGlvbgogIC8vIVxyZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gQXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBDaGVjayBpZiB0aGUgZ3JvdXAgc3BlY2lmaWVkIGhhcyB0aGUgcmVxdWlyZWQgcGVybWlzc2lvbgogIHB1YmxpYyBmdW5jdGlvbiBDaGVja0dyb3VwUGVybWlzc2lvbiggJGdpZCwgJHBlcm0gKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBDaGVjayB0aGUgc3VwcGxpZWQgcGFzc3dvcmQgYW5kIGVuc3VyZSBpdCBtYWNoZXMgdGhlIG9uZSBpbiB0aGUgZGF0YWJhc2UKICAvLyEKICAvLyFccGFyYW1zIHVzZXJuYW1lIFRoZSB1c2VybmFtZSB0byB0ZXN0IGZvcgogIC8vIVxwYXJhbXMgcGFzc3dvcmQgVGhlIHBhc3N3b3JkIHRvIHRlc3QKICAvLyFccmV0dXJuIHRydWUgaWYgcGFzc3dvcmRzIG1hdGNoLCBmYWxzZSBvdGhlcndpc2UuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIENoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgQ2hlY2sgaWYgdGhlIHVzZXIgaGFzIHRoZSBzcGVjaWZpZWQgcGVybWlzc2lvbgogIHB1YmxpYyBmdW5jdGlvbiBDaGVja1VzZXJQZXJtaXNzaW9uKCAkcGVybSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIENoZWNrVXNlclBlcm1pc3Npb25CeVVpZCggJHVpZCwgJHBlcm0gKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgewogICAgcmV0dXJuIDA7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBEZWxldGUgYWxsIG9mIHRoZSBjdXJyZW50IHVzZXJzIHByb3BlcnRpZXMKICAvLyEKICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIERlbGV0ZSBBbGwgcHJvcGVydGllcyBmb3IgYSBzcGVjaWZpZWQgdXNlciBpZAogIC8vIQogIC8vISBccGFyYW0gdXNlcmlkCiAgLy8hIFxyZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIERlbGV0ZSB0aGUgc3BlY2lmaWVkIGdyb3VwCiAgLy8hCiAgLy8hIERlbGV0ZSB0aGUgZ3JvdXAgcmVjb3JkIGZvciB0aGUgbWF0Y2hpbmQgaWQKICAvLyEKICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzCiAgLy8hICAgICh0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG9uIGVycm9yKS4gIFRoZSBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGlzIGFuIGVycm9yIHN0cmluZyBpbiB0aGUKICAvLyEgICAgZXZlbnQgb2YgYW4gZXJyb3IuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZUdyb3VwRnVsbCggJGlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlR3JvdXBQcm9wZXJ0eVJlbGF0aW9uKCAkZ3JwaWQsICRwcm9wbmFtZSApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lLCAkZnVsbCA9IGZhbHNlICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgRGVsZXRlIGFsbCBwcm9wZXJ0eSBkZWZpbml0aW9ucyAodXNlIHdpdGggY2F1dGlvbikKICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZucygpCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBEZWxldGUgdGhlIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGlkCiAgLy8hIFxub3RlIFRoaXMgaXMgYSBkZXByZWNhdGVkIGZ1bmN0aW9uIGFzIGl0IHJlbGllcyBvbiB0aGUgdXNlcmlkIGJlaW5nIHNldCBpbiB0aGUgX0dFVAogIC8vISB2YXJpYWJsZS4KICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlVXNlcigkaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIENvbXBsZXRlbHkgZGVsZXRlIGFsbCByZWZlcmVuY2VzIHRvIHRoZSBzdXBwbGllZCB1c2VyIGlkCiAgLy8hCiAgLy8hVGhpcyBtZXRob2QgY29tcGxldGVseSBkZWxldGVzIGFueXRoaW5nIGZyb20gdGhlIGRhdGFiYXNlIHJlbGF0ZWQgdG8gdGhlIHNwZWNpZmllZCB1c2VyIGlkLgogIC8vIXNwZWNpZmljYWxseSwgZ3JvdXAgYXNzb2NpYXRpb25zLCBwcm9wZXJ0aWVzLCBhbmQgdGhlIHVzZXIgcmVjb3JkIGl0c2VsZi4KICAvLyEKICAvLyFccGFyYW0gdWlkIHRoZSB1c2VyaWQgdG8gZGVsZXRlIGFsbCByZWZlcmVuY2VzIHRvCiAgLy8hXHJldHVybiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHN1Y2Nlc3Mgb3IgZmFpbHVyZS4KICAvLyEgICBpZiB0aGUgZmlyc3QgZWxlbWVudCBpcyBmYWxzZSwgdGhlbiB0aGUgc2Vjb25kIGVsZW1lbnQgd2lsbCBjb250YWluIGFuIGVycm9yIG1lc3NhZ2UuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZVVzZXJGdWxsKCAkdWlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIk5vIGZ1bmN0aW9uIGRlZmluZWQiKTsKICB9CgoKICAvLyEgRGVsZXRlIGEgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50IHVzZXIKICAvLyEKICAvLyEgUmVtb3ZlIGEgcHJvcGVydHkgZnJvbSB0aGUgZGF0YWJhc2UgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAvLyEKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBkZWxldGUKICAvLyEgXHBhcmFtIGFsbCAgIE9wdGlvbmFsbHkgZGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGlzIHVzZXIKICAvLyEgXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGh3ZXJpc2VuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eSgkdGl0bGUsJGFsbD1mYWxzZSkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgRGVsZXRlIGEgcHJvcGVydHkgZm9yIGEgc3BlY2lmaWVkIHVzZXIKICAvLyEKICAvLyFccGFyYW0gdGl0bGUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGRlbGV0ZQogIC8vIVxwYXJhbSB1c2VyaWQgVGhlIGlkIHRvIGRlbGV0ZSB0aGUgcHJvcGVydHkgZm9yCiAgLy8hXHBhcmFtIGFsbCAob3B0aW9uYWwpIERlbGV0ZSBhbGwgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyaWQuCiAgLy8hXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZS4KICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsPWZhbHNlKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8qIGV4cGlyeWNvZGUgaXMgYSBzdHJ0b3RpbWUgc3RyaW5nICovCiAgcHVibGljIGZ1bmN0aW9uIEV4cGlyZVRlbXBDb2RlcygkZXhwaXJ5Y29kZSkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgRXhwaXJlIGFueSBhbmQgYWxsIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGF3YXkgZm9yIHRvbyBsb25nCiAgcHVibGljIGZ1bmN0aW9uIEV4cGlyZVVzZXJzKCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2V0IHRoZSBlbWFpbCBhZGRyZXNzIG9mIHRoZSB1c2VyIHdpdGggdGhlIHNwZWNpZmllZCBpZAogIC8vIQogIC8vIVxyZXR1cm4gRW1haWwgYWRkcmVzcywgb3IgZmFsc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0RW1haWwoJHVzZXJpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2VuZXJhdGUgYSByYW5kb20gKGJ1dCBub3QgdXNlZCkgdXNlcm5hbWUKICAvLyEKICAvLyFcIHJldHVybiB1c2VybmFtZSwgb3IgZmFsc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2VuZXJhdGVSYW5kb21Vc2VybmFtZSggJHByZWZpeCA9ICd1c2VyJyApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCB0aGUgZ3JvdXBpZCBnaXZlbiBhIGdyb3VwIG5hbWUKICAvLyEKICAvLyEgXHJldHVybiBncm91cGlkIG9yIGZhbHNlCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwSUQoJGdyb3VwbmFtZSkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2V0IGluZm9ybWF0aW9uIGFib3V0IHRoZSBncm91cAogIC8vIQogIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFzc29jaWF0aW9uIHdpdGggdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3BlY2lmaWVkCiAgLy8hIGdyb3VwIGlkCiAgLy8hICAgIGlkID0+IFRoZSByZXF1ZXN0ZWQgZ3JvdXAgaWQKICAvLyEgICAgZ3JvdXBuYW1lID0+IFRoZSBuYW1lIG9mIHRoZSBncm91cAogIC8vISAgICBncm91cGRlc2MgPT4gVGhlIGdyb3VwIGRlc2NyaXB0aW9uCiAgLy8hCiAgLy8hIFxwYXJhbSBnaWQgVGhlIGdyb3VwIGlkCiAgLy8hIFxwYXJhbSBhc3NvY2lhdGl2ZSBhcnJheSwgb3IgYXJyYXkgd2l0aCBmaXJzdCBlbGVtZW50IG9mIGZhbHNlLCBzZWNvbmQgZWxlbWVudCBjb250YWlucyBlcnJvciBtZXNzYWdlCiAgLy8hIFxyZXR1cm4gYW4gYXNzb2NpYXRpdmUgYXJyYXkgd2l0aCBncm91cCBpbmZvLCBvciBmYWxzZQogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cEluZm8oICRnaWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgZ3JvdXBzLCBhbmQgdGhlaXIgaWQncwogIC8vIQogIC8vISBccmV0dXJuIGFuIGFzc29jaWF0aXZlIGFycmF5IGNvbnRhaW5pbmcgZ3JvdXAgbmFtZXMgYXMga2V5cywgYW5kIGlkJ3MgYXMgdmFsdWVzCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwTGlzdCgpCiAgewogICAgcmV0dXJuIGFycmF5KCk7CiAgfQoKICAvLyEgR2V0IGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIGdyb3VwcwogIC8vIQogIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFycmF5IG9mIGdyb3VwaW5mbyBhc3NvY2lhdGlvbnMsIHJlcHJlc2VudGluZyBhbGwgb2YgdGhlCiAgLy8hIGdyb3VwcyBpbiB0aGUgdGFibGUuCiAgLy8hCiAgLy8hIFxyZXR1cm5zIGFuIGFycmF5IG9mIGdyb3VwaW5mbyBhc3NvY2lhdGlvbnMKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0R3JvdXBMaXN0RnVsbCgpCiAgewogICAgcmV0dXJuIGFycmF5KCk7CiAgfQoKICAvLyEgR2V0IHRoZSBncm91cCBuYW1lIGdpdmVuIGEgZ3JvdXAgaWQKICAvLyEKICAvLyEgXHJldHVybiBncm91cCBuYW1lLCBvciBmYWxzZQogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cE5hbWUoJGdyb3VwaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCB0aGUgZ3JvdXAgZGVzY3JpcHRpb24gZ2l2ZW4gYSBncm91cCBpZAogIC8vIQogIC8vISBccmV0dXJuIGdyb3VwIGRlc2NyaXB0aW9uLCBvciBmYWxzZQogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cERlc2MoJGdyb3VwaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBHZXQgYSBsaXN0IG9mIHRoZSBncm91cHMgdGhhdCB0aGUgc3BlY2lmaWVkIHVzZXIgYmVsb25ncyB0bwogIC8vIQogIC8vISBSZXR1cm4gYSBzdHJpbmcgb2YgY29tbWEgZGVsaW1pdGVkIGdyb3VwIG5hbWVzLCBjb3JyZXNwb25kaW5nIHRvIHRoZQogIC8vISBncm91cHMgdGhhdCB0aGUgdXNlciBpcyBhIG1lbWJlciBvZgogIC8vIQogIC8vISBccmV0dXJuIGEgY29tbWEgZGVsaW1pdGVkIGxpc3Qgb2YgZ3JvdXAgbmFtZXMsIG9yICJub25lIgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHMoJHVzZXJpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgUmV0dXJuIGEgY29tcGxldGUgbGlzdCBvZiB0aGUgZ3JvdXBzIHRoYXQgdGhpcyB1c2VyIGJlbG9uZ3MgdG8KICAvLyEKICAvLyEgUmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gcmVjb3JkcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBncm91cHMgdGhhdAogIC8vISB0aGlzIHVzZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgogIC8vIQogIC8vISBccGFyYW0gdXNlcmlkIFRoZSB1c2VyaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIGZhbHNlIG9uIGVycm9yLCBvdGhlcndpc2UsIGFuIGFycmF5IG9mIGdyb3VwaW5mbyByZWNvcmRzLgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHNBcnJheSgkdXNlcmlkKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgYSBzaW5nbGUgcHJvcGVydHkgZGVmaW5pdGlvbiBieSBuYW1lCiAgcHVibGljIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbiggJG5hbWUgKQogIHsKICAgIHJldHVybiBGQUxTRTsKICB9CgogIC8vISBHZXQgYW4gYXJyYXkgb2YgcHJvcGVydHkgZGVmaW5pdGlvbnMKICBwdWJsaWMgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBHZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgfQoKICAvLyEgR2V0IHRoZSB1c2VyaWQgb2YgdGhlIHVzZXIgd2l0aCB0aGUgbWF0Y2hpbmcgbmFtZQogIC8vIQogIC8vISBccmV0dXJuIFVzZXJJRCwgb3IgZmFsc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlcklEKCR1c2VybmFtZSkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2V0IGluZm9ybWF0aW9uIGFib3V0IGEgdXNlcgogIC8vIQogIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFzc29jaWF0aW9uIHdpdGggdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3BlY2lmaWVkCiAgLy8hIHVzZXIgaWQKICAvLyEgICBpZCA9IHRoZSByZXF1ZXN0ZWQgdXNlciBpZAogIC8vISAgIHVzZXJuYW1lID0gdGhlIHVzZXJzIG5hbWUKICAvLyEgICBwYXNzd29yZCA9IHRoZSAoZW5jcnlwdGVkKSB1c2VyIHBhc3N3b3JkCiAgLy8hICAgZW1haWwgICAgPSB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcwogIC8vISAgIGV4cGlyZXMgID0gdGhlIHVzZXJzIGV4cGlyeSBkYXRlCiAgLy8hICAgc3RhdHVzICAgPSB0aGUgdXNlcnMgc3RhdHVzCiAgLy8hCiAgLy8hIFxwYXJhbSB1aWQgVGhlIHVzZXJpZCB0byBpbnF1aXJlIGFib3V0CiAgLy8hIFxyZXR1cm4gYW4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IGNvbnRhaW5zIHJldHVybiBzdGF0dXMgKHRydWUvZmFsc2UpLCB0aGUgc2Vjb25kIGVsZW1lbnQKICAvLyEgICAgaXMgZWl0aGVyIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGRldGFpbHMgYWJvdmUsIG9yIGFuIGVycm9yIG1lc3NhZ2UuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIEdldFVzZXJJbmZvKCAkdWlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICAvLyEgUmV0dXJuIHRoZSB1c2VybmFtZSB0aGF0IG1hY2hlcyB0aGUgc3BlY2lmaWVkIHVzZXIgaWQKICAvLyEKICAvLyFccmV0dXJuIFRoZSBtYXRjaGluZyB1c2VybmFtZSwgb3IgZmFsc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlck5hbWUoJHVzZXJpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2V0IGEgc2luZ2xlIHByb3BlcnR5IGZvciB0aGUgY3VycmVudCB1c2VyCiAgLy8hCiAgLy8hIEdldCBhIHNpbmdsZSBwcm9wZXJ0eSBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4KICAvLyEKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBuYW1lIG9mIHRoZSBwYXJhbWV0ZXIgdG8gcmV0dXJuCiAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgQSB2YWx1ZSB0byByZXR1cm4gaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGF0IHVzZXIKICAvLyEgXHJldHVybiBUaGUgcHJvcGVydHkgdmFsdWUsIG9yIGZhbHNlLgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHkoJHRpdGxlLCRkZWZhdWx0dmFsdWU9ZmFsc2UpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCBwcm9wZXJ0eSBpbmZvcm1hdGlvbiBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGlkCiAgLy8hCiAgLy8hIFxwYXJhbSB0aXRsZSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgd2UgYXJlIHNlYXJjaGluZyBmb3IKICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgdXNlcmlkIGZvciB3aG8ncyBwcm9wZXJ0eSB3ZSBhcmUgc2VhcmNoaW5nCiAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgVGhlIHZhbHVlIHRvIHJldHVybiBpZiB0aGlzIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGlzIHVzZXIKICAvLyEgXHJldHVybiBUaGUgcHJvcGVydHkgdmFsdWUsIG9yIGZhbHNlLgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCAkZGVmYXVsdHZhbHVlPWZhbHNlKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cAogIC8vISBpbmNsdWRpbmcgYWxsIG9mIHRoZWlyIHByb3BlcnRpZXMKICAvLyEKICAvLyEgVGhpcyBtZXRob2QgcmV0dXJucyBhbiBhc3NvY2lhdGl2ZSBhcnJheSAod2l0aCB1c2VyaWQgYXMgdGhlIGtleSkKICAvLyEKICAvLyEgXHBhcmFtIGdyb3VwaWQgdGhlIGRlc2lyZWQgZ3JvdXAgaWQKICAvLyEgXHJldHVybiBhbiBhcnJheSBvZiB1c2VyIGluZm9ybWF0aW9uIChzZWUgR2V0VXNlckluZm8pLCBvciBmYWxzZQogIC8vISBcc2EgR2V0VXNlckluZm8KICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0RnVsbFVzZXJzSW5Hcm91cCgkZ3JvdXBpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgR2V0IGEgbGlzdCBvZiB0aGUgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cAogIC8vIQogIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFzc29jaWF0aXZlIGFycmF5IGNvbnRhaW5pbmcgYSBjb21wbGV0ZSBzZXQgb2YgdGhlCiAgLy8hIGluZm9ybWF0aW9uIGFib3V0IGFsbCBvZiB0aGUgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cAogIC8vIQogIC8vISBccGFyYW0gZ3JvdXBpZCB0aGUgZGVzaXJlZCBncm91cCBpZAogIC8vISBccmV0dXJuIGFuIGFycmF5IG9mIHVzZXIgaW5mb3JtYXRpb24gKHNlZSBHZXRVc2VySW5mbyksIG9yIGZhbHNlCiAgLy8hIFxzYSBHZXRVc2VySW5mbwogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2Vyc0luR3JvdXAoICRncm91cGlkID0gJycgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBSZXR1cm4gYW4gYXJyYXkgb2YgdGhlIHVzZXIncyBwcm9wZXJ0aWVzCiAgLy8hCiAgLy8hIFJldHVybnMgYSBjb21wbGV0ZSBsaXN0IG9mIHRoZSB1c2VycyBwcm9wZXJ0aWVzCiAgLy8hCiAgLy8hIFxwYXJhbSB1aWQgVGhlIHVpZCB0byB0ZXN0CiAgLy8hIFxyZXR1cm4gZmFsc2Ugb24gZXJyb3IsIG90aGVyd2lzZSBhbiBhcnJheSBvZiBhc3NvY2lhdGlvbnMsIGVhY2ggYXNzb2NpYXRpb24KICAvLyEgICBoYXMgdGhlIGZvbGxvd2luZyBrZXlzOgogIC8vISAgICAgIGlkICAgICA9IFRoZSBwcm9wZXJ0eSBpZAogIC8vISAgICAgIHVzZXJpZCA9IFRoZSBtYXRjaGluZyB1c2VyIGlkCiAgLy8hICAgICAgdGl0bGUgID0gVGhlIHByb3BlcnR5IHRpdGxlCiAgLy8hICAgICAgZGF0YSAgID0gVGhlIHByb3BlcnR5IGRhdGEKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlclByb3BlcnRpZXMoJHVpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlclRlbXBDb2RlKCAkdWlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCIpOwogIH0KCiAgLy8hIEEgZnVuY3Rpb24gdGhhdCB0ZXN0cyB3ZXRoZXIgYSBncm91cCB3aXRoIHRoZSBzcGVmaWZpZWQgaWQgZXhpc3RzCiAgLy8hCiAgLy8hIFxwYXJhbSBnaWQgVGhlIGRlc2lyZWQgZ3JvdXAgaWQKICAvLyEgXHJldHVybiBib29sZWFuCiAgIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBHcm91cEV4aXN0c0J5SUQoICRnaWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBBIHB1YmxpYyBmdW5jdGlvbiB0aGF0IHRlc3RzIHdldGhlciBhIGdyb3VwIHdpdGggdGhlIG5hbWUgZXhpc3RzCiAgLy8hCiAgLy8hIFxwYXJhbSBnaWQgVGhlIGRlc2lyZWQgZ3JvdXAgbmFtZQogIC8vISBccmV0dXJuIGJvb2xlYW4KICAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlOYW1lKCAkbmFtZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIEdldEV4cGlyeURhdGUoICR1aWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBJc0FjY291bnRFeHBpcmVkKCAkdWlkICkKICB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CgogIC8vISBUZXN0IHdldGhlciB0aGUgc3BlY2lmaWVkIGVtYWlsIGFkZHJlc3MgcGFzc2VzIHRoZSBydWxlcy4KICAvLyEKICAvLyEgVGhpcyBtZXRob2Qgd2lsbCB0ZXN0IGlmIHRoZSBlbWFpbCBhZGRyZXNzIHN1cHBsaWVkIG1hdGNoZXMgdGhlCiAgLy8hIHNldCBydWxlcy4gIE9wdGlvbmFsbHksIHRoZSBlbWFpbCBhZGRyZXNzIGNhbiBiZSB2YWxpZGF0ZWQgdmlhCiAgLy8hIHNtdHAuCiAgLy8hCiAgLy8hIFxwYXJhbSAgZW1haWwgVGhlIGFkZHJlc3MgdG8gdGVzdAogIC8vISBccmV0dXJuIGFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaW5kaWN1YXRlcyBzdWNjZXNzIG9yIGZhaWx1cmUKICAvLyEgICAgdGhlIHNlY29uZCBlbGVtZW50IGlzIHRoZSBlcnJvciBtZXNzYWdlLCBpZiBhbiBlcnJvciBvY2N1cnJlZAogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBJc1ZhbGlkRW1haWxBZGRyZXNzKCAkZW1haWwgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBDaGVjayB0aGUgdmFsaWRpdHkgb2YgdGhlIHN1cHBsaWVkIHBhc3N3b3JkCiAgLy8hCiAgLy8hXHBhcmFtICBwYXNzd29yZCBUaGUgcGFzc3dvcmQgdG8gdGVzdC4KICAvLyFccmV0dXJuIHRydWUgaWYgdGhlIHBhc3N3b3JkIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBDaGVjayB3ZXRoZXIgdGhlIHVzZXJuYW1lIHN1cHBsaWVkIHBhc3NlcyB0aGUgcnVsZXMKICAvLyEKICAvLyFccGFyYW0gdXNlcm5hbWUgVGhlIHVzZXJuYW1lIHRvIGJlIHRlc3RlZAogIC8vIVxyZXR1cm4gYm9vbGVhbiB0cnVlL2ZhbHNlCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIElzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgVGVzdHMgd2V0aGVyIHRoZSBjdXJyZW50IHVzZXIgaXMgbG9nZ2VkIGluIG9yIG5vdC4KICBwdWJsaWMgZnVuY3Rpb24gTG9nZ2VkSW4oKQogIHsKICAgIGlmICgkdGhpcy0+TG9nZ2VkSW5JZCgpPT1mYWxzZSkgcmV0dXJuIGZhbHNlOyBlbHNlIHJldHVybiB0cnVlOwogIH0KCiAgLy8hIFJldHVybiB0aGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgY3VycmVudCB1c2VyCiAgLy8hCiAgLy8hIFxyZXR1cm5zIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyCiAgLy8hICAgaWYgbm9vbmUgaXMgbG9nZ2VkIGluLCB0aGVuIGFuIGVtcHR5IHN0cmluZyBpcyByZXR1cm5lZAogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBMb2dnZWRJbkVtYWlsKCkKICB7CiAgICByZXR1cm4gIiI7CiAgfQoKICAvLyEgUmV0dXJuIHRoZSB1c2VyaWQgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcgogIHB1YmxpYyBmdW5jdGlvbiBMb2dnZWRJbklkKCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgUmV0dXJuIHRoZSB1c2VybmFtZSBvZiB0aGUgY3VycmVudCB1c2VyCiAgLy8hCiAgLy8hIFxyZXR1cm5zIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgdXNlcm5hbWUgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcgogIC8vISAgIGlmIG5vb25lIGlzIGxvZ2dlZCBpbiwgdGhlbiBhbiBlbXB0eSBzdHJpbmcgaXMgcmV0dXJuZWQKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gTG9nZ2VkSW5OYW1lKCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gTG9naW4oICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzID0gJycsICRtZDVwdyA9IGZhbHNlLAoJCSAgJGZvcmNlX2xvZ291dCA9IGZhbHNlKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgfQoKCiAgLy8hIExvZ291dCB0aGUgY3VycmVudCB1c2VyCiAgcHVibGljIGZ1bmN0aW9uIExvZ291dCgpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFRlc3Qgd2V0aGVyIGFuIGFzc29jaWF0aW9uIGV4aXN0cyBiZXR3ZWVuIHRoZSBzcGVjaWZpZWQgdXNlciBhbmQgZ3JvdXAKICAvLyEKICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgdXNlcmlkIHRvIHRlc3QKICAvLyEgXHBhcmFtIGdyb3VwaWQgVGhlIGdyb3VwaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIHRydWUgaWYgYW4gYXNzb2NpYXRpb24gZXhpc3RzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gTWVtYmVyT2ZHcm91cCgkdXNlcmlkLCRncm91cGlkKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBSZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cAogIC8vIQogIC8vIVRoaXMgbWV0aG9kIHJldm9rZXMgdGhlIG1lbWJlcnNoaXAgb2YgdXNlciAkdWlkIGZyb20gZ3JvdXAgJGdpZAogIC8vIQogIC8vIVxwYXJhbSB1aWQKICAvLyFccGFyYW0gZ2lkCiAgLy8hXHJldHVybiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgY29udGFpbnMgZXhpdCBzdGF0dXMgKGJvb2xlYW4pLCB0aGUgc2Vjb25kIGVsZW1lbnQKICAvLyEgICAob3B0aW9uYWwpIHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZSwgaWYgYW4gZXJyb3Igb2NjdXJyZWQuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIFJlbW92ZVVzZXJGcm9tR3JvdXAoICR1aWQsICRnaWQgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBSZW1vdmVVc2VyVGVtcENvZGUoICR1aWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBBIG1ldGhvZCB0byBtb2RpZnkgYW4gZXhpc3RpbmcgZ3JvdXAKICAvLyEKICAvLyFccGFyYW0gZ2lkIEFuIGV4aXN0aW5nIGdyb3VwIGlkCiAgLy8hXHBhcmFtIG5hbWUgVGhlIG5ldyBncm91cCBuYW1lCiAgLy8hXHBhcmFtIGRlc2MgVGhlIG5ldyBncm91cCBkZXNjcmlwdGlvbgogIC8vIVxyZXR1cm4gQW4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IGlzIGEgYm9vbGVhbiB3aGljaCBpbmRpY2F0ZXMgc3VjY2VzcyBvciBmYWlsdXJlLCB0aGUKICAvLyEgIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSBpbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IuCiAgLy8hCiAgcHVibGljIGZ1bmN0aW9uIFNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm4oICRuYW1lLCAkbmV3bmFtZSwgJHByb21wdCwgJGxlbmd0aCwgJHR5cGUgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBNb2RpZnkgYW4gZXhpc3RpbmcgZ3JvdXAKICAvLyEKICAvLyEgXHBhcmFtIHVpZCBUaGUgaWQgb2YgdGhlIGV4aXN0aW5nIHVzZXIKICAvLyEgXHBhcmFtIHVzZXJuYW1lIFRoZSBuZXcgdXNlciBuYW1lCiAgLy8hIFxwYXJhbSBlbWFpbCBUaGUgbmV3IGVtYWlsIGFkZHJlc3MKICAvLyEgXHBhcmFtIHBhc3N3b3JkIFRoZSBuZXcgKHVuZW5jcnlwdGVkKSBwYXNzd29yZAogIC8vISBccGFyYW0gZXhwaXJlcyBUaGUgbmV3IGV4cGlyeSBkYXRlCiAgLy8hIFxwYXJhbSBzdGF0dXMgdGhlIG5ldyBzdGF0dXMKICAvLyEgXHJldHVybiBBbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBib29sZWFuIHdoaWNoIGluZGljYXRlcyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZQogIC8vISAgICBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGNvbnRhaW5zIGFuIGVycm9yIG1lc3NhZ2UgaW4gdGhlIGV2ZW50IG9mIGFuIGVycm9yLgogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBTZXRVc2VyKCAkdWlkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgPSBmYWxzZSApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogIH0KCiAgLy8hIFNldCB0aGUgdXNlcidzIGdyb3VwIG1lbWJlcnNoaXBzIGFic29sdXRlbHkKICAvLyEKICAvLyFUaGlzIG1ldGhvZCByZW1vdmVzIGFsbCBwcmV2aW91cyBncm91cCBhc3NvY2lhdGlvbnMsIGFuZCBzZXRzIG5ldyBvbmVzCiAgLy8hdG8gbWF0Y2ggdGhvc2UgaW4gdGhlIGdycGlkcyBhcnJheS4KICAvLyEKICAvLyFccGFyYW0gdWlkIFRoZSB1c2VyIGlkIHRvIGVkaXQKICAvLyFccGFyYW0gZ3JwaWRzIEFuIGFycmF5IG9mIHVzZXIgaWRzIHRvIGFzc29jaWF0ZSB3aXRoCiAgLy8hXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlckdyb3VwcyggJHVpZCwgJGdycGlkcyApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIFNldFVzZXJQYXNzd29yZCggJHVpZCwgJHBhc3N3b3JkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICAvLyEgU2V0IHRoZSB1c2VyJ3MgcHJvcGVydGllcyBhYnNvbHV0ZWx5LgogIC8vIQogIC8vISBUaGlzIG1ldGhvZCBkZWxldGVzIGFueSBleGlzdGluZyB1c2VyIHByb3BlcnRpZXMgYW5kIHNldHMgdGhlbSBhY2NvcmRpbmcgdG8gdGhlIHByb3BlcnRpZXMKICAvLyEgc3VwcGxpZWQuCiAgLy8hCiAgLy8hIFxwYXJhbSB1aWQgVGhlIHVzZXIgaWQgdG8gYmUgZWRpdGVkCiAgLy8hIFxwYXJhbSBwcm9wcyBBbiBhcnJheSBvZiBLZXk9VmFsdWUgc3RyaW5ncyBjb25zaXN0aW5nIG9mIHRoZSB1c2VyIHByb3BlcnRpZXMuCiAgLy8hIFxyZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFNldCBhIHByb3BlcnR5IGZvciB0aGUgY3VycmVudCB1c2VyCiAgLy8hCiAgLy8hIFNldHMgYSBwcm9wZXJ0eSBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcgogIC8vIQogIC8vISBccGFyYW0gdGl0bGUgVGhlIHByb3BlcnR5IG5hbWUKICAvLyEgXHBhcmFtIGRhdGEgIFRoZSBwcm9wZXJ0eSB2YWx1ZQogIC8vISBccmV0dXJucyB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogIC8vIQogIHB1YmxpYyBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydHkoJHRpdGxlLCRkYXRhKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgoKICAvLyEgU2V0IGEgcHJvcGVydHkgZm9yIHRoZSBwcm92aWRlZCB1c2VyaWQKICAvLyEKICAvLyEgU2V0cyBhIHByb3BlcnR5IGV4Y2x1c2l2ZWx5IGZvciBhIGNlcnRhaW4gdXNlcgogIC8vIQogIC8vISBccGFyYW0gdGl0bGUgVGhlIHByb3BlcnR5IG5hbWUKICAvLyEgXHBhcmFtIGRhdGEgIFRoZSBwcm9wZXJ0eSB2YWx1ZQogIC8vISBccGFyYW0gdXNlcmlkIFRoZSBkZXNpcmVkIHVzZXIgaWQKICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlclRlbXBDb2RlKCAkdWlkLCAkY29kZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFRlc3QgaWYgdGhlIHVzZXIgaWQgaXMgYWxyZWFkeSB0YWtlbgogIC8vIQogIC8vISBUZXN0cyBpZiBhIHVzZXIgYnkgdGhhdCBpZCBhbHJlYWR5IGV4aXN0cwogIC8vIQogIC8vISBccGFyYW0gdWlkIFRoZSB1c2VyaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIGJvb2xlYW4KICAvLyEKICBwdWJsaWMgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vCiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIC8vCgp9IC8vIGNsYXNzCgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/interface.feu_auth_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppbnRlcmZhY2UgZmV1X2F1dGhfY29uc3VtZXIKewogIGNvbnN0IENBUEFCSUxJVFlfQUxUTE9HSU4gPSAnQ0FQQUJJTElUWV9BTFRMT0dJTic7CiAgY29uc3QgQ0FQQUJJTElUWV9MT0dJTiA9ICdDQVBBQklMSVRZX0xPR0lOJzsKICBjb25zdCBDQVBBQklMSVRZX0xPR09VVCA9ICdDQVBBQklMSVRZX0xPR09VVCc7CiAgY29uc3QgQ0FQQUJJTElUWV9DSEFOR0VTRVRUSU5HUyA9ICdDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTJzsKICBjb25zdCBDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSA9ICdDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSc7CiAgY29uc3QgQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QgPSAnQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QnOwogIGNvbnN0IENBUEFCSUxJVFlfVVNFU1REQ0hBTkdFU0VUVElOR1MgPSAnQ0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9VU0VTVERHUk9VUFMgPSAnQ0FQQUJJTElUWV9VU0VTVERHUk9VUFMnOwogIGNvbnN0IENBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEID0gJ0NBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEJzsKICBjb25zdCBDQVBBQklMSVRZX0NIQU5HRVVTRVJOQU1FID0gJ0NBUEFCSUxJVFlfQ0hBTkdFVVNFUk5BTUUnOwogIGNvbnN0IENBUEFCSUxJVFlfTElTVFBST1BTID0gJ0NBUEFCSUxJVFlfTElTVFBST1BTJzsKICBjb25zdCBDQVBBQklMSVRZX0VESVRQUk9QUyA9ICdDQVBBQklMSVRZX0VESVRQUk9QUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9MSVNUR1JPVVBTID0gJ0NBUEFCSUxJVFlfTElTVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9FRElUR1JPVVBTID0gJ0NBUEFCSUxJVFlfRURJVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUyA9ICdDQVBBQklMSVRZX0VESVRHUk9VUFBST1BTJzsKICBjb25zdCBDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUCA9ICdDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUCc7CiAgY29uc3QgQ0FQQUJJTElUWV9ERUZBVUxUR1JPVVBTID0gJ0NBUEFCSUxJVFlfREVGQVVMVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9VU0VSTkFNRSA9ICdDQVBBQklMSVRZX1VTRVJOQU1FJzsgLy8gcmV0cmlldmUgcmVhZGFibGUgdXNlcm5hbWUgZ2l2ZW4gYSB1bmlxdWUgaWRlbnRpZmllci4KCiAgY29uc3QgUFJPUEVSVFlfVVNFUk5BTUUgPSAnX19VU0VSTkFNRV9fJzsKICBjb25zdCBQUk9QRVJUWV9VSUQgICAgICA9ICdfX1VJRF9fJzsKCiAgLyoqCiAgICogUmV0dXJuIGEgZmxhZyBpZiB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBpc19hdXRoZW50aWNhdGVkKCk7CgogIC8qKgogICAqIFJldHVybiBhbiBhcnJheSB3aXRoIHRoaXMgYXV0aGVudGljYXRpb24gbWV0aG9kcyBjYXBhYmlsaXRpZXMKICAgKgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2FwYWJpbGl0aWVzKCk7CgogIC8qKgogICAqIFRlc3QgaWYgdGhlIGNvbnN1bWVyIGhhcyB0aGUgY2FwYWJpbGl0eQogICAqCiAgICogQWNjZXB0cyBhIHNpbmdsZSBjYXBhYmlsaXR5IGlkZW50aWZpZXIsIG9yIGxpc3Qgb2YgYXJndW1lbnQgY2FwYWJpbGl0aWVzLgogICAqIHJldHVybnMgVFJVRSBpZiBhbnkgb2YgdGhlIHBhc3NlZCBpbiBwcm9wZXJ0aWVzIG1hdGNoLgogICAqIHJldHVybnMgRkFMU0Ugb3RoZXJ3aXNlLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBoYXNfY2FwYWJpbGl0eSgpOwoKICAvKioKICAgKiBBIGZ1bmN0aW9uIHRvIGRpc3BsYXkgbG9naW4gaW5mb3JtYXRpbwogICAqIChvciBhIGxpbmsgdG8gYSBsb2dpbiBwYWdlKQogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoKICAvKioKICAgKiBBIGZ1bmN0aW9uIHRvIGRpc3BsYXkgbG9naW4gaW5mb3JtYXRpb24KICAgKiAob3IgYSBsaW5rIHRvIGEgbG9naW4gcGFnZSkKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvZ291dF9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcyk7CgogIC8qKgogICAqIEEgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIHBhZ2UKICAgKgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2hhbmdlc2V0dGluZ3NfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoKCiAgLyoqCiAgICogR2V0IHRoZSB1c2VyIGluZm9ybWF0aW9uIGZyb20gdGhlIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIHN5c3RlbQogICAqIGZvciB1c2UgYnkgRkVVIAogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcl9pbmZvKCk7CgoKICAvKioKICAgKiBHZXQgdGhlIG5hbWUgb2YgYW4gRkVVIHByb3BlcnR5IHRoYXQgaXMgdXNlZCB0byB1bmlxdWVseSBpZGVudGlmeQogICAqIGEgdXNlciAKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2Nvbm5lY3RpbmdfcHJvcGVydHlfbmFtZSgpOwoKCiAgLyoqCiAgICogR2V0IGFuIGlkZW50aWZpZXIgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIGEgdXNlciBpbiB0aGlzIGVudmlyb25tZW50CiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF91bmlxdWVfaWRlbnRpZmllcigpOwoKICAvKioKICAgKiBHZXQgYSBsaXN0IG9mIGFsbCBncm91cHMKICAgKgogICAqIEByZXR1cm4gQXNzb2NpYXRpdmUgYXJyYXkgb2YgZ3JvdXBuYW1lcyBhbmQgZ3JvdXBpZCdzLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKTsKCiAgLyoqCiAgICogR2V0IHRoZSBsaXN0IG9mIGdyb3VwIChpZHMpIHRoYXQgYSB1c2VyIGlzIGEgbWVtYmVyIG9mLgogICAqCiAgICogQHBhcmFtIGludGVnZXIgVGhlIHVzZXIgaWQuICBNYXkgYmUgbmVnYXRpdmUgdG8gaW5kaWNhdGUgdGhhdCB0aGUgdXNlciBhY2NvdW50IGlzIHJlcHJlc2VudGluZyBhIG5ldyB1c2VyLgogICAqIEByZXR1cm4gbWl4ZWQgYXJyYXkgb2YgaW50ZWdlcnMsIG9yIG51bGwKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJpZCk7CgogIC8qKgogICAqIEdldCB0aGUgbGlzdCBvZiBncm91cCAoaWRzKSB0aGF0IGJ5IGRlZmF1bHQsIGEgbmV3IHVzZXIgc2hvdWxkIGJlbG9uZyB0by4KICAgKgogICAqIEByZXR1cm4gbWl4ZWQgYXJyYXkgb2YgaW50ZWdlcnMsIG9yIG51bGwuCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWZhdWx0X2dyb3VwcygpOwoKICAvKioKICAgKiBHZXQgdGhlIHVzZXJuYW1lIHByb21wdAogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWVfcHJvbXB0KCk7CgogIC8qKgogICAqIFZhbGlkYXRlIHVzZXJuYW1lLgogICAqCiAgICogQHBhcmFtIHN0cmluZyB0aGUgcHJvcG9zZWQgdXNlZXJuYW1lIAogICAqIEBwYXJhbSBib29sZWFuIGluZGljYXRlcyB3ZXRoZXIgdGhlIHVzZXJuYW1lIHNob3VsZCBiZSB0cmVhdGVkIGFzIGFuIGVtYWlsIGFkZHJlc3MsIGFuZCB2YWxpZGF0ZWQKICAgKiBAcGFyYW0gaW50ZWdlciBUaGUgdXNlciBpZCAoaWYgaXRzIGFuIGV4aXN0aW5nIHVzZXIpLi4uIHRvIHVzZSBmb3IgY2hlY2tpbmcgZm9yIGR1cGxpY2F0ZSBhZGRyZXNzZXMKICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gdmFsaWRhdGVfdXNlcm5hbWUoJHVzZXJuYW1lLCRjaGVja19lbWFpbF9hZGRyID0gRkFMU0UsJHVpZCA9IC0xKTsKfQoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgogICAgJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCiAgICAvL1VzZXIgbGlzdAogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICBpZCBJIEtFWSwKCSAgICAgdXNlcm5hbWUgQyg4MCkgTk9UIE5VTEwsCiAgICAgICAgICAgICBwYXNzd29yZCBDKDMyKSBOT1QgTlVMTCwKICAgICAgICAgICAgIGNyZWF0ZWRhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIGV4cGlyZXMgICAgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIG5vbnN0ZCAgIEkxIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgJGRiLT5DcmVhdGVTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2Vyc19zZXEiICk7CgogICAgLy9Hcm91cCBsaXN0CiAgICAkZmxkcyA9ICIKCSAgICAgaWQgSSBLRVksCgkgICAgIGdyb3VwbmFtZSBDKDMyKSwKCSAgICAgZ3JvdXBkZXNjIEMoMTI4KQoJICAgICI7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAkZGItPkNyZWF0ZVNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3Vwc19zZXEiICk7CgogICAgLy8gbG9nZ2VkaW4KICAgICRmbGRzID0gIgoJICAgICBzZXNzaW9uaWQgQygyNTUpLAoJICAgICBsYXN0dXNlZCBJLAoJICAgICB1c2VyaWQgSQoJICAgICI7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAvL0Nvbm5lY3Rpb25zIGJldHdlZW4gdXNlcnMgYW5kIGdyb3VwcwogICAgJGZsZHMgPSAiCgkgICAgIHVzZXJpZCBJIEtFWSwKCSAgICAgZ3JvdXBpZCBJIEtFWQoJICAgICI7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgIC8vcHJvcGVydHkgZGVmaW5pdGlvbgogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICBuYW1lICAgICAgQyg0MCkgS0VZLAogICAgICAgICAgICAgcHJvbXB0ICAgIEMoMjU1KSBOT1QgTlVMTCwKICAgICAgICAgICAgIHR5cGUgICAgICBDKDIwKSBOT1QgTlVMTCwKICAgICAgICAgICAgIGxlbmd0aCAgICBJLAogICAgICAgICAgICAgbWF4bGVuZ3RoIEksCiAgICAgICAgICAgICBhdHRyaWJzICAgQygyNTUpLAogICAgICAgICAgICAgZm9yY2VfdW5pcXVlIEkxLAogICAgICAgICAgICAgZW5jcnlwdCAgIEkxLAogICAgICAgICAgICAgZXh0cmEgICAgIFgKICAgICAgICAgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgIC8vZHJvcGRvd24gc2VsZWN0IG9wdGlvbnMKICAgICRmbGRzID0gIgogICAgICAgICAgICAgb3JkZXJfaWQJCUksCiAgICAgICAgICAgICBvcHRpb25fbmFtZQlDKDQwKSBOT1QgTlVMTCwKICAgICAgICAgICAgIG9wdGlvbl90ZXh0CUMoMjU1KSBOT1QgTlVMTCwKICAgICAgICAgICAgIGNvbnRyb2xfbmFtZQlDKDQwKSBOT1QgTlVMTDsKICAgICAgICAgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAvLyBncm91cCBwcm9wZXJ0eSBtYXAKICAgIC8vIHVzZWQgdG8gYXNzb2NpYXRlIGEgcHJvcGVydHkgdG8gYSBncm91cAogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICAgbmFtZSAgICBDKDQwKSBLRVksCiAgICAgICAgICAgICAgZ3JvdXBfaWQgSSBLRVksCiAgICAgICAgICAgICAgc29ydF9rZXkgSSwKICAgICAgICAgICAgICByZXF1aXJlZCBJIE5PVCBOVUxMLAogICAgICAgICAgICAgIGxvc3R1bmZsYWcgSQogICAgICAgICAgICAiOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU3FsKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgIC8vdXNlciBwcm9wZXJ0aWVzCiAgICAkZmxkcyA9ICIKCSAgICAgaWQgSSBLRVksCgkgICAgIHVzZXJpZCBJLAoJICAgICB0aXRsZSBDKDEwMCksCgkgICAgIGRhdGEgWDIKCSAgICAiOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgICRkYi0+Q3JlYXRlU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllc19zZXEiICk7CgogICAgLy8gZm9yZ290dGVuIHBhc3N3b3JkIHN0dWZmCiAgICAkZmxkcyA9ICIKCSAgICAgdXNlcmlkIEkgS0VZLAogICAgICAgICAgICAgY29kZSBDKDI1KSwKICAgICAgICAgICAgIGNyZWF0ZWQgIi5DTVNfQURPREJfRFQ7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAvLyBsb2dpbiBoaXN0b3J5IHN0dWZmCiAgICAkZmxkcyA9ICIKICAgICAgICAgICAgIHVzZXJpZCBJLAoJICAgICBzZXNzaW9uaWQgQygzMiksCiAgICAgICAgICAgICBhY3Rpb24gQygzMiksCiAgICAgICAgICAgICByZWZkYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgICAgICBpcGFkZHJlc3MgQygyMCkiOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCi8vIGluZGV4ZXMKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKGNtc19kYl9wcmVmaXgoKS4nZmV1X2lkeF91c2VybmFtZScsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzJywnZ3JvdXBpZCcpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfdXNlcm5hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnLCd1c2VybmFtZScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfZXhwaXJlcycsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycycsJ2V4cGlyZXMnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoY21zX2RiX3ByZWZpeCgpLidmZXVfaWR4X3JlZmRhdGUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeScsJ3VzZXJpZCxyZWZkYXRlLGFjdGlvbicpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHVzZXJ0aXRsZScsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzJywndXNlcmlkLHRpdGxlJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKGNtc19kYl9wcmVmaXgoKS4nZmV1X2lkeF9wcm9wdGl0bGUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcycsJ3RpdGxlJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCgogICAgLy8gdGVtcGxhdGVzCiAgICAkZm4gPSBfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfbG9naW5mb3JtLnRwbCc7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9naW5mb3JtJywgZmlsZV9nZXRfY29udGVudHMoJGZuKSApOwoKICAgICRmbiA9IF9fRElSX18uJy90ZW1wbGF0ZXMvb3JpZ19sb2dvdXRmb3JtLnRwbCc7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9nb3V0Zm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKCiAgICAkZm4gPSBfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfY2hhbmdlc2V0dGluZ3MudHBsJzsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19jaGFuZ2VzZXR0aW5nc2Zvcm0nLCBmaWxlX2dldF9jb250ZW50cygkZm4pICk7CgogICAgJGZuID0gX19ESVJfXy4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMS50cGwnOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZm9ybScsZmlsZV9nZXRfY29udGVudHMoJGZuKSk7CgogICAgJGZuID0gX19ESVJfXy4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMi50cGwnOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZW1haWxmb3JtJywgZmlsZV9nZXRfY29udGVudHMoJGZuKSApOwoKICAgICRmbiA9IF9fRElSX18uJy90ZW1wbGF0ZXMvb3JpZ19mb3Jnb3RwYXNzd29yZDMudHBsJzsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nLGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikpOwoKJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX2xvc3R1bmZvcm1fdGVtcGxhdGUudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2xvc3R1bmZvcm0nLCR0ZW1wbGF0ZSk7CiAgfQoKJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX2xvc3R1bmZvcm1fY29uZmlybV90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJywkdGVtcGxhdGUpOwogIH0KCiRmbiA9IGNtc19qb2luX3BhdGgoX19ESVJfXywndGVtcGxhdGVzJywnb3JpZ19ub3RpZmljYXRpb25fdGVtcGxhdGUudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnLCR0ZW1wbGF0ZSk7CiAgfQoKJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX3ZpZXd1c2VyX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc192aWV3dXNlcicsJHRlbXBsYXRlKTsKICB9CgokZm4gPSBjbXNfam9pbl9wYXRoKF9fRElSX18sJ3RlbXBsYXRlcycsJ29yaWdfcmVzZXRzZXNzaW9uX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkgewogICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLCR0ZW1wbGF0ZSk7CiB9CgovLyBwcmVmZXJlbmNlcwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywgNik7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnLCAyMCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtaW5fdXNlcm5hbWVsZW5ndGgnLCA0KTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcsIDQwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJfc2Vzc2lvbl9leHBpcmVzJywgMTgwMCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVfa2VlcGFsaXZlJywwKTsKJHN0ciA9ICd4Jy5zdWJzdHIoc3RyX3NodWZmbGUobWQ1KHRpbWUoKS4kY29uZmlnWydyb290X3VybCddLl9fRklMRV9fKSksMCw3KTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnLCRzdHIpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcsIC0xKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsICcqJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsICdibHVlJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJywgMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfbWFya2VyJywgJyEnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9jb2xvcicsICdncmVlbicpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2ZvcmdvdHBhc3N3ZCcsICcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9jaGFuZ2VzZXR0aW5ncycsICcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsJycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcsJycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2FmdGVydmVyaWZ5JywnJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJywwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJywxKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJywgMjApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnLCA0MCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19yZXBlYXRlZF9sb2dpbnMnLDApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycsJy5naWYsLnBuZywuanBnJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcsJHRoaXMtPkxhbmcoJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdleHBpcmVhZ2VfbW9udGhzJyw2MCk7CgogICAgJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3B3c2FsdCcsc3Vic3RyKHN0cl9zaHVmZmxlKG1kNSh0aW1lKCkuJGNvbmZpZ1sncm9vdF91cmwnXS5fX0ZJTEVfXykpLDAsNSkpOwoKICAgIC8vIEV2ZW50cwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dpbicgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9nb3V0JyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25FeHBpcmVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25EZWxldGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25VcGRhdGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVHcm91cCcgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uVXBkYXRlR3JvdXAnKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uRGVsZXRlR3JvdXAnICk7CiAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoJyBPblJlZnJlc2hVc2VyJyApOwoKLy8kdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCAnQ29yZScsICdDb250ZW50UG9zdFJlbmRlcicsIGZhbHNlICk7CgogICAgLy8gcGVybWlzc2lvbnMKICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcycpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgokZGIgPSYgJHRoaXMtPkdldERiKCk7CiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoICRkYiApOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4iICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZHJvcGRvd25zIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgokZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2Vyc19zZXEiICk7CiRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3Vwc19zZXEiICk7CiRkYi0+RHJvcFNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXNfc2VxIiApOwoKLy8gdGVtcGxhdGVzCiR0aGlzLT5EZWxldGVUZW1wbGF0ZSgpOwoKLy8gcHJlZmVyZW5jZXMKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsKCi8vIHBlcm1pc3Npb25zCiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnKTsKCi8vIEZFVXNlcnMtc3BlY2lmaWMgcGVybWlzc2lvbnMgLi4uIG1heSBvciBtYXkgbm90IGV4aXN0CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgQWRkIFVzZXJzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFVzZXJzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgQWRkIEdyb3VwcycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cHMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBSZW1vdmUgR3JvdXBzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVGVtcGxhdGVzJyk7CgovLyBFdmVudHMKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25Mb2dpbicgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25Mb2dvdXQnICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uRXhwaXJlVXNlcicgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25DcmVhdGVVc2VyJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkRlbGV0ZVVzZXInICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uQ3JlYXRlR3JvdXAnICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uRGVsZXRlR3JvdXAnICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uVXBkYXRlVXNlcicgKTsKCiR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCdDb250ZW50UG9zdFJlbmRlcicpOwokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlclVwZGF0ZWQnKTsKJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJEZWxldGVkJyk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgokZGIgPSAkdGhpcy0+R2V0RGIoKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoKc3dpdGNoKCAkb2xkdmVyc2lvbiApCiAgewogIGNhc2UgJzAuMS4wJzoKICBjYXNlICcwLjEuMSc6CiAgICB7CiAgICAgIC8vIHBlcm1pc3Npb25zCiAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLAoJCQkgICAgICAnTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzJyk7CiAgICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nLCAkdGhpcy0+ZGZsdF9mb3Jnb3RwYXNzd29yZHRlbXBsYXRlMSk7CiAgICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUyKTsKICAgICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkdmVyaWZ5Zm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUzKTsKCiAgICAgIC8vIGZvcmdvdHRlbiBwYXNzd29yZCBzdHVmZgogICAgICAkZmxkcyA9ICIKCSAgICAgICAgICAgICB1c2VyaWQgSSBLRVksCiAgICAgICAgICAgICAgICAgICAgIGNvZGUgQygyNSksCiAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZWQgIi5DTVNfQURPREJfRFQ7CiAgICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiLAoJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAgIC8vIG5vdGljZSBubyBicmVhawogICAgfQoKICBjYXNlICcwLjEuMic6CiAgICB7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfZm9yZ290cGFzc3dkJywgJycpOwogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJywgJycpOwogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJywnJyk7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfbG9nb3V0JywnJyk7CiAgICAgIC8vIG5vdGljZSBubyBicmVhawogICAgfQogIGNhc2UgJzAuMS4zJzoKICBjYXNlICcwLjEuNCc6CiAgY2FzZSAnMC4xLjUnOgogIGNhc2UgJzAuMS42JzoKICAgIHsKICAgICAgLy9kcm9wZG93biBzZWxlY3Qgb3B0aW9ucwogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAgICRmbGRzID0gIgoJCQkJIG9yZGVyX2lkCQlJLAoJCQkJIG9wdGlvbl9uYW1lCUMoNDApIE5PVCBOVUxMLAoJCQkJIG9wdGlvbl90ZXh0CUMoODApIE5PVCBOVUxMLAoJCQkJIGNvbnRyb2xfbmFtZQlDKDQwKSBOT1QgTlVMTDsKCQkJCSI7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCgkJCQkJJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAgIC8vIGFuZCBjbGVhbnVwIHByb3BlcnR5IG5hbWVzCiAgICAgICRxID0gJ3VwZGF0ZSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gc2V0IG5hbWUgPSBsY2FzZShyZXBsYWNlKG5hbWUsIiAiLCJfIikpJzsKICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwogICAgfSAvL2Nhc2UKCiAgY2FzZSAnMC4xLjcnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgIm1heGxlbmd0aCBJIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgfSAvLyBjYXNlCgogIGNhc2UgJzEuMC4wJzoKICAgIHsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnLDEpOwogICAgfQoKICBjYXNlICcxLjAuMSc6CiAgICB7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcsIDIwKTsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJywgMjApOwogICAgfQoKICBjYXNlICcxLjAuNSc6CiAgY2FzZSAnMS4wLjYnOgogICAgewogICAgICAvLyBFdmVudHMKICAgICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dpbicgKTsKICAgICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dvdXQnICk7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uRXhwaXJlVXNlcicgKTsKICAgICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVVc2VyJyApOwogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkRlbGV0ZVVzZXInICk7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uQ3JlYXRlR3JvdXAnICk7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uRGVsZXRlR3JvdXAnICk7CgogICAgICAvLyBQcmVmZXJlbmNlcwogICAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywxKTsKCiAgICAgIC8vIFRhYmxlcwogICAgICAkZmxkcyA9ICIKICAgICAgICAgICAgIHVzZXJpZCBJIEtFWSwKCSAgICAgc2Vzc2lvbmlkIEMoMzIpLAogICAgICAgICAgICAgYWN0aW9uIEMoMzIpLAogICAgICAgICAgICAgd2hlbiBEVAogICAgICAgICAgICAiOwogICAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiwKCQkJCQkkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgfQoKICBjYXNlICcxLjEuMCc6CiAgICB7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DaGFuZ2VUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCgkJCQkJIm9wdGlvbl90ZXh0IEMoMjU1KSBOT1QgTlVMTCIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgIH0KCiAgY2FzZSAnMS4yLjEnOgogICAgewogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPblVwZGF0ZVVzZXInICk7CiAgICB9CgogIGNhc2UgJzEuMi4yJzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLgoJCQkJICAgICAgICJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiApOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgICAkZmxkcyA9ICIKICAgICAgICAgICAgIHVzZXJpZCBJLAoJICAgICBzZXNzaW9uaWQgQygzMiksCiAgICAgICAgICAgICBhY3Rpb24gQygzMiksCiAgICAgICAgICAgICByZWZkYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgICAgICBpcGFkZHJlc3MgQygyMCkiOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLgoJCQkJCSJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiwKCQkJCQkkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgfQoKCiAgY2FzZSAnMS4zJzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIsCgkJCQkgICAgICAibG9zdHVuZmxhZyBJIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSk7CgogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2FmdGVydmVyaWZ5JywnJyk7CiAgICB9CgogIGNhc2UgJzEuMy4xJzoKICAgIHsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkdGhpcy0+TGFuZygnZmV1X2V2ZW50X25vdGlmaWNhdGlvbicpKTsKICAgICAgJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX25vdGlmaWNhdGlvbl90ZW1wbGF0ZS50cGwnKTsKICAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCgl7CgkgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJICAkdGhpcy0+U2V0VGVtcGxhdGUoJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZScsJHRlbXBsYXRlKTsKCX0KICAgIH0KCiAgY2FzZSAnMS4zLjInOgogICAgewogICAgICAkdG1wX25hbWUgPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXNfdG1wJzsKICAgICAgJHJlYWxfbmFtZSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyc7CgogICAgICAvLyAxIENyZWF0ZSB0ZW1wb3JhcnkgdGFibGUKICAgICAgLy91c2VyIHByb3BlcnRpZXMKICAgICAgJGZsZHMgPSAiCgkgICAgICBpZCBJIEtFWSwKICAJICAgICAgdXNlcmlkIEksCiAJICAgICAgdGl0bGUgQygxMDApLAoJICAgICAgZGF0YSBYMgoJICAgICI7CiAgICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCgkdG1wX25hbWUsJGZsZHMsJHRhYm9wdGFycmF5KTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgICAvLyAyLiAgQ29weSBhbGwgZGF0YSBmcm9tIGZldXNlcnNfcHJvcGVydGllcyB0byB0ZW1wb3JhcnkgdGFibGUKICAgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuJHRtcF9uYW1lLicgKGlkLHVzZXJpZCx0aXRsZSxkYXRhKQogICAgICAgICAgICAgICAgICAgICAgU0VMRUNUIGlkLHVzZXJpZCx0aXRsZSxkYXRhIEZST00gJy4kcmVhbF9uYW1lOwogICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCiAgICAgIC8vIDMuICBEcm9wIGZldXNlcnNfcHJvcGVydGllcwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMiICk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiAgICAgIC8vIDQuICBSZW5hbWUgdGFibGUKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPlJlbmFtZVRhYmxlU1FMKCR0bXBfbmFtZSwkcmVhbF9uYW1lKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjMuMyc6CiAgICAkZm4gPSBjbXNfam9pbl9wYXRoKF9fRElSX18sJ3RlbXBsYXRlcycsJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJyk7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfdmlld3VzZXInLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCiAgY2FzZSAnMS40JzoKICBjYXNlICcxLjQuMSc6CiAgY2FzZSAnMS40LjInOgogIGNhc2UgJzEuNC4zJzoKICBjYXNlICcxLjQuNCc6CiAgY2FzZSAnMS41JzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFsdGVyQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLCAicHJvbXB0IEMoMjU1KSBOT1QgTlVMTCIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICB9CgogIGNhc2UgJzEuNS4xJzoKICBjYXNlICcxLjUuMic6CiAgY2FzZSAnMS41LjMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWx0ZXJDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbicsICJzZXNzaW9uaWQgQygyNTUpIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS41LjQnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImF0dHJpYnMgQygyNTUpIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS42LjUnOgogIGNhc2UgJzEuNi42JzoKICBjYXNlICcxLjYuNyc6CiAgY2FzZSAnMS42LjgnOgogIGNhc2UgJzEuNi45JzoKICBjYXNlICcxLjYuMTAnOgogICAgewogICAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCAnQ29yZScsICdDb250ZW50UG9zdFJlbmRlcicsIGZhbHNlICk7CiAgICB9CgogIGNhc2UgJzEuNi4xMSc6CiAgY2FzZSAnMS42LjEyJzoKICBjYXNlICcxLjYuMTMnOgogIGNhc2UgJzEuNi4xNCc6CiAgY2FzZSAnMS42LjE1JzoKICBjYXNlICcxLjYuMTYnOgogICAgewogICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKF9fRElSX18sJ3RlbXBsYXRlcycsJ29yaWdfcmVzZXRzZXNzaW9uX3RlbXBsYXRlLnRwbCcpOwogICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKCXsKCSAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLCR0ZW1wbGF0ZSk7Cgl9CiAgICB9CgogIGNhc2UgJzEuNy4xMSc6CiAgY2FzZSAnMS44JzoKICBjYXNlICcxLjguMSc6CiAgY2FzZSAnMS44LjInOgogIGNhc2UgJzEuOC4zJzoKICBjYXNlICcxLjguNSc6CiAgY2FzZSAnMS45JzoKICBjYXNlICcxLjkuMSc6CiAgY2FzZSAnMS45LjInOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImZvcmNlX3VuaXF1ZSBJMSIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICB9CgogIGNhc2UgJzEuMTAnOgogIGNhc2UgJzEuMTAuMSc6CiAgY2FzZSAnMS4xMC4yJzoKICBjYXNlICcxLjEwLjMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImVuY3J5cHQgSTEiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjExJzoKICBjYXNlICcxLjExLjEnOgogIGNhc2UgJzEuMTInOgogIGNhc2UgJzEuMTIuMSc6CiAgY2FzZSAnMS4xMi4yJzoKICAgIHsKICAgICAgJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJVcGRhdGVkJyk7CiAgICAgICR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcpOwogICAgICAkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywnTW9kdWxlSW5zdGFsbGVkJyk7CiAgICAgICR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCdNb2R1bGVVbmluc3RhbGxlZCcpOwogICAgfQoKICBjYXNlICcxLjEyLjMnOgogIGNhc2UgJzEuMTIuNCc6CiAgY2FzZSAnMS4xMi41JzoKICBjYXNlICcxLjEyLjYnOgogIGNhc2UgJzEuMTIuNyc6CiAgY2FzZSAnMS4xMi44JzoKICBjYXNlICcxLjEyLjknOgogIGNhc2UgJzEuMTIuMTAnOgogIGNhc2UgJzEuMTIuMTEnOgogIGNhc2UgJzEuMTIuMTInOgogIGNhc2UgJzEuMTIuMTMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLCJlbmNyeXB0IEkxIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS4xMi4xNCc6CiAgY2FzZSAnMS4xMi4xNSc6CiAgY2FzZSAnMS4xMi4xNic6CiAgY2FzZSAnMS4xMi4xNyc6CiAgICB7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uUmVmcmVzaFVzZXInICk7CiAgICB9CiAgfSAvLyBzd2l0Y2gKCmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sJzEuMTYuMicpIDwgMCApCiAgewogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdpZHhfdXNlcm5hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnLCd1c2VybmFtZScpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdpZHhfZXhwaXJlcycsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycycsJ2V4cGlyZXMnKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnaWR4X3JlZmRhdGUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeScsJ3VzZXJpZCxyZWZkYXRlLGFjdGlvbicpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogIH0KaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4xOS4xJykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5BZGRjb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiIsImV4dHJhIFgiKTsKICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjIxJykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfdXNlcm5hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncycsJ2dyb3VwaWQnKTsKICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cn0KaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4yMS43JykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycycsJ25vbnN0ZCBJMScpOwogICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjIxLjE2JykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHVzZXJ0aXRsZScsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzJywndXNlcmlkLHRpdGxlJyk7CiAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHRpdGxlJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMnLCd0aXRsZScpOwogICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKfQoKaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4yMy41JykgPCAwICkgewogICAgJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ29yZScsJ0NvbnRlbnRQb3N0UmVuZGVyJyk7Cn0KPz4=]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/addgroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9OjwvaDM+Cgp7aWYgaXNzZXQoJG1lc3NhZ2UpIH0KICB7aWYgaXNzZXQoJGVycm9yKSB9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0KCnskc3RhcnRmb3JtfQp7aWYgaXNzZXQoJGhpZGRlbil9CjxkaXY+eyRoaWRkZW59PC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZ3JvdXBuYW1lfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2dyb3VwbmFtZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZ3JvdXBkZXNjfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2dyb3VwZGVzY308L3A+CjwvZGl2PgoKe2lmICRwcm9wY291bnQgPiAwfQo8YnIvPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogIDx0aGVhZD4KICAgIDx0cj4KICAgICAgPHRoPnskbmFtZXRleHR9PC90aD4KICAgICAgPHRoPnskcHJvbXB0dGV4dH08L3RoPgogICAgICA8dGg+eyR0eXBldGV4dH08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2VuY3J5cHRlZCcpfTwvdGg+CiAgICAgIDx0aD57JGZpZWxkc3RhdHVzdGV4dH08L3RoPgogICAgICA8dGg+eyR1c2VkaW5sb3N0dW50ZXh0fTwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPjwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPjwvdGg+CiAgICA8L3RyPgogIDwvdGhlYWQ+CiAgPHRib2R5PgogIHtmb3JlYWNoIGZyb209JHByb3BzIGl0ZW09J3Byb3BlJ30KICAgIHtjeWNsZSB2YWx1ZXM9InJvdzEscm93MiIgYXNzaWduPSdyb3djbGFzcyd9CiAgICA8dHIgY2xhc3M9Inskcm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9JzsiPgogICAgICA8dGQ+eyRwcm9wZS0+aGlkZGVufXskcHJvcGUtPm5hbWV9PC90ZD4KICAgICAgPHRkPnskcHJvcGUtPnByb21wdH08L3RkPgogICAgICA8dGQ+eyRwcm9wZS0+dHlwZX08L3RkPgogICAgICA8dGQ+e2lmICRwcm9wZS0+ZW5jcnlwdGVkfTxzcGFuIGluZm89InskbW9kLT5MYW5nKCdpbmZvX2VuY3J5cHRlZCcpfSIgc3R5bGU9ImNvbG9yOiByZWQ7IGZvbnQtd2VpZ2h0OiBib2xkOyI+eyRtb2QtPkxhbmcoJ3llcycpfTwvc3Bhbj57L2lmfTwvdGQ+CiAgICAgIDx0ZD57JHByb3BlLT5yZXF1aXJlZH08L3RkPgogICAgICA8dGQ+eyRwcm9wZS0+YXNraW5sb3N0dW58ZGVmYXVsdDonJ308L3RkPgogICAgICA8dGQ+CiAgICAgICAge2lmIGlzc2V0KCRwcm9wZS0+bW92ZXVwX2lkeCl9CiAgICAgICAgICA8YnV0dG9uIG5hbWU9InskYWN0aW9uaWR9bW92ZXVwIiB0aXRsZT0ieyRtb2QtPkxhbmcoJ21vdmVfdXAnKX0iIHZhbHVlPSJ7JHByb3BlLT5tb3ZldXBfaWR4fSI+eyRpbWdfdXB9PC9idXR0b24+CiAgICAgICAgey9pZn0KICAgICAgPC90ZD4KICAgICAgPHRkPgogICAgICAgIHtpZiBpc3NldCgkcHJvcGUtPm1vdmVkb3duX2lkeCl9CiAgICAgICAgICA8YnV0dG9uIG5hbWU9InskYWN0aW9uaWR9bW92ZWRvd24iIHRpdGxlPSJ7JG1vZC0+TGFuZygnbW92ZV9kb3duJyl9IiB2YWx1ZT0ieyRwcm9wZS0+bW92ZXVwX2lkeH0iPnskaW1nX2Rvd259PC9idXR0b24+CiAgICAgICAgey9pZn0KICAgICAgPC90ZD4KICAgIDwvdHI+CiAgey9mb3JlYWNofQogIDwvdGJvZHk+CjwvdGFibGU+CjwvZGl2Pgp7L2lmfQoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGNhbmNlbH08L3A+CjwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/addprop.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQo8ZGl2Pnskb3JpZ190eXBlfTwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25hbWV9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfbmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfcHJvbXB0fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3Byb21wdH08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdHlwZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90eXBlfTwvcD4KICA8L2Rpdj4KICB7aWYgaXNzZXQoJGZpZWxkcyl9CiAge2ZvcmVhY2ggZnJvbT0kZmllbGRzIGl0ZW09J29uZWZsZCd9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRvbmVmbGRbMF19OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskb25lZmxkWzFdfTwvcD4KICA8L2Rpdj4KICB7L2ZvcmVhY2h9CiAgey9pZn0Ke2lmIGlzc2V0KCRpbnB1dF9mb3JjZV91bmlxdWUpfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZm9yY2VfdW5pcXVlJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZm9yY2VfdW5pcXVlfTwvcD4KICA8L2Rpdj4Key9pZn0Ke2lmICRkZWZuLnR5cGUgIT0gMn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2VuY3J5cHQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbmNyeXB0fTxici8+eyRtb2QtPkxhbmcoJ2luZm9fZW5jcnlwdCcpfTwvcD4KICA8L2Rpdj4Key9pZn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbnxkZWZhdWx0OicnfXskc3VibWl0fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/addprop2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmICRtZXNzYWdlICE9ICcnfQogIHtpZiAkZXJyb3IgIT0gJyd9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0KeyRzdGFydGZvcm19CiAgeyRpbnB1dF9uYW1lfQogIHskaW5wdXRfcHJvbXB0fQogIHskaW5wdXRfdHlwZX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdDF9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dDF9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0Mn08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0Mn08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPgogIDwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/adduser1.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VzZXJuYW1lfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VzZXJuYW1lfXtpZiBpc3NldCgkdXNlcm5hbWVfcmVhZG9ubHkpfTxici8+eyRtb2QtPkxhbmcoJ21zZ191c2VybmFtZV9yZWFkb25seScpfXsvaWZ9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Bhc3N3b3JkfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3Bhc3N3b3JkfSZuYnNwO3skaW5mb19wYXNzd29yZHxkZWZhdWx0OicnfQogICAge2lmIGlzc2V0KCR1c2VybmFtZV9yZWFkb25seSl9PGJyLz57JG1vZC0+TGFuZygnbXNnX3VzZXJuYW1lX3JlYWRvbmx5Jyl9ey9pZn08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfcmVwZWF0cGFzc3dvcmR9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVwZWF0cGFzc3dvcmR9Jm5ic3A7eyRpbmZvX3JlcGVhdHBhc3N3b3JkfGRlZmF1bHQ6Jyd9CiAgICB7aWYgaXNzZXQoJHVzZXJuYW1lX3JlYWRvbmx5KX08YnIvPnskbW9kLT5MYW5nKCdtc2dfdXNlcm5hbWVfcmVhZG9ubHknKX17L2lmfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2V4cGlyZXN9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPntodG1sX3NlbGVjdF9kYXRlIHByZWZpeD0kZXhwaXJlc19kYXRlcHJlZml4IHRpbWU9JGV4cGlyZXNkYXRlIHN0YXJ0X3llYXI9MjAwMCBlbmRfeWVhcj0yMDQwfTwvcD4KICA8L2Rpdj4Ke2lmIGlzc2V0KCRpdGVtY291bnQpICYmICRpdGVtY291bnQgPiAwfQo8cCBjbGFzcz0icGFnZXRleHQiPnskZ3JvdXBzdGl0bGV9OjwvcD4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGggd2lkdGg9IjUlIj57JGlkdGV4dH08L3RoPgoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPgoJCQk8dGg+eyRkZXNjdGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgoJCQk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4KCQkJPHRkPnskZW50cnktPm5hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlc2N9PC90ZD4KCQkJPHRkPnskZW50cnktPm1lbWJlcn08L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW58ZGVmYXVsdDonJ317JHN1Ym1pdH17JGNhbmNlbH08L3A+CiAgPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/adduser2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9OjwvaDM+CntpZiBpc3NldCgkdXNlcm5hbWUpfTxoMz57JGVkaXR0ZXh0fTogeyR1c2VybmFtZX08L2gzPnsvaWZ9CntpZiBpc3NldCgkbWVzc2FnZSkgfQogIHtpZiBpc3NldCgkZXJyb3IpIH0KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQp7JHN0YXJ0Zm9ybX0Ke2lmICRjb250cm9sY291bnQgPiAwfQp7Zm9yZWFjaCBmcm9tPSRjb250cm9scyBpdGVtPWNvbnRyb2x9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRjb250cm9sLT5oaWRkZW59PGZvbnQgY29sb3I9InskY29udHJvbC0+Y29sb3J9Ij57JGNvbnRyb2wtPnByb21wdH17JGNvbnRyb2wtPm1hcmtlcn08L2ZvbnQ+PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjb250cm9sLT5jb250cm9sfTwvcD4KICA8L2Rpdj4KICB7aWYgaXNzZXQoJGNvbnRyb2wtPmltYWdlKX0KICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGNvbnRyb2wtPmltYWdlfTwvcD4KICAgIDwvZGl2PgogIHsvaWZ9CiAge2lmICRjb250cm9sLT5yZXF1aXJlZCAhPSB0cnVlfQogICAgIHtpZiBpc3NldCgkY29udHJvbC0+Y29udHJvbDIpfQogICAgICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskY29udHJvbC0+cHJvbXB0Mn0mbmJzcDt7JGNvbnRyb2wtPmNvbnRyb2wyfTwvcD4KICAgICAgIDwvZGl2PgogICAgIHsvaWZ9CiAgey9pZn0Key9mb3JlYWNofQo8YnIvPgp7L2lmfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufGRlZmF1bHQ6Jyd9eyRoaWRkZW4yfGRlZmF1bHQ6Jyd9eyRiYWNrfXskc3VibWl0fXskY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/adminprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQp7JHN0YXJ0Zm9ybX0KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdnZW5lcmFsX3NldHRpbmdzJyl9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdhdXRoX21vZHVsZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWF1dGhfbW9kdWxlIj4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGF1dGhfbW9kdWxlcyBzZWxlY3RlZD0kYXV0aF9tb2R1bGV9CiAgICAgIDwvc2VsZWN0PgogICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2F1dGhfbW9kdWxlJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPSdhdXRvX2NyZWF0ZV91bmtub3duJyBzZWxlY3RlZD0kYXV0b19jcmVhdGVfdW5rbm93bn0KICAgICAgPGJyLz4gCiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnN9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2V4cGlyZWFnZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2V4cGlyZWFnZX0mbmJzcDsoeyRtb2QtPkxhbmcoJ21vbnRocycpfSk8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9yYW5kb211c2VybmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JhbmRvbXVzZXJuYW1lfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnN9PGJyLz57JGluZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9uc308L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnc2Vzc2lvbl9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9zZXNzaW9udGltZW91dH06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9zZXNzaW9udGltZW91dH0KICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19zZXNzaW9udGltZW91dCcpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWV4cGlyZXVzZXJzX2ludGVydmFsIiB2YWx1ZT0ieyRleHBpcmV1c2Vyc19pbnRlcnZhbH0iIHNpemU9IjQiIG1heGxlbmd0aD0iNCIvPgogICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Zm9yY2Vsb2dvdXRfdGltZXMiIHNpemU9IjQwIiBtYXhsZW5ndGg9IjI1NSIgdmFsdWU9InskZm9yY2Vsb2dvdXRfdGltZXN9Ii8+CiAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UiIHNpemU9IjUiIG1heGxlbmd0aD0iNSIgdmFsdWU9InskZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZX0iLz4KICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJyl9CiAgICA8L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygncHJvcGVydHlfc2V0dGluZ3MnKX06PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aH06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRofTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnN9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zfTwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdub3RpZmljYXRpb25fc2V0dGluZ3MnKX06PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbm90aWZpY2F0aW9uc306PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ub3RpZmljYXRpb25zfTwvcD4gICAgICAgIAogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTwvcD4gICAgICAgIAogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl9zdWJqZWN0fTwvcD4gICAgICAgIAogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ub3RpZmljYXRpb25fdGVtcGxhdGV9PC9wPiAgICAgICAgCiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygncGFnZXR5cGVfc2V0dGluZ3MnKX06PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3BhZ2V0eXBlX2dyb3VwcycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2V0eXBlX2dyb3Vwc1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjUiPgogICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kYWxsX2dyb3VwcyBzZWxlY3RlZD0kcGFnZXR5cGVfZ3JvdXBzfQogICAgICA8L3NlbGVjdD4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3BhZ2V0eXBlX2FjdGlvbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2V0eXBlX2FjdGlvbiI+CiAgICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRwYWdldHlwZV9hY3Rpb25fb3B0cyBzZWxlY3RlZD0kcGFnZXR5cGVfYWN0aW9ufQogICAgICA8L3NlbGVjdD4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcGFnZXR5cGVfYWN0aW9uJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIHskcGFnZXR5cGVfcmVkaXJlY3R0b30KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0bycpfQogICAgPC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKe2lmIGlzc2V0KCRkYXRhX251bXJlc2V0cmVjb3Jkcyl9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxociB3aWR0aD0iNTAlIiBhbGlnbj0ibGVmdCIvPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X251bXJlc2V0cmVjb3Jkc308L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGRhdGFfbnVtcmVzZXRyZWNvcmRzfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlbW92ZTF3ZWVrfXskaW5wdXRfcmVtb3ZlMW1vbnRofXskaW5wdXRfcmVtb3ZlYWxsfTwvcD4KICA8L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW58ZGVmYXVsdDonJ317JHN1Ym1pdH17JGNhbmNlbH08L3A+CjwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/admintasks.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQoKeyogQSBmb3JtIChzaW1wbGUgYnV0dG9uKSBmb3IgZXhwb3J0aW5nIHVzZXJzIHRvIGNzdiAqfQp7JHN0YXJ0Zm9ybX17JGlucHV0X2hpZGRlbn0KCjxmaWVsZHNldD4KPGxlZ2VuZD57JGxlZ2VuZF91c2VyaGlzdG9yeW1haW50ZW5hbmNlfTwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZXhwb3J0dXNlcmhpc3Rvcnl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2V4cG9ydHVzZXJoaXN0b3J5fSZuYnNwO3skYnV0dG9uX2V4cG9ydHVzZXJoaXN0b3J5fTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9jbGVhcnVzZXJoaXN0b3J5fTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9jbGVhcnVzZXJoaXN0b3J5fSZuYnNwO3skYnV0dG9uX2NsZWFydXNlcmhpc3Rvcnl9PC9wPgo8L2Rpdj4KPC9maWVsZHNldD4KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_authtab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9ImluZm9ybWF0aW9uIj57JG1vZC0+TGFuZygnaW5mb19zdGRfYXV0aF9zZXR0aW5ncycpfTwvZGl2Pgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnYXV0aF9zZXR0aW5ncycpfTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPXJlcXVpcmVfb25lZ3JvdXAgc2VsZWN0ZWQ9JHJlcXVpcmVfb25lZ3JvdXB9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kZmx0Z3JvdXAnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1kZWZhdWx0X2dyb3VwIj4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGdyb3VwbGlzdCBzZWxlY3RlZD0kZGVmYXVsdF9ncm91cH0KICAgICAgPC9zZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdXBwb3J0X2xvc3R1bicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1zdXBwb3J0X2xvc3R1biBzZWxlY3RlZD0kc3VwcG9ydF9sb3N0dW59CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3N1cHBvcnRfbG9zdHVuJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hbGxvd19jaGFuZ2V1c2VybmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1hbGxvd19jaGFuZ2V1c2VybmFtZSBzZWxlY3RlZD0kYWxsb3dfY2hhbmdldXNlcm5hbWV9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdXBwb3J0X2xvc3RwdycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1zdXBwb3J0X2xvc3RwdyBzZWxlY3RlZD0kc3VwcG9ydF9sb3N0cHd9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3N1cHBvcnRfbG9zdHB3Jyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wd2ZsZGxlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cHdmbGRsZW4iIHZhbHVlPSJ7JHB3ZmxkbGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9taW5wd2xlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9bWlucHdsZW4iIHZhbHVlPSJ7JG1pbnB3bGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCcpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbWF4cHdsZW4nKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW1heHB3bGVuIiB2YWx1ZT0ieyRtYXhwd2xlbn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3VuZmxkbGVuJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH11bmZsZGxlbiIgdmFsdWU9InskdW5mbGRsZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X21pbnVubGVuJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1taW51bmxlbiIgdmFsdWU9InskbWludW5sZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9tYXh1bmxlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9bWF4dW5sZW4iIHZhbHVlPSJ7JG1heHVubGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCcpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY29va2llbmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y29va2llbmFtZSIgdmFsdWU9InskeGNvb2tpZW5hbWV8ZGVmYXVsdDonJ30iIHNpemU9IjUwIiBtYXhsZW5ndGg9IjUwIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2Nvb2tpZW5hbWUnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1jb29raWVfa2VlcGFsaXZlIHNlbGVjdGVkPSRjb29raWVfa2VlcGFsaXZlfQogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19jb29raWVfa2VlcGFsaXZlJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT11c2VybmFtZV9pc19lbWFpbCBzZWxlY3RlZD0kdXNlcm5hbWVfaXNfZW1haWx9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWFsbG93X2R1cGxpY2F0ZV9lbWFpbHMgc2VsZWN0ZWQ9JGFsbG93X2R1cGxpY2F0ZV9lbWFpbHN9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBwcmVmaXg9JGFjdGlvbmlkIG5hbWU9YWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyBzZWxlY3RlZD0kYWxsb3dfZHVwbGljYXRlX3JlbWluZGVyc30KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycpfQogICAgPC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdkaXNwbGF5X3NldHRpbmdzJyl9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zaWduaW5fYnV0dG9uJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1zaWduaW5fYnV0dG9uIiB2YWx1ZT0ieyRzaWduaW5fYnV0dG9ufSIgc2l6ZT0iMTUiIG1heGxlbmd0aD0iMTUiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncmVxdWlyZWRmaWVsZG1hcmtlcicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cmVxdWlyZWRfZmllbGRfbWFya2VyIiB2YWx1ZT0ieyRyZXF1aXJlZF9maWVsZF9tYXJrZXJ9IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncmVxdWlyZWRmaWVsZGNvbG9yJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1yZXF1aXJlZF9maWVsZF9jb2xvciIgdmFsdWU9InskcmVxdWlyZWRfZmllbGRfY29sb3J9IiBzaXplPSIxMCIgbWF4bGVuZ3RoPSIxMCIvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzZWN1cmVmaWVsZG1hcmtlcicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9c2VjdXJlX2ZpZWxkX21hcmtlciIgdmFsdWU9Inskc2VjdXJlX2ZpZWxkX21hcmtlcn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzZWN1cmVmaWVsZGNvbG9yJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1zZWN1cmVfZmllbGRfY29sb3IiIHZhbHVlPSJ7JHNlY3VyZV9maWVsZF9jb2xvcn0iIHNpemU9IjEwIiBtYXhsZW5ndGg9IjEwIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2hpZGRlbmZpZWxkbWFya2VyJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1oaWRkZW5fZmllbGRfbWFya2VyIiB2YWx1ZT0ieyRoaWRkZW5fZmllbGRfbWFya2VyfSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2hpZGRlbmZpZWxkY29sb3InKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWhpZGRlbl9maWVsZF9jb2xvciIgdmFsdWU9InskaGlkZGVuX2ZpZWxkX2NvbG9yfSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz4KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCntpZiBpc3NldCgkZWNvbW1fb3JkZXJjYW5jZWxsZWQpfQo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnZWNvbW1lcmNlX3NldHRpbmdzJyl9OjwvbGVnZW5kPgogIDxwIGNsYXNzPSJwYWdlb3ZlcmZsb3ciPnskbW9kLT5MYW5nKCdpbmZvX3BhaWRyZWdfc2V0dGluZ3MnKX08L3A+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBzZWxlY3RlZD0kZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbn0KICAgICAgPC9zZWxlY3Q+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1lY29tbV9vcmRlcmNhbmNlbGxlZCI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZWNvbW1lcmNlX2FjdGlvbnMgc2VsZWN0ZWQ9JGVjb21tX29yZGVyY2FuY2VsbGVkfQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZWNvbW1fb3JkZXJkZWxldGVkIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRlY29tbWVyY2VfYWN0aW9ucyBzZWxlY3RlZD0kZWNvbW1fb3JkZXJkZWxldGVkfQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4Key9pZn0KCjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygncmVkaXJlY3Rpb25fc2V0dGluZ3MnKX06PC9sZWdlbmQ+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VvdmVyZmxvdyI+eyRtb2QtPkxhbmcoJ2luZm9fc3RhcicpfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cGFnZWlkZm9yZ290cGFzc3dkIiB2YWx1ZT0ieyRwYWdlaWRmb3Jnb3RwYXNzd2R9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9jaGFuZ2VzZXR0aW5ncyIgdmFsdWU9InskcGFnZWlkX2NoYW5nZXNldHRpbmdzfSIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbG9naW5fcGFnZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wYWdlaWRfbG9naW4iIHZhbHVlPSJ7JHBhZ2VpZF9sb2dpbn0iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2xvZ291dF9wYWdlJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9sb2dvdXQiIHZhbHVlPSJ7JHBhZ2VpZF9sb2dvdXR9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wYWdlaWRfYWZ0ZXJ2ZXJpZnkiIHZhbHVlPSJ7JHBhZ2VpZF9hZnRlcnZlcmlmeX0iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5ncyIgdmFsdWU9InskcGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3N9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2FkdmFuY2VkX3NldHRpbmdzJyl9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wd3NhbHQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXB3c2FsdCIgdmFsdWU9InskcHdzYWx0fSIgc2l6ZT0iNSIgbWF4bGVuZ3RoPSI1IiB7aWYgJHRvdGFsX3VzZXJfY291bnQgZ3QgMH1yZWFkb25seT0icmVhZG9ubHkiey9pZn0vPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19wd3NhbHQnKX0KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogIDwvcD4KPC9kaXY+Cgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_import_users.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0dXNlcnMnKX08L2gzPgoKPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPnskbW9kLT5MYW5nKCdpbmZvX2ltcG9ydF9mb3JtYXQnKX08L2Rpdj4KCntjZ2VfaGVscGhhbmRsZXJ9CnskZm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kZWxldGVfdXNlcnMnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWRlbGV0ZV91c2VycyI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBzZWxlY3RlZD0kb3B0aW9ucy5kZWxldGVfdXNlcnN9CiAgICA8L3NlbGVjdD4KICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9faW1wb3J0X2RlbGV0ZV91c2VycycpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2RlbGltaXRlcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1kZWxpbWl0ZXIiIHZhbHVlPSJ7JG9wdGlvbnMuZGVsaW1pdGVyfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIxIi8+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ltcG9ydGZpbGVuYW1lJyl9OiZuYnNwO3tjZ2VfaGVscHRhZyBrZXk9J2ltcG9ydF9mb3JtYXQnfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWZpbGUiLz4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQoKPGRpdiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgp7Y2dlX2hlbHBjb250ZW50IGtleT0naW1wb3J0X2Zvcm1hdCcgdGV4dD0kbW9kLT5MYW5nKCdpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdDInKX0KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/admin_import_users2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0dXNlcnMnKX08L2gzPgoKe2Ntc19qcXVlcnl9Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciBwcm9ncmVzc19tYXggPSAxMDA7CmZ1bmN0aW9uIGltcG9ydF9wcm9ncmVzc19tYXgodmFsKSB7CiAgcHJvZ3Jlc3NfbWF4ID0gcGFyc2VJbnQodmFsKTsKICBpZiggcHJvZ3Jlc3NfbWF4IDwgMSApIHByb2dyZXNzX21heCA9IDE7CiAgcHJvZ3Jlc3NfdmFsID0gMDsKICAkKCcjcHJvZ3Jlc3MnKS53aWR0aCgwKTsKfQpmdW5jdGlvbiBpbXBvcnRfcHJvZ3Jlc3Nfc2V0KG4pIHsKICBuID0gcGFyc2VJbnQobik7CiAgaWYoIG4gPCAxICkgbiA9IDE7CiAgdmFyIHYgPSBNYXRoLnJvdW5kKG4gLyBwcm9ncmVzc19tYXggKiAxMDAuMCk7CiAgJCgnI3Byb2dyZXNzJykud2lkdGgodisnJScpLmh0bWwodisnJScpOwp9CmZ1bmN0aW9uIGltcG9ydF9zdGF0dXMobXNnKSB7CiAgJCgnI3N0YXR1c19hcmVhJykuYXBwZW5kKCc8cD4nK21zZysnPC9wPicpOwp9CmZ1bmN0aW9uIGltcG9ydF93YXJuaW5nKG1zZykgewogICQoJyNzdGF0dXNfYXJlYScpLmFwcGVuZCgnPHAgY2xhc3M9ImltcG9ydF93YXJuaW5nIj4nK21zZysnPC9wPicpOwp9CmZ1bmN0aW9uIGltcG9ydF9lcnJvcihtc2cpIHsKICAkKCcjc3RhdHVzX2FyZWEnKS5hcHBlbmQoJzxwIGNsYXNzPSJpbXBvcnRfZXJyb3IiPicrbXNnKyc8L3A+Jyk7Cn0KZnVuY3Rpb24gaW1wb3J0X2ZpbmlzaCgpIHsKICBhbGVydCgnYWxsIGRvbmUnKTsKICAkKCcjZmluaXNoX2FyZWEnKS5zaG93KCdzbG93Jyk7Cn0KPC9zY3JpcHQ+Cgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgojbWV0ZXIgewogIG1hcmdpbi1sZWZ0OiBhdXRvOwogIG1hcmdpbi1yaWdodDogYXV0bzsKICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGNvbG9yOiBncmF5OwogIGhlaWdodDogMmVtOwogIG1hcmdpbi1ib3R0b206IDJlbTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KI3Byb2dyZXNzIHsKICBkaXNwbGF5OiBibG9jazsKICBvdmVyZmxvdzogaGlkZGVuOwogIGhlaWdodDogMTAwJTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAgY3lhbjsKICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyOwogIGxpbmUtaGVpZ2h0OiAyZW07Cn0KI3N0YXR1c19hcmVhID4gcCB7CiAgZm9udC1zaXplOiAxMXB4OwogIGxpbmUtaGVpZ2h0OiAxLjFlbTsKfQojc3RhdHVzX2FyZWEgPiBwLmltcG9ydF93YXJuaW5nIHsKICBiYWNrZ3JvdW5kOiAjZmFmNmQ0OwogIGJvcmRlcjogMXB4IHNvbGlkICNlNmMyNmU7Cn0KI3N0YXR1c19hcmVhID4gcC5pbXBvcnRfZXJyb3IgewogIGJhY2tncm91bmQ6ICNmMmQ0Y2U7CiAgYm9yZGVyOiAxcHggc29saWQgI2FlNDMyZTsKfQojZmluaXNoX2FyZWEgewogIG1hcmdpbi10b3A6IDFlbTsKICBtYXJnaW4tYm90dG9tOiAxZW07Cn0KPC9zdHlsZT4KCjxkaXYgaWQ9Im1ldGVyIj4KICA8c3BhbiBpZD0icHJvZ3Jlc3MiPjwvc3Bhbj4KPC9kaXY+Cgo8ZGl2IGlkPSJzdGF0dXNfYXJlYSI+PC9kaXY+Cgo8ZGl2IGlkPSJmaW5pc2hfYXJlYSIgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7Ij4KICA8ZGl2IGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGEgaHJlZj0ieyRyZXR1cm5fdXJsfSI+eyRtb2QtPkxhbmcoJ3Byb21wdF9yZXR1cm4nKX08L2E+CiAgPC9kaXY+CjwvZGl2Pgo8aWZyYW1lIGlkPSJpbXBvcnRfaWZyYW1lIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIHNyYz0ieyRpZnJhbWVfc3JjfSI+PC9pZnJhbWU+]]></data>
	</file>
	<file>
	  <filename>/templates/edituserprops.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR0aXRsZX0Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb3BuYW1lfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcHJvcG5hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb3B2YWx1ZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3Byb3B2YWx1ZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW5wYXJhbXN9eyRzdWJtaXR9PC9wPgogIDwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKX08cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/forgotpw_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxwPnskcHJvbXB0X3RlbXBsYXRlMX08L3A+CnskaW5wdXRfdGVtcGxhdGUxfQo8YnIvPgo8cD57JHByb21wdF90ZW1wbGF0ZTJ9PC9wPgp7JGlucHV0X3RlbXBsYXRlMn0KPGJyLz4Ke2lmIGlzc2V0KCRwcm9tcHRfdGVtcGxhdGUzKX0KPHA+eyRwcm9tcHRfdGVtcGxhdGUzfTwvcD4KeyRpbnB1dF90ZW1wbGF0ZTN9Cjxici8+CnsvaWZ9Cnskc3VibWl0fXskZGVmYXVsdHN9CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/grouplist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[CntpZiAkbnByb3BzID09IDB9CiAgPGRpdiBjbGFzcz0icmVkIj57JG1vZC0+TGFuZygnZXJyb3Jfbm9wcm9wZXJ0aWVzJyl9PC9kaXY+CntlbHNlaWYgIWlzc2V0KCRpdGVtY291bnQpIHx8ICRpdGVtY291bnQgPT0gMH0KICA8cD4wJm5ic3A7eyRncm91cHNmb3VuZH08L3A+CntlbHNlfQogIDxwPnskaXRlbWNvdW50fSZuYnNwO3skZ3JvdXBzZm91bmR9PC9wPgo8dGFibGUgY2xhc3M9InBhZ2V0YWJsZSBjbXNfc29ydGFibGUgdGFibGVzb3J0ZXIiPgoJPHRoZWFkPgoJCTx0cj4KCQkJPHRoIHdpZHRoPSI1JSI+eyRpZHRleHR9PC90aD4KCQkJPHRoPnskbmFtZXRleHR9PC90aD4KCQkJPHRoPnskZGVzY3RleHR9PC90aD4KCQkJPHRoPnskbW9kLT5MYW5nKCdtZW1iZXJzJyl9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CgkJCTx0ZD57JGVudHJ5LT5pZH08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+bmFtZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVzY308L3RkPgoJICAgICAgICAgICAgICAgIDx0ZD57JGVudHJ5LT5udXNlcnN8ZGVmYXVsdDokbW9kLT5MYW5nKCdub3RfYXZhaWxhYmxlJyl9PC90ZD4KCQkJPHRkPnskZW50cnktPmV4cG9ydGxpbmt8ZGVmYXVsdDonJ308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt8ZGVmYXVsdDonJ308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZGVsZXRlbGlua3xkZWZhdWx0OicnfTwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0KCjxwIGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgp7aWYgJHByb3Bjb3VudCA+IDB9eyRhZGRncm91cGxpbmt8ZGVmYXVsdDonJ30mbmJzcDt7L2lmfQp7aWYgaXNzZXQoJGV4cG9ydGxpbmspfXskZXhwb3J0bGlua30mbmJzcDt7L2lmfQp7JGltcG9ydGxpbmt8ZGVmYXVsdDonJ30KPC9wPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/group_xml.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgZmV1X2dyb3VwIFsKICA8IUVMRU1FTlQgZmV1X2dyb3VwIChncnBfbmFtZSxncnBfZGVzY3JpcHRpb24scHJvcGVydHkqKT4KICA8IUVMRU1FTlQgZ3JwX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBncnBfZGVzY3JpcHRpb24gKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wZXJ0eSAocHJvcF9uYW1lLHByb3BfcHJvbXB0LHByb3BfdHlwZSxwcm9wX29wdGlvbj8scHJvcF9sZW5ndGg/LHByb3BfbWF4bGVuZ3RoPyxwcm9wX3NvcnRvcmRlcixwcm9wX3N0YXR1cyxwcm9wX2xvc3R1bmZsYWcpPgogIDwhRUxFTUVOVCBwcm9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3Byb21wdCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfdHlwZSAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3Bfb3B0aW9uIChvcF9uYW1lLG9wX3RleHQpPgogIDwhRUxFTUVOVCBwcm9wX2xlbmd0aCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbWF4bGVuZ3RoICgjUENEQVRBKT4KICA8IUVMRU1FTlQgcHJvcF9zb3J0b3JkZXIgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3N0YXR1cyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbG9zdHVuZmxhZyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIG9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBvcF90ZXh0ICgjUENEQVRBKT4KXT4KPGZldV9ncm91cD4KICA8Z3JwX25hbWU+eyRncm91cF9uYW1lfTwvZ3JwX25hbWU+CiAgPGdycF9kZXNjcmlwdGlvbj57JGdyb3VwX2Rlc2NyaXB0aW9ufTwvZ3JwX2Rlc2NyaXB0aW9uPgp7Zm9yZWFjaCBmcm9tPSRwcm9wZXJ0aWVzIGl0ZW09J3Byb3AnfQogIDxwcm9wZXJ0eT4KICAgIDxwcm9wX25hbWU+eyRwcm9wLT5uYW1lfTwvcHJvcF9uYW1lPgogICAgPHByb3BfcHJvbXB0PjwhW0NEQVRBW3skcHJvcC0+cHJvbXB0fV1dPjwvcHJvcF9wcm9tcHQ+CiAgICA8cHJvcF90eXBlPnskcHJvcC0+dHlwZX08L3Byb3BfdHlwZT4KICAgIHtpZiBpc3NldCgkcHJvcC0+b3B0aW9ucyl9e2ZvcmVhY2ggZnJvbT0kcHJvcC0+b3B0aW9ucyBpdGVtPSdvcHRpb24nfQogICAgPHByb3Bfb3B0aW9uPgogICAgICA8b3BfbmFtZT48IVtDREFUQVt7JG9wdGlvbi0+bmFtZX1dXT48L29wX25hbWU+CiAgICAgIDxvcF90ZXh0PjwhW0NEQVRBW3skb3B0aW9uLT50ZXh0fV1dPjwvb3BfdGV4dD4KICAgIDwvcHJvcF9vcHRpb24+CiAgICB7L2ZvcmVhY2h9ey9pZn0KICAgIHtpZiBpc3NldCgkcHJvcC0+bGVuZ3RoKX0KICAgIDxwcm9wX2xlbmd0aD57JHByb3AtPmxlbmd0aH08L3Byb3BfbGVuZ3RoPgogICAgey9pZn0KICAgIHtpZiBpc3NldCgkcHJvcC0+bWF4bGVuZ3RoKX0KICAgIDxwcm9wX21heGxlbmd0aD57JHByb3AtPm1heGxlbmd0aH08L3Byb3BfbWF4bGVuZ3RoPgogICAgey9pZn0KICAgIDxwcm9wX3NvcnRvcmRlcj57JHByb3AtPnNvcnRvcmRlcn08L3Byb3Bfc29ydG9yZGVyPgogICAgPHByb3Bfc3RhdHVzPnskcHJvcC0+c3RhdHVzfTwvcHJvcF9zdGF0dXM+CiAgICA8cHJvcF9sb3N0dW5mbGFnPnskcHJvcC0+bG9zdHVuZmxhZ308L3Byb3BfbG9zdHVuZmxhZz4KICA8L3Byb3BlcnR5Pgp7L2ZvcmVhY2h9CjwvZmV1X2dyb3VwPg==]]></data>
	</file>
	<file>
	  <filename>/templates/importgroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZmlsZW5hbWV9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9maWxlbmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbmV3bmFtZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25ld25hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fSZuYnNwO3skY2FuY2VsfTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/templates/lostun_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdGVtcGxhdGUxfTwvcD4KPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90ZW1wbGF0ZTF9PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdGVtcGxhdGUyfTwvcD4KPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90ZW1wbGF0ZTJ9PC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxwIGNsYXNzPSJwYWdldGV4dCI+PC9wPgo8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH17JGRlZmF1bHRzfTwvcD4KPC9kaXY+Cgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_changesettings.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUgLS0+CjxkaXYgaWQ9ImZldV9jaGFuZ2VzZXR0aW5nc2Zvcm0iPgo8aDQ+eyRtb2QtPkxhbmcoJ3VzZXJfc2V0dGluZ3MnKX08L2g0PgoKe2lmIGlzc2V0KCRtZXNzYWdlKSAmJiAkbWVzc2FnZSAhPSAnJ30KICB7aWYgaXNzZXQoJGVycm9yKSAmJiAkZXJyb3IgIT0gJyd9CiAgICA8cCBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPnskbWVzc2FnZX08L3A+CiAge2Vsc2V9CiAgICA8cCBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQoKeyRzdGFydGZvcm19CiAge2lmICRjb250cm9sY291bnQgPiAwfQogIHtmb3JlYWNoICRjb250cm9scyBhcyAka2V5PT4kZmllbGR9CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8bGFiZWwgZm9yPSIkZmllbGQtPmlucHV0X2lkIiBjbGFzcz0iY29sLXNtLTMgdGV4dC1yaWdodCIgc3R5bGU9ImNvbG9yOiB7JGZpZWxkLT5jb2xvcnxkZWZhdWx0Oidpbmhlcml0J30iPnskZmllbGQtPm1hcmtlcnxkZWZhdWx0OicnfSB7JGZpZWxkLT5wcm9tcHR9OjwvbGFiZWw+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC05Ij4KICAgICAgICB7JGZpZWxkLT5oaWRkZW58ZGVmYXVsdDonJ30KICAgICAgICB7aWYgaXNzZXQoJGZpZWxkLT5oaWRkZW4pfXskZmllbGQtPmhpZGRlbn17L2lmfQoKCXsqIGJ1aWxkIHRoZSBmaWVsZCBpdHNlbGYgKn0KCXtpZiAkZmllbGQtPnR5cGUgPT0gJzAnfSB7KiB0ZXh0ICp9CgkgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgc2l6ZT0ieyRmaWVsZC0+bGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JGZpZWxkLT5tYXhsZW5ndGh9IiB2YWx1ZT0ieyRmaWVsZC0+dmFsdWV9IiB7aWYgJGZpZWxkLT5yZWFkb25seX1yZWFkb25seXsvaWZ9Lz4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09ICdwYXNzd29yZCd9IHsqIHRleHQgKn0KCSAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgc2l6ZT0ieyRmaWVsZC0+bGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JGZpZWxkLT5tYXhsZW5ndGh9IiB2YWx1ZT0ieyRmaWVsZC0+dmFsdWV9IiB7aWYgJGZpZWxkLT5yZWFkb25seX1yZWFkb25seXsvaWZ9Lz4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDJ9IHsqIGVtYWlsICp9CgkgIDxpbnB1dCB0eXBlPSJlbWFpbCIgaWQ9InskZmllbGQtPmlucHV0X2lkfSIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHNpemU9InskZmllbGQtPmxlbmd0aH0iIG1heGxlbmd0aD0ieyRmaWVsZC0+bWF4bGVuZ3RofSIgdmFsdWU9InskZmllbGQtPnZhbHVlfSIge2lmICRmaWVsZC0+cmVhZG9ubHl9cmVhZG9ubHl7L2lmfS8+Cgl7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSAzfSB7KiB0ZXh0YXJlYSAqfQogICAgICAgICAge2NnZV90ZXh0YXJlYSBpZD0kZmllbGQtPmlucHV0X2lkIHd5c2l3eWc9JGZpZWxkLT53eXNpd3lnIG5hbWU9JGZpZWxkLT5pbnB1dF9uYW1lIGNvbnRlbnQ9JGZpZWxkLT52YWx1ZSBjbGFzcz0iZm9ybS1jb250cm9sIn0KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDF9IHsqIGNoZWNrYm94ICp9CgkgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9InskZmllbGQtPmlucHV0X2lkfSIgY2xhc3M9ImNoZWNrYm94IiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgdmFsdWU9IjEiIHtpZiAkZmllbGQtPnZhbHVlfWNoZWNrZWR7L2lmfS8+Cgl7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSA0fSB7KiBkcm9wZG93biAqfQoJICAgPHNlbGVjdCBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIge2lmICRmaWVsZC0+cmVhZG9ubHl9cmVhZG9ubHl7L2lmfT4KCSAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZmllbGQtPm9wdGlvbnMgc2VsZWN0ZWQ9JGZpZWxkLT52YWx1ZX0KCSAgIDwvc2VsZWN0PgoJe2Vsc2VpZiAkZmllbGQtPnR5cGUgPT0gNX0geyogbXVsdGlzZWxlY3QgKn0KCSAgIDxzZWxlY3QgaWQ9InskZmllbGQtPmlucHV0X2lkfSIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX1bXSIge2lmICRmaWVsZC0+cmVhZG9ubHl9cmVhZG9ubHl7L2lmfSBtdWx0aXBsZT4KCSAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZmllbGQtPm9wdGlvbnN9CgkgICA8L3NlbGVjdD4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDd9IHsqIHJhZGlvIGdyb3VwICp9CgkgICB7Zm9yZWFjaCAkZmllbGQtPm9wdGlvbnMgYXMgJGtleSA9PiAkdmFsfQoJICAgICAgPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHZhbHVlPSJ7JGtleX0iPiB7JHZhbH08L2xhYmVsPgoJICAgey9mb3JlYWNofQoJe2Vsc2VpZiAkZmllbGQtPnR5cGUgPT0gNn0geyogaW1hZ2UgKn0KCSAgIHtpZiBpc3NldCgkZmllbGQtPmltYWdlX3VybCkgJiYgJGZpZWxkLT5pbWFnZV91cmx9PGltZyBzcmM9InskZmllbGQtPmltYWdlX3VybH0iIGFsdD0ieyRmaWVsZC0+aW1hZ2VfdXJsfSIgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiLz57L2lmfQoJICAge2lmIGlzc2V0KCRmaWVsZC0+cHJvbXB0MikgJiYgJGZpZWxkLT5wcm9tcHQyfTxsYWJlbD48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJjaGVja2JveCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZTJ9IiB2YWx1ZT0iY2xlYXIiLz4geyRmaWVsZC0+cHJvbXB0Mn08L2xhYmVsPnsvaWZ9CgkgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgdmFsdWU9InskZmllbGQtPnZhbHVlfSIvPgogCSAgIDxpbnB1dCB0eXBlPSJmaWxlIiBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIge2lmICRmaWVsZC0+cmVhZG9ubHl9cmVhZG9ubHl7L2lmfS8+Cgl7L2lmfQogICAgICAgIHskZmllbGQtPmFkZHRleHR8ZGVmYXVsdDonJ30KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICB7L2ZvcmVhY2h9CiAgey9pZn0KCiAgPGRpdiBjbGFzcz0icm93Ij4KICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0zIj48L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuX2FjdGl2ZSIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiPnskbW9kLT5MYW5nKCdzdWJtaXQnKX08L2J1dHRvbj4KICAgIDwvZGl2PgogIDwvZGl2Pgp7JGhpZGRlbnxkZWZhdWx0OicnfXskZW5kZm9ybX0KPC9kaXY+CjwhLS0gY2hhbmdlIHNldHRpbmdzIHRlbXBsYXRlIC0tPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword1.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBmb3Jnb3QgcGFzc3dvcmQgdGVtcGxhdGUgLS0+Cnskc3RhcnRmb3JtfQp7JHRpdGxlfQp7aWYgIWVtcHR5KCRtZXNzYWdlKSB9CiAge2lmICFlbXB0eSgkZXJyb3IpIH0KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQo8cD57JGxvc3Rwd19tZXNzYWdlfTwvcD4KPHA+eyRwcm9tcHRfdXNlcm5hbWV9Jm5ic3A7eyRpbnB1dF91c2VybmFtZX08L3A+CntpZiBpc3NldCgkY2FwdGNoYSl9CjxkaXY+eyRjYXB0Y2hhX3RpdGxlfTxici8+eyRjYXB0Y2hhfTxici8+eyRpbnB1dF9jYXB0Y2hhfTwvZGl2Pgp7L2lmfQo8cD57JGhpZGRlbn17JHN1Ym1pdH0mbmJzcHskY2FuY2VsfTwvcD4KeyRlbmRmb3JtfQo8IS0tIGZvcmdvdCBwYXNzd29yZCB0ZW1wbGF0ZSAtLT4gCg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZm9yZ290IHBhc3N3b3JkIGVtYWlsIHRlbXBsYXRlICp9CjxwPnskbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsfTwvcD4KPHA+eyRwcm9tcHRfY29kZX0mbmJzcDt7JGRhdGFfY29kZX08L3A+CjxwPnskcHJvbXB0X2xpbmt9Jm5ic3A7eyRkYXRhX2xpbmt9PHA+CgoK]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword3.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBmb3Jnb3QgcGFzc3dvcmQgdmVyaWZpY2F0aW9uIHRlbXBsYXRlIC0tPgp7JHN0YXJ0Zm9ybX0KeyR0aXRsZX0Ke2lmICFlbXB0eSgkbWVzc2FnZSl9CiAge2lmICFlbXB0eSgkZXJyb3IpIH0KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQo8cD57JHByb21wdF91c2VybmFtZX0mbmJzcDt7JGlucHV0X3VzZXJuYW1lfTwvcD4KPHA+eyRwcm9tcHRfY29kZX0mbmJzcDt7JGlucHV0X2NvZGV9PC9wPgo8cD57JHByb21wdF9wYXNzd29yZH0mbmJzcDt7JGlucHV0X3Bhc3N3b3JkfTwvcD4KPHA+eyRwcm9tcHRfcmVwZWF0cGFzc3dvcmR9Jm5ic3A7eyRpbnB1dF9yZXBlYXRwYXNzd29yZH08L3A+CjxwPnskaGlkZGVufXskc3VibWl0fTwvcD4KeyRlbmRmb3JtfQo8IS0tIGZvcmdvdCBwYXNzd29yZCB2ZXJpZmljYXRpb24gdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_loginform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9naW4gZm9ybSB0ZW1wbGF0ZSAqfQp7KiB0aGlzIGlzIGEgc2FtcGxlIHRlbXBsYXRlLCBmZWVsIGZyZWUgdG8gY3VzdG9taXplIGl0ICp9CntpZiBpc3NldCgkYWx0X2xvZ2luZm9ybSl9CiAgPGRpdiBjbGFzcz0icm93IiBpZD0iYWx0bG9naW4iPnskYWx0X2xvZ2luZm9ybX08L2Rpdj48YnIvPgp7L2lmfQoKPGZpZWxkc2V0IGlkPSJsb2dpbmZvcm0iPgogIDxsZWdlbmQ+eyRGcm9udEVuZFVzZXJzLT5MYW5nKCdwcm9tcHRfbm9ybWFsbG9naW4nKX06PC9sZWdlbmQ+CiAgeyRzdGFydGZvcm19CgogIHsqCiAgICogYSBzaW1wbGUgaG9uZXlwb3QgY2FwdGNoYS4uLi5pZiB0aGlzIGZpZWxkIGhhcyBhIHZhbHVlIGFmdGVyIHN1Ym1pdCBhbiBlcnJvciB3aWxsIGJlIHRocm93bgogICAqIGRlbGV0aW5nIHRoaXMgZmllbGQgd2lsbCBzaW1wbHkgZGlzYWJsZSB0aGUgaG9uZXlwb3QuCiAgICogaXQgaXMgaW1wb3J0YW50IHRoYXQgdGhlIGZpZWxkIGJlIGhpZGRlbiB3aXRoIENTUyByYXRoZXIgdGhhbiB1c2luZyBhIGhpZGRlbiBpbnB1dCBmaWVsZC4KICAgKn0KICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfX2RhdGEiIHZhbHVlPSIiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIvPgoKICB7aWYgJGVycm9yfTxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+eyRlcnJvcn08L2Rpdj57L2lmfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQgdGV4dC1yaWdodCI+PGxhYmVsIGZvcj0iZmV1X3VzZXJuYW1lIj57JHByb21wdF91c2VybmFtZX06PC9sYWJlbD48L3A+CiAgICA8cCBjbGFzcz0iY29sLW1kLTgiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImZldV91c2VybmFtZSIgbmFtZT0ieyRmbGRuYW1lX3VzZXJuYW1lfSIgdmFsdWU9InskdXNlcm5hbWV9IiBzaXplPSJ7JHVzZXJuYW1lX3NpemV9IiBtYXhsZW5ndGg9InskdXNlcm5hbWVfbWF4bGVuZ3RofSIgcmVxdWlyZWQvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQgdGV4dC1yaWdodCI+PGxhYmVsIGZvcj0iZmV1X3Bhc3N3b3JkIj57JHByb21wdF9wYXNzd29yZH06PC9sYWJlbD48L3A+CiAgICA8cCBjbGFzcz0iY29sLW1kLTgiPgogICAgICA8aW5wdXQgdHlwZT0icGFzc3dvcmQiIGlkPSJmZXVfcGFzc3dvcmQiIG5hbWU9InskZmxkbmFtZV9wYXNzd29yZH0iIHZhbHVlPSJ7JHBhc3N3b3JkfSIgc2l6ZT0ieyRwYXNzd29yZF9zaXplfSIgbWF4bGVuZ3RoPSJ7JHBhc3N3b3JkX21heGxlbmd0aH0iIHJlcXVpcmVkLz4KICAgIDwvcD4KICA8L2Rpdj4KICB7aWYgaXNzZXQoJGNhcHRjaGEpfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQgdGV4dC1yaWdodCI+PGxhYmVsIGZvcj0iZmV1X2NhcHRjaGEiPnskY2FwdGNoYV90aXRsZX06PC9sYWJlbD48L3A+CiAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtOCI+eyRjYXB0Y2hhfQogICAgICA8ZGl2IGNsYXNzcz0icm93Ij57JGlucHV0X2NhcHRjaGF9PC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICB7L2lmfQoKICB7aWYgaXNzZXQoJHByb21wdF9yZW1lbWJlcm1lKX0KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPHAgY2xhc3M9ImNvbC1tZC00Ij48L3A+CiAgICA8cCBjbGFzcz0iY29sLW1kLTgiPgogICAgICA8bGFiZWw+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9yZW1lbWJlcm1lIiB2YWx1ZT0iMSIge2lmICRyZW1lbWJlcm1lPT0xfWNoZWNrZWQvPnsvaWZ9Lz4geyRwcm9tcHRfcmVtZW1iZXJtZX08L2xhYmVsPgogICAgPC9wPgogIDwvZGl2PgogIHsvaWZ9CgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQiPjwvcD4KICAgIDxwIGNsYXNzPSJjb2wtbWQtOCI+CiAgICAgIDxidXR0b24gY2xhc3M9ImJ0biBidG4tYWN0aXZlIiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCI+eyRGcm9udEVuZFVzZXJzLT5MYW5nKCdsb2dpbicpfTwvYnV0dG9uPgogICAgPC9wPgogIDwvZGl2PgoKICB7aWYgaXNzZXQoJHVybF9sb3N0dW4pIHx8IGlzc2V0KCR1cmxfZm9yZ290KX0KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPHAgY2xhc3M9ImNvbC1tZC00Ij48L3A+CiAgICA8cCBjbGFzcz0iY29sLXNtLTgiPgogICAgICB7aWYgaXNzZXQoJHVybF9mb3Jnb3QpfQogICAgICAgIDxhIGhyZWY9InskdXJsX2ZvcmdvdH0iIHRpdGxlPSJ7JEZyb250RW5kVXNlcnMtPkxhbmcoJ2luZm9fZm9yZ290cHcnKX0iPnskRnJvbnRFbmRVc2Vycy0+TGFuZygnZm9yZ290cHcnKX08L2E+CiAgICAgIHsvaWZ9CiAgICAgIHtpZiBpc3NldCgkdXJsX2xvc3R1bil9CiAgICAgICAgPGEgaHJlZj0ieyR1cmxfbG9zdHVufSIgdGl0bGU9InskRnJvbnRFbmRVc2Vycy0+TGFuZygnaW5mb19sb3N0dW4nKX0iPnskRnJvbnRFbmRVc2Vycy0+TGFuZygnbG9zdHVzZXJuYW1lJyl9PC9hPgogICAgICB7L2lmfQogICAgPC9wPgogIDwvZGl2PgogIHsvaWZ9CiAgeyRlbmRmb3JtfQo8L2ZpZWxkc2V0Pgo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_logoutform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9nb3V0IGZvcm0gdGVtcGxhdGUgKn0Ke2lmIGlzc2V0KCRhbHRfbG9nb3V0Zm9ybSl9eyRhbHRfbG9nb3V0Zm9ybX17L2lmfQp7aWYgaXNzZXQoJG1lc3NhZ2UpfTxkaXYgY2xhc3M9Im1lc3NhZ2UiPnskbWVzc2FnZX08L2Rpdj57L2lmfQo8cD57JHByb21wdF9sb2dnZWRpbn0mbmJzcDt7JHVzZXJuYW1lfTwvcD4gCjxwPjxhIGhyZWY9InskdXJsX2NoYW5nZXNldHRpbmdzfSIgdGl0bGU9InskRnJvbnRFbmRVc2Vycy0+TGFuZygnaW5mb19jaGFuZ2VzZXR0aW5ncycpfSI+eyRGcm9udEVuZFVzZXJzLT5MYW5nKCdwcm9tcHRfY2hhbmdlc2V0dGluZ3MnKX08L3A+CntpZiBpc3NldCgkdXJsX2xvZ291dCl9CjxwPjxhIGhyZWY9InskdXJsX2xvZ291dH0iIHRpdGxlPSJ7JEZyb250RW5kVXNlcnMtPkxhbmcoJ2luZm9fbG9nb3V0Jyl9Ij57JEZyb250RW5kVXNlcnMtPkxhbmcoJ2xvZ291dCcpfTwvYT48L3A+CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_lostunform_confirm_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9zdCB1c2VybmFtZSBjb25maXJtIHRlbXBsYXRlIGZvcm0gKn0KPHA+eyRwcmVtc2d9PC9wPgo8cD57JHByb21wdF95b3VydXNlcm5hbWVpc306IDxzdHJvbmc+eyR1c2VybmFtZX08L3N0cm9uZz4uPC9wPgo8cD57JHBvc3Rtc2d9PC9wPg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_lostunform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9zdCB1c2VybmFtZSBjb25maXJtIHRlbXBsYXRlIGZvcm0gKn0KPGg0PnskdGl0bGV9PC9oND4Ke2lmIGlzc2V0KCRtZXNzYWdlKX08aDUgY2xhc3M9ImVycm9yIj57JG1lc3NhZ2V9PC9oNT57L2lmfQp7aWYgJGNvbnRyb2xjb3VudCA+IDB9CiAgeyRzdGFydGZvcm19eyRoaWRkZW59CiAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KICAgICAgPGRpdiBjbGFzcz0icGFnZV9wcm9tcHQiPnskcHJvbXB0X3Bhc3N3b3JkfTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJwYWdlX2lucHV0Ij4KICAgICAgICA8aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InskYWN0aW9uaWR9ZmV1X2lucHV0X3Bhc3N3b3JkIiBzaXplPSJ7JHBhc3N3ZGZsZGxlbmd0aH0iIG1heGxlbmd0aD0ieyRtYXhfcGFzd29yZGxlbmd0aH0iLz4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIHtmb3JlYWNoIGZyb209JGNvbnRyb2xzIGl0ZW09J2VudHJ5J30KICAgICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPgogICAgICAgICAgPGRpdiBjbGFzcz0icGFnZV9wcm9tcHQiPnskZW50cnktPmhpZGRlbn17JGVudHJ5LT5wcm9tcHR9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX2lucHV0Ij57JGVudHJ5LT5jb250cm9sfXskZW50cnktPmFkZHRleHR8ZGVmYXVsdDonJ308L2Rpdj4KICAgICAgIDwvZGl2PgogICAgey9mb3JlYWNofQogICAge2lmIGlzc2V0KCRjYXB0Y2hhKSAmJiBpc3NldCgkaW5wdXRfY2FwdGNoYSl9CiAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2VfcHJvbXB0Ij57JGNhcHRjaGFfdGl0bGV9PC9kaXY+CiAgICAgIDxwIGNsYXNzPSJwYWdlX2lucHV0Ij57JGlucHV0X2NhcHRjaGF9PGJyLz57JGNhcHRjaGF9PC9wPgogICAgPC9kaXY+CiAgICB7L2lmfQogICAgPGRpdiBjbGFzcz0icGFnZXJvdyI+CiAgICAgIDxkaXYgY2xhc3M9InBhZ2VfcHJvbXB0Ij48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFnZV9pbnB1dCI+CiAgICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JEZyb250RW5kVXNlcnMtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Y2FuY2VsIiB2YWx1ZT0ieyRGcm9udEVuZFVzZXJzLT5MYW5nKCdjYW5jZWwnKX0iLz4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICB7JGVuZGZvcm19CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_notification_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdGhpcyB0ZW1wbGF0ZSBkZWZpbmVzIGhvdyBub3RpZmljYXRpb24gZW1haWxzIHdpbGwgYmUgc2VudCAqfQp7KiB0aGUgc2FtZSB0ZW1wbGF0ZSBpcyB1c2VkIGZvciBhbGwgbm90aWZpY2F0aW9uIGV2ZW50cyBzbyB5b3UgbWF5IG5lZWQgCiAgIHRvIHRocm93IGluIHNvbWUgbG9naWMgaGVyZSB0byBkaXNwbGF5IGFsbCBvZiB0aGUgaW5mb3JtYXRpb24geW91IHdhbnQKICAgaW4gZWFjaCBlbWFpbC4gKn0KeyogYWxsIHNtYXJ0eSB2YXJpYWJsZXMgY2FuIGJlIHVzZWQgaW4gdGhpcyB0ZW1wbGF0ZSwgaW5jbHVkaW5nIGZ1bmN0aW9ucwogICBmcm9tIGN1c3RvbWNvbnRlbnQgZm9yIGZyb250ZW5kIGdlbmVyYXRlZCBldmVudHMgKn0KeyogSSBlbmNvdXJhZ2UgeW91IHRvIHVzZSB0aGUge2dldF90ZW1wbGF0ZV92YXJzfSBzbWFydHkgcGx1Z2luIGFuZCB0aGUKICAgcHJpbnRfciBzbWFydHkgbW9kaWZpZXIgdG8gc2VlIHdoYXQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGUgKn0KCntnZXRfdGVtcGxhdGVfdmFyc30=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_resetsession_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogcmVzZXQgc2Vzc2lvbiB0ZW1wbGF0ZSAqfQp7KiBOT1RFOiB0aGlzIHRlbXBsYXRlIHJlcXVpcmVzIGpxdWVyeSBiZSBhdmFpbGFibGUgaW4gYW55IHBhZ2UgdGhhdCBpdCBpcyB1c2VkIG9uICp9Cgo8cD48YSBocmVmPSJqYXZhc2NyaXB0OjsiIG5hbWU9ImZldV9tYW51YWxfcmVzZXQiPkNsaWNrIEhlcmUgVG8gQ29uZmlybSBMb2dpbiBTdGF0dXM8L2E+PC9wPnsqIHNhZmUgdG8gcmVtb3ZlIHRoaXMgKn0KCnsqIHN0eWxlIGluZm9ybWF0aW9uIGZvciB0aGUgbW9kYWwgd2luZG93IGFuZCB0aGUgbWFzay4uLiB0aGVzZSBjYW4gYmUgcmVtb3ZlZCBhbmQgcGxhY2VkIGluIGEgQ01TTVMgc3R5bGVzaGVldCAqfQp7bGl0ZXJhbH0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KI2ZldV9tb2RhbCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCAjMDBmOwogIHBhZGRpbmc6IDJweDsKICBtYXJnaW46ICAycHg7Cn0KI2ZldV9tYXNrIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOwp9CiNmZXVfbW9kYWwgLnRpdGxlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmOwogIGNvbG9yOiAgI2ZmZjsKICBwYWRkaW5nOiAwcHg7Cn0KPC9zdHlsZT4Key9saXRlcmFsfQoKe2NhcHR1cmUgYXNzaWduPSdmZXVfdGhlZm9ybSd9e3N0cmlwfQp7KiB0aGUgcmVzZXQtc2Vzc2lvbiBmb3JtLCBhIHNpbXBsZSBmb3JtIHRvIGRpc3BsYXkgYSBtZXNzYWdlIHdpdGggYSB0aXRsZSB0byB0aGUgdXNlciB3aXRoIHR3byBvcHRpb25zLi4uIG9rYXksIGFuZCBjYW5jZWwuLi4gdGhlIG5hbWUgb2YgdGhlc2UgYnV0dG9ucyBpcyBpbXBvcnRhbnQsIGFzIHdlbGwgdGhlIHN0cmlwIHRhZyBpcyBpbXBvcnRhbnQgKn0KPGZvcm0gYWN0aW9uPSJqYXZhc2NyaXB0OjsiPgo8cCBjbGFzcz0idGl0bGUiPnskbW9kLT5MYW5nKCd0aXRsZV9yZXNldF9zZXNzaW9uJyl9PC9wPgo8cCBjbGFzcz0icm93Ij57JG1vZC0+TGFuZygnbXNnX3Jlc2V0X3Nlc3Npb24nKX08L3A+CjxwIGNsYXNzPSJyb3ciPgogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImZldV9vayIgdmFsdWU9InskbW9kLT5MYW5nKCdvaycpfSIvPgogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImZldV9jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CjwvcD4KPC9mb3JtPgp7L3N0cmlwfXsvY2FwdHVyZX0KCntsaXRlcmFsfQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci8vPCFbQ0RBVEFbCi8vIHRoZSB0aW1lciBpbnRlcnZhbCAoaG93IG9mdGVuIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGRpYWxvZyB0byB5b3VyIHVzZXJzCnZhciB0aW1lcl9pbnRlcnZhbCA9IHsvbGl0ZXJhbH17JHNlc3Npb25fdGltZW91dH17bGl0ZXJhbH0gLSAzMDsKCi8vIGEgZnVuY3Rpb24gdG8gaGlkZSB0aGUgbW9kYWwgZGlhbG9nIC0tIHlvdSBjYW4gbW9kaWZ5IHRoaXMgZnVuY3Rpb24KZnVuY3Rpb24gZmV1X2Nsb3NlX21vZGFsKCkKewogICBqUXVlcnkoJyNmZXVfbW9kYWwnKS5mYWRlT3V0KDIwMDApOwogICBqUXVlcnkoJyNmZXVfbWFzaycpLmZhZGVPdXQoMTAwMCk7Cn0KCi8vIGEgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgbW9kYWwgZGlhbG9nLi4uIHlvdSBjYW4gbW9kaWZ5IHRoaXMgZnVuY3Rpb24KZnVuY3Rpb24gZmV1X29wZW5fbW9kYWwoKQp7CiAgdmFyIG1hc2tIZWlnaHQgPSBqUXVlcnkoZG9jdW1lbnQpLmhlaWdodCgpOwogIHZhciBtYXNrV2lkdGggPSBqUXVlcnkoZG9jdW1lbnQpLndpZHRoKCk7CgogIC8vIHNldCB0aGUgbWFzayBzaXplIHRvIGZpbGwgdXAgdGhlIHdob2xlIHNjcmVlbgogIGpRdWVyeSgnI2ZldV9tYXNrJykuY3NzKHsnd2lkdGgnOm1hc2tXaWR0aCwnaGVpZ2h0JzptYXNrSGVpZ2h0fSk7CgogIC8vIHRyYW5zaXRpb24gZWZmZWN0CiAgalF1ZXJ5KCcjZmV1X21hc2snKS5mYWRlSW4oMTAwMCk7CiAgalF1ZXJ5KCcjZmV1X21hc2snKS5mYWRlVG8oInNsb3ciLDAuOCk7CgogIC8vIGdldCB0aGUgdG9wIGxlZnQgY29ybmVyIG9mIHRoZSBwb3B1cAogIHZhciB3aW5IZWlnaHQgPSBqUXVlcnkod2luZG93KS5oZWlnaHQoKTsKICB2YXIgd2luV2lkdGggPSBqUXVlcnkod2luZG93KS53aWR0aCgpOwoKICB2YXIgcG9wdXBIZWlnaHQgPSBqUXVlcnkoJyNmZXVfbW9kYWwnKS5oZWlnaHQoKTsKICB2YXIgcG9wdXBXaWR0aCAgPSBqUXVlcnkoJyNmZXVfbW9kYWwnKS53aWR0aCgpOwoKICB2YXIgdG9wID0gd2luSGVpZ2h0LzIgLSBwb3B1cEhlaWdodC8yOwogIHZhciBsZWZ0ID0gd2luV2lkdGgvMiAtIHBvcHVwV2lkdGgvMjsKICAvLyBzZXQgdGhlIHBvcHVwIHdpbmRvdyB0byBjZW50ZXIKICBqUXVlcnkoJyNmZXVfbW9kYWwnKS5jc3Moeyd0b3AnOnRvcCwnbGVmdCc6bGVmdH0pOwoKICAvLyB0cmFuc2l0aW9uIGVmZmVjdAogIGpRdWVyeSgnI2ZldV9tb2RhbCcpLmZhZGVJbigyMDAwKTsKfQoKZnVuY3Rpb24gZmV1X3VzZXJfY2FuY2VsbGVkKCkKewogIC8vIGEgY2FsbGJhY2sgZnVuY3Rpb24gdGhhdCBtYXkgYmUgY3VzdG9taXplZCB0byBhbGxvdyBkaXNwbGF5aW5nIGEgbWVzc2FnZSB0byB0aGUgdXNlcgogIC8vIHRvIGluZGljYXRlIHRoYXQgdGhleSBtYXkgYmUgbG9nZ2VkIG91dCBhdCBhbnkgdGltZS4KICBhbGVydCgnWW91IGhhdmUgY2hvc2VuIHRvIGRpc3JlZ2FyZCB0aGUgc2Vzc2lvbiB3YXJuaW5nLCB5b3UgbWF5IGNvbnRpbnVlIHRvIGJyb3dzZSB0aGlzIHNpdGUgaG93ZXZlciBzb21lIGZ1bmN0aW9uYWxpdHkgbWF5IGJlIHVuYXZhaWxhYmxlIHRvIHlvdSB1bnRpbCB5b3UgbG9naW4gYWdhaW4nKTsKfQoKLy8gKgovLyAqIGRvIG5vdCBtb2RpZnkgYmVsb3cgaGVyZSB1bmxlc3MgeW91IGFyZSBhbiBleHBlcmllbmNlZCBqcXVlcnkgcHJvZ3JhbW1lciAqCi8vICoKCmlmKCB0aW1lcl9pbnRlcnZhbCA8PSAwICkKICB7CiAgICAgdGltZXJfaW50ZXJ2YWwgPSAwOwogIH0KdmFyIGRpYWxvZ2NvbnRlbnRzID0gJ3svbGl0ZXJhbH17JGZldV90aGVmb3JtfXtsaXRlcmFsfSc7CgoKLy8gd2UgaGF2ZSBqUXVlcnkKalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogIC8vIGNyZWF0ZSBhIG5ldyBpZCBmb3Igb3VyIHN0dWZmCiAgalF1ZXJ5KCdib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfYm9keSI+PC9kaXY+Jyk7CiAgCiAgLy8gY3JlYXRlIHRoZSBtYXNrIGFuZCBhcHBlbmQgaXQgdG8gdGhlIGRvbQogIGpRdWVyeSgnI2ZldV9ib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfbWFzayI+PC9kaXY+Jyk7CgogIC8vIGNyZWF0ZSB0aGUgbW9kYWwgZGlhbG9nIGFuZCBhcHBlbmQgaXQgdG8gdGhlIERPTQogIGpRdWVyeSgnI2ZldV9ib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfbW9kYWwiPicrZGlhbG9nY29udGVudHMrJzwvZGl2PicpOwogIAogIC8vIGFuZCBhIGp1bmsgZGl2CiAgalF1ZXJ5KCcjZmV1X2JvZHknKS5hcHBlbmQoJzxkaXYgaWQ9ImZldV9qdW5rIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPjwvZGl2PicpOwoKICAvLyBoYW5kbGUgY2xpY2sgZXZlbnRzCiAgalF1ZXJ5KCcjZmV1X21vZGFsIGlucHV0W25hbWU9ZmV1X29rXScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwoKICAgIC8vIGRvIHRoZSBhamF4IHJlcXVlc3QKICAgIHZhciB1cmwgPSAney9saXRlcmFsfXskcmVzZXRfdXJsfXtsaXRlcmFsfSc7CiAgICB2YXIgdXJsID0gdXJsLnJlcGxhY2UoL2FtcDsvZywnJyk7CiAgICBqUXVlcnkoJyNmZXVfanVuaycpLmxvYWQodXJsKTsKCiAgICAvLyBhbmQgZG9uZS4KICAgIGZldV9jbG9zZV9tb2RhbCgpOwogICB9KTsKICBqUXVlcnkoJyNmZXVfbW9kYWwgaW5wdXRbbmFtZT1mZXVfY2FuY2VsXScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgZmV1X2Nsb3NlX21vZGFsKCk7CiAgICBmZXVfdXNlcl9jYW5jZWxsZWQoKTsKICB9KTsKICBqUXVlcnkoJ2FbbmFtZT1mZXVfbWFudWFsX3Jlc2V0XScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgZmV1X29wZW5fbW9kYWwoKTsKICB9KTsKCiAgLy8gY3JlYXRlIG91ciB0aW1lcgogIGlmKCB0aW1lcl9pbnRlcnZhbCA+IDAgKQogICAgIHsKICAgICAgICBzZXRUaW1lb3V0KGZldV9vcGVuX21vZGFsLHRpbWVyX2ludGVydmFsICogMTAwMCk7CiAgICAgfQoKfSk7Ci8vXV0+Cjwvc2NyaXB0Pgp7L2xpdGVyYWx9Cgp7KiByZXF1aXJlZCBjc3MgKn0Ke2xpdGVyYWx9CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CiNmZXVfbW9kYWwgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiA5OTk5OwogIGRpc3BsYXk6IG5vbmU7Cn0KI2ZldV9tYXNrIHsKICB0b3A6IDA7CiAgbGVmdDogMDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogOTAwMDsKICBkaXNwbGF5OiBub25lOwp9Cjwvc3R5bGU+CnsvbGl0ZXJhbH0=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_viewuser_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdmlldyB1c2VyIHRlbXBsYXRlICp9CjxwPnskZmV1LT5MYW5nKCdpZCcpfTombmJzcDt7JHVzZXJpbmZvLmlkfTwvcD4KPHA+eyRmZXUtPkxhbmcoJ3VzZXJuYW1lJyl9OiZuYnNwO3skdXNlcmluZm8udXNlcm5hbWV9PC9wPgo8cD57JGZldS0+TGFuZygnZW1haWwnKX06Jm5ic3A7PGEgaHJlZj0ibWFpbHRvOnskZW1haWxfYWRkcmVzc30iPnskZW1haWxfYWRkcmVzc308L3A+CjxwPnskZmV1LT5MYW5nKCdleHBpcmVzJyl9OiZuYnNwO3skdXNlcmluZm8uZXhwaXJlc308L3A+Cntmb3JlYWNoIGZyb209JHVzZXJfcHJvcGVydGllcyBpdGVtPSdlbnRyeSd9CntpZiAkZW50cnkudHlwZSAhPSAwfQo8cD57JGVudHJ5LnByb21wdH06Jm5ic3A7eyRlbnRyeS5kYXRhfTwvcD4Key9pZn0Key9mb3JlYWNofQo=]]></data>
	</file>
	<file>
	  <filename>/templates/propertiesform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHAgY2xhc3M9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxwPnskcHJvcGNvdW50fSZuYnNwO3skcHJvcHNmb3VuZH08L3A+CntpZiAkcHJvcGNvdW50ID4gMH0KPGJyLz4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPgoJCQk8dGg+eyRwcm9tcHR0ZXh0fTwvdGg+CgkJCTx0aD57JHR5cGV0ZXh0fTwvdGg+CgkJCTx0aD57JGxlbmd0aHRleHR9PC90aD4KCQkJPHRoPnskbW9kLT5MYW5nKCd1bmlxdWUnKX08L3RoPgoJCQk8dGg+eyRtb2QtPkxhbmcoJ2VuY3J5cHRlZCcpfTwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5Pgp7Zm9yZWFjaCBmcm9tPSRwcm9wcyBpdGVtPXByb3BlfQoJCTx0ciBjbGFzcz0ieyRwcm9wZS0+cm93Y2xhc3N9Ij4KCQkJPHRkPnskcHJvcGUtPm5hbWV9PC90ZD4KCQkJPHRkPnskcHJvcGUtPnByb21wdH08L3RkPgoJCQk8dGQ+eyRwcm9wZS0+dHlwZX08L3RkPgoJCQk8dGQ+eyRwcm9wZS0+bGVuZ3RofTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57aWYgJHByb3BlLT5mb3JjZV91bmlxdWV9eyRtb2QtPkxhbmcoJ3llcycpfXtlbHNlfXskbW9kLT5MYW5nKCdubycpfXsvaWZ9PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkPntpZiAkcHJvcGUtPmVuY3J5cHR9eyRtb2QtPkxhbmcoJ3llcycpfXsvaWZ9PC90ZD4KCQkJPHRkPnskcHJvcGUtPmVkaXRsaW5rfGRlZmF1bHQ6Jyd9PC90ZD4KCQkJPHRkPntpZiBpc3NldCgkcHJvcGUtPmRlbGV0ZWxpbmspfXskcHJvcGUtPmRlbGV0ZWxpbmt9ey9pZn08L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9CjwvZGl2Pgo8YnIvPgo8cD57JGFkZGxpbmt9PC9wPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/protectedcontent.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e3N0cmlwfQp7aWYgJGZldV9hdXRob3JpemVkID09IDB9CiAgICB7aWYgJGFjdGlvbiA9PSAncmVkaXJlY3QnfSAKICAgICAge2lmICRmZXVfcGFnZSA9PSAtMX0KICAgICAgICB7JG1vZC0+TGFuZygncGFnZXR5cGVfdW5hdXRob3JpemVkJyl9CiAgICAgIHtlbHNlfQogICAgICAgIHtyZWRpcmVjdF9wYWdlIHBhZ2U9JGZldV9wYWdlfQogICAgICB7L2lmfQogICAge2Vsc2VpZiAkc2hvd193aGF0ID09ICdjb250ZW50X2VuJ30KICAgICAge2lmICRkb2NhcHRjaGEgPT0gMX0KICAgICAgICB7RnJvbnRFbmRVc2VycyBmb3JtPWxvZ2lufQogICAgICB7ZWxzZX0KICAgICAgICB7RnJvbnRFbmRVc2VycyBmb3JtPWxvZ2luIG5vY2FwdGNoYT0xfQogICAgICB7L2lmfQogICAgey9pZn0Ke2Vsc2V9CiAgIHskb3V0cHV0fGRlZmF1bHQ6Jyd9CnsvaWZ9Cnsvc3RyaXB9]]></data>
	</file>
	<file>
	  <filename>/templates/resetsession_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90ZW1wbGF0ZTF9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlMX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fSZuYnNwO3skZGVmYXVsdHN9PC9wPgo8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxwPnskcHJvbXB0X3RlbXBsYXRlfTwvcD4KeyRpbnB1dF90ZW1wbGF0ZX0KPGJyLz4KeyRzdWJtaXR9eyRkZWZhdWx0c30KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/userhistory.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKX0KICB7aWYgaXNzZXQoJGVycm9yKX0KICAgIDxmb250IGNvbG9yPSJyZWQiPjxoND57JG1lc3NhZ2V9PC9oND48L2ZvbnQ+CiAge2Vsc2V9CiAgICA8aDQ+eyRtZXNzYWdlfTwvaDQ+CiAgey9pZn0Key9pZn0KCntpZiAhaXNzZXQoJG11bHRpdXNlcil9CjxoND57JHRpdGxlX3VzZXJoaXN0b3J5fSZuYnNwO3skZm9yfSZuYnNwO3skdXNlcl91c2VybmFtZX08L2g0Pgp7L2lmfQp7JGZvcm1zdGFydH0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskdGl0bGVfbGVnZW5kX2ZpbHRlcn08L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZX06PC9wPgogICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZmlsdGVyX2V2ZW50dHlwZX08L3A+CiAgPC9kaXY+CntpZiBpc3NldCgkbXVsdGl1c2VyKX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfdXNlcm5hbWVfcmVnZXh9OjwvcD4KICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3VzZXJuYW1lX3JlZ2V4fTwvcD4KICA8L2Rpdj4Key9pZn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZmlsdGVyX2RhdGV9OjwvcD4KICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZpbHRlcl9kYXRlfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfcGFnZWxpbWl0fTo8L3A+CiAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wYWdlbGltaXR9PC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0Pgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyR0aXRsZV9sZWdlbmRfZ3JvdXBzb3J0fTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ncm91cF9pcH06PC9wPgogICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZ3JvdXBfaXB9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9zb3J0b3JkZXJ9OjwvcD4KICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NvcnRvcmRlcn08L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH0mbmJzcDt7JHJlc2V0fTwvcD4KICA8L2Rpdj4KeyRmb3JtZW5kfQoKPHA+eyRyZWNvcmRjb3VudH0mbmJzcDt7JHByb21wdF9yZWNvcmRzZm91bmR9PC9wPgp7aWYgJGl0ZW1jb3VudCA+IDB9CntpZiAkcGFnZWNvdW50ID4gMX0KICA8cD4Ke2lmICRwYWdlbnVtYmVyID4gMX0KeyRmaXJzdHBhZ2V9Jm5ic3A7eyRwcmV2cGFnZX0mbmJzcDsKey9pZn0KeyRwYWdlbnVtYmVyfSZuYnNwO3skb2Z0ZXh0fSZuYnNwO3skcGFnZWNvdW50fQp7aWYgJHBhZ2VudW1iZXIgPCAkcGFnZWNvdW50fQombmJzcDt7JG5leHRwYWdlfSZuYnNwO3skbGFzdHBhZ2V9CnsvaWZ9CjwvcD4Key9pZn0KPGJyLz4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KICA8dGhlYWQ+CiAgICA8dHI+CntpZiBpc3NldCgkbXVsdGl1c2VyKX0KCTx0aD57JHByb21wdF91c2VybmFtZX08L3RoPgp7L2lmfQoJPHRoPnskcHJvbXB0X2lwYWRkcmVzc308L3RoPgoJPHRoPnskcHJvbXB0X2FjdGlvbn08L3RoPgoJPHRoPnskcHJvbXB0X3JlZmRhdGV9PC90aD4KICAgIDwvdHI+CiAgPC90aGVhZD4KICA8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CiAgPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgp7aWYgaXNzZXQoJG11bHRpdXNlcil9CiAgICAgICAgPHRkPnskZW50cnktPnVzZXJuYW1lfTwvdGQ+CnsvaWZ9Cgk8dGQ+eyRlbnRyeS0+aXBhZGRyZXNzfTwvdGQ+Cgk8dGQ+eyRlbnRyeS0+YWN0aW9ufTwvdGQ+Cgk8dGQ+eyRlbnRyeS0+cmVmZGF0ZXxkYXRlX2Zvcm1hdDoiJWIgJWUsICVZIC0gJVgifTwvdGQ+CiAgPC90cj4JIAp7L2ZvcmVhY2h9CiAgPC90Ym9keT4KPC90YWJsZT4Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/userlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovKjwhW0NEQVRBWyovCiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgJCgnI2ZldV9maWx0ZXJib3gnKS5jbGljayhmdW5jdGlvbigpewogICAgaWYoIHRoaXMuY2hlY2tlZCApIHsKICAgICAgJCgnI2ZldV9maWx0ZXJmb3JtJykuc2hvdygpOwogICAgfQogICAgZWxzZSB7CiAgICAgICQoJyNmZXVfZmlsdGVyZm9ybScpLmhpZGUoKTsKICAgIH0KICB9KTsKfSk7CmZ1bmN0aW9uIHNlbGVjdF9hbGwoKQp7CiAgY2IgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZSgneyRmZXVhY3Rpb25pZH1zZWxlY3RlZFtdJyk7CiAgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2VsZWN0YWxsJyk7CiAgc3QgPSBlbC5jaGVja2VkOwogIGZvciggaSA9IDA7IGkgPCBjYi5sZW5ndGg7IGkrKyApIHsKICAgIGlmKCBjYltpXS50eXBlID09ICJjaGVja2JveCIgKSAgY2JbaV0uY2hlY2tlZD1zdDsKICB9Cn0KCmZ1bmN0aW9uIGNvbmZpcm1fZGVsZXRlKCkKewogIHZhciBjYiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKCd7JGZldWFjdGlvbmlkfXNlbGVjdGVkW10nKTsKICB2YXIgY291bnQgPSAwOwogIGZvciggaSA9IDA7IGkgPCBjYi5sZW5ndGg7IGkrKyApIHsKICAgICBpZiggY2JbaV0uY2hlY2tlZCApIGNvdW50Kys7CiAgfQoKICBpZiggY291bnQgPiAyNTAgKSB7CiAgICAgYWxlcnQoJ3skbW9kLT5MYW5nKCdlcnJvcl90b29tYW55c2VsZWN0ZWQnKX0nKTsKICAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiBjb25maXJtKCd7JG1vZC0+TGFuZygnY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnKX0nKTsKfQovKl1dPiAqLwo8L3NjcmlwdD4KCnskc3RhcnRmb3JtfQo8ZGl2IGlkPSJmZXVfZmlsdGVyZm9ybSIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7Ij4KPHRhYmxlIHdpZHRoPSIxMDAlIj4KPHRyPjx0ZCB3aWR0aD0iNTAlIiB2YWxpZ249InRvcCI+CiAgPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2ZpbHRlcicpfTo8L2xlZ2VuZD4KICB7aWYgaXNzZXQoJGdyb3Vwcyl9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnZ3JvdXAnKX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyX2dyb3VwIj4KICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGdyb3VwcyBzZWxlY3RlZD0kZmlsdGVyLmdyb3VwfQogICAgIDwvc2VsZWN0PgogICA8L3A+CiAgPC9kaXY+CiAgey9pZn0KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndXNlcmZpbHRlcicpfTo8L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9yZWdleCIgdmFsdWU9InskZmlsdGVyLnJlZ2V4fSIvPgogICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvcGVydHlmaWx0ZXInKX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyX3Byb3BlcnR5c2VsIj57aHRtbF9vcHRpb25zIG9wdGlvbnM9JGRlZm5saXN0IHNlbGVjdGVkPSRmaWx0ZXIucHJvcHNlbH08L3NlbGVjdD4KICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3ZhbHVlcmVnZXgnKX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfcHJvcGVydHkiIHZhbHVlPSJ7JGZpbHRlci5wcm9wdmFsfSIvPgogICA8L3A+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9sb2dnZWRpbm9ubHknKX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPSdmaWx0ZXJfbG9nZ2VkaW5vbmx5JyBzZWxlY3RlZD0kZmlsdGVyLmxvZ2dlZGlub25seX0KICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3VzZXJsaW1pdCcpfTo8L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfbGltaXQiPntodG1sX29wdGlvbnMgb3B0aW9ucz0kbGltaXRzIHNlbGVjdGVkPSRmaWx0ZXIubGltaXR9PC9zZWxlY3Q+CiAgIDwvcD4KICA8L2Rpdj4KICA8L2ZpZWxkc2V0Pgo8L3RkPjx0ZCB2YWxpZ249InRvcCI+CiAgPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ3ZpZXcnKX06PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3ZpZXdwcm9wcycpfTo8L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfdmlld3Byb3BzW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iNSI+CiAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGFsbGRlZm5zIHNlbGVjdGVkPSR2aWV3cHJvcHN9CiAgICAgPC9zZWxlY3Q+CiAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzb3J0YnknKX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyX3NvcnRieSI+e2h0bWxfb3B0aW9ucyBvcHRpb25zPSRzb3J0bGlzdCBzZWxlY3RlZD0kZmlsdGVyLnNvcnRieX08L3NlbGVjdD4KICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2ZpbHRlcl9zb3J0YnknKX0KICAgPC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0Pgo8L3RkPjwvdHI+Cjx0cj4KICA8dGQgY29sc3Bhbj0iMiIgYWxpZ249ImNlbnRlciI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlciIgdmFsdWU9InskbW9kLT5MYW5nKCdhcHBseWZpbHRlcicpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfcmVzZXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygncmVzZXQnKX0iLz4KICA8L3RkPgo8L3RyPgo8L3RhYmxlPgo8YnIvPgo8L2Rpdj57KiAjZmV1X2ZpbHRlcmZvcm0gKn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiA8ZGl2IHN0eWxlPSJ3aWR0aDogNzUlOyBmbG9hdDogbGVmdDsiPgogIDxpbnB1dCBpZD0iZmV1X2ZpbHRlcmJveCIgdHlwZT0iY2hlY2tib3giIHZhbHVlPSIxIi8+PGxhYmVsIGZvcj0iZmV1X2ZpbHRlcmJveCI+eyRtb2QtPkxhbmcoJ3ZpZXdfZmlsdGVyJyl9IHtpZiAkZmlsdGVyX2FwcGxpZWR9KHskbW9kLT5MYW5nKCdhcHBsaWVkJyl9KXsvaWZ9PC9sYWJlbD4mbmJzcDsKICAgPHNwYW4gdGl0bGU9InskbW9kLT5MYW5nKCd1c2Vyc2luZ3JvdXAnKX0iPntjZ2ltYWdlIGltYWdlPSd1c2Vycy5naWYnIGFsdD0iIn0gPSB7JG51bXVzZXJzfTwvc3Bhbj4mbmJzcDsKICAge2lmIGlzc2V0KCRhZGRsaW5rKX17JGFkZGxpbmt9ey9pZn0KICAge2lmIGlzc2V0KCRpbXBvcnRfdXJsKX08YSBocmVmPSJ7JGltcG9ydF91cmx9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3RpdGxlX2ltcG9ydF91c2VycycpfSI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS9pbXBvcnQuZ2lmJ30geyRtb2QtPkxhbmcoJ3Byb21wdF9pbXBvcnR1c2VycycpfTwvYT57L2lmfQogICB7aWYgaXNzZXQoJGV4cG9ydF91cmwpfTxhIGhyZWY9InskZXhwb3J0X3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygndGl0bGVfZXhwb3J0X3VzZXJzJyl9Ij57Y2dpbWFnZSBpbWFnZT0naWNvbnMvc3lzdGVtL2V4cG9ydC5naWYnfSB7JG1vZC0+TGFuZygncHJvbXB0X2V4cG9ydHVzZXJzJyl9PC9hPnsvaWZ9CiA8L2Rpdj4KIDxkaXYgc3R5bGU9IndpZHRoOiAyNCU7IGZsb2F0OiByaWdodDsgdGV4dC1hbGlnbjogcmlnaHQ7Ij4KIHtpZiBpc3NldCgkbmF2aWdhdGlvbi5maXJzdHBhZ2VfdXJsKX0KICAgPGEgaHJlZj0ieyRuYXZpZ2F0aW9uLmZpcnN0cGFnZV91cmx9Ij57JG1vZC0+TGFuZygnZmlyc3RwYWdlJyl9PC9hPiZuYnNwOwogICA8YSBocmVmPSJ7JG5hdmlnYXRpb24ucHJldnBhZ2VfdXJsfSI+eyRtb2QtPkxhbmcoJ3ByZXZwYWdlJyl9PC9hPiZuYnNwOwogey9pZn0KIHskbW9kLT5MYW5nKCdwYWdlJyl9IHskbmF2aWdhdGlvbi5jdXJwYWdlfSB7JG1vZC0+TGFuZygncHJvbXB0X29mJyl9IHskbmF2aWdhdGlvbi5ucGFnZXN9CiB7aWYgaXNzZXQoJG5hdmlnYXRpb24ubGFzdHBhZ2VfdXJsKX0KICAgJm5ic3A7PGEgaHJlZj0ieyRuYXZpZ2F0aW9uLm5leHRwYWdlX3VybH0iPnskbW9kLT5MYW5nKCduZXh0cGFnZScpfTwvYT4KICAgJm5ic3A7PGEgaHJlZj0ieyRuYXZpZ2F0aW9uLmxhc3RwYWdlX3VybH0iPnskbW9kLT5MYW5nKCdsYXN0cGFnZScpfTwvYT4KIHsvaWZ9CiA8L2Rpdj4KPC9kaXY+CntpZiAhaXNzZXQoJGdyb3Vwcyl9CiAgPGRpdiBjbGFzcz0icmVkIGNlbnRlciI+eyRtb2QtPkxhbmcoJ25vZ3JvdXBzJyl9PC9kaXY+CntlbHNlaWYgJGl0ZW1jb3VudCA+IDB9Cjx0YWJsZSBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGg+eyR1c2VybmFtZXRleHR9PC90aD4KCQkJPHRoPnskY3JlYXRlZHRleHR9PC90aD4KCQkJPHRoPnskZXhwaXJlc3RleHR9PC90aD4KICAgICAgICAgICAgICAgICAgICAgICAge2lmIGlzc2V0KCR2aWV3cHJvcHMpICYmIGlzX2FycmF5KCR2aWV3cHJvcHMpfQogICAgICAgICAgICAgICAgICAgICAgICB7Zm9yZWFjaCBmcm9tPSR2aWV3cHJvcHMgaXRlbT0nb25lJ30KICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnskYWxsZGVmbnMuJG9uZX08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICB7L2ZvcmVhY2h9CiAgICAgICAgICAgICAgICAgICAgICAgIHsvaWZ9CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij48aW5wdXQgaWQ9InNlbGVjdGFsbCIgdHlwZT0iY2hlY2tib3giIG5hbWU9Imp1bmsiIG9uY2xpY2s9InNlbGVjdF9hbGwoKTsiLz48L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5Pgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQoJCTx0cj4KCQkJPHRkPnskZW50cnktPnVzZXJuYW1lfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5jcmVhdGVkfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5leHBpcmVzfTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIHtpZiBpc3NldCgkdmlld3Byb3BzKSAmJiBpc3NldCgkZW50cnktPmV4dHJhKX0KICAgICAgICAgICAgICAgICAgICAgICAge2ZvcmVhY2ggZnJvbT0kdmlld3Byb3BzIGl0ZW09J29uZSd9CiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57aWYgaXNzZXQoJGVudHJ5LT5leHRyYS4kb25lKSAmJiAkZW50cnktPmV4dHJhLiRvbmV9eyRlbnRyeS0+ZXh0cmEuJG9uZX17L2lmfTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIHsvZm9yZWFjaH0KICAgICAgICAgICAgICAgICAgICAgICAgey9pZn0KCQkJPHRkPntpZiBpc3NldCgkZW50cnktPmxvZ291dGxpbmspfXskZW50cnktPmxvZ291dGxpbmt9ey9pZn08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+aGlzdG9yeWxpbmt8ZGVmYXVsdDonJ308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt8ZGVmYXVsdDonJ308L3RkPgoJCQk8dGQ+e2lmIGlzc2V0KCRlbnRyeS0+ZGVsZXRlbGluayl9eyRlbnRyeS0+ZGVsZXRlbGlua317L2lmfTwvdGQ+CgkJCTx0ZD48aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskZmV1YWN0aW9uaWR9c2VsZWN0ZWRbXSIgdmFsdWU9InskZW50cnktPmlkfSIvPjwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KIDxkaXYgc3R5bGU9ImZsb2F0OiBsZWZ0OyI+PC9kaXY+CiA8ZGl2IHN0eWxlPSJmbG9hdDogcmlnaHQ7Ij4KICAge2lmIGlzc2V0KCRwZXJtX3JlbW92ZXVzZXJzKSAmJiAkcGVybV9yZW1vdmV1c2VycyA9PSAxfTxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskZmV1YWN0aW9uaWR9YnVsa2RlbGV0ZSIgdmFsdWU9InskbW9kLT5MYW5nKCdkZWxldGVfc2VsZWN0ZWQnKX0iIG9uY2xpY2s9InJldHVybiBjb25maXJtX2RlbGV0ZSgpOyIvPnsvaWZ9CiA8L2Rpdj4KPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/viewuser_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90ZW1wbGF0ZTF9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlMX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fSZuYnNwO3skZGVmYXVsdHN9PC9wPgo8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
</module>
