<?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.12.2</version>
  <mincmsversion>1.8.1</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPgo8aDM+RmVhdHVyZXM8L2gzPgo8dWw+CjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPgo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4KPGxpPjxwPkNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgdXNlcnM8L3A+PC9saT4KPGxpPjxwPkZvcmdvdCBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uLiBhbGxvd3MgdXNlcnMgdG8gc2V0IGEgbmV3IHBhc3N3b3JkLCBhbmQvb3IgdG8gcmVjb3ZlciB0aGVpciB1c2VybmFtZSBpZiB0aGV5IGNvbXBsZXRlbHkgZm9yZ290IGxvZ2luIGRldGFpbHMuPC9wPjwvbGk+CjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4KPC91bD4KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+Cjx1bD4KPGxpPjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIGFjY2VzcyBhZG1pbiBwYW5lbCB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdW5kZXIgdGhlICZxdW90O1VzZXJzICYgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPgo8bGk+CjxwPlNlY29uZGx5LCB5b3UgbmVlZCB0byBkZWZpbmUgYXQgbGVhc3Qgb25lIHByb3BlcnR5LiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBldGMuPC9wPgo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSAob3IgZW1haWwgYWRkcmVzcykgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+CjxwPjxiPk5vdGU6PC9iPiBOZXcgaW5zdGFsbGF0aW9ucyBvZiB0aGUgRkVVIG1vZHVsZSBzcGVjaWZ5IHRoYXQgdGhlIHVzZXJzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgKHRoaXMgb3B0aW9uIGNhbiBiZSBjaGFuZ2VkIGluIHRoZSBwcmVmZXJlbmNlcyB0YWIpLiAgU28gaWYgdXNpbmcgdGhpcyBvcHRpb24geW91IHdpbGwgbm90IG5lZWQgdG8gY3JlYXRlIGFuIGVtYWlsIGFkZHJlc3MgcHJvcGVydHkuPC9wPgo8L2xpPgo8bGk+PHA+TmV4dCB5b3UgbXVzdCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPgo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUvZW1haWwgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJ05leHRcJzwvcD4KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPgo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPgo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+CjwvdWw+CjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4KPGg0PkZ1bmN0aW9uczo8L2g0Pgo8dWw+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgkZ3JvdXBuYW1lLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJnF1b3Q7YXNzaWduJnF1b3Q7IHBhcmFtZXRlci48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJ21lbWJlcnMnLCdteW1lbWJlcnMnKX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+CjwvbGk+CjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGEgbGlzdCBvZiBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgYW5kIGFzc2lnbiB0aGVtIHRvIGEgc21hcnR5IHZhcmlhYmxlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfcHJvcGVydGllcyg1LCd1c2VycHJvcHMnKX08YnIvPnskdXNlcnByb3BzfEBwcmludF9yfTwvY29kZT48L3A+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmd0O2dldF9kcm9wZG93bl90ZXh0KCRwcm9wbmFtZSwkcHJvcHZhbHVlWywkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIHRoZSB0ZXh0IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG9wdGlvbiB2YWx1ZSBmb3IgYSBzcGVjaWZpZWQgZHJvcGRvd24gcHJvcGVydHkuPC9saT4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJ2FnZV9yYW5nZScsJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIGFuIGFycmF5IG9mIG9wdGlvbiB0ZXh0cyBjb3JyZXNwb25kaW5nIHRvIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9uIHZhbHVlcy48L2xpPgo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZndDtnZXRfbXVsdGlzZWxlY3RfdGV4dCgnZmF2b3JpdGVfZm9vZHMnLCRvbmVwcm9wdmFsdWUsJ2Zhdm9yaXRlX2Zvb2RzJyl9PGJyLz57JGZhdm9yaXRlX2Zvb2RzfEBwcmludF9yfTwvY29kZT48L3A+CjwvbGk+Cgo8bGk+PHN0cm9uZz5jb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KCR1aWRbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgc21hcnR5IG1ldGhvZCByZXR1cm5zIHRoZSB1bml4IHRpbWVzdGFtcCB0aGF0IHRoZSBzcGVjaWZpZWQgdWlkIGFjY291bnQgZXhwaXJlcy4gIFRoZSBmdW5jdGlvbiB3aWxsIHJldHVybiBmYWxzZSBpZiB0aGUgdWlkIGNhbm5vdCBiZSBmb3VuZCBvciBzb21lIG90aGVyIGVycm9yIG9jY3VycmVkLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJfZXhwaXJ5KDI1LCdleHBpcnknKX08YnIvPnskZXhwaXJ5fGNtc19kYXRlX2Zvcm1hdH08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+Y29kZT57JGZldV9zbWFydHktJmd0O3VzZXJfZXhwaXJlZCgkdWlkWywkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBtZXRob2QgcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3ZXRoZXIgdGhlIHNwZWNpZmllZCB1c2VyIGFjY291bnQgaGFzIGV4cGlyZWQuICBUaGUgbWV0aG9kIHdpbGwgYWxzbyByZXR1cm4gZmFsc2UgaWYgdGhlIHVpZCBjYW5ub3QgYmUgZm91bmQgb3Igc29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmd0O3VzZXJfZXhwaXJlZCgyNSwnZXhwaXJlZCcpfTxici8+e2lmICRleHBpcmVkfVVJRCAyNSBjYW4gbm8gbG9uZ2VyIGxvZ2luIHRvIHRoZSBzeXN0ZW17L2lmfTwvY29kZT48L3A+CjwvbGk+CjwvdWw+Cgo8aDM+U3VwcG9ydDwvaDM+CjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4KPHVsPgo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwncwptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL2NhbGd1eTEwMDAuY29tIj5jYWxndXkxMDAwLmNvbTwvYT4uPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPgo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICAKPC91bD4KPGgzPlBhcmFtZXRlcnM8L2gzPgo8dWw+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0iZGVmYXVsdCI8bGk+CjxwPkFjdGlvbnM6Cjx1bD4KPGxpPjxlbT5kZWZhdWx0PC9lbT4gLSBUaGUgZGVmYXVsdCBhY3Rpb24sIHdoaWNoIGVuYWJsZXMgdGhlIG5vcm1hbCBmb3JtPSBiZWhhdmlvdXIuPC9saT4KPGxpPjxlbT5yZXNldF9zZXNzaW9uPC9lbT4gLSBQcm92aWRlIGEgamF2YXNjcmlwdCBjb250cm9sbGVkIHRlbXBsYXRlIHRvIGFsbG93IHRoZSBtYW51YWwsIG9yIGF1dG9tYXRpYyBwaW5naW5nIG9mIHRoZSB1c2VyIHNlc3Npb24uICBUaGlzIHRlbXBsYXRlIGNhbiBiZSB1c2VkIHRvIHJlbWluZCB0aGUgdXNlciB0aGF0IGhpcyBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgYW5kIHRvIHRyaWdnZXIgaXRzIHJlc2V0LiAgTm9ybWFsbHkgdGhpcyBtZXRob2QgaXMgbm90IHJlcXVpcmVkIGFzIGFueSBwYWdlIHRoYXQgZGlzcGxheXMgdGhlIEZyb250RW5kVXNlciBjb250cm9scyB3b3VsZCBoYW5kbGUgdGhpcywganVzdCByZXF1aXJpbmcgdGhlIHVzZXIgdG8gdmlldyBhIHBhZ2Ugb24gYSByZWd1bGFyIGJhc2lzLiAgSG93ZXZlciwgaWYgdGhlcmUgYXJlIHBhZ2VzIHdpdGggYWxvdCBvZiBjb250ZW50IHJlcXVpcmluZyBleHRlbnNpdmUgcmVhZGluZywgdGhpcyBtYXkgYmUgYSB1c2VmdWwgc29sdXRpb24uPC9saT4KPGxpPjxlbT52aWV3dXNlcjwvZW0+IC0gRGlzcGxheSBhIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXNlciwgcmVxdWlyZXMgdXNlIG9mIHRoZSB1aWQgcGFyYW1ldGVyLjwvbGk+CjwvdWw+CjwvcD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0ibmFtZSI8L2xpPgo8cD5Gb3JtczoKPHVsPgogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+CiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPgogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPgogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPgogPGxpPjxlbT5sb3N0dXNlcm5hbWU8L2VtPiAtIERpc3BsYXkgdGhlIGxvc3QgdXNlcm5hbWUgZm9ybS48L2xpPgo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+CjwvdWw+CjwvcD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiPC9saT4KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0iZ3JvdXAxLCBncm91cDIsIGdyb3VwMyI8L2xpPgo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiAgQmFzaWNhbGx5IG9ubHkgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGlmIHRoZXkgYmVsb25nIHRvIHRoYXQgcGFydGljdWxhciBncm91cChzKS48L3A+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0iZ3JvdXAiPC9saT4KPHA+VXNlZCB3aXRoIHRoZSBsb3N0dXNlcm5hbWUgZm9ybSwgdGhpcyBmZWF0dXJlIHNwZWNpZmllcyB0aGUgZnJvbnRlbmQgdXNlciBncm91cCB0byBhc3N1bWUgdGh0IHVzZXJzIGFyZSBtZW1iZXJzIG9mLjwvcD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSIxIjwvbGk+CjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuIGhpcyB3aWxsIGRpc25hYmxlIGNhcHRjaGEgb24gdGhlIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgZm9yIGxvZ2luLiAgVGhpcyBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgaW50ZW50ZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLjwvcD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPgo8cD5Vc2VkIHdpdGggdGhlIHZpZXd1c2VyIGFjdGlvbi4gIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIHRvIHNwZWNpZnkgd2hpY2ggdXNlciB0byB2aWV3IHRoZSBkZXRhaWxzIG9mLjwvcD4KPC91bD4KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0Cm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4KPGgzPlJlcXVpcmVtZW50czwvaDM+CjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+CjxwPkNvcHlyaWdodCAmY29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+CjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4KPGgzPlNwb25zb3JzPC9oMz4KPHA+VGhlcmUgaGF2ZSBiZWVuIG1hbnkgc3BvbnNvcnMgZm9yIHRoaXMgbW9kdWxlLCBzb21lIG9mIHRoZXNlIGFyZSBsaXN0ZWQgYmVsb3c6PC9wPgo8dWwuPgogPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cubWF0dGVyaG9ybm1hcmtldGluZy5jb20iPk1hdHRlcmhvcm4gTWFya2V0aW5nPC9hPjwvbGk+CiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5icHRpLmV1Ij5CYWxrYW4gSW5zdGl0dXRlIG9mIEFkdmFuY2VkIFRlY2hub2xvZ3k8L2E+PC9saT4KPC91bD48aDM+RGVwZW5kZW5jaWVzPC9oMz48dWw+PGxpPkNNU01haWxlciA9Jmd0OyAxLjczLjk8L2xpPjxsaT5DR0V4dGVuc2lvbnMgPSZndDsgMS4xOS40PC9saT48L3VsPjxoMz5QYXJhbWV0ZXJzPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gUGFyYW1ldGVyIGlzIHVzZWQgdG8gc3BlY2lmeSB3aGF0IGxhbmd1YWdlIHRvIHVzZSBmb3IgZGlzcGxheSBvbiB0aGUgZnJvbnRlbmQuIE5vdCBhbGwgbW9kdWxlcyBzdXBwb3J0IG9yIG5lZWQgdGhpcy48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybmxhc3Q9IiIgLSBVc2VkIHdpdGggdGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGlmIHNwZWNpZmllZCB3aWxsIGluZGljYXRlIHRoYXQgdGhlIHVzZXIgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSBwYWdlIChieSB1cmwpIHRoYXQgdGhlIHVzZXIgd2FzIHZpZXdpbmcgYmVmb3JlIHRoZSBhY3Rpb24gb2NjdXJyZWQuICBUaGlzIHBhcmFtZXRlciB3aWxsIG92ZXJyaWRlIHRoZSByZWRpcmVjdCBwcmVmZXJlbmNlcywgYW5kIHRoZSByZXR1cm50byBwYXJhbWV0ZXIuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2lubGluZT0iIiAtIFVzZWQgd2l0aCBvbmUgb2YgdGhlIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhhdCB0aGUgZm9ybXMgc2hvdWxkIG5vdCBiZSBwbGFjZWQgaW5saW5lLCBpbnN0ZWFkIHRoZSByZXN1bHRpbmcgb3V0cHV0IGFmdGVyIGZvcm0gc3VibWlzc2lvbiB3aWxsIHJlcGxhY2UgdGhlIGRlZmF1bHQgY29udGVudCBibG9jazwvbGk+PC91bD4=]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGhvdG1haWwuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMTIuMjxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPjAuMC4xIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlPC9saT4KPGxpPjAuMS4wIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgcmVsZWFzZTwvbGk+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+CjxsaT4KCTxwPjEuMi4yIC0gSnVuZSwgMjAwNzwvcD4KCTxwPnRzdyAtIEFkZGVkIGV2ZW50IE9uVXBkYXRlVXNlciB3aGljaCBnZXRzIGNhbGxlZCB3aGVuIHVzZXIgKG9yIGFkbWluKSB1cGRhdGVzIHVzZXIgaW5mbzwvcD4KICAgICAgICAKPC9saT4KPGxpPjEuMyAtIE9jdG9iZXIsIDIwMDcKPHA+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+MS4xMiAtIEF1Z3VzdCwgMjAxMAogIDx1bD4KICAgIDxsaT5Ob3cgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCBTZWxmUmVnaXN0cmF0aW9uIHRvIGhhbmRsZSBwYWlkIHN1YnNjcmlwdGlvbnMuPC9saT4KICAgIDxsaT5UaGUgY29udGVudF9tb2R1bGUgdGFnIG5vdyBwcm92aWRlcyBhIG11bHRpLXNlbGVjdCBsaXN0IChUZWQpPC9saT4KICA8L3VsPgo8L2xpPgo8L3VsPgo8YnIgLz4=]]></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.19.4</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgpmdW5jdGlvbiBzd2FwKCYkYSwmJGIpCnsKICAkdG1wID0gJGE7CiAgJGEgPSAkYjsKICAkYiA9ICR0bXA7Cn0KCgpmdW5jdGlvbiByZW9yZGVyX2J5X2tleSgmJGlucHV0LCRmbGQsJGtleXMpCnsKICBpZiggIWlzX2FycmF5KCRpbnB1dCkgKSByZXR1cm47CiAgJHRtcCA9IGFycmF5KCk7CiAgZm9yZWFjaCggJGtleXMgYXMgJG9uZWtleSApCiAgICB7CiAgICAgIGZvcmVhY2goICRpbnB1dCBhcyAkcmVjICkKCXsKCSAgaWYoICRyZWNbJGZsZF0gPT0gJG9uZWtleSApCgkgICAgewoJICAgICAgJHRtcFtdID0gJHJlYzsKCSAgICAgIGJyZWFrOwoJICAgIH0KCX0KICAgIH0KICAkaW5wdXQgPSAkdG1wOwp9CgpmdW5jdGlvbiBhZGp1c3Rfb3JkZXJfYnlfa2V5cygmJGlucHV0LCRmbGQsJGtleXMpCnsKICBpZiggIWlzX2FycmF5KCRpbnB1dCkgKSByZXR1cm47CiAgJHRtcCA9IGFycmF5KCk7CgogIGZvcmVhY2goICRrZXlzIGFzICRvbmVrZXkgKQogICAgewogICAgICBmb3JlYWNoKCAkaW5wdXQgYXMgJHJlYyApCgl7CgkgIGlmKCAkcmVjWyRmbGRdID09ICRvbmVrZXkgKQoJICAgIHsKCSAgICAgICR0bXBbXSA9ICRyZWM7CgkgICAgICBicmVhazsKCSAgICB9Cgl9CiAgICB9CiAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKQogICAgewogICAgICAkZjEgPSAwOwogICAgICBmb3JlYWNoKCAkdG1wIGFzICR0bXByZWMgKQoJewoJICBpZiggJHJlY1skZmxkXSA9PSAkdG1wcmVjWyRmbGRdICkKCSAgICB7CgkgICAgICAkZjEgPSAxOwoJICAgICAgYnJlYWs7CgkgICAgfQoJfQogICAgICBpZiggJGYxID09IDAgKQoJewoJICAkdG1wW10gPSAkcmVjOwoJfQogICAgfQogICRpbnB1dCA9ICR0bXA7Cn0KCgovLwovLyBJbml0aWFsaXphdGlvbgovLwokZ3JvdXBuYW1lID0gJyc7CiRncm91cGRlc2MgPSAnJzsKJGdpZCA9IC0xOwoKLy8gY2hlY2sgcGVybWlzc2lvbnMgYWdhaW4KaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZGdyb3VwJyApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgIHJldHVybjsKICB9CgokcHJvcGRlZm4gPSBhcnJheSgpOwp7CiAgJHRtcCA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgaWYoIGNvdW50KCR0bXApID09IDAgKQogICAgewogICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgICAkdGhpcy0+TGFuZygnZXJyb3Jfbm9wcm9wZXJ0aWVzJykpOwogICAgICByZXR1cm47CiAgICB9CiAgZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICRyZWMgKQogICAgewogICAgICAkcmVjWydyZXF1aXJlZCddID0gMDsKICAgICAgJHJlY1snbG9zdHVuJ10gPSAtMTsKICAgICAgJHByb3BkZWZuWyRrZXldID0gJHJlYzsKICAgIH0KfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2dyb3VwX2lkJ10pICkKICB7CiAgICAvLyB3ZSdyZSBlZGl0aW5nIGEgZ3J1b3AKICAgICRnaWQgPSAoaW50KSRwYXJhbXNbJ2dyb3VwX2lkJ107CiAgICAkZ2luZm8gPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCRnaWQpOwogICAgaWYoIGlzc2V0KCRnaW5mb1swXSkgJiYgJGdpbmZvWzBdID09IEZBTFNFICkKICAgICAgewoJJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICR0aGlzLT5MYW5nKCdlcnJvcl9ncm91cG5vdGZvdW5kJykpOwoJcmV0dXJuOwogICAgICB9CiAgICAkZ3JvdXBuYW1lID0gJGdpbmZvWydncm91cG5hbWUnXTsKICAgICRncm91cGRlc2MgPSAkZ2luZm9bJ2dyb3VwZGVzYyddOwogICAgCiAgICAvLyBsb2FkIHJlbGF0aW9ucywgYW5kIGFkanVzdCB0aGUgcHJvcGRlZm4gYXJyYXkKICAgICRyZXMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucygkZ2lkKTsKICAgIGlmKCAkcmVzWzBdID09IEZBTFNFICkKICAgICAgewogICAgICAgIC8vVXBkYXRlZCB3aXRoIGNvcnJlY3QgRXJyb3IKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnKSk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyBzb3J0IHRoZW0gYnkgc29ydCBrZXkKICAgIHVhc29ydCgkcmVzLGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSk7CgogICAgLy8gc29ydCB0aGUgcHJvcGRlZm5zIGJ5IHRoZSBzb3J0IG9yZGVyLgogICAgJG5hbWVzID0gYXJyYXkoKTsKICAgIGZvcmVhY2goICRyZXMgYXMgJHRtcCApCiAgICAgIHsKCSRuYW1lc1tdID0gJHRtcFsnbmFtZSddOwogICAgICB9CiAgICBhZGp1c3Rfb3JkZXJfYnlfa2V5cygkcHJvcGRlZm4sJ25hbWUnLCRuYW1lcyk7CiAgICAKICAgIC8vIHVwZGF0ZSB0aGUgcHJvcGRlZm5zCiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkcmVzKTsgJGkrKyApCiAgICAgIHsKCWZvciggJGogPSAwOyAkaiA8IGNvdW50KCRwcm9wZGVmbik7ICRqKysgKQoJICB7CgkgICAgaWYoICRyZXNbJGldWyduYW1lJ10gPT0gJHByb3BkZWZuWyRqXVsnbmFtZSddICkKCSAgICAgIHsKCQkkcHJvcGRlZm5bJGpdWydyZXF1aXJlZCddID0gJHJlc1skaV1bJ3JlcXVpcmVkJ107CgkJJHByb3BkZWZuWyRqXVsnbG9zdHVuJ10gPSAkcmVzWyRpXVsnbG9zdHVuZmxhZyddOwoJCWJyZWFrOwoJICAgICAgfQoJICB9CiAgICAgIH0KICB9CgppZiAoaXNzZXQgKCRwYXJhbXNbJ2NhbmNlbCddKSkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snbW92ZXVwJ10pICkKICB7CiAgICAvLyB1cGRhdGUgdGhlIHByb3BkZWZuIHdpdGggc3RhdHVzIHZhbHVlcwogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsgJGkrKyApCiAgICAgIHsKCSRuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKCWZvciggJGogPSAwOyAkaiA8IGNvdW50KCRwcm9wZGVmbik7ICRqKysgKQoJICB7CgkgICAgaWYoICRuYW1lID09ICRwcm9wZGVmblskal1bJ25hbWUnXSApCgkgICAgICB7CgkJJHByb3BkZWZuWyRqXVsncmVxdWlyZWQnXSA9ICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ11bJGldOwoJCWlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV0pICkKCQkgIHsKCQkgICAgJHByb3BkZWZuWyRqXVsnbG9zdHVuJ10gPSAkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV07CgkJICB9CgkJYnJlYWs7CgkgICAgICB9CgkgIH0KICAgICAgfQogICAgJGdyb3VwbmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10pOwogICAgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKICAgIC8vIHdlJ3JlIG1vdmluZyBzdHVmZiB1cAogICAgLy8gc28gYWRqdXN0IHRoZSBwcm9wZGVmbiBhcnJheQogICAgJGlkeCA9IChpbnQpJHBhcmFtc1snbW92ZXVwJ10gLSAxOwogICAgc3dhcCgkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGlkeF0sJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpZHgtMV0pOwogICAgcmVvcmRlcl9ieV9rZXkoJHByb3BkZWZuLCduYW1lJywkcGFyYW1zWydpbnB1dF9uYW1lJ10pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ21vdmVkb3duJ10pICkKICB7CiAgICAvLyB1cGRhdGUgdGhlIHByb3BkZWZuIHdpdGggc3RhdHVzIHZhbHVlcwogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsgJGkrKyApCiAgICAgIHsKCSRuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKCWZvciggJGogPSAwOyAkaiA8IGNvdW50KCRwcm9wZGVmbik7ICRqKysgKQoJICB7CgkgICAgaWYoICRuYW1lID09ICRwcm9wZGVmblskal1bJ25hbWUnXSApCgkgICAgICB7CgkJJHByb3BkZWZuWyRqXVsncmVxdWlyZWQnXSA9ICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ11bJGldOwoJCWlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV0pICkKCQkgIHsKCQkgICAgJHByb3BkZWZuWyRqXVsnbG9zdHVuJ10gPSAkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kbmFtZV07CgkJICB9CgkJYnJlYWs7CgkgICAgICB9CgkgIH0KICAgICAgfQogICAgJGdyb3VwbmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10pOwogICAgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKICAgIC8vIHdlJ3JlIG1vdmluZyBzdHVmZiBkb3duCiAgICAvLyBzbyBhZGp1c3QgdGhlIHByb3BkZWZuIGFycmF5CiAgICAkaWR4ID0gKGludCkkcGFyYW1zWydtb3ZlZG93biddIC0gMTsKICAgIHN3YXAoJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpZHhdLCRwYXJhbXNbJ2lucHV0X25hbWUnXVskaWR4KzFdKTsKICAgIHJlb3JkZXJfYnlfa2V5KCRwcm9wZGVmbiwnbmFtZScsJHBhcmFtc1snaW5wdXRfbmFtZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKQogIHsKICAgICRwYXJhbXNbJ2lucHV0X25hbWUnXSA9IHNlcmlhbGl6ZSgkcGFyYW1zWydpbnB1dF9uYW1lJ10pOwogICAgJHBhcmFtc1snaW5wdXRfcmVxdWlyZWQnXSA9IHNlcmlhbGl6ZSgkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddKTsKICAgICRwYXJhbXNbJ3NlcmlhbGl6ZWQnXSA9IDE7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCgkaWQsJ2RvX2FkZGdyb3VwJywkcmV0dXJuaWQsJHBhcmFtcyk7CiAgfQoKLy8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywkcGFyYW1zWydlcnJvciddKTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJHBhcmFtc1snbWVzc2FnZSddKTsKICB9CiRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnYWRkZ3JvdXAnKSk7CmlmKCAkZ2lkID4gMCApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2dyb3VwX2lkJywkZ2lkKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPkxhbmcoJ2VkaXRncm91cCcpKTsKICB9CiRzbWFydHktPmFzc2lnbiAoJ3N0YXJ0Zm9ybScsCgkJICAgICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwKCQkJCQkgICAgICAgJ2FkZGdyb3VwJywKCQkJCQkgICAgICAgJHJldHVybmlkKSk7CiRzbWFydHktPmFzc2lnbiAoJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CiRzbWFydHktPmFzc2lnbiAoJ3N1Ym1pdCcsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywKCQkJCQkJICR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdjYW5jZWwnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsCgkJCQkJCSAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKICAgIAokc21hcnR5LT5hc3NpZ24gKCdwcm9tcHRfZ3JvdXBuYW1lJywKCQkgICAgICAgJHRoaXMtPkxhbmcgKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24gKCdpbnB1dF9ncm91cG5hbWUnLAoJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0ICgkaWQsICdpbnB1dF9ncm91cG5hbWUnLAoJCQkJCSAgICAgICAkZ3JvdXBuYW1lLCAyMCwgODApKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2dyb3VwZGVzYycsCgkJICAgICAgICR0aGlzLT5MYW5nICgnZGVzY3JpcHRpb24nKSk7CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2dyb3VwZGVzYycsCgkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2dyb3VwZGVzYycsCgkJCQkJICAgICAgICRncm91cGRlc2MsIDgwLCAyNTUpKTsgICAgCgovLyBkaXNwbGF5IGEgbGlzdCBvZiB0aGUgcHJvcGVydGllcyBpbiBhIGZvcm0KLy8gdG8gYWxsb3cgdGhlIHVzZXIgdG8gcGljayB3aGljaCBvbmVzIGFyZSByZXF1aXJlZCBhbmQgd2hpY2ggb25lcyBhcmVudC4KJHJvd2FycmF5ID0gYXJyYXkoKTsKJGtleXMgPSBhcnJheV9rZXlzKCR0aGlzLT50eXBlcyk7CiRvcHRpb25zID0gYXJyYXkoICR0aGlzLT5MYW5nKCdvZmYnKSA9PiAwLAoJCSAgJHRoaXMtPkxhbmcoJ29wdGlvbmFsJykgPT4gMSwKCQkgICR0aGlzLT5MYW5nKCdyZXF1aXJlZCcpID0+IDIsCgkJICAkdGhpcy0+TGFuZygnaGlkZGVuJykgPT4gMywKCQkgICR0aGlzLT5MYW5nKCdyZWFkb25seScpID0+IDQpOwogICAgCiRpbWdfdXAgPSAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3NvcnRfdXAuZ2lmJywKCQkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdtb3ZlX3VwJywnJywnJywnc3lzdGVtaWNvbicpKTsKJGltZ19kb3duID0gJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9zb3J0X2Rvd24uZ2lmJywKCQkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdtb3ZlX2Rvd24nLCcnLCcnLCdzeXN0ZW1pY29uJykpOwoKJHNvcnRvcmRlciA9IDE7CmZvcmVhY2goICRwcm9wZGVmbiBhcyAkZGVmbiApCnsKICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgJG9uZXJvdy0+bmFtZSA9ICRkZWZuWyduYW1lJ107CiAgJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwogICRvbmVyb3ctPnR5cGUgPSAkdGhpcy0+TGFuZygka2V5c1skZGVmblsndHlwZSddXSk7CiAgJG9uZXJvdy0+aGlkZGVuID0gJzxkaXY+Jy4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9uYW1lW10nLCRkZWZuWyduYW1lJ10pLic8L2Rpdj4nOwogIC8vJG9uZXJvdy0+c29ydG9yZGVyID0gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfc29ydG9yZGVyXycuJGRlZm5bJ25hbWUnXSwgJHNvcnRvcmRlciwgMywgMiApOwogIC8vJG9uZXJvdy0+cmVxdWlyZWQgPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93biggJGlkLCAnaW5wdXRfcmVxdWlyZWRfJy4kZGVmblsnbmFtZSddLCAkb3B0aW9ucyApOwogICRvbmVyb3ctPnJlcXVpcmVkID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oICRpZCwgJ2lucHV0X3JlcXVpcmVkW10nLCAkb3B0aW9ucywKCQkJCQkJICAtMSwgJGRlZm5bJ3JlcXVpcmVkJ10pOwogIGlmKCAkc29ydG9yZGVyID4gMSApCiAgICB7CiAgICAgICRvbmVyb3ctPm1vdmV1cCA9ICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ21vdmV1cCcsJHNvcnRvcmRlciwnJywKCQkJCQkJICdhZG1pbi90aGVtZXMvZGVmYXVsdC9pbWFnZXMvaWNvbnMvc3lzdGVtL3NvcnRfdXAuZ2lmJyk7CiAgICB9CiAgaWYoICRzb3J0b3JkZXIgPCBjb3VudCgkcHJvcGRlZm4pICkKICAgIHsKICAgICAgJG9uZXJvdy0+bW92ZWRvd24gPSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdtb3ZlZG93bicsJHNvcnRvcmRlciwnJywKCQkJCQkJICdhZG1pbi90aGVtZXMvZGVmYXVsdC9pbWFnZXMvaWNvbnMvc3lzdGVtL3NvcnRfZG93bi5naWYnKTsKICAgIH0KCiAgaWYoICRkZWZuWyd0eXBlJ10gPT0gMCB8fCAkZGVmblsndHlwZSddID09IDIgfHwgJGRlZm5bJ3R5cGUnXSA9PSA0ICkKICAgIHsKICAgICAgJG9uZXJvdy0+YXNraW5sb3N0dW4gLj0KCSR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9sb3N0dW5fJy4kZGVmblsnbmFtZSddLCAxLCAkZGVmblsnbG9zdHVuJ10gKTsKICAgIH0KCiAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICsrJHNvcnRvcmRlcjsKfQoKJHNtYXJ0eS0+YXNzaWduKCdwcm9wcycsICRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbigncHJvcGNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKJHNtYXJ0eS0+YXNzaWduKCdzb3J0b3JkZXJ0ZXh0JywgJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0dGV4dCcsICR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiRzbWFydHktPmFzc2lnbigndHlwZXRleHQnLCR0aGlzLT5MYW5nKCd0eXBlJykpOwokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkc3RhdHVzdGV4dCcsJHRoaXMtPkxhbmcoJ2ZpZWxkc3RhdHVzJykpOwokc21hcnR5LT5hc3NpZ24oJ3VzZWRpbmxvc3R1bnRleHQnLCR0aGlzLT5MYW5nKCd1c2VkaW5sb3N0dW4nKSk7CgovLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkZ3JvdXAudHBsJyk7Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.addprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgovLyBjaGVjayBwZXJtaXNzaW9ucyBhZ2FpbgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnYWRkcHJvcCcgKSApCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICByZXR1cm47CiAgfQoKIwojIEluaXRpYWxpemF0aW9uCiMKJGZpZWxkdHlwZXMgPSAkdGhpcy0+bGFuZ2lmeUtleXMoJHRoaXMtPnR5cGVzKTsKJHRpdGxlID0gJHRoaXMtPkxhbmcoJ2FkZHByb3AnKTsKJGRlZm4gPSBhcnJheSgpOwokZGVmblsnbmFtZSddID0gJyc7CiRkZWZuWydwcm9tcHQnXSA9ICcnOwokZGVmblsndHlwZSddID0gMDsKJGRlZm5bJ2xlbmd0aCddID0gODA7CiRkZWZuWydtYXhsZW5ndGgnXSA9IDI1NTsKJGRlZm5bJ2F0dHJpYnMnXSA9ICcnOwokZGVmblsnZm9yY2VfdW5pcXVlJ10gPSAwOwokZGVmblsnZW5jcnlwdCddID0gMDsKJGF0dHJpYnMgPSBhcnJheSgpOwokc2Vsb3B0aW9ucyA9ICcnOwokc3RhdHVzID0gJyc7CiRtZXNzYWdlID0gJyc7CiRwcm9wbmFtZSA9ICcnOwoKCiMKIyBSZWFkIFBhcmFtZXRlcnMKIwppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcm9wZXJ0aWVzJyApOwogICAgcmV0dXJuOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ3Byb3BuYW1lJ10pICkKICB7CiAgICAkcHJvcG5hbWUgPSB0cmltKCRwYXJhbXNbJ3Byb3BuYW1lJ10pOwogICAgJHRpdGxlID0gJHRoaXMtPkxhbmcoJ2VkaXRwcm9wJywkcHJvcG5hbWUpOwogICAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCRwcm9wbmFtZSk7CiAgICBpZiggJGRlZm4gPT0gRkFMU0UgKQogICAgICB7CgkkcGFybXMgPSBhcnJheSgpOwoJJHBhcm1zWydlcnJvciddID0gMTsKCSRwYXJtc1snbWVzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcHJvcG5vdGZvdW5kJyk7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3Byb3BlcnRpZXMnLCRwYXJtcyk7CglyZXR1cm47CiAgICAgIH0KICAgICR0bXAgPSAkdGhpcy0+R2V0U2VsZWN0T3B0aW9ucygkcHJvcG5hbWUpOwogICAgaWYoICR0bXAgKQogICAgICB7Cglmb3JlYWNoKCAkdG1wIGFzICRrZXkgPT4gJHZhbCApCgkgIHsKCSAgICBpZiggJGtleSA9PSAkdmFsICkKCSAgICAgIHsKCQkkc2Vsb3B0aW9ucyAuPSAiJHZhbFxuIjsKCSAgICAgIH0KCSAgICBlbHNlCgkgICAgICB7CgkJJHNlbG9wdGlvbnMgLj0gIiRrZXk9JHZhbFxuIjsKCSAgICAgIH0KCSAgfQogICAgICB9CiAgICBpZiggaXNzZXQoJGRlZm5bJ2F0dHJpYnMnXSkgJiYgIWVtcHR5KCRkZWZuWydhdHRyaWJzJ10pICkKICAgICAgewoJJGF0dHJpYnMgPSB1bnNlcmlhbGl6ZSgkZGVmblsnYXR0cmlicyddKTsKICAgICAgfQogIH0KCmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF90eXBlJ10pICkKICB7CiAgICAkZGVmblsndHlwZSddID0gKGludCkkcGFyYW1zWydpbnB1dF90eXBlJ107CiAgfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfbGVuZ3RoJ10pICkKICB7CiAgICAkZGVmblsnbGVuZ3RoJ10gPSAoaW50KSRwYXJhbXNbJ2lucHV0X2xlbmd0aCddOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X21heGxlbmd0aCddKSApCiAgewogICAgJGRlZm5bJ21heGxlbmd0aCddID0gKGludCkkcGFyYW1zWydpbnB1dF9tYXhsZW5ndGgnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pICkKICB7CiAgICAkZGVmblsnbmFtZSddID0gc3RydG9sb3dlcih0cmltKCRwYXJhbXNbJ2lucHV0X25hbWUnXSkpOwogICAgJGRlZm5bJ25hbWUnXSA9IG11bmdlX3N0cmluZ190b191cmwoJGRlZm5bJ25hbWUnXSk7CiAgICAkZGVmblsnbmFtZSddID0gc3RyX3JlcGxhY2UoJy0nLCdfJywkZGVmblsnbmFtZSddKTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9wcm9tcHQnXSkgKQogIHsKICAgICRkZWZuWydwcm9tcHQnXSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcHJvbXB0J10pOwogIH0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZvcmNlX3VuaXF1ZSddKSApCiAgewogICAgJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddID0gKGludCkkcGFyYW1zWydpbnB1dF9mb3JjZV91bmlxdWUnXTsKICB9CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9lbmNyeXB0J10pICkKICB7CiAgICAkZGVmblsnZW5jcnlwdCddID0gKGludCkkcGFyYW1zWydpbnB1dF9lbmNyeXB0J107CiAgfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfc2Vsb3B0aW9ucyddKSApCiAgewogICAgJHNlbG9wdGlvbnMgPSAkcGFyYW1zWydpbnB1dF9zZWxvcHRpb25zJ107CiAgfQppZiAoaXNzZXQoJHBhcmFtc1snaW5wdXRfcmFkaW9vcHRpb25zJ10pKQogIHsKICAgJHNlbG9wdGlvbnMgPSAkcGFyYW1zWydpbnB1dF9yYWRpb29wdGlvbnMnXTsKICB9CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKQp7CiAgaWYoIHN0YXJ0c3dpdGgoJGtleSwnaW5wdXRfYXR0cmliXycpICkKICAgIHsKICAgICAgJGF0dHJpYiA9IHN1YnN0cigka2V5LDEzKTsKICAgICAgJGF0dHJpYnNbJGF0dHJpYl0gPSAkdmFsdWU7CiAgICB9Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCiAgewogICAgaWYoIGVtcHR5KCRkZWZuWyduYW1lJ10pIHx8IGVtcHR5KCRkZWZuWydwcm9tcHQnXSkgKQogICAgICB7Cgkkc3RhdHVzID0gJ2Vycm9yJzsKCSRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKTsKICAgICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiAkc2Vsb3B0aW9ucyApCiAgICAgIHsKCSRvcHRpb25zID0gYXJyYXkoKTsKCSR0bXAgPSBleHBsb2RlKCJcbiIsICRzZWxvcHRpb25zKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCSAgICAkb25lID0gdHJpbSgkb25lKTsKCSAgICBpZiggIWVtcHR5KCRvbmUpICkKCSAgICAgIHsKCQkkb3B0aW9uc1tdID0gJG9uZTsKCSAgICAgIH0KCSAgfQogICAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkKICAgICAgewoJc3dpdGNoKCRkZWZuWyd0eXBlJ10pCgkgIHsKCSAgY2FzZSAnMCc6IC8qIHRleHQgKi8KCSAgY2FzZSAnNic6IC8qIGltYWdlICovCgkgICAgYnJlYWs7IAoJICBjYXNlICcyJzogLyogZW1haWwgKi8KCSAgICAvLyBlbWFpbCBmaWVsZHMgY2Fubm90IGJlIGVuY3J5cHRlZC4KCSAgICAkZGVmblsnZW5jcnlwdCddID0gMDsKCSAgICBicmVhazsKCSAgY2FzZSAxOiAgIC8qIGNoZWNrYm94ICovCgkgICAgJGRlZm5bJ2xlbmd0aCddID0gMTsKCSAgICBicmVhazsKCSAgY2FzZSAzOiAgIC8qIHRleHRhcmVhICovCgkgICAgJGRlZm5bJ2xlbmd0aCddID0gMjU1OwoJICAgIGJyZWFrOwoJICBjYXNlIDQ6CgkgIGNhc2UgNTogCgkgICAgJGRlZm5bJ2xlbmd0aCddID0gY291bnQoJG9wdGlvbnMpOwoJICAgIGJyZWFrOwoJICBjYXNlIDc6IC8qIHJhZGlvYnV0dG9ucyAqLwoJICAgICRkZWZuWydsZW5ndGgnXSA9IGNvdW50KCRvcHRpb25zKTsKCSAgICBicmVhazsKCSAgY2FzZSA4OiAvKiBkYXRlICovCgkgIGRlZmF1bHQ6CgkgICAgJGRlZm5bJ2xlbmd0aCddID0gMTsKCSAgICBicmVhazsKCSAgfQoKCWlmKCAoKCRkZWZuWyd0eXBlJ10gPT0gMCB8fCAkZGVmblsndHlwZSddID09IDIpICYmICggJGRlZm5bJ2xlbmd0aCddIDwgMSB8fCAkZGVmblsnbGVuZ3RoJ10gPiAyNTUgfHwgJGRlZm5bJ21heGxlbmd0aCddIDwgMSB8fCAkZGVmblsnbWF4bGVuZ3RoJ10gPiAxMDI0IHx8ICRkZWZuWydtYXhsZW5ndGgnXSA8ICRkZWZuWydsZW5ndGgnXSApKSB8fAoJICAgICgoJGRlZm5bJ3R5cGUnXSA9PSA0IHx8ICRkZWZuWyd0eXBlJ10gPT0gNSB8fCAkZGVmblsndHlwZSddID09IDcpICYmICRzZWxvcHRpb25zID09ICcnICkgfHwKCSAgICAoKCRkZWZuWyd0eXBlJ10gPT0gNikgJiYgKCRkZWZuWydsZW5ndGgnXSA8IDEwIHx8ICRkZWZuWydsZW5ndGgnXSA+IDEwMjQpKQoJICAgICl7CgkgICRzdGF0dXMgPSAnZXJyb3InOwoJICAkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkcGFyYW1zJyk7Cgl9CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgJiYgaXNzZXQoJG9wdGlvbnMpICYmICRvcHRpb25zICkKICAgICAgewoJaWYoICFlbXB0eSgkcHJvcG5hbWUpICkKCSAgewoJICAgICR0aGlzLT5EZWxldGVTZWxlY3RPcHRpb25zKCRwcm9wbmFtZSk7CgkgIH0KCgkkdG1wID0gJHRoaXMtPkFkZFNlbGVjdE9wdGlvbnMoJGRlZm5bJ25hbWUnXSwkb3B0aW9ucyk7CglpZiggISR0bXBbMF0gKQoJICB7CgkgICAgJHN0YXR1cyA9ICdlcnJvcic7CgkgICAgJG1lc3NhZ2UgPSAkdG1wWzFdOwoJICB9CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKQogICAgICB7CgkkZGVmblsnYXR0cmlicyddID0gc2VyaWFsaXplKCRhdHRyaWJzKTsKICAgICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSApCiAgICAgIHsKCWlmKCAhZW1wdHkoJHByb3BuYW1lKSApCgkgIHsKCSAgICAkdG1wID0gJHRoaXMtPlNldFByb3BlcnR5RGVmbiggJHByb3BuYW1lLCAkZGVmblsnbmFtZSddLCAkZGVmblsncHJvbXB0J10sICRkZWZuWyd0eXBlJ10sICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddLCAkZGVmblsnYXR0cmlicyddLCAkZGVmblsnZm9yY2VfdW5pcXVlJ10sICRkZWZuWydlbmNyeXB0J10gKTsKCSAgfQoJZWxzZQoJICB7CgkgICAgLy8gTmV3IHByb3BlcnR5CgkgICAgJHRtcCA9ICR0aGlzLT5BZGRQcm9wZXJ0eURlZm4oICRkZWZuWyduYW1lJ10sICRkZWZuWydwcm9tcHQnXSwgJGRlZm5bJ3R5cGUnXSwgJGRlZm5bJ2xlbmd0aCddLCAkZGVmblsnbWF4bGVuZ3RoJ10sICRkZWZuWydhdHRyaWJzJ10sICRkZWZuWydmb3JjZV91bmlxdWUnXSwgJGRlZm5bJ2VuY3J5cHQnXSApOwoJICAgIGlmKCAhJHRtcFswXSApCgkgICAgICB7CgkJJHN0YXR1cyA9ICdlcnJvcic7CgkJJG1lc3NhZ2UgPSAkdG1wWzFdOwoJICAgICAgfQoJICB9CiAgICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKQogICAgICB7CgkkdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAncHJvcGVydGllcycgKTsKICAgICAgfQoKICAgIC8vCiAgICAvLyBpZiB3ZSBnZXQgaGVyZSwgaXQncyBhbiBlcnJvciBvZiBzb21lIHNvcnQKICAgIC8vCiAgfQoKIwojIEdpdmUgZXZleXJ0aGluZyB0byBzbWFydHkKIwppZiggIWVtcHR5KCRzdGF0dXMpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywxKTsKICB9CmlmKCAhZW1wdHkoJG1lc3NhZ2UpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKICB9CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRkcHJvcCcsJHJldHVybmlkLCdwb3N0JywnJyxmYWxzZSwnJywkcGFyYW1zKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbigndGl0bGUnLCR0aXRsZSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X25hbWUnLCR0aGlzLT5MYW5nKCduYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2luZm9fbmFtZScsJHRoaXMtPkxhbmcoJ2luZm9fbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9uYW1lJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbmFtZScsJGRlZm5bJ25hbWUnXSwgMzAsIDMwICkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wcm9tcHQnLCR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcHJvbXB0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfcHJvbXB0JywkZGVmblsncHJvbXB0J10sIDgwLCAyNTUgKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3R5cGUnLCR0aGlzLT5MYW5nKCd0eXBlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3R5cGUnLCAgCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oICRpZCwgJ2lucHV0X3R5cGUnLCAkZmllbGR0eXBlcywgLTEsICRkZWZuWyd0eXBlJ10sCgkJCQkJICAgICdvbmNoYW5nZT0idGhpcy5mb3JtLnN1Ym1pdCgpOyInKSk7CmlmKCAkZGVmblsndHlwZSddID09IDAgfHwgJGRlZm5bJ3R5cGUnXSA9PSAyICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZvcmNlX3VuaXF1ZScsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFllc05vRHJvcGRvd24oJGlkLCdpbnB1dF9mb3JjZV91bmlxdWUnLCRkZWZuWydmb3JjZV91bmlxdWUnXSkpOwogIH0KaWYoICFpc3NldCgkcGFyYW1zWydwcm9wbmFtZSddKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9lbmNyeXB0JywKCQkgICAgJHRoaXMtPkNyZWF0ZUlucHV0WWVzTm9Ecm9wZG93bigkaWQsJ2lucHV0X2VuY3J5cHQnLCRkZWZuWydlbmNyeXB0J10pKTsKICB9CmVsc2UKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2VuY3J5cHQnLCRkZWZuWydlbmNyeXB0J10/JHRoaXMtPkxhbmcoJ3llcycpOiR0aGlzLT5MYW5nKCdubycpKTsKICB9Cgokc21hcnR5LT5hc3NpZ24oJ2RlZm4nLCRkZWZuKTsKJHNtYXJ0eS0+YXNzaWduKCdvcmlnX3R5cGUnLCAgCgkJJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgJ29yaWdfdHlwZScsICRkZWZuWyd0eXBlJ10pKTsKJHNtYXJ0eS0+YXNzaWduICgnc3VibWl0JywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCAkdGhpcy0+TGFuZygnc3VibWl0JykgKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsCgkJICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJGZsZHMgPSBhcnJheSgpOwpzd2l0Y2goICRkZWZuWyd0eXBlJ10gKQogIHsKICBjYXNlIDA6CiAgY2FzZSAyOgogICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdsZW5ndGgnKS4kdGhpcy0+TGFuZygnbGVuZ3RoY29tbWVudCcpLAoJCSAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbGVuZ3RoJywkZGVmblsnbGVuZ3RoJ10sMywzKSk7CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ21heGxlbmd0aCcpLAoJCSAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbWF4bGVuZ3RoJywkZGVmblsnbWF4bGVuZ3RoJ10sMywzKSk7CiAgICBicmVhazsKICBjYXNlIDM6CiAgICAkdmFsID0gKGlzc2V0KCRhdHRyaWJzWyd3eXNpd3lnJ10pKT8kYXR0cmlic1snd3lzaXd5ZyddOjA7CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZycpLAoJCSAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9hdHRyaWJfd3lzaXd5ZycsJzAnKS4KCQkgICAgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCdpbnB1dF9hdHRyaWJfd3lzaXd5ZycsJzEnLCR2YWwpKTs7CiAgICBicmVhazsKICBjYXNlIDQ6CiAgY2FzZSA1OgogICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdzZWxvcHRpb25zJyksCgkJICAgICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwkaWQsJHNlbG9wdGlvbnMsJ2lucHV0X3NlbG9wdGlvbnMnKSk7CiAgICBicmVhazsKICBjYXNlIDY6CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ2xlbmd0aCcpLiR0aGlzLT5MYW5nKCdsZW5ndGhjb21tZW50JyksCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9sZW5ndGgnLCRkZWZuWydsZW5ndGgnXSwzLDMpKTsKICAgIC8vJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdzaXplJykuJyZuYnNwOycuJHRoaXMtPkxhbmcoJ3NpemVjb21tZW50JyksCiAgICAvLyR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9sZW5ndGgnLCRkZWZuWydsZW5ndGgnXSwzLDMpKTsKICAgIGJyZWFrOwogIGNhc2UgNzogCiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3JhZGlvb3B0aW9ucycpLAoJCSAgICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRzZWxvcHRpb25zLCdpbnB1dF9yYWRpb29wdGlvbnMnKSk7CiAgICBicmVhazsKICBjYXNlIDg6IC8qIGRhdGUgKi8KICAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnc3RhcnRfeWVhcicpLic6JywKCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfYXR0cmliX3N0YXJ0eWVhcicsCgkJCQkJICAoaXNzZXQoJGF0dHJpYnNbJ3N0YXJ0eWVhciddKSk/JGF0dHJpYnNbJ3N0YXJ0eWVhciddOictNScsCgkJCQkJICA0LDQpKTsKICAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnZW5kX3llYXInKS4nOicsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9hdHRyaWJfZW5keWVhcicsCgkJCQkJICAgKGlzc2V0KCRhdHRyaWJzWydlbmR5ZWFyJ10pKT8kYXR0cmlic1snZW5keWVhciddOicrMTAnLAoJCQkJCSAgIDQsNCkpOwogICAgYnJlYWs7CiAgfQokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkcycsJGZsZHMpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZGRwcm9wLnRwbCcpOwpyZXR1cm47CgoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.adduser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnYWRkdXNlcicgKSApCiAgewogICAgcmV0dXJuOwogIH0KCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAndXNlcnMnICk7CiAgfQoKJGdpZCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2dyb3VwJywgLTEpOwppZiggJGdpZCAhPSAtMSApCiAgewogICAgLy8gdGhlIGRlZmF1bHQgZ3JvdXAgaGFzIGJlZW4gc2V0CiAgICAvLyBzbyB3ZSdsbCBwdXQgdGhpcyBpbiB0aGUgbWVtYmVyb2YgcGFyYW1ldGVyCiAgICAvLyBpZiBpdCdzIG5vdCBhbHJlYWR5IHNldAogICAgaWYoICFpc3NldCggJHBhcmFtc1snbWVtYmVyb2YnXSApICkKICAgICAgewoJJHBhcmFtc1snbWVtYmVyb2ZfJy4kZ2lkXSA9ICRnaWQ7CiAgICAgIH0KICB9CgokdGhpcy0+X0Rpc3BsYXlBZG1pblVzZXJQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_bulkactions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCAkZ0NtcyApICkgcmV0dXJuOwppZiggIWlzc2V0KCAkcGFyYW1zWydqb2InXSkgKSByZXR1cm47CmlmKCAhaXNzZXQoICRwYXJhbXNbJ3VpZHMnXSkgKSByZXR1cm47CgoKJGpvYiA9IHRyaW0oJHBhcmFtc1snam9iJ10pOwpzd2l0Y2goICRqb2IgKQogIHsKICBjYXNlICdkZWxldGUnOgogICAgewogICAgICAkaSA9IDA7CiAgICAgIGlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJykgKSByZXR1cm47CiAgICAgICRzZWwgPSB1bnNlcmlhbGl6ZSgkcGFyYW1zWyd1aWRzJ10pOwogICAgICBpZiggIWlzX2FycmF5KCRzZWwpICkgcmV0dXJuOwogICAgICBmb3JlYWNoKCAkc2VsIGFzICRvbmV1aWQgKQoJewoJICAkdGhpcy0+RGVsZXRlVXNlckZ1bGwoICRvbmV1aWQgKTsKCSAgJGkrKzsKCSAgaWYoICRpID49IDI1MCApIGJyZWFrOwoJfQogICAgfQogICAgYnJlYWs7CgogIGRlZmF1bHQ6CiAgICAvLyBpbnZhbGlkIGpvYgogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICd1c2VycycgKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_exportgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCAkZ0NtcyApICkgcmV0dXJuOwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0Z3JvdXBzJykgKSByZXR1cm47CmlmKCAhaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSByZXR1cm47CgokZ3JvdXBpZCA9ICRwYXJhbXNbJ2dyb3VwX2lkJ107CgokdGhpcy0+U2V0Q3VycmVudFRhYignZ3JvdXBzJyk7CmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApCiAgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3RzdXBwb3J0ZWQnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIH0KCiRncnBfaW5mbyA9ICR0aGlzLT5HZXRHcm91cEluZm8oICRncm91cGlkICk7CmlmKCBpc19hcnJheSggJGdycF9pbmZvICkgJiYgaXNzZXQoJGdycF9pbmZvWzBdKSAmJiAkZ3JwX2luZm9bMF0gPT09IEZBTFNFICkgCiAgewogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CiAgICAkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGdyb3VwaWQnLCRncm91cGlkKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCAkcGFybXMpOwogICAgcmV0dXJuOwogIH0KCiRncnBfcHJvcF9yZWxzID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncm91cGlkICk7CmlmKCBpc19hcnJheSggJGdycF9wcm9wX3JlbHMgKSAmJiAkZ3JwX3Byb3BfcmVsc1swXSA9PT0gRkFMU0UgKQogIHsKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAkcGFybXNbJ2FjdGl2ZV90YWInXSA9ICdncm91cHMnOwogICAgJHBhcm1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vcmVsYXRpb25zJyk7CiAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKICAgIHJldHVybjsKICB9CgokZmlsZW5hbWUgPSAkZ3JwX2luZm9bJ2dyb3VwbmFtZSddLicueG1sJzsKJHNtYXJ0eS0+YXNzaWduKCdncm91cF9uYW1lJywkZ3JwX2luZm9bJ2dyb3VwbmFtZSddKTsKJHNtYXJ0eS0+YXNzaWduKCdncm91cF9kZXNjcmlwdGlvbicsJGdycF9pbmZvWydncm91cGRlc2MnXSk7CiRwcm9wZXJ0aWVzID0gYXJyYXkoKTsKZm9yZWFjaCggJGdycF9wcm9wX3JlbHMgYXMgJG9uZXJlbCApCnsKICAkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRvbmVyZWxbJ25hbWUnXSApOwogIGlmKCAhJGRlZm4gKQogICAgewogICAgICAkcGFybXMgPSBhcnJheSgpOwogICAgICAkcGFybXNbJ2FjdGl2ZV90YWInXSA9ICdncm91cHMnOwogICAgICAkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcHJvcG5vdGZvdW5kJywkb25yZWxbJ25hbWUnXSk7CiAgICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCAkcGFybXMpOwogICAgICByZXR1cm47CiAgICB9CgogICRvYmogPSBuZXcgU3RkQ2xhc3MoKTsKICAkb2JqLT5uYW1lID0gJG9uZXJlbFsnbmFtZSddOwogICRvYmotPnNvcnRvcmRlciA9ICRvbmVyZWxbJ3NvcnRfa2V5J107CiAgJG9iai0+c3RhdHVzID0gJG9uZXJlbFsncmVxdWlyZWQnXTsKICAkb2JqLT5sb3N0dW5mbGFnID0gJG9uZXJlbFsnbG9zdHVuZmxhZyddOwogICRvYmotPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb2JqLT50eXBlID0gJGRlZm5bJ3R5cGUnXTsKICAkb2JqLT5sZW5ndGggPSAkZGVmblsnbGVuZ3RoJ107CiAgJG9iai0+bWF4bGVuZ3RoID0gJGRlZm5bJ21heGxlbmd0aCddOwogIGlmKCAkb2JqLT50eXBlID09IDQgfHwgJG9iai0+dHlwZSA9PSA1ICkKICAgIHsKICAgICAgJG9wcyA9IGFycmF5KCk7CiAgICAgICRzZWxlY3Rfb3BzID0gJHRoaXMtPkdldFNlbGVjdE9wdGlvbnMoICRvYmotPm5hbWUsIDIgKTsKICAgICAgZm9yZWFjaCggJHNlbGVjdF9vcHMgYXMgJHNlbF9vcCApCgl7CgkgICRvcCA9IG5ldyBTdGRDbGFzczsKCSAgJG9wLT5uYW1lID0gJHNlbF9vcFsnb3B0aW9uX25hbWUnXTsKCSAgJG9wLT50ZXh0ID0gJHNlbF9vcFsnb3B0aW9uX3RleHQnXTsKCSAgJG9wc1tdID0gJG9wOwoJfQogICAgICAkb2JqLT5vcHRpb25zID0gJG9wczsKICAgIH0KCiAgJHByb3BlcnRpZXNbXSA9ICRvYmo7Cn0KJHNtYXJ0eS0+YXNzaWduKCdwcm9wZXJ0aWVzJywkcHJvcGVydGllcyk7CgppZihpbmlfZ2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicpKQogIHsKICAgIGluaV9zZXQoJ3psaWIub3V0cHV0X2NvbXByZXNzaW9uJywgJ09mZicpOwogIH0KCmlmKCFpbmlfZ2V0X2Jvb2xlYW4oJ3NhZmVfbW9kZScpKQogIHsKICAgIHNldF90aW1lX2xpbWl0KDApOwogIH0KCi8vIGdldCB0aGUgZGF0YQokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7IApmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQokZGF0YSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2dyb3VwX3htbC50cGwnKTsKCmhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsKaGVhZGVyKCdFeHBpcmVzOiAwJyk7CmhlYWRlcignQ2FjaGUtQ29udHJvbDogbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wJyk7CmhlYWRlcignQ2FjaGUtQ29udHJvbDogcHJpdmF0ZScsZmFsc2UpOwpoZWFkZXIoJ0NvbnRlbnQtRGVzY3JpcHRpb246IEZpbGUgVHJhbnNmZXInKTsKaGVhZGVyKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScpOwpoZWFkZXIoIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJGZpbGVuYW1lXCIiICk7CmhlYWRlcignQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmluYXJ5Jyk7CmhlYWRlcignQ29udGVudC1MZW5ndGg6ICcgLiBzdHJsZW4oJGRhdGEpKTsKZWNobyAkZGF0YTsKCkBmbHVzaCgpOyBAb2JfZmx1c2goKTsgQG9iX2ZsdXNoKCk7Ci8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_importgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCAkZ0NtcyApICkgcmV0dXJuOwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0Z3JvdXBzJykgKSByZXR1cm47CgpmdW5jdGlvbiBjaGVja19ncm91cF9jb21wbGV0ZSggJiRncnAgKQp7CiAgaWYoICFpc19hcnJheSggJGdycCApICkgCiAgICB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICBpZighaXNzZXQoJGdycFsnbmFtZSddKSB8fCBlbXB0eSgkZ3JwWyduYW1lJ10pKQogICAgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgCiAgLy8gcGFzc2VkCiAgaWYoICFpc3NldCgkZ3JwWydwcm9wZXJ0aWVzJ10pIHx8ICFpc19hcnJheSgkZ3JwWydwcm9wZXJ0aWVzJ10pIHx8CiAgICAgIChjb3VudCgkZ3JwWydwcm9wZXJ0aWVzJ10pID09IDApICkKICAgIHsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICBmb3JlYWNoKCAkZ3JwWydwcm9wZXJ0aWVzJ10gYXMgJG9uZXByb3AgKQogICAgewogICAgICBpZiggIWNoZWNrX3Byb3BlcnR5X2NvbXBsZXRlKCAkb25lcHJvcCApICkKCXsKCSAgcmV0dXJuIGZhbHNlOwoJfQogICAgfQoKICByZXR1cm4gdHJ1ZTsKfQoKCmZ1bmN0aW9uIGNoZWNrX3Byb3BlcnR5X2NvbXBsZXRlKCAmJHByb3AgKQp7CiAgaWYoICFpc19hcnJheSggJHByb3AgKSApIAogICAgewogICAgICByZXR1cm4gRkFMU0U7CiAgICB9CiAgaWYoIWlzc2V0KCRwcm9wWyduYW1lJ10pIHx8IGVtcHR5KCRwcm9wWyduYW1lJ10pKQogICAgewogICAgICByZXR1cm4gRkFMU0U7CiAgICB9CiAgaWYoIWlzc2V0KCRwcm9wWyd0eXBlJ10pIHx8ICRwcm9wWyd0eXBlJ10gPT0gJycpCiAgICB7CiAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KICBpZighaXNzZXQoJHByb3BbJ3Byb21wdCddKSB8fCBlbXB0eSgkcHJvcFsncHJvbXB0J10pKQogICAgewogICAgICByZXR1cm4gRkFMU0U7CiAgICB9CiAgaWYoIWlzc2V0KCRwcm9wWydzb3J0b3JkZXInXSkgfHwgZW1wdHkoJHByb3BbJ3NvcnRvcmRlciddKSkKICAgIHsKICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQogIGlmKCFpc3NldCgkcHJvcFsnc3RhdHVzJ10pIHx8IGVtcHR5KCRwcm9wWydzdGF0dXMnXSkpCiAgICB7CiAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KICBpZighaXNzZXQoJHByb3BbJ2xvc3R1bmZsYWcnXSkgfHwgZW1wdHkoJHByb3BbJ2xvc3R1bmZsYWcnXSkpCiAgICB7CiAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgaWYoaXNzZXQoJHByb3BbJ2xlbmd0aCddKSkKICAgIHsKICAgICAgaWYoZW1wdHkoJHByb3BbJ2xlbmd0aCddKSkKCXsKCSAgcmV0dXJuIEZBTFNFOwoJfQogICAgICBpZihpbnR2YWwoJHByb3BbJ2xlbmd0aCddKSA9PSAwKQoJewoJICByZXR1cm4gRkFMU0U7Cgl9CiAgICB9CiAgaWYoaXNzZXQoJHByb3BbJ21heGxlbmd0aCddKSkKICAgIHsKICAgICAgaWYoZW1wdHkoJHByb3BbJ21heGxlbmd0aCddKSkKCXsKCSAgcmV0dXJuIEZBTFNFOwoJfQogICAgICBpZihpbnR2YWwoJHByb3BbJ21heGxlbmd0aCddKSA9PSAwKQoJewoJICByZXR1cm4gRkFMU0U7Cgl9CiAgICB9CgogICR0eXBlID0gaW50dmFsKCRwcm9wWyd0eXBlJ10pOwogIGlmKCAkdHlwZSA+IDYgfHwgJHR5cGUgPCAwICkgcmV0dXJuIEZBTFNFOwogIGlmKCAkdHlwZSA9PSA0IHx8ICR0eXBlID09IDUgKQogICAgewogICAgICAvLyBjaGVjayBmb3Igb3B0aW9ucwogICAgICBpZiggIWlzc2V0KCRwcm9wWydvcHRpb25zJ10pIHx8ICFpc19hcnJheSgkcHJvcFsnb3B0aW9ucyddKSApCgl7CgkgIHJldHVybiBGQUxTRTsKCX0KCiAgICAgIGZvcmVhY2goICRwcm9wWydvcHRpb25zJ10gYXMgJG9uZW9wICkKCXsKCSAgaWYoICFpc3NldCgkb25lb3BbJ25hbWUnXSkgfHwgIWlzc2V0KCRvbmVvcFsndGV4dCddKSApCgkgICAgewoJICAgICAgcmV0dXJuIEZBTFNFOwoJICAgIH0KCX0KICAgIH0KCiAgcmV0dXJuIFRSVUU7Cn0KCmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApCiAgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3RzdXBwb3J0ZWQnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIH0KCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgJHBhcm1zID0gYXJyYXkoJ2FjdGl2ZV90YWInPT4nZ3JvdXBzJyk7CiAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcm1zICk7CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdCddICkgKQogIHsKICAgIC8vCiAgICAvLyBTdWJtaXQgd2FzIHByZXNzZWQKICAgIC8vCiAgICBpZiggIWlzc2V0KCAkX0ZJTEVTWyRpZC4neG1sZmlsZSddICkgKQogICAgICB7CgkkcGFybXMgPSBhcnJheSgpOwoJJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKCSRwYXJtc1snZXJyb3InXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX3VwbG9hZCcpOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CglyZXR1cm47CiAgICAgIH0KICAgICR0aGVmaWxlID0mICRfRklMRVNbJGlkLid4bWxmaWxlJ107CiAgICBpZiggJHRoZWZpbGVbJ3R5cGUnXSAhPSAndGV4dC94bWwnIHx8CgkkdGhlZmlsZVsnc2l6ZSddID09IDAgfHwKCSR0aGVmaWxlWydlcnJvciddICE9IDAgKQogICAgICB7CgkkcGFybXMgPSBhcnJheSgpOwoJJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKCSRwYXJtc1snZXJyb3InXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9wcm9ibGVtX3VwbG9hZCcpOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLwogICAgLy8gV2UgZ290IGFuIFhNTCBmaWxlIChob3BlIGl0J3MgdGhlIHJpZ2h0IG9uZQogICAgLy8gbm93IHdlIGNhbiB0cnkgdG8gcGFyc2UgaXQgCiAgICAvLwoKICAgICR4bWwgPSBmaWxlX2dldF9jb250ZW50cyggJHRoZWZpbGVbJ3RtcF9uYW1lJ10gKTsKICAgICRwYXJzZXIgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOwogICAgJHJldCA9IHhtbF9wYXJzZV9pbnRvX3N0cnVjdCggJHBhcnNlciwgJHhtbCwgJHZhbCwgJHh0ICk7CiAgICB4bWxfcGFyc2VyX2ZyZWUoICRwYXJzZXIgKTsKCiAgICBpZiggJHJldCA9PSAwICkKICAgICAgewoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfYmFkX3htbCcpLicgMSc7CgkkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vCiAgICAvLyBXZSBoYXZlIHNvbWUga2luZCBvZiB2YWxpZCBYTUwKICAgIC8vCiAgICAkb25lcHJvcGVydHkgPSBhcnJheSgpOwogICAgJG9uZW9wdGlvbiA9IGFycmF5KCk7CiAgICAkaGF2ZV9jb21wbGV0ZV9ncm91cCA9IGZhbHNlOwogICAgJGdycF9pbmZvID0gYXJyYXkoKTsKICAgIGZvcmVhY2goICR2YWwgYXMgJGVsZW0gKQogICAgICB7CgkkdmFsdWUgPSAoaXNzZXQoJGVsZW1bJ3ZhbHVlJ10pPyRlbGVtWyd2YWx1ZSddOicnKTsKCSR0eXBlID0gKGlzc2V0KCRlbGVtWyd0eXBlJ10pPyRlbGVtWyd0eXBlJ106JycpOwoJJHRhZyA9IHN0cnRvbG93ZXIoJGVsZW1bJ3RhZyddKTsKCSRmbGQgPSBzdWJzdHIoJHRhZyxzdHJwb3MoJHRhZywnXycpKzEpOwoKCXN3aXRjaCggJHRhZyApCgkgIHsKCSAgY2FzZSAnZmV1X2dyb3VwJzoKCSAgICB7CgkgICAgICBpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CgkgICAgICBpZiggIWNoZWNrX2dyb3VwX2NvbXBsZXRlKCRncnBfaW5mbykgKQoJCXsKCQkgIC8vIGFuIGVycm9yIHRoYXQgd2Ugc2hvdWxkIG5ldmVyIGdldAoJCSAgJHBhcm1zID0gYXJyYXkoKTsKCQkgICRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkJICAkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfYmFkX3htbCcpLicgMic7CgkJICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCQkgIHJldHVybjsKCQl9CgkgICAgICAvLyB3ZSBzaG91bGQgaGF2ZSBhIGNvbXBsZXRlIGdyb3VwIGF0IHRoaXMgcG9pbnQKCSAgICAgICRoYXZlX2NvbXBsZXRlX2dyb3VwID0gdHJ1ZTsKCSAgICAgIGJyZWFrOwoJICAgIH0KCgkgIGNhc2UgJ2dycF9uYW1lJzoKCSAgY2FzZSAnZ3JwX2Rlc2NyaXB0aW9uJzoKCSAgICB7CgkgICAgICBpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CgkgICAgICBpZiggaXNzZXQoJGdycF9pbmZvWyRmbGRdKSApCgkJewoJCSAgLy8gYW4gZXJyb3IgdGhhdCB3ZSBzaG91bGQgbmV2ZXIgZ2V0CgkJICAkcGFybXMgPSBhcnJheSgpOwoJCSAgJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKCQkgICRwYXJtc1snZXJyb3InXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyAzJzsKCQkgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCAkcGFybXMpOwoJCSAgcmV0dXJuOwoJCX0KCSAgICAgICRncnBfaW5mb1skZmxkXSA9ICR2YWx1ZTsKCSAgICAgIGJyZWFrOwoJICAgIH0KCgoJICBjYXNlICdwcm9wZXJ0eSc6CgkgICAgewoJICAgICAgaWYoICR0eXBlICE9ICdjb21wbGV0ZScgJiYgJHR5cGUgIT0gJ2Nsb3NlJyApIGNvbnRpbnVlOwoJICAgICAgaWYoICFjaGVja19wcm9wZXJ0eV9jb21wbGV0ZSgkb25lcHJvcGVydHkpICkKCQl7CgkJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCQkgICRwYXJtcyA9IGFycmF5KCk7CgkJICAkcGFybXNbJ2FjdGl2ZV90YWInXSA9ICdncm91cHMnOwoJCSAgJHBhcm1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2JhZF94bWwnKS4nIDQnOwoJCSAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CgkJICByZXR1cm47CgkJfQoJICAgICAgaWYoICFpc3NldCgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgKQoJCXsKCQkgICRncnBfaW5mb1sncHJvcGVydGllcyddID0gYXJyYXkoKTsKCQl9CgkgICAgICAkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXVtdID0gJG9uZXByb3BlcnR5OwoJICAgICAgJG9uZXByb3BlcnR5ID0gYXJyYXkoKTsKCSAgICAgIGJyZWFrOwoJICAgIH0KCgkgIGNhc2UgJ3Byb3BfbmFtZSc6CgkgIGNhc2UgJ3Byb3BfcHJvbXB0JzoKCSAgY2FzZSAncHJvcF92YWx1ZSc6CgkgIGNhc2UgJ3Byb3BfdHlwZSc6CgkgIGNhc2UgJ3Byb3BfbGVuZ3RoJzoKCSAgY2FzZSAncHJvcF9tYXhsZW5ndGgnOgoJICBjYXNlICdwcm9wX3NvcnRvcmRlcic6CgkgIGNhc2UgJ3Byb3Bfc3RhdHVzJzoKCSAgY2FzZSAncHJvcF9sb3N0dW5mbGFnJzoKCSAgICB7CgkgICAgICBpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CgkgICAgICBpZiggaXNzZXQoICRvbmVwcm9wZXJ0eVskZmxkXSApICkKCQl7CgkJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCQkgICRwYXJtcyA9IGFycmF5KCk7CgkJICAkcGFybXNbJ2FjdGl2ZV90YWInXSA9ICdncm91cHMnOwoJCSAgJHBhcm1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2JhZF94bWwnKS4nIDUnOwoJCSAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CgkJICByZXR1cm47CgkJfQoJICAgICAgJG9uZXByb3BlcnR5WyRmbGRdID0gJHZhbHVlOwoJICAgICAgYnJlYWs7CgkgICAgfQoKCSAgY2FzZSAncHJvcF9vcHRpb24nOgoJICAgIHsKCSAgICAgIGlmKCAkdHlwZSAhPSAnY29tcGxldGUnICYmICR0eXBlICE9ICdjbG9zZScgKSBjb250aW51ZTsKCSAgICAgICRvbmVwcm9wZXJ0eVsnb3B0aW9ucyddW10gPSAkb25lb3B0aW9uOwoJICAgICAgJG9uZW9wdGlvbiA9IGFycmF5KCk7CgkgICAgICBicmVhazsKCSAgICB9CgoJICBjYXNlICdvcF9uYW1lJzoKCSAgY2FzZSAnb3BfdGV4dCc6CgkgICAgewoJICAgICAgaWYoICR0eXBlICE9ICdjb21wbGV0ZScgJiYgJHR5cGUgIT0gJ2Nsb3NlJyApIGNvbnRpbnVlOwoJICAgICAgJG9uZW9wdGlvblskZmxkXSA9ICR2YWx1ZTsKCSAgICAgIGJyZWFrOwoJICAgIH0KCSAgfSAvLyBzd2l0Y2gKICAgICAgfSAvLyBmb3JlYWNoCgogICAgLy8KICAgIC8vIElmIHdlIGdvdCBoZXJlLCB3ZSBwYXJzZWQgdGhlIHhtbCBmaWxlIHByb3Blcmx5CiAgICAvLyBhbmQgaXQgbG9va3MgZ29vZC4KICAgIC8vCgogICAgLy8gSWYgdGhlIG5ld25hbWUgaXMgc2V0LCB3ZSdsbCB1c2UgdGhhdAogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25ld25hbWUnXSkgJiYKCSRwYXJhbXNbJ2lucHV0X25ld25hbWUnXSAhPSAnJyApCiAgICAgIHsKCSRncnBfaW5mb1snbmFtZSddID0gJHBhcmFtc1snaW5wdXRfbmV3bmFtZSddOwogICAgICB9CgogICAgaWYoICR0aGlzLT5Hcm91cEV4aXN0c0J5TmFtZSggJGdycF9pbmZvWyduYW1lJ10gKSApCiAgICAgIHsKCS8vIGFuIGVycm9yIHRoYXQgd2Ugc2hvdWxkIG5ldmVyIGdldAoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfZ3JvdXBleGlzdHMnKTsKCSR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCAkcGFybXMpOwoJcmV0dXJuOwogICAgICB9CgogICAgaWYoICFpc3NldCgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgfHwKCSFpc19hcnJheSgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgfHwKCShjb3VudCgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgPT0gMCkgKQogICAgICB7CgkvLyBubyBwcm9wZXJ0aWVzPwoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcHJvcGVydGllcycpOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyBOb3cgYWRkIHRoZSBwcm9wZXJ0aWVzCiAgICAvLyAoZmlyc3Qgc2NhbiBmb3IgbmFtZXMpCiAgICAkcGFzc2VkID0gdHJ1ZTsKICAgIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkKICAgICAgewoJJHJlcyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRvbmVwcm9wWyduYW1lJ10gKTsKCWlmKCBpc19hcnJheSgkcmVzKSApCgkgIHsKCSAgICAkcGFzc2VkID0gZmFsc2U7CgkgICAgYnJlYWs7CgkgIH0KICAgICAgfQogICAgaWYoICEkcGFzc2VkICkKICAgICAgewoJLy8gbm8gcHJvcGVydGllcz8KCSRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ2FjdGl2ZV90YWInXSA9ICdncm91cHMnOwoJJHBhcm1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJyk7CgkkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCXJldHVybjsKICAgICAgfQoKICAgIC8vCiAgICAvLyBOb3cgcmVhbGx5IGFkZCB0aGVtCiAgICAvLwogICAgZm9yZWFjaCggJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10gYXMgJG9uZXByb3AgKQogICAgICB7CgkkcmVzID0gJHRoaXMtPkFkZFByb3BlcnR5RGVmbigkb25lcHJvcFsnbmFtZSddLAoJCQkJICAgICAgJG9uZXByb3BbJ3Byb21wdCddLAoJCQkJICAgICAgJG9uZXByb3BbJ3R5cGUnXSwKCQkJCSAgICAgICRvbmVwcm9wWydsZW5ndG4nXSwKCQkJCSAgICAgICRvbmVwcm9wWydtYXhsZW5ndGgnXSk7CglpZiggaXNfYXJyYXkoICRyZXMgKSAmJiAkcmVzWzBdID09PSBGQUxTRSApCgkgIHsKCSAgICAvLyBmb3Igc29tZSBkdW1iIHJlYXNvbiwgd2Ugc3RpbGwgY291bGRuJ3QgaW5zZXJ0IAoJICAgIC8vIHRoZSBwcm9wZXJ0eQoJICAgICRwYXJtcyA9IGFycmF5KCk7CgkgICAgJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKCSAgICAkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZHByb3AnKTsKCSAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCSAgICByZXR1cm47CgkgIH0KCglpZiggJG9uZXByb3BbJ3R5cGUnXSA9PSA0IHx8ICRvbmVwcm9wWyd0eXBlJ10gPT0gNSApCgkgIHsKCSAgICAvLyBpdCdzIGEgc2VsZWN0IHR5cGUKCSAgICAkb3BzID0gYXJyYXkoKTsKCSAgICBmb3JlYWNoKCAkb25lcHJvcFsnb3B0aW9ucyddIGFzICRvbmVvcCApCgkgICAgICB7CgkJJG9wc1tdID0gJG9uZW9wWyd0ZXh0J10uJz0nLiRvbmVvcFsnbmFtZSddOwoJICAgICAgfQoJICAgICRyZXMgPSAkdGhpcy0+QWRkU2VsZWN0T3B0aW9ucyggJG9uZXByb3BbJ25hbWUnXSwgJG9wcyApOwoJICAgIGlmKCAkcmVzWzBdID09IEZBTFNFICkKCSAgICAgIHsKCQkvLyBmb3Igc29tZSBkdW1iIHJlYXNvbiwgd2Ugc3RpbGwgY291bGRuJ3QgaW5zZXJ0IAoJCS8vIHRoZSBwcm9wZXJ0eQoJCSRwYXJtcyA9IGFycmF5KCk7CgkJJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKCQkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZHByb3AnKTsKCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCQlyZXR1cm47CgkgICAgICB9CgkgIH0KICAgICAgfQoKICAgIC8vIFdvb2hvbywgdGhlIHByb3BlcnRpZXMgd2VyZSBhZGRlZAogICAgLy8gTm93IHRvIGFkZCB0aGUgZ3JvdXAgaXRzZWxmLgogICAgJHJlcyA9ICR0aGlzLT5BZGRHcm91cCgkZ3JwX2luZm9bJ25hbWUnXSwKCQkJICAgJGdycF9pbmZvWydkZXNjcmlwdGlvbiddKTsKICAgIGlmKCBpc19hcnJheSggJHJlcyApICYmICRyZXNbMF0gPT09IEZBTFNFICkKICAgICAgewoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwJyk7CgkkdGhpcy0+UmVkaXJlY3QoJGlkLCdkZWZhdWx0YWRtaW4nLCRyZXR1cm5pZCwgJHBhcm1zKTsKCXJldHVybjsKICAgICAgfQogICAgJGdycGlkID0gJHJlc1sxXTsKCiAgICAvLyBhbmQgYXNzb2NpYXRlIHRoZSBwcm9wZXJ0aWVzIHdpdGggdGhlIGdyb3VwCiAgICAkZXJyb3IgPSBmYWxzZTsKICAgIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkKICAgICAgewoJLy8gaWYgaXQncyBhbiBvcHRpb24gdHlwZSAodHlwZSA0IG9yIDUpIHRoZW4KCS8vIGFkZCB0aGUgb3B0aW9ucwoJJHJlcyA9ICR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgCgkJCQkJCSRvbmVwcm9wWyduYW1lJ10sCgkJCQkJCSRvbmVwcm9wWydzb3J0b3JkZXInXSwgCgkJCQkJCSRvbmVwcm9wWydsb3N0dW5mbGFnJ10sIAoJCQkJCQknJyApOwoJaWYoICRyZXNbMF0gPT09IEZBTFNFICkKCSAgewoJICAgICRlcnJvciA9IHRydWU7CgkgIH0KICAgICAgfQogICAgaWYoICRlcnJvciA9PSB0cnVlICkKICAgICAgewoJJHBhcm1zID0gYXJyYXkoKTsKCSRwYXJtc1snYWN0aXZlX3RhYiddID0gJ2dyb3Vwcyc7CgkkcGFybXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwcmVsbicpOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsICRwYXJtcyk7CglyZXR1cm47CiAgICAgIH0KCiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHBhcm1zWydhY3RpdmVfdGFiJ10gPSAnZ3JvdXBzJzsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkLCRwYXJtcyk7CiAgfSAvLyBpZgoKLy8gUHJvdmlkZSBhIHNpbXBsZSBmb3JtIHRoYXQgYWxsb3dzIHBlb3BsZSB0byBjaG9vc2UgdGhlIGZpbGUgdG8gaW1wb3J0CiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5faW1wb3J0Z3JvdXAnLCRyZXR1cm5pZCwKCQkJCSAgICAgICAncG9zdCcsJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZmlsZW5hbWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfaW1wb3J0eG1sZmlsZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9maWxlbmFtZScsCgkJJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ3htbGZpbGUnLCcnLDQwKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X25ld25hbWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbmV3Z3JvdXBuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X25ld25hbWUnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9uZXduYW1lJykpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdpbXBvcnRncm91cC50cGwnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojQkVHSU5fTElDRU5TRQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRnJvbnRFbmRVc2VycyAoYykgMjAwOCBieSBSb2JlcnQgQ2FtcGJlbGwgCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAojICB1c2VycywgYW5kIHRoZWlyIGxvZ2luIHByb2Nlc3Mgd2l0aGluIGEgQ01TIE1hZGUgU2ltcGxlIHBvd2VyZWQgCiMgIHdlYnNpdGUuCiMgCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHVzZXJzJykgKSB7CglpZiggaXNzZXQoJHBhcmFtc1sndXNlcl9pZCddKSApIHsKCQkkdGhpcy0+TG9nb3V0VXNlcigkcGFyYW1zWyd1c2VyX2lkJ10sCgkJCQkJCQkJCQkJJHRoaXMtPkxhbmcoJ2FkbWluX2xvZ291dCcpKTsKCX0KfQoJCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwndXNlcnMnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_resetsession_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgcmV0dXJuOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2RlZmF1bHRzJ10pICkKICB7CiAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZS50cGwnKTsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CgkkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAncmVzZXRfc2Vzc2lvbicgKTsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkKICB7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfcmVzZXRzZXNzaW9uJyx0cmltKCRwYXJhbXNbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAncmVzZXRfc2Vzc2lvbicgKTsKICAgIHJldHVybjsKICB9CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_setlostun_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgcmV0dXJuOwoKaWYoIGlzc2V0KCAkcGFyYW1zWydkZWZhdWx0cyddICkgKQogIHsKICAgIC8vCiAgICAvLyBSZXNldCB0byBmYWN0b3J5IGRlZmF1bHRzCiAgICAvLwogICAgJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ19sb3N0dW5mb3JtX3RlbXBsYXRlLnRwbCcpOwogICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgICAgIHsKCSR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2xvc3R1bmZvcm0nLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCgogICAgJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ19sb3N0dW5mb3JtX2NvbmZpcm1fdGVtcGxhdGUudHBsJyk7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJywkdGVtcGxhdGUpOwogICAgICB9CgogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoICRpZCwgJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZScgKTsKICAgIHJldHVybjsKICB9CgoKaWYoIGlzc2V0KCAkcGFyYW1zWydzdWJtaXQnXSApICkKICB7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybScsdHJpbSgkcGFyYW1zWydsb3N0dW5mb3JtJ10pKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19sb3N0dW5mb3JtX2NvbmZpcm0nLHRyaW0oJHBhcmFtc1snbG9zdHVuZm9ybV9jb25maXJtJ10pKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICdsb3N0dXNlcm5hbWVfdGVtcGxhdGUnICk7CiAgICByZXR1cm47CiAgfQoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_setviewuser_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd0ZW1wbGF0ZXMnKSApIHJldHVybjsKCmlmKCBpc3NldCgkcGFyYW1zWydkZWZhdWx0cyddKSApCiAgewogICAgJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwndGVtcGxhdGVzJywnb3JpZ192aWV3dXNlcl90ZW1wbGF0ZS50cGwnKTsKICAgIGlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogICAgICB7CgkkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc192aWV3dXNlcicsJHRlbXBsYXRlKTsKICAgICAgfQoKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICd2aWV3X3VzZXInICk7CiAgICByZXR1cm47CiAgfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApCiAgewogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX3ZpZXd1c2VyJyx0cmltKCRwYXJhbXNbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10pKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICd2aWV3X3VzZXInICk7CiAgICByZXR1cm47CiAgfQovKgogKiBFT0YKICovCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_set_auth.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIHJldHVybjsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgcmV0dXJuOwokdGhpcy0+U2V0Q3VycmVudFRhYignYXV0aCcpOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N1cHBvcnRfbG9zdHVuJywoaW50KSRwYXJhbXNbJ3N1cHBvcnRfbG9zdHVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0cHcnLChpbnQpJHBhcmFtc1snc3VwcG9ydF9sb3N0cHcnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcsKGludCkkcGFyYW1zWydwd2ZsZGxlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ21pbl9wYXNzd29yZGxlbmd0aCcsKGludCkkcGFyYW1zWydtaW5wd2xlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcsKGludCkkcGFyYW1zWydtYXhwd2xlbiddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJywoaW50KSRwYXJhbXNbJ3VuZmxkbGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3VzZXJuYW1lbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21pbnVubGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21heHVubGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsKGludCkkcGFyYW1zWydjb29raWVfa2VlcGFsaXZlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlY29va2llc3RvcmVtZW1iZXInLChpbnQpJHBhcmFtc1sndXNlY29va2llc3RvcmVtZW1iZXInXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJyx0cmltKCRwYXJhbXNbJ2Nvb2tpZW5hbWUnXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnLChpbnQpJHBhcmFtc1sndXNlcm5hbWVfaXNfZW1haWwnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJywoaW50KSRwYXJhbXNbJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJywoaW50KSRwYXJhbXNbJ2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSk7CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2lnbmluX2J1dHRvbicsdHJpbSgkcGFyYW1zWydzaWduaW5fYnV0dG9uJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsdHJpbSgkcGFyYW1zWydyZXF1aXJlZF9maWVsZF9tYXJrZXInXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLHRyaW0oJHBhcmFtc1sncmVxdWlyZWRfZmllbGRfY29sb3InXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX21hcmtlcicsdHJpbSgkcGFyYW1zWydoaWRkZW5fZmllbGRfbWFya2VyJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9jb2xvcicsdHJpbSgkcGFyYW1zWydoaWRkZW5fZmllbGRfY29sb3InXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnc2VjdXJlX2ZpZWxkX21hcmtlcicsdHJpbSgkcGFyYW1zWydzZWN1cmVfZmllbGRfbWFya2VyJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9jb2xvcicsdHJpbSgkcGFyYW1zWydzZWN1cmVfZmllbGRfY29sb3InXSkpOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3RodW1ibmFpbF9zaXplJywoaW50KSRwYXJhbXNbJ3RodW1ibmFpbF9zaXplJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkZm9yZ290cGFzc3dkJyx0cmltKCRwYXJhbXNbJ3BhZ2VpZGZvcmdvdHBhc3N3ZCddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnLHRyaW0oJHBhcmFtc1sncGFnZWlkX2NoYW5nZXNldHRpbmdzJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsdHJpbSgkcGFyYW1zWydwYWdlaWRfbG9naW4nXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcsdHJpbSgkcGFyYW1zWydwYWdlaWRfbG9nb3V0J10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScsdHJpbSgkcGFyYW1zWydwYWdlaWRfYWZ0ZXJ2ZXJpZnknXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnLHRyaW0oJHBhcmFtc1sncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnXSkpOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2Vjb21tX29yZGVyY2FuY2VsbGVkJ10pICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJjYW5jZWxsZWQnLHRyaW0oJHBhcmFtc1snZWNvbW1fb3JkZXJjYW5jZWxsZWQnXSkpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyZGVsZXRlZCcsdHJpbSgkcGFyYW1zWydlY29tbV9vcmRlcmRlbGV0ZWQnXSkpOwogIH0KJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTs=]]></data>
	</file>
	<file>
	  <filename>/action.changesettings_url.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgpmdW5jdGlvbiBfRGlzcGxheUFkbWluTG9naW5UZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCnsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldGxvZ2ludGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZScsJG1vZHVsZS0+TGFuZygndGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlJywKCQkJICAkbW9kdWxlLT5DcmVhdGVUZXh0QXJlYSggZmFsc2UsICRpZCwKCQkJCQkJICAgJG1vZHVsZS0+R2V0VGVtcGxhdGUgKCdmZXVzZXJzX2xvZ2luZm9ybScpLAoJCQkJCQkgICAndGVtcGxhdGVsb2dpbmZvcm0nKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAgICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdkZWZhdWx0cycpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGUoJ3RlbXBsYXRlZm9ybS50cGwnKTsKfQoKCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5Mb2dvdXRUZW1wbGF0ZVRhYiggJiRtb2R1bGUsICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCnsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJICAkbW9kdWxlLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldGxvZ291dHRlbXBsYXRlJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUnLCRtb2R1bGUtPkxhbmcoJ3RlbXBsYXRlJykpOwogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZScsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnZmV1c2Vyc19sb2dvdXRmb3JtJyksCgkJCQkJCSAgICd0ZW1wbGF0ZWxvZ291dGZvcm0nKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAgICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdkZWZhdWx0cycpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGUoJ3RlbXBsYXRlZm9ybS50cGwnKTsKfQoKCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5DaGFuZ2VTZXR0aW5nc1RlbXBsYXRlVGFiKCAmJG1vZHVsZSwgJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKewogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZG9fc2V0Y2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZScpKTsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlJywkbW9kdWxlLT5MYW5nKCd0ZW1wbGF0ZScpKTsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbignaW5wdXRfdGVtcGxhdGUnLAoJCQkgICRtb2R1bGUtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkJCQkgICAkbW9kdWxlLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfY2hhbmdlc2V0dGluZ3Nmb3JtJyksCgkJCQkJCSAgICd0ZW1wbGF0ZWNvbnRlbnQnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAgICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdkZWZhdWx0cycpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGUoJ3RlbXBsYXRlZm9ybS50cGwnKTsKfQoKCmZ1bmN0aW9uIF9EaXNwbGF5QWRtaW5Gb3Jnb3RQYXNzd29yZFRlbXBsYXRlVGFiKCAmJG1vZHVsZSwgJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKewogICRtb2R1bGUtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCQkgICRtb2R1bGUtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZG9fc2V0Zm9yZ290cHd0ZW1wbGF0ZScpKTsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlMScsJG1vZHVsZS0+TGFuZygnZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMScsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nKSwKCQkJCQkJICAgJ3RlbXBsYXRlY29udGVudDEnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZTInLCRtb2R1bGUtPkxhbmcoJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMicsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScpLAoJCQkJCQkgICAndGVtcGxhdGVjb250ZW50MicpKTsKICAkbW9kdWxlLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlMycsJG1vZHVsZS0+TGFuZygnZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMycsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCQkJCSAgICRtb2R1bGUtPkdldFRlbXBsYXRlICgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nKSwKCQkJCQkJICAgJ3RlbXBsYXRlY29udGVudDMnKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJCSAgJG1vZHVsZS0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsCgkJCQkJCSAgICAgICRtb2R1bGUtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkJICAkbW9kdWxlLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnZGVmYXVsdHMnLAoJCQkJCQkgICAgICAkbW9kdWxlLT5MYW5nKCdkZWZhdWx0cycpKSk7CiAgJG1vZHVsZS0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCRtb2R1bGUtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgZWNobyAkbW9kdWxlLT5Qcm9jZXNzVGVtcGxhdGUoJ2ZvcmdvdHB3X3RlbXBsYXRlZm9ybS50cGwnKTsKfQoKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIERPIFRIRSBBQ1RJT04KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKZ2xvYmFsICRnQ21zOwppZiAoISAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygpKSAgewogIGVjaG8gIkJyZWFraW5nIGFuIGVudHJ5LCBhcmUgd2U/IjsKICByZXR1cm47CiB9CgokZGIgPSYgJHRoaXMtPkdldERiKCk7CgoKLy8gdGhlIHRhYnMKZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzKCk7CgppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3Byb3BlcnRpZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAncHJvcGVydGllcycsICR0aGlzLT5MYW5nKCd1c2VyX3Byb3BlcnRpZXMnKSk7CiAgfQppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzbmdyb3VwcycpICkKICB7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdncm91cHMnLCAkdGhpcy0+TGFuZygnZ3JvdXBzJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndXNlcnMnLCAkdGhpcy0+TGFuZygndXNlcnMnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICd1c2VyaGlzdG9yeScsICR0aGlzLT5MYW5nKCd1c2VyaGlzdG9yeScpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ2FkbWluJywgJHRoaXMtPkxhbmcoJ2FkbWluJykpOwogIH0KaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdzaXRlcHJlZnMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAncHJlZnMnLCAkdGhpcy0+TGFuZygncHJlZmVyZW5jZXMnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdhdXRoJywgJHRoaXMtPkxhbmcoJ2F1dGhlbnRpY2F0aW9uJykpOwogIH0KaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd0ZW1wbGF0ZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnbG9naW50ZW1wbGF0ZScsICR0aGlzLT5MYW5nKCdsb2dpbl90ZW1wbGF0ZScpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ2xvZ291dHRlbXBsYXRlJywgJHRoaXMtPkxhbmcoJ2xvZ291dF90ZW1wbGF0ZScpKTsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJywgJHRoaXMtPkxhbmcoJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygnZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnKSk7CiAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdsb3N0dXNlcm5hbWVfdGVtcGxhdGUnLCAkdGhpcy0+TGFuZygnbG9zdHVzZXJuYW1lX3RlbXBsYXRlJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndmlld191c2VyJywgJHRoaXMtPkxhbmcoJ3ZpZXd1c2VyX3RlbXBsYXRlJykpOwogICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAncmVzZXRfc2Vzc2lvbicsICR0aGlzLT5MYW5nKCdyZXNldHNlc3Npb25fdGVtcGxhdGUnKSk7CgogIH0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKLy8gVGhlY29udGVudCBvZiB0aGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncHJvcGVydGllcycpICkKICB7CiAgICBlY2hvICR0aGlzLT5TdGFydFRhYigncHJvcGVydGllcycsJHBhcmFtcyk7CiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fcHJvcGVydGllc3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwogIH0KICAgIAppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzbmdyb3VwcycpICkKICB7CiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignZ3JvdXBzJywkcGFyYW1zKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9ncm91cHN0YWIucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYigndXNlcnMnLCRwYXJhbXMpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3VzZXJzdGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3VzZXJoaXN0b3J5JywkcGFyYW1zKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9hY3Rpb24udXNlcmhpc3RvcnkucGhwJyk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignYWRtaW4nLCRwYXJhbXMpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2FkbWludGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgfQoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdzaXRlcHJlZnMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3ByZWZzJywkcGFyYW1zKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9wcmVmc3RhYi5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdhdXRoJywkcGFyYW1zKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9hdXRodGFiLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CiAgfQoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd0ZW1wbGF0ZXMnKSApCiAgewogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2xvZ2ludGVtcGxhdGUnLCRwYXJhbXMpOwogICAgX0Rpc3BsYXlBZG1pbkxvZ2luVGVtcGxhdGVUYWIoICR0aGlzLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2xvZ291dHRlbXBsYXRlJywkcGFyYW1zKTsKICAgIF9EaXNwbGF5QWRtaW5Mb2dvdXRUZW1wbGF0ZVRhYiggJHRoaXMsICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgICBlY2hvICR0aGlzLT5TdGFydFRhYignY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnLCRwYXJhbXMpOwogICAgX0Rpc3BsYXlBZG1pbkNoYW5nZVNldHRpbmdzVGVtcGxhdGVUYWIoICR0aGlzLCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJywkcGFyYW1zKTsKICAgIF9EaXNwbGF5QWRtaW5Gb3Jnb3RQYXNzd29yZFRlbXBsYXRlVGFiKCAkdGhpcywgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdsb3N0dXNlcm5hbWVfdGVtcGxhdGUnLCRwYXJhbXMpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2xvc3R1c2VybmFtZV90ZW1wbGF0ZS5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwoKICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCd2aWV3X3VzZXInLCRwYXJhbXMpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3ZpZXd1c2VyX3RlbXBsYXRlLnBocCcpOwogICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3Jlc2V0X3Nlc3Npb24nLCRwYXJhbXMpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZS5waHAnKTsKICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOwogIH0KCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnYWRkZ3JvdXAnICkgKQogIHsKICAgIHJldHVybjsKICB9CgppZiggaXNzZXQoJHBhcmFtc1snc2VyaWFsaXplZCddKSApCiAgewogICAgJHBhcmFtc1snaW5wdXRfbmFtZSddID0gdW5zZXJpYWxpemUoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsKICAgICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ10gPSB1bnNlcmlhbGl6ZSgkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddKTsKICB9CgokZ3JvdXBuYW1lID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10gKSApCiAgewogICAgJGdyb3VwbmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10pOwogIH0KJGdyb3VwZGVzYyA9ICcnOwppZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2dyb3VwZGVzYyddICkgKQogIHsKICAgICRncm91cGRlc2MgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwZGVzYyddKTsKICB9CgovLyBtYWtlIHN1cmUgdGhlIHBhcmFtZXRlcnMgYXJlIGZpbGxlZCBpbgppZiggJGdyb3VwbmFtZSA9PSAnJyB8fCAkZ3JvdXBkZXNjID09ICcnICkKICB7CiAgICB1bnNldCgkcGFyYW1zWydzdWJtaXQnXSk7CiAgICAkcGFyYW1zWydlcnJvciddID0gJzEnOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIG1ha2Ugc3VyZSB0aGUgZ3JvdXAgbmFtZSBkb2Vzbid0IGFscmVhZHkgZXhpc3QKJGdpZCA9IGZhbHNlOwppZiggaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKQogIHsKICAgICRnaWQgPSAoaW50KSRwYXJhbXNbJ2dyb3VwX2lkJ107CiAgfQokdG1wID0gJHRoaXMtPkdldEdyb3VwSUQoICRncm91cG5hbWUgKTsKaWYoICR0bXAgIT0gJGdpZCAmJiAkdG1wICE9ICcnICkKICB7CiAgICB1bnNldCgkcGFyYW1zWydzdWJtaXQnXSk7CiAgICAkcGFyYW1zWydlcnJvciddID0gJzEnOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2dyb3VwZXhpc3RzJyk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgIHJldHVybjsKICB9CgovLyBtYWtlIHN1cmUgbm90IGFsbCBwcm9wZXJ0aWVzIGFyZSBvZmYuCi8vIGFuZCB0aGF0IHdlJ3JlIG5vdCBzZXR0aW5nIGEgbG9zdHVuIGZsYWcgZm9yIGEgaGlkZGVuIG9yIG9wdGlvbmFsIGZpZWxkLgokcmVsbmFkZGVkID0gMDsKZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsgJGkrKyApCiAgewogICAgaWYoICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ11bJGldICE9IDAgKQogICAgICB7CgkkcmVsbmFkZGVkKys7CiAgICAgIH0KICAgIGlmKCAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXSAhPSAyICkKICAgICAgewoJLy8gaXQncyBub3QgYSByZXF1aXJlZCBmaWVsZC4uLi4gc28gY2FuJ3QgYmUgdXNlZCBpbiBsb3N0dW4KCSRzdHIgPSAkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGldOwoJaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2xvc3R1bl8nLiRzdHJdKSApCgkgIHsKCSAgICB1bnNldCgkcGFyYW1zWydzdWJtaXQnXSk7CgkgICAgJHBhcmFtc1snZXJyb3InXSA9ICcxJzsKCSAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJyk7CgkgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CgkgICAgcmV0dXJuOwoJICB9CiAgICAgIH0KICB9CmlmKCAkcmVsbmFkZGVkID09IDAgKQogIHsKICAgIHVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9yZWxhdGlvbnMnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIHdlJ3JlIGNsZWFyIHRvIGFkZCBvciB1cGRhdGUKaWYoICRnaWQgIT09IGZhbHNlICkKICB7CiAgICAkcmV0ID0gJHRoaXMtPlNldEdyb3VwKCAkZ2lkLCAkZ3JvdXBuYW1lLCAkZ3JvdXBkZXNjICk7CiAgICBpZiggJHJldFswXSA9PSBGQUxTRSApCiAgICAgIHsKCXVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICB9CmVsc2UKICB7CiAgICAkcmV0ID0gJHRoaXMtPkFkZEdyb3VwKCAkZ3JvdXBuYW1lLCAkZ3JvdXBkZXNjICk7CiAgICBpZiggJHJldFswXSA9PSBGQUxTRSApCiAgICAgIHsKCXVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgICRnaWQgPSAkcmV0WzFdOwogIH0KCi8vIGFsc28gYWRkIHRoZSBwcm9wZXJ0eSBjaG9pY2VzCiR0aGlzLT5EZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CmZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRwYXJhbXNbJ2lucHV0X25hbWUnXSk7ICRpKysgKQogIHsKICAgICRwcm9wbmFtZSA9ICcnOwogICAgJHNvcnRvcmRlciA9ICcnOwogICAgJGxvc3R1biA9IC0xOwogICAgJHJlcXVpcmVkID0gMDsKCiAgICAkcHJvcG5hbWUgPSAkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGldOwogICAgJHJlcXVpcmVkID0gJHBhcmFtc1snaW5wdXRfcmVxdWlyZWQnXVskaV07CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2xvc3R1bl8nLiRwcm9wbmFtZV0gKSApCiAgICAgIHsKCSRsb3N0dW4gPSAxOwogICAgICB9CiAgICAKICAgIGlmKCAkcmVxdWlyZWQgIT0gMCAmJiAkcHJvcG5hbWUgIT0gJycpCiAgICAgIHsKCSR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRnaWQsICRwcm9wbmFtZSwgJGksICRsb3N0dW4sICRyZXF1aXJlZCApOwogICAgICB9CiAgfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ25hbWUnXSA9ICRncm91cG5hbWU7CiRwYXJtc1snZGVzY3JpcHRpb24nXSA9ICRncm91cGRlc2M7CiRwYXJtc1snaWQnXSA9ICRnaWQ7CiRzdHIgPSAnT25DcmVhdGVHcm91cCc7CmlmKCBpc3NldCgkcGFyYW1zWydncm91cF9pZCddKSApCiAgewogICAgJHN0ciA9ICdPblVwZGF0ZUdyb3VwJzsKICB9CiR0aGlzLT5TZW5kRXZlbnQoJHN0ciwkcGFybXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgkc3RyLCRwYXJtcyk7CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7IAovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser1.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnYWRkdXNlcicgKSApCiAgewogICAgcmV0dXJuOwogIH0KCi8vIGFyZSB3ZSBjYW5jZWxsaW5nCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3VzZXJzJywgJHBhcmFtcyApOwogIH0KCi8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSk7CiRyZXBlYXQgICA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CgokcmV0ID0gJHRoaXMtPl9oYW5kbGVVc2VySW5mb1ZhbGlkYXRpb24oICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSwgdHJ1ZSApOwpzd2l0Y2goICRyZXQgKQogIHsKICBjYXNlIC0xOiAvLyBlcnJvcgogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkbWVzc2FnZTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKICAgIHJldHVybjsKICAgIGJyZWFrOwogIGNhc2UgMDogIC8vIG5vIGVycm9yLCBidXQgZG9uJ3QgY29udGludWUgb3BlcmF0aW9uCiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkdXNlcicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CiAgICByZXR1cm47CiAgICBicmVhazsKICBjYXNlIDE6ICAvLyBhbGwgaXMgZ29vZCwgY29udGludWUgb3BlcmF0aW9uCiAgICBicmVhazsKICB9CgoKLy8gY29udmVydCB0aGUgZXhwaXJlcyBmaWVsZCB0byBhIHJlYWwgdGltZQokZXhwaXJlcyA9IE5VTEw7CgovLyBhbmQgc3RvcmUgdGhpcyBhbGwgaW4gdGhlIHBhcmFtcywgCiRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gPSAkdXNlcm5hbWU7CiRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10gPSAkcGFzc3dvcmQ7CiRwYXJhbXNbJ2lucHV0X3JlcGVhdHBhc3N3b3JkJ10gPSAkcmVwZWF0OwoKLy8gYW5kIGdvIHRvIHN0ZXAgMgokdGhpcy0+X3BhcmFtc190b19zZXNzaW9uKCRwYXJhbXMpOyAgICAKJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCBhcnJheSgpLCB0cnVlICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8ganVzdCBhIGR1bWIgd3JhcHBlci4KaW5jbHVkZSBkaXJuYW1lKF9fRklMRV9fKS4nL2FjdGlvbi5kb19lZGl0dXNlcjIucGhwJzsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.do_adduser3.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnYWRkdXNlcicgKSApCiAgewogICAgcmV0dXJuOwogIH0KCi8vIGRvIHdlIHdhbnQgdG8gZ28gYmFjawppZiggaXNzZXQoICRwYXJhbXNbJ2JhY2snXSApICkKICB7CiAgICAvLyB5dXAgd2UgZG8KICAgICRwYXJhbXMgPSBjZ2VfYXJyYXk6OmV4cGxvZGVfd2l0aF9rZXkoICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddICk7CiAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkdXNlcicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydjYW5jZWwnXSApICkKICB7CiAgICAvLyB5dXAgd2UgZG8KICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICd1c2VycycsICRwYXJhbXMgKTsKICB9CgovLyBnZXQgZmllbGQgZGVmaW5pdGlvbnMuCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CgovLyBnZXQgdGhlIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNlbGVjdGVkIGdyb3VwKHMpLgokcGFybXMxID0gY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApOwokZ3JvdXBwcm9wcyA9IGFycmF5KCk7CiRncm91cGlkcyA9IGFycmF5KCk7CmZvcmVhY2goICRwYXJtczEgYXMgJGtleSA9PiAkdmFsdWUgKQp7CiAgaWYoIHN0YXJ0c3dpdGgoJGtleSwnbWVtYmVyb2ZfJykgKQogICAgewogICAgICAkZ2lkID0gKGludClzdWJzdHIoJGtleSxzdHJsZW4oJ21lbWJlcm9mXycpKTsKICAgICAgJGdyb3VwaWRzW10gPSAkZ2lkOwoKICAgICAgJHJlbG5zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKICAgICAgJGdyb3VwcHJvcHMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkZ3JvdXBwcm9wcywgJHJlbG5zICk7CiAgICAgIHVhc29ydCggJGdyb3VwcHJvcHMsCgkgICAgICBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKICAgIH0KfQokZ3JvdXBwcm9wcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkZ3JvdXBwcm9wcywnbmFtZScpOwoKLy8gZ2V0IHRoZSBmaWVsZCBpbmZvCiRmaWVsZGxpc3QgPSBhcnJheSgpOwpmb3JlYWNoKCAkcGFyYW1zIGFzICRrID0+ICR2ICkKewogIGlmKCBwcmVnX21hdGNoKCcvXmhpZGRlbl8vJywgJGsgKSApCiAgICB7CiAgICAgICRmbGRuYW1lID0gc3Vic3RyKCAkaywgc3RybGVuKCdoaWRkZW5fJykpOwogICAgICAkZmllbGRsaXN0WyRmbGRuYW1lXSA9ICR2OwogICAgfQp9CgovLyBub3cgbWVyZ2UgZm9ybSB2YWx1ZXMgZm9yIGVhY2ggb2YgdGhlIGZpZWxkcwpmb3JlYWNoKCAkZmllbGRsaXN0IGFzICRmbGRuYW1lID0+ICRwYXNzZWRfdmFsdWUgKQp7CiAgJHYgPSAnJzsKICBzd2l0Y2goJGRlZm5zWyRmbGRuYW1lXVsndHlwZSddKSAKICAgIHsKICAgIGNhc2UgJzgnOiAvLyBkYXRlCiAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lLidNb250aCddKSApCgl7CgkgICR2ID0gbWt0aW1lKDAsMCwwLAoJCSAgICAgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nTW9udGgnXSwKCQkgICAgICAoaW50KSRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWUuJ0RheSddLAoJCSAgICAgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nWWVhciddKTsKCX0KICAgICAgYnJlYWs7CgogICAgZGVmYXVsdDoKICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWVdKSApCgl7CgkgICR2ID0gJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZV07Cgl9CiAgICAgIGJyZWFrOwogICAgfQogIGlmKCAhZW1wdHkoJHYpICkKICAgIHsKICAgICAgJGZpZWxkbGlzdFskZmxkbmFtZV0gPSAkdjsKICAgIH0KfQoKLy8gbm93IHZhbGlkYXRlCmZvcmVhY2goICRmaWVsZGxpc3QgYXMgJG5hbWUgPT4gJHZhbHVlICkKewogIC8vIHByb2Nlc3MgZW1wdHkgcmVxdWlyZWQgZmllbGRzCiAgLy8gd2UgZG9uJ3QgY2FyZSBhYm91dCBlbXB0eSBvcHRpb25hbCBvbmVzCiAgJGRlZm4gPSYgJGRlZm5zWyRuYW1lXTsKICAkcmVsbiA9JiAgJGdyb3VwcHJvcHNbJG5hbWVdOwoKICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiApCiAgICB7CiAgICAgIC8vIHJlcXVpcmVkIGZpZWxkLgogICAgICBpZiggJGRlZm5bJ3R5cGUnXSA9PSA2ICkgLy8gSW1hZ2UgZmllbGQKCXsKCSAgaWYoICghaXNzZXQoJF9GSUxFU1skaWQuJ2lucHV0XycuJG5hbWVdKSB8fCAkX0ZJTEVTWyRpZC4naW5wdXRfJy4kbmFtZV1bJ3NpemUnXSA9PSAwKSAmJgoJICAgICAgJHZhbHVlID09ICcnKQoJICAgIHsKCSAgICAgIC8vIGEgcmVxdWlyZWQgZmllbGQgaXMgZW1wdHkKCSAgICAgICRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApKTsKCSAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKTsKCSAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwoJICAgICAgcmV0dXJuOwoJICAgIH0KCX0KICAgICAgZWxzZSBpZiggJHZhbHVlID09ICcnICkKCXsKCSAgLy8gYSByZXF1aXJlZCBmaWVsZCBpcyBlbXB0eQoJICAkcGFyYW1zID0gYXJyYXlfbWVyZ2UoICRwYXJhbXMsIGNnZV9hcnJheTo6ZXhwbG9kZV93aXRoX2tleSggJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10gKSk7CgkgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbScsJG5hbWUpOwoJICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fYWRkdXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcywgdHJ1ZSApOwoJICByZXR1cm47Cgl9CiAgICB9CgogIC8vIHZhbGlkYXRlIGZpbGxlZCBpbiBmaWVsZHMKICAvLyBhbmQgZG8gcG9zdCBwcm9jZXNzaW5nCiAgaWYoICR2YWx1ZSAhPSAnJyAmJiAkZGVmblsndHlwZSddICE9IDYgKQogICAgewogICAgICAvLyB2YWxpZGF0ZSB1bmlxdWUgdmFsdWVzCiAgICAgIGlmKCAkZGVmblsnZm9yY2VfdW5pcXVlJ10gKQoJewoJICAvLyBtYWtlIHN1cmUgdGhhdCB0aGlzIHZhbHVlIGRvZXNuJ3QgYWxyZWFkeSBleGlzdAoJICBpZiggISR0aGlzLT5Jc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKC0xLCRuYW1lLCR2YWx1ZSkgKQoJICAgIHsKCSAgICAgICRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApKTsKCSAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZScsJG5hbWUsJHZhbHVlKTsKCSAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CgkgICAgICByZXR1cm47CgkgICAgfQoJfQoKICAgICAgc3dpdGNoKCAkZGVmblsndHlwZSddICkKCXsKCWNhc2UgMDogLy8gdGV4dAoJCS8vIG5vdCBtdWNoIHdlIGNhbiBkbyB0byB2YWxpZGF0ZSBhIHRleHQgZmllbGQuCgkgIGJyZWFrOwoJY2FzZSAxOiAvLyBjaGVja2JveAoJCS8vIG9yIGEgY2hlY2tib3gKCSAgYnJlYWs7CgljYXNlIDI6IC8vIGVtYWlsCgkJLy8gZW1haWwgYWRkcmVzc2VzIGNhbiBiZSB2YWxpZGF0ZWQgdGhvdWdoCgkgIGJyZWFrOwoJY2FzZSAzOiAvLyB0ZXh0YXJlYQoJCS8vIGEgdGV4dGFyZWEgY2FuIGJlIHZhbGlkYXRlZCBmb3IgbGVuZ3RoLgoJICBicmVhazsKCWNhc2UgNDogLy8gZHJvcGRvd24KCWNhc2UgNTogLy8gbXVsdGlzZWxlY3QKCQkvLyBob3cgY2FuIHdlIHZhbGlkYXRlIGEgZHJvcGRvd24/CgkgIGJyZWFrOwoJY2FzZSA2OiAvLyBpbWFnZQoJCS8vIGltYWdlIHR5cGVzIGRvbid0IGhhdmUgYSBwYXJhbSAoZXZlbiBpZiB3ZSBoYXZlIHVwbG9hZGVkIGEgZmlsZSkKCSAgYnJlYWs7Cgl9CiAgICB9Cn0KCgovLyBnZXQgdGhlIHBhcm1zIGZyb20gdGhlIGZpcnN0IHN0ZXAKJHBhcm1zMSA9IGNnZV9hcnJheTo6ZXhwbG9kZV93aXRoX2tleSggJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10gKTsKCi8vIGFuZCBtZXJnZSBlbSBpbnRvICRwYXJhbXMgc28gd2UgY2FuIGFjdHVhbGx5IGFkZCB0aGUgdXNlciBhY2NvdW50CiRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgJHBhcm1zMSApOwoKLy8gbm93IHdlIGNhbiBhY3R1YWxseSBhZGQgdGhlIHVzZXIKJHJldCA9ICR0aGlzLT5BZGRVc2VyKCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddLCAKCQkgICAgICAgJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSwKCQkgICAgICAgJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXSApOwppZiggJHJldFswXSA9PSBGQUxTRSApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKICAgIHJldHVybjsKICB9CiR1aWQgPSAkcmV0WzFdOwoKLy8gYW5kIGFkZCBoaW0gdG8gaGlzIGdyb3Vwcwpmb3JlYWNoKCAkZ3JvdXBpZHMgYXMgJG1lbSApCnsKICBpZiggISR0aGlzLT5Bc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJG1lbSApICkKICAgIHsKICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZ3JvdXBpZCcsJG1lbSk7CiAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CiAgICAgIHJldHVybjsKICAgIH0KfQoKLy8gYW5kIGFkZCBoaXMgcHJvcGVydGllcwokdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdWlkKTsKZm9yZWFjaCggJGZpZWxkbGlzdCBhcyAkayA9PiAkdiApCnsKICAkZGVmbiA9JiAkZGVmbnNbJGtdOwogICRyZWxuID0mICRncm91cHByb3BzWyR2XTsKCQogIGlmKCAkZGVmblsndHlwZSddID09IDYgKQogICAgewogICAgICAvLyBpbWFnZSB0eXBlCiAgICAgIGlmKCBpc3NldCgkX0ZJTEVTWyRpZC4naW5wdXRfJy4ka10pICYmICRfRklMRVNbJGlkLidpbnB1dF8nLiRrXVsnc2l6ZSddID4gMCApCgl7CgkgIC8vIGl0J3MgYW4gdXBsb2FkZWQgZmlsZSB0eXBlCgkgICRyZXN1bHQgPSAkdGhpcy0+TWFuYWdlSW1hZ2VVcGxvYWQoJGlkLCdpbnB1dF8nLCAkaywgJHVpZCApOwoJICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApCgkgICAgewoJICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKS4nJm5ic3A7Jy4kcmVzdWx0OwoJICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMsIHRydWUgKTsKCSAgICAgIHJldHVybjsKCSAgICB9CgkgICR2ID0gJHJlc3VsdFsxXTsKCX0KICAgIH0KCiAgaWYoICR2ID09ICcnICkgY29udGludWU7CiAgaWYoIGlzX2FycmF5KCAkdiApICkKICAgIHsKICAgICAgJHYgPSBpbXBsb2RlKCcsJywkdik7CiAgICB9CiAgJHJldCA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydHlGdWxsKCAkaywgJHYsICR1aWQgKTsKICBpZiggJHJldCA9PSBmYWxzZSApCiAgICB7CiAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKTsKICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2FkZHVzZXIyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgICAgIHJldHVybjsKICAgIH0KfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkdWlkOwokcGFybXNbJ25hbWUnXSA9ICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ107CiR0aGlzLT5TZW5kRXZlbnQoJ09uQ3JlYXRlVXNlcicsJHBhcm1zKTsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uQ3JlYXRlVXNlcicsJHBhcm1zKTsKCi8vIGtlZXAgYSBsb2cgb2YgaXQKJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksCgkgICAgICAkdGhpcy0+TGFuZygndXNlcl9hZGRlZCcsYXJyYXkoJHVpZCwkcGFyYW1zWydpbnB1dF91c2VybmFtZSddKSkpOwoKLy8gYW5kIHRoYXQgc2hvdWxkIGJlIGl0CiRwYXJhbXMgPSBjZ2VfYXJyYXk6OmV4cGxvZGVfd2l0aF9rZXkoICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddICk7CgppZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKQogIHsKICAgIGlmKCBzdHJwb3MoJHBhcmFtc1sncmV0dXJudG8nXSwnLCcpICE9PSBGQUxTRSApCiAgICAgIHsKCWxpc3QoJG1vZHVsZSwkYWN0aW9uKSA9IGV4cGxvZGUoJywnLCRwYXJhbXNbJ3JldHVybnRvJ10sMik7CgkkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCRtb2R1bGUpOwoJJG1vZHVsZS0+UmVkaXJlY3QoJGlkLCRhY3Rpb24sJHJldHVybmlkLAoJCQkgIGFycmF5KCd1aWQnPT4kdWlkLAoJCQkJJ3VzZXJuYW1lJz0+JHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSkpOwogICAgICB9CiAgfQokdGhpcy0+UmVkaXJlY3RUb1RhYiggJGlkLCAndXNlcnMnLCAkcGFyYW1zICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_admintasks.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd1c2Vyc25ncm91cHMnKSApCiAgewogICAgcmV0dXJuOwogIH0KCmlmKCBpc3NldCggJHBhcmFtc1snYnV0dG9uX2V4cG9ydHVzZXJzJ10gKSApCiAgewogICAgLy8gd2Ugd2FudCB0byBleHBvcnQgYSBjc3YgZmlsZSBkbyB3ZQogICAgLy8gU3RhcnQgd2l0aCBhbiBlbXB0eSBvdXRwdXQgKHRoaXMgd2lsbCBiZWNvbWUgdGhlIENTViBmaWxlKQogICAgJG91dHB1dCA9ICcnOwoKICAgICRsYXN0X2dyb3VwbmFtZSA9ICcnOwoKICAgIC8vIFByaW50IGhlYWRpbmdzIGluIHRoZSBvdXRwdXQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggbmV3IAoKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiAgICAvLyBTdGFydCBieSBnZXR0aW5nIGEgdGFibGUgb2YgZWFjaCB1c2VyIGZvciBlYWNoIGdyb3VwIHRoZXkgYXJlIGluCiAgICAkdXF1ZXJ5ID0gJ1NFTEVDVCBESVNUSU5DVCB1LmlkLHUudXNlcm5hbWUsdS5jcmVhdGVkYXRlLHUuZXhwaXJlcwogICAgICAgICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUnOwoKICAgICRkYnJlc3VsdHUgPSAkZGItPkV4ZWN1dGUoICR1cXVlcnkgKTsKICAgIGlmKCAhJGRicmVzdWx0dSB8fCAoJGRicmVzdWx0dS0+UmVjb3JkQ291bnQoKSA9PSAwKSApCiAgICAgIHsKCWVjaG8gJGRiLT5FcnJvck1zZygpOwoJZXhpdCgpOwogICAgICB9CgkKICAgICRwcm9wZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwogICAgaWYoICEkcHJvcGRlZm5zICkKICAgICAgewoJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wZXJ0eWRlZm5zJykpOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicpOwogICAgICB9CgoJLy8gT3V0cHV0IGhlYWRpbmdzIHJlbGV2YW50IHRvIHRoaXMgZ3JvdXAKCSRvdXRwdXRfaGVhZGluZyA9ICcnOwoJLy8gdG9kbyAtIG91dHB1dCBzb21ldGhpbmcgc2Vuc2libGUgZm9yIGdyb3VwbmFtZSwgdXNlcmlkLCB1c2VybmFtZSwgY3JlYXRlZGF0ZSwgZXhwaXJlcwoJJG91dHB1dF9oZWFkaW5nIC49ICcjI3VzZXJpZCcuIiwiLid1c2VybmFtZScuIiwiLidjcmVhdGVkYXRlJy4iLCIuJ2V4cGlyZXMnLiIsIi4nZ3JvdXBuYW1lJzsKCSRncm91cHMgPSBBcnJheSgpOwoJJGZpZWxkcyA9IEFycmF5KCk7Cgl3aGlsZSggJHVyb3cgPSAkZGJyZXN1bHR1LT5GZXRjaFJvdygpICkKCXsKCQkvLyBGb3IgdGhpcyB1c2VyIGZpcnN0IG91dHB1dCB0aGUgdXNlcmlkLCB1c2VybmFtZSwgY3JlYXRlIGRhdGUgYW5kIGV4cGlyZXMgZmllbGRzCgkJJG91dHB1dCAuPSAkdXJvd1snaWQnXS4iLCIuJHVyb3dbJ3VzZXJuYW1lJ10uIiwiLiR1cm93WydjcmVhdGVkYXRlJ10uIiwiLiR1cm93WydleHBpcmVzJ10uIiwiOwoJCQoJCSRncXVlcnkgPSAnU0VMRUNUIERJU1RJTkNUIAlnLmlkLCBnLmdyb3VwbmFtZQoJCQkJRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncyBiCgkJCQlMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcyBnCgkJCQkgIE9OICBnLmlkID0gYi5ncm91cGlkCgkJCQlXSEVSRSBiLnVzZXJpZCA9ID8KCQkJCU9SREVSIEJZIGcuZ3JvdXBuYW1lJzsKCQkkZGJyZXN1bHRnID0gJGRiLT5FeGVjdXRlKCAkZ3F1ZXJ5LCBhcnJheSgkdXJvd1snaWQnXSkgKTsKCQlpZiggISRkYnJlc3VsdGcgfHwgKCRkYnJlc3VsdGctPlJlY29yZENvdW50KCkgPT0gMCkgKQoJCXsKCQkJZWNobyAkZGItPkVycm9yTXNnKCk7CgkJCWV4aXQoKTsKCQl9CgoJCSRmaXJzdF9ncm91cCA9IHRydWU7CgkJd2hpbGUoICRncm93ID0gJGRicmVzdWx0Zy0+RmV0Y2hSb3coKSApCgkJewoJCQlpZiAoICRmaXJzdF9ncm91cCkKCQkJewoJCQkJJGZpcnN0X2dyb3VwID0gZmFsc2U7CgkJCX0KCQkJZWxzZQoJCQl7CgkJCQkkb3V0cHV0IC49ICI6IjsKCQkJfQoJCQkkb3V0cHV0IC49ICciJy4kZ3Jvd1snZ3JvdXBuYW1lJ10uJyInOwoJCQlpZiAoIWlzc2V0KCAkZ3JvdXBzWyAkZ3Jvd1snZ3JvdXBuYW1lJ10gXSApKQoJCQl7CgkJCQkvLyBHZXQgdGhlIGxpc3Qgb2YgcHJvcGVydHkgbmFtZXMgZm9yIHRoaXMgZ3JvdXAgaW4gdGhlIGNvcnJlY3Qgb3JkZXIKCQkJCSRmcXVlcnkgPSAiU0VMRUNUIG5hbWUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwCgkJCQkJCVdIRVJFIGdyb3VwX2lkID0gPwoJCQkJCQlPUkRFUiBCWSBzb3J0X2tleSI7CgkJCQkkZGJyZXN1bHRmID0gJGRiLT5FeGVjdXRlKCAkZnF1ZXJ5LCBhcnJheSgkZ3Jvd1snaWQnXSkgKTsKCQkJCWlmKCAhJGRicmVzdWx0ZiB8fCAoJGRicmVzdWx0Zi0+UmVjb3JkQ291bnQoKSA9PSAwKSApCgkJCQl7CgkJCQkJZWNobyAkZGItPkVycm9yTXNnKCk7CgkJCQkJZXhpdCgpOwoJCQkJfQoJCQkJLy8gbm93IGl0ZXJhdGUgdGhyb3VnaCB0aGlzIGdyb3VwIHByb3BlcnRpZXMKCQkJCXdoaWxlICggJGZyb3cgPSAkZGJyZXN1bHRmLT5GZXRjaFJvdygpICkKCQkJCXsKCQkJCQlpZiAoIWlzc2V0KCAgJGZpZWxkc1sgJGZyb3dbJ25hbWUnXSBdICkpCgkJCQkJewoJCQkJCQkkb3V0cHV0X2hlYWRpbmcgLj0gIiwiLiciJy4kZnJvd1snbmFtZSddLiciJzsKCQkJCQkJJGZpZWxkc1sgJGZyb3dbJ25hbWUnXSBdID0gJ3RydWUnOwoJCQkJCX0KCQkJCX0KCQkJCSRncm91cHNbICRncm93Wydncm91cG5hbWUnXSBdID0ndHJ1ZSc7CgkJCX0KCQl9CgoJCS8vIEZvciB0aGlzIHVzZXIsIGdldCBhbGwgdGhlaXIgZmllbGRzIGFuZCB1c2UgYSByaWdodCBqb2luIHRvICJmaWxsIGluIHRoZSBibGFua3MiCgkJLy8gZm9yIGFueSBtaXNzaW5nIGZpZWxkcyB3aGljaCBzaG91bGRiZSBpbiB0aGlzIGdyb3VwCgkJJHBxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIGFzIGMgV0hFUkUgdXNlcmlkPT8iOwoJCSRkYnJlc3VsdHAgPSAkZGItPkV4ZWN1dGUoICRwcXVlcnkgLCBhcnJheSgkdXJvd1snaWQnXSkgKTsKCQkkcHJvcHMgPSBBcnJheSgpOwoJCWlmKCAkZGJyZXN1bHRwICYmICRkYnJlc3VsdHAtPlJlY29yZENvdW50KCkgPiAwICkKCQl7CgkJICB3aGlsZSAoICRwcm93ID0gJGRicmVzdWx0cC0+RmV0Y2hSb3coKSApCgkJICAgIHsKCQkgICAgICBpZiggIGlzc2V0KCAkcHJvcGRlZm5zWyRwcm93Wyd0aXRsZSddXSApKQoJCQl7CgkJCSAgJHByb3BzWyAkcHJvd1sndGl0bGUnXSBdID0gYXJyYXkoJHByb3dbJ2RhdGEnXSwkcHJvcGRlZm5zWyRwcm93Wyd0aXRsZSddXSk7CgkJCX1lbHNlCgkJCXsKCQkJICAvLyB0b2RvLCBmYXRhbCBlcnJvcgoJCQkgIGVjaG8gIkRFQlVHOiBGQVRBTCwgY291bGQgbm90IGZpbmQgcHJvcGVydHkgZGVmaW5pdGlvbiBmb3IgIi4kcHJvd1sndGl0bGUnXS4iPGJyLz4iOwoJCQkgIGV4aXQoKTsKCQkJfQoJCSAgICB9CgkJfQoKCQlmb3JlYWNoICggJGZpZWxkcyBhcyAka2V5ID0+ICR2YWx1ZSApCgkJewoJCQlpZiAoaXNzZXQoICRwcm9wc1sgJGtleSBdICkpCgkJCXsKCQkJCS8vIG5vdyB3ZSBoYXZlIHRvIGhhbmRsZSBzcGVjaWFsIHByb3BlcnR5IHR5cGVzCgkJCQkvL3ByaW50X3IoJHByb3BzWyAka2V5IF0pOwoJCQkJc3dpdGNoICggJHByb3BzWyAka2V5IF1bMV1bJ3R5cGUnXSApCgkJCQl7CgkJCQkJY2FzZSAwOiAvLyB0ZXh0CgkJCQkJY2FzZSAxOiAvLyBjaGVja2JveAoJCQkJCWNhc2UgMjogLy8gZW1haWwKCQkJCQljYXNlIDM6IC8vIHRleHRhcmVhCgkJCQkJY2FzZSA2OiAvLyBpbWFnZQoJCQkJCQkvLyBubyBzcGVjaWFsIGhhbmRsaW5nCgkJCQkJCSRvdXRwdXQgLj0gJywiJy4kcHJvcHNbICRrZXkgXVswXS4nIic7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgNDogLy8gZHJvcGRvd24KCQkJCQljYXNlIDU6IC8vIG11bHRpc2VsZWN0CgkJCQkJY2FzZSA3OiAvLyByYWRpb2J1dHRvbgoJCQkJCQkvLyBjaGVjayBlYWNoIG9mIHRoZSB2YWx1ZXMgaW4gdGhlIHN0cmluZwoJCQkJCQkkb3B0aW9ucyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCAka2V5ICk7CgkJCQkJCSR0bXB2YWx1ZXMgPSBleHBsb2RlKCcsJywkcHJvcHNbICRrZXkgXVswXSk7CgkJCQkJCSR0bXAyID0gYXJyYXkoKTsKCQkJCQkJZm9yZWFjaCggJHRtcHZhbHVlcyBhcyAkb25ldmFsdWUgKQoJCQkJCQl7CgkJCQkJCQlmb3JlYWNoKCAkb3B0aW9ucyBhcyAkb3B0dGV4dCA9PiAkb3B0bmFtZSApCgkJCQkJCQl7CgkJCQkJCQkJaWYoICRvcHRuYW1lID09ICRvbmV2YWx1ZSApCgkJCQkJCQkJewoJCQkJCQkJCQkkdG1wMltdID0gJG9wdHRleHQ7CgkJCQkJCQkJCWJyZWFrOwoJCQkJCQkJCX0KCQkJCQkJCX0KCQkJCQkJfQoJCQkJCQlpZiggY291bnQoJHRtcDIpICE9IGNvdW50KCR0bXB2YWx1ZXMpICkKCQkJCQkJewoJCQkJCQkJZWNobyAiVGhlcmUgaXMgYSBwcm9ibGVtIHdpdGggdGhlIG9wdGlvbnMgZm9yICIuJHByb3BzWyAka2V5IF0uIiBmaWVsZCBpbiByZWNvcmQgIi4kdXJvd1sndXNlcm5hbWUnXS4iPGJyIC8+IjsKCQkJCQkJCWV4aXQoKTsgCS8vIFRPRE86IEFkZCB0aGVzZSBmaWVsZHMgdG8gTGFuZwoJCQkJCQl9CgkJCQkJCSRvdXRwdXQgLj0gJywiJy5pbXBsb2RlKCc6JywkdG1wMikuJyInOwoJCQkJCQlicmVhazsKCQkJCQljYXNlIDg6IC8vIGRhdGUKCQkJCQkgIGlmKCBpc3NldCgkcHJvcHNbJGtleV1bMF0pICYmICRwcm9wc1ska2V5XVswXSApCgkJCQkJICAgIHsKCQkJCQkgICAgICAkb3V0cHV0IC49ICcsJy5kYXRlKCdtLWQtWScsJHByb3BzWyAka2V5IF1bMF0pOwoJCQkJCSAgICB9CgkJCQkJICBlbHNlCgkJCQkJICAgIHsKCQkJCQkgICAgICAkb3V0cHV0IC49ICcsJzsKCQkJCQkgICAgfQoJCQkJCSAgYnJlYWs7CgkJCQl9CgkJCX1lbHNlCgkJCXsKCQkJCSRvdXRwdXQgLj0nLCIiJzsKCQkJfQoJCX0KCQkJCgkJJG91dHB1dCAuPSAiXG4iOyAgLy8gbmV3bGluZQoJfQoKICAgIGhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwogICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2ZvcmNlLWRvd25sb2FkJyk7CiAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPWZldXNlcnMuY3N2Jyk7CiAgICB3aGlsZShAb2JfZW5kX2NsZWFuKCkpOwoKCWVjaG8gJG91dHB1dF9oZWFkaW5nLiJcbiIuJG91dHB1dDsKICAgIAogICAgZXhpdCgpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeSddICkgKQogIHsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9leHBvcnR1c2VyaGlzdG9yeS5waHAnKTsKICB9CmVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWydidXR0b25fY2xlYXJ1c2VyaGlzdG9yeSddICkgKQogIHsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9jbGVhcnVzZXJoaXN0b3J5LnBocCcpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9pbXBvcnR1c2VycyddICkgKQogIHsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9pbXBvcnR1c2Vycy5waHAnKTsKICB9CiAgCi8vIEVPRg==]]></data>
	</file>
	<file>
	  <filename>/action.do_deletegroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAncmVtb3ZlZ3JvdXBzJyApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgIHJldHVybjsKICB9CgoKaWYgKCFpc3NldCAoJHBhcmFtc1snZ3JvdXBfaWQnXSkgfHwgJHBhcmFtc1snZ3JvdXBfaWQnXSA9PSAiIikKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgIHJldHVybjsKICB9ICAKCiRncm91cCA9ICR0aGlzLT5HZXRHcm91cEluZm8oICRwYXJhbXNbJ2dyb3VwX2lkJ10gKTsKaWYoICFpc3NldCgkZ3JvdXBbJ2lkJ10pICYmICRncm91cFswXSA9PSBGQUxTRSApCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJGdyb3VwWzFdICk7CiAgICByZXR1cm47CiAgfQoKaWYoIGNvdW50KCR0aGlzLT5HZXRVc2Vyc0luR3JvdXAoICRncm91cFsnaWQnXSApKSAhPSAwICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX25vdGVtcHR5Z3JvdXAnKSk7CiAgICByZXR1cm47CiAgfQoKJHJldCA9ICR0aGlzLT5EZWxldGVHcm91cEZ1bGwoICRwYXJhbXNbJ2dyb3VwX2lkJ10gKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKQogIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRncm91cFsxXSApOwogICAgcmV0dXJuOwogIH0KCiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1snaWQnXSA9ICRwYXJhbXNbJ2dyb3VwX2lkJ107CiRwYXJtc1snbmFtZSddID0gJGdyb3VwWydncm91cG5hbWUnXTsKJHRoaXMtPlNlbmRFdmVudCgnT25EZWxldGVHcm91cCcsJHBhcm1zKTsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uRGVsZXRlR3JvdXAnLCRwYXJtcyk7CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_deleteprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgovLyBjaGVjayBwZXJtaXNzaW9ucyBhZ2FpbgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZGVsZXRlcHJvcCcgKSApCiAgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICByZXR1cm47CiAgfQoKaWYoICFpc3NldCggJHBhcmFtc1sncHJvcG5hbWUnXSApICkKICB7CiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHBhcm1zWydlcnJvciddID0gMTsKICAgICRwYXJtc1snbWVzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJyk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3Byb3BlcnRpZXMnLCRwYXJtcyk7CiAgICByZXR1cm47CiAgfQoKLy8gZGVsZXRlIGFsbCBvY2N1cmFuY2VzIG9mIHRoaXMgcHJvcGVydHkgbmFtZSBpbiB0aGUgcHJvcGVydGllcyB0YWJsZQokcmVzdWx0ID0gJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSggJHBhcmFtc1sncHJvcG5hbWUnXSApOwoKLy8gV2UgbmVlZCB0byBkZWxldGUgc2VsZWN0IG9wdGlvbnMgcmVnYXJkbGVzcyBvZiB0aGUgY29udHJvbCB0eXBlLAovLyBiZWNhdXNlIHdlIGRvbid0IGRlbGV0ZSBzZWxlY3Qgb3B0aW9ucyB3aGVuIGNoYW5naW5nIGNvbnRyb2wgdHlwZXMKJHJlc3VsdCA9ICR0aGlzLT5EZWxldGVTZWxlY3RPcHRpb25zKCAkcGFyYW1zWydwcm9wbmFtZSddICk7Ci8vIG5vdyByZWFkeSB0byBkZWxldGUgdGhlIHByb3BlcnR5CiRyZXN1bHQgPSAkdGhpcy0+RGVsZXRlUHJvcGVydHlEZWZuKCAkcGFyYW1zWydwcm9wbmFtZSddICk7CmlmKCAhJHJlc3VsdCApCiAgewogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eScpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdwcm9wZXJ0aWVzJywkcGFybXMpOwogICAgcmV0dXJuOwogIH0KCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwncHJvcGVydGllcycpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_deleteuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAncmVtb3ZldXNlcnMnICkgKQogIHsKICAgIHJldHVybjsKICB9CgpnbG9iYWwgJGdDbXM7CgppZiAoIWlzc2V0ICgkcGFyYW1zWyd1c2VyX2lkJ10pIHx8ICRwYXJhbXNbJ3VzZXJfaWQnXSA9PSAiIikKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgIHJldHVybjsKICB9ICAKCiR1c2VyID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKaWYoICR1c2VyWzBdID09IEZBTFNFICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkcmV0WzFdICk7CiAgICByZXR1cm47CiAgfQoKLy8gR2V0IGFsbCBvZiB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbnMsIGlmIHRoZXkncmUgb2YgdHlwZSA2Ci8vIGFuZCB0aGUgcHJvcGVydHkgaXMgbm90IGVtcHR5LCB0aGVuIHdlIG1heQovLyBoYXZlIHRvIGRlbGV0ZSBhIGZpbGUgYXMgd2VsbC4KJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKJHByb3BfYXJ5ID0gYXJyYXkoKTsKJGRlc3REaXIxID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLkRJUkVDVE9SWV9TRVBBUkFUT1I7CmlmKCAkcHJvcHMgKQogIHsKICAgIGZvcmVhY2goICRkZWZucyBhcyAkb25lZGVmbiApCiAgICAgIHsKCWlmKCAkb25lZGVmblsndHlwZSddICE9IDYgKSBjb250aW51ZTsKCglmb3JlYWNoKCAkcHJvcHMgYXMgJG9uZXByb3AgKQoJICB7CgkgICAgaWYoICRvbmVwcm9wWyd0aXRsZSddICE9ICRvbmVkZWZuWyduYW1lJ10gKSBjb250aW51ZTsKCgkgICAgLy8gZm91bmQgYSBtYXRjaCwgd2UgaGF2ZSBhIHR5cGUgNiBmaWVsZC4KCSAgICBpZiggJG9uZXByb3BbJ2RhdGEnXSA9PSAnJyApIGNvbnRpbnVlOwoKCSAgICAvLyBhbmQgb25lIHdpdGggYSB2YWx1ZSB0b28uCgkgICAgJGZpbGUxID0gJGRlc3REaXIxLiRvbmVwcm9wWydkYXRhJ107CgkgICAgQHVubGluayggJGZpbGUxICk7CgkgIH0KICAgICAgfQoJZm9yZWFjaCAoJHByb3BzIGFzICRvbmVfcHJvcCkKCXsKCQkkcHJvcF9hcnlbJG9uZV9wcm9wWyd0aXRsZSddXSA9ICRvbmVfcHJvcFsnZGF0YSddOwoJfQogIH0KICAgIAokcmV0ID0gJHRoaXMtPkRlbGV0ZVVzZXJGdWxsKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKQogIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRyZXRbMV0gKTsKICAgIHJldHVybjsKICB9CgovLyBzZW5kIGFuIGV2ZW50CiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1snaWQnXSA9ICRwYXJhbXNbJ3VzZXJfaWQnXTsKJHBhcm1zWyd1c2VybmFtZSddID0gJHVzZXJbMV1bJ3VzZXJuYW1lJ107CiRwYXJtc1sncHJvcHMnXSA9ICRwcm9wX2FyeTsKJHRoaXMtPlNlbmRFdmVudCggJ09uRGVsZXRlVXNlcicsICRwYXJtcyApOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25EZWxldGVVc2VyJywkcGFybXMpOwoKLy8gYW5kIGxvZyBpdAokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwKCSAgICAgICR0aGlzLT5MYW5nKCd1c2VyX2RlbGV0ZWQnLCRwYXJhbXNbJ3VzZXJfaWQnXSkgKTsKCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3VzZXJzJyApOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser1.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZWRpdHVzZXJzJyApICkKICB7CiAgICByZXR1cm47CiAgfQoKLy8gYXJlIHdlIGNhbmNlbGxpbmcKaWYgKGlzc2V0ICgkcGFyYW1zWydjYW5jZWwnXSkpCiAgewogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAndXNlcnMnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICB9CgppZiAoICFpc3NldCgkcGFyYW1zWyd1c2VyX2lkJ10pICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgcmV0dXJuOwogIH0KCi8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiR1c2VyX2lkICAgPSB0cmltKCRwYXJhbXNbJ3VzZXJfaWQnXSk7CiR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSk7CiRyZXBlYXQgICA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CgokcmV0ID0gJHRoaXMtPl9oYW5kbGVVc2VySW5mb1ZhbGlkYXRpb24oICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSwgZmFsc2UsIAoJCQkJCSB0cnVlLCBmYWxzZSApOwoKc3dpdGNoKCAkcmV0ICkKICB7CiAgY2FzZSAtMTogLy8gZXJyb3IKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2Vycm9yJywgIjEiKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ21lc3NhZ2UnLCAkbWVzc2FnZSApOwogICAgJHRoaXMtPl9EaXNwbGF5QWRtaW5FZGl0VXNlclN0ZXAxUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKICAgIHJldHVybjsKICBjYXNlIDA6ICAvLyBubyBlcnJvciwgYnV0IGRvbid0IGNvbnRpbnVlIG9wZXJhdGlvbgogICAgJHRoaXMtPl9EaXNwbGF5QWRtaW5Vc2VyUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKICAgIHJldHVybjsKICBjYXNlIDE6ICAvLyBhbGwgaXMgZ29vZCwgY29udGludWUgb3BlcmF0aW9uCiAgICBicmVhazsKICB9CgovLyBsb2FkIHByb3BlcnRpZXMgYW5kIHNldCB0aGVtIHVwCi8vIGZvciB0aGUgbmV4dCBwYWdlCiRwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcyggJHVzZXJfaWQgKTsKZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkKewogICRwYXJhbXNbJ2lucHV0XycuJHByb3BbJ3RpdGxlJ11dID0gdXJsZW5jb2RlKCRwcm9wWydkYXRhJ10pOwp9CgovLyBBbmQgR28gdG8gc3RlcCAyCiR0aGlzLT5fcGFyYW1zX3RvX3Nlc3Npb24oJHBhcmFtcyk7ICAgIAokdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fZWRpdHVzZXIyJywgJHJldHVybmlkICk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIHJldHVybjsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnYWRkdXNlcicpICYmCiAgICAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXR1c2VycycpICkKICB7CiAgICByZXR1cm47CiAgfQoKCiR0bXAgPSAkdGhpcy0+X3Nlc3Npb25fdG9fcGFyYW1zKCk7CmlmKCAkdG1wICE9PSBmYWxzZSApCiAgewogICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCRwYXJhbXMsJHRtcCk7CiAgfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywgJHBhcmFtc1snbWVzc2FnZSddICk7CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10gKTsKICB9CgovLyBjYWxjdWxhdGUgdGhlIHVuaW9uICh5ZXAsIHVuaW9uLCBub3QgaW50ZXJzZWN0aW9uKQovLyBvZiBhbGwgb2YgdGhlIHByb3BlcnRpZXMgb2YgYWxsIG9mIHRoZSBtZW1iZXIgZ3JvdXBzCi8vIHByZWZlcnJpbmcgYWxsIGl0ZW1zIHdpdGggYSBwcmlvcml0eSBvZiAyCiRwcm9wZXJ0aWVzID0gYXJyYXkoKTsKJGdyb3VwcyA9IDA7CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsICkKewogIGlmKCBwcmVnX21hdGNoKCAnL15tZW1iZXJvZl8vJywgJGtleSApICkKICAgIHsKICAgICAgJGdyb3VwcysrOwogICAgICAvLyBnZXQgdGhlIGdyb3VwaWQgZnJvbSB0aGUgY2hlY2tib3gKICAgICAgJGdycGlkID0gc3Vic3RyKCRrZXksc3RybGVuKCdtZW1iZXJvZl8nKSk7CgkgIAogICAgICAvLyBoYXZlIHRoZSBncm91cCBpZCwgbm93IGdldCBhIGxpc3Qgb2YgdGhlIHByb3BlcnRpZXMKICAgICAgJHByb3ByZWxhdGlvbnMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICk7CiAgICAgICRwcm9wZXJ0aWVzID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCggJHByb3BlcnRpZXMsICRwcm9wcmVsYXRpb25zICk7CiAgICAgIHVhc29ydCggJHByb3BlcnRpZXMsIAoJICAgICAgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7CiAgICB9Cn0JICAKaWYoICRncm91cHMgPT0gMCApCiAgewogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykgPT0gMSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CglyZXR1cm47CiAgICAgIH0KCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkKICAgICAgewoJJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMycsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19hZGR1c2VyMycsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogICAgICB9CiAgfQppZiggY291bnQoJHByb3BlcnRpZXMpID09IDAgKQogIHsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Byb3BlcnRpZXMnKTsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGR1c2VyJywgJHJldHVybmlkLCAkcGFyYW1zLCB0cnVlICk7CiAgICByZXR1cm47CiAgfQoKLy8gbm93IHdlJ3JlIHJlYWR5IHRvIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQokcm93YXJyYXkgPSBhcnJheSgpOwpmb3JlYWNoKCAkcHJvcGVydGllcyBhcyAkcHJvcCApCnsKICAvLyBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb24KICAkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRwcm9wWyduYW1lJ10gKTsKICAkYXR0cmlicyA9ICcnOwogIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSApCiAgICB7CiAgICAgICRhdHRyaWJzID0gdW5zZXJpYWxpemUoJGRlZm5bJ2F0dHJpYnMnXSk7CiAgICB9CiAgJHByb3B2YWwgPSAnJzsKICBpZiggaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkKICAgIHsKICAgICAgJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHBhcmFtc1sndXNlcl9pZCddKTsKICAgICAgJHByb3B2YWwgPSAkdGhpcy0+R2V0VXNlclByb3BlcnR5RnVsbCggJHByb3BbJ25hbWUnXSwgJHBhcmFtc1sndXNlcl9pZCddICk7CiAgICB9CgogICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKCiAgJGNvbG9yID0gJyc7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDIgKSAkY29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdXJpZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDMgKSAkY29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJywnZ3JlZW4nKTsKICAkbWFya2VyID0gJyc7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDIgKSAkbWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVyaWVkX2ZpZWxkX21hcmtlcicsJyonKTsKICBpZiggJHByb3BbJ3JlcXVpcmVkJ10gPT0gMyApICRtYXJrZXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX21hcmtlcicsJyEhJyk7CiAgJG9uZXJvdy0+cmVxdWlyZWQgPSAoJHByb3BbJ3JlcXVpcmVkJ10gPT0gMik7CiAgJG9uZXJvdy0+dHlwZSAgICAgPSAkZGVmblsndHlwZSddOwogICRvbmVyb3ctPmNvbG9yICAgID0gJGNvbG9yOwogICRvbmVyb3ctPm1hcmtlciAgID0gJG1hcmtlcjsKICAkb25lcm93LT5oaWRkZW4gPSBSUlV0aWxzOjpteUNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdoaWRkZW5fJy4kcHJvcFsnbmFtZSddLAoJCQkJCQkgICRwcm9wdmFsKTsKCiAgJHZhbCA9IGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJHByb3BbJ25hbWUnXV0pID8gJHBhcmFtc1snaW5wdXRfJy4kcHJvcFsnbmFtZSddXSA6ICRwcm9wdmFsOwogICR2YWwgPSB1cmxkZWNvZGUoJHZhbCk7CiAgJHNlbG9wdGlvbnMgPSAkdGhpcy0+R2V0U2VsZWN0T3B0aW9ucygkcHJvcFsnbmFtZSddKTsKICAkc2VsZWN0ZWQgPSBhcnJheSgpOwogIGlmKCAkZGVmblsndHlwZSddID09IDUpCiAgICB7CiAgICAgIC8vIGhhbmRsZSBjb21tYSBzZXBhcmF0ZWQgYXJyYXlzIG9mIHNlbGVjdGVkIHZhbHVlcwogICAgICAkc2VsZWN0ZWQgPSBleHBsb2RlKCcsJywkdmFsKTsKICAgIH0KICBlbHNlIGlmICgkZGVmblsndHlwZSddID09IDcpCiAgICB7CiAgICAgICRzZWxlY3RlZCA9ICR2YWw7CiAgICB9CgogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKQogICAgewogICAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10sCgkJCQkJCSAkdmFsLCAkZGVmblsnbGVuZ3RoJ10sICRkZWZuWydtYXhsZW5ndGgnXSApOwogICAgICBicmVhazsKCiAgICBjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnaW5wdXRfJy4kcHJvcFsnbmFtZSddLCAwKSAuIFJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfJy4kcHJvcFsnbmFtZSddLCAxLCAkdmFsICk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgMjogLy8gZW1haWwKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2lucHV0XycuJHByb3BbJ25hbWUnXSwKCQkJCQkJICR2YWwsICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddICk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgMzogLy8gdGV4dGFyZWEKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVUZXh0QXJlYShpc19hcnJheSgkYXR0cmlicykgJiYgaXNzZXQoJGF0dHJpYnNbJ3d5c2l3eWcnXSk/JGF0dHJpYnNbJ3d5c2l3eWcnXTowLAoJCQkJCSAgICAgICAkaWQsICR2YWwsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10pOwogICAgICBicmVhazsKCiAgICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigKCQkJCQkJICAgICRpZCwgCgkJCQkJCSAgICAnaW5wdXRfJy4kcHJvcFsnbmFtZSddLCAKCQkJCQkJICAgICRzZWxvcHRpb25zLAoJCQkJCQkgICAgLTEsIAoJCQkJCQkgICAgJHZhbCk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNTogLy8gbXVsdGlzZWxlY3QKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoCgkJCQkJCSAgICAgICRpZCwgCgkJCQkJCSAgICAgICdpbnB1dF8nLiRwcm9wWyduYW1lJ10uJ1tdJywgCgkJCQkJCSAgICAgICRzZWxvcHRpb25zLAoJCQkJCQkgICAgICAkc2VsZWN0ZWQsCgkJCQkJCSAgICAgICRkZWZuWydsZW5ndGgnXSk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNjogLy8gaW1hZ2UKICAgICAgewoJaWYoIGlzc2V0KCAkcGFyYW1zWyd1c2VyX2lkJ10gKSApCgkgIHsKCSAgICAkZGVzdERpcjEgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwoJICAgICRkZXN0RGlyMSAuPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKS5ESVJFQ1RPUllfU0VQQVJBVE9SOwoJICAgICRkZXN0RGlyMiA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfdXJsJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKCSAgICAkZGVzdERpcjIgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuRElSRUNUT1JZX1NFUEFSQVRPUjsKCSAgICAkZmlsZTEgPSAkZGVzdERpcjEuJHZhbDsKCSAgICAkZmlsZTIgPSAkZGVzdERpcjIuJHZhbDsKCSAgICBpZiggaXNfcmVhZGFibGUoJGZpbGUxKSAmJiBpc19maWxlKCRmaWxlMSkgKQoJICAgICAgewoJCSRvbmVyb3ctPmltYWdlID0gJzxpbWcgc3JjPSInLiRmaWxlMi4nIiBhbHQ9IicuJHZhbC4nIi8+JzsKCQlpZiggISRvbmVyb3ctPnJlcXVpcmVkICAmJiBpc3NldCgkcGFyYW1zWyd1c2VyX2lkJ10pICkKCQkgIHsKCQkgICAgJG9uZXJvdy0+cHJvbXB0MiA9ICR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXInKTsKCQkgICAgJG9uZXJvdy0+Y29udHJvbDIgPSAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2lucHV0XycuJHByb3BbJ25hbWUnXS4nX2NsZWFyJywnY2xlYXInLCcnKTsKCQkgIH0KCSAgICAgIH0KCSAgfQoJJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCdpbnB1dF8nLiRwcm9wWyduYW1lJ10sICcnLCAkZGVmblsnbGVuZ3RoJ10pOwoJYnJlYWs7CiAgICAgIH0KCiAgICBjYXNlIDc6IC8vIHJhZGlvIGJ1dHRvbiBncm91cAogICAgICB7Cgkkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0UmFkaW9Hcm91cCgkaWQsICdpbnB1dF8nLiRwcm9wWyduYW1lJ10sCgkJCQkJCQkkc2Vsb3B0aW9ucywgJHZhbCwgJycsICc8YnIvPicpOwoJICAgIAogICAgICB9CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgODogLy8gZGF0ZQogICAgICB7CgkkcGFybXMgPSBhcnJheSgpOwoJJHBhcm1zWydwcmVmaXgnXSA9ICRpZC4naW5wdXRfJy4kcHJvcFsnbmFtZSddOwoJaWYoICR2YWwgKSAgJHBhcm1zWyd0aW1lJ10gPSAkdmFsOwoJJHBhcm1zWydzdGFydF95ZWFyJ10gPSAoaXNfYXJyYXkoJGF0dHJpYnMpICYmIGlzc2V0KCRhdHRyaWJzWydzdGFydHllYXInXSkpPyRhdHRyaWJzWydzdGFydHllYXInXToiLTUiOwoJJHBhcm1zWydlbmRfeWVhciddID0gKGlzX2FycmF5KCRhdHRyaWJzKSAmJiBpc3NldCgkYXR0cmlic1snZW5keWVhciddKSk/JGF0dHJpYnNbJ2VuZHllYXInXToiKzEwIjsKCSRzdHIgPSAne2h0bWxfc2VsZWN0X2RhdGUgJzsKCWZvcmVhY2goICRwYXJtcyBhcyAka2V5PT4kdmFsdWUgKQoJICB7CgkgICAgJHN0ciAuPSAka2V5Lic9IicuJHZhbHVlLiciICc7CgkgIH0KCSRzdHIgLj0gJ30nOwoJJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkc3RyKTsKICAgICAgfQogICAgICBicmVhazsKICAgIH0KCiAgJHJvd2FycmF5W10gPSAkb25lcm93Owp9CgppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSkgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignZWRpdHRleHQnLCR0aGlzLT5MYW5nKCdlZGl0aW5nX3VzZXInKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJyx0cmltKCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pKTsKICB9CiRzbWFydHktPmFzc2lnbignaGlkZGVuJywgCgkJUlJVdGlsczo6bXlDcmVhdGVJbnB1dEhpZGRlbiggJGlkLCAnc3RlcDFfcGFyYW1zJywgJHBhcmFtcyApKTsKJHNtYXJ0eS0+YXNzaWduKCdjb250cm9scycsICRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbignY29udHJvbGNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CiRzbWFydHktPmFzc2lnbignc3VibWl0JywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdzdWJtaXQnLAoJCQkJCQkgICR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnY2FuY2VsJywKCQkJCQkJICAkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdiYWNrJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdiYWNrJywKCQkJCQkJJHRoaXMtPkxhbmcoJ2JhY2snKSkpOwppZiggaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywgJHRoaXMtPkxhbmcoJ2VkaXR1c2VyJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4yJywgCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ3VzZXJfaWQnLCRwYXJhbXNbJ3VzZXJfaWQnXSkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCSAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsCgkJCQkJICAgICdkb19lZGl0dXNlcjMnLAoJCQkJCSAgICAkcmV0dXJuaWQsCgkJCQkJICAgICdwb3N0JywKCQkJCQkgICAgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiAgfQogZWxzZSAKICAgewogICAgICRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnYWRkdXNlcicpKTsKICAgICAkc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJICAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0ICgkaWQsCgkJCQkJICAgICAnZG9fYWRkdXNlcjMnLAoJCQkJCSAgICAgJHJldHVybmlkLAoJCQkJCSAgICAgJ3Bvc3QnLAoJCQkJCSAgICAgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiAgIH0KICAgIAokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCAoKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSggJ2FkZHVzZXIyLnRwbCcgKTsKCgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_edituser3.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZWRpdHVzZXJzJyApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgIHJldHVybjsKICB9CmlmKCAhaXNzZXQoICRwYXJhbXNbJ3VzZXJfaWQnXSApICkKICB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICB9CgovLyBkbyB3ZSB3YW50IHRvIGdvIGJhY2sKaWYoIGlzc2V0KCAkcGFyYW1zWydiYWNrJ10gKSApCiAgewogICAgLy8geXVwIHdlIGRvCiAgICAkcGFyYW1zID0gY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApOzsKICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdlZGl0dXNlcicsICRyZXR1cm5pZCwkcGFyYW1zICk7CiAgfQppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkKICB7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICd1c2VycycgKTsKICB9CgokdXNlcl9pZCA9IChpbnQpJHBhcmFtc1sndXNlcl9pZCddOwoKLy8gZ2V0IHRoZSBmaWVsZCBpbmZvCiRmbGRpbmZvID0gYXJyYXkoKTsKZm9yZWFjaCggJHBhcmFtcyBhcyAkayA9PiAkdiApCnsKICBpZiggcHJlZ19tYXRjaCgnL15oaWRkZW5fLycsICRrICkgKQogICAgewogICAgICAkZmxkbmFtZSA9IHN1YnN0ciggJGssIHN0cmxlbignaGlkZGVuXycpKTsKICAgICAgJHByb3BpbmZvID0gc3BsaXQoJzsnLCR2KTsKICAgICAgJGZsZGluZm9bJGZsZG5hbWVdID0gJHByb3BpbmZvOwogICAgfQp9CgovLyBnZXQgZmllbGQgZGVmaW5pdGlvbnMuCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CgovLyBnZXQgdGhlIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNlbGVjdGVkIGdyb3VwKHMpLgokcGFybXMxID0gY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApOwokZ3JvdXBwcm9wcyA9IGFycmF5KCk7CiRncm91cGlkcyA9IGFycmF5KCk7CmZvcmVhY2goICRwYXJtczEgYXMgJGtleSA9PiAkdmFsdWUgKQp7CiAgaWYoIHN0YXJ0c3dpdGgoJGtleSwnbWVtYmVyb2ZfJykgKQogICAgewogICAgICAkZ2lkID0gKGludClzdWJzdHIoJGtleSxzdHJsZW4oJ21lbWJlcm9mXycpKTsKICAgICAgJGdyb3VwaWRzW10gPSAkZ2lkOwoKICAgICAgJHJlbG5zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKICAgICAgJGdyb3VwcHJvcHMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkZ3JvdXBwcm9wcywgJHJlbG5zICk7CiAgICAgIHVhc29ydCggJGdyb3VwcHJvcHMsCgkgICAgICBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKICAgIH0KfQokZ3JvdXBwcm9wcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkZ3JvdXBwcm9wcywnbmFtZScpOwoKLy8gZ2V0IHRoZSBmaWVsZCBpbmZvCiRmaWVsZGxpc3QgPSBhcnJheSgpOwpmb3JlYWNoKCAkcGFyYW1zIGFzICRrID0+ICR2ICkKewogIGlmKCBwcmVnX21hdGNoKCcvXmhpZGRlbl8vJywgJGsgKSApCiAgICB7CiAgICAgICRmbGRuYW1lID0gc3Vic3RyKCAkaywgc3RybGVuKCdoaWRkZW5fJykpOwogICAgICAkZmllbGRsaXN0WyRmbGRuYW1lXSA9ICR2OwogICAgfQp9CgovLyBub3cgbWVyZ2UgZm9ybSB2YWx1ZXMgZm9yIGVhY2ggb2YgdGhlIGZpZWxkcwpmb3JlYWNoKCAkZmllbGRsaXN0IGFzICRmbGRuYW1lID0+ICRwYXNzZWRfdmFsdWUgKQp7CiAgJHYgPSAnJzsKICBzd2l0Y2goJGRlZm5zWyRmbGRuYW1lXVsndHlwZSddKSAKICAgIHsKICAgIGNhc2UgJzgnOiAvLyBkYXRlCiAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF8nLiRmbGRuYW1lLidNb250aCddKSApCgl7CgkgICR2ID0gbWt0aW1lKDAsMCwwLAoJCSAgICAgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nTW9udGgnXSwKCQkgICAgICAoaW50KSRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWUuJ0RheSddLAoJCSAgICAgIChpbnQpJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZS4nWWVhciddKTsKCX0KICAgICAgYnJlYWs7CgogICAgZGVmYXVsdDoKICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0XycuJGZsZG5hbWVdKSApCgl7CgkgICR2ID0gJHBhcmFtc1snaW5wdXRfJy4kZmxkbmFtZV07Cgl9CiAgICAgIGJyZWFrOwogICAgfQogIGlmKCAkdiAhPSAnJyApCiAgICB7CiAgICAgICRmaWVsZGxpc3RbJGZsZG5hbWVdID0gJHY7CiAgICB9Cn0KCi8vIG5vdyB2YWxpZGF0ZQpmb3JlYWNoKCAkZmllbGRsaXN0IGFzICRuYW1lID0+ICR2YWx1ZSApCnsKICAkZGVmbiA9JiAkZGVmbnNbJG5hbWVdOwogICRyZWxuID0mICRncm91cHByb3BzWyRuYW1lXTsKCiAgLy8gcHJvY2VzcyBlbXB0eSByZXF1aXJlZCBmaWVsZHMKICAvLyB3ZSBkb24ndCBjYXJlIGFib3V0IGVtcHR5IG9wdGlvbmFsIG9uZXMKICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiApCiAgICB7CiAgICAgIC8vIHByb2Nlc3MgZW1wdHkgcmVxdWlyZWQgZmllbGRzCiAgICAgIGlmKCAkZGVmblsndHlwZSddID09IDYgKQoJewoJICBpZiggKCFpc3NldCgkX0ZJTEVTWyRpZC4naW5wdXRfJy4kbmFtZV0pIHx8ICRfRklMRVNbJGlkLidpbnB1dF8nLiRuYW1lXVsnc2l6ZSddID09IDApICYmCgkgICAgICAkdmFsdWUgPT0gJycpCgkgICAgewoJICAgICAgLy8gYSByZXF1aXJlZCBpbWFnZSBmaWVsZCBpcyBlbXB0eQoJICAgICAgLy8gYW5kIG5vIGZpbGUgYmVpbmcgdXBsb2FkZWQuCgkgICAgICAkcGFyYW1zID0gYXJyYXlfbWVyZ2UoICRwYXJhbXMsIGNnZV9hcnJheTo6ZXhwbG9kZV93aXRoX2tleSggJHBhcmFtc1snc3RlcDFfcGFyYW1zJ10gKSk7CgkgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJywkbmFtZSk7CgkgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZG9fZWRpdHVzZXIyJywgJHJldHVybmlkLCRwYXJhbXMgKTsKCSAgICAgIHJldHVybjsKCSAgICB9Cgl9CiAgICAgIGVsc2UgaWYoICR2YWx1ZSA9ICcnICkKCXsKCSAgLy8gYSByZXF1aXJlZCBvdGhlciB0eXBlIGZpZWxkIGlzIGVtcHR5CgkgICRwYXJhbXMgPSBhcnJheV9tZXJnZSggJHBhcmFtcywgY2dlX2FycmF5OjpleHBsb2RlX3dpdGhfa2V5KCAkcGFyYW1zWydzdGVwMV9wYXJhbXMnXSApKTsKCSAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJywkbmFtZSk7CgkgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsJHBhcmFtcyApOwoJICByZXR1cm47Cgl9CiAgICB9CgoKICAvLyBoYW5kbGUgY2xlYXIgYnV0dG9ucyBmb3IgaW1hZ2UgZmllbGRzLgogIGlmKCAkZGVmblsndHlwZSddID09IDYgKQogICAgewogICAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfJy4kbmFtZS4nX2NsZWFyJ10pICYmIAoJICAkcGFyYW1zWydpbnB1dF8nLiRuYW1lLidfY2xlYXInXSA9PSAnY2xlYXInICYmCgkgICR2YWx1ZSAhPSAnJyApCgl7CgkgIC8vIHdlJ3JlIHRvbGQgdG8gY2xlYXIgYW4gaW1hZ2UgcHJvcGVydHksIHdlIG11c3QgYWxzbwoJICAvLyBkZWxldGUgdGhlIGltYWdlCgkgICRkZXN0RGlyMSA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1I7CgkgICRkZXN0RGlyMSAuPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKS5ESVJFQ1RPUllfU0VQQVJBVE9SOwoJICAkZmlsZTEgPSAkZGVzdERpcjEuJHZhbHVlOwoJICBAdW5saW5rKCAkZmlsZTEgKTsKCSAgdW5zZXQoJGZpZWxkbGlzdFskbmFtZV0pOwoJICAkdmFsdWUgPSAnJzsKCX0KICAgIH0KCgogIC8vIHZhbGlkYXRlIGZpbGxlZCBpbiBmaWVsZHMKICAvLyBvcHRpb25hbCxvciByZXF1aXJlZC4KICAvLyBhbmQgZG8gcG9zdCBwcm9jZXNzaW5nCiAgaWYoICR2YWx1ZSAhPSAnJyApCiAgICB7CiAgICAgIC8vIHZhbGlkYXRlIHVuaXF1ZSB2YWx1ZXMKICAgICAgaWYoICRkZWZuWydmb3JjZV91bmlxdWUnXSApCgl7CgkgIC8vIG1ha2Ugc3VyZSB0aGF0IHRoaXMgdmFsdWUgZG9lc24ndCBhbHJlYWR5IGV4aXN0CgkgIGlmKCAhJHRoaXMtPklzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVzZXJfaWQsJG5hbWUsJHZhbHVlKSApCgkgICAgewoJICAgICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCAkcGFyYW1zLCBjZ2VfYXJyYXk6OmV4cGxvZGVfd2l0aF9rZXkoICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddICkpOwoJICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJywkbmFtZSwkdmFsdWUpOwoJICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMicsICRyZXR1cm5pZCwkcGFyYW1zLCB0cnVlICk7CgkgICAgICByZXR1cm47CgkgICAgfQoJfQoKICAgICAgc3dpdGNoKCAkZGVmblsndHlwZSddICkKCXsKCWNhc2UgMDogLy8gdGV4dAoJICAvLyBub3QgbXVjaCB3ZSBjYW4gZG8gdG8gdmFsaWRhdGUgYSB0ZXh0IGZpZWxkLgoJICBicmVhazsKCWNhc2UgMTogLy8gY2hlY2tib3gKCSAgLy8gb3IgYSBjaGVja2JveAoJICBicmVhazsKCWNhc2UgMjogLy8gZW1haWwKCSAgLy8gZW1haWwgYWRkcmVzc2VzIGNhbiBiZSB2YWxpZGF0ZWQgdGhvdWdoCgkgIGJyZWFrOwoJY2FzZSAzOiAvLyB0ZXh0YXJlYQoJICAvLyBtYXliZSBzaXplPwoJICBicmVhazsKCWNhc2UgNDogLy8gZHJvcGRvd24KCSAgLy8gSG93IGNhbiB3ZSB2YWxpZGF0ZSBhIGRyb3Bkb3duPwoJICBicmVhazsKCWNhc2UgNTogLy8gbXVsdGlzZWxlY3QKCSAgLy8gSG93IGNhbiB3ZSB2YWxpZGF0ZSBhIG11bHRpLXNlbGVjdAoJICBpZiggaXNfYXJyYXkoICRmaWVsZGxpc3RbJG5hbWVdICkgKQoJICAgIHsKCSAgICAgIC8vIGNvbnZlcnQgaXQgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBmb3Igc3RvcmFnZQoJICAgICAgJGZpZWxkbGlzdFskbmFtZV0gPSBpbXBsb2RlKCcsJywkZmllbGRsaXN0WyRuYW1lXSk7CgkgICAgfQoJICBicmVhazsKCWNhc2UgNjogLy8gaW1hZ2UKCSAgYnJlYWs7CgljYXNlIDg6IC8vIGRhdGUKCSAgLy8gdG9kbywgdmFsaWRhdGUuLi4gYWdhaW5zdCBhdHRyaWJzLgoJICBicmVhazsKCX0KICAgIH0KfQoKLy8gZ2V0IHRoZSBwYXJtcyBmcm9tIHRoZSBmaXJzdCBzdGVwCiRwYXJtczEgPSBjZ2VfYXJyYXk6OmV4cGxvZGVfd2l0aF9rZXkoICRwYXJhbXNbJ3N0ZXAxX3BhcmFtcyddICk7CiAgICAKLy8gYW5kIG1lcmdlIGVtIGludG8gJHBhcmFtcyBzbyB3ZSBjYW4gYWN0dWFsbHkgYWRkIHRoZSB1c2VyIGFjY291bnQKJHBhcmFtcyA9IGFycmF5X21lcmdlKCAkcGFyYW1zLCAkcGFybXMxICk7CgovLyBub3cgZmluZCBvdXQgd2hpY2ggZ3JvdXBzIGhlJ3MgYSBtZW1iZXIgb2YKJHVzZXJuYW1lID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApICkKICB7CiAgICAkdXNlcm5hbWUgPSAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddOwogIH0KJHBhc3N3b3JkID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApICYmICRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10gIT0gJycgKQogIHsKICAgICRwYXNzd29yZCA9ICRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ107CiAgfQokZXhwaXJlc2RhdGUgPSBzdHJ0b3RpbWUoJysxMCB5ZWFycycsIHRpbWUoKSk7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXSApICkKICB7CiAgICAkZXhwaXJlc2RhdGUgPSAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddOwogIH0KCi8vIGFuZCBTZXQgdGhlIHVzZXIKJHJldCA9ICR0aGlzLT5TZXRVc2VyKCAkdXNlcl9pZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzZGF0ZSApOwppZiggJHJldFswXSA9PSBmYWxzZSApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogICAgcmV0dXJuOwkKICB9CgovLyBhbmQgdGhlbiBhZGQgaGltIHRvIGhpcyBncm91cHMKJHJldCA9ICR0aGlzLT5TZXRVc2VyR3JvdXBzKCAkdXNlcl9pZCwgJGdyb3VwaWRzICk7CmlmKCAkcmV0WzBdID09IGZhbHNlICkKICB7CiAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9jYW50YXNzaWdudXNlcicpOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwogICAgcmV0dXJuOwkKICB9IAoKLy8gYW5kIHRoZW4gYWRkIGhpcyBwcm9wZXJ0aWVzCi8vIGRlbGV0ZSB0aGVtIGFsbCBmaXJzdCB0aG91Z2gKJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVzZXJfaWQpOwokdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCggIiIsICR1c2VyX2lkLCB0cnVlICk7CmZvcmVhY2goICRmaWVsZGxpc3QgYXMgJGsgPT4gJHYgKQp7CiAgJGRlZm4gPSYgJGRlZm5zWyRrXTsKICAkcmVsbiA9JiAkZ3JvdXBwcm9wc1ska107CiAgCiAgaWYoICRkZWZuWyd0eXBlJ10gPT0gNiApCiAgICB7CiAgICAgIC8vIGltYWdlIHR5cGUKICAgICAgaWYoIGlzc2V0KCRfRklMRVNbJGlkLidpbnB1dF8nLiRrXSkgJiYgJF9GSUxFU1skaWQuJ2lucHV0XycuJGtdWydzaXplJ10gPiAwICkKCXsKCSAgLy8gaXQncyBhbiB1cGxvYWRlZCBmaWxlIHR5cGUKCSAgJHJlc3VsdCA9ICR0aGlzLT5NYW5hZ2VJbWFnZVVwbG9hZCgkaWQsJ2lucHV0XycsICRrLCAkdXNlcl9pZCApOwoJICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApCgkgICAgewoJICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKS4nJm5ic3A7Jy4kcmVzdWx0OwoJICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RvX2VkaXR1c2VyMicsICRyZXR1cm5pZCwgJHBhcmFtcywgdHJ1ZSApOwoJICAgICAgcmV0dXJuOwoJICAgIH0KCSAgJHYgPSAkcmVzdWx0WzFdOwoJfQogICAgfQoKICBpZiggJHYgPT0gJycgKSBjb250aW51ZTsKICBpZiggaXNfYXJyYXkoJHYpICkgJHYgPSBpbXBsb2RlKCcsJywkdik7CiAgJHJldCA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydHlGdWxsKCAkaywgJHYsICR1c2VyX2lkICk7CiAgaWYoICRyZXQgPT0gZmFsc2UgKQogICAgewogICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yJyk7CiAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdkb19lZGl0dXNlcjInLCAkcmV0dXJuaWQsICRwYXJhbXMsIHRydWUgKTsKICAgICAgcmV0dXJuOwogICAgfQp9CgovLyBhbmQgd2UncmUgZG9uZQovLyBzZW5kIHRoZSBldmVudAokZXZlbnRfcGFyYW1zID0gYXJyYXkoKTsKJGV2ZW50X3BhcmFtc1snbmFtZSddID0gJHVzZXJuYW1lOwokZXZlbnRfcGFyYW1zWydpZCddID0gJHVzZXJfaWQ7CiR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CiR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwoKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAndXNlcnMnICk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_forgotpw.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10gKSApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZXR1cm50byddICkgKQogICAgICB7CgkkcmV0dXJuaWQgPSAkcGFyYW1zWydpbnB1dF9yZXR1cm50byddOwogICAgICB9CiAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRyZXR1cm5pZCk7CiAgICByZXR1cm47CiAgfQoKaWYoICFpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApICApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJyk7CiAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KICAgIAovLyBzZWUgaWYgd2UgY2FuIGZpbmQgdGhpcyB1c2VyCiR1aWQgPSAkdGhpcy0+R2V0VXNlcklEKCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICk7CmlmKCAhJHVpZCApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJyk7CiAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIHNlZSBpZiB3ZSBjYW4gZGlnIHVwIGFuIGVtYWlsIGFkZHJlc3MgZm9yIGhpbQokZW1haWwgPSAkdGhpcy0+R2V0RW1haWwoJHVpZCk7CmlmKCAhZW1wdHkoJGVtYWlsKSApCiAgewogICAgJGNtc21haWxlciA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NNU01haWxlcicpOwogICAgaWYoICEkY21zbWFpbGVyICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfbm9tYWlsZXJtb2R1bGUnKTsKCSRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgIAogICAgLy8gd2UgZm91bmQgYW5lIG1haWwgYWRkcmVzcwogICAgLy8gZ2VuZXJhdGUgYSBjb2RlLCBhbmQgc3RvcmUgaXQgc29tZXBsYWNlCiAgICAvLyBidXQgdGhhdCBtZWFucyB3ZSBnb3R0YSBjbGVhbiB0aGVzZSB0aGluZ3MgdXAKICAgIC8vIGZyb20gdGltZSB0byB0aW1lLgogICAgJGNvZGUgPSAkdGhpcy0+R2VuZXJhdGVSYW5kb21QcmludGFibGVTdHJpbmcoKTsKICAgIGlmKCAhJHRoaXMtPlNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUgKSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnKTsKCSRwYXJhbXNbJ2Zvcm0nXSA9ICdmb3Jnb3Rwdyc7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KICAgIAogICAgLy8gc2VuZCBvdXIgZnVua3kgZW1haWwKICAgICRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpOwogICAgJHBpZCA9ICRyZXR1cm5pZDsKICAgIGlmKCAkcGFnZSApCiAgICAgIHsKCSR0cGlkID0gQ29udGVudE1hbmFnZXI6OkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKCWlmKCAkdHBpZCAhPSBmYWxzZSApICRwaWQgPSAkdHBpZDsKICAgICAgfQogICAgCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcsCgkJCSAgJHRoaXMtPkxhbmcoJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X2NvZGUnLCR0aGlzLT5MYW5nKCdtZXNzYWdlX2NvZGUnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RhdGFfY29kZScsJGNvZGUpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbGluaycsJHRoaXMtPkxhbmcoJ3Byb21wdF9saW5rJykpOwogICAgJHBhcm1zID0gYXJyYXkoICdpbnB1dF91aWQnID0+ICR1aWQsICdpbnB1dF9jb2RlJyA9PiAkY29kZSApOwoKICAgICRjb25maWcgPSYgJGdDbXMtPkdldENvbmZpZygpOwogICAgJHByZXR0eXVybCA9ICJmZXUvdmVyaWZ5L3skcGlkfS97JHVpZH0veyRjb2RlfSI7CiAgICAkbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwndmVyaWZ5Y29kZScsJHBpZCwnJywkcGFybXMsICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsKTsKCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2RhdGFfbGluaycsCgkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCd2ZXJpZnljb2RlJywkcGlkLCRsaW5rLCRwYXJtcykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdkYXRhX3VybCcsJGxpbmspOwogICAgCiAgICAkYm9keSA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmRlbWFpbGZvcm0nKTsKICAgIAogICAgJGNtc21haWxlci0+QWRkQWRkcmVzcyggJGVtYWlsICk7CiAgICAkY21zbWFpbGVyLT5TZXRCb2R5KCAkYm9keSApOwogICAgJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwogICAgaWYoIHN0cmlwX3RhZ3MoJGJvZHkpICE9ICRib2R5ICkKICAgICAgewoJJGNtc21haWxlci0+SXNIVE1MKHRydWUpOwogICAgICB9CiAgICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCR0aGlzLT5MYW5nKCdsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0JykpOwogICAgJGNtc21haWxlci0+U2VuZCgpOwogICAgCiAgICAvLyBhbmQgdGVsbCB0aGUgdXNlciBzb21ldGhpbmcKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnLCRlbWFpbCk7CiAgICAkcGFyYW1zWydza2lwZm9ybWRpc3BsYXknXSA9IDE7CiAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgCiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JldHVybnRvJ10gKSApCiAgICAgIHsKCSRyZXR1cm5pZCA9ICRwYXJhbXNbJ2lucHV0X3JldHVybnRvJ107CiAgICAgIH0KICAgIAogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsJHBhcmFtcyApOwogICAgcmV0dXJuOwogIH0KCi8vIHdlIGZvdW5kIG5vIGVtYWlsIGFkZHJlc3MKJHBhcmFtc1snZXJyb3InXSA9IDE7CiRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCcpOwokcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwokdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnZGVmYXVsdCcsICRyZXR1cm5pZCwkcGFyYW1zICk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_login.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgokY2FwdGNoYSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCRwYXJhbXNbJ25vY2FwdGNoYSddKSApCiAgewogICAgaWYgKCEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2lucHV0X2NhcHRjaGEnXSkpCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJyk7CglpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CglyZXR1cm47CiAgICAgIH0KICB9CgkKaWYoICFpc3NldCggJHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ10gKSB8fCAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSA9PSAnJyApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9taXNzaW5ndXNlcm5hbWUnKTsKICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi51c2VyX2xvZ2luZm9ybS5waHAnKTsKICAgIHJldHVybjsKICB9CgppZiggIWlzc2V0KCAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSApIHx8ICRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddID09ICcnICkKICB7CiAgICAkcGFyYW1zWydlcnJvciddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXNzd29yZCcpOwogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLnVzZXJfbG9naW5mb3JtLnBocCcpOwogICAgcmV0dXJuOwogIH0KCi8vIG5vdyB2YWxpZGF0ZSB0aGUgcGFzc3dvcmQgYW5kIHVzZXJuYW1lCmlmIChpc3NldCgkcGFyYW1zWydvbmx5X2dyb3VwcyddKSkKICB7CiAgICAkcmVzdWx0ID0gJHRoaXMtPkxvZ2luKCAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSwgJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10sICRwYXJhbXNbJ29ubHlfZ3JvdXBzJ10gKTsJCQkKICB9CiBlbHNlCiAgIHsKICAgICAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUoJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10pOwogICAgICRyZXN1bHQgPSAkdGhpcy0+TG9naW4oICRwYXJhbXNbJ2ZldV9pbnB1dF91c2VybmFtZSddLCAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSApOwkKICAgfQppZiggJHJlc3VsdFswXSA9PSBmYWxzZSApCiAgewogICAgJHBhcmFtc1snZXJyb3InXSA9ICRyZXN1bHRbMV07CiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24udXNlcl9sb2dpbmZvcm0ucGhwJyk7CiAgICByZXR1cm47CiAgfQokdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwKCSAgICAgICR0aGlzLT5MYW5nKCdmcm9udGVuZHVzZXJfbG9nZ2VkaW4nKS4iOiAiLiRwYXJhbXNbJ2ZldV9pbnB1dF91c2VybmFtZSddICk7CgovLwovLyB3ZSdyZSBsb2dnZWQgaW4KLy8KCi8vIHN0b3JlIGEgY29va2llID8KaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9yZW1lbWJlcm1lJ10pICYmCiAgICAkcGFyYW1zWydmZXVfcmVtZW1iZXJtZSddID09IDEpCiAgewogICAgJHRoaXMtPlNldExvZ2luQ29va2llKCRwYXJhbXNbJ2ZldV9pbnB1dF91c2VybmFtZSddLCRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddKTsKICB9CgovLyByZWRpcmVjdCBzb21ld2hlcmUgPwokcGFnZSA9ICcnOwokcmV0dXJuX3VybCA9ICcnOwppZiggaXNzZXQoJHBhcmFtc1sncmV0dXJubGFzdCddKSAmJiBpc3NldCgkX1NFU1NJT05bJ2ZldV9wcmVsb2dpbl91cmwnXSkgKQogIHsKICAgICRyZXR1cm5fdXJsID0gdHJpbSgkX1NFU1NJT05bJ2ZldV9wcmVsb2dpbl91cmwnXSk7CiAgICB1bnNldCgkX1NFU1NJT05bJ2ZldV9wcmVsb2dpbl91cmwnXSk7CiAgfQplbHNlCiAgewogICAgJHBhZ2UgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJyk7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApCiAgICAgIHsKCSRwYWdlID0gJHBhcmFtc1sncmV0dXJudG8nXTsKICAgICAgfQogICAgCiAgICAvLyByZXBsYWNlIHskZ3JvdXBuYW1lfSB3aXRoIHRoZSBmaXJzdCBncm91cG5hbWUgd2UgY2FuIGZpbmQgdGhhdCBtYXRjaGVzCiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdGhpcy0+TG9nZ2VkaW5JZCgpICk7CiAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2dyb3VwJywkZ3JvdXBuYW1lKTsKICAgICRwYWdlID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRwYWdlKTsKICB9CgovLyBzZW5kIHRoZSBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwokcGFybXNbJ3VzZXJuYW1lJ10gPSAkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXTsKJHBhcm1zWydpcCddID0gZ2V0ZW52KCdSRU1PVEVfQUREUicpOwokdGhpcy0+U2VuZEV2ZW50KCAnT25Mb2dpbicsICRwYXJtcyApOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25Mb2dpbicsJHBhcm1zKTsKCmlmKCAkcmV0dXJuX3VybCAhPSAnJyApCiAgewogICAgcmVkaXJlY3QoJHJldHVybl91cmwpOwogIH0KZWxzZSBpZiggJHBhZ2UgKQogIHsKICAgICRpZCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgICBpZiggJGlkICkKICAgICAgewoJJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJGlkICk7CglyZXR1cm47CiAgICAgIH0KICAgIGRpZSggImNvdWxkbid0IGdldCBwYWdlaWQgZm9yICRwYWdlIiApOwogIH0KZWxzZQogIHsKICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoICRyZXR1cm5pZCApOwogIH0KCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_lostusername.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCAkZ0NtcyApICkgcmV0dXJuOwoKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZXR1cm50byddICkgKQogIHsKICAgICRyZXR1cm5pZCA9ICRwYXJhbXNbJ2lucHV0X3JldHVybnRvJ107CiAgfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddICkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKICAgIHJldHVybjsKICB9CgovLyBpZiggIWlzc2V0KCAkcGFyYW1zWydzdWJtaXQnXSApICkKLy8gICB7Ci8vICAgICAvLyBzaG91bGQgbmV2ZXIgaGFwcGVuCi8vICAgICByZXR1cm47Ci8vICAgfQoKZnVuY3Rpb24gX2hhbmRsZUVycm9yKCAkaWQsICYkbW9kdWxlLCAkcmV0dXJuaWQsICRtZXNzYWdlLCAkcGFyYW1zICkKewogICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRtZXNzYWdlOwogICRwYXJhbXNbJ2Zvcm0nXSA9ICdsb3N0dXNlcm5hbWUnOwogICRtb2R1bGUtPlJlZGlyZWN0KCAkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAkcGFyYW1zICk7Cn0KCi8vCi8vIFByb2Nlc3MgY2FwdGNoYQovLwokY2FwdGNoYSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCAkcGFyYW1zWydub2NhcHRjaGEnXSkgKQogIHsKICAgIGlmKCAhJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYSgkcGFyYW1zWydpbnB1dF9jYXB0Y2hhJ10pICkKICAgICAgewoJICBfaGFuZGxlRXJyb3IoICRpZCwgJHRoaXMsICRyZXR1cm5pZCwgCgkJCSR0aGlzLT5MYW5nKCdlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnKSwKCQkJJHBhcmFtcyk7CgkgIHJldHVybjsKICAgICAgfQogIH0KCi8vCi8vIENoZWNrIHRvIG1ha2Ugc3VyZSB0aGUgcGFzc3dvcmQgd2FzIGZpbGxlZCBvdXQgCi8vCmlmKCAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10pIHx8IAogICAgdHJpbSgkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSkgPT0gJycgKQogIHsKICAgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkgICR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSwKCQkgICRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCi8vCi8vIFByb2Nlc3MgYWxsIG9mIHRoZSBwYXJhbXMsIHRoYXQgaGF2ZSBib3RoIGFuIGZldV9oaWRkZW4gYW5kIGZldV9pbnB1dCBmaWVsZAovLyBleHRyYWN0IHRoZSBwcm9wZXJ0eSBuYW1lcyBvdXQgb2YgdGhlbQovLwokZmllbGRzID0gYXJyYXkoKTsKJGZpcnN0cHJvcCA9ICcnOwpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbHVlICkKewogIGlmKCBwcmVnX21hdGNoKCAnL15mZXVfaGlkZGVuXy8nLCAka2V5ICkgKQogICAgewogICAgICAkcHJvcG5hbWUgPSBzdWJzdHIoICRrZXksIHN0cmxlbignZmV1X2hpZGRlbl8nKSk7CiAgICAgICRhcnIgPSBzcGxpdCgiOyIsJHZhbHVlKTsKCiAgICAgIGlmKCAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgfHwKCSAgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9PSAnJykKCXsKCSAgX2hhbmRsZUVycm9yKCAkaWQsICR0aGlzLCAkcmV0dXJuaWQsIAoJCQkkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKSwKCQkJJHBhcmFtcyk7CgkgIHJldHVybjsKCX0KCiAgICAgIGlmKCAkZmlyc3Rwcm9wID09ICcnICkgJGZpcnN0cHJvcCA9ICRwcm9wbmFtZTsKICAgICAgJGZpZWxkc1skcHJvcG5hbWVdID0gYXJyYXkoKTsKICAgICAgJGZpZWxkc1skcHJvcG5hbWVdWydpbnB1dCddID0gJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXTsKICAgIH0KfQoKLy8KLy8gTm93LCB0cnkgdG8gZmluZCBhIHVzZXJpZC91c2VybmFtZQovLyB0aGF0IG1hdGNoIHRoZXNlIHByb3BlcnRpZXMKLy8KJHF1ZXJ5ID0gIlNFTEVDVCB1c2VyaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcwogICAgICAgICAgIFdIRVJFIHRpdGxlID0gPyBBTkQgZGF0YSA9ID8iOwokbmV3ZmllbGRzID0gYXJyYXkoKTsKZm9yZWFjaCggJGZpZWxkcyBhcyAkcHJvcG5hbWUgPT4gJGRhdGEgKQp7CiAgJG1hdGNoZXMgPSBhcnJheSgpOwogICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCBhcnJheSgkcHJvcG5hbWUsJGRhdGFbJ2lucHV0J10pICk7CiAgd2hpbGUoICRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkKICAgIHsKICAgICAgJG1hdGNoZXNbXSA9ICRyb3dbJ3VzZXJpZCddOwogICAgfQoKICBpZiggY291bnQoJG1hdGNoZXMpID09IDAgKQogICAgewogICAgICAvLyBubyBtYXRjaGVzLCB3ZSBjYW4gc3RvcCBoZXJlCiAgICAgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX2NhbnRmaW5kdXNlcicpLCAkcGFyYW1zICk7CiAgICAgIHJldHVybjsKICAgIH0KCiAgLy8gc3RvcmUgdGhlIHJlc3VsdHMKICAkZGF0YVsnbWF0Y2hlcyddID0gJG1hdGNoZXM7CiAgJG5ld2ZpZWxkc1skcHJvcG5hbWVdID0gJGRhdGE7Cn0KCiRmaWVsZHMgPSAkbmV3ZmllbGRzOwoKLy8gbm93IGdvIHRocm91Z2ggZWFjaCBvZiB0aGUgbWF0Y2hlcyBhcnJheXMsIGFuZCBmaW5kIGFsbCBvZiB0aGUKLy8gdXNlcmlkcyB0aGF0IGFyZSB0aGUgc2FtZSBpbiBlYWNoIHJvdwokZ29vZHVpZHMgPSBhcnJheSgpOwokZmlyc3R1aWRzID0mICRmaWVsZHNbJGZpcnN0cHJvcF1bJ21hdGNoZXMnXTsKZm9yZWFjaCggJGZpcnN0dWlkcyBhcyAkZmlyc3R1aWQgKQp7CiAgJGZvdW5kID0gdHJ1ZTsKICBmb3JlYWNoKCAkZmllbGRzIGFzICRwcm9wbmFtZSA9PiAkZGF0YSApCiAgICB7CiAgICAgIGlmKCAkcHJvcG5hbWUgPT0gJGZpcnN0cHJvcCApCgl7CgkgIGNvbnRpbnVlOwoJfQoKICAgICAgaWYoIGFycmF5X3NlYXJjaCggJGZpcnN0dWlkLCAkZGF0YVsnbWF0Y2hlcyddLCB0cnVlICkgPT09IEZBTFNFICkKCXsKCSAgLy8gdGhpcyBmaXJzdHVpZCB1aWQgZmFpbHMuCgkgICRmb3VuZCA9IGZhbHNlOwoJICBicmVhazsKCX0KICAgIH0KICBpZiggJGZvdW5kID09IHRydWUgKQogICAgewogICAgICAkZ29vZHVpZHNbXSA9ICRmaXJzdHVpZDsKICAgIH0KfQoKaWYoIGNvdW50KCAkZ29vZHVpZHMgKSA+IDEgKQogIHsKICAgIC8vIG5vbiB1bmlxdWUgbWF0Y2gKICAgIF9oYW5kbGVFcnJvciggJGlkLCAkdGhpcywgJHJldHVybmlkLCAKCQkgICR0aGlzLT5MYW5nKCdlcnJvcl9ub251bmlxdWVtYXRjaCcpLCAkcGFyYW1zKTsKICAgIHJldHVybjsKICB9CgokdWlkID0gJGdvb2R1aWRzWzBdOwoKLy8KLy8gQ29uZmlybSB0aGUgcGFzc3dvcmQKLy8KJHVzZXJuYW1lID0gJHRoaXMtPkdldFVzZXJOYW1lKCR1aWQpOwppZiggISR1c2VybmFtZSApCiAgewogICAgLy8gbm93IHRoaXMgaXMgd2FycGVkCiAgICBfaGFuZGxlRXJyb3IoICRpZCwgJHRoaXMsICRyZXR1cm5pZCwgCgkJICAkdGhpcy0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJyksICRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KJHB3ID0gJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ107CmlmKCAhJHRoaXMtPkNoZWNrUGFzc3dvcmQoICR1c2VybmFtZSwgJHB3ICkgKQogIHsKICAgIC8vIG5vdyB0aGlzIGlzIHdhcnBlZAogICAgX2hhbmRsZUVycm9yKCAkaWQsICR0aGlzLCAkcmV0dXJuaWQsIAoJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX2xvZ2luZmFpbGVkJyksICRwYXJhbXMpOwogICAgcmV0dXJuOwogIH0KCi8vCi8vIFlhaG9vLCB3ZSBtYWRlIGl0Ci8vCgovLyBkaXNwbGF5IGEgd2FybSBhbmQgZnV6enkgbWVzc2FnZQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF95b3VydXNlcm5hbWVpcycsJHRoaXMtPkxhbmcoJ3lvdXJfdXNlcm5hbWVfaXMnKSk7CiRzbWFydHktPmFzc2lnbigndXNlcm5hbWUnLCR1c2VybmFtZSk7CiRzbWFydHktPmFzc2lnbigncHJlbXNnJywkdGhpcy0+TGFuZygnbG9zdHVuY29uZmlybV9wcmVtc2cnKSk7CiRzbWFydHktPmFzc2lnbigncG9zdG1zZycsJHRoaXMtPkxhbmcoJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZycpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZmV1c2Vyc19sb3N0dW5mb3JtX2NvbmZpcm0nKTsKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_setprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZWRpdHByZWZzJyApICkKICB7CiAgICByZXR1cm47CiAgfQoKZ2xvYmFsICRnQ21zOwokZGIgPSYgJGdDbXMtPkdldERCKCk7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVtb3ZlYWxsJ10gKSApCiAgewogICAgJHRoaXMtPkV4cGlyZVRlbXBDb2RlcygnLTUgeWVhcnMnKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJyk7CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVtb3ZlMXdlZWsnXSApICkKICB7CiAgICAkdGhpcy0+RXhwaXJlVGVtcENvZGVzKCctMSB3ZWVrJyk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlbW92ZTFtb250aCddICkgKQogIHsKICAgICR0aGlzLT5FeHBpcmVUZW1wQ29kZXMoJy0xIG1vbnRoJyk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycpOwogIH0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2NhbmNlbCddICkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJyApOwogIH0KCgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYXV0b19jcmVhdGVfdW5rbm93bicsKGludCkkcGFyYW1zWydhdXRvX2NyZWF0ZV91bmtub3duJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYXV0aF9tb2R1bGUnLHRyaW0oJHBhcmFtc1snYXV0aF9tb2R1bGUnXSkpOwoKJHJhbmRvbXVzZXJuYW1lID0gMDsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yYW5kb211c2VybmFtZSddKSApCiAgewogICAgJHJhbmRvbXVzZXJuYW1lID0gKGludCkkcGFyYW1zWydpbnB1dF9yYW5kb211c2VybmFtZSddOwogIH0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZV9yYW5kb211c2VybmFtZScsJHJhbmRvbXVzZXJuYW1lKTsKCmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlYWdlJ10pICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsKGludCkkcGFyYW1zWydpbnB1dF9leHBpcmVhZ2UnXSk7CiAgfQoKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycsICRwYXJhbXNbJ2lucHV0X3Nlc3Npb250aW1lb3V0J10pOwoKJGNvb2tpZV9rZWVwYWxpdmUgPSAwOwppZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2Nvb2tpZWtlZXBhbGl2ZSddICkgKQogIHsKICAgICRjb29raWVfa2VlcGFsaXZlID0gJHBhcmFtc1snaW5wdXRfY29va2lla2VlcGFsaXZlJ107CiAgfQokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsJGNvb2tpZV9rZWVwYWxpdmUpOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnLCAkcGFyYW1zWydpbnB1dF9kZmx0Z3JvdXAnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzaWduaW5fYnV0dG9uJywgJHBhcmFtc1snaW5wdXRfc2lnbmluX2J1dHRvbiddKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19yZXBlYXRlZF9sb2dpbnMnLChpc3NldCgkcGFyYW1zWydpbnB1dF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSk/JHBhcmFtc1snaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ106MCkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJHBhcmFtc1snaW5wdXRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycsJHBhcmFtc1snaW5wdXRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10pOwppZiAoaXNzZXQoJHBhcmFtc1snbm90aWZpY2F0aW9ucyddKSkKICAgewogICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9ucycsaW1wbG9kZSgnLCcsJHBhcmFtc1snbm90aWZpY2F0aW9ucyddKSk7CiAgIH0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJywkcGFyYW1zWydub3RpZmljYXRpb25fYWRkcmVzcyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkcGFyYW1zWydub3RpZmljYXRpb25fc3ViamVjdCddKTsKJHRoaXMtPlNldFRlbXBsYXRlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnLCRwYXJhbXNbJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddKTsKICAgIAokcXVlcnkgPSAiU0VMRUNUIHBlcm1pc3Npb25faWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4icGVybWlzc2lvbnMgV0hFUkUgcGVybWlzc2lvbl9uYW1lIExJS0UgJ0ZFVSAlJyI7CiRjb3VudCA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CgokZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyA9IDA7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddICkgKQogICRmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zID0gJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsJGZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMpOwoKaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSkgJiYgJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddPT0xKQogIHsKICAgIC8vIHVzaW5nIEZFVXNlci1zcGVjaWZpYyBwZXJtaXNzaW9ucywgc28gY3JlYXRlIHRoZW0gaWYgbmVjZXNzYXJ5CiAgICBpZiAoaW50dmFsKCRjb3VudCkgPT0gMCkKICAgICAgewoJLy8gY3JlYXRlICdlbQoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgVXNlcnMnLCdBZGQgRnJvbnQtRW5kIFVzZXJzJyk7CgkkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignRkVVIE1vZGlmeSBVc2VycycsJ01vZGlmeSBGcm9udC1FbmQgVXNlcnMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJywnUmVtb3ZlIEZyb250LUVuZCBVc2VycycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgR3JvdXBzJywnQWRkIEZyb250LUVuZCBVc2VyIEdyb3VwcycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXBzJywnTW9kaWZ5IEZyb250LUVuZCBVc2VyIEdyb3VwcycpOwoJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXIgR3JvdXAgQXNzaWdubWVudHMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIEdyb3VwcycsJ1JlbW92ZSBGcm9udC1FbmQgVXNlciBHcm91cHMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXJzIFNpdGUgUHJlZnMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEZyb250RW5kVXNlclByb3BzJywnTW9kaWZ5IEZyb250LUVuZCBVc2VyIFByb3BlcnRpZXMnKTsKCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFRlbXBsYXRlcycsJ01vZGlmeSBGcm9udC1FbmQgVXNlciBUZW1wbGF0ZXMnKTsKICAgICAgfQogIH0KLyoKICogV0UgRE9OJ1QgREVMRVRFIFRIRSBGRVUgU1BFQ0lGSUMgUEVSTUlTU0lPTlMsIEVWRU4gSUYgU09NRUJPRFkgVE9HR0xFUyBUSElTIE9GRi4KIGVsc2UKICAgewogICAgIC8vIHNoYXJpbmcgYWNjZXNzIHBlcm1pc3Npb25zIHdpdGggQWRtaW4sIHNvIGRlbGV0ZSBGRVVzZXItc3BlY2lmaWMgcGVybWlzc2lvbnMgaWYgbmVjZXNzYXJ5CiAgICAgaWYgKGludHZhbCgkY291bnQpICE9IDApCiAgICAgICB7CgkgLy8gZGVsZXRlICdlbQoJICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgQWRkIFVzZXJzJyk7CgkgJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVXNlcnMnKTsKCSAkdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIFJlbW92ZSBVc2VycycpOwoJICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgQWRkIEdyb3VwcycpOwoJICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEdyb3VwcycpOwoJICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEdyb3VwIEFzc2lnbm1lbnRzJyk7CgkgJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBSZW1vdmUgR3JvdXBzJyk7CgkgJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpOwoJICR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEZyb250RW5kVXNlclByb3BzJyk7CgkgJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVGVtcGxhdGVzJyk7CiAgICAgICB9CiAgICAgICAKICAgfQoqLwogICAgCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_userchangesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggaXNzZXQoJHBhcmFtc1snZmV1X2NhbmNlbCddKSApIAogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X3JldHVybnRvJ10gKSApCiAgICAgIHsKCSRyZXR1cm5pZCA9IChpbnQpJHBhcmFtc1snZmV1X3JldHVybnRvJ107CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKICB9CgokdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKaWYoICR1aWQgPT0gZmFsc2UgKSAKICB7CiAgICAvLyB1c2VyIGlzbid0IGxvZ2dlZCBpbgogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgCgkJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9ub3Rsb2dnZWRpbicpKTsKICAgIHJldHVybjsKICB9CiRyZXN1bHQgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1aWQgKTsKaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKQogIHsKICAgIC8vIHVzZXIgaXNuJ3QgbG9nZ2VkIGluCiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJICAgICAgJHJlc3VsdFsxXSk7CiAgICByZXR1cm47CiAgfQokdWluZm8gPSAkcmVzdWx0WzFdOwoKJHBhc3N3b3JkID0gJyc7Ci8vIGNoZWNrIGlmIHVzZXIgaXMgYWxsb3dlZCB0byBjaGFuZ2UgcGFzc3dvcmQuCiRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEKSApCiAgewogICAgJHBhc3N3b3JkID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddKSk7CiAgICAkcmVwZWF0ICAgPSBjbXNfaHRtbF9lbnRpdHlfZGVjb2RlKHRyaW0oJHBhcmFtc1snZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJ10pKTsKICAgIGlmKCAkcGFzc3dvcmQgIT0gJHJlcGVhdCAmJiAkcGFzc3dvcmQgIT0gJycpCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnKTsKCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICB9CiAgICAKICAgIGlmKCAkcGFzc3dvcmQgIT0gJycgJiYgISR0aGlzLT5Jc1ZhbGlkUGFzc3dvcmQoJHBhc3N3b3JkKSApCiAgICAgIHsKCSRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpOwoJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgIH0KICB9CgovLyBnZXQgcHJvcGVydHkgZGVmaW5pdGlvbnMKJGRlZm5zYnluYW1lID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKCi8vIEdldCBtZW1iZXIgZ3JvdXBzCiRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CgovLyBHZXQgZ3JvdXAgcHJvcGVydHkgcmVsYXRpb25zIGludG8gYSB1bmlvbi4KJHByb3BlcnRpZXMgPSBhcnJheSgpOwp7CiAgJHRtcCA9IGFycmF5KCk7CiAgZm9yZWFjaCggJGdyb3VwcyBhcyAkb25lZ3JvdXAgKQogICAgewogICAgICAkcHJvcHJlbGF0aW9ucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkb25lZ3JvdXBbJ2dyb3VwaWQnXSApOwogICAgICAkdG1wID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCggJHRtcCwgJHByb3ByZWxhdGlvbnMgKTsKICAgICAgdWFzb3J0KCAkdG1wLCBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKICAgIH0KICAkcHJvcGVydGllcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCduYW1lJyk7Cn0KCi8vIGRvIHZhbGlkYXRpb24gb2YgdGhlIGZpZWxkcy4KZm9yZWFjaCggJHByb3BlcnRpZXMgYXMgJHByb3BuYW1lID0+ICRwcm9wICkKewogICRmbGR0eXBlID0gJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ3R5cGUnXTsKICAkcmVxdWlyZWQgPSAoJHByb3BbJ3JlcXVpcmVkJ10gPT0gMik7CiAgCiAgc3dpdGNoKCAkZmxkdHlwZSApCiAgICB7CiAgICBjYXNlICcwJzogLyogdGV4dCAqLwogICAgICBpZiggJHJlcXVpcmVkICkKCXsKCSAgaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSB8fAoJICAgICAgZW1wdHkoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKQoJICAgIHsKCSAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKS4nICcuJHJlc3VsdFsxXTsKCSAgICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCSAgICB9Cgl9CiAgICAgIGJyZWFrOwogICAgICAKICAgIGNhc2UgJzInOiAvKiBlbWFpbCAqLwogICAgICBpZiggJHJlcXVpcmVkICkKCXsKCSAgaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApCgkgICAgewoJICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcycpLicgJy4kcmVzdWx0WzFdOwoJICAgICAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICRyZXN1bHQgPSAkdGhpcy0+SXNWYWxpZEVtYWlsQWRkcmVzcyggJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSwgJHVpZCApOwoJICAgICAgaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKQoJCXsKCQkgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKS4nICcuJHJlc3VsdFsxXTsKCQkgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCQl9CgkgICAgfQoJfQogICAgICBicmVhazsKCiAgICBjYXNlICczJzogLyogdGV4dGFyZWEgKi8KICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKQoJewoJICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSk7CgkgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCX0KICAgICAgaWYoICRyZXF1aXJlZCAmJiBlbXB0eSgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApCgl7CgkgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKTsKCSAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJfQogICAgICBicmVhazsKCiAgICBjYXNlICc1JzogLyogbXVsdGlzZWxlY3QgKi8KICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKQoJewoJICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSk7CgkgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCX0KICAgICAgLy8gZW5jb2RlIGl0IGludG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdC4KICAgICAgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9IGltcGxvZGUoJywnLCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKTsKICAgICAgYnJlYWs7CgogICAgY2FzZSAnNic6IC8qIGltYWdlICovCiAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ19jbGVhciddKSAmJiAKCSAgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidfY2xlYXInXSA9PSAnY2xlYXInICkKICAgICAgIHsKICAgICAgICAgLy8gd2UncmUgdG9sZCB0byBjbGVhciBhbiBpbWFnZSBwcm9wZXJ0eSwgd2UgbXVzdCBhbHNvCiAgICAgICAgIC8vIGRlbGV0ZSB0aGUgaW1hZ2UKICAgICAgICAgJGRlc3REaXIxID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKICAgICAgICAgJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiAgICAgICAgICRmaWxlMSA9ICRkZXN0RGlyMS4kcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdOwogICAgICAgICBAdW5saW5rKCAkZmlsZTEgKTsKICAgICAgICAKICAgICAgICAgLy8gdW5zZXQgdGhlIGhpZGRlbiBwYXJhbSB0byBwcmV2ZW50IGFueSBmdXJ0aGVyIHByb2Nlc3NpbmcKICAgICAgICAgdW5zZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKTsKICAgICAgIH0KICAgICAgaWYoICRyZXF1aXJlZCAmJiAKCSAgKCghaXNzZXQoJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pIHx8ICRfRklMRVNbJGlkLidmZXVfaW5wdXRfJy4kcHJvcG5hbWVdWydzaXplJ10gPT0gMCkgJiYKCSAgICghaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgfHwgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9PSAnJykpICkKCXsKCSAgLy8gYnV0IHdlIGNhbid0IGZpbmQgYSB2YWx1ZQoJICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSk7CgkgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCX0KICAgICAgYnJlYWs7CgogICAgY2FzZSAnOCc6IC8qIGRhdGUgKi8KICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSkgKQoJewoJICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdID0gCgkgICAgbWt0aW1lKDAsMCwwLAoJCSAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSwKCQkgICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ0RheSddLAoJCSAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKCSAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidNb250aCddKTsKCSAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidEYXknXSk7CgkgIHVuc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKCX0KICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKQoJewoJICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRwcm9wbmFtZSk7CgkgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKCX0KICAgICAgYnJlYWs7CiAgICB9Cn0KCgovLwovLyBub3cgd2UgYWN0dWFsbHkgY2hhbmdlIHRoZSB1c2VyIHNldHRpbmdzCi8vCgovLyBwYXNzd29yZAppZiggJHBhc3N3b3JkICE9ICcnKQogIHsKICAgICRyZXN1bHQgPSAkdGhpcy0+U2V0VXNlciggJHVpZCwgJHVpbmZvWyd1c2VybmFtZSddLCAkcGFzc3dvcmQgKTsKICAgIGlmKCAkcmVzdWx0WzBdID09IEZBTFNFICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJykuJyAnLiRyZXN1bHRbMV07CgkkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgIH0KICB9CgovLwovLyBzb3JyeSwgYnV0IGNoYW5naW5nIHlvdXIgc2V0dGluZ3MgaW52YWxpZGF0ZXMgdG9vCi8vCiR0aGlzLT5fQXR0ZW1wdEludmFsaWRhdGVMb2dpbkNvb2tpZSgpOwoKLy8KLy8gbm93IGRlbGV0ZSBhbGwgdGhlIHByb3BlcnRpZXMgZm9yIHRoaXMgdXNlcgovLyBpbiBwcmVwYXJhdGlvbiBmb3Igc2V0dGluZyBuZXcgb25lcy4KLy8KJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVpZCk7CiR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCAiIiwgJHVpZCwgdHJ1ZSApOwpmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbCApCnsKICBpZiggcHJlZ19tYXRjaCggJy9wYXNzd29yZCQvJywgJGtleSApICkKICAgIHsKICAgICAgY29udGludWU7CiAgICB9CgogIGlmKCBwcmVnX21hdGNoKCcvX2NsZWFyJC8nLCAka2V5ICkgKQogICAgewogICAgICBjb250aW51ZTsKICAgIH0KCiAgaWYoIHByZWdfbWF0Y2goICcvXmZldV9pbnB1dF8vJywgJGtleSApICkKICAgIHsKICAgICAgJHByb3BuYW1lID0gc3Vic3RyKCAka2V5LCBzdHJsZW4oJ2ZldV9pbnB1dF8nKSk7CiAgICAgICRyZXF1aXJlZCA9ICgkcHJvcGVydGllc1skcHJvcG5hbWVdWyduYW1lJ10gPT0gMik7CiAgICAgICRmbGR0eXBlICA9ICRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWyd0eXBlJ107CiAgICAgICRmb3JjZV91bmlxdWUgPSAkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsnZm9yY2VfdW5pcXVlJ107CgogICAgICBpZiggJGZsZHR5cGUgPT0gNiApCgl7CgkgIC8vIGltYWdlIHR5cGUKCSAgJHZhbCA9ICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV07CgkgIGlmKCBpc3NldCggJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKSAmJgoJICAgICAgJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV1bJ3NpemUnXSA+IDApCgkgICAgewoJICAgICAgLy8gSXQgaXMgYW4gdXBsb2FkIGZpbGUgdHlwZQoJICAgICAgJHJlc3VsdCA9ICR0aGlzLT5NYW5hZ2VJbWFnZVVwbG9hZCgkaWQsICdmZXVfaW5wdXRfJywgJHByb3BuYW1lLCAkdWlkICk7CgkgICAgICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApCgkJewoJCSAgJHBhcmFtc1snZXJyb3InXSA9IDE7CgkJICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3InKS4nJm5ic3A7Jy4kcmVzdWx0WzFdOwoJCSAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJCX0KCSAgICAgICR2YWwgPSAkcmVzdWx0WzFdOwoJICAgIH0KCX0KICAgICAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gKSApCgl7CgkgICR2YWwgPSB0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pOwoJICAkdmFsID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSgkdmFsKTsKCX0KICAgICAgZWxzZSAKCXsKCSAgY29udGludWU7Cgl9CgogICAgICAvLyBjaGVjayBmb3IgZm9yY2VkIHVuaXF1ZSB2YWx1ZXMuCiAgICAgIGlmKCAkZm9yY2VfdW5pcXVlICYmICEkdGhpcy0+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSggJHVpZCwgJHByb3BuYW1lLCAkdmFsICkgKQoJewoJICAkcGFyYW1zWydlcnJvciddID0gMTsKCSAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJywkcHJvcG5hbWUpOwoJICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7Cgl9CgogICAgICAkcmV0ID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRwcm9wbmFtZSwgJHZhbCwgJHVpZCApOwogICAgICBpZiggJHJldCA9PSBmYWxzZSApCgl7CgkgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwoJICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3Jfc2V0dGluZ3Byb3BlcnR5JykuJyAnLiRwcm9wbmFtZTsKCSAgJHRoaXMtPlJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJICByZXR1cm47Cgl9CiAgICB9Cn0KCi8vIHNlbmQgdGhlIGV2ZW50CiRldmVudF9wYXJhbXMgPSBhcnJheSgpOwokZXZlbnRfcGFyYW1zWyduYW1lJ10gPSAkdWluZm9bJ3VzZXJuYW1lJ107CiRldmVudF9wYXJhbXNbJ2lkJ10gPSAkdWlkOwokdGhpcy0+U2VuZEV2ZW50KCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25VcGRhdGVVc2VyJywkZXZlbnRfcGFyYW1zKTsKCmlmKCBpc3NldCggJHBhcmFtc1snZmV1X3JldHVybnRvJ10gKSApCiAgewogICAgJHBhZ2UgPSBDb250ZW50TWFuYWdlcjo6R2V0UGFnZUlERnJvbUFsaWFzKCAkcGFyYW1zWydmZXVfcmV0dXJudG8nXSApOwogICAgaWYoICRwYWdlICkKICAgICAgewoJJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJHBhZ2UgKTsKCXJldHVybjsKICAgICAgfQogIH0KCiRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzJyk7CmlmKCAhZW1wdHkoJHBhZ2UpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywkdWluZm9bJ3VzZXJuYW1lJ10pOwogICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VyaW5mbycsJHVpbmZvKTsKICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR0aGlzLT5Mb2dnZWRpbklkKCkgKTsKICAgICRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKICAgICRzbWFydHktPmFzc2lnbignZ3JvdXAnLCRncm91cG5hbWUpOwogICAgJHBhZ2UgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHBhZ2UpOwoKICAgICRwYWdlaWQgPSBDb250ZW50TWFuYWdlcjo6R2V0UGFnZUlERnJvbUFsaWFzKCAkcGFnZSApOwogICAgaWYoICRwYWdlaWQgKQogICAgICB7CgkkcmV0dXJuaWQgPSAkcGFnZWlkOwogICAgICB9CiAgfQoKLy8gYW5kIHJlZGlyZWN0IGJhY2sgdG8gZGVzdGluYXRpb24gcGFnZQokdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkcmV0dXJuaWQgKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_verifycode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgogICAgJHVpZCA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF91aWQnXSApICkKICAgICAgewoJJHVpZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdWlkJ10pOwogICAgICB9CiAgICAkY29kZSA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9jb2RlJ10gKSApCiAgICAgIHsKCSRjb2RlID0gdHJpbSgkcGFyYW1zWydpbnB1dF9jb2RlJ10pOwogICAgICB9CiAgICAkcGFzc3dvcmQgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSApICkKICAgICAgewoJJHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddKTsKICAgICAgfQogICAgJHJlcGVhdHBhc3N3b3JkID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X3JlcGVhdHBhc3N3b3JkJ10gKSApCiAgICAgIHsKCSRyZXBlYXRwYXNzd29yZCA9IHRyaW0oJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSk7CiAgICAgIH0KCiAgICBpZiggJHBhc3N3b3JkID09ICcnIHx8ICRyZXBlYXRwYXNzd29yZCA9PSAnJyB8fCAKCSRwYXNzd29yZCAhPSAkcmVwZWF0cGFzc3dvcmQgfHwgISR0aGlzLT5Jc1ZhbGlkUGFzc3dvcmQoJHBhc3N3b3JkKSkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhc3N3b3JkJyk7CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAndmVyaWZ5Y29kZScsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gbm93IHdlIGhhdmUgdG8gdmVyaWZ5IHRoZSBjb2RlCiAgICAkcmVzdWx0ID0gJHRoaXMtPkdldFVzZXJUZW1wQ29kZSggJHVpZCApOwogICAgaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKQogICAgICB7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXN1bHRbMV07CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAndmVyaWZ5Y29kZScsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CiAgICAkZGJjb2RlID0gJHJlc3VsdFsxXVsnY29kZSddOwoKICAgIGlmKCAkZGJjb2RlICE9ICRjb2RlICkKICAgICAgewoJJHBhcmFtc1snZXJyb3InXSA9IDE7CgkkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGNvZGUnKTsKCSR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICd2ZXJpZnljb2RlJywgJHJldHVybmlkLCAkcGFyYW1zICk7CglyZXR1cm47CiAgICAgIH0KCiAgICAvLyB3aGV3LCB3ZSBnb3QgaXQuLi4gbm93IHdlIGNhbiByZXNldCB0aGUgcGFzc3dvcmQKICAgICRyZXQgPSAkdGhpcy0+U2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKTsKICAgIGlmKCAkcmV0WzBdICE9IFRSVUUgKQogICAgICB7CgkkcGFyYW1zWydlcnJvciddID0gMTsKCSRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXRbMV07CgkkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAndmVyaWZ5Y29kZScsICRyZXR1cm5pZCwgJHBhcmFtcyApOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gYW5kIGRlbGV0ZSB0aGUgY29kZQogICAgJHRoaXMtPlJlbW92ZVVzZXJUZW1wQ29kZSggJHVpZCApOwoKICAgIC8vIGFuZCBzZW5kIGFuIGV2ZW50CiAgICAkZXZlbnRfcGFyYW1zID0gYXJyYXkoKTsKICAgICRldmVudF9wYXJhbXNbJ25hbWUnXSA9ICR0aGlzLT5HZXRVc2VybmFtZSgkdWlkKTsKICAgICRldmVudF9wYXJhbXNbJ2lkJ10gPSAkdWlkOwogICAgJHRoaXMtPlNlbmRFdmVudCgnT25VcGRhdGVVc2VyJywkZXZlbnRfcGFyYW1zKTsKICAgICR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPblVwZGF0ZVVzZXInLCRldmVudF9wYXJhbXMpOwoKICAgIC8vIEFuZCByZWRpcmVjdCB0byBhIHNwZWNpZmllZCBwYWdlCiAgICAkcGFnZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1sncmV0dXJudG8nXSApICkKICAgICAgewoJJHBhZ2UgPSAkcGFyYW1zWydyZXR1cm50byddOwogICAgICB9CgogICAgJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZScsJGV2ZW50X3BhcmFtc1snbmFtZSddKTsKICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKICAgICRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKICAgICRzbWFydHktPmFzc2lnbignZ3JvdXBuYW1lJywkZ3JvdXBuYW1lKTsKICAgICRwYWdlID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCRwYWdlKTsKCiAgICBpZiggJHBhZ2UgKQogICAgICB7CgkkcGFnZWlkID0gQ29udGVudE1hbmFnZXI6OkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKCWlmKCAkcGFnZWlkICkKCSAgewoJICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoICRwYWdlaWQgKTsKCSAgICByZXR1cm47CgkgIH0KCWRpZSggImNvdWxkbid0IGdldCBwYWdlaWQgZm9yICRwYWdlIiApOwogICAgICB9CiAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRyZXR1cm5pZCk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgokdXNlcm5hbWUgPSAkdGhpcy0+TG9nZ2VkSW5OYW1lKCk7CiR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwoKJHRoaXMtPkxvZ291dCgpOwokdGhpcy0+X0F0dGVtcHRJbnZhbGlkYXRlTG9naW5Db29raWUoKTsKCiR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLAoJICAgICAgJHRoaXMtPkxhbmcoJ2Zyb250ZW5kdXNlcl9sb2dvdXQnKS4iOiAkdXNlcm5hbWUiKTsKCiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VybmFtZTsKJHBhcm1zWydpZCddID0gJHVpZDsKJHRoaXMtPlNlbmRFdmVudCggJ09uTG9nb3V0JywgJHBhcm1zICk7CiR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPbkxvZ291dCcsJHBhcm1zKTsKCi8vIHdlJ3JlIGxvZ2dlZCBvdXQKLy8gcmVkaXJlY3Qgc29tZXdoZXJlIAovLyB0b2RvLCBhZGQgbW9yZSBvcHRpb25zIGhlcmUuCiRwYWdlID0gJyc7CiRyZXR1cm5fdXJsID0gJyc7CmlmKCBpc3NldCgkX1NFU1NJT05bJ2ZldV9wcmVsb2dvdXRfdXJsJ10pICkKICB7CiAgICAkcmV0dXJuX3VybCA9ICRfU0VTU0lPTlsnZmV1X3ByZWxvZ291dF91cmwnXTsKICAgIHVuc2V0KCRfU0VTU0lPTlsnZmV1X3ByZWxvZ291dF91cmwnXSk7CiAgfQppZiggJHJldHVybl91cmwgPT0gJycgKQogIHsKICAgICRwYWdlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dvdXQnKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1sncmV0dXJudG8nXSApICkKICAgICAgewoJJHBhZ2UgPSAkcGFyYW1zWydyZXR1cm50byddOwogICAgICB9CiAgfQoKJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZScsJHVzZXJuYW1lKTsKJHBhZ2UgPSBzdHJfcmVwbGFjZSggIntcJHVzZXJuYW1lfSIsICR1c2VybmFtZSwgJHBhZ2UgKTsKJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwokZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiRzbWFydHktPmFzc2lnbignZ3JvdXBuYW1lJywkZ3JvdXBuYW1lKTsKJHBhZ2UgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHBhZ2UpOwoKaWYoICRyZXR1cm5fdXJsICE9ICcnICkKICB7CiAgICByZWRpcmVjdCgkcmV0dXJuX3VybCk7CiAgfQppZiggJHBhZ2UgKQogIHsKICAgICRpZCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgICBpZiggJGlkICkKICAgICAgewoJJHRoaXMtPlJlZGlyZWN0Q29udGVudCggJGlkICk7CglyZXR1cm47CiAgICAgIH0KICB9CiR0aGlzLT5SZWRpcmVjdENvbnRlbnQoICRyZXR1cm5pZCApOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.reset_session.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIHJldHVybjsKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCAkdWlkID09PSBmYWxzZSApIHJldHVybjsKCmlmKCBpc3NldCgkcGFyYW1zWydjaGVja29ubHknXSkgJiYgJHBhcmFtc1snY2hlY2tvbmx5J10gPT0gMSApCiAgewogICAgaWYoICFpc3NldCgkcGFyYW1zWyd1aWQnXSkgKSByZXR1cm47CiAgICAvLyBub3RoaW5nIHRvIGRvIGhlcmUuCiAgfQplbHNlCiAgewogICAgJHByZXR0eXVybCA9ICJmZXUvcmVzZXQveyR1aWR9IjsKICAgICRzbWFydHktPmFzc2lnbignc2Vzc2lvbl90aW1lb3V0JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcl9zZXNzaW9uX2V4cGlyZXMnKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3Jlc2V0X3VybCcsCgkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwncmVzZXRfc2Vzc2lvbicsJHJldHVybmlkLCcnLAoJCQkJICAgICAgYXJyYXkoJ3VpZCc9PiR1aWQsJ2NoZWNrb25seSc9PjEsCgkJCQkJICAgICdzaG93dGVtcGxhdGUnPT4nZmFsc2UnKSwKCQkJCSAgICAgICcnLHRydWUsZmFsc2UsJycsZmFsc2UsJHByZXR0eXVybCkpOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX3Jlc2V0c2Vzc2lvbicpOwogIH0KCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.userhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnbGlzdHVzZXJzJyApICkKICB7CiAgICByZXR1cm47CiAgfQoKJHVzZXJpZCA9ICcnOwppZiAoaXNzZXQgKCRwYXJhbXNbJ3VzZXJfaWQnXSkgJiYgJHBhcmFtc1sndXNlcl9pZCddICE9ICIiKQogIHsKICAgICR1c2VyaWQgPSAkcGFyYW1zWyd1c2VyX2lkJ107CiAgfSAgCgokcGFnZWxpbWl0cyA9IGFycmF5KCk7CiRwYWdlbGltaXRzWyc1J10gPSA1OwokcGFnZWxpbWl0c1snMTAnXSA9IDEwOwokcGFnZWxpbWl0c1snMjUnXSA9IDI1OwokcGFnZWxpbWl0c1snNTAnXSA9IDUwOwokcGFnZWxpbWl0c1snMTAwJ10gPSAxMDA7CiRwYWdlbGltaXRzWycyNTAnXSA9IDI1MDsKJHBhZ2VsaW1pdHNbJzUwMCddID0gNTAwOwoKJGRhdGVsaXN0ID0gYXJyYXkoKTsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX2FsbHJlY29yZHMnKV0gPSAtMTsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZWhvdXJvbGQnKV0gPSAnMWgnOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfc2l4aG91cm9sZCcpXSA9ICc2aCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV90d2VsdmVob3Vyb2xkJyldID0gJzEyaCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmVkYXlvbGQnKV0gPSAnMWQnOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25ld2Vla29sZCcpXSA9ICcxdyc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV90d293ZWVrc29sZCcpXSA9ICcydyc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmVtb250aG9sZCcpXSA9ICcxbSc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV90aHJlZW1vbnRoc29sZCcpXSA9ICczbSc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9zaXhtb250aHNvbGQnKV0gPSAnNm0nOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25leWVhcm9sZCcpXSA9ICcxeSc7Cgokc29ydG9yZGVycyA9IGFycmF5KCk7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfZGF0ZV9kZXNjJyldID0gJ3JlZmRhdGUgREVTQyc7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfZGF0ZV9hc2MnKV0gPSAncmVmZGF0ZSBBU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2FjdGlvbl9kZXNjJyldID0gJ2FjdGlvbiBERVNDJzsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJyldID0gJ2FjdGlvbiBBU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJyldID0gJ2lwYWRkcmVzcyBERVNDJzsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJyldID0gJ2lwYWRkcmVzcyBBU0MnOwppZiggJHVzZXJpZCA9PSAnJyApCiAgewogICAgJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJyldID0gJ3VzZXJuYW1lIERFU0MnOwogICAgJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnKV0gPSAndXNlcm5hbWUgQVNDJzsKICB9CgokZXZlbnR0eXBlcyA9IGFycmF5KCk7CiRldmVudHR5cGVzWydhbGwnXSA9ICdhbGwnOwokZXZlbnR0eXBlc1snZmFpbCddID0gJ2ZhaWwnOwokZXZlbnR0eXBlc1snbG9naW4nXSA9ICdsb2dpbic7CiRldmVudHR5cGVzWydsb2dvdXQnXSA9ICdsb2dvdXQnOwokZXZlbnR0eXBlc1snZXhwaXJlJ10gPSAnZXhwaXJlJzsKaWYoIGlzc2V0KCAkcGFyYW1zWydzdWJtaXR1c2VyaGlzdG9yeSddICkgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcGFnZWxpbWl0J10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9wYWdlbGltaXQnLCRwYXJhbXNbJ2lucHV0X3BhZ2VsaW1pdCddKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9zb3J0b3JkZXInXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3NvcnRvcmRlcicsJHBhcmFtc1snaW5wdXRfc29ydG9yZGVyJ10pOwogICAgICB9CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2V2ZW50dHlwZSddICkgKQogICAgICB7CgkkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZXZlbnR0eXBlJywkcGFyYW1zWydpbnB1dF9ldmVudHR5cGUnXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZmlsdGVyX2RhdGUnXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2RhdGUnLCRwYXJhbXNbJ2lucHV0X2ZpbHRlcl9kYXRlJ10pOwogICAgICB9CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2lucHV0X2dyb3VwX2lwJ10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ncm91cF9pcCcsJHBhcmFtc1snaW5wdXRfZ3JvdXBfaXAnXSk7CiAgICAgIH0KICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWVfcmVnZXgnXSApICkKICAgICAgewoJJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3VzZXJuYW1lX3JlZ2V4JywkcGFyYW1zWydpbnB1dF91c2VybmFtZV9yZWdleCddKTsKICAgICAgfQogICAgaWYoICR1c2VyaWQgPT0gJycgKSAKICAgICAgewoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCd1c2VyaGlzdG9yeScpOwogICAgICB9CiAgfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1sncmVzZXQnXSApICkKICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfcGFnZWxpbWl0JywxMCk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZXZlbnR0eXBlJywnYWxsJyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZGF0ZScsJy0xJyk7IC8vIHRvZG8KICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ncm91cF9pcCcsMCk7IC8vIHRvZG8KICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9zb3J0b3JkZXInLCdyZWZkYXRlIERFU0MnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV91c2VybmFtZV9yZWdleCcsJycpOwogICAgaWYoICR1c2VyaWQgPT0gJycgKSAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3VzZXJoaXN0b3J5Jyk7CiAgfQoKJGlucHV0X3BhZ2VsaW1pdCA9IChpbnQpJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3BhZ2VsaW1pdCcsMTApOwokaW5wdXRfc29ydG9yZGVyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3NvcnRvcmRlcicsJ3JlZmRhdGUgREVTQycpOwokaW5wdXRfZXZlbnR0eXBlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2V2ZW50dHlwZScsJ2FsbCcpOwokaW5wdXRfZmlsdGVyX2RhdGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZGF0ZScsJy0xJyk7CiRpbnB1dF9ncm91cF9pcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ncm91cF9pcCcsMCk7CiRpbnB1dF91c2VybmFtZV9yZWdleCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV91c2VybmFtZV9yZWdleCcpOwoKCi8vIEFkZCB0aGUgdXNlciBpbmZvIHRvIHNtYXJ0eQppZiggJHVzZXJpZCAhPSAnJyApCiAgewogICAgJHJlc3VsdHMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHBhcmFtc1sndXNlcl9pZCddKTsKICAgICR1c2VyaW5mbyA9ICcnOwogICAgaWYoICRyZXN1bHRzWzBdID09PSBUUlVFICkKICAgICAgewoJJHVzZXJpbmZvID0gJHJlc3VsdHNbMV07CiAgICAgIH0KICAgIGZvcmVhY2goICR1c2VyaW5mbyBhcyAkayA9PiAkdiApCiAgICAgIHsKCSRzbWFydHktPmFzc2lnbigndXNlcl8nLiRrLCR2KTsKICAgICAgfQogICAgJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCRwYXJhbXNbJ3VzZXJfaWQnXSk7CiAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJG9uZXByb3AgKQogICAgICB7Cgkkc21hcnR5LT5hc3NpZ24oJ3VzZXJwcm9wXycuJG9uZXByb3BbJ3RpdGxlJ10sJG9uZXByb3BbJ2RhdGEnXSk7CiAgICAgIH0KICB9CgovLyBmaWd1cmUgb3V0IHdoYXQgcGFnZSB3ZSdyZSBvbgokcGFnZW51bWJlciA9IDE7CmlmKCBpc3NldCggJHBhcmFtc1sncGFnZW51bWJlciddICkgKQogIHsKICAgICRwYWdlbnVtYmVyID0gKGludCkkcGFyYW1zWydwYWdlbnVtYmVyJ107CiAgfQokc3RhcnRlbGVtZW50ID0gKCRwYWdlbnVtYmVyLTEpICogJGlucHV0X3BhZ2VsaW1pdDsKCi8vCi8vIEFkZCB0aGUgaGlzdG9yeSB0byBzbWFydHkKLy8KJHdoZXJlID0gYXJyYXkoKTsKJHBhcm1zID0gYXJyYXkoKTsKJHF1ZXJ5MSA9ICJTRUxFQ1QgQS4qLEIudXNlcm5hbWUgCiAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IEEsIAogICAgICAgICAgICAgICAgICAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgQgogICAgICAgICAgICBXSEVSRSBBLnVzZXJpZCA9IEIuaWQiOwokcXVlcnkyID0gIlNFTEVDVCBjb3VudCh1c2VyaWQpIGFzIGNvdW50IEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiOwppZiggJHVzZXJpZCAhPSAnJyApCiAgewogICAgJHdoZXJlW10gPSAndXNlcmlkID0gPyc7CiAgICAkcGFybXNbXSA9ICR1c2VyaWQ7CiAgfQplbHNlCiAgewogICAgLy8gb25seSB1c2UgdGhlIHVzZXJuYW1lIHJlZ2V4IGlmIHRoZSB1c2VyaWQgaXMgZW1wdHkKICAgIGlmKCAkaW5wdXRfdXNlcm5hbWVfcmVnZXggIT0gJycgKQogICAgICB7Cgkkd2hlcmVbXSA9ICd1c2VybmFtZSBSRUdFWFAgPyc7CgkkcGFybXNbXSA9ICRpbnB1dF91c2VybmFtZV9yZWdleDsKICAgICAgfQogIH0KaWYoICRpbnB1dF9ldmVudHR5cGUgIT0gJ2FsbCcgKSAKICB7CiAgICAkd2hlcmVbXSA9ICdhY3Rpb24gPSA/JzsKICAgICRwYXJtc1tdID0gJGlucHV0X2V2ZW50dHlwZTsKICB9CmlmKCAkaW5wdXRfZmlsdGVyX2RhdGUgIT0gLTEgKQogIHsKICAgICRkYXRlID0gJyc7CiAgICBzd2l0Y2goICRpbnB1dF9maWx0ZXJfZGF0ZSApCiAgICAgIHsKICAgICAgY2FzZSAnMWgnOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzEgaG91ciBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICc2aCc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnNiBob3VycyBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICcxMmgnOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwoJYnJlYWs7CiAgICAgIGNhc2UgJzFkJzoKCSRkYXRlID0gc3RydG90aW1lKCcxIGRheSBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICcxdyc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnMSB3ZWVrIGFnbycpOwoJYnJlYWs7CiAgICAgIGNhc2UgJzJ3JzoKCSRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwoJYnJlYWs7CiAgICAgIGNhc2UgJzFtJzoKCSRkYXRlID0gc3RydG90aW1lKCcxIG1vbnRoIGFnbycpOwoJYnJlYWs7CiAgICAgIGNhc2UgJzNtJzoKCSRkYXRlID0gc3RydG90aW1lKCczIG1vbnRocyBhZ28nKTsKCWJyZWFrOwogICAgICBjYXNlICc2bSc6CgkkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CglicmVhazsKICAgICAgY2FzZSAnMXknOgoJJGRhdGUgPSBzdHJ0b3RpbWUoJzEgeWVhciBhZ28nKTsKCWJyZWFrOwogICAgICB9CiAgICBpZiggJGRhdGUgIT0gJycgKQogICAgICB7Cgkkd2hlcmVbXSA9ICdyZWZkYXRlID4gPyc7CgkkcGFybXNbXSA9IHRyaW0oJGRiLT5EYlRpbWVTdGFtcCgkZGF0ZSksIiciKTsKICAgICAgfQogIH0KaWYoIGNvdW50KCR3aGVyZSkgPiAwICkKICB7CiAgICAkcXVlcnkxIC49ICcgQU5EICcuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CiAgICAkcXVlcnkyIC49ICcgQU5EICcuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CiAgfQppZiggJGlucHV0X2dyb3VwX2lwID09IDEgKQogIHsKICAgICRxdWVyeTEgLj0gJyBHUk9VUCBCWSBpcGFkZHJlc3MnOwogICAgJHF1ZXJ5MiAuPSAnIEdST1VQIEJZIGlwYWRkcmVzcyc7CiAgfQokcXVlcnkxIC49ICIgT1JERVIgQlkgIi4kaW5wdXRfc29ydG9yZGVyOwokcXVlcnkxIC49ICIgTElNSVQgJHN0YXJ0ZWxlbWVudCwkaW5wdXRfcGFnZWxpbWl0IjsKCi8vIE5vdyBnZXQgdGhlIGNvdW50LCBhbmQgbnVtYmVyIG9mIHBhZ2VzCiR0bXByb3cgPSAkZGItPkdldFJvdyggJHF1ZXJ5MiwgJHBhcm1zICk7CiRyZWNvcmRjb3VudCA9ICR0bXByb3dbJ2NvdW50J107CiRwYWdlY291bnQgPSAoaW50KSgkcmVjb3JkY291bnQgLyAkaW5wdXRfcGFnZWxpbWl0KTsKaWYoICgkcmVjb3JkY291bnQgJSAkaW5wdXRfcGFnZWxpbWl0KSAhPSAwICkgJHBhZ2Vjb3VudCsrOwokc21hcnR5LT5hc3NpZ24oJ3JlY29yZGNvdW50JywkcmVjb3JkY291bnQpOwoKLy8gc29tZSBwYWdpbmF0aW9uIHZhcmlhYmxlcyB0byBzbWFydHkuCmlmKCAkcGFnZW51bWJlciA9PSAxICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3ByZXZwYWdlJywnPCcpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdmaXJzdHBhZ2UnLCc8PCcpOwogIH0KZWxzZQogIHsKICAgICRzbWFydHktPmFzc2lnbigncHJldnBhZ2UnLAoJCSAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJHBhcmFtc1snYWN0aW9uJ10sCgkJCQkgICAgICAkcmV0dXJuaWQsJzwnLAoJCQkJICAgICAgYXJyYXkoJ3BhZ2VudW1iZXInPT4kcGFnZW51bWJlci0xLAoJCQkJCSAgICAndXNlcl9pZCc9PiR1c2VyaWQpKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZpcnN0cGFnZScsCgkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwkcGFyYW1zWydhY3Rpb24nXSwKCQkJCSAgICAgICRyZXR1cm5pZCwnPDwnLAoJCQkJICAgICAgYXJyYXkoJ3BhZ2VudW1iZXInPT4xLAoJCQkJCSAgICAndXNlcl9pZCc9PiR1c2VyaWQpKSk7CiAgfQppZiggJHBhZ2VudW1iZXIgPj0gJHBhZ2Vjb3VudCApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCduZXh0cGFnZScsJz4nKTsKICAgICRzbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLCc+PicpOwogIH0KZWxzZQogIHsKICAgICRzbWFydHktPmFzc2lnbignbmV4dHBhZ2UnLAoJCSAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJHBhcmFtc1snYWN0aW9uJ10sCgkJCQkgICAgICAkcmV0dXJuaWQsJz4nLAoJCQkJICAgICAgYXJyYXkoJ3BhZ2VudW1iZXInPT4kcGFnZW51bWJlcisxLAoJCQkJCSAgICAndXNlcl9pZCc9PiR1c2VyaWQpKSk7CgogICAgJHNtYXJ0eS0+YXNzaWduKCdsYXN0cGFnZScsCgkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwkcGFyYW1zWydhY3Rpb24nXSwKCQkJCSAgICAgICRyZXR1cm5pZCwnPj4nLAoJCQkJICAgICAgYXJyYXkoJ3BhZ2VudW1iZXInPT4kcGFnZWNvdW50LAoJCQkJCSAgICAndXNlcl9pZCc9PiR1c2VyaWQpKSk7CgogIH0KJHNtYXJ0eS0+YXNzaWduKCdwYWdlbnVtYmVyJywkcGFnZW51bWJlcik7CiRzbWFydHktPmFzc2lnbigncGFnZWNvdW50JywkcGFnZWNvdW50KTsKJHNtYXJ0eS0+YXNzaWduKCdvZnRleHQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfb2YnKSk7CgppZiggJHVzZXJpZCA9PSAnJyApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdtdWx0aXVzZXInLDEpOwogIH0KCi8vIFRoZSBkYXRhYmFzZSBxdWVyeQokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeTEsICRwYXJtcyApOwokcm93YXJyYXkgPSBhcnJheSgpOwokcm93Y2xhc3MgPSAncm93MSc7CndoaWxlKCAkZGJyZXN1bHQgJiYgISRkYnJlc3VsdC0+RU9GICkKICB7CiAgICAkZmllbGRzID0mICRkYnJlc3VsdC0+ZmllbGRzOwogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwogICAgZm9yZWFjaCggJGZpZWxkcyBhcyAka2V5ID0+ICR2YWx1ZSApCiAgICAgIHsKCSRvbmVyb3ctPiRrZXkgPSAkdmFsdWU7CiAgICAgIH0KCiAgICAvLyBmaXggc29tZSBmaWVsZHMgdXAKICAgICRvbmVyb3ctPnJlZmRhdGUgPSAkZGItPlVuaXhUaW1lU3RhbXAoJG9uZXJvdy0+cmVmZGF0ZSk7CiAgICBpZiggJG9uZXJvdy0+aXBhZGRyZXNzID09ICcnICkKICAgICAgewoJJG9uZXJvdy0+aXBhZGRyZXNzID0gJHRoaXMtPkxhbmcoJ3Vua25vd24nKTsKICAgICAgfQogICAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgogICAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICAgJHJvd2NsYXNzID0gKCRyb3djbGFzcyA9PSAncm93MScpID8gJ3JvdzInIDogJ3JvdzEnOwogICAgJGRicmVzdWx0LT5Nb3ZlTmV4dCgpOwogIH0KCmlmKCBjb3VudCgkcm93YXJyYXkpID09IDAgKQogIHsKICAgICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJHRoaXMtPkxhbmcoJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnKSk7CiAgfQoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVjb3Jkc2ZvdW5kJywkdGhpcy0+TGFuZygncHJvbXB0X3JlY29yZHNmb3VuZCcpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9sZWdlbmRfZmlsdGVyJywkdGhpcy0+TGFuZygnZmlsdGVyJykpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlX2xlZ2VuZF9ncm91cHNvcnQnLCR0aGlzLT5MYW5nKCd0aXRsZV9ncm91cHNvcnQnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwkcGFyYW1zWydhY3Rpb24nXSwkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdHVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXNldCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwncmVzZXQnLCR0aGlzLT5MYW5nKCdyZXNldCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wYWdlbGltaXQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfcGFnZWxpbWl0JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3BhZ2VsaW1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9wYWdlbGltaXQnLCRwYWdlbGltaXRzLAoJCQkJCSAgIC0xLCAkaW5wdXRfcGFnZWxpbWl0KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9zb3J0b3JkZXInLCR0aGlzLT5MYW5nKCdzb3J0YnknKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc29ydG9yZGVyJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X3NvcnRvcmRlcicsJHNvcnRvcmRlcnMsCgkJCQkJICAgLTEsJGlucHV0X3NvcnRvcmRlcikpOwoJCQkJICAgICAgIAokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ncm91cF9pcCcsJHRoaXMtPkxhbmcoJ3Byb21wdF9ncm91cF9pcCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ncm91cF9pcCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9ncm91cF9pcCcsCgkJCQkJICAgYXJyYXkoJHRoaXMtPkxhbmcoJ3llcycpPT4xLAoJCQkJCQkgJHRoaXMtPkxhbmcoJ25vJyk9PjApLAoJCQkJCSAgIC0xLCAkaW5wdXRfZ3JvdXBfaXApKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lX3JlZ2V4JywkdGhpcy0+TGFuZygndXNlcmZpbHRlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZV9yZWdleCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X3VzZXJuYW1lX3JlZ2V4JywKCQkJCSAgICAgICAkaW5wdXRfdXNlcm5hbWVfcmVnZXgsIDI1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJywkdGhpcy0+TGFuZygncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyX2V2ZW50dHlwZScsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9ldmVudHR5cGUnLAoJCQkJCSAgICRldmVudHR5cGVzLAoJCQkJCSAgIC0xLCRpbnB1dF9ldmVudHR5cGUpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZmlsdGVyX2RhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZmlsdGVyX2RhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyX2RhdGUnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfZmlsdGVyX2RhdGUnLAoJCQkJCSAgICRkYXRlbGlzdCwKCQkJCQkgICAtMSwkaW5wdXRfZmlsdGVyX2RhdGUpKTsKCiRzbWFydHktPmFzc2lnbigndGl0bGVfdXNlcmhpc3RvcnknLCR0aGlzLT5MYW5nKCd0aXRsZV91c2VyaGlzdG9yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3InLCR0aGlzLT5MYW5nKCdmb3InKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywkdGhpcy0+TGFuZygncHJvbXB0X3VzZXJuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9mb3InLCR0aGlzLT5MYW5nKCdwcm9tcHRfZm9yJykpOwokc21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkcm93YXJyYXkpOwokc21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsY291bnQoJHJvd2FycmF5KSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X3JlZmRhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYWN0aW9uJywkdGhpcy0+TGFuZygncHJvbXB0X2V2ZW50dHlwZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaXBhZGRyZXNzJywkdGhpcy0+TGFuZygncHJvbXB0X2lwYWRkcmVzcycpKTsKCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgndXNlcmhpc3RvcnkudHBsJyk7Ci8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.verifycode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgovLyBmaWxsIGluIHRoZSB0ZW1wbGF0ZQokdWlkID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdWlkJ10gKSApCiAgewogICAgJHVpZCA9ICRwYXJhbXNbJ2lucHV0X3VpZCddOwogIH0KJHVzZXJuYW1lID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApICkKICB7CiAgICAkdXNlcm5hbWUgPSAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddOwogIH0KIGVsc2UKICAgewogICAgICR1c2VybmFtZSA9ICR0aGlzLT5HZXRVc2VyTmFtZSggJHVpZCApOwogICB9CiRjb2RlID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfY29kZSddICkgKQogIHsKICAgICRjb2RlID0gJHBhcmFtc1snaW5wdXRfY29kZSddOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydlcnJvciddICkgKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZXJyb3InLCRwYXJhbXNbJ2Vycm9yJ10pOwogIH0KaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkcGFyYW1zWydtZXNzYWdlJ10pOwogIH0KCiR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkgICAgICAkdGhpcy0+ZmVDcmVhdGVGb3JtU3RhcnQoJGlkLCdkb192ZXJpZnljb2RlJywkcmV0dXJuaWQpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2lucHV0X3VpZCcsJHVpZCkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywkdGhpcy0+TGFuZygncHJvbXB0X3VzZXJuYW1lJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3VzZXJuYW1lJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF91c2VybmFtZScsICR1c2VybmFtZSwKCQkJCQkgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnKSwgCgkJCQkJICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpLAoJCQkJCSAgICAgICdkaXNhYmxlZD0iZGlzYWJsZWQiJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF9jb2RlJywkdGhpcy0+TGFuZygncHJvbXB0X2NvZGUnKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfY29kZScsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCggJGlkLCAnaW5wdXRfY29kZScsICRjb2RlLCAxMCwgMTAgKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywkdGhpcy0+TGFuZygncHJvbXB0X3Bhc3N3b3JkJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3Bhc3N3b3JkJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRQYXNzd29yZCgkaWQsICdpbnB1dF9wYXNzd29yZCcsICcnLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVwZWF0cGFzc3dvcmQnLCR0aGlzLT5MYW5nKCdyZXBlYXRwYXNzd29yZCcpKTsKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZXBlYXRwYXNzd29yZCcsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLCAnJywKCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.viewuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhaXNzZXQoJHBhcmFtc1sndWlkJ10pICkgcmV0dXJuOwokdWlkID0gKGludCkkcGFyYW1zWyd1aWQnXTsKCiRzbWFydHktPmFzc2lnbl9ieV9yZWYoJ2ZldScsJHRoaXMpOwovLyBIZXJlIHdlIGdldCBhIHVuaW9uICh5ZXAsIGEgdW5pb24pIG9mIGFsbCBvZiB0aGUgdXNlcgovLyBwcm9wZXJ0aWVzIGFuZCBkaXNwbGF5IHRoZW0gYWxvbmcgd2l0aCB0aGUgdmFsdWVzCiR1c2VyaW5mbyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKaWYoICRyZXN1bHRbMF0gPT09IEZBTFNFICkKICB7CiAgICBkaWUoJ2Vycm9yIDEgJy4kdWlkKTsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkgICAgICAkcmVzdWx0WzFdKTsKICAgIHJldHVybjsKICB9CiRzbWFydHktPmFzc2lnbigndXNlcmluZm8nLCR1c2VyaW5mb1sxXSk7CiRzbWFydHktPmFzc2lnbignZW1haWxfYWRkcmVzcycsJHRoaXMtPkdldEVtYWlsKCR1aWQpKTsKCiRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKaWYoICEkZ3JvdXBzICkKICB7CiAgICAvLyBUaGlzIHVzZXIgaXNuJ3QgYSBtZW1iZXIgb2YgYW55IGdyb3VwcwogICAgcmV0dXJuOwogIH0KCi8vIG5vdyB3ZSBoYXZlIHRoZSBncm91cHMsIHdlIGJ1aWxkIGEgdW5pb24gb2YgYWxsIG9mIHRoZSBncm91cHMgcHJvcGVydGllcwokcHJvcDIgPSBhcnJheSgpOwpmb3JlYWNoKCAkZ3JvdXBzIGFzICRncnByZWNvcmQgKQp7CiAgJGdpZCA9ICRncnByZWNvcmRbJ2dyb3VwaWQnXTsKICAkcHJvcHJlbGF0aW9ucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CiAgJHByb3AyID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCggJHByb3AyLCAkcHJvcHJlbGF0aW9ucyApOwogIHVhc29ydCggJHByb3AyLCAKCSAgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7Cn0KCi8vIG5vdyB3ZSBtZXJnZSBpbiBhbGwgb2YgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiRwcm9wMyA9IGFycmF5KCk7CmZvcmVhY2goICRwcm9wMiBhcyAkb25lcHJvcCApCnsKICBmb3JlYWNoKCAkZGVmbnMgYXMgJG9uZWRlZm4gKQogICAgewogICAgICBpZiggJG9uZWRlZm5bJ25hbWUnXSA9PSAkb25lcHJvcFsnbmFtZSddICkKCXsKCSAgJG9uZXByb3BbJ3Byb21wdCddID0gJG9uZWRlZm5bJ3Byb21wdCddOwoJICAkb25lcHJvcFsndHlwZSddID0gJG9uZWRlZm5bJ3R5cGUnXTsKCSAgYnJlYWs7Cgl9CiAgICB9CiAgJHByb3AzW10gPSAkb25lcHJvcDsKfQoKLy8gQW5kIG5vdyBtZXJnZSBpbiB0aGUgdmFsdWVzCiR1c2VycHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoJHVpZCk7CiRwcm9wc2J5bmFtZSA9IGFycmF5KCk7CiRwcm9wZXJ0aWVzID0gYXJyYXkoKTsKZm9yZWFjaCggJHByb3AzIGFzICRvbmVwcm9wICkKewogIGZvcmVhY2goICR1c2VycHJvcHMgYXMgJG9uZXZhbCApCiAgICB7CiAgICAgIGlmKCAkb25lcHJvcFsnbmFtZSddID09ICRvbmV2YWxbJ3RpdGxlJ10gJiYgCgkgIGlzc2V0KCRvbmV2YWxbJ2RhdGEnXSkgJiYgCgkgICFlbXB0eSgkb25ldmFsWydkYXRhJ10pICkKCXsKCSAgJG9uZXByb3BbJ2RhdGEnXSA9ICRvbmV2YWxbJ2RhdGEnXTsKCSAgYnJlYWs7Cgl9CiAgICB9CiAgJHByb3BzYnluYW1lWyRvbmVwcm9wWyduYW1lJ11dID0gJG9uZXByb3BbJ2RhdGEnXTsKICAkcHJvcGVydGllc1tdID0gJG9uZXByb3A7CiAgCn0KCiRzbWFydHktPmFzc2lnbigndXNlcl9wcm9wZXJ0aWVzJywkcHJvcGVydGllcyk7CiRzbWFydHktPmFzc2lnbigndXNlcl9wcm9wZXJ0aWVzYnluYW1lJywkcHJvcHNieW5hbWUpOwoKZWNobyAkdGhpcy0+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+dHN3IC0gQWRkZWQgZXZlbnQgT25VcGRhdGVVc2VyIHdoaWNoIGdldHMgY2FsbGVkIHdoZW4gdXNlciAob3IgYWRtaW4pIHVwZGF0ZXMgdXNlciBpbmZvPC9wPgogICAgICAgIAo8L2xpPgo8bGk+MS4zIC0gT2N0b2JlciwgMjAwNwo8cD5BZGRlZCBzdXBwb3J0IGZvciAncmVtZW1iZXIgbWUnIHNvIHRoYXQgbG9naW4gaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIGEgY29va2llLiAgQW5kIHN1cHBvcnQgZm9yIGEgZm9ybSB0byBhbGxvdyB0aGF0IGNvb2tpZSB0byBiZSByZXNldC48L3A+CjxwPk5vIGxvbmdlciBzdXBwb3J0IG5vbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBpbiBwcm9wZXJ0eSBuYW1lcy48L3A+CjxwPk51bWVyb3VzIHNtYWxsIGJ1Z2ZpeGVzLjwvcD4KPHA+UmVxdWlyZSBDTVMgMS4yIG9yIGdyZWF0ZXIuPC9wPgo8L2xpPgo8bGk+MS4zLjEgLSBOb3ZlbWJlciwgMjAwNwo8cD5GaXhlcyBwcm9ibGVtcyB3aXRoIHBhcmFtZXRlcnMgbm90IGJlaW5nIGNsZWFuZWQgaW4gdGhlIGNoYW5nZSBzZXR0aW5ncyBkaWFsb2cgb24gdGhlIGZyb250IGVuZC48L3A+CjxwPkZpeGVzIGFuIHVwZHJhZGUgaXNzdWUgaW4gdGhlIGRhdGFiYXNlIHNjaGVtYTwvcD4KPHA+Rml4ZXMgYW4gaXNzdWUgaW4gYSBHZXRTbWFydHkoKSBjYWxsIHRoYXQgd2FzIGFwcGFyZW50bHkgY2F1c2luZyBwZW9wbGUgZGlmZmljdWx0aWVzIHdpdGggdGhlIGxvZ2luIGZvcm0uPC9wPgo8cD5BZGQgYSBwcmVmZXJlbmNlIHRoYXQgYWxsb3dzIGFkbWlucyB0byBzcGVjaWZ5IGEgcGFnZSB0byByZWRpcmVjdCB0byBhZnRlciB0aGUgZm9yZ290IHBhc3N3b3JkIHZhbGlkYXRpb24gZm9ybSBpcyBjb21wbGV0ZS48L3A+CjxwPkZpeGVzIGEgcHJvYmxlbSB3aXRoIGhpZGRlbiBwcm9wZXJ0aWVzIGJlaW5nIGxvc3QgYWZ0ZXIgYSB1c2VyIGNoYW5nZWQgdGhlaXIgc2V0dGluZ3MuPC9wPgo8cD5UaGUgRm9yZ290IFBhc3N3b3JkIGFuZCBMb3N0IFVzZXJuYW1lIGZvcm1zIGFyZSBub3cgaW5saW5lPC9wPgo8cD5GaXhlcyB0byBlcnJvcnMgaW4gZW5jcnlwdGlvbiB3aXRoIHRoZSBzZXNzaW9uaW5nPC9wPgo8cD5GaXhlcyB0byB0aGUgbG9zdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5LjwvcD4KPC9saT4KPGxpPjEuMy4zIC0gRGVjZW1iZXIsIDIwMDcKPHA+Tm93IG9wdGlvbmFsbHkgYWxsb3cgc29tZSBmcm9udGVuZCBmb3JtcyB0byBiZSBpbmxpbmVkLjwvcD4KPHA+QWRkIGVtYWlsIG5vdGlmaWNhdGlvbnMgd2hlbiB1c2VyIGNoYW5nZXMgdGhlaXIgc2V0dGluZ3MsIG9yIG9uIGFueSBvdGhlciBldmVudC48L3A+CjxwPkNoYW5nZSB0aGUgbWF4aW11bSBkYXRhIHNpemUgZm9yIHByb3BlcnRpZXMgZnJvbSAyNTUgY2hhcmFjdGVycyB0byBsb25ndGV4dDwvcD4KPHA+Rml4ZXMgYW4gaXNzdWUgd2hlcmUgdGhlIGxvZ291dCBsaW5rcyBkaWQgbm90IG9iZXkgdGhlIHByZWZlcmVuY2Ugd2hpY2ggZGljdGF0ZWQgd2hpY2ggcGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBsb2dvdXQuPC9wPgo8L2xJPgo8bGk+MS40IC0gRmVicnVhcnksIDIwMDgKPHA+QWRkcyB0aGUgdmlld3VzZXIgYWN0aW9uIHRvIHZpZXcgdGhlIHByb3BlcnRpZXMgZm9yIGEgc3BlY2lmaWMgdXNlcjwvcD4KPGxpPjEuNC4xIC0gRmVicnVhcnksIDIwMDgKPHA+QWRkcyB0aGUgR2V0VXNlckhpc3RvcnkgbWV0aG9kIHRvIHRoZSBhcGk8L3A+CjxwPkFkZHMgYSBwcmVmZXJlbmNlIGZvciBwYWdlIHRvIHJlZGlyZWN0IHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5nczwvcD4KPHA+VXNlIHRoZSBhZnRlcl92ZXJpZnljb2RlIHByZWZlcmVuY2U8L3A+CjwvbGk+CjxsaT4xLjQuMiAtIE1hcmNoLCAyMDA4CjxwPkZpeGVzIHByb2JsZW1zIHdpdGggY2FuY2VsIGJ1dHRvbnM8L3A+CjxwPk1ha2VzIGl0IGVhc2llciBmb3IgdGV4dCBvbiB2YXJpb3VzIGJ1dHRvbnMgYW5kIGxpbmtzIHRvIGJlIGNoYW5nZWQ8L3A+CjxwPlVwZGF0ZSBkZXBlbmRlbmNpZXMsIGV0Yy48L3A+CjxwPlVwZGF0ZSBhbGwgZmlsZXMgYW5kIHRoZSBoZWxwIHRvIHJlZmxlY3QgdGhlIG5ldyBsaWNlbnNlPC9wPgo8cD5BZGp1c3RtZW50cyBzbyB0aGUgc2lnbmluIGFuZCBzaWdub3V0IHRleHQgY2FuIGJlIGNoYW5nZWQgZWFzaWx5PC9wPgo8cD5DbGVhbnVwcyBhbmQgYnVnIGZpeGVzPC9wPgo8L2xpPgo8bGk+MS40LjMgLSBKdW5lLCAyMDA4CjxwPk5vdyB1c2Ugc2Vzc2lvbiB2YXJpYWJsZXMgdG8ga2VlcCB0cmFjayBvZiB1c2VyIHZhcmlhYmxlcyBiZXR3ZWVuIHN0ZXBzIG9mIHRoZSBmb3JtcyBmb3IgYWRkaW5nIGFuZCBlZGl0aW5nIHVzZXJzLjwvcD4KPHA+R2V0IHJpZCBvZiB0aGUgdGltZSBmaWVsZHMgZm9yIHRoZSBleHBpcnkgZGF0ZSwgYW5kIGp1c3QgZXhwaXJlIGF0IDIzOjU5OjU5IG9uIHRoYXQgc3BlY2lmaWVkIGRheTwvcD4KPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGV4dGVybmFsIG1vZHVsZXMgdG8gaW50ZXJhY3QgKHNvbWV3aGF0KSB3aXRoIGZldSwgYW5kIHNwZWNpZnkgYSByZXR1cm4gbG9jYXRpb248L3A+CjxwPkFkZGVkIHRoZSBHZXRGdWxsVXNlcnNJbkdyb3VwKCkgbWV0aG9kIGludG8gdGhlIGFwaTwvcD4KPC9saT4KPGxpPjEuNC40IC0gQXVndXN0LCAyMDA4CjxwPlRoYW5rcyB0byBfU2pHXyB3ZSBub3cgc3VwcG9ydCB1c2luZyBlbWFpbCBhZGRyZXNzZXMgYXMgdXNlcm5hbWUgKHRoZXJlIGlzIGEgcHJlZmVyZW5jZSBpbiB0aGUgYWRtaW4pLjwvcD4KPHA+QWRkcyBhIEdldEVtYWlsIG1ldGhvZCB0byB0aGUgYXBpIHRvIHJldHVybiB0aGUgZmlyc3QgZW1haWwgYWRkcmVzcyBmb3VuZCBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLjwvcD4KPC9saT4KPGxpPjEuNSAtIEF1Z3VzdCwgMjAwOAo8cD5BZGQgdGhlIGZldV9zbWFydHkgY2xhc3Mgd2l0aCBhIGZldyBmdW5jdGlvbnMgaW4gaXQsIGZvciBpdGVyYXRpbmcgdGhyb3VnaCB1c2VycyBpbiBzbWFydHkuPC9wPgo8L2xpPgo8bGk+MS41LjEgLSBBdWd1c3QsIDIwMDgKPHA+S2VlcCB0aGUgbG9naW5pZCBpbiBhIHZhcmlhYmxlLCB0byBjdXQgZG93biBvbiB0aGUgbnVtYmVyIG9mIHJlcGVhdCBxdWVyaWVzLjwvcD4KPHA+Rml4ZXMgdG8gcHJvcGVydGllcyB3aXRoIHNwYWNlcyBpbiB0aGUgdmFsdWVzLjwvcD4KPC9saT4KPGxpPjEuNS4yIC0gQXVndXN0LCAyMDA4CjxwPlNwbGl0IG91dCBhIGZldyBtb3JlIGZpbGVzIHRvIHNocmluayBtZW1vcnkgZm9vdHByaW50IGEgYml0IG1vcmU8L3A+CjxwPkZpeGVzIHNvbWUgdGFiIG5hbWUgc3R1ZmY8L3A+CjxwPlNtYWxsIHZhbGlkYXRpb24gaXNzdWUgd2l0aCBkZWZhdWx0IHRlbXBsYXRlPC9wPgo8cD5NaW5vciBlbmhhbmNlbWV0bnMgdG8gdGhlIHZpZXd1c2VyIHRlbXBsYXRlLjwvcD4KPHA+R2V0IHJpZCBvZiBjb21tZW50ZWQgb3V0IGNvZGUgdG8gc2hyaW5rIHRoZSBmaWxlIGRvd24gYSBiaXQuPC9wPgo8cD5GaXggZm9yZ290IHBhc3N3b3JkIGZvcm0gdG8gaGFuZGxlIHRoZSBjYXNlIHdoZXJlIHVzZXJuYW1lID09IGVtYWlsIGFkZHJlc3MuPC9wPgo8cD5BZGQgcHJldHR5IHVybCBzdXBwb3J0IGludG8gdGhlIGxvc3QgcGFzc3dvcmQgZW1haWwuPC9wPgo8L2xpPgo8bGk+MS41LjMgLSBTZXB0ZW1iZXIsIDIwMDgKPHA+TnVtZXJvdXMgc21hbGwsIGJ1dCBhbm5veWluZyBidWcgZml4ZXM8L3A+CjxsaT4xLjUuNCAtIERlY2VtYmVyLCAyMDA4CjxwPk1vcmUgYW5kIG1vcmUgYnVnIGZpeGVzLjwvcD4KPHA+VGhlIHN0YXJ0cyBvZiBwcmV0dHkgdXJsIHN1cHBvcnQgKHRoYW5rIHlvdSBOdW5vKTwvcD4KPC9saT4KPGxpPjEuNiAtIEphbnVzYXJ5LCAyMDA5CiAgPHVsPgogIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIHByb3BlcnR5IGNyZWF0aW9uIGFuZCBlZGl0aW5nIHN0dWZmLjwvbGk+CiAgPGxpPkFkZCB0aGUgYWJpbGl0eSB0byBvcHRpb25hbGx5IGVuYWJsZSBhIHd5c2l3eWcgZm9yIHRleHQgYXJlYSBwcm9wZXJ0aWVzLjwvbGk+CiAgPGxpPk5vIGxvbmdlciBhbGxvdyBhdXRvIGluc3RhbGwgb3IgdXBncmFkZS48L2xpPgogIDxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIGdyb3VwIGNyZWF0aW9uIGFuZCBlZGl0aW5nIHN0dWZmLi4uLiByZS1vcmRlcmluZyBpcyBzaW1wbGVyIG5vdy48L2xpPgogIDxsaT5SZS1vcmdhbml6ZSB0aGUgcHJlZmVyZW5jZXMgdGFiLCBhbmQgdGhlIHVzZXJzIGZpbHRlcmluZyBzdHVmZiB0byBiZSBhIGJpdCBtb3JlIHByZXNlbnRhYmxlLjwvbGk+CiAgPGxpPkFkZCBuZXcgcHJlZmVyZW5jZSBmb3IgdGhlIGRlZmF1bHQgZXhwaXJ5IGFnZSBmb3IgdXNlcnMuPC9saT4KICA8bGk+QWRkIG5ldyBwcmVmZXJlbmNlIGluZGljYXRpbmcgd2V0aGVyIHdlIHNob3VsZCBhdHRlbXB0IHRvIGNyZWF0ZSByYW5kb20gdXNlcm5hbWVzIG9yIG5vdC48L2xpPgogIDxsaT5BZGQgYnVsayB1c2VyIGRlbGV0ZSBjYXBhYmlsaXRpZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEgLSBKYW51c2FyeSwgMjAwOQogIDx1bD4KICAgIDxsaT5NaW5vciB0ZW1wbGF0ZSBjaGFuZ2VzIHRvIHRoZSBjaGFuZ2Ugc2V0dGluZ3Mgc3R1ZmYuPC9saT4KICAgIDxsaT5GaXggdGV4dCBwcm9wZXJ0eSBsZW5ndGggaXNzdWVzLjwvbGk+CiAgICA8bGk+UmVtb3ZlIHN0dXBpZCBkaWUgYW5kIGRlYnVnIHN0YXRlbWVudHMgZnJvbSB0aGUgcmVtZW1iZXIgbWUgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjIgLSBKYW51c2FyeSwgMjAwOQogIDx1bD4KICAgIDxsaT5CZWdpbiBpbXBsZW1lbnRpbmcgdGhlIHRhYmxlc29ydGVyIHN0dWZmPC9saT4KICAgIDxsaT5GaXggcHJvYmxlbXMgd2l0aCBpbWFnZSBmaWVsZHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjMgLSBGZWJydWFyeSwgMjAwOQogIDx1bD4KICA8bGk+Rml4IGNvb2tpZSBpc3N1ZXMgcGVybWFuZW50bHkuIChJIGhvcGUpLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi40IC0gQXByaWwsIDIwMDkKICA8dWw+CiAgPGxpPkFkZCBmaWVsZCB0eXBlIGFzIGEgbWVtYmVyIG9mIHRoZSBjb250cm9sIG9iamVjdCBpbiB2YXJpb3VzIGZvcm1zLjwvbGk+CiAgPGxpPkFkZGVkIHJhZGlvIGJ1dHRvbnMgZmllbGQgdHlwZSAoX1NqR18pPC9saT4KICA8bGk+TW9yZSBmaXhlcyB0byB1c2VyIGV4cG9ydCBzdHVmZi48L2w+aQogIDxsaT5GaXggZm9yIHJldHVybnRvIHBhcmFtIGluIGxvZ2luIGZvcm08L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNSAtIE1heSwgMjAwOQogIDx1bD4KICA8bGk+TnVtZXJvdXMgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi42IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TnVtZXJvdXMgYnVnIGZpeGVzLjwvbGk+CiAgPGxpPkFkZCBEYXRlIGZpZWxkIHR5cGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjcgLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjggLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8bGk+QWRkIG1vcmUgZnVuY3Rpb25hbGl0eSB0byB0aGUgZmV1X3NtYXJ0eSBvYmplY3QuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjguMSAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuOSAtIEF1Z3VzdCwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMCAtIE9jdG9iZXIsIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTEgLSBOb3ZlbWJlciwgMjAwOQogIDx1bD4KICA8bGk+Tm93IGNvbnZlcnQgcHJvcGVydHkgbmFtZXMgdG8gY29udGFpbiBvbmx5IHZhbGlkIGNoYXJzIGhvcGVmdWxseS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTIgLSBKYW51YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBpbXByb3ZlbWVudHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEzIC0gRmVicnVhcnksIDIwMTAKICA8dWw+CiAgPGxpPk1vcmUgTWlub3IgaW1wcm92ZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNyAtIEZlYnJ1YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5BZGRzIHRoZSByZXNldF9zZXNzaW9uIGFjdGlvbi48L2xpPgogIDxsaT5CdWcgZml4ZXM8L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcuMSAtIEZlYnJ1YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5GaXhlcyBhbmQgZW5oYW5jZW1lbnRzIHRvIHRoZSBqcXVlcnkgcmVzZXQgc2Vzc2lvbiB0ZW1wbGF0ZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcuMSAtIE1hcmNoLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjMgLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOCAtIE1hcmNoLCAyMDEwCiAgPHVsPgogIDxsaT5Ob3cgdGhlIHJlZGlyZWN0X3RvIHBhZ2UgcHJlZmVyZW5jZXMgYXJlIHNtYXJ0eSB0ZW1wbGF0ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjIgLSBBcHJpbCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC4zIC0gQXByaWwsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguNCAtIEFwcmlsLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjUgLSBNYXksIDIwMTAKICA8dWw+CiAgPGxpPkFkZHMgdGhlIHJldHVybmxhc3QgcGFyYW1ldGVyIHRvIGFsbG93IHJldHVybmluZyBiYWNrIHRvIHRoZSBwcmV2aW91cyB1cmwgb24gbG9naW4gb3IgbG9nb3V0LjwvbGk+CiAgPGxpPkZpeGVzIHRoZSByZXNldCB0byBkZWZhdWx0cyBidXR0b24gaW4gdGhlIGxvc3QgdXNlcm5hbWUgdGVtcGxhdGUocykgZm9ybS48L2xpPgo8bGk+MS45IC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSB1bmlxdWUgZmllbGRzLjwvbGk+CiAgICA8bGk+VmFyaW91cyBtaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS45LjEgLSBNYXksIDIwMTAKICA8dWw+CiAgICA8bGk+UmUtYWRkcyBhIGZ1bmN0aW9uIG5lZWRlZCBieSBBdmFpbGFiaWxpdHkuPC9saT4KICAgIDxsaT5NaW5vciBhZGRpdGlvbiB0byB0aGUgdmlldyB1c2VyIHRlbXBsYXRlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4yIC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPlJlbW92ZSBwcmV0dHkgdXJscyBmb3IgbG9zdCB1c2VybmFtZSwgYW5kIGNoYW5nZSBzZXR0aW5ncyBmb3JtcyBiZWNhdXNlIHRoZXkgd2VyZSBsb3NpbmcgcGFyYW1ldGVycyBsaWtlIHRoZSBsYW5nIHBhcmFtZXRlci48L2xpPgogICAgPGxpPihUZWQpOiBGaXggYWJpbGl0eSB0byB1bmNoZWNrIGNoZWNrYm94ZXMgd2hpbGUgZWRpdGluZyBhIHVzZXIgaW4gdGhlIGFkbWluPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS45LjMgLSBKdW5lLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwIC0gSnVuZSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIHN1cHBwb3J0IGZvciBhZGRpdGlvbmFsIGF1dGhlbnRpY2F0aW9uIG1lY2hhbmlzbXMgKHN0aWxsIHRlc3RpbmcpLjwvbGk+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBpc3N1ZSB3aXRoIHJldHVybnRvLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTAuMSAtIEp1bHksIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTAuMiAtIEp1bHksIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgR2V0RXhwcmlyeURhdGUgYXBpIG1ldGhvZC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjExIC0gSnVseSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIG9wdGlvbmFsIGVuY3J5cHRpb24gZm9yIHByb3BlcnR5IGRlZmluaXRpb25zLjwvbGk+CiAgICA8bGk+VmFyaW91cyBtaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5JbXByb3ZlbWVudCB0byB0aGUgQ1NWIGV4cG9ydCBzdHVmZi48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyIC0gQXVndXN0LCAyMDEwCiAgPHVsPgogICAgPGxpPk5vdyB3b3JrcyBpbiBjb25qdW5jdGlvbiB3aXRoIFNlbGZSZWdpc3RyYXRpb24gdG8gaGFuZGxlIHBhaWQgc3Vic2NyaXB0aW9ucy48L2xpPgogICAgPGxpPlRoZSBjb250ZW50X21vZHVsZSB0YWcgbm93IHByb3ZpZGVzIGEgbXVsdGktc2VsZWN0IGxpc3QgKFRlZCk8L2xpPgogIDwvdWw+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[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8gYW4gb3JkZXIgaGFzIGJlZW4gZGVsZXRlZC4KaWYoICFpc3NldCgkcGFyYW1zWydvcmRlcl9pZCddKSApIHJldHVybjsKCi8vIGhhbmRsZSB0aGUgY2FzZSBvZiBhdHRlbXB0ZWQgcmVjdXJzaW9uLgppZiggaXNzZXQoJGdDbXMtPnZhcmlhYmxlc1tfX0ZJTEVfX10pICkgcmV0dXJuOwokZ0Ntcy0+dmFyaWFibGVzW19fRklMRV9fXSA9IDE7CgovLyBoZXJlIHdlIGdyYWIgdGhlIG9yZGVyIGRpcmVjdGx5Lgokb3JkZXJfaWQgPSAoaW50KSRwYXJhbXNbJ29yZGVyX2lkJ107CiRvcmRlcl9vYmogPSBvcmRlcnNfb3BzOjpsb2FkX2J5X2lkKCRvcmRlcl9pZCk7CmlmKCAhJG9yZGVyX29iaiApIAogIHsKICAgIHJldHVybjsKICB9CgovLyBmaW5kIHRoZSBsaW5lIGl0ZW0gd2l0aCBhIFNlbGZSZWcgU3Vic2NyaXB0aW9uLgpmb3IoICRzID0gMDsgJHMgPCAkb3JkZXJfb2JqLT5jb3VudF9kZXN0aW5hdGlvbnMoKTsgJHMrKyApCiAgewogICAgJHNoaXBwaW5nID0gJG9yZGVyX29iai0+Z2V0X3NoaXBwaW5nKCRzKTsKICAgIGZvciggJGkgPSAwOyAkaSA8ICRzaGlwcGluZy0+Y291bnRfYWxsX2l0ZW1zKCk7ICRpKysgKQogICAgICB7CgkkaXRlbSA9ICRzaGlwcGluZy0+Z2V0X2l0ZW0oJGkpOwoJaWYoICRpdGVtLT5nZXRfc291cmNlKCkgIT0gJ1NlbGZSZWdpc3RyYXRpb24nICkgCgkgIHsKCSAgICBjb250aW51ZTsKCSAgfQoJaWYoICRpdGVtLT5nZXRfaXRlbV90eXBlKCkgIT0gbGluZV9pdGVtOjpJVEVNVFlQRV9TRVJWSUNFICkgY29udGludWU7CglpZiggISRpdGVtLT5pc19zdWJzY3JpcHRpb24oKSApIGNvbnRpbnVlOwoKCSR1aWQgPSAkaXRlbS0+Z2V0X2V4dHJhKCdmZXVfdWlkJyk7CglpZiggISR1aWQgKSBjb250aW51ZTsgIC8vIG5vIGFzc29jZGF0YSwgbWF5YmUgdGhpcyB1c2VyIG5ldmVyIHBhaWQuCgoJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CglpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgJHVpbmZvWzBdID09IEZBTFNFICkKCSAgewoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwoJICAgIHJldHVybjsKCSAgfQoJJHVpbmZvID0gJHVpbmZvWzFdOwoJICAKCXN3aXRjaCggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyZGVsZXRlZCcpICkKCSAgewoJICBjYXNlICdkZWxldGUnOgoJICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllcygnJywkdWlkLHRydWUpOwoJICAgICR0aGlzLT5EZWxldGVVc2VyKCR1aWQpOwoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdEZWxldGVkIHVzZXIgJXMgYmVjYXVzZSBvcmRlciAlZCB3YXMgZGVsZXRlZCcsJHVpbmZvWyd1c2VybmFtZSddLCRvcmRlcl9pZCkpOwoJICAgIGJyZWFrOwoKCSAgY2FzZSAnZXhwaXJlJzoKCSAgICAkdGhpcy0+U2V0VXNlcigkdWlkLCR1aW5mb1sndXNlcm5hbWUnXSwkdWluZm9bJ3Bhc3N3b3JkJ10sdGltZSgpLTM2MDAsZmFsc2UpOwoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdFeHBpcmVkIHVzZXIgJXMgYmVjYXVzZSBvcmRlciAlZCB3YXMgZGVsZXRlZCcsJHVpbmZvWyd1c2VybmFtZSddLCRvcmRlcl9pZCkpOwoJICAgIGJyZWFrOwoKCSAgY2FzZSAnbm9uZSc6CgkgIGRlZmF1bHQ6CgkgICAgYnJlYWs7CgkgIH0KCiAgICAgIH0KICB9CgovLyBzZXR1cCBmb3IgYW5vdGhlciBvcmRlci4uLiBzaG91bGRuJ3QgaGFwcGVuLCBidXQganVzdCBpbiBjYXNlLgp1bnNldCgkZ0Ntcy0+dmFyaWFibGVzW19fRklMRV9fXSk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/event.CGEcommerceBase.OrderUpdated.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8gYW4gb3JkZXIgaGFzIGJlZW4gZGVsZXRlZC4KaWYoICFpc3NldCgkcGFyYW1zWydvcmRlcl9pZCddKSApIHJldHVybjsKCi8vIGhhbmRsZSB0aGUgY2FzZSBvZiBhdHRlbXB0ZWQgcmVjdXJzaW9uLgppZiggaXNzZXQoJGdDbXMtPnZhcmlhYmxlc1tfX0ZJTEVfX10pICkgcmV0dXJuOwokZ0Ntcy0+dmFyaWFibGVzW19fRklMRV9fXSA9IDE7CgovLyBoZXJlIHdlIGdyYWIgdGhlIG9yZGVyIGRpcmVjdGx5Lgokb3JkZXJfaWQgPSAoaW50KSRwYXJhbXNbJ29yZGVyX2lkJ107CiRvcmRlcl9vYmogPSBvcmRlcnNfb3BzOjpsb2FkX2J5X2lkKCRvcmRlcl9pZCk7CmlmKCAhJG9yZGVyX29iaiApIAogIHsKICAgIHJldHVybjsKICB9CmlmKCAkb3JkZXJfb2JqLT5nZXRfc3RhdHVzKCkgIT0gJ2NhbmNlbGxlZCcgKSByZXR1cm47CgovLyBmaW5kIHRoZSBsaW5lIGl0ZW0gd2l0aCBhIFNlbGZSZWcgU3Vic2NyaXB0aW9uLgpmb3IoICRzID0gMDsgJHMgPCAkb3JkZXJfb2JqLT5jb3VudF9kZXN0aW5hdGlvbnMoKTsgJHMrKyApCiAgewogICAgJHNoaXBwaW5nID0gJG9yZGVyX29iai0+Z2V0X3NoaXBwaW5nKCRzKTsKICAgIGZvciggJGkgPSAwOyAkaSA8ICRzaGlwcGluZy0+Y291bnRfYWxsX2l0ZW1zKCk7ICRpKysgKQogICAgICB7CgkkaXRlbSA9ICRzaGlwcGluZy0+Z2V0X2l0ZW0oJGkpOwoJaWYoICRpdGVtLT5nZXRfc291cmNlKCkgIT0gJ1NlbGZSZWdpc3RyYXRpb24nICkgCgkgIHsKCSAgICBjb250aW51ZTsKCSAgfQoJaWYoICRpdGVtLT5nZXRfaXRlbV90eXBlKCkgIT0gbGluZV9pdGVtOjpJVEVNVFlQRV9TRVJWSUNFICkgY29udGludWU7CglpZiggISRpdGVtLT5pc19zdWJzY3JpcHRpb24oKSApIGNvbnRpbnVlOwoKCSR1aWQgPSAkaXRlbS0+Z2V0X2V4dHJhKCdmZXVfdWlkJyk7CglpZiggISR1aWQgKSBjb250aW51ZTsgIC8vIG5vIGFzc29jZGF0YSwgbWF5YmUgdGhpcyB1c2VyIG5ldmVyIHBhaWQuCgoJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CglpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgJHVpbmZvWzBdID09IEZBTFNFICkKCSAgewoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwoJICAgIHJldHVybjsKCSAgfQoJJHVpbmZvID0gJHVpbmZvWzFdOwoJICAKCXN3aXRjaCggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyY2FuY2VsbGVkJykgKQoJICB7CgkgIGNhc2UgJ2RlbGV0ZSc6CgkgICAgJHRoaXMtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCcnLCR1aWQsdHJ1ZSk7CgkgICAgJHRoaXMtPkRlbGV0ZVVzZXIoJHVpZCk7CgkgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSwKCQkJIHNwcmludGYoJ0RlbGV0ZWQgdXNlciAlcyBiZWNhdXNlIG9yZGVyICVkIHdhcyBkZWxldGVkJywkdWluZm9bJ3VzZXJuYW1lJ10sJG9yZGVyX2lkKSk7CgkgICAgYnJlYWs7CgoJICBjYXNlICdleHBpcmUnOgoJICAgICR0aGlzLT5TZXRVc2VyKCR1aWQsJHVpbmZvWyd1c2VybmFtZSddLCR1aW5mb1sncGFzc3dvcmQnXSx0aW1lKCktMzYwMCxmYWxzZSk7CgkgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSwKCQkJIHNwcmludGYoJ0V4cGlyZWQgdXNlciAlcyBiZWNhdXNlIG9yZGVyICVkIHdhcyBkZWxldGVkJywkdWluZm9bJ3VzZXJuYW1lJ10sJG9yZGVyX2lkKSk7CgkgICAgYnJlYWs7CgoJICBjYXNlICdub25lJzoKCSAgZGVmYXVsdDoKCSAgICBicmVhazsKCSAgfQogICAgICB9CiAgfQoKLy8gc2V0dXAgZm9yIGFub3RoZXIgb3JkZXIuLi4gc2hvdWxkbid0IGhhcHBlbiwgYnV0IGp1c3QgaW4gY2FzZS4KdW5zZXQoJGdDbXMtPnZhcmlhYmxlc1tfX0ZJTEVfX10pOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQoKTsKCi8vIDAuICBDaGVjayBjbXMgdmVyc2lvbgpnbG9iYWwgJENNU19WRVJTSU9OOwppZiggdmVyc2lvbl9jb21wYXJlKCRDTVNfVkVSU0lPTiwnMi4wLWJldGExJykgPCAwICkKICB7CiAgICAvLyBub3QgQ01TIDIuMCwgZG9uJ3QgZ28gYW55IGZ1cnRoZXIuCiAgICByZXR1cm47CiAgfQoKLy8gMS4gIEdldCB0aGUgY29udGVudF9pZAokY29udGVudF9pZCA9ICRnQ21zLT52YXJpYWJsZXNbJ2NvbnRlbnRfaWQnXTsKaWYoICRjb250ZW50X2lkIDw9IDAgKSByZXR1cm47CgovLyAyLiAgR2V0IHRoZSBjb250ZW50IG9iamVjdAokY29udGVudF9vYmogPSBDbXNDb250ZW50T3BlcmF0aW9uczo6bG9hZF9jb250ZW50X2Zyb21faWQoJGNvbnRlbnRfaWQpOwppZiggIWlzX29iamVjdCgkY29udGVudF9vYmopICkKICB7CiAgICByZXR1cm47CiAgfQoKLy8gMy4gIEdldCB0aGUgcHJvcGVydGllcy4KJGNvbnRlbnRfb2JqLT5sb2FkX3Byb3BlcnRpZXMoKTsKJGZldV9ncm91cHMgPSAkY29udGVudF9vYmotPmdldF9wcm9wZXJ0eV92YWx1ZSgnZmV1X2dyb3VwcycpOwokZmV1X3JlZGlyZWN0ID0gJGNvbnRlbnRfb2JqLT5nZXRfcHJvcGVydHlfdmFsdWUoJ2ZldV9yZWRpcmVjdCcpOwoKLy8gaWYgdGhlIGdyb3VwcyBsaXN0IGlzIGVtcHR5LCByZXR1cm4uCmlmKCAkZmV1X2dyb3VwcyA9PSAnJyApIHJldHVybjsKCi8vIGNoZWNrIHRoaXMgdXNlcnMgbWVtYmVyIGdyb3VwcwokcGFzc2VkID0gZmFsc2U7CiR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwppZiggJHVpZCApCiAgewogICAgLy8gZ2V0IHRoZSBtZW1iZXIgZ3JvdXBzLgogICAgJHQxID0gJHRoaXMtPkdldE1lbWJlckdyb3VwcygkdWlkKTsKICAgIGlmKCBpc19hcnJheSggJHQxICkgKQogICAgICB7CgkvLyB1c2VyIGlzIGEgbWVtYmVyIG9mIGF0IGxlYXN0IG9uZSBncm91cAoJJG1lbWJlcmdyb3VwcyA9IGFycmF5KCk7Cglmb3JlYWNoKCAkdDEgYXMgJHJvdyApCgkgIHsKCSAgICAkbWVtYmVyZ3JvdXBzW10gPSAkcm93Wydncm91cGlkJ107CgkgIH0KCQoJLy8gdGVzdCBtZW1iZXJzaGlwLgoJJHQxID0gZXhwbG9kZSgnLCcsJGZldV9ncm91cHMpOwoJaWYoIGluX2FycmF5KCR0MSwnLTEnKSApCgkgIHsKCSAgICAvLyBhbnkgZ3JvdXAgd2lsbCBkby4KCSAgICAkcGFzc2VkID0gdHJ1ZTsKCSAgfQoJZWxzZQoJICB7CgkgICAgJHRtcCA9IGFycmF5X2ludGVyc2VjdCgkbWVtYmVyZ3JvdXBzLCR0Mik7CgkgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApID4gMCApCgkgICAgICB7CgkJJHBhc3NlZCA9IHRydWU7CgkgICAgICB9CgkgIH0KICAgICAgfQogIH0KCmlmKCAhJHBhc3NlZCApCiAgewogICAgaWYoICRmZXVfcmVkaXJlY3QgIT0gLTEgKQogICAgICB7CglyZWRpcmVjdF90b19hbGlhcygkZmV1X3JlZGlyZWN0KTsKICAgICAgfQogIH0KIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleInstalled.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAkcGFyYW1zWyduYW1lJ10gIT0gJ0NHRWNvbW1lcmNlQmFzZScgKSByZXR1cm47CgovLyB0aGlzIHNob3VsZCBiZSBzYXZlIHRvIGNhbGwgbXVsdGlwbGUgdGltZXMgKGFzIGlmIGl0J3MgYWxyZWFkeSBpbiB0aGUgZGF0YWJhc2UgaXQgc2hvdWxkIHJldHVybiBhbiBlcnJvcgovLyB3aGljaCB3ZSdyZSBpZ25vcmluZykuCiR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyVXBkYXRlZCcsZmFsc2UpOwokdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlckRlbGV0ZWQnLGZhbHNlKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleUninstalled.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgppZiggJHBhcmFtc1snbmFtZSddICE9ICdDR0Vjb21tZXJjZUJhc2UnICkgcmV0dXJuOwoKLy8gdGhpcyBzaG91bGQgYmUgc2F2ZSB0byBjYWxsIG11bHRpcGxlIHRpbWVzIChhcyBpZiBpdCdzIGFscmVhZHkgaW4gdGhlIGRhdGFiYXNlIGl0IHNob3VsZCByZXR1cm4gYW4gZXJyb3IKLy8gd2hpY2ggd2UncmUgaWdub3JpbmcpLgokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlclVwZGF0ZWQnKTsKJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJEZWxldGVkJyk7CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/event.Core.ModuleUpgraded.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAkcGFyYW1zWyduYW1lJ10gIT0gJ0NHRWNvbW1lcmNlQmFzZScgKSByZXR1cm47CgovLyB0aGlzIHNob3VsZCBiZSBzYXZlIHRvIGNhbGwgbXVsdGlwbGUgdGltZXMgKGFzIGlmIGl0J3MgYWxyZWFkeSBpbiB0aGUgZGF0YWJhc2UgaXQgc2hvdWxkIHJldHVybiBhbiBlcnJvcgovLyB3aGljaCB3ZSdyZSBpZ25vcmluZykuCiR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyVXBkYXRlZCcsZmFsc2UpOwokdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlckRlbGV0ZWQnLGZhbHNlKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/FrontEndUsers.api.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKcmVxdWlyZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pLiIvVXNlck1hbmlwdWxhdG9yLmNsYXNzLnBocCIgKTsKCmNsYXNzIEZyb250RW5kVXNlcnNNYW5pcHVsYXRvciBleHRlbmRzIFVzZXJNYW5pcHVsYXRvcgp7CiAgdmFyICRfY2FjaGVkX3Byb3BkZWZuczsKICB2YXIgJF9jYWNoZWRfdWlkX21hcDsKCXByaXZhdGUgJF9lbmNyeXB0aW9uX2tleTsKCglmdW5jdGlvbiBTZXRFbmNyeXB0aW9uS2V5KCR1aWQgPSAtMSwkZm9yY2UgPSBGQUxTRSApCgl7CgkJZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKCQlnbG9iYWwgJGdDbXM7CgoJCWlmKCAkQ01TX0FETUlOX1BBR0UgKQoJCQl7CgkJCQkvLyBoYWNrCgkJCQkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCQkJCWlmKCAhJG1vZHVsZS0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHVzZXJzJykgKQoJCQkJCXsKCQkJCQkJcmV0dXJuIEZBTFNFOwoJCQkJCX0KCgkJCQkvLyBhbiBhZG1pbmlzdHJhdG9yIGNhbiBzZWUgZW5jcnlwdGVkIGRhdGEuCgkJCQkkcmVzID0gJHRoaXMtPkdldFVzZXJJbmZvKCR1aWQpOwoJCQkJaWYoICFpc19hcnJheSgkcmVzKSB8fCAkcmVzWzBdID09IEZBTFNFICkKCQkJCQl7CgkJCQkJCXJldHVybiBGQUxTRTsKCQkJCQl9CgoJCQkJJGtleSA9IG1kNSgkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddLiR1aWQuJHJlc1sxXVsnY3JlYXRlZGF0ZSddKTsKCQkJCSR0aGlzLT5fZW5jcnlwdGlvbl9rZXkgPSAka2V5OwoKCQkJCXJldHVybiBUUlVFOwoJCQl9CgkJZWxzZQoJCQl7CgkJCQkkdHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CgkJCQlpZiggKCR0dWlkICE9ICR1aWQgfHwgJHR1aWQgPD0gMCkgJiYgJGZvcmNlID09PSBGQUxTRSApCgkJCQkJewoJCQkJCQlyZXR1cm4gRkFMU0U7CgkJCQkJfQoKCQkJCSRyZXMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7CgkJCQlpZiggIWlzX2FycmF5KCRyZXMpIHx8ICRyZXNbMF0gPT0gRkFMU0UgKQoJCQkJCXsKCQkJCQkJcmV0dXJuIEZBTFNFOwoJCQkJCX0KCgkJCQkka2V5ID0gbWQ1KCRnQ21zLT5jb25maWdbJ3Jvb3RfdXJsJ10uJHVpZC4kcmVzWzFdWydjcmVhdGVkYXRlJ10pOwoJCQkJJHRoaXMtPl9lbmNyeXB0aW9uX2tleSA9ICRrZXk7CgkJCQlyZXR1cm4gVFJVRTsKCQkJfQoKCQlyZXR1cm4gRkFMU0U7Cgl9CgoKICBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREQigpOwogICAgJHEgPSAiU0VMRUNUIENPVU5UKCopIEFTIGNvdW50IEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJCQkJcmV0dXJuIDA7CiAgICAgIH0KICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICByZXR1cm4gJHJvd1snY291bnQnXTsKICB9CgogIGZ1bmN0aW9uIEV4cGlyZVRlbXBDb2RlcygkZXhwaXJ5Y29kZSkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkZXhwaXJlcyA9IHN0cnRvdGltZSggJGV4cGlyeWNvZGUgKTsKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZQogICAgICAgICAgV0hFUkUgY3JlYXRlZCA+ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRleHBpcmVzICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGZhbHNlOwogICAgcmV0dXJuIHRydWU7ICAgIAogIH0KCiAgZnVuY3Rpb24gUmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICkKICB7CgkJaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlCiAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGZhbHNlOwogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgZnVuY3Rpb24gR2V0VXNlclRlbXBDb2RlKCAkdWlkICkKICB7CgkJaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUKICAgICAgICAgIFdIRVJFIHVzZXJpZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQgKSk7CiAgICBpZiggJGRicmVzdWx0ID09IEZBTFNFIHx8ICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSA9PSAwICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICByZXR1cm4gYXJyYXkoVFJVRSwkcm93KTsKICB9CgoKICBmdW5jdGlvbiBTZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlLCAkcmVwbGFjZT1mYWxzZSApCiAgewoJCWlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAkcSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUKICAgICAgICAgIFZBTFVFUyg/LD8sPykiOwogICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGNvZGUsCgkJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCInIikgKSApOwoKCSBpZiggJGRicmVzdWx0ID09IGZhbHNlICkKICAgIAl7CgkJaWYgKCRyZXBsYWNlKQoJCQl7CiAgICAJCSRxID0gInVwZGF0ZSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUKICAgICAgICAgIHNldCBjb2RlPT8sIGNyZWF0ZWQ9PyBXSEVSRSB1c2VyaWQ9PyI7CiAgICAJCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCRjb2RlLAoJCQkJCSB0cmltKCRkYi0+REJUaW1lU3RhbXAodGltZSgpKSwiJyIpLCR1aWQgKSApOwoJCQlpZiAoJGRicmVzdWx0ID09IGZhbHNlKQoJCQkJewoJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9CgkgCWVsc2UKCSAgIAl7CgkJCXJldHVybiBmYWxzZTsKICAgICAgCX0KICAgICB9CiAgICByZXR1cm4gdHJ1ZTsKICB9CgoKICBmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm4oICRuYW1lLCAkbmV3bmFtZSwgJHByb21wdCwgJGxlbmd0aCwgJHR5cGUsICRtYXhsZW5ndGggPSAwLCAkYXR0cmlicyA9ICcnLCAkZm9yY2VfdW5pcXVlID0gMCwgJGVuY3J5cHQgPSAwICkKICB7CiAgICAkZGIgPSAkdGhpcy0+Z2V0RGIoKTsKICAgIAogICAgaWYoICRtYXhsZW5ndGggPT0gMCApCiAgICAgIHsKCSRtYXhsZW5ndGggPSAkbGVuZ3RoOwogICAgICB9CiAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuCiAgICAgICAgICBTRVQgbmFtZSA9ID8sIHByb21wdCA9ID8sIHR5cGUgPSA/LCBsZW5ndGggPSA/LCBtYXhsZW5ndGggPSA/LCBhdHRyaWJzID0gPywgZm9yY2VfdW5pcXVlID0gPywgZW5jcnlwdCA9ID8KICAgICAgICAgIFdIRVJFIG5hbWUgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmV3bmFtZSwgJHByb21wdCwgJHR5cGUsICRsZW5ndGgsICRtYXhsZW5ndGgsICRhdHRyaWJzLCAkZm9yY2VfdW5pcXVlLCAkZW5jcnlwdCwgJG5hbWUgKSk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCQkJCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbgogICAgICAgICAgV0hFUkUgbmFtZT0/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmFtZSApICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgZnVuY3Rpb24gR2V0UHJvcGVydHlHcm91cFJlbGF0aW9ucyggJHRpdGxlICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwCiAgICAgICAgICBXSEVSRSBuYW1lID0gPyBPUkRFUiBCWSBzb3J0X2tleSBERVNDIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdGl0bGUgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CglyZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgJHJlc3VsdCA9IGFycmF5KCk7CiAgICB3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCiAgICAgIHsKCWFycmF5X3B1c2goICRyZXN1bHQsICRyb3cgKTsKICAgICAgfQogICAgcmV0dXJuICRyZXN1bHQ7CiAgfQoKCgkvKioKCSAqIFJldHVybiB0aGUgdW5peCB0aW1lc3RhbXAgb2YgdGhlIHVzZXJzIGV4cGlyeSBkYXRlCgkgKiBvciBmYWxzZTsKICAgKi8KCWZ1bmN0aW9uIEdldEV4cGlyeURhdGUoJHVpZCkKCXsKCQlpZiggISR1aWQgKSByZXR1cm4gZmFsc2U7CgkJZ2xvYmFsICRnQ21zOwogICAgJGRiID0mICRnQ21zLT5HZXREYigpOwoKCQkkcXVlcnkgPSAnU0VMRUNUIGV4cGlyZXMgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMKICAgICAgICAgICAgICAgV0hFUkUgaWQgPSA/JzsKCQkkZXhwaXJ5ID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCR1aWQpKTsKCQlpZiggJGV4cGlyeSApCgkJCXsKCQkJCSRleHBpcnkgPSAkZGItPlVuaXhUaW1lU3RhbXAoJGV4cGlyeSk7CgkJCX0KCQlyZXR1cm4gJGV4cGlyeTsKCX0KCgogIGZ1bmN0aW9uIElzQWNjb3VudEV4cGlyZWQoICR1aWQgKQogIHsKCQlpZiggISR1aWQgKSByZXR1cm4gdHJ1ZTsgLy8gZHVubm8gYWJvdXQgdGhpcwoJCSRleHBpcnkgPSAkdGhpcy0+R2V0RXhwaXJ5RGF0ZSggJHVpZCApOwoJCQoJCWlmKCAhJGV4cGlyeSApIHJldHVybiB0cnVlOwoJCWlmKCAkZXhwaXJ5IDwgdGltZSgpICkgcmV0dXJuIHRydWU7CgkJcmV0dXJuIGZhbHNlOwogIH0KCgogIGZ1bmN0aW9uIEdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcAogICAgICAgICAgV0hFUkUgZ3JvdXBfaWQgPSA/IE9SREVSIEJZIHNvcnRfa2V5IERFU0MiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRncnBpZCApKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogICAgICB7CgkkcmVzdWx0W10gPSAkcm93OwogICAgICB9CiAgICByZXR1cm4gJHJlc3VsdDsKICB9CgoKICBmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoKICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAKICAgICAgICAgIFZBTFVFUyg/LD8sPyw/LD8pIjsgCiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHByb3BuYW1lLCAkZ3JwaWQsICRzb3J0a2V5LCAkdmFsLCAkbG9zdHVuICkpOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CgkJCQlkaWUoICRkYi0+RXJyb3JNc2coKS4iICIuJGRiLT5zcWwgKTsKCQkJCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgfQoKCiAgZnVuY3Rpb24gRGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAKICAgICAgICAgIFdIRVJFIGdyb3VwX2lkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGdycGlkICkpOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CglyZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgcmV0dXJuIGFycmF5KFRSVUUpOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZUdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUgKQogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwCiAgICAgICAgICBXSEVSRSBuYW1lID0gPyBBTkQgZ3JvdXBfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcHJvcG5hbWUsICRncnBpZCApKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgIHJldHVybiBhcnJheShUUlVFKTsKICB9CgoKICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiAgICBpZiggJG1heGxlbmd0aCA9PSAwICkKICAgICAgewoJCQkJJG1heGxlbmd0aCA9PSAkbGVuZ3RoOwogICAgICB9CgogICAgJHAgPSBhcnJheSggJG5hbWUsICRwcm9tcHQsICR0eXBlLCAkbGVuZ3RoLCAkbWF4bGVuZ3RoLCAkYXR0cmlicywgJGZvcmNlX3VuaXF1ZSwgJGVuY3J5cHQgKTsKICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbgogICAgICAgICAgICAobmFtZSxwcm9tcHQsdHlwZSxsZW5ndGgsbWF4bGVuZ3RoLGF0dHJpYnMsZm9yY2VfdW5pcXVlLGVuY3J5cHQpCiAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPykiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHAgKTsKICAgIGlmKCAkZGJyZXN1bHQgPT0gZmFsc2UgKQogICAgICB7CgkJCQlyZXR1cm4gYXJyYXkoRkFMU0UsICRkYi0+c3FsLic8YnIvPicuJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgcmV0dXJuIGFycmF5KFRSVUUpOwogIH0KCgogIGZ1bmN0aW9uIEFkZFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkb3B0aW9ucyApCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJGluc2VydF92YWxzID0gJyc7CiAgICAkb3JkZXJfaWQgPSAwOwogICAgZm9yZWFjaCAoJG9wdGlvbnMgYXMgJG9wdHRleHQpewogICAgICAvLyBpZiBubyBhY3R1YWwgdGV4dCBpbiB0aGUgbGluZSwgbWFrZSBzdXJlIGl0IGVxdWFscyAnJywKICAgICAgLy8gaW4gb3JkZXIgbm90IHRvIGFkZCBpdCB0byB0aGUgZGIKICAgICAgJG9wdHRleHQgPSB0cmltKCRvcHR0ZXh0KTsKICAgICAgaWYodHJpbSgkb3B0dGV4dCkgPT0gJycgfHwgdHJpbSgkb3B0dGV4dCkgPT0gJ19fJyApewoJCQkJY29udGludWU7CiAgICAgIH0KCgkJCSRvcHRuYW1lID0gJG9wdHRleHQ7CiAgICAgIGlmKCBzdHJjaHIoICRvcHR0ZXh0LCAnPScgKSAhPT0gRkFMU0UgKQoJCQkJewoJCQkJCSR0bXAgPSBleHBsb2RlKCc9Jywkb3B0dGV4dCk7CgkJCQkJJG9wdG5hbWUgPSAkdG1wWzFdOwoJCQkJCSRvcHR0ZXh0ID0gJHRtcFswXTsKCQkJCX0KCQkJCiAgICAgICRvcmRlcl9pZCsrOwogICAgICAkaW5zZXJ0X3ZhbHMgLj0gIignIgoJCQkJLiAkb3JkZXJfaWQgLiAiJywgJyIKCQkJCS4gJG9wdG5hbWUgLiAiJywgJyIKCQkJCS4gJG9wdHRleHQgLiAiJywgJyIKCQkJCS4gJG5hbWUuICInKSwgIjsKICAgIH0KICAgIAogICAgJGluc2VydF92YWxzID0gc3Vic3RyKCRpbnNlcnRfdmFscywgMCwgLTIpOwoKICAgICRkYiA9ICR0aGlzLT5nZXREYigpOwogICAgJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMKCQkJKG9yZGVyX2lkLCBvcHRpb25fbmFtZSwgb3B0aW9uX3RleHQsIGNvbnRyb2xfbmFtZSkgCgkJCVZBTFVFUyAiIC4gJGluc2VydF92YWxzOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CiAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkgewogICAgICByZXR1cm4gYXJyYXkoRkFMU0UsICRkYi0+RXJyb3JNc2coKSk7CiAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgfQoJCQoKICAKICAKICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm5zKCkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSApOwogICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApCiAgICAgIHsKCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgfQoKCiAgZnVuY3Rpb24gRGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKQogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMKICAgICAgICAgIFdIRVJFIGNvbnRyb2xfbmFtZSA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgIGlmKCAkZGJyZXN1bHQgPT0gZmFsc2UgKQogICAgICB7CglyZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgfQogICAgcmV0dXJuIGFycmF5KFRSVUUpOwogIH0KCgoJZnVuY3Rpb24gR2VuZXJhdGVSYW5kb21Vc2VybmFtZSggJHByZWZpeCA9ICd1c2VyJyApCgl7CgkJc3JhbmQodGltZSgpKTsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkbW9kID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCgkJJG51bSA9IHJhbmQoMTAwLDk5OTk5KTsKCQkkY291bnQgPSAwOwoJCSRzdWZmaXggPSAnJzsKCQlpZiAoJG1vZC0+R2V0UHJlZmVyZW5jZSgidXNlcm5hbWVfaXNfZW1haWwiKSkKCQkJewoJCQkJJHN1ZmZpeCA9ICdAc2FtcGxlLmNvbSc7CgkJCX0KCQl3aGlsZSggJGNvdW50IDwgMTAwICkgeyAvLyB0b2RvLCAxMDAgc2hvdWxkIGJlIGNvbmZpZ3VyYWJsZT8KCQkJJHEgPSAiU0VMRUNUIGlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzCiAgICAgICAgICAgICBXSEVSRSB1c2VybmFtZSA9ID8iOwoJCQkkcm93ID0gJGRiLT5HZXRSb3coICRxLCBhcnJheSggJHByZWZpeC4kbnVtLiRzdWZmaXggKSApOwoJCQlpZiggISRyb3cgKSAKCQkJCXsKCQkJCQlyZXR1cm4gJHByZWZpeC4kbnVtLiRzdWZmaXg7CgkJCQl9CgkJCSRudW0gPSByYW5kKDEwMCw5OTk5OSk7CgkJCSsrJGNvdW50OwoJCX0KCQlyZXR1cm4gZmFsc2U7Cgl9CgoKCWZ1bmN0aW9uIF9jYWNoZV9wcm9wZXJ0eWRlZm5zKCkKCXsKCQlpZiggIWlzX2FycmF5KCR0aGlzLT5fY2FjaGVkX3Byb3BkZWZucykgKQoJCQl7CgkJCQkkZGIgPSYgJHRoaXMtPkdldERiKCk7CgoJCQkJJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuJzsKCQkJCSRkYXRhID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwoJCQkJaWYoICEkZGF0YSApIHJldHVybjsKCgkJCQkkdGhpcy0+X2NhY2hlZF9wcm9wZGVmbnMgPSBhcnJheSgpOwoJCQkJZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGRhdGEpOyAkaSsrICkKCQkJCQl7CgkJCQkJCSR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skZGF0YVskaV1bJ25hbWUnXV0gPSAkZGF0YVskaV07CgkJCQkJfQoJCQl9Cgl9CgogIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbiggJG5hbWUgKQogIHsKCQkkdGhpcy0+X2NhY2hlX3Byb3BlcnR5ZGVmbnMoKTsKCQlpZiggIWlzX2FycmF5KCR0aGlzLT5fY2FjaGVkX3Byb3BkZWZucykgKSByZXR1cm4gRkFMU0U7CgkJaWYoICFpc3NldCgkdGhpcy0+X2NhY2hlZF9wcm9wZGVmbnNbJG5hbWVdKSkgcmV0dXJuIEZBTFNFOwoJCXJldHVybiAkdGhpcy0+X2NhY2hlZF9wcm9wZGVmbnNbJG5hbWVdOwogIH0KCiAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgewoJCSR0aGlzLT5fY2FjaGVfcHJvcGVydHlkZWZucygpOwoJCWlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHJldHVybiBGQUxTRTsKCQlyZXR1cm4gJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zOwogIH0KCiAgLyoqCiAgICogUmV0dXJucyBzZWxlY3Qgb3B0aW9ucyBhcyBhIHNpbXBsZSBvciBhIDIgZGltZW5zaW9uYWwgYXJyYXkKICAgKgogICAqIEBwYXJhbSBTdHJpbmcgJGNvbnRyb2xuYW1lIC0gbmFtZSBvZiB0aGUgZHJvcGRvd24gYXMgaW4gdGhlIHByb3BkZWZuIHRhYmxlCiAgICogQHBhcmFtIGludCAkZGltIC0gZGltZW5zaW9uIG9mIHRoZSBhcnJheQogICAqIAlpZiAkZGltID09IDEsIHJldHVybnMgYSAxIGRpbWVuc2lvbmFsIGFycmF5IHRleHQ9Pm5hbWUKICAgKiAgICBpZiAkZGltID09IDIsIHJldHVybnMgYSAyIGRpbWVuc2lvbmFsIGFycmF5LCBlYWNoIGl0ZW0gYmVpbmcgYW4KICAgKiAJCWFycmF5IHdpdGggcHJvcGVydGllcyAnb3B0aW9uX25hbWUnLCAnb3B0aW9uX3RleHQnLCAnY29udHJvbF9uYW1lJy4KICAgKi8KICBmdW5jdGlvbiBHZXRTZWxlY3RPcHRpb25zKCAkY29udHJvbG5hbWUsICRkaW09MSApCiAgewoJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCgkkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMKCQlXSEVSRSBjb250cm9sX25hbWUgPSA/IE9SREVSIEJZIG9yZGVyX2lkIjsKCSRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCRjb250cm9sbmFtZSkgKTsKCWlmKCAkZGJyZXN1bHQgPT0gZmFsc2UgKSB7CgkJcmV0dXJuIGZhbHNlOwoJfQoJJHJldCA9IGFycmF5KCk7Cgl3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApIHsKCQlpZiAoJGRpbT09Mil7CgkJICAkcmV0W10gPSAkcm93OwoJCX0gZWxzZSB7CgkJICAkcmV0WyRyb3dbJ29wdGlvbl90ZXh0J11dID0gJHJvd1snb3B0aW9uX25hbWUnXTsKCQl9Cgl9CglyZXR1cm4gJHJldDsKICB9CgogIAogIGZ1bmN0aW9uIExvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcyA9ICcnLCAkbWQ1cHcgPSBmYWxzZSwgCgkJCQkJCQkJCSRmb3JjZV9sb2dvdXQgPSBmYWxzZSkKICB7CiAgICAkZXJyb3IgPSAnJzsKICAgICR1aWQgPSAtMTsKCQlnbG9iYWwgJGdDbXM7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwoJCSRjb25maWcgPSYgJGdDbXMtPkdldENvbmZpZygpOwoKICAgIGlmKCAhJHRoaXMtPkNoZWNrUGFzc3dvcmQoICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzLCAkbWQ1cHcgKSApCiAgICAgIHsKCQkJCSR1aWQgPSAkdGhpcy0+R2V0VXNlcklEKCAkdXNlcm5hbWUgKTsKCQkJCWlmKCAhJHVpZCApICR1aWQgPSAtMTsKCQkJCSRlcnJvciA9ICRtb2QtPkxhbmcoJ2Vycm9yX2xvZ2luZmFpbGVkJyk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJCQkJJHVpZCA9ICR0aGlzLT5HZXRVc2VySUQoICR1c2VybmFtZSApOwoJCQkJaWYoICRmb3JjZV9sb2dvdXQgKQoJCQkJCXsKCQkJCQkJJHRoaXMtPkxvZ291dCgkdWlkKTsKCQkJCQl9CgkKCQkJCWlmKCAkdGhpcy0+SXNBY2NvdW50RXhwaXJlZCggJHVpZCApICkKCQkJCQl7CgkJCQkJCSRlcnJvciA9ICRtb2QtPkxhbmcoJ2Vycm9yX2FjY291bnRleHBpcmVkJyk7CgkJCQkJfQoJCQkJZWxzZSBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJykgPT0gMCApCgkJCQkJewoJCQkJCQkvLyBtYWtlIHN1cmUgdGhpcyB1c2VyIGlzbid0IGFscmVhZHkgbG9nZ2VkIGluCgkJCQkJCSRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIAogICAgICAgICAgICAgIFVTRVJJRCA9ID8iOwoJCQkJCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCApICk7CgkJCQkJCWlmKCAkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICkKCQkJCQkJCXsKCQkJCQkJCQkkZXJyb3IgPSAkbW9kLT5MYW5nKCdlcnJvcl9ub3JlcGVhdGVkbG9naW5zJyk7CgkJCQkJCQl9CgkJCQkJfQoKICAgICAgfQoKICAgICRpcCA9IGdldGVudigiUkVNT1RFX0FERFIiKTsKICAgIGlmKCAhJGVycm9yICkKICAgICAgewoJCQkJJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIChzZXNzaW9uaWQsbGFzdHVzZWQsdXNlcmlkKQogICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/KSI7CgkJCQkKCQkJCS8qIHdlIG1heSBuZWVkIHRvIHN0YXJ0IGEgc2Vzc2lvbiBub3cgKi8KCQkJCWlmKCBzZXNzaW9uX2lkKCkgPT0gIiIgKQoJCQkJCXsKCQkJCQkJQHNlc3Npb25fc3RhcnQoKTsKCQkJCQl9CgkJCQkKCQkJCS8vIGxvZyB0aGUgdXNlciBpbgoJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoIHNlc3Npb25faWQoKSwgdGltZSgpLCAkdWlkICkpOwoJCQkJaWYoICEkZGJyZXN1bHQgKSAKCQkJCQl7CgkJCQkJCXJldHVybiBhcnJheShGQUxTRSwgJGRiLT5FcnJvck1zZygpKTsKCQkJCQl9CgkJCQkKCQkJCS8vIHNldCB0aGUgY29va2llCgkJCQkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCQkJCWlmKCAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdjb29raWVfa2VlcGFsaXZlJywwKSApIHsKCQkJCQkkZXhwaXJ5dGltZSA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3VzZXJfc2Vzc2lvbl9leHBpcmVzJyk7CgkJCQkJQHNldGNvb2tpZSgnZmV1X3Nlc3Npb25pZCcsc2Vzc2lvbl9pZCgpLHRpbWUoKSskZXhwaXJ5dGltZSwiLyIpOwoJCQkJCUBzZXRjb29raWUoJ2ZldV91aWQnLCR1aWQsdGltZSgpKyRleHBpcnl0aW1lLCIvIik7CgkJCQl9CgoJCQkJLy8gYW5kIGFkZCBoaXN0b3J5IGluZm8KCQkJCSRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IFZBTFVFUyAoPyw/LD8sPyw/KSI7CgkJCQkkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgc2Vzc2lvbl9pZCgpLCAnbG9naW4nLAoJCQkJCQkJCQkJCQkJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCInIiksCgkJCQkJCQkJCQkJCQkJCQkgJGlwICkpOwoJCQkJCgkJCQlyZXR1cm4gYXJyYXkoJHVpZCk7CiAgICAgIH0KICAgIAogICAgLy8gbG9nIGFuIGludmFsaWQgbG9naW4KICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IFZBTFVFUyAoPyw/LD8sPyw/KSI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgc2Vzc2lvbl9pZCgpLCAnZmFpbCcsCgkJCSAgICAgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJICAgICAkaXAgKSk7CiAgICBpZiggISRkYnJlc3VsdCApICRlcnJvciA9ICRkYi0+RXJyb3JNc2coKTsKCiAgICByZXR1cm4gYXJyYXkoRkFMU0UsJGVycm9yKTsKICB9CgoKICBmdW5jdGlvbiBGZXVzZXJzTWFuaXB1bGF0b3IoICR0aGVfbW9kdWxlICkKICB7CiAgICBwYXJlbnQ6OlVzZXJNYW5pcHVsYXRvciggJHRoZV9tb2R1bGUgKTsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgZnVuY3Rpb24gQXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKQogIHsKCQlpZiggISR1aWQgKSByZXR1cm4gZmFsc2U7CiAgICAvLyB2YWxpZGF0ZSB0aGUgdXNlciBpZAogICAgaWYoICEkdGhpcy0+VXNlckV4aXN0c0J5SUQoICR1aWQgKSApCiAgICAgIHsKCQkJCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgCiAgICAvLyB2YWxpZGF0ZSB0aGUgZ3JvdXAgaWQKICAgIGlmKCAhJHRoaXMtPkdyb3VwRXhpc3RzQnlJRCggJGdpZCApICkKICAgICAgewoJCQkJcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkvLyBtYWtlIHN1cmUgaXQgYWxyZWFkeSBkb2Vzbid0IGV4aXN0CgkJJHEgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncwogICAgICAgICAgICBXSEVSRSB1c2VyaWQgPSA/IEFORCBncm91cGlkID0gPyc7CgkJJHRtcCA9ICRkYi0+R2V0Um93KCRxLGFycmF5KCR1aWQsJGdpZCkpOwoJCWlmKCAkdG1wICkgcmV0dXJuIHRydWU7CgogICAgLy8gYWRkIHRoZSByZWNvcmQgdG8gdGhlIHRhYmxlIHRvIG1ha2UgdGhpcyAKICAgIC8vIHVzZXIgYSBtZW1iZXIgb2YgdGhpcyBncm91cAogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgCiAgICAgICAgICAgICh1c2VyaWQsIGdyb3VwaWQpIFZBTFVFUyAoPyw/KSI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGdpZCApICk7CiAgICByZXR1cm4oICRkYnJlc3VsdCAhPSBmYWxzZSApOwogIH0KCiAgCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIC8vIHJldHVybnMgdHJ1ZS9mYWxzZQogIGZ1bmN0aW9uIElzVmFsaWRQYXNzd29yZCggJHBhc3N3b3JkICkKICB7CiAgICAvLyBhIHBhc3N3b3JkIGlzIHZhbGlkLCBpZiBpdCdzIGxlbmd0aCBpcwogICAgLy8gd2l0aGluIGNlcnRhaW4gcmFuZ2VzCiAgICAkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICRtaW5sZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtaW5fcGFzc3dvcmRsZW5ndGgnLCA2ICk7CiAgICAkbWF4bGVuID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJywgMjAgKTsKICAgICRsZW4gPSBzdHJsZW4oJHBhc3N3b3JkKTsKICAgIGlmKCAkbGVuIDwgJG1pbmxlbiApCiAgICAgIHsKCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgZWxzZSBpZiggJGxlbiA+ICRtYXhsZW4gKQogICAgICB7CglyZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIAogICAgLyoKICAgIC8vIHRoZXJlIG11c3QgYmUgYXRsZWFzdCAzIHVuaXF1ZSBjaGFyYWN0ZXJzCiAgICBpZiggc3RybGVuKGNvdW50X2NoYXJzKCAkdXNlcm5hbWUsIDMgKSkgPCBtaW4oMyxtaW5sZW4pKQogICAgICB7CglyZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgICovCiAgICByZXR1cm4gdHJ1ZTsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyBhbiBhcnJheQogIGZ1bmN0aW9uIERlbGV0ZVVzZXJGdWxsKCAkaWQgKQogIHsKICAgIC8vIGxvZyB0aGUgdXNlciBvdXQKICAgICR0aGlzLT5Mb2dvdXRVc2VyKCAkaWQgKTsKCiAgICAvLyBkZWxldGUgdXNlciBwcm9wZXJ0aWVzCiAgICAkdGhpcy0+RGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCAkaWQgKTsKCiAgICAvLyBkZWxldGUgdXNlciBmcm9tIGdyb3VwcwogICAgJHJldCA9ICR0aGlzLT5SZW1vdmVVc2VyRnJvbUdyb3VwKCAkaWQsICcnICk7CiAgICBpZiggJHJldFswXSA9PSBmYWxzZSApCiAgICAgIHsKCQkJCXJldHVybiAkcmV0OwogICAgICB9CgogICAgLy8gZGVsZXRlIHVzZXIgcmVjb3JkCiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMKICAgICAgICAgIFdIRVJFIGlkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CiAgICAgIH0KCiAgICAvLyBhbmQgZGVsZXRlIGFueXRoaW5nIGZyb20gdGhlIHRlbXBjb2RlcyB0YWJsZSB0b28KICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZQogICAgICAgICAgV0hFUkUgdXNlcmlkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CiAgICAgIH0KICAgIAogICAgcmV0dXJuIGFycmF5KCBUUlVFLCAiIiApOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAvLyByZXR1cm5zIGFuIGFycmF5CiAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgV0hFUkUgaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZ2lkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJJGRicmVzdWx0LT5DbG9zZSgpOwogICAgcmV0dXJuICRyb3c7CiAgfQogIAogIAogIHByaXZhdGUgZnVuY3Rpb24gX2dldFVzZXIoJHVpZCkKCXsKCQlpZiggISR1aWQgKSByZXR1cm4gRkFMU0U7CgkJaWYoIGlzX2FycmF5KCR0aGlzLT5fY2FjaGVkX3VpZF9tYXApICYmIAoJCQkJaXNzZXQoJHRoaXMtPl9jYWNoZWRfdWlkX21hcFskdWlkXSkgKQoJCQl7CgkJCQlyZXR1cm4gJHRoaXMtPl9jYWNoZWRfdWlkX21hcFskdWlkXTsKCQkJfQoKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzCiAgICAgICAgICAgICAgICBXSEVSRSBpZCA9ID8iOwoJCSRyb3cgPSAkZGItPkdldFJvdygkcSxhcnJheSgkdWlkKSk7CgkJaWYoICEkcm93ICkgcmV0dXJuIEZBTFNFOwoKCQkkdGhpcy0+X2NhY2hlZF91aWRfbWFwWyR1aWRdID0gJHJvdzsKCQlyZXR1cm4gJHJvdzsKCX0KCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIC8vIHJldHVybnMgYW4gYXJyYXkKICAvLyBzZWNvbmQgZWxlbWVudCBvZiBhcnJheSBtYXkgYmUgYW4gYXJyYXkKICBmdW5jdGlvbiBHZXRVc2VySW5mbyggJHVpZCApCiAgewoJCWlmKCAhJHVpZCApIHJldHVybiBhcnJheShGQUxTRSk7IC8vIHRvZG8sIGFkZCBhIG1lc3NhZ2UKCQkkcm93ID0gJHRoaXMtPl9nZXRVc2VyKCR1aWQpOwoJCWlmKCAhJHJvdyApIHJldHVybiBhcnJheShGQUxTRSk7CiAgICByZXR1cm4gYXJyYXkoIFRSVUUsICRyb3cgKTsKICB9CiAgCgoJLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgoJLy8gcmV0dXJucyBhbiBhcnJheQoJLy8gc2Vjb25kIGVsZW1lbnQgb2YgYXJyYXkgbWF5IGJlIGFuIGFycmF5CglmdW5jdGlvbiBHZXRVc2VySW5mb0J5TmFtZSggJHVzZXJuYW1lICkKCXsKCQlpZiggISR1c2VybmFtZSApIHJldHVybiBhcnJheShGQUxTRSk7IC8vIHRvZG8sIGFkZCBhIG1lc3NhZ2UKCQkKCQkkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwoJCSRkYiA9ICR0aGlzLT5HZXREYigpOwoJCSRxdWVyeSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgCiAgICAgICAgICAgICAgIFdIRVJFIHVzZXJuYW1lID0gPyc7CgkJJHVpZCA9ICRkYi0+R2V0T25lKCRxdWVyeSxhcnJheSgkdXNlcm5hbWUpKTsKCQlpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykpOwoJCQoJCXJldHVybiAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7Cgl9CgoKCWZ1bmN0aW9uIEdldFVzZXJJbmZvQnlQcm9wZXJ0eSgkcHJvcG5hbWUsJHByb3B2YWx1ZSkKCXsKCQkkZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwogICAgaWYoICFpc19hcnJheSgkZGVmbnMpICkgcmV0dXJuIEZBTFNFOwoKCQkkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCQkkcXVlcnkgPSAnU0VMRUNUIHVzZXJpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIHVwCiAgICAgICAgICAgICAgIFdIRVJFIHVwLnRpdGxlID0gPyBBTkQgZGF0YSA9ID8nOwoJCSR0bXAgPSAkZGItPkdldE9uZSgkcXVlcnksYXJyYXkoJHByb3BuYW1lLCRwcm9wdmFsKSk7CgkJaWYoICR0bXAgKSByZXR1cm4gJHRtcDsKCQlyZXR1cm4gRkFMU0U7Cgl9CgoKCWZ1bmN0aW9uIEdldFVzZXJIaXN0b3J5KCR1aWQsJGFjdGlvbj0nJywkY291bnQ9LTEpCgl7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoJCSRwYXJtcyA9IGFycmF5KCR1aWQpOwoJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19oaXN0b3J5CiAgICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCA9ID8nOwoJCWlmKCAhZW1wdHkoJGFjdGlvbikgKQoJCQl7CgkJCQkkcXVlcnkgLj0gJyBBTkQgYWN0aW9uID0gPyc7CgkJCQkkcGFybXNbXSA9ICRhY3Rpb247CgkJCX0KCgkJJHJlc3VsdHMgPSAnJzsKCQlpZiggJGNvdW50IDw9IDAgKQoJCQl7CgkJCQkkcmVzdWx0cyA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LCRwYXJtcyk7CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRkYnIgPSAkZGItPlNlbGVjdExpbWl0KCRxdWVyeSwoaW50KSRjb3VudCk7CgkJCQl3aGlsZSggJGRiciAmJiAoJHJvdyA9ICRkYnItPkZldGNoUm93KCkpICkKCQkJCQl7CgkJCQkJCSRyZXN1bHRzW10gPSAkcm93OwoJCQkJCX0KCgkJCQlpZiggY291bnQoJHJlc3VsdHMpID09IDEgKQoJCQkJCXsKCQkJCQkJJHRtcCA9ICRyZXN1bHRzWzBdOwoJCQkJCQkkcmVzdWx0cyA9ICR0bXA7CgkJCQkJfQoJCQl9CgkJcmV0dXJuICRyZXN1bHRzOwoJfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIC8vIHJldHVybnMgYW4gYXJyYXkgb3IgZmFsc2UKICBmdW5jdGlvbiBDb3VudFVzZXJzSW5Hcm91cCggJGdyb3VwaWQgKQogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgIAogICAgJHEgPSAnJzsKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICBpZiggJGdyb3VwaWQgPT0gJycgfHwgJGdyb3VwaWQgPCAwICkKICAgICAgewoJJHEgPSAiU0VMRUNUIGNvdW50KGlkKSBhcyBudW0gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMiOyAKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkcSA9ICJTRUxFQ1QgY291bnQoaWQpIGFzIG51bSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycywiLgoJICBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgV0hFUkUgaWQ9dXNlcmlkIEFORCBncm91cGlkID0gPyI7CgkkcGFybXNbXSA9ICRncm91cGlkOwogICAgICB9CgogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm1zICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiBmYWxzZTsKICAgICAgfQoKICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICByZXR1cm4gJHJvd1snbnVtJ107CiAgfQoKCglmdW5jdGlvbiBHZXRGdWxsVXNlcnNJbkdyb3VwKCRnaWQpCgl7CgkJJGRiID0gJHRoaXMtPkdldERiKCk7CgoJCSRxID0gJ1NFTEVDVCBVLiogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgVQogICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgQgogICAgICAgICAgICAgIE9OIFUuaWQgPSBCLnVzZXJpZAogICAgICAgICAgIFdIRVJFIEIuZ3JvdXBpZCA9ID8nOwoJCSRkYXRhID0gJGRiLT5HZXRBcnJheSgkcSxhcnJheSgkZ2lkKSk7CgkJaWYoICEkZGF0YSApIHJldHVybiBmYWxzZTsKCgkJJHVpZHMgPSBjZ2VfYXJyYXk6OmV4dHJhY3RfZmllbGQoJGRhdGEsJ2lkJyk7CgkJaWYoICFjb3VudCgkdWlkcykgKSByZXR1cm4gZmFsc2U7CgoJCSRxID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMKICAgICAgICAgICBXSEVSRSB1c2VyaWQgSU4gKCcuaW1wbG9kZSgnLCcsJHVpZHMpLicpIE9SREVSIEJZIHVzZXJpZCx0aXRsZSc7CgkJJHByb3BkYXRhID0gJGRiLT5HZXRBcnJheSgkcSk7CgoJCSRpZHggPSAwOwoJCWZvciggJHUgPSAwOyAkdSA8IGNvdW50KCRkYXRhKTsgJHUrKyApCgkJCXsKCQkJCSR0bXAgPSBhcnJheSgpOwoJCQkJZm9yKDsgJGlkeCA8IGNvdW50KCRwcm9wZGF0YSk7ICRpZHgrKyApCgkJCQkJewoJCQkJCQlpZiggJHByb3BkYXRhWyRpZHhdWyd1c2VyaWQnXSAhPSAkZGF0YVskdV1bJ2lkJ10gKSBicmVhazsKCQkJCQkJJHRtcFskcHJvcGRhdGFbJGlkeF1bJ3RpdGxlJ11dID0gJHByb3BkYXRhWyRpZHhdWydkYXRhJ107CgkJCQkJfQoJCQkJaWYoIGNvdW50KCR0bXApICkKCQkJCQl7CgkJCQkJCSRkYXRhWyR1XVsncHJvcHMnXSA9ICR0bXA7CgkJCQkJfQoJCQl9CgoJCXJldHVybiAkZGF0YTsKCX0KCgogIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdyb3VwaWQgPSAnJywgJHVzZXJyZWdleCA9ICcnLCAKCQkJCQkJCQkJCQkJCQkkbGltaXQgPSAnJywgJHNvcnQgPSAnJywKCQkJCQkJCQkJCQkJCQkkcHJvcGVydHkgPSAnJywgJHByb3ByZWdleCA9ICcnLAoJCQkJCQkJCQkJCQkJCSRsb2dnZWRpbm9ubHkgPSAwLCAkc3RhcnRfcmVjb3JkID0gMCkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgkJJHRoZWxpbWl0ID0gMTAwMDAwOwoKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAkd2hlcmUgPSBhcnJheSgpOwoJCSRncm91cCA9IGFycmF5KCk7CiAgICAkb3JkZXJzb3J0ID0gIiI7CiAgICAkcSA9ICJTRUxFQ1QgQS4qLGNvdW50KEQudXNlcmlkKSBhcyBsb2dnZWRpbiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBBIjsgCgkJJHFjID0gJ1NFTEVDVCBDT1VOVChhLmlkKSc7CgkJJGdyb3VwW10gPSAiIEEuaWQiOwoJCWlmKCAkbG9nZ2VkaW5vbmx5ICkKCQkJewoJCQkJJHEgLj0gIiwiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gRCI7CgkJCQkkcWMgLj0gIiwiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gRCI7CgkJCQkkd2hlcmVbXSA9ICIgQS5pZCA9IEQudXNlcmlkIjsKCQkJfQoJCWVsc2UKCQkJewoJCQkJJHEgLj0gIiBMRUZUIE9VVEVSIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIEQKICAgICAgICAgICAgICAgICAgT04gQS5pZCA9IEQudXNlcmlkIjsKCQkJCSRxYyAuPSAiIExFRlQgT1VURVIgSk9JTiAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gRAogICAgICAgICAgICAgICAgICBPTiBBLmlkID0gRC51c2VyaWQiOwoJCQl9CgogICAgaWYoICRwcm9wZXJ0eSAhPSAnJyAmJiAkcHJvcHJlZ2V4ICE9ICcnICkKICAgICAgewoJCQkJJHEgLj0gIiBMRUZUIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgQiBPTiBBLmlkID0gQi51c2VyaWQiOwoJCQkJJHFjIC49ICIgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIEIgT04gQS5pZCA9IEIudXNlcmlkIjsKICAgICAgfQoKICAgIGlmKCAkZ3JvdXBpZCAhPSAnJyAmJiAkZ3JvdXBpZCA+PSAwICkKICAgICAgewoJCQkJJHEgLj0gIiBMRUZUIEpPSU4gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgQyBPTiBBLmlkID0gQy51c2VyaWQiOwoJCQkJJHFjIC49ICIgTEVGVCBKT0lOICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIEMgT04gQS5pZCA9IEMudXNlcmlkIjsKCQkJCSR3aGVyZVtdID0gIiBBLmlkID0gQy51c2VyaWQiOwoJCQkJJHdoZXJlW10gPSAiIGdyb3VwaWQgPSA/IjsKCQkJCSRwYXJtc1tdID0gJGdyb3VwaWQ7CiAgICAgIH0KCglpZiAoaXNfYXJyYXkoJHByb3BlcnR5KSAmJiBpc19hcnJheSgkcHJvcHJlZ2V4KSAmJiBjb3VudCgkcHJvcGVydHkpID09IGNvdW50KCRwcm9wcmVnZXgpKQoJewoJCSRhcnkgPSBhcnJheSgpOwoJCWZvciAoJHogPSAwOyAkeiA8IGNvdW50KCRwcm9wZXJ0eSk7ICR6KyspCgkJewoJCQlpZiggJHByb3BlcnR5WyR6XSAhPSAnJyAmJiAkcHJvcHJlZ2V4WyR6XSAhPSAnJyApCgkJCXsKCQkJCSRhcnlbXSA9ICIoQi50aXRsZSA9ID8gYW5kIEIuZGF0YSBSRUdFWFAgPykiOwoJCQkJJHBhcm1zW10gPSAkcHJvcGVydHlbJHpdOwoJCQkJJHBhcm1zW10gPSAkcHJvcHJlZ2V4WyR6XTsKCQkJfQoJCX0KCQkkd2hlcmVbXSA9ICIoIiAuIGltcGxvZGUoIiBPUiAiLCAkYXJ5KSAuICIpIjsKCX0KCWVsc2UKCXsKCQlpZiggJHByb3BlcnR5ICE9ICcnICYmICRwcm9wcmVnZXggIT0gJycgKQoJCXsKCQkJJHdoZXJlW10gPSAiIEIudGl0bGUgPSA/IGFuZCBCLmRhdGEgUkVHRVhQID8iOwoJCQkkcGFybXNbXSA9ICRwcm9wZXJ0eTsKCQkJJHBhcm1zW10gPSAkcHJvcHJlZ2V4OwoJCX0KCX0KICAgIGlmKCAkdXNlcnJlZ2V4ICE9ICcnICkKICAgICAgewoJCQkJJHdoZXJlW10gPSAiIHVzZXJuYW1lIFJFR0VYUCA/IjsKCQkJCSRwYXJtc1tdID0gJHVzZXJyZWdleDsKICAgICAgfQogICAgaWYoICRzb3J0ICE9ICcnICkKICAgICAgewoJCQkJJG9yZGVyc29ydCAuPSAiIE9SREVSIEJZICRzb3J0IjsKICAgICAgfQogICAgaWYoICRsaW1pdCAhPSAnJyAmJiAkbGltaXQgIT0gJzAnICkKICAgICAgewoJCQkJJHRoZWxpbWl0ID0gKGludCkkbGltaXQ7CiAgICAgIH0KCiAgICAvLyBwdXQgdGhlIHF1ZXJ5IHRvZ2V0aGVyCiAgICBpZiggY291bnQoJHdoZXJlICkgKQogICAgICB7CgkJCQkkcSAuPSAiIFdIRVJFICIgLiBpbXBsb2RlKCIgQU5EICIsJHdoZXJlKTsKCQkJCSRxYyAuPSAiIFdIRVJFICIgLiBpbXBsb2RlKCIgQU5EICIsJHdoZXJlKTsKICAgICAgfQoJCWlmKCBjb3VudCgkZ3JvdXApICkKCQkJewoJCQkJJHEgLj0gIiBHUk9VUCBCWSAiLiBpbXBsb2RlKCIgLCAiLCRncm91cCk7CgkJCQkkcWMgLj0gIiBHUk9VUCBCWSAiLiBpbXBsb2RlKCIgLCAiLCRncm91cCk7CgkJCX0KICAgICRxIC49ICRvcmRlcnNvcnQ7CiAgICAkZGJyZXN1bHQgPSAkZGItPlNlbGVjdExpbWl0KCAkcSwgJHRoZWxpbWl0LCAkc3RhcnRfcmVjb3JkLCAkcGFybXMgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJCQkJcmV0dXJuIGZhbHNlOwogICAgICB9CgoJCSRyZXN1bHQgPSAkZGJyZXN1bHQtPkdldEFycmF5KCk7CiAgICByZXR1cm4gJHJlc3VsdDsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeUlEKCAkZ2lkICkKICB7CiAgICAkZGF0YSA9ICR0aGlzLT5HZXRHcm91cEluZm8oICRnaWQgKTsKICAgIHJldHVybiggJGRhdGEgIT0gZmFsc2UgKTsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICkKICB7CiAgICAkZ2lkID0gJHRoaXMtPkdldEdyb3VwSUQoICRuYW1lICk7CiAgICByZXR1cm4oICRnaWQgIT0gZmFsc2UgKTsKICB9CgoKICBmdW5jdGlvbiBMb2dnZWRJbkVtYWlsKCkKICB7CiAgICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgICAgcmV0dXJuICR0aGlzLT5HZXRFbWFpbCgkdXNlcmlkKTsKICB9CiAgCgogIGZ1bmN0aW9uIEdldEVtYWlsKCR1aWQpCiAgIHsKCQkgJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlKCk7CgkJICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkgJHJlc3VsdCA9IGZhbHNlOwoJCSAKCQkgaWYgKCRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpCgkJCSB7CgkJCQkgJHEgPSAnU0VMRUNUIHVzZXJuYW1lIEZST00gJy5jbXNfZGJfcHJlZml4KCkuCgkJCQkJICdtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSBpZCA9ID8nOwoJCQkJICRyZXN1bHQgPSAkZGItPkdldE9uZSggJHEsIGFycmF5KCAkdWlkICkgKTsKCQkJIH0KCQkgZWxzZQoJCQkgewoJCQkJICRxID0gJ1NFTEVDVCBkYXRhIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuLCcuCgkJCQkJIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSBuYW1lPXRpdGxlIEFORAogICAgICAgICAgdHlwZT0yIEFORCB1c2VyaWQgPSA/JzsKCQkJCSAkcmVzdWx0ID0gJGRiLT5HZXRPbmUoICRxLCBhcnJheSggJHVpZCApICk7CgkJCSB9CgkJIHJldHVybiAkcmVzdWx0OwogICB9CiAgCgoJLy8gdG9kbzogbW92ZSB0aGlzIHRvIG1haW4gbW9kdWxlLgogIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCA9IC0xLCAkY2hlY2tfZXhpc3RpbmcgPSB0cnVlICkKICB7CiAgICAkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICRyZXN1bHQgPSBhcnJheSgpOwoJCWlmKCAhaXNfZW1haWwoJGVtYWlsKSApCgkJCS8vaWYoICFlcmVnaSgiXltfYS16MC05LV0rKFwuW19hLXowLTktXSspKkBbYS16MC05LV0rKFwuW2EtejAtOS1dKykqKFwuW2Etel17Miw0fSkkIiwgJGVtYWlsICkgKQogICAgICB7CiAgICAgICAJJHJlc3VsdFswXSA9IGZhbHNlOwogICAgICAJJHJlc3VsdFsxXSA9ICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnKTsKICAgICAgCXJldHVybiAkcmVzdWx0OwogICAgICB9CgogICAgJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlKCk7CgkJJGRiID0mICR0aGlzLT5HZXREYigpOwoKCQlpZiggJGNoZWNrX2V4aXN0aW5nICkKCQkJewoJCQkJaWYgKCRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpCgkJCQkJewoJCQkJCQkkcSA9ICdTRUxFQ1QgdXNlcm5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4KCQkJCSAgICAJJ21vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIHVzZXJuYW1lID0gPyc7CgkJCQkJCSRwYXJtID0gYXJyYXkoJGVtYWlsKTsKCQkJCQkJaWYgKCR1aWQgPiAtMSkKCQkJCQkJCXsKCQkJCQkJCQkkcSAuPSAnIEFORCBpZCAhPSA/JzsKCQkJCQkJCQkkcGFybVtdID0gJHVpZDsKCQkJCQkJCX0KCQkJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm0gKTsKCQkJCQkJaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKQoJCQkJCQkJewoJCQkJCQkJCSRyZXN1bHRbMF0gPSBmYWxzZTsKCQkJCQkJCQkkcmVzdWx0WzFdID0gJG1vZHVsZS0+TGFuZygnZXJyb3JfZW1haWxhbHJlYWR5dXNlZCcpOwoJCQkJCQkJCXJldHVybiAkcmVzdWx0OwoJCQkJCQkJfQoJCQkJCX0KCQkJCWVsc2UgaWYoICEkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJykgKQoJCQkJCXsKCQkJCQkJJHEgPSAiU0VMRUNUIGRhdGEgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4sIi4KCQkJCQkJCWNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSBuYW1lPXRpdGxlIEFORAogICAgICAgICAgdHlwZT0yIEFORCBkYXRhIExJS0UgPyI7CgkJCQkJCSRwYXJtcyA9IGFycmF5KCAkZW1haWwgKTsKCQkJCQkJaWYoICR1aWQgPiAtMSApCgkJCQkJCQl7CgkJCQkJCQkJJHEgLj0gJyBBTkQgdXNlcmlkICE9ID8nOwoJCQkJCQkJCSRwYXJtc1tdID0gJHVpZDsKCQkJCQkJCX0KCQkJCQkJJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRlbWFpbCApICk7CgkJCQkJCWlmKCAkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICkKCQkJCQkJCXsKCQkJCQkJCQkkcmVzdWx0WzBdID0gZmFsc2U7CgkJCQkJCQkJJHJlc3VsdFsxXSA9ICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnKTsKCQkJCQkJCQlyZXR1cm4gJHJlc3VsdDsKCQkJCQkJCX0KCQkJCQl9CgkJCX0KCiAgICAkcmVzdWx0WzBdID0gdHJ1ZTsKICAgIHJldHVybiAkcmVzdWx0OwogIH0KCgoJLy8gdG9kbzogbW92ZSB0aGlzIHRvIHRoZSBtYWluIG1vZHVsZS4KICBmdW5jdGlvbiBJc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSwgJGNoZWNrX2VtYWlsID0gdHJ1ZSApCiAgewogICAgLy8gYSB1c2VybmFtZSBpcyB2YWxpZCwgaWYgaXQncyBsZW5ndGggaXMKICAgIC8vIHdpdGhpbiBjZXJ0YWluIHJhbmdlcywgYW5kIGl0IGNvbnRhaW5zCiAgICAvLyBvbmx5IGFscGhhbnVtZXJpY3MKICAgICRtb2R1bGUgPSYgJHRoaXMtPkdldE1vZHVsZSgpOwogICAgJG1pbmxlbiA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ21pbl91c2VybmFtZWxlbmd0aCcsIDQgKTsKICAgICRtYXhsZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnLCAyMCApOwogICAgaWYoIHN0cmxlbiggJHVzZXJuYW1lICkgPCAkbWlubGVuIHx8IHN0cmxlbiggJHVzZXJuYW1lICkgPiAkbWF4bGVuICkKICAgICAgewogICAgICAgCXJldHVybiBmYWxzZTsKICAgICAgfQogICAgaWYgKCRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpCiAgICAgIHsKICAgICAgICAkdGVzdCA9ICR0aGlzLT5Jc1ZhbGlkRW1haWxBZGRyZXNzKCR1c2VybmFtZSwtMSwkY2hlY2tfZW1haWwpOwogICAgICAgIGlmICgkdGVzdFswXSA9PT0gZmFsc2UpCiAgICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgIH0KICAgICAgfQogICAgZWxzZSBpZiggIXByZWdfbWF0Y2goICcvXlthLXpBLVowLTlfLV0qJC8nLCAkdXNlcm5hbWUgKSApCiAgICAgIHsKICAJICAgIHJldHVybiBmYWxzZTsKICAgICAgfQogICAgcmV0dXJuIHRydWU7CiAgfQoKICAKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyBhbiBhcnJheQogIGZ1bmN0aW9uIFJlbW92ZVVzZXJGcm9tR3JvdXAoICR1aWQsICRnaWQgKQogIHsKCQlpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoIEZBTFNFICk7IC8vIHRvZG8sIHJldHVybiBlcnJvciBtZXNzYWdlCiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcGFybXMgPSBhcnJheSggJHVpZCApOwogICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MKICAgICAgICAgIFdIRVJFIHVzZXJpZCA9ID8iOwogICAgaWYoICRnaWQgIT0gJycgKQogICAgICB7CgkkcSAuPSAiIEFORCBncm91cGlkID0gPyI7CglhcnJheV9wdXNoKCAkcGFybXMsICRnaWQgKTsKICAgICAgfQogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm1zICk7CiAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkKICAgICAgewoJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJcmV0dXJuIGFycmF5KCBUUlVFICk7CiAgICAgIH0KICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyBhcnJheQogIGZ1bmN0aW9uIFNldEdyb3VwKCAkaWQsICRuYW1lLCAkZGVzYyApCiAgewogICAgaWYoICFpc3NldCggJG5hbWUgKSB8fCAkbmFtZSA9PSAnJyApCiAgICAgIHsKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLAoJCQkJICAkdGhpcy0+TGFuZyAoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKCXJldHVybjsKICAgICAgfQogICAgCiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgogICAgJGVpZCA9ICR0aGlzLT5HZXRHcm91cElEKCAkbmFtZSApOwogICAgaWYoICRlaWQgIT0gZmFsc2UgJiYgJGVpZCAhPSAkaWQgKQogICAgICB7CgkkbW9kID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCXJldHVybiBhcnJheShGQUxTRSwkbW9kLT5MYW5nKCdlcnJvcl9ncm91cG5hbWVfZXhpc3RzJykpOwogICAgICB9CiAgICAKICAgICRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIFNFVAogICAgICAgICAgICAgICAgZ3JvdXBuYW1lID0gPywgZ3JvdXBkZXNjID0gPyBXSEVSRSBpZCA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lLCAkZGVzYywgJGlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgIHJldHVybiBhcnJheSggVFJVRSwgJycpOwogIH0KCgogIGZ1bmN0aW9uIFNldFVzZXJQYXNzd29yZCggJHVpZCwgJHBhc3N3b3JkICkKICB7CgkJJG1vZCA9JiAkdGhpcy0+R2V0TW9kdWxlKCk7CgkJaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKSk7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzCiAgICAgICAgICBTRVQgcGFzc3dvcmQgPSA/IFdIRVJFIGlkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggbWQ1KCRwYXNzd29yZCksICR1aWQgKSk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCQkJCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSwiIik7CiAgfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIC8vIHJldHVybnMgYXJyYXkKICBmdW5jdGlvbiBTZXRVc2VyKCAkdWlkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgPSBmYWxzZSwgJGRvX21kNSA9IHRydWUgKQogIHsKCQlpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsIiIpOwogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgCiAgICAvLyBtYWtlIHN1cmUgdGhhdCB0aGlzIHVzZXIgZXhpc3RzCiAgICAkcmV0ID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICBpZiggJHJldFswXSA9PSBGQUxTRSApCiAgICB7CiAgICAJJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCAkbW9kdWxlLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSk7CQogICAgfQoKICAgIC8vIG1ha2Ugc3VyZSB0aGF0IHRoaXMgdXNlcm5hbWUgaXMgbm90IHRha2VuIGJ5IHNvbWUgb3RoZXIgaWQKICAgICRudWlkID0gJHRoaXMtPkdldFVzZXJJRCgkdXNlcm5hbWUpOwogICAgaWYoICRudWlkICE9IGZhbHNlICYmICRudWlkICE9ICR1aWQgKQogICAgICB7CgkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCXJldHVybiBhcnJheShGQUxTRSwgJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5hbWV0YWtlbicsJHVpZCkpOwogICAgICB9CgogICAgJGRicmVzdWx0ID0gJyc7CiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHEgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBTRVQKICAgICAgICAgdXNlcm5hbWUgPSA/IjsKCQogICAgJHBhcm1zW10gPSAkdXNlcm5hbWU7CiAgICBpZiggdHJpbSggJHBhc3N3b3JkICkgIT0gJycgKQogICAgICB7CgkJCQkkcSAuPSAiLCBwYXNzd29yZCA9ID8iOwoJCQkJaWYoICRkb19tZDUgKQoJCQkJCXsKCQkJCQkJJHBhcm1zW10gPSBtZDUoJHBhc3N3b3JkKTsKCQkJCQl9CgkJCQllbHNlCgkJCQkJewoJCQkJCQkkcGFybXNbXSA9ICRwYXNzd29yZDsKCQkJCQl9CiAgICAgIH0KICAgIGlmKCAkZXhwaXJlcyAhPSBmYWxzZSApCiAgICAgIHsKCSRxIC49ICIsIGV4cGlyZXMgPSA/IjsKCSRwYXJtc1tdID0gdHJpbSgkZGItPkRCVGltZVN0YW1wKCRleHBpcmVzKSwiJyIpOwogICAgICB9CiAgICAkcSAuPSAiIFdIRVJFIGlkID0gPyI7CiAgICAkcGFybXNbXSA9ICR1aWQ7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCAkcGFybXMgKTsKCiAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkKICAgICAgewoJCQkJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CiAgICAgIH0KCgkJaWYoIGlzc2V0KCR0aGlzLT5fY2FjaGVkX3VpZF9tYXBbJHVpZF0pICkKCQkJewoJCQkJdW5zZXQoJHRoaXMtPl9jYWNoZWRfdWlkX21hcFskdWlkXSk7CgkJCX0KCiAgICAvLyBDaGFuZ2VkIHRvIHBhc3MgJHVpZCBiYWNrIHNvIGl0IG1hdGNoZXMgQWRkVXNlcigpCiAgICByZXR1cm4gYXJyYXkoIFRSVUUsICR1aWQgKTsKICB9CgogIAogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAvLyByZXR1cm5zIHRydWUvZmFsc2UKICBmdW5jdGlvbiBTZXRVc2VyR3JvdXBzKCAkdWlkLCAkZ3JwaWRzICkKICB7CgkJaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KEZBTFNFLCIiKTsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiAgICAvLyBmaXJzdCBtYWtlIHN1cmUgdGhpcyB1c2VyIGV4aXN0cwogICAgJHJldCA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgaWYoICRyZXRbMF0gPT0gRkFMU0UgKQogICAgICB7CglyZXR1cm4gYXJyYXkoRkFMU0UsICJVc2VyIGRvZXMgbm90IGV4aXN0Iik7CiAgICAgIH0KCiAgICAvLyB0aGVuIHJlbW92ZSBhbGwgaGlzIGN1cnJlbnQgYXNzaWdubWVudHMKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIAogICAgICAgICAgV0hFUkUgdXNlcmlkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCApKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICApOwogICAgICB9CgogICAgLy8gYW5kIGFkZCBhbGwgb2YgdGhlbSBpbgogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MKICAgICAgICAgIFZBTFVFUyAoPyw/KSI7CiAgICBmb3JlYWNoKCAkZ3JwaWRzIGFzICRncnBpZCApCiAgICB7CiAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkLCAkZ3JwaWQgKSApOwogICAgICBpZiggISRkYnJlc3VsdCApCgl7CgkgIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSAgKTsKCX0KICAgIH0KICAgIHJldHVybiBhcnJheSggVFJVRSwgIiIgKTsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApCiAgewoJCWlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgIC8vIERlbGV0ZSBhbGwgdGhlIHVzZXIgcHJvcGVydGllcwogICAgLy8gYW5kIHNldCBuZXcgb25lcwogICAgJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoICIiLCAkdWlkLCB0cnVlICk7CgogICAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkKICAgIHsKICAgICAgbGlzdCggJGtleSwgJHZhbCApID0gc3BsaXQoIj0iLCRwcm9wKTsKICAgICAgaWYgKCAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCggJGtleSwgJHZhbCwgJHVpZCApID09IGZhbHNlKQogICAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICB9CgkJCiAgICByZXR1cm4gdHJ1ZTsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogIHsKICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICRkYXRhID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICByZXR1cm4oICRkYXRhWzBdICE9PSBGQUxTRSApOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAvLyByZXR1cm5zIGFuIGFycmF5IG9yIGZhbHNlCiAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnRpZXMoJHVpZCkKICB7CgkJaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwoJCSRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcT0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSB1c2VyaWQ9PyI7CiAgICAkcD1hcnJheSgkdWlkKTsKICAgICRhcnIgPSBhcnJheSgpOwogICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkKICAgICAgewoJCQkJcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICB3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCiAgICAgIHsKCQkJCWlmKCAhaXNzZXQoJGRlZm5zWyRyb3dbJ3RpdGxlJ11dKSApIGNvbnRpbnVlOyAvLyB1aC1vaAoKCQkJCWlmKCAkZGVmbnNbJHJvd1sndGl0bGUnXV1bJ2VuY3J5cHQnXSApCgkJCQkJewoJCQkJCQlpZiggISR0aGlzLT5fZW5jcnlwdGlvbl9rZXkgKSByZXR1cm4gZmFsc2U7CgkJCQkJCSRyb3dbJ2RhdGEnXSA9IHRyaW0oY2dlX2VuY3J5cHQ6OmRlY3J5cHQoJHRoaXMtPl9lbmNyeXB0aW9uX2tleSxiYXNlNjRfZGVjb2RlKCRyb3dbJ2RhdGEnXSkpKTsKCQkJCQl9CgkJCQkkYXJyW10gPSAkcm93OwogICAgICB9CiAgICByZXR1cm4gJGFycjsKICB9CgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAvLyByZXR1cm5zIGFuIGFycmF5IG9mIHJlY29yZHMgb3IgZmFsc2UKICBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHNBcnJheSgkdXNlcmlkKSB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcT0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSB1c2VyaWQ9PyI7CiAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLGFycmF5KCR1c2VyaWQpKTsKICAgIGlmICgkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpKSB7CiAgICAgICRyZXN1bHQ9YXJyYXkoKTs7CiAgICAgIHdoaWxlICgkcm93PSRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgewoJYXJyYXlfcHVzaCggJHJlc3VsdCwgJHJvdyApOwogICAgICB9CiAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KCiAgLy8KICAvLyBlbmQgb2YgcmMgZnVuY3Rpb25zCiAgLy8KCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRlZmF1bHR2YWx1ZT1mYWxzZSkgCiAgewogICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgaWYgKCR1c2VyaWQ9PT1mYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgcmV0dXJuICR0aGlzLT5HZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCRkZWZhdWx0dmFsdWUpOwogIH0KICAKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsICRkZWZhdWx0dmFsdWU9ZmFsc2UpIAogIHsKICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKCQkkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oJHRpdGxlKTsKCQlpZiggISRkZWZuICkgcmV0dXJuIEZBTFNFOwoKICAgICRkYj0kdGhpcy0+R2V0REIoKTsKICAgICRxPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIHRpdGxlPT8gQU5EIHVzZXJpZD0/IjsKCQkkcD1hcnJheShzdHJfcmVwbGFjZSgnICcsJ18nLCR0aXRsZSksJHVzZXJpZCk7CiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICBpZiAoJHJlc3VsdCAmJiAkcmVzdWx0LT5SZWNvcmRDb3VudCgpKSB7CiAgICAgICRyb3c9JHJlc3VsdC0+RmV0Y2hSb3coKTsKCQkJaWYoICRkZWZuWydlbmNyeXB0J10gKQoJCQkJewoJCQkJCWlmKCAhJHRoaXMtPl9lbmNyeXB0aW9uX2tleSApIHJldHVybiBGQUxTRTsKCQkJCQkkYmVmb3JlID0gJHJvd1snZGF0YSddOwoJCQkJCSRyb3dbJ2RhdGEnXSA9IHRyaW0oY2dlX2VuY3J5cHQ6OmRlY3J5cHQoJHRoaXMtPl9lbmNyeXB0aW9uX2tleSxiYXNlNjRfZGVjb2RlKCRyb3dbJ2RhdGEnXSkpKTsKCQkJCX0KICAgICAgcmV0dXJuICRyb3dbImRhdGEiXTsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiAkZGVmYXVsdHZhbHVlOwogICAgfQogIH0KCgkvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCglmdW5jdGlvbiBJc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKCR1aWQsJHRpdGxlLCRkYXRhKQoJewoJCSRkYiA9ICR0aGlzLT5HZXREYigpOwoJCSRkYnIgPSAnJzsKCQlpZiggJHVpZCA+IDAgKQoJCQl7CgkJCQkkcSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyAKICAgICAgICAgICAgICAgV0hFUkUgdGl0bGUgPSA/IEFORCB1c2VyaWQgIT0gPyBBTkQgZGF0YSA9ID8nOwoJCQkJJGRiciA9ICRkYi0+R2V0T25lKCRxLGFycmF5KCR0aXRsZSwkdWlkLCRkYXRhKSk7CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRxID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIAogICAgICAgICAgICAgICBXSEVSRSB0aXRsZSA9ID8gQU5EIGRhdGEgPSA/JzsKCQkJCSRkYnIgPSAkZGItPkdldE9uZSgkcSxhcnJheSgkdGl0bGUsJGRhdGEpKTsKCQkJfQoJCWlmKCAkZGJyICkKCQkJewoJCQkJcmV0dXJuIEZBTFNFOwoJCQl9CgkJcmV0dXJuIFRSVUU7Cgl9CgoJCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpIAogIHsKICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgIHJldHVybiAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCk7CiAgfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCRkYXRhLCR1c2VyaWQpIAogIHsKICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKCQkkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oJHRpdGxlKTsKCQlpZiggISRkZWZuICkgcmV0dXJuIGZhbHNlOwoKCQlpZiggJGRlZm5bJ2VuY3J5cHQnXSApCgkJCXsKCQkJCS8vIGdvdHRhIGVuY3J5cHQuCgkJCQlpZiggISR0aGlzLT5fZW5jcnlwdGlvbl9rZXkgKSByZXR1cm4gZmFsc2U7CgkJCQkkYmVmb3JlID0gJGRhdGE7CgkJCQkkZGF0YSA9IGJhc2U2NF9lbmNvZGUoY2dlX2VuY3J5cHQ6OmVuY3J5cHQoJHRoaXMtPl9lbmNyeXB0aW9uX2tleSwkZGF0YSkpOwoJCQl9CgogICAgJGRiPSR0aGlzLT5HZXREQigpOwogICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdGl0bGU9PyBBTkQgdXNlcmlkPT8iOwogICAgJHA9YXJyYXkoJHRpdGxlLCR1c2VyaWQpOwogICAgJHI9JGRiLT5FeGVjdXRlKCRxLCRwKTsKICAgIGlmICghJHIgfHwgKCRyLT5OdW1Sb3dzKCk9PTApKSB7CiAgICAgICRuZXdpZD0kZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllc19zZXEiKTsKICAgICAgJHE9IklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIChpZCx1c2VyaWQsdGl0bGUsZGF0YSkgVkFMVUVTICg/LD8sPyw/KSI7CiAgICAgICRwPWFycmF5KCRuZXdpZCwkdXNlcmlkLCR0aXRsZSwkZGF0YSk7CiAgICAgICRyPSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICB9IGVsc2UgewogICAgICAkcm93PSRyLT5GZXRjaFJvdygpOwogICAgICAkcT0iVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFNFVCBkYXRhPT8gV0hFUkUgaWQ9PyI7CiAgICAgICRwPWFycmF5KCRkYXRhLCRyb3dbImlkIl0pOwogICAgICAkcj0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgfQoJCWlmKCAkdGl0bGUgPT0gJ3Rlc3QnICkKCQkJewoJCQkJaWYoICRkYXRhID09ICcnICkgCgkJCQkJZGllKCJmYWlsZWQgdG8gdXBkYXRlICR0aXRsZSB0byAkZGF0YSIpOwoJCQl9CiAgICByZXR1cm4gKCRyIT1mYWxzZSk7CiAgfQoKCiAgLy8gZGVsZXRlIGFsbCBvY2N1cmFuY2VzIG9mIHRoZSB1c2VycHJvcGVydHkgYnkgbmFtZQogIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSggJHRpdGxlICkKICB7CiAgICAkZGIgPSAkdGhpcy0+R2V0REIoKTsKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIHRpdGxlPT8iOwogICAgJHAgPSBhcnJheSggJHRpdGxlICk7CiAgICAkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHAgKTsKICAgIHJldHVybiAoJHJlc3VsdCE9ZmFsc2UpOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGw9ZmFsc2UpIAogIHsKICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICRkYj0kdGhpcy0+R2V0REIoKTsKICAgICRxPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSB1c2VyaWQ9PyI7CiAgICBpZiAoISRhbGwpICRxLj0iIEFORCB0aXRsZT0/IjsKICAgICRwPWFycmF5KCk7CiAgICBpZiAoJGFsbCkgJHA9YXJyYXkoJHVzZXJpZCk7IGVsc2UgJHA9YXJyYXkoJHVzZXJpZCwkdGl0bGUpOwogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgcmV0dXJuICgkcmVzdWx0IT1mYWxzZSk7CiAgfQogIAoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsPWZhbHNlKSAKICB7CiAgICAkZGI9JHRoaXMtPkdldERCKCk7CiAgICAkcT0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdXNlcmlkPT8iOwogICAgaWYgKCEkYWxsKSAkcS49IiBBTkQgdGl0bGU9PyI7CiAgICAkcD1hcnJheSgpOwogICAgaWYgKCRhbGwpICRwPWFycmF5KCR1c2VyaWQpOyBlbHNlICRwPWFycmF5KCR1c2VyaWQsJHRpdGxlKTsKICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLCRwKTsKICAgIHJldHVybiAoJHJlc3VsdCE9ZmFsc2UpOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpIAogIHsKICAgIHJldHVybiAkdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5KCIiLHRydWUpOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwoJHVzZXJpZCkgCiAgewogICAgcmV0dXJuICR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCIiLCR1c2VyaWQsdHJ1ZSk7CiAgfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIENoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCwkZ3JvdXBzID0gJycsJG1kNXB3ID0gZmFsc2UpIAogIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxPSJTRUxFQ1QgdS4qIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIHUiOwoJCWlmICgkZ3JvdXBzICE9ICcnKQoJCQl7CgkJCQkkcSAuPSAnIElOTkVSIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYiBPTiB1LmlkID0gYi51c2VyaWQgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzIGcgT04gZy5pZCA9IGIuZ3JvdXBpZCAnOwoJCQl9CgkJJHEgLj0gJyBXSEVSRSB1LnVzZXJuYW1lPT8gQU5EIHUucGFzc3dvcmQ9Pyc7CgkJJHAgPSAnJzsKCQlpZiggJG1kNXB3ICkKCQkJewoJCQkJJHA9YXJyYXkoJHVzZXJuYW1lLCRwYXNzd29yZCk7CgkJCX0KCQllbHNlCgkJCXsKCQkJCSRwPWFycmF5KCR1c2VybmFtZSxtZDUodHJpbSgkcGFzc3dvcmQpKSk7CgkJCX0KCQlpZiAoJGdyb3VwcyAhPSAnJykKCQkJewkJCQoJCQkJLy9zcGxpdCB0aGUgc3RyaW5nIG9uIHRoZSBjb21tYXMKCQkJCSRncm91cHMgPSBzcGxpdCgnLFwgPycsICRncm91cHMpOwoJCQkJCgkJCQkvL21ha2UgYSBiaXQgZm9yIHRoZSBxdWVyeQoJCQkJJHEgLj0gJyBBTkQgKCcgLiBpbXBsb2RlKCcgT1IgJywgYXJyYXlfZmlsbCgwLCBjb3VudCgkZ3JvdXBzKSwgJ2cuZ3JvdXBuYW1lID0gPycpKSAuICcpJzsKCQkJCWZvcmVhY2ggKCRncm91cHMgYXMgJGdyb3VwKQoJCQkJCXsKCQkJCQkJJHBbXSA9ICRncm91cDsKCQkJCQl9CgkJCX0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLCRwKTsKICAgIGlmICgkcmVzdWx0ICYmICRyZXN1bHQtPlJlY29yZENvdW50KCkpIHJldHVybiB0cnVlOwogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIExvZ2dlZEluTmFtZSgpIAogIHsKICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgIGlmICgkdXNlcmlkKSByZXR1cm4gJHRoaXMtPkdldFVzZXJOYW1lKCR1c2VyaWQpOyBlbHNlIHJldHVybiAiIjsKICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gTG9nb3V0KCR1aWQgPSAnJykgCiAgewoJCWdsb2JhbCAkZ0NtczsKCQkkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCQkvL2lmKCAhJHVpZCApIHJldHVybjsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkcSA9ICcnOwoJCSRwID0gJyc7CgkJaWYoICR1aWQgPT0gJycgKQoJCQl7CgkJCQkkdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKCQkJCWlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKCQkJCSRxPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgc2Vzc2lvbmlkPT8iOwoJCQkJJHA9YXJyYXkoc2Vzc2lvbl9pZCgpKTsKCQkJfQoJCWVsc2UKCQkJewoJCQkJJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBXSEVSRSB1c2VyaWQ9PyI7CgkJCQkkcD1hcnJheSgkdWlkKTsKCQkJfQoJCQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwoKCQkvLyBkZWxldGUgdGhlIGNvb2tpZQoJCUBzZXRjb29raWUoJ2ZldV9zZXNzaW9uaWQnLCcnLHRpbWUoKS02MDAwMCwiLyIpOwoJCUBzZXRjb29raWUoJ2ZldV91aWQnLCcnLHRpbWUoKS02MDAwMCwiLyIpOwoKICAgIC8vIGFuZCBhZGQgaGlzdG9yeSBpbmZvCiAgICAkaXAgPSBnZXRlbnYoIlJFTU9URV9BRERSIik7CiAgICAkcSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBWQUxVRVMgKD8sPyw/LD8sPykiOwogICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQsIHNlc3Npb25faWQoKSwgJ2xvZ291dCcsCgkJCSAgICAgdHJpbSgkZGItPkRCVGltZVN0YW1wKHRpbWUoKSksIiciKSwkaXAgKSk7CiAgfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIExvZ291dFVzZXIoJHVpZCwkZXZlbnRtc2cgPSAnbG9nb3V0JykgCiAgewoJCWlmKCAhJHVpZCApIHJldHVybjsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgdXNlcmlkPT8iOwogICAgJHA9YXJyYXkoJHVpZCk7CiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CgogICAgJGlwID0gZ2V0ZW52KCJSRU1PVEVfQUREUiIpOwogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkgVkFMVUVTICg/LD8sPyw/LD8pIjsKICAgICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkLCBzZXNzaW9uX2lkKCksICRldmVudG1zZyAsCgkJCQkJCQkJCQkJCQkJIHRyaW0oJGRiLT5EQlRpbWVTdGFtcCh0aW1lKCkpLCInIiksJGlwKSApOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBFeHBpcmVVc2VycygpIAogIHsKICAgICRtb2R1bGUgPSYgJHRoaXMtPkdldE1vZHVsZSgpOwogICAgJGV4cGlyeXRpbWUgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpOwogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIGxhc3R1c2VkPD8iOwogICAgJHA9YXJyYXkodGltZSgpLSRleHBpcnl0aW1lKTsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwICk7CiAgICB3aGlsZSggJGRicmVzdWx0ICYmICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSApCiAgICAgIHsKCQkJCSRxMiA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeQogICAgICAgICAgICAgICAgICh1c2VyaWQsc2Vzc2lvbmlkLGFjdGlvbixyZWZkYXRlKQogICAgICAgICAgICAgICAgIFZBTFVFUyAoPyw/LD8sPykiOwoJCQkJJGRiLT5FeGVjdXRlKCAkcTIsIGFycmF5KCAkcm93Wyd1c2VyaWQnXSwgJHJvd1snc2Vzc2lvbmlkJ10sJ2V4cGlyZScsCgkJCQkJCQkJCQkJCQkJCQkJdHJpbSgkZGItPkRiVGltZVN0YW1wKHRpbWUoKSksIiciKSkpOwoJCQkJJG1vZHVsZS0+Tm90aWZ5RXhwaXJlZFVzZXIoICRyb3dbJ3VzZXJpZCddICk7CiAgICAgIH0KCiAgICAkcT0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIGxhc3R1c2VkPD8iOwogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBMb2dnZWRJbklkKCkgCiAgewogICAgLy8gaWYgdGhlIHVzZXIgaXMgYXV0aGVudGljYXRlZCB1c2luZyB0aGUgYXV0aCBtb2R1bGUKCQkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwoJCWlmKCAkYXV0aF9jb25zdW1lciBpbnN0YW5jZW9mIGZldV9zdGRfY29uc3VtZXIgKQoJCQl7CgkJCQkvLyBpdHMgdGhlIGJ1aWx0IGluIHN0dWZmLgoJCQkJcmV0dXJuICR0aGlzLT5fb2xkX0xvZ2dlZEluSWQoKTsKCQkJfQoKICAgIGlmKCAkYXV0aF9jb25zdW1lci0+aXNfYXV0aGVudGljYXRlZCgpICkKICAgICAgewoKCQkJCS8vIHNlYXJjaCBmb3IgYSB1c2VyaWQgYmFzZWQgb24gYSBwcm9wZXJ0eQoJCQkJJHByb3AgPSAkYXV0aF9jb25zdW1lci0+Z2V0X2Nvbm5lY3RpbmdfcHJvcGVydHlfbmFtZSgpOwoJCQkJJHZhbCAgPSAkYXV0aF9jb25zdW1lci0+Z2V0X3VuaXF1ZV9pZGVudGlmaWVyKCk7CgkJCQlpZiggISR2YWwgKSByZXR1cm4gRkFMU0U7CgkJCQkKCQkJCSR1aW5mbyA9ICcnOwoJCQkJJHVzZXByb3AgPSBmYWxzZTsKCQkJCWlmKCAkcHJvcCA9PSAnJyB8fCAkcHJvcCA9PSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVVNFUk5BTUUgKQoJCQkJCXsKCQkJCQkJLy8gZ2V0IHVzZXIgYnkgbmFtZQoJCQkJCQkkdWluZm8gPSAkdGhpcy0+R2V0VXNlckluZm9CeU5hbWUoICR2YWwgKTsKCQkJCQl9CgkJCQllbHNlIGlmKCAkcHJvcCA9PSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVUlEICkKCQkJCQl7CgkJCQkJCS8vIHNlZSBpZiB0aGUgdWlkIGV4aXN0cy4KCQkJCQkJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdmFsICk7CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQkJLy8gaXQncyBhIHByb3BlcnR5IG9mIHNvbWUgdHlwZS4KCQkJCQkJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvQnlQcm9wZXJ0eSgkcHJvcCwkdmFsKTsKCQkJCQkJJHVzZXByb3AgPSB0cnVlOwoJCQkJCX0KCgkJCQlpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgKGlzX2FycmF5KCR1aW5mbykgJiYgJHVpbmZvWzBdID09IEZBTFNFKSApCgkJCQkJewoJCQkJCQkvLyB1c2VyIG5vdCBmb3VuZCwgZG8gd2UgbmVlZCB0byBjcmVhdGUgb25lPwoJCQkJCQlpZiggJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnYXV0b19jcmVhdGVfdW5rbm93bicpICkKCQkJCQkJCXsKCQkJCQkJCQkvLyB3ZSdyZSBnb25uYSBjcmVhdGUgYSBuZXcgdXNlci4KCQkJCQkJCQkkdXNlcm5hbWUgPSAkdmFsOwoJCQkJCQkJCWlmKCAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VfcmFuZG9tdXNlcm5hbWUnKSAmJgoJCQkJCQkJCQkJJHByb3AgIT0gZmV1X2F1dGhfY29uc3VtZXI6OlBST1BFUlRZX1VTRVJOQU1FICYmCgkJCQkJCQkJCQkkcHJvcCAhPSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVUlEICYmCgkJCQkJCQkJCQkkcHJvcCAhPSAnJyApCgkJCQkJCQkJCXsKCQkJCQkJCQkJCSR1c2VybmFtZSA9ICRtb2R1bGUtPkdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoKTsKCQkJCQkJCQkJfQoKCQkJCQkJCQkkdG1wID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsNik7CgkJCQkJCQkJJGV4cGlyZXMgPSBzdHJ0b3RpbWUoc3ByaW50ZigiKyVkIG1vbnRocyIsJHRtcCkpOwoJCQkJCQoJCQkJCQkJCSRkZmx0X2dyb3VwID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcpOwoJCQkJCQkJCSRyZXQgPSAkbW9kdWxlLT5BZGRVc2VyKCAkdXNlcm5hbWUsCgkJCQkJCQkJCQkJCQkJCQkJCQkgJG1vZHVsZS0+R2VuZXJhdGVSYW5kb21QcmludGFibGVTdHJpbmcoKSwKCQkJCQkJCQkJCQkJCQkJCQkJCSAkZXhwaXJlcyApOwoJCQkJCQkJCWlmKCAkcmV0WzBdID09IEZBTFNFICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJG1vZHVsZS0+QXVkaXQoJycsJG1vZHVsZS0+R2V0TmFtZSgpLCRyZXRbMV0pOwoJCQkJCQkJCQkJcmV0dXJuIEZBTFNFOwoJCQkJCQkJCQl9CgkJCQkJCQkJJHVpZCA9ICRyZXRbMV07CgkJCQkJCgkJCQkJCQkJLy8gc2V0IGhpcyBncm91cHMuCgkJCQkJCQkJaWYoICRkZmx0X2dyb3VwID4gMCApCgkJCQkJCQkJCXsKCQkJCQkJCQkJCSRyZXQgPSAkdGhpcy0+QXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRkZmx0X2dyb3VwICk7CgkJCQkJCQkJCX0KCQkJCQkKCQkJCQkJCQkvLyBub3cgc2V0IGEgcHJvcGVydHkuCgkJCQkJCQkJaWYoICR1c2Vwcm9wICkKCQkJCQkJCQkJewoJCQkJCQkJCQkJJHJldCA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydHlGdWxsKCRwcm9wLCR2YWwsJHVpZCk7CgkJCQkJCQkJCQlpZiggJHJldCA9PSBmYWxzZSApCgkJCQkJCQkJCQkJewoJCQkJCQkJCQkJCQkvLyBzaG91bGQgcmVtb3ZlIHRoZSB1c2VyLi4uCgkJCQkJCQkJCQkJCSRtb2R1bGUtPkF1ZGl0KCcnLCRtb2R1bGUtPkdldE5hbWUoKSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nKSk7CgkJCQkJCQkJCQkJCXJldHVybiBGQUxTRTsKCQkJCQkJCQkJCQl9CgkJCQkJCQkJCX0KCQkJCQkKCQkJCQkJCQkkbW9kdWxlLT5BdWRpdCgkdWlkLCRtb2R1bGUtPkdldE5hbWUoKSwkbW9kdWxlLT5MYW5nKCdhdWRpdF91c2VyX2NyZWF0ZWQnKSk7CgkJCQkJCQkJcmV0dXJuICR1aWQ7CgkJCQkJCQl9CgkJCQkJfQoJCQkJZWxzZQoJCQkJCXsKCQkJCQkJcmV0dXJuICR1aW5mb1sxXVsnaWQnXTsKCQkJCQl9CiAgICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgogIHByaXZhdGUgZnVuY3Rpb24gX29sZF9Mb2dnZWRJbklkKCkgCiAgewoJCWdsb2JhbCAkZ0NtczsKCQkkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKCQlpZiggaXNzZXQoJGdDbXMtPnZhcmlhYmxlc1snZmV1X2xvZ2dpbmlkJ10pICkKCQkJewoJCQkJLy8gdGhpcyB3aWxsIHNhdmUgYSBmZXcgcXVlcmllcyBpbiBlYWNoIHJlcXVlc3QKCQkJCXJldHVybiAkZ0Ntcy0+dmFyaWFibGVzWydmZXVfbG9nZ2luaWQnXTsKCQkJfQoKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkc2Vzc2lvbmlkID0gc2Vzc2lvbl9pZCgpOwogICAgJHRoaXMtPkV4cGlyZVVzZXJzKCk7CgogICAgaWYoICRzZXNzaW9uaWQgPT0gIiIgKQogICAgICB7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCgkJJG1vZHVsZSA9JiAkdGhpcy0+R2V0TW9kdWxlKCk7CgkJJGV4cGlyeXRpbWUgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpOwogICAgJHE9IlNFTEVDVCB1c2VyaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgc2Vzc2lvbmlkPT8iOwogICAgJHA9YXJyYXkoJHNlc3Npb25pZCk7CiAgICAkcmVzdWx0ID0gJGRiLT5HZXRPbmUoJHEsJHApOwogICAgaWYgKCRyZXN1bHQpCgkJCXsKCQkJCS8vIHdlIGtub3cgdGhpcyB1c2VyIGlzIGxvZ2dlZCBpbi4KCQkJCSRyZXR2YWwgPSAkcmVzdWx0OwoJCQkJCgkJCQkvLyBub3cgdG91Y2ggdGhlIGxhc3R1c2VkCgkJCQkvLyB0aGlzIHdpbGwgZW5zdXJlIHRoYXQgZXZlcnkgdGltZSB3ZSBjaGVjayB0aGF0IGEgdXNlciBpcwoJCQkJLy8gbG9nZ2VkIGluLCBpdCB0b3VjaGVzIGhpcyBsb2dnZWQgaW4gZW50cnkKCQkJCSRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gU0VUIGxhc3R1c2VkID0gPyB3aGVyZSBzZXNzaW9uaWQgPSA/IjsKCQkJCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCB0aW1lKCksICRzZXNzaW9uaWQgKSApOwoKCQkJCS8vIHRlc3RtZQoJCQkJQHNldGNvb2tpZSgnZmV1X3Nlc3Npb25pZCcsJHNlc3Npb25pZCx0aW1lKCkrJGV4cGlyeXRpbWUsIi8iKTsKCQkJCUBzZXRjb29raWUoJ2ZldV91aWQnLCR1aWQsdGltZSgpKyRleHBpcnl0aW1lLCIvIik7CgkJCQkkZ0Ntcy0+dmFyaWFibGVzWydmZXVfbG9nZ2luaWQnXSA9ICRyZXR2YWw7CgkJCQlyZXR1cm4gJHJldHZhbDsKCQkJfSAKCQllbHNlIAoJCQl7CgkJCQlpZiggJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsMCkgJiYKCQkJCQkJaXNzZXQoJF9DT09LSUVbJ2ZldV9zZXNzaW9uaWQnXSkgKQoJCQkJCXsKCQkJCQkJLy8gbm8gc2Vzc2lvbiBpZCwgYnV0IHdlIGhhdmUgYSBjb29raWUsIHNvIHdoYXQgd2UnbGwgZG8KCQkJCQkJLy8gaXMgZmlyc3QgY2hlY2sgdG8gc2VlIGlmIHRoZSBzZXNzaW9uIGlzIHN0aWxsIGxvZ2dlZCBpbgoJCQkJCQkvLyBpZiBpdCBpcywgZm9yY2UgYSBsb2dvdXQgZm9yIHRoYXQgc2Vzc2lvbiBpZAoJCQkJCQkvLyBhbmQgc3RhcnQgYSBuZXcgcmVjb3JkLCBvdGhlcndpc2UsIGlnbm9yZSB0aGUgY29va2llCgkJCQkJCSR1aWQgPSAkX0NPT0tJRVsnZmV1X3VpZCddOwoJCQkJCQkkc2Vzc2lvbmlkID0gJF9DT09LSUVbJ2ZldV9zZXNzaW9uaWQnXTsKCQkJCQkJCgkJCQkJCS8qCgkJCQkJCSAkcSA9ICJTRUxFQ1QgdXNlcmlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluCgkJCQkJCSBXSEVSRSBzZXNzaW9uaWQgPSA/IjsKCQkJCQkJICRyb3cgPSAkZGItPkdldFJvdygkcSwgYXJyYXkoJHNlc3Npb25pZCkgKTsKCQkJCQkJIGlmKCAhJHJvdyApCgkJCQkJCSB7CgkJCQkJCSAvLyB1c2VyIGhhcyBhIGNvb2tpZSwgYnV0IHRoZSByZWNvcmQgaGFzIHByb2JhYmx5IGV4cGlyZWQKCQkJCQkJIC8vIHNvIHRoZSBjb29raWUgaXMgbm90IGdvb2QgYW55IG1vcmUuCgkJCQkJCSAKCQkJCQkJIC8vIGRlbGV0ZSB0aGUgY29va2llCgkJCQkJCSBAc2V0Y29va2llKCdmZXVfc2Vzc2lvbmlkJywnJyx0aW1lKCktNjAwMDAsJGNvbmZpZ1sncm9vdF9wYXRoJ10pOwoJCQkJCQkgQHNldGNvb2tpZSgnZmV1X3VpZCcsJycsdGltZSgpLTYwMDAwLCRjb25maWdbJ3Jvb3RfcGF0aCddKTsKCQkJCQkJIHJldHVybiBmYWxzZTsKCQkJCQkJIH0KCQkJCQkJKi8KCQkJCQkJCgkJCQkJCS8vIGRlbGV0ZSB0aGUgZXhpc3RpbmcgcmVjb3JkCgkJCQkJCSRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiAKICAgICAgICAgICAgICAgICAgICAgICAgV0hFUkUgc2Vzc2lvbmlkID0gPyI7CgkJCQkJCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkc2Vzc2lvbmlkICkgKTsKCQkJCQkJCgkJCQkJCS8vIGxvZyB0aGUgdXNlciBpbgoJCQkJCQkvLyB0b2RvLCBsb2cgdGhpcyB0b28sCgkJCQkJCS8vIHJhdGlvbmFsaXplIHRoaXMgY29kZSB3aXRoIExvZ2luKCkgYW5kIExvZ291dCgpIG1ldGhvZHMKCQkJCQkJQHNlc3Npb25fc3RhcnQoKTsKCQkJCQkJJHNlc3Npb25pZCA9IHNlc3Npb25faWQoKTsKCQkJCQkJCgkJCQkJCSRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbgogICAgICAgICAgICAgICAgICAgIChzZXNzaW9uaWQsbGFzdHVzZWQsdXNlcmlkKQogICAgICAgICAgICAgICAgICBWQUxVRVMgKD8sPyw/KSI7CgkJCQkJCSRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCRzZXNzaW9uaWQsIHRpbWUoKSwgJHVpZCkgKTsKCQkJCQkJCgkJCQkJCS8vIHNldCB0aGUgY29va2llIGFnYWluCgkJCQkJCUBzZXRjb29raWUoJ2ZldV9zZXNzaW9uaWQnLCRzZXNzaW9uaWQsdGltZSgpKyRleHBpcnl0aW1lLCIvIik7CgkJCQkJCUBzZXRjb29raWUoJ2ZldV91aWQnLCR1aWQsdGltZSgpKyRleHBpcnl0aW1lLCIvIik7CgkJCQkJCQoJCQkJCQkkZ0Ntcy0+dmFyaWFibGVzWydmZXVfbG9nZ2luaWQnXSA9ICR1aWQ7CgkJCQkJCXJldHVybiAkdWlkOwoJCQkJCX0KCQkJCWVsc2UKCQkJCQl7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgkJCX0KCQlyZXR1cm4gZmFsc2U7CiAgfQoKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIExvZ2dlZEluKCkgCiAgewogICAgaWYoICEkdGhpcy0+TG9nZ2VkSW5JZCgpICkgCgkJCXsKCQkJCXJldHVybiBmYWxzZTsgCgkJCX0KICAgIGVsc2UKCQkJewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KICB9CgoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gTWVtYmVyT2ZHcm91cCgkdXNlcmlkLCRncm91cGlkKSAKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcT0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSB1c2VyaWQ9PyBBTkQgZ3JvdXBpZD0/IjsKICAgIAogICAgJHBhcmFtcz1hcnJheSgkdXNlcmlkLCRncm91cGlkKTsKICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLCRwYXJhbXMpOwogICAgaWYgKCRyZXN1bHQgJiYgJHJlc3VsdC0+UmVjb3JkQ291bnQoKSkgCgkJCXsKCQkJCXJldHVybiB0cnVlOwoJCQl9IAoJCWVsc2UgCgkJCXsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQogIH0KCiAgCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIEdldFVzZXJOYW1lKCR1c2VyaWQpIAogIHsKCQkkcm93ID0gJHRoaXMtPl9nZXRVc2VyKCR1c2VyaWQpOwoJCWlmKCAhJHJvdyApIHJldHVybiBGQUxTRTsKCQlyZXR1cm4gJHJvd1sndXNlcm5hbWUnXTsKICB9CgogIAogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBHZXRVc2VySUQoJHVzZXJuYW1lKSAKICB7CQkKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSB1c2VybmFtZT0/IjsKICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsYXJyYXkoJHVzZXJuYW1lKSk7CiAgICBpZiAoJGRicmVzdWx0ICYmICRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSkgewogICAgICAkcm93PSRkYnJlc3VsdC0+RmV0Y2hSb3coKTsKICAgICAgcmV0dXJuICRyb3dbImlkIl07CiAgICB9IGVsc2UgewogICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgfQoKICAKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgLy8gcmV0dXJucyBhcnJheQogIGZ1bmN0aW9uIEFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKICAgIC8vIHNlZSBpZiBpdCBleGlzdHMgYWxyZWFkeSBvciBub3QgKGJ5IG5hbWUpCiAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgogICAgICAibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIFdIRVJFIGdyb3VwbmFtZSA9ID8iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICBpZiggJHJvdyApCiAgICAgIHsKCXJldHVybiBhcnJheShGQUxTRSwkdGhpcy0+TGFuZygnZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cycpKTsKICAgICAgfQogICAgCiAgICAkZ3JwaWQgPSAKICAgICAgJGRiLT5HZW5JRCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHNfc2VxIiApOwogICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuCiAgICAgICJtb2R1bGVfZmV1c2Vyc19ncm91cHMgVkFMVUVTICg/LD8sPykiOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRncnBpZCwgJG5hbWUsICRkZXNjcmlwdGlvbiApICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICByZXR1cm4gYXJyYXkoVFJVRSwkZ3JwaWQpOwogIH0KCgogIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAvLyByZXR1cm5zIGFycmF5CiAgZnVuY3Rpb24gQWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMsICRkb19tZDUgPSB0cnVlICkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKICAgIC8vIHNlZSBpZiBpdCBleGlzdHMgYWxyZWFkeSBvciBub3QgKGJ5IG5hbWUpCiAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLgogICAgICAibW9kdWxlX2ZldXNlcnNfdXNlcnMgV0hFUkUgdXNlcm5hbWUgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmFtZSApICk7CiAgICBpZiggISRkYnJlc3VsdCApCiAgICAgIHsKCXJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICB9CiAgICAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgaWYoICRyb3cgKQogICAgICB7CgkkbW9kdWxlID0mICR0aGlzLT5HZXRNb2R1bGUoKTsKCXJldHVybiBhcnJheShGQUxTRSwkbW9kdWxlLT5MYW5nKCdlcnJvcl91c2VybmFtZV9leGlzdHMnKSk7CiAgICAgIH0KICAgIAogICAgLy8gZ2VuZXJhdGUgdGhlIHNlcXVlbmNlCiAgICAkdWlkID0gCiAgICAgICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnNfc2VxIiApOwoKCQkkcHd0eHQgPSAkcGFzc3dvcmQ7CgkJaWYoICRkb19tZDUgPT0gdHJ1ZSApCgkJCXsKCQkJCSRwd3R4dCA9IG1kNSgkcGFzc3dvcmQpOwoJCQl9CgogICAgLy8gaW5zZXJ0IHRoZSByZWNvcmQKICAgICRxID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLgogICAgICAibW9kdWxlX2ZldXNlcnNfdXNlcnMgVkFMVUVTICg/LD8sPyw/LD8pIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkLCAkbmFtZSwgJHB3dHh0LCAKCQkJCQkgdHJpbSgkZGItPkRiVGltZVN0YW1wKHRpbWUoKSksIiciKSwKCQkJCQkgdHJpbSgkZGItPkRiVGltZVN0YW1wKCRleHBpcmVzKSwiJyIpICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgIH0KICAgIHJldHVybiBhcnJheShUUlVFLCR1aWQpOwogIH0KICAKICAKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gR2V0R3JvdXBOYW1lKCRncm91cGlkKSAKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcT0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIFdIRVJFIGlkPT8iOwogICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSxhcnJheSgkZ3JvdXBpZCkpOwogICAgaWYgKCRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkpIHsKICAgICAgJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgIHJldHVybiAkcm93WyJncm91cG5hbWUiXTsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgCiAgCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIGZ1bmN0aW9uIEdldEdyb3VwRGVzYygkZ3JvdXBpZCkgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyBXSEVSRSBpZD0/IjsKICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsYXJyYXkoJGdyb3VwaWQpKTsKICAgIGlmICgkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpKSB7CiAgICAgICRyb3c9JGRicmVzdWx0LT5GZXRjaFJvdygpOwogICAgICByZXR1cm4gJHJvd1siZ3JvdXBkZXNjIl07CiAgICB9IAllbHNlIHsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICAKCiAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogIC8vIHJldHVybnMgYW4gYXJyYXkKICBmdW5jdGlvbiBEZWxldGVHcm91cEZ1bGwoICRpZCApCiAgewogICAgJGRiID0gJHRoaXMtPkdldERCKCk7CiAgICAkcmVzdWx0ID0gYXJyYXkoKTsKCiAgICAvLyBkZWxldGUgYWxsIHByb3BlcnR5IHJlbGF0aW9ucyBmcm9tIHRoaXMgZ3JvdXAKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgV0hFUkUgZ3JvdXBfaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CglyZXR1cm4gYXJyYXkoIEZBTFNFLCAkZGItPkVycm9yTXNnKCkgKTsKICAgICAgfQoKICAgIC8vIGRlbGV0ZSBhbGwgaW5kaWNhdGlvbiB0aGF0IGFueWJvZHkgaXMgYSBtZW1iZXIKICAgIC8vIG9mIHRoaXMgZ3JvdXAKICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIGdyb3VwaWQgPSA/IjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwogICAgaWYoICEkZGJyZXN1bHQgKQogICAgICB7CglyZXR1cm4gYXJyYXkoIEZBTFNFLCAkZGItPkVycm9yTXNnKCkgKTsKICAgICAgfQogICAgCiAgICAvLyBhbmQgdGhlbiBkZWxldGUgdGhlIGdyb3VwCiAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIFdIRVJFIGlkID0gPyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGlkICkgKTsKICAgIGlmKCAhJGRicmVzdWx0ICkKICAgICAgewoJcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICk7CiAgICAgIH0KICAgIAogICAgcmV0dXJuIGFycmF5KCBUUlVFLCAnJyApOwogIH0KICAKICAKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0KCkKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAKICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgIGlmKCAkZGJyZXN1bHQgKSB7CiAgICB3aGlsZSggJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSApCiAgICAgIHsKCQkgICRyZXN1bHRbJHJvd1snZ3JvdXBuYW1lJ11dID0gJHJvd1snaWQnXTsKICAgICAgfQogICAgfQogICAgcmV0dXJuICRyZXN1bHQ7CiAgfQogIAoKICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0RnVsbCgpCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwoJICAKICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgJHF1ZXJ5ID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyI7CiAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeSApOwogICAgaWYoICRkYnJlc3VsdCApIHsKICAgICAgd2hpbGUoICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCkgKQogICAgICAgIHsKCQkJYXJyYXlfcHVzaCgkcmVzdWx0LCRyb3cpOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiAkcmVzdWx0OwogIH0KCgogIC8vIG9sZCB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKSAKICB7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CgogICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyBXSEVSRSBncm91cG5hbWU9PyI7CiAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRxLGFycmF5KCRncm91cG5hbWUpKTsKICAgIGlmICgkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpKSAKICAgICAgewoJCQkJJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCk7CgkJCQlyZXR1cm4gJHJvd1siaWQiXTsKICAgICAgfSAKICAgIGVsc2UgCiAgICAgIHsKCQkJCXJldHVybiBmYWxzZTsKICAgICAgfQogIH0KCgogIC8vIG9sZCB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpIHsKICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICRxPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZD0/IjsKICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsYXJyYXkoJHVzZXJpZCkpOwogICAgaWYgKCRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkpIHsKICAgICAgJHJlc3VsdD0iIjsKICAgICAgd2hpbGUgKCRyb3c9JGRicmVzdWx0LT5GZXRjaFJvdygpKSB7CgkJCQlpZiAoJHJlc3VsdCE9IiIpIHsKCQkJCQkkcmVzdWx0Lj0iLCIuJHRoaXMtPkdldEdyb3VwTmFtZSgkcm93WyJncm91cGlkIl0pOwoJCQkJfSBlbHNlIHsKCQkJCQkkcmVzdWx0PSR0aGlzLT5HZXRHcm91cE5hbWUoJHJvd1siZ3JvdXBpZCJdKTsKCQkJCX0KICAgICAgfQogICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiAibm9uZSI7CiAgICB9CiAgfQoKCiAgLy8gb2xkIHVzZXJpZCBhcGkgZnVuY3Rpb24KICBmdW5jdGlvbiBEZWxldGVVc2VyKCRpZCkgCiAgewogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgaWYgKGlzc2V0KCRfR0VUWyRpZC4idXNlcmlkIl0pKSAKICAgICAgJHVzZXJpZD1zdHJfcmVwbGFjZSgiJyIsJ18nLCRfR0VUWyRpZC4idXNlcmlkIl0pOyAKICAgIGVsc2UgCiAgICAgIHJldHVybjsKICAgICRxPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgV0hFUkUgaWQ9JyR1c2VyaWQnIjsKICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHEpOwogICAgJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZD0nJHVzZXJpZCciOwogICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSk7CgoJCWlmKCBpc3NldCgkdGhpcy0+X2NhY2hlZF91aWRfbWFwWyR1c2VyaWRdKSApCgkJCXsKCQkJCXVuc2V0KCR0aGlzLT5fY2FjaGVkX3VpZF9tYXBbJHVzZXJpZF0pOwoJCQl9CiAgfQoKfSAvLyBjbGFzcwoKJG1hbmlwdWxhdG9yID0gJ0Zyb250RW5kVXNlcnNNYW5pcHVsYXRvcic7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/FrontEndUsers.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKJGNnZXh0ZW5zaW9ucyA9IGNtc19qb2luX3BhdGgoJGdDbXMtPmNvbmZpZ1sncm9vdF9wYXRoJ10sJ21vZHVsZXMnLAoJCQkgICAgICAnQ0dFeHRlbnNpb25zJywnQ0dFeHRlbnNpb25zLm1vZHVsZS5waHAnKTsKaWYoICFpc19yZWFkYWJsZSggJGNnZXh0ZW5zaW9ucyApICkKewogIGVjaG8gJzxoMT48Zm9udCBjb2xvcj0icmVkIj5FUlJPUjogVGhlIENHRXh0ZW5zaW9ucyBtb2R1bGUgY291bGQgbm90IGJlIGZvdW5kLjwvZm9udD48L2gxPic7CiAgcmV0dXJuOwp9CnJlcXVpcmVfb25jZSgkY2dleHRlbnNpb25zKTsKCi8vIGEgdmVyeSBpbXBvcnRhbnQgbGluZSB0aGF0IGluY2x1ZGVzIGFsbCBvZiBvdXIgYXBpIGZ1bmN0aW9ucwpyZXF1aXJlX29uY2UoZGlybmFtZShfX0ZJTEVfXykuIi9saWIvY2xhc3MuZmV1X3NtYXJ0eS5waHAiICk7CmNsYXNzIEZyb250RW5kVXNlcnMgZXh0ZW5kcyBDR0V4dGVuc2lvbnMKewogIC8qKgogICAqIFRoZSBkZWZhdWx0IHRlbXBsYXRlIHVzZWQgZm9yIHRoZSBsb2dpbiBmb3JtCiAgICovCiAgdmFyICRkZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUyID0gJwo8IS0tIGZvcmdvdCBwYXNzd29yZCBlbWFpbCB0ZW1wbGF0ZSAtLT4KPHA+eyRtZXNzYWdlX2ZvcmdvdHB3ZW1haWx9PC9wPgo8cD57JHByb21wdF9jb2RlfSZuYnNwO3skZGF0YV9jb2RlfTwvcD4KPHA+eyRwcm9tcHRfbGlua30mbmJzcDt7JGRhdGFfbGlua308cD4KPCEtLSBmb3Jnb3QgcGFzc3dvcmQgZW1haWwgdGVtcGxhdGUgLS0+CiAgJzsKCgogIHZhciAkZGZsdF9sb2dvdXRmb3JtdGVtcGxhdGUgPSAnCjwhLS0gTG9nb3V0IGZvcm0gdGVtcGxhdGUgLS0+CiAgPHA+eyRwcm9tcHRfbG9nZ2VkaW59Jm5ic3A7eyR1c2VybmFtZX08L3A+IAogIDxwPjxhIGhyZWY9InskdXJsX2xvZ291dH0iIHRpdGxlPSJ7JG1vZC0+TGFuZyhcJ2luZm9fbG9nb3V0XCcpfSI+eyRtb2QtPkxhbmcoXCdsb2dvdXRcJyl9PC9hPjwvcD4KPCEtLSBMb2dvdXQgZm9ybSB0ZW1wbGF0ZSAtLT4KICc7CgoKICAvL0hvdyBtYW55IHNlY29uZHMgb2YgaW5hY3Rpdml0eSBiZWZvcmUgYSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dC4KICB2YXIgJGV4cGlyeXRpbWU7CiAgCiAgLy9TZXQgdGhpcyB0byB0cnVlIGlmIHVzZXIgc2hvdWxkIGJlIHJlZGlyZWN0ZWQgdG8gZGVmYXVsdCBwYWdlIGFmdGVyIAogIC8vIGxvZ2dpbmcgaW4vb3V0LgogIHZhciAkbG9naW50YXJnZXQ7CiAgdmFyICRvdGhlcmludGFyZ2V0OwogIHZhciAkbG9nb3V0dGFyZ2V0OwogIHZhciAkb3RoZXJvdXR0YXJnZXQ7ICAKICB2YXIgJGFsbG93dXNlcmFkbWluOwogIHZhciAkZW5hYmxlZW1haWxwdzsKICB2YXIgJGxhbmc9IiI7CiAgdmFyICR1c2VybWFuaXAgPSBmYWxzZTsKICB2YXIgJHR5cGVzID0gZmFsc2U7CgogIC8vIGNvbnN0cnVjdG9yCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICBwYXJlbnQ6Ol9fY29uc3RydWN0KCk7CiAgICAkdGhpcy0+dHlwZXMgPSBhcnJheSggJ3RleHQnID0+IDAsCgkJCSAgJ2NoZWNrYm94JyA9PiAxLAoJCQkgICdlbWFpbCcgPT4gMiwKCQkJICAndGV4dGFyZWEnID0+IDMsCgkJCSAgJ2Ryb3Bkb3duJyA9PiA0LAogICAgICAgICAgICAgICAgICAgICAgICAgICdtdWx0aXNlbGVjdCcgPT4gNSwKICAgICAgICAgICAgICAgICAgICAgICAgICAnaW1hZ2UnID0+IDYsCgkJCSAgJ3JhZGlvYnV0dG9ucycgPT4gNywKCQkJICAnZGF0ZScgPT4gOCk7CiAgICAKICAgIGdsb2JhbCAkZ0NtczsKICAgICRvYmogPSBuZXcgZmV1X3NtYXJ0eSgkdGhpcyk7CiAgICAkc21hcnR5ID0mICRnQ21zLT5HZXRTbWFydHkoKTsKICAgICRzbWFydHktPmFzc2lnbl9ieV9yZWYoJ2ZldV9zbWFydHknLCRvYmopOwogIH0KCiAgcHJpdmF0ZSBmdW5jdGlvbiBfbG9hZCgpCiAgewogICAgaWYoICR0aGlzLT51c2VybWFuaXAgPT0gTlVMTCApCiAgICB7CiAgICAgIC8vIGNoZWNrIGEgcHJlZmVyZW5jZSB0byBzZWUgd2hpY2ggdXNlciBtYW5pcHVsYXRvciBjbGFzcwogICAgICAvLyB3ZSBzaG91bGQgdXNlLiAgCiAgICAgICR1c2VybWFuaXAgPSAnRnJvbnRFbmRVc2Vycy5hcGkucGhwJzsKICAgICAgJGZuID0gY21zX2pvaW5fcGF0aChkaXJuYW1lKF9fRklMRV9fKSwkdXNlcm1hbmlwKTsKICAgICAgaWYoICFpc19yZWFkYWJsZSggJGZuICkgKSAKICAgICAgICBkaWUoIkNvdWxkIG5vdCByZWFkIHVzZXJtYW5pcHVsYXRvciBjbGFzcyBmaWxlOiAkZm4iKTsKICAgICAgcmVxdWlyZV9vbmNlKCRmbik7CiAgICAgIGlmKCAhaXNzZXQoICRtYW5pcHVsYXRvciApICkKICAgICAgICBkaWUoJ0NvdWxkIG5vdCBkZXRlcm1pbmUgbWFuaXB1bGF0b3IgY2xhc3MgbmFtZScpOwogICAgICAkdGhpcy0+dXNlcm1hbmlwID0gbmV3ICRtYW5pcHVsYXRvciggJHRoaXMgKTsKICAgICAgaWYoICFpc19vYmplY3QoICR0aGlzLT51c2VybWFuaXAgKSApCiAgICAgICAgZGllKCJFcnJvciBpbnN0YW50aWF0aW9uZyAkbWFuaXB1bGF0b3Igb2JqZWN0Iik7CiAgICB9CiAgfQoKCiAgZnVuY3Rpb24gR2VuZXJhdGVSYW5kb21QcmludGFibGVTdHJpbmcoICRsZW4gPSAxMCApCiAgewogICAgJG8xID0gbmV3IFJhbmRvbSgiMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFVWV1hZWiIpOwogICAgcmV0dXJuICRvMS0+Z2V0KCRsZW4pOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldE5hbWUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldE5hbWUoKSAJCiAgewogICAgcmV0dXJuICdGcm9udEVuZFVzZXJzJzsKICB9CgogCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0VmVyc2lvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0VmVyc2lvbigpCQogIHsKICAgIHJldHVybiAnMS4xMi4yJzsKICB9CgogCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgbGFuZ2lmeUtleXMoKQogCiAgIEdpdmVuIGFuIGFzc29jaWF0aXZlIGFycmF5LCByZXBsYWNlIHRoZSB2YWx1ZXMgd2l0aAogICB0cmFuc2xhdGVkIG9uZXMuCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gbGFuZ2lmeUtleXMoICRhcnIgKQogIHsKICAgICRvdXQgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJGFyciBhcyAkaz0+JHYgKQogICAgewogICAgICAkayA9ICR0aGlzLT5MYW5nKCRrKTsKICAgICAgJG91dFsgJGsgXSA9ICR2OwogICAgfQogICAgcmV0dXJuICRvdXQ7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgSXNQbHVnaW5Nb2R1bGUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCkgewogICAgcmV0dXJuIHRydWU7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgQWxsb3dBdXRvSW5zdGFsbCgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gQWxsb3dBdXRvSW5zdGFsbCgpIHsKICAgIHJldHVybiBGQUxTRTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBBbGxvd0F1dG9VcGdyYWRlKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBBbGxvd0F1dG9VcGdyYWRlKCkgewogICAgcmV0dXJuIEZBTFNFOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIE1pbmltdW1DTVNWZXJzaW9uKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpCiAgewogICAgcmV0dXJuICIxLjguMSI7CiAgfQogIAogCiAKIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldEFkbWluRGVzY3JpcHRpb24oKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24gKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcgKCdtb2RkZXNjcmlwdGlvbicpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldEFkbWluU2VjdGlvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uICgpCiAgewogICAgcmV0dXJuICd1c2Vyc2dyb3Vwcyc7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RGVwZW5kZW5jaWVzKCkKICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQogIHsKICAgIHJldHVybiBhcnJheSggJ0NNU01haWxlcicgPT4gJzEuNzMuOScsCgkJICAnQ0dFeHRlbnNpb25zJyA9PiAnMS4xOS40JyApOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIFNldFBhcmFtZXRlcnMoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIFNldFBhcmFtZXRlcnMoKQogIHsKICAgICR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKICAgICR0aGlzLT5SZWdpc3Rlck1vZHVsZVBsdWdpbigpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NvZGUnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZm9ybScsQ0xFQU5fU1RSSU5HKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm50bycsQ0xFQU5fU1RSSU5HKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdvbmx5X2dyb3VwcycsQ0xFQU5fU1RSSU5HKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdub2NhcHRjaGEnLENMRUFOX0lOVCk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfdXNlcm5hbWUnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcGFzc3dvcmQnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZXJyb3InLENMRUFOX0lOVCk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbWVzc2FnZScsQ0xFQU5fU1RSSU5HKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5fZ3JvdXAnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfY2FwdGNoYScsQ0xFQU5fU1RSSU5HKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdzdWJtaXQnLENMRUFOX1NUUklORyk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2FuY2VsJyxDTEVBTl9TVFJJTkcpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3JldHVybnRvJyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X3VpZCcsQ0xFQU5fSU5UKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jb2RlJyxDTEVBTl9TVFJJTkcpOwogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3NraXBmb3JtZGlzcGxheScsQ0xFQU5fSU5UKTsKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCd1aWQnLENMRUFOX0lOVCk7CiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2hlY2tvbmx5JyxDTEVBTl9JTlQpOwoKICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm5sYXN0JyxDTEVBTl9JTlQpOwogICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlcigncmV0dXJubGFzdCcsJycsJHRoaXMtPkxhbmcoJ2hlbHBfcmV0dXJubGFzdCcpKTsKCiAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbm9pbmxpbmUnLENMRUFOX0lOVCk7CiAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCdub2lubGluZScsJycsJHRoaXMtPkxhbmcoJ2hlbHBfbm9pbmxpbmUnKSk7CgogICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoQ0xFQU5fUkVHRVhQLicvZmV1Xy4qLycsQ0xFQU5fU1RSSU5HKTsKCiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvdmVyaWZ5XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKVwvKD9QPHVpZD5bMC05XSspXC8oP1A8Y29kZT4uKj8pJC8nLAoJCQkgYXJyYXkoJ2FjdGlvbic9Pid2ZXJpZnljb2RlJykpOwoKICAgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2ZGXWV1XC9yZXNldFwvKD9QPHVpZD5bMC05XSspJC8nLAoJCQkgYXJyYXkoJ2FjdGlvbic9PidyZXNldF9zZXNzaW9uJywKCQkJICAgICAgICdzaG93dGVtcGxhdGUnPT4nZmFsc2UnLAoJCQkgICAgICAgJ2NoZWNrb25seSc9PicxJykpOwoKICAgIC8vbnVuby1kZXYtUHJldHR5IFVybCdzCiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvZWRpdFwvKD9QPHJldHVybmlkPlswLTldKykkLycsCgkJCSBhcnJheSgnYWN0aW9uJz0+J2NoYW5nZXNldHRpbmdzJykpOwogICAgCiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvbG9nb3V0XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywKCQkJIGFycmF5KCdhY3Rpb24nPT4nbG9nb3V0JykpOwogICAgCiAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvZm9yZ290XC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJywKCQkJIGFycmF5KCdhY3Rpb24nPT4nZm9yZ290cHcnKSk7CiAgICAKICAgICR0aGlzLT5SZWdpc3RlclJvdXRlKCcvW2ZGXWV1XC9sb3N0dXNlcm5hbWVcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLAoJCQkgYXJyYXkoJ2FjdGlvbic9Pidsb3N0dXNlcm5hbWUnKSk7CiAgICAKICAgIC8vZW5kCiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgX0V4cG9ydExvZ2dlZEluVXNlclZhcmlhYmxlcygpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gX0V4cG9ydExvZ2dlZEluVXNlclZhcmlhYmxlcygkaWQsJiRwYXJhbXMsJHJldHVybmlkKSAKICB7CiAgICAvLyByZXBsYWNlIHskdXNlcm5hbWV9IHdpdGggdGhlIHVzZXIgbmFtZQogICAgJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICBpZiggISR1aWQgKSByZXR1cm47CiAgICAkdXNlcm5hbWUgPSAkdGhpcy0+TG9nZ2VkSW5OYW1lKCk7CgogICAgLy8gcmVwbGFjZSB7JGdyb3VwbmFtZX0gd2l0aCB0aGUgZmlyc3QgZ3JvdXBuYW1lIHdlIGNhbiBmaW5kIHRoYXQgbWF0Y2hlcwogICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwogICAgJGdyb3VwbmFtZSA9ICR0aGlzLT5HZXRHcm91cE5hbWUoICRncm91cHNbMF1bJ2dyb3VwaWQnXSApOwoKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlcmlkJywgJHVpZCk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywgJHVzZXJuYW1lICk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xpbmtfbG9nb3V0JywKCQkJICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsImxvZ291dCIsJHJldHVybmlkLAoJCQkJCSAgICAkdGhpcy0+TGFuZygnbG9nb3V0JykpKTsKICAvL251bm8tZGV2LVByZXR0eSBVcmwncwoJICRwcmV0dHl1cmxfbG9nb3V0ID0gJ2ZldS9sb2dvdXQvJy4kcmV0dXJuaWQ7CgkgJGxvZ291dF9mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdsb2dvdXQnLCAkcmV0dXJuaWQsICAnJywKCQkJCSAgICBhcnJheSgpLCAnJywgdHJ1ZSwgZmFsc2UsICcnLCBmYWxzZSwgJHByZXR0eXVybF9sb2dvdXQpOwoJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9sb2dvdXQnLCAkbG9nb3V0X2ZldSk7CgkvL2VuZAoKICAgICRwYWdlID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnKSk7CiAgICBpZiggJHBhZ2UgKQogICAgewogICAgICAkcGFnZWlkID0gQ29udGVudE1hbmFnZXI6OkdldFBhZ2VJREZyb21BbGlhcyggJHBhZ2UgKTsKICAgICAgaWYoICRwYWdlaWQgPT0gZmFsc2UgKQogICAgICB7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdsaW5rX2NoYW5nZXNldHRpbmdzJywnPCEtLSBFcnJvciBjb3VsZCBub3QgZGV0ZXJtaW5lIHBhZ2UgZnJvbSBhbGlhcy9pZCAtLT4nKTsKICAgICAgfQogICAgICBlbHNlIAogICAgICB7CiAgICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdsaW5rX2NoYW5nZXNldHRpbmdzJywKCQkJICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcGFnZWlkLAoJCQkJCQkkdGhpcy0+TGFuZygncHJvbXB0X2NoYW5nZXNldHRpbmdzJyksCgkJCQkJCWFycmF5KCdmb3JtJz0+J2NoYW5nZXNldHRpbmdzJykpKTsKCS8vbnVuby1kZXYtUHJldHR5IFVybCdzCgkkcHJldHR5dXJsX2NoYW5nZXNldHRpbmdzID0gJ2ZldS9lZGl0LycuJHBhZ2VpZDsKCSRjaGFuZ2VzZXR0aW5nc19mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHBhZ2VpZCwgICcnLAoJCQkJICAgIGFycmF5KCdmb3JtJz0+J2NoYW5nZXNldHRpbmdzJyksICcnLCAKCQkJCQl0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsX2NoYW5nZXNldHRpbmdzKTsKCQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmxfY2hhbmdlc2V0dGluZ3MnLCRjaGFuZ2VzZXR0aW5nc19mZXUpOwoJLy9lbmQgCiAgICAgIH0KICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbGlua19jaGFuZ2VzZXR0aW5ncycsCgkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsCgkJCQkJICAgICR0aGlzLT5MYW5nKCdwcm9tcHRfY2hhbmdlc2V0dGluZ3MnKSwKCQkJCQkgICAgYXJyYXkoJ2Zvcm0nPT4nY2hhbmdlc2V0dGluZ3MnKSkpOwogICAgICAvL251bm8tZGV2LVByZXR0eSBVcmwncwoJJHByZXR0eXVybF9jaGFuZ2VzZXR0aW5ncyA9ICdmZXUvZWRpdC8nLiRyZXR1cm5pZDsKCSRjaGFuZ2VzZXR0aW5nc19mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAgJycsCgkJCQkgICAgYXJyYXkoJ2Zvcm0nPT4nY2hhbmdlc2V0dGluZ3MnKSwgJycsIAoJCQkJCXRydWUsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmxfY2hhbmdlc2V0dGluZ3MpOwoJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9jaGFuZ2VzZXR0aW5ncycsJGNoYW5nZXNldHRpbmdzX2ZldSk7CgkvL2VuZAogICAgfQogICAgJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCAkdGhpcy0+TG9nZ2VkSW5JZCgpICk7CiAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJHAgKQogICAgewogICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJHBbJ3RpdGxlJ10sJHBbJ2RhdGEnXSk7CiAgICB9CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgR2V0RXZlbnREZXNjcmlwdGlvbigpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gR2V0RXZlbnREZXNjcmlwdGlvbiAoICRldmVudG5hbWUgKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygnZXZlbnRfaW5mb18nLiRldmVudG5hbWUgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRFdmVudEhlbHAoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEV2ZW50SGVscCAoICRldmVudG5hbWUgKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygnZXZlbnRfaGVscF8nLiRldmVudG5hbWUgKTsKICB9CgoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBHZXRGcmllbmRseU5hbWUoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSAoKQogIHsKICAgIHJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7CiAgfQoKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgSGFzQWRtaW4oKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEhhc0FkbWluICgpCiAgewogICAgcmV0dXJuIHRydWU7CiAgfQoKCiBmdW5jdGlvbiBHZXRQYWdlSWQoJGFsaWFzKSB7CQkKICAgIGlmICgkYWxpYXM9PSIiKSByZXR1cm4gZmFsc2U7CiAgICAkZGIgPSYgJHRoaXMtPkdldERiKCk7CiAgICAkcXVlcnkgPSAiU0VMRUNUIGNvbnRlbnRfaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4iY29udGVudCBXSEVSRSBjb250ZW50X2FsaWFzID0gJyIuc3RyX3JlcGxhY2UoIiciLCdfJywkYWxpYXMpLiInIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgaWYgKCRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgPiAwKQl7CiAgICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgIHJldHVybiAkcm93Wydjb250ZW50X2lkJ107CiAgICB9CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKCiBmdW5jdGlvbiBfSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAkcGVybSA9ICcnICkKIHsKICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykKICAgICB7CiAgICAgICAkcDEgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBVc2VycycgKTsKICAgICAgICRwMiA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IFVzZXJzJyApOwogICAgICAgJHAzID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBSZW1vdmUgVXNlcnMnICk7CiAgICAgICAkcDQgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBHcm91cHMnICk7CiAgICAgICAkcDUgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIE1vZGlmeSBHcm91cHMnICk7CiAgICAgICAkcDYgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIE1vZGlmeSBHcm91cCBBc3NpZ25tZW50cycgKTsKICAgICAgICRwNyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgUmVtb3ZlIEdyb3VwcycgKTsKICAgICAgICRwOCA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnICk7CiAgICAgICAkcDkgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIE1vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycgKTsKICAgICAgICRwMTAgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIE1vZGlmeSBUZW1wbGF0ZXMnICk7CiAgICAgfQogICBlbHNlCiAgICAgewogICAgICAgJHAxID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0FkZCBVc2VycycgKTsKICAgICAgICRwMiA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgVXNlcnMnICk7CiAgICAgICAkcDMgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnUmVtb3ZlIFVzZXJzJyApOwogICAgICAgJHA0ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0FkZCBHcm91cHMnICk7CiAgICAgICAkcDUgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTW9kaWZ5IEdyb3VwcycgKTsKICAgICAgICRwNiA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnICk7CiAgICAgICAkcDcgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnUmVtb3ZlIEdyb3VwcycgKTsKICAgICAgICRwOCA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycgKTsKICAgICAgICRwOSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnICk7CiAgICAgICAkcDEwID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBUZW1wbGF0ZXMnICk7CiAgICAgfQogICAKICAgJHJldCA9IDA7CiAgIHN3aXRjaCggJHBlcm0gKQogICAgIHsKICAgICBjYXNlICcnOiAgLy8gYW55IHBlcm1pc3Npb24KICAgICAgICRyZXQgPSAoJHAxIHx8ICRwMiB8fCAkcDMgfHwgJHA0IHx8ICRwNSB8fCAkcDYgfHwgJHA3IHx8ICRwOCB8fCAkcDkgfHwgJHAxMCApOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICdhZGRncm91cCc6CiAgICAgICAkcmV0ID0gKCRwNCk7CiAgICAgICBicmVhazsKICAgICAgIAogICAgIGNhc2UgJ2FkZHVzZXInOgogICAgICAgJHJldCA9ICgkcDEpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICdhZGRwcm9wJzoKICAgICBjYXNlICdhZGRwcm9wMic6CiAgICAgY2FzZSAnZWRpdHByb3AnOgogICAgIGNhc2UgJ2RlbGV0ZXByb3AnOgogICAgIGNhc2UgJ3Byb3BlcnRpZXMnOgogICAgICAgJHJldCA9ICgkcDkpOwogICAgICAgYnJlYWs7CiAgICAgCiAgICAgY2FzZSAnbGlzdHVzZXJzJzoKICAgICAgICRyZXQgPSAoJHAyIHx8ICRwMyk7CiAgICAgICBicmVhazsKICAgICAgIAogICAgIGNhc2UgJ2xpc3Rncm91cHMnOgogICAgICAgJHJldCA9ICgkcDUgfHwgJHA2KTsKICAgICAgIGJyZWFrOwogICAgICAgCiAgICAgY2FzZSAnZWRpdGdyb3Vwcyc6CiAgICAgICAkcmV0ID0gKCRwNSB8fCAkcDYpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICdlZGl0dXNlcnMnOgogICAgICAgJHJldCA9ICgkcDIpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICdyZW1vdmVncm91cHMnOgogICAgICAgJHJldCA9ICgkcDcpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICdyZW1vdmV1c2Vycyc6CiAgICAgICAkcmV0ID0gKCRwMyk7CiAgICAgICBicmVhazsKCiAgICAgY2FzZSAnZWRpdHByZWZzJzoKICAgICBjYXNlICdzaXRlcHJlZnMnOgogICAgICAgJHJldCA9ICgkcDgpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICd1c2Vyc25ncm91cHMnOgogICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcpOwogICAgICAgYnJlYWs7CiAgICAgICAKICAgICBjYXNlICd0ZW1wbGF0ZXMnOgogICAgICAgJHJldCA9ICgkcDEwKTsKICAgICAgIGJyZWFrOwogICAgICAgCiAgICAgZGVmYXVsdDoKICAgICAgICRyZXQgPSAwOwogICAgICAgYnJlYWs7CiAgICAgfQoKICAgcmV0dXJuICRyZXQ7CiB9CgoKICBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKQkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsbWVzc2FnZScpOwogIH0KCgogIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCiAgewogICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykKICAgICAgewoJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpIHx8CgkgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVGVtcGxhdGVzJykgfHwKCSAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBHcm91cHMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEdyb3VwcycpIHx8CgkgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBSZW1vdmUgR3JvdXBzJykgfHwKCSAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBVc2VycycpIHx8CgkgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVXNlcnMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJykgfHwKCSAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCXJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpIHx8CgkgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBUZW1wbGF0ZXMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZGQgR3JvdXBzJykgfHwKCSAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IEdyb3VwcycpIHx8CgkgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1JlbW92ZSBHcm91cHMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdBZGQgVXNlcnMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVXNlcnMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdSZW1vdmUgVXNlcnMnKSB8fAoJICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnKTsKICAgICAgfQogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIF9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZSkKICAgTk9UIFBBUlQgT0YgVEhFIE1PRFVMRSBBUEkKCiAgIFRoaXMgaXMgYW4gZXhhbXBsZSBvZiBhIHNpbXBsZSBtZXRob2QgdG8gZGlzcGxheQogICBlcnJvciBpbmZvcm1hdGlvbiBvbiB0aGUgYWRtaW4gc2lkZS4KICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KICBmdW5jdGlvbiBfRGlzcGxheUVycm9yUGFnZSgkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQsICRtZXNzYWdlPScnKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZXJyb3InLCAkdGhpcy0+TGFuZygnZXJyb3InKSk7CiAgICBpZiAoJG1lc3NhZ2UgIT0gJycpCiAgICAgIHsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRtZXNzYWdlKTsKICAgICAgfQogICAgICAKICAgIC8vIERpc3BsYXkgdGhlIHBvcHVsYXRlZCB0ZW1wbGF0ZQogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsKICB9CgoKICBmdW5jdGlvbiBfRG9TZXRDaGFuZ2VTZXR0aW5nc1RlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdHMnXSApICkKICAgICAgewoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19jaGFuZ2VzZXR0aW5ncy50cGwnOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2NoYW5nZXNldHRpbmdzZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfY2hhbmdlc2V0dGluZ3Nmb3JtJywgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10pOwogICAgICB9CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZScgKTsKICB9CgoKICBmdW5jdGlvbiBfRG9TZXRGb3Jnb3RQV1RlbXBsYXRlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZGVmYXVsdHMnXSApICkKICAgICAgewoJCgkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMS50cGwnOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKCgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmRlbWFpbGZvcm0nLCAkdGhpcy0+ZGZsdF9mb3Jnb3RwYXNzd29yZHRlbXBsYXRlMik7CgoJJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19mb3Jnb3RwYXNzd29yZDMudHBsJzsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nLGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikpOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nLCAkcGFyYW1zWyd0ZW1wbGF0ZWNvbnRlbnQxJ10pOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZW1haWxmb3JtJywgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50MiddKTs7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmR2ZXJpZnlmb3JtJywgJHBhcmFtc1sndGVtcGxhdGVjb250ZW50MyddKTs7CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJyApOwogIH0KCgogIGZ1bmN0aW9uIF9Eb1NldExvZ2luVGVtcGxhdGUoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydkZWZhdWx0cyddICkgKQogICAgICB7CgkkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2xvZ2luZm9ybS50cGwnOwoJJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2xvZ2luZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9naW5mb3JtJywgJHBhcmFtc1sndGVtcGxhdGVsb2dpbmZvcm0nXSk7CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ2xvZ2ludGVtcGxhdGUnICk7CiAgfQoKICAKICBmdW5jdGlvbiBfRG9TZXRMb2dvdXRUZW1wbGF0ZSggJGlkLCAmJHBhcmFtcywgJHJldHVybmlkICkKICB7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2RlZmF1bHRzJ10gKSApCiAgICAgIHsKCSR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19sb2dvdXRmb3JtJywgJHRoaXMtPmRmbHRfbG9nb3V0Zm9ybXRlbXBsYXRlKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9nb3V0Zm9ybScsICRwYXJhbXNbJ3RlbXBsYXRlbG9nb3V0Zm9ybSddKTsKICAgICAgfQogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnbG9nb3V0dGVtcGxhdGUnLCAkcGFyYW1zKTsKICB9CiAgCgogIGZ1bmN0aW9uIF9Eb1VzZXJBY3Rpb24oICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgJGZvcm0gPSAnbG9naW4nOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2Zvcm0nXSkgKSAkZm9ybSA9ICRwYXJhbXNbJ2Zvcm0nXTsKCiAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ2Zvcm0nXSkpCiAgICAgIHsKCSR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwoJaWYoICR1aWQgPD0gMCApCgkgIHsKCSAgICAkZm9ybSA9ICdsb2dpbic7CgkgIH0KCWVsc2UgCgkgIHsKCSAgICAkZm9ybSA9ICdsb2dvdXQnOwoJICB9CiAgICAgIH0KCiAgICAkYXV0aF9jb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgIHN3aXRjaCggJGZvcm0gKQogICAgICB7CiAgICAgIGNhc2UgJ2xvZ2luJzoKCWluY2x1ZGUgZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi51c2VyX2xvZ2luZm9ybS5waHAnOwoJYnJlYWs7CiAgICAgIGNhc2UgJ2xvZ291dCc6CglpbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24udXNlcl9sb2dvdXRmb3JtLnBocCc7CglicmVhazsKICAgICAgY2FzZSAnbG9zdHVzZXJuYW1lJzoKCWluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5kZWZhdWx0X2xvc3R1c2VybmFtZWZvcm0ucGhwJyk7CglicmVhazsKICAgICAgY2FzZSAnZm9yZ290cHcnOgoJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLnVzZXJfZm9yZ290cGFzc3dvcmQucGhwJyk7CglicmVhazsKICAgICAgY2FzZSAnY2hhbmdlc2V0dGluZ3MnOgoJaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLnVzZXJfY2hhbmdlc2V0dGluZ3MucGhwJyk7CglicmVhazsKICAgICAgY2FzZSAnc2lsZW50JzoKCSR0aGlzLT5fRXhwb3J0TG9nZ2VkSW5Vc2VyVmFyaWFibGVzKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJYnJlYWs7CiAgICAgIH0KICB9CgoKICBmdW5jdGlvbiBfRGlzcGxheUFkbWluVXNlclBhZ2UoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgZ2xvYmFsICRnQ21zOwoKICAgIC8vIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQogICAgJGhpZGRlbiA9IGFycmF5KCk7CiAgICBpZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKQogICAgICB7CgkkaGlkZGVuWydyZXR1cm50byddID0gJHBhcmFtc1sncmV0dXJudG8nXTsKICAgICAgfQogICAgJGVkaXRpbmcgPSAwOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydhY3Rpb24nXSApICYmIAoJKCRwYXJhbXNbJ2FjdGlvbiddID09ICdlZGl0dXNlcid8fCAkcGFyYW1zWydhY3Rpb24nXSA9PSAnZG9fZWRpdHVzZXIxJyApICkKICAgICAgewoJJGVkaXRpbmcgPSAxOwoJJGhpZGRlblsndXNlcl9pZCddID0gJHBhcmFtc1sndXNlcl9pZCddOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZScsICR0aGlzLT5MYW5nKCdlZGl0dXNlcicpKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkJCSAgICAgICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwKCQkJCQkJCSAgICAgICdkb19lZGl0dXNlcjEnLAoJCQkJCQkJICAgICAgJHJldHVybmlkKSk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZScsICR0aGlzLT5MYW5nKCdhZGR1c2VyJykpOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCQkJICAgICAgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCAoJGlkLAoJCQkJCQkJICAgICAgJ2RvX2FkZHVzZXIxJywKCQkJCQkJCSAgICAgICRyZXR1cm5pZCkpOwogICAgICB9CgogICAgaWYoICFlbXB0eSgkaGlkZGVuKSApCiAgICAgIHsKCSR0eHQgPSAnJzsKCWZvcmVhY2goICRoaWRkZW4gYXMgJGtleSA9PiAkdmFsdWUgKQoJICB7CgkgICAgJHR4dCAuPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCRrZXksJHZhbHVlKTsKCSAgfQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCR0eHQpOwogICAgICB9CgogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2Vycm9yJ10pICkKICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsJHBhcmFtc1snZXJyb3InXSk7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snbWVzc2FnZSddKSApCiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsJHBhcmFtc1snbWVzc2FnZSddKTsKCiAgICAkdXNlcm5hbWUgPSAnJzsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlX3JhbmRvbXVzZXJuYW1lJywwKSA9PSAxICkKICAgICAgewoJJHVzZXJuYW1lID0gJHRoaXMtPkdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoKTsKICAgICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pICkKICAgICAgewoJJHVzZXJuYW1lID0gdHJpbSgkcGFyYW1zWydpbnB1dF91c2VybmFtZSddKTsKICAgICAgfQogICAgJHBhc3N3b3JkID0gJyc7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSkgKQogICAgICAkcGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pOwogICAgJHJlcGVhdHBhc3N3b3JkID0gJyc7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSkgKQogICAgICAkcmVwZWF0cGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3JlcGVhdHBhc3N3b3JkJ10pOwogICAgJGV4cGlyZXMgPSAnJzsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9leHBpcmVzJ10pICkKICAgICAgJGV4cGlyZXMgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2V4cGlyZXMnXSk7CiAgICAKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kICgpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywKCQkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLAoJCQkJCQkJICAgICR0aGlzLT5MYW5nKCduZXh0JykpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywKCQkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLAoJCQkJCQkJICAgICR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwogICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpKQogICAgICB7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF91c2VybmFtZScsCgkJCSAgICR0aGlzLT5MYW5nICgncHJvbXB0X2VtYWlsJykpOwogICAgICB9CiAgICAgZWxzZQogICAgICB7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF91c2VybmFtZScsCgkJCSAgICR0aGlzLT5MYW5nICgndXNlcm5hbWUnKSk7CiAgICAgIH0KICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2lucHV0X3VzZXJuYW1lJywKCQkJICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfdXNlcm5hbWUnLAoJCQkJCQkgICAkdXNlcm5hbWUsIAoJCQkJCQkgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnKSwgCgkJCQkJCSAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSkpOwoKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF9wYXNzd29yZCcsCgkJCSAgICR0aGlzLT5MYW5nICgncGFzc3dvcmQnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9wYXNzd29yZCcsCgkJCSAgICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkICgkaWQsICdpbnB1dF9wYXNzd29yZCcsCgkJCQkJCSAgICAgICAkcGFzc3dvcmQsIAoJCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCgkJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJykpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ3Byb21wdF9yZXBlYXRwYXNzd29yZCcsCgkJCSAgICR0aGlzLT5MYW5nICgncmVwZWF0cGFzc3dvcmQnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24gKCdpbnB1dF9yZXBlYXRwYXNzd29yZCcsCgkJCSAgICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkICgkaWQsICdpbnB1dF9yZXBlYXRwYXNzd29yZCcsCgkJCQkJCSAgICAgICAkcmVwZWF0cGFzc3dvcmQsCgkJCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSwKCQkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSkpOwoKICAgIGlmKCAkZWRpdGluZyA9PSAxICkKICAgICAgewoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnaW5mb19wYXNzd29yZCcsCgkJCSAgICAgICAkdGhpcy0+TGFuZyAoJ2luZm9fYWRtaW5fcGFzc3dvcmQnKSk7CgkKCSR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2luZm9fcmVwZWF0cGFzc3dvcmQnLAoJCQkgICAgICAgJHRoaXMtPkxhbmcgKCdpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJykpOwogICAgICB9CgogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2V4cGlyZXMnLAoJCQkgICAkdGhpcy0+TGFuZygnZXhwaXJlcycpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbiAoJ2V4cGlyZXNfZGF0ZXByZWZpeCcsICRpZC4nZXhwaXJlc2RhdGVfJyk7CiAgICAkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLDUyMCk7CiAgICAkZXhwaXJlc2RhdGUgPSBzdHJ0b3RpbWUoIit7JHRtcH0gbW9udGhzIiwgdGltZSgpKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXSApICkKICAgICAgewoJJGV4cGlyZXNkYXRlID0gJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXTsKICAgICAgfQogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduICgnZXhwaXJlc2RhdGUnLCAkZXhwaXJlc2RhdGUgKTsKICAgIAoKICAgIC8vIERpc3BsYXkgdGhpcyB1c2VyJ3MgcHJvcGVydGllcyBhbmQgYWxsb3cgdXMgdG8gZWRpdCB0aGVtCgogICAgLy8gZGlzcGxheSBhbmQgZWRpdCBncm91cHMKICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdGdyb3VwcycpICkKICAgICAgewoJaWYoIGlzc2V0KCRwYXJhbXNbJ21lbWJlcm9mJ10gKSApCgkgIHsKCSAgICAkdG1wID0gKGludCkkcGFyYW1zWydtZW1iZXJvZiddOwoJICAgICRwYXJhbXNbJ21lbWJlcm9mXycuJHRtcF0gPSAxOwoJICB9CgoJLy8gbm93IGRpc3BsYXkgYSBsaXN0IG9mIGdyb3VwcyB0aGF0IHRoaXMgdXNlciBtYXkgb3B0aW9uYWxseSBiZSBpbgoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnaWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2lkJykgKTsKCSR0aGlzLT5zbWFydHktPmFzc2lnbiggJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ25hbWUnKSApOwoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCAnZGVzY3RleHQnLCAkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSApOwoJCgkkZ3JvdXBzID0gJHRoaXMtPkdldEdyb3VwTGlzdEZ1bGwoKTsKCSRyb3dhcnJheSA9IGFycmF5KCk7Cgkkcm93Y2xhc3MgPSAncm93MSc7Cglmb3JlYWNoKCAkZ3JvdXBzIGFzICRncm91cCApCgl7CgkgICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKCSAgJG9uZXJvdy0+aWQgPSAkZ3JvdXBbJ2lkJ107CgkgICRvbmVyb3ctPm5hbWUgPSAkZ3JvdXBbJ2dyb3VwbmFtZSddOwoJICAkb25lcm93LT5kZXNjID0gJGdyb3VwWydncm91cGRlc2MnXTsKCSAgJG9uZXJvdy0+bWVtYmVyID0gJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCdtZW1iZXJvZl8nLiRncm91cFsnaWQnXSwKCQkJCQkJICAkZ3JvdXBbJ2lkJ10sCgkJCQkJCSAgKGlzc2V0KCRwYXJhbXNbJ21lbWJlcm9mXycuJGdyb3VwWydpZCddXSkgPyAKCQkJCQkJICAgJHBhcmFtc1snbWVtYmVyb2ZfJy4kZ3JvdXBbJ2lkJ11dIDogLTEpKTsKCSAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgkgIAoJICBhcnJheV9wdXNoICgkcm93YXJyYXksICRvbmVyb3cpOwoJICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7Cgl9CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1jb3VudCcsY291bnQoJHJvd2FycmF5KSk7CgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2l0ZW1zJywkcm93YXJyYXkpOwogICAgICB9CgogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9wYWRkJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCAkaWQsICdwcm9wYWRkJywKCQkJCQkJCSAgICAgICAkdGhpcy0+TGFuZygnYWRkJykpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZ3JvdXBzdGl0bGUnLCAkdGhpcy0+TGFuZygnZ3JvdXBzJykpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9wZXJ0aWVzdGl0bGUnLCAkdGhpcy0+TGFuZygncHJvcGVydGllcycpKTsKCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb3BzJywKCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAncHJvcHMnLCAkdGhpcy0+TGFuZygncHJvcGVydGllcycpLiIuLi4iKSk7CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkZHVzZXIxLnRwbCcpOwogIH0KCgogIGZ1bmN0aW9uIERvQWN0aW9uKCRhY3Rpb24sICRpZCwgJHBhcmFtcywgJHJldHVybmlkID0gLTEpIAogIHsKICAgIGdsb2JhbCAkZ0NtczsKICAgICRzbWFydHkgPSYgJGdDbXMtPkdldFNtYXJ0eSgpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdmZXVhY3Rpb25pZCcsJGlkKTsKICAgICRzbWFydHktPmFzc2lnbignZmV1YWN0aW9ucGFyYW1zJywkcGFyYW1zKTsKICAgICRzbWFydHktPmFzc2lnbignbW9kJywkdGhpcyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJHRoaXMtPkdldE5hbWUoKSwkdGhpcyk7CiAgICAKICAgIHN3aXRjaCAoJGFjdGlvbikKICAgICAgewogICAgICBjYXNlICdjaGFuZ2VzZXR0aW5nc191cmwnOgoJYnJlYWs7CgogICAgICBjYXNlICdjaGFuZ2VzZXR0aW5ncyc6CgkkcGFyYW1zWydmb3JtJ10gPSAkYWN0aW9uOwoJJHRoaXMtPl9Eb1VzZXJBY3Rpb24oICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CglicmVhazsKCiAgICAgIGNhc2UgJ2xvc3R1c2VybmFtZSc6CiAgICAgIGNhc2UgJ2ZvcmdvdHB3JzoKCSRwYXJhbXNbJ2Zvcm0nXSA9ICRhY3Rpb247CQoJJHRoaXMtPl9Eb1VzZXJBY3Rpb24oICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CglicmVhazsKCiAgICAgIGNhc2UgImRlZmF1bHQiOiAKICAgICAgICB7CiAgICAgICR0aGlzLT5fRG9Vc2VyQWN0aW9uKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICBicmVhazsKICAgICAgICB9CgogICAgICBjYXNlICdkb19zZXRjaGFuZ2VzZXR0aW5nc3RlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAndGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X0RvU2V0Q2hhbmdlU2V0dGluZ3NUZW1wbGF0ZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgICB9CgkgIGVsc2UKCSAgICB7CgkgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CgogICAgICBjYXNlICdkb19zZXRmb3Jnb3Rwd3RlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAndGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X0RvU2V0Rm9yZ290UFdUZW1wbGF0ZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgICB9CgkgIGVsc2UKCSAgICB7CgkgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CgogICAgICBjYXNlICdkb19zZXRsb2dpbnRlbXBsYXRlJzoKCXsKCSAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAndGVtcGxhdGVzJyApICkKCSAgICB7CgkgICAgICAkdGhpcy0+X0RvU2V0TG9naW5UZW1wbGF0ZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgKTsKCSAgICB9CgkgIGVsc2UKCSAgICB7CgkgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkgICAgICAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJICAgIH0KCSAgYnJlYWs7Cgl9CgogICAgICBjYXNlICdkb19zZXRsb2dvdXR0ZW1wbGF0ZSc6Cgl7CgkgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3RlbXBsYXRlcycgKSApCgkgICAgewoJICAgICAgJHRoaXMtPl9Eb1NldExvZ291dFRlbXBsYXRlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCApOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwKCQkJCSAgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CgkgICAgfQoJICBicmVhazsKCX0KCgoKICAgICAgY2FzZSAnZWRpdHVzZXInOgoJewoJICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICdlZGl0dXNlcnMnICkgKQoJICAgIHsKCSAgICAgICR0aGlzLT5fRGlzcGxheUFkbWluRWRpdFVzZXJTdGVwMVBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CgkgICAgfQoJICBlbHNlCgkgICAgewoJICAgICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAgICAgICR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CgkgICAgfQoJICBicmVhazsKCX0KCiAgICAgIGNhc2UgJ2FkbWluX2J1bGthY3Rpb25zJzoKICAgICAgY2FzZSAnYWRtaW5faW1wb3J0Z3JvdXAnOgogICAgICBjYXNlICdhZG1pbl9leHBvcnRncm91cCc6CiAgICAgIGNhc2UgJ2FkbWluX2xvZ291dCc6CiAgICAgIGNhc2UgJ2FkbWluX3NldHZpZXd1c2VyX3RlbXBsYXRlJzoKICAgICAgY2FzZSAnYWRtaW5fc2V0bG9zdHVuX3RlbXBsYXRlJzoKICAgICAgY2FzZSAnYWRkZ3JvdXAnOgogICAgICBjYXNlICdhZGR1c2VyJzoKICAgICAgY2FzZSAnYWRkcHJvcCc6CiAgICAgIGNhc2UgJ2RlZmF1bHRhZG1pbic6IAogICAgICBjYXNlICdkb19kZWxldGVwcm9wJzoKICAgICAgY2FzZSAnZG9fZGVsZXRlZ3JvdXAnOgogICAgICBjYXNlICdkb19sb2dpbic6CiAgICAgIGNhc2UgJ2RvX2FkZHVzZXIxJzoKICAgICAgY2FzZSAnZG9fYWRkdXNlcjMnOgogICAgICBjYXNlICdkb19kZWxldGV1c2VyJzoKICAgICAgY2FzZSAnZG9fYWRkZ3JvdXAnOgogICAgICBjYXNlICdkb19lZGl0dXNlcjMnOgogICAgICBjYXNlICdkb191c2VyY2hhbmdlc2V0dGluZ3MnOgogICAgICBjYXNlICdkb19mb3Jnb3Rwdyc6CiAgICAgIGNhc2UgJ2RvX3NldHByZWZzJzoKICAgICAgY2FzZSAnZG9fZWRpdHVzZXIxJzoKICAgICAgY2FzZSAnZG9fYWRtaW50YXNrcyc6CiAgICAgIGNhc2UgJ2RvX2xvc3R1c2VybmFtZSc6CiAgICAgIGNhc2UgJ2RvX3ZlcmlmeWNvZGUnOgogICAgICBjYXNlICdsb2dvdXQnOgogICAgICBjYXNlICd1c2VyaGlzdG9yeSc6CiAgICAgIGNhc2UgJ3ZlcmlmeWNvZGUnOgogICAgICBjYXNlICd2aWV3dXNlcic6CiAgICAgIGNhc2UgJ2RvX2VkaXR1c2VyMic6CiAgICAgIGNhc2UgJ2RvX2FkZHVzZXIyJzoKICAgICAgZGVmYXVsdDoKCXBhcmVudDo6RG9BY3Rpb24oJGFjdGlvbiwkaWQsJHBhcmFtcywkcmV0dXJuaWQpOwoJYnJlYWs7CiAgICAgIH0KICB9CgoKICBmdW5jdGlvbiBfRGlzcGxheUFkbWluRWRpdFVzZXJTdGVwMVBhZ2UoICRpZCwgJiRwYXJhbXMsICRyZXR1cm5pZCApCiAgewogICAgaWYoICFpc3NldCggJHBhcmFtc1sndXNlcl9pZCddICkgKQogICAgICB7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwoJcmV0dXJuOwogICAgICB9CgogICAgLy8gbm93IGdldCB0aGUgdXNlciBpbmZvCiAgICAkdXNlciA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHBhcmFtc1sndXNlcl9pZCddICk7CiAgICBpZiggJHVzZXJbMF0gPT0gZmFsc2UgKQogICAgICB7CgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdXNlclsxXSApOwoJcmV0dXJuOwogICAgICB9CiAgICAkdXNlciA9ICR1c2VyWzFdOwoKICAgIC8vIGdldCB0aGUgdXNlciBwcm9wZXJ0aWVzCiAgICAkdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkcGFyYW1zWyd1c2VyX2lkJ10pOwogICAgJHByb3BzID0gJHRoaXMtPkdldFVzZXJQcm9wZXJ0aWVzKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKICAgIAogICAgLy8gZ2V0IHRoZSBncm91cCBtZW1iZXJzaGlwcwogICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHBhcmFtc1sndXNlcl9pZCddICk7Ci8vIHRvZG8sIHVzZXJzIG1heSAob3B0aW9uYWxseSkgbm90IGJlIHBhcnQgb2YgYW55IGdydW9wcwovLyAgICAgaWYoICRncm91cHMgPT0gZmFsc2UgKQovLyAgICAgICB7Ci8vIAkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3JfbWVtYmVyZ3JvdXBzJykgKTsKLy8gCXJldHVybjsKLy8gICAgICAgfQoKICAgIC8vIHBvcHVsYXRlIHRoZSBwYXJhbXMgd2l0aCB0aGUgYXBwcm9wcmlhdGUgc3R1ZmYKICAgIC8vIHRoYXQgd2UganVzdCBsb2FkZWQKICAgICRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10gPSAkdXNlclsndXNlcm5hbWUnXTsKICAgICRwYXJhbXNbJ2lucHV0X2V4cGlyZXNkYXRlJ10gPSAkdXNlclsnZXhwaXJlcyddOwovLyAgICAgJHBhcmFtc1snaW5wdXRfcGFzc3dvcmQnXSA9ICR1c2VyWydwYXNzd29yZCddOyAgLy8gdGhlIHBhc3N3b3JkIHJvdyBpcyBtZDUgaGFzaGVkLCBkb24ndCBib3RoZXIgZGlzcGxheWluZyBpdAovLyAgICAgJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSA9ICR1c2VyWydwYXNzd29yZCddOwogICAgJHVzZXJwcm9wcyA9ICcnOwogICAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkKICAgIHsKICAgICAgaWYoICR1c2VycHJvcHMgPT0gJycgKQoJewoJICAkdXNlcnByb3BzID0gJHByb3BbJ3RpdGxlJ10uIj0iLiRwcm9wWydkYXRhJ107Cgl9CiAgICAgIGVsc2UKCXsKCSAgJHVzZXJwcm9wcyAuPSAiLCIuJHByb3BbJ3RpdGxlJ10uIj0iLiRwcm9wWydkYXRhJ107Cgl9CiAgICB9CiAgICAkcGFyYW1zWyd1c2VycHJvcHMnXSA9ICR1c2VycHJvcHM7CgogICAgJG1lbWJlcm9mID0gJyc7CiAgICBpZiggJGdyb3VwcyAhPSBmYWxzZSApCiAgICAgIHsKCWZvcmVhY2goICRncm91cHMgYXMgJGdyb3VwICkKCXsKCSAgJHBhcmFtc1snbWVtYmVyb2ZfJy4kZ3JvdXBbJ2dyb3VwaWQnXV0gPSAkZ3JvdXBbJ2dyb3VwaWQnXTsKCX0KICAgICAgfQoKICAgIC8vIGFuZCBkaXNwbGF5IHRoZSB1c2VyIHBhZ2UKICAgIC8vIHRvZG8sIHB1dCBhIHJlZGlyZWN0IGhlcmUKICAgICR0aGlzLT5fRGlzcGxheUFkbWluVXNlclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkICk7CiAgfQoKCiAgZnVuY3Rpb24gX2hhbmRsZVVzZXJJbmZvVmFsaWRhdGlvbiggJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAmJG1lc3NhZ2UsICRuZWVkcHcgPSB0cnVlLCAKCQkJCSAgICAgICRkb2V4cGlyZSA9IHRydWUsICRjaGVja3VzZXJuYW1lID0gdHJ1ZSApCiAgewogICAgLy8gbWFrZSBzdXJlIHRoZSBwYXJhbWV0ZXJzIGFyZSBmaWxsZWQgaW4KICAgICR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAkcGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pOwogICAgJHJlcGVhdCAgID0gdHJpbSgkcGFyYW1zWydpbnB1dF9yZXBlYXRwYXNzd29yZCddKTsKICAgIAogICAgLy8gbWFrZSBzdXJlIHRoZSB1c2VybmFtZSBmaXRzIHRoZSBydWxlcwogICAgaWYoICRjaGVja3VzZXJuYW1lICkKICAgICAgewoJCgkkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXNlcm5hbWUnKTsKCWlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnLDApID09IDEgKQoJICB7CgkgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcycpOwoJICAgIGlmKCBzdHJwb3MoJHVzZXJuYW1lLCdAJykgPT0gZmFsc2UgKQoJICAgICAgewoJCXJldHVybiAtMTsKCSAgICAgIH0KCSAgfQoJaWYoICEkdGhpcy0+SXNWYWxpZFVzZXJuYW1lKCAkdXNlcm5hbWUgKSApCgkgIHsKCSAgICByZXR1cm4gLTE7CgkgIH0KICAgICAgfQoKICAgIGlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnLCcwJykgPT0gJzEnCiAgICAgICYmIHN0cnBvcygkdXNlcm5hbWUsJ0AnKSA9PT0gZmFsc2UpCiAgICAgIHsKICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcycpOwogICAgICByZXR1cm4gLTE7CiAgICAgIH0KICAgIAogICAgaWYoICR1c2VybmFtZSA9PSAnJyAKCXx8ICgkbmVlZHB3ICYmICgkcGFzc3dvcmQgPT0gJycgfHwgJHJlcGVhdCA9PSAnJykpICApCiAgICAgIHsKCS8vZGllKCIkdXNlcm5hbWUsICRuZWVkcHcsICRwYXNzd29yZCwgJHJlcGVhdCIpOwoJJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwoJcmV0dXJuIC0xOwogICAgICB9CgogICAgLy8gbWFrZSBzdXJlIHRoZSBwYXNzd29yZHMgbWF0Y2gKICAgIGlmKCAkcGFzc3dvcmQgIT0gJHJlcGVhdCApCiAgICAgIHsKCSRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnKTsKCXJldHVybiAtMTsKICAgICAgfQoKICAgIC8vIG1ha2Ugc3VyZSB0aGUgcGFzc3dvcmQgZml0cyB0aGUgcnVsZXMKICAgIGlmKCAkbmVlZHB3ICYmICEkdGhpcy0+SXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKSApCiAgICAgIHsKCSRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpOwoJcmV0dXJuIC0xOwogICAgICB9CgogICAgaWYoICRkb2V4cGlyZSA9PSBmYWxzZSApCiAgICAgIHsKCXJldHVybiAxOwogICAgICB9CgogICAgLy8gbWFrZSBzdXJlIGFuIGV4cGlyeSBkYXRlIGlzIHNldAogICAgaWYoICFpc3NldCgkcGFyYW1zWydleHBpcmVzZGF0ZV9Nb250aCddKSApCiAgICAgIHsKCSRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJyk7CglyZXR1cm4gLTE7CiAgICAgIH0KCiAgICAkZXhwaXJlcyA9IG1rdGltZSgyMyw1OSw1OSwKCQkgICAgICAkcGFyYW1zWydleHBpcmVzZGF0ZV9Nb250aCddLCAkcGFyYW1zWydleHBpcmVzZGF0ZV9EYXknXSwgCgkJICAgICAgJHBhcmFtc1snZXhwaXJlc2RhdGVfWWVhciddKTsKICAgIGlmKCAhJGV4cGlyZXMgKQogICAgICB7CgkkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZScpOwoJcmV0dXJuIC0xOwogICAgICB9CiAgICAkcGFyYW1zWydpbnB1dF9leHBpcmVzZGF0ZSddID0gJGV4cGlyZXM7CiAgICByZXR1cm4gMTsKICB9CgoKIGZ1bmN0aW9uIG15UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJHJldHVybmlkLCAkcGFyYW1zID0gYXJyYXkoKSwgJGlnbm9yZV9yZXR1cm50byA9IGZhbHNlICkKICB7CiAgICBpZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgJiYgISRpZ25vcmVfcmV0dXJudG8pCiAgICAgIHsKCWxpc3QoJG1vZCwkYWN0KSA9IGV4cGxvZGUoJywnLCRwYXJhbXNbJ3JldHVybnRvJ10pOwoJJHRoaXMtPkxvYWRSZWRpcmVjdE1ldGhvZHMoKTsKCSRtb2RvYmogPSYgJHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCRtb2QpOwoJJHRtcCA9IGFycmF5KCk7CglyZXR1cm4gY21zX21vZHVsZV9SZWRpcmVjdCgkbW9kb2JqLCRpZCwkYWN0LCRyZXR1cm5pZCk7CiAgICAgIH0KICAgICR0aGlzLT5SZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICB9CgpmdW5jdGlvbiBmZUNyZWF0ZUZvcm1TdGFydCggJGlkLCAkYWN0aW9uLCAkcmV0dXJuaWQsICRpbmxpbmU9dHJ1ZSwgJG1ldGhvZD0ncG9zdCcsICRlbmN0eXBlPScnLCAkaWRzdWZmaXg9JycsICRwYXJhbXMgPSBhcnJheSgpICkKICB7CiAgICByZXR1cm4gJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsJGFjdGlvbiwkcmV0dXJuaWQsJG1ldGhvZCwkZW5jdHlwZSwkaW5saW5lLCRpZHN1ZmZpeCwgJHBhcmFtcyk7CiAgfQoKCiAgZnVuY3Rpb24gR2V0SGVscCgkbGFuZz0nZW5fVVMnKQkKICB7CiAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ2hlbHAnKTsKICB9CgoKICBmdW5jdGlvbiBHZXRBdXRob3IoKSAKICB7CiAgICByZXR1cm4gJ2NhbGd1eTEwMDAnOwogIH0KCiAgCiAgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKQkKICB7CiAgICByZXR1cm4gJ2NhbGd1eTEwMDBAaG90bWFpbC5jb20nOwogIH0KCiAgCiAgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkJCiAgewogICAgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKGRpcm5hbWUoX19GSUxFX18pLicvY2hhbmdlbG9nLmluYycpOwogIH0KCgogIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgIEdldEhlYWRlckhUTUwoKQogICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQogIHsKJHRtcGwgPTw8PEVPVAp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSJpbmNqcyJ9CntKUXVlcnlUb29scyBhY3Rpb249InJlYWR5In0KRU9UOwogICAgJG9iaiA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0pRdWVyeVRvb2xzJyk7CiAgICBpZiggaXNfb2JqZWN0KCRvYmopICkKICAgICAgewoJcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkdG1wbCk7CiAgICAgIH0KICB9CQoKCiAgLy8gc2VuZCBhbiBldmVudCB0aGF0IHRoaXMgdXNlciBhY2NvdW50IGhhcyBiZWVuIGV4cGlyZWQKICBmdW5jdGlvbiBOb3RpZnlFeHBpcmVkVXNlciggJHVzZXJpZCApCQogIHsKICAgICR1c2VyID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdXNlcmlkICk7CiAgICBpZiggJHVzZXJbMF0gPT0gRkFMU0UgKQogICAgICB7CgkvLyB0aGlzIHNob3VsZCBiZSBhbiBlcnJvcgoJcmV0dXJuOwogICAgICB9CiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHBhcm1zWydpZCddID0gJHVzZXJpZDsKICAgICRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VyWzFdWyd1c2VybmFtZSddOwogICAgJHRoaXMtPlNlbmRFdmVudCgnT25FeHBpcmVVc2VyJywkcGFybXMpOwogICAgJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uRXhwaXJlVXNlcicsJHBhcm1zKTsKICB9CgoKICBmdW5jdGlvbiBpbWFnZVRyYW5zZm9ybSgkc3JjU3BlYywgJGRlc3RTcGVjLCAkc2l6ZSwgJiRjb25maWcpCiAgewogICAgcmVxdWlyZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pLicvLi4vLi4vbGliL2ZpbGVtYW5hZ2VyL0ltYWdlTWFuYWdlci9DbGFzc2VzL1RyYW5zZm9ybS5waHAnKTsKICAgIAogICAgJGl0ID0gbmV3IEltYWdlX1RyYW5zZm9ybTsKICAgICRpbWcgPSAkaXQtPmZhY3RvcnkoJGNvbmZpZ1snaW1hZ2VfbWFuaXB1bGF0aW9uX3Byb2cnXSk7CiAgICAkaW1nLT5sb2FkKCRzcmNTcGVjKTsKICAgIGlmICgkaW1nLT5pbWdfeCA8ICRpbWctPmltZ195KQogICAgICB7CgkkbG9uZ19heGlzID0gJGltZy0+aW1nX3k7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJGxvbmdfYXhpcyA9ICRpbWctPmltZ194OwogICAgICB9CiAgICAKICAgIGlmICgkbG9uZ19heGlzID4gJHNpemUpCiAgICAgIHsKCSRpbWctPnNjYWxlQnlMZW5ndGgoJHNpemUpOwoJJGltZy0+c2F2ZSgkZGVzdFNwZWMsICdqcGVnJyk7CiAgICAgIH0KICAgIGVsc2UKICAgICAgewoJJGltZy0+c2F2ZSgkZGVzdFNwZWMsICdqcGVnJyk7CiAgICAgIH0KICAgICRpbWctPmZyZWUoKTsKICB9CgoKICBmdW5jdGlvbiBnZXRfdXBsb2FkX2Rpcm5hbWUoJHVpZCkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkY29uZmlnID0gJGdDbXMtPkdldENvbmZpZygpOwoKICAgICRkbiA9IGNtc19qb2luX3BhdGgoJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ10sCgkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKSk7CiAgICByZXR1cm4gJGRuOwogIH0KCgogIGZ1bmN0aW9uIEdldFVwbG9hZGVkRmlsZW5hbWUoJHVpZCwkZmxkdmFsdWUpCiAgewogICAgJGZuID0gY21zX2pvaW5fcGF0aCgkdGhpcy0+Z2V0X3VwbG9hZF9kaXJuYW1lKCR1aWQpLAoJCQkieyR1aWR9X3skZmxkdmFsdWV9Iik7CiAgICByZXR1cm4gJGZuOwogIH0KCgogIGZ1bmN0aW9uIE1hbmFnZUltYWdlVXBsb2FkKCRpZCwgJGZsZHByZWZpeCwgJGZsZG5hbWUsICR1aWQsICRpbWFnZV93aWR0aCA9ICcnKQogIHsKICAgIGdsb2JhbCAkZ0NtczsKCiAgICBpZiggJGltYWdlX3dpZHRoID09ICcnICkKICAgICAgewoJJGltYWdlX3dpZHRoID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3RodW1ibmFpbF9zaXplJyw3NSk7CiAgICAgIH0KCiAgICAkYWxsb3dlZF9leHRlbnNpb25zPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLAoJCQkJCSAgICAgJy5naWYsLnBuZywuanBnJyk7CiAgICAkbWF4ZmlsZXNpemUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VwbG9hZF9zaXplJywxMCoxMDI0KjEwMjQpOwogICAgaWYoICFpc3NldCgkX0ZJTEVTWyRpZC4kZmxkcHJlZml4LiRmbGRuYW1lXSkgfHwgIWlzc2V0KCAkX0ZJTEVTICkgKQogICAgICB7CglyZXR1cm4gYXJyYXkoZmFsc2UsJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfdXBsb2FkJykpOwogICAgICB9CgogICAgLy8kZGVzdG5hbWUgPSAkX0ZJTEVTWyRpZC4kZmxkbmFtZV1bJ25hbWUnXTsKICAgICRmaWxlID0mICRfRklMRVNbJGlkLiRmbGRwcmVmaXguJGZsZG5hbWVdOwogICAgaWYgKCFpc3NldCAoJGZpbGVbJ3R5cGUnXSkpCiAgICAgICRmaWxlWyd0eXBlJ10gPSAnJzsKICAgIGlmICghaXNzZXQgKCRmaWxlWydzaXplJ10pKQogICAgICAkZmlsZVsnc2l6ZSddID0gJyc7CiAgICBpZiAoIWlzc2V0ICgkZmlsZVsndG1wX25hbWUnXSkpCiAgICAgICRmaWxlWyd0bXBfbmFtZSddID0gJyc7CiAgICAkZmlsZVsnbmFtZSddID0KICAgICAgcHJlZ19yZXBsYWNlKCcvW15hLXpBLVowLTlcLlwkXCVcJ1xgXC1cQFx7XH1cflwhXCNcKFwpXCZcX1xeXS8nLCAnJywKICAgICAgIHN0cl9yZXBsYWNlIChhcnJheSAoJyAnLCAnJTIwJyksIGFycmF5ICgnXycsICdfJyksICRmaWxlWyduYW1lJ10pKTsKICAgIAogICAgLy8gc2V0IHRoZSBkZXN0aW5hdGlvbiBuYW1lCiAgICAkZXh0ID0gc3RyY2hyKCRmaWxlWyduYW1lJ10sJy4nKTsKICAgICRkZXN0bmFtZSA9ICR1aWQuJ18nLiRmbGRuYW1lLiRleHQ7CgogICAgLy8gQ3JlYXRlIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgaWYgbmVjZXNzYXJ5CiAgICAkZGVzdERpciA9ICR0aGlzLT5nZXRfdXBsb2FkX2Rpcm5hbWUoJHVpZCk7CiAgICBAbWtkaXIoJGRlc3REaXIpOwogICAgaWYoICFpc193cml0YWJsZSggJGRlc3REaXIgKSApCiAgICAgIHsKCXJldHVybiBhcnJheShmYWxzZSwkdGhpcy0+TGFuZygnZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZScpKTsKICAgICAgfQoKICAgIC8vIGhlcmUgd2UnZCByZXNpemUgdGhlIGltYWdlIHRvIHRoZSBkZXNpcmVkIHdpZHRoCiAgICAvLyBpdCBhbHNvIHNhdmVzIHRoZSBmaWxlIHRvIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkuCiAgICAkdGhpcy0+aW1hZ2VUcmFuc2Zvcm0oJGZpbGVbJ3RtcF9uYW1lJ10sICRkZXN0RGlyLkRJUkVDVE9SWV9TRVBBUkFUT1IuJGRlc3RuYW1lLCAkaW1hZ2Vfd2lkdGgsICRnQ21zLT5jb25maWcpOwoKICAgIHJldHVybiBhcnJheSh0cnVlLCRkZXN0bmFtZSk7CiAgfQoKCiAgZnVuY3Rpb24gU2V0TG9naW5Db29raWUoJHVzZXJuYW1lLCRwYXNzd29yZCkKICB7CiAgICBnbG9iYWwgJGdDbXM7CiAgICAkY29uZmlnID0mICRnQ21zLT5HZXRDb25maWcoKTsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlY29va2llc3RvcmVtZW1iZXInKSAmJgoJKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJykgIT0gJycpICkKICAgICAgewoJJGNvb2tpZW5hbWUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpOwoKCS8vJHBhdCA9IGRpcm5hbWUoJF9TRVJWRVJbJ1NDUklQVF9OQU1FJ10pOwoJJGRvbSA9ICRfU0VSVkVSWydIVFRQX0hPU1QnXTsKCgkkZXhwaXJlcyA9IHRpbWUoKSsoMzYwMCoyNCozNjUpOwoJJHZhbCA9IGFycmF5KCk7CgkkdmFsWyd1J10gPSAkdXNlcm5hbWU7CgkkdmFsWydwJ10gPSBtZDUoJHBhc3N3b3JkKTsKCSRzdHIgPSBzZXJpYWxpemUoICR2YWwgKTsKCSRrZXkgPSAnRkVVJy5tZDUoJGNvbmZpZ1sncm9vdF9wYXRoJ10pLm1kNSgkY29va2llbmFtZSk7Cgkkc3RyID0gJHRoaXMtPl9lbmNyeXB0KCRrZXksJHN0cik7CglpZiggJHN0ciAhPT0gRkFMU0UgKQoJICB7CgkgICAgJHN0ciA9IGJhc2U2NF9lbmNvZGUoJHN0cik7CgkgICAgQHNldGNvb2tpZSggJGNvb2tpZW5hbWUsICRzdHIsICRleHBpcmVzLCAiLyIgKTsKCSAgfQoJcmV0dXJuOwogICAgICB9CiAgfQoKCiAgZnVuY3Rpb24gX0F0dGVtcHRJbnZhbGlkYXRlTG9naW5Db29raWUoKQogIHsKICAgIGdsb2JhbCAkZ0NtczsKICAgICRjb25maWcgPSYgJGdDbXMtPkdldENvbmZpZygpOwogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2Vjb29raWVzdG9yZW1lbWJlcicpICYmCgkoJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKSAhPSAnJykgKQogICAgICB7CgkkY29va2llbmFtZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJyk7CgkkdmFsdWUgPSBGQUxTRTsKCWlmKCBpc3NldCgkX0NPT0tJRVskY29va2llbmFtZV0pICkKCSAgewoJICAgICR2YWx1ZSA9ICRfQ09PS0lFWyRjb29raWVuYW1lXTsKCSAgfQoJCgkkZXhwaXJlcyA9IHRpbWUoKS0oMzYwMCoyNCk7IC8vIG9uZSBkYXkgYWdvCgkkcmVzID0gc2V0Y29va2llKCAkY29va2llbmFtZSwgJHZhbHVlLCAkZXhwaXJlcywgIi8iICk7CglpZiggISRyZXMgKSBkaWUoJ2RlbGV0ZSBjb29raWUgZmFpbGVkJyk7CiAgICAgIH0KICB9CgoKICBmdW5jdGlvbiBfQXR0ZW1wdExvZ2luV2l0aENvb2tpZSgpCiAgewogICAgZ2xvYmFsICRnQ21zOwogICAgJGNvbmZpZyA9JiAkZ0Ntcy0+R2V0Q29uZmlnKCk7CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZWNvb2tpZXN0b3JlbWVtYmVyJykgJiYKCSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpICE9ICcnKSApCiAgICAgIHsKCSRjb29raWVuYW1lID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKTsKCglpZiggIWlzc2V0KCRfQ09PS0lFWyRjb29raWVuYW1lXSkgKSAKCSAgewoJICAgIHJldHVybjsKCSAgfQoKCSRzdHIgPSAkX0NPT0tJRVskY29va2llbmFtZV07Cgkkb3JpZ3N0ciA9ICRzdHI7Cgkkc3RyID0gYmFzZTY0X2RlY29kZSgkc3RyKTsKCSRrZXkgPSAnRkVVJy5tZDUoJGNvbmZpZ1sncm9vdF9wYXRoJ10pLm1kNSgkY29va2llbmFtZSk7Cgkkc3RyID0gJHRoaXMtPl9kZWNyeXB0KCRrZXksJHN0cik7CglpZiggJHN0ciA9PT0gRkFMU0UgKQoJICB7CgkgICAgcmV0dXJuOwoJICB9CgkkYXJyID0gdW5zZXJpYWxpemUoICRzdHIgKTsKCglpZiggY291bnQoJGFycikgIT0gMiB8fCAhaXNzZXQoJGFyclsndSddKSB8fCAhaXNzZXQoJGFyclsncCddKSApCgkgIHJldHVybjsKCgkkcmVzID0gJHRoaXMtPkxvZ2luKCAkYXJyWyd1J10sICRhcnJbJ3AnXSwgJycsIHRydWUsIHRydWUgKTsKICAgICAgfQogIH0KCgogIGZ1bmN0aW9uIF9TZW5kTm90aWZpY2F0aW9uRW1haWwoJGV2ZW50LCRwYXJhbXMpCiAgewogICAgJG5vdGlmaWNhdGlvbnMgPSBleHBsb2RlKCcsJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9ucycsJycpKTsKICAgIGlmKCAhaW5fYXJyYXkoICRldmVudCwgJG5vdGlmaWNhdGlvbnMgKSApIHJldHVybjsKICAgICRkZXN0ID0gdHJpbSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9uX2FkZHJlc3MnKSk7CiAgICBpZiggZW1wdHkoJGRlc3QpICkgcmV0dXJuOwoKICAgIC8vIFNldHVwIHNvbWUgc21hcnR5IHN0dWZmLgogICAgZ2xvYmFsICRnQ21zOwogICAgJHNtYXJ0eSA9JiAkZ0Ntcy0+R2V0U21hcnR5KCk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2V2ZW50JywkZXZlbnQpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdldmVudF9uYW1lJywkdGhpcy0+TGFuZygkZXZlbnQpKTsKICAgICRzbWFydHktPmFzc2lnbigncGxhaW50ZXh0X2V2ZW50JywkdGhpcy0+TGFuZygnZXZlbnQnKSk7CiAgICBmb3JlYWNoKCAkcGFyYW1zIGFzICRrZXkgPT4gJHZhbHVlICkKICAgICAgewoJJHNtYXJ0eS0+YXNzaWduKCdwYXJhbV8nLiRrZXksJHZhbHVlKTsKICAgICAgfQogICAgJHRleHQgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnKTsKCiAgICAkY21zbWFpbGVyID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ01TTWFpbGVyJyk7CiAgICAkY21zbWFpbGVyLT5yZXNldCgpOwogICAgJGNtc21haWxlci0+QWRkQWRkcmVzcygkZGVzdCk7CiAgICAkY21zbWFpbGVyLT5TZXRTdWJqZWN0KCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcpKTsKICAgICRjbXNtYWlsZXItPlNldEJvZHkoJHRleHQpOwogICAgJGNtc21haWxlci0+SXNIVE1MKGZhbHNlKTsKICAgICRjbXNtYWlsZXItPlNlbmQoKTsKICB9CgogIGZ1bmN0aW9uIF9wYXJhbXNfdG9fc2Vzc2lvbigmJHBhcmFtcywgJGtleSA9ICdmZXVfcGFyYW1zJykKICB7CiAgICAkX1NFU1NJT05bJGtleV0gPSAkcGFyYW1zOwogIH0KCiAgZnVuY3Rpb24gX3Nlc3Npb25fdG9fcGFyYW1zKCRrZXkgPSAnZmV1X3BhcmFtcycpCiAgewogICAgaWYoICFpc3NldCgkX1NFU1NJT05bJGtleV0pICkKICAgICAgewoJcmV0dXJuIGZhbHNlOwogICAgICB9CiAgICAkdG1wID0gJF9TRVNTSU9OWyRrZXldOwogICAgdW5zZXQoJF9TRVNTSU9OWyRrZXldKTsKICAgIHJldHVybiAkdG1wOwogIH0KCgogIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogIC8vICBBUEkgRlVOQ1RJT05TIC8vCiAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCgogIGZ1bmN0aW9uIEFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRHcm91cCggJG5hbWUsICRkZXNjcmlwdGlvbiApOwogIH0KCgpmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uKCAkZ3JwaWQsICRwcm9wbmFtZSwgJHNvcnRrZXksICRsb3N0dW4sICR2YWwgKTsKICB9CgoKICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZFByb3BlcnR5RGVmbiggJG5hbWUsICRwcm9tcHQsICR0eXBlLCAkbGVuZ3RoLCAkbWF4bGVuZ3RoLCAkYXR0cmlicywgJGZvcmNlX3VuaXF1ZSwgJGVuY3J5cHQgICk7CiAgfQoKIAogIGZ1bmN0aW9uIEFkZFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkc2Vsb3B0aW9ucyApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRzZWxvcHRpb25zICk7CiAgfQoKIAogIGZ1bmN0aW9uIEFkZFVzZXIoICRuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzLCAkZG9fbWQ1ID0gdHJ1ZSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMsICRkb19tZDUgKTsKICB9CgoKICBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QXNzaWduVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKTsKICB9CgogCiAgZnVuY3Rpb24gQ2hlY2tQYXNzd29yZCgkdXNlcm5hbWUsJHBhc3N3b3JkLCRncm91cHMgPSAnJywkbWQ1cHcgPSBmYWxzZSkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5DaGVja1Bhc3N3b3JkKCR1c2VybmFtZSwkcGFzc3dvcmQsJGdyb3VwcywkbWQ1cHcpOwogIH0KCiAKICBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q291bnRUZW1wQ29kZVJlY29yZHMoKTsKICB9CgogCiAgZnVuY3Rpb24gQ291bnRVc2Vyc0luR3JvdXAoICRnaWQgPSAnJyApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q291bnRVc2Vyc0luR3JvdXAoICRnaWQgKTsKICB9CgoKICAvKiB3aGF0J3MgdGhpcz8gKi8KICBmdW5jdGlvbiBEZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCwgJHByb3BuYW1lICk7CiAgfQoKICAKICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lICk7CiAgfQoKCiAgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZucygpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlUHJvcGVydHlEZWZucygpOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVNlbGVjdE9wdGlvbnMoICRuYW1lICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVTZWxlY3RPcHRpb25zKCAkbmFtZSApOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVVzZXJGdWxsKCAkdWlkICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyRnVsbCggJHVpZCApOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSggJHRpdGxlICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUoJHRpdGxlKTsKICB9CgogIC8qV2hhdCBpcyB0aGlzPyovCiAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5KCR0aXRsZSwkYWxsPWZhbHNlKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGwpOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlQWxsVXNlclByb3BlcnRpZXMoKTsKICB9CgogIAogIGZ1bmN0aW9uIERlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgkdXNlcmlkKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwoJHVzZXJpZCk7CiAgfQoKCgogIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsKTsKICB9CgoKICBmdW5jdGlvbiBEZWxldGVHcm91cEZ1bGwoICRnaWQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUdyb3VwRnVsbCggJGdpZCApOwogIH0KCgogIGZ1bmN0aW9uIERlbGV0ZVVzZXIoJGlkKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyKCAkaWQgKTsKICB9CgogIGZ1bmN0aW9uIEV4cGlyZVVzZXJzKCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RXhwaXJlVXNlcnMoKTsKICB9CgogIGZ1bmN0aW9uIEV4cGlyZVRlbXBDb2RlcyggJGV4cGlyeWNvZGUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkV4cGlyZVRlbXBDb2RlcyggJGV4cGlyeWNvZGUgKTsKICB9CgoKICBmdW5jdGlvbiBHZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCAkcHJlZml4ID0gJ3VzZXInICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCAkcHJlZml4ICk7CiAgfQogIAogIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclByb3BlcnRpZXMoJHVpZCk7CiAgfQogIAoKICBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHNBcnJheSgkdXNlcmlkKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpOwogIH0KCiAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGVmYXVsdHZhbHVlPWZhbHNlKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VyUHJvcGVydHkoICR0aXRsZSwgJGRlZmF1bHR2YWx1ZSApOwogIH0KCiAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwgJGRlZmF1bHR2YWx1ZT1mYWxzZSkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkZGVmYXVsdHZhbHVlKTsKICB9CgogIGZ1bmN0aW9uIEdldFVzZXJUZW1wQ29kZSggJHVpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclRlbXBDb2RlKCAkdWlkICk7CiAgfSAgCgoKICBmdW5jdGlvbiBHZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoICR0aXRsZSApOwogIH0KCgogIGZ1bmN0aW9uIEdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICk7CiAgfQoKCiAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cEluZm8oICRnaWQgKTsKICB9CgoKICBmdW5jdGlvbiBHZXRVc2VySGlzdG9yeSggJHVpZCwgJGFjdGlvbiA9ICcnLCAkY291bnQgPSAtMSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckhpc3RvcnkoJHVpZCwkYWN0aW9uLCRjb3VudCk7CiAgfQoKCiAgZnVuY3Rpb24gR2V0VXNlckluZm8oICR1aWQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgfQoKCiAgZnVuY3Rpb24gR2V0VXNlckluZm9CeU5hbWUoICR1c2VybmFtZSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckluZm9CeU5hbWUoICR1c2VybmFtZSApOwogIH0KCgogIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdpZCkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRGdWxsVXNlcnNJbkdyb3VwKCRnaWQpOwogIH0KCgogIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnLCAkcmVnZXggPSAnJywgJGxpbWl0ID0gJycsICRzb3J0ID0gJycsCgkJCSAgICAkcHJvcGVydHkgPSAnJywgJHByb3ByZWdleCA9ICcnLCAkbG9nZ2VkaW5vbmx5ID0gMCwgJHN0YXJ0X3JlY29yZCA9IDApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcnNJbkdyb3VwKCAkZ2lkLCAkcmVnZXgsICRsaW1pdCwgJHNvcnQsCgkJCQkJICAgICAgJHByb3BlcnR5LCAkcHJvcHJlZ2V4LCAkbG9nZ2VkaW5vbmx5LCAkc3RhcnRfcmVjb3JkICk7CiAgfQoKCiAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeUlEKCAkZ2lkICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Hcm91cEV4aXN0c0J5SUQoICRnaWQgKTsKICB9CgogIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlOYW1lKCAkbmFtZSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICk7CiAgfQoJCiAgZnVuY3Rpb24gTG9nZ2VkSW5FbWFpbCgpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nZ2VkSW5FbWFpbCgpOwogIH0KCiAgZnVuY3Rpb24gR2V0RW1haWwoJHVpZCkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRFbWFpbCgkdWlkKTsKICB9CgogIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbnMoKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbnMoKTsKICB9CgogIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbiggJG5hbWUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbiggJG5hbWUgKTsKICB9CgogIGZ1bmN0aW9uIEdldFNlbGVjdE9wdGlvbnMoICRuYW1lLCAkZGltID0gMSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0U2VsZWN0T3B0aW9ucyggJG5hbWUsICRkaW0gKTsKICB9CgogIAogIGZ1bmN0aW9uIEdldFVzZXJOYW1lKCR1c2VyaWQpIAogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJOYW1lKCR1c2VyaWQpOwogIH0KCiAgCiAgZnVuY3Rpb24gR2V0VXNlcklEKCR1c2VybmFtZSkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcklEKCR1c2VybmFtZSk7CiAgfQoKCiAgZnVuY3Rpb24gR2V0R3JvdXBOYW1lKCRncm91cGlkKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cE5hbWUoICRncm91cGlkICk7CiAgfQoKICBmdW5jdGlvbiBHZXRHcm91cERlc2MoJGdyb3VwaWQpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBEZXNjKCAkZ3JvdXBpZCApOwogIH0KCgogIGZ1bmN0aW9uIEdldEdyb3VwTGlzdCgpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBMaXN0KCk7CiAgfQoKICAKICBmdW5jdGlvbiBHZXRHcm91cExpc3RGdWxsKCkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cExpc3RGdWxsKCk7CiAgfQoKICBmdW5jdGlvbiBHZXRHcm91cElEKCRncm91cG5hbWUpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBJRCggJGdyb3VwbmFtZSApOwogIH0KCiAgCiBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHMoJHVzZXJpZCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpOwogIH0KCiAgCiAgZnVuY3Rpb24gR2V0RXhwaXJ5RGF0ZSggJHVpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RXhwaXJ5RGF0ZSggJHVpZCApOwogIH0KCgogIGZ1bmN0aW9uIElzQWNjb3VudEV4cGlyZWQoICR1aWQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzQWNjb3VudEV4cGlyZWQoICR1aWQgKTsKICB9CgogIAogIGZ1bmN0aW9uIElzVmFsaWRQYXNzd29yZCggJHBhc3N3b3JkICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApOwogIH0KCiAKICBmdW5jdGlvbiBJc1ZhbGlkRW1haWxBZGRyZXNzKCAkZW1haWwsICR1aWQgPSAtMSwgJGNoZWNrX2V4aXN0aW5nID0gdHJ1ZSApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNWYWxpZEVtYWlsQWRkcmVzcyggJGVtYWlsLCAkdWlkLCAkY2hlY2tfZXhpc3RpbmcgKTsKICB9CgogIAogIGZ1bmN0aW9uIElzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lLCAkY2hlY2sgPSB0cnVlICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSwgJGNoZWNrICk7CiAgfQoKICAKICBmdW5jdGlvbiBMb2dpbiggJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRncm91cHMgPSAnJywgJG1kNXB3ID0gZmFsc2UsCgkJJGZvcmNlX2xvZ291dCA9IGZhbHNlKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcywKCQkJCSAgICAkbWQ1cHcsICRmb3JjZV9sb2dvdXQpOwogIH0KCgogIGZ1bmN0aW9uIExvZ2dlZEluTmFtZSgpIAogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgJHN0ciA9ICR0aGlzLT51c2VybWFuaXAtPkxvZ2dlZEluTmFtZSgpOwogICAgcmV0dXJuICRzdHI7CiAgfQoKICAKICBmdW5jdGlvbiBMb2dvdXQoJHVpZCA9ICcnKSAKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dvdXQoJHVpZCk7CiAgfQoKICAKICBmdW5jdGlvbiBMb2dvdXRVc2VyKCR1aWQsJGV2ZW50bXNnID0gJ2xvZ291dCcpIAogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ291dFVzZXIoJHVpZCwkZXZlbnRtc2cpOwogIH0KCiAKICBmdW5jdGlvbiBMb2dnZWRJbklkKCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nZ2VkSW5JZCgpOwogIH0KCiAKICBmdW5jdGlvbiBMb2dnZWRJbigpIAogIHsKICAgICR0bXAgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgaWYoICR0bXAgPiAwICkgcmV0dXJuIFRSVUU7CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKIAogIGZ1bmN0aW9uIE1lbWJlck9mR3JvdXAoJHVzZXJpZCwkZ3JvdXBpZCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TWVtYmVyT2ZHcm91cCgkdXNlcmlkLCRncm91cGlkKTsKICB9CgogIAogIGZ1bmN0aW9uIFJlbW92ZVVzZXJUZW1wQ29kZSggJHVpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICk7CiAgfSAgCgogIAogIGZ1bmN0aW9uIFJlbW92ZVVzZXJGcm9tR3JvdXAoICR1aWQsICRnaWQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlJlbW92ZVVzZXJGcm9tR3JvdXAoICR1aWQsICRnaWQgKTsKICB9CgogIAogIGZ1bmN0aW9uIFNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJykgKTsKICB9CgogIApmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm4oICRuYW1lLCAkbmV3bmFtZSwgJHByb21wdCwgJGxlbmd0aCwgJHR5cGUsICRtYXhsZW5ndGggPSAwLCAkYXR0cmlicyA9ICcnLCAkZm9yY2VfdW5pcXVlID0gMCwgJGVuY3J5cHQgPSAwICkKICB7CiAgICAkdGhpcy0+X2xvYWQoKTsKICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRQcm9wZXJ0eURlZm4oICRuYW1lLCAkbmV3bmFtZSwgJHByb21wdCwgJHR5cGUsICRsZW5ndGgsICRtYXhsZW5ndGgsICRhdHRyaWJzLCAkZm9yY2VfdW5pcXVlLCAkZW5jcnlwdCApOwogIH0KCiAgCiAgZnVuY3Rpb24gU2V0R3JvdXAoICRnaWQsICRuYW1lLCAkZGVzYyApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0R3JvdXAoICRnaWQsICRuYW1lLCAkZGVzYyApOwogIH0KCiAgCiAgZnVuY3Rpb24gU2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQYXNzd29yZCggJHVpZCwgJHBhc3N3b3JkICk7CiAgfQoKICAKICBmdW5jdGlvbiBTZXRVc2VyKCAkdWlkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgPSBmYWxzZSwgJGRvX21kNSA9IHRydWUgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcywgJGRvX21kNSApOwogIH0KCgogIGZ1bmN0aW9uIFNldFVzZXJHcm91cHMoICR1aWQsICRncnBpZHMgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJHcm91cHMoICR1aWQsICRncnBpZHMgKTsKICB9CgogIAogIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0aWVzKCAkdWlkLCAkcHJvcHMgKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQcm9wZXJ0aWVzKCAkdWlkLCAkcHJvcHMgKTsKICB9CgogIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpIAogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpOwogIH0KCiAgZnVuY3Rpb24gSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgkdWlkLCR0aXRsZSwkdmFsdWUpCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgkdWlkLCR0aXRsZSwkdmFsdWUpOwogIH0KCiAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkgCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCk7CiAgfQoKICBmdW5jdGlvbiBVc2VyRXhpc3RzQnlJRCggJHVpZCApCiAgewogICAgJHRoaXMtPl9sb2FkKCk7CiAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+VXNlckV4aXN0c0J5SUQoICR1aWQgKTsKICB9CgogIGZ1bmN0aW9uIFNldEVuY3J5cHRpb25LZXkoJHVpZCA9IC0xLCRmb3JjZSA9IEZBTFNFKQogIHsKICAgICR0aGlzLT5fbG9hZCgpOwogICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldEVuY3J5cHRpb25LZXkoICR1aWQsICRmb3JjZSApOwogIH0KCiAgZnVuY3Rpb24gX2VuY3J5cHQoJGtleSwkZGF0YSkKICB7CiAgICBpZiggIWZ1bmN0aW9uX2V4aXN0cygnbWNyeXB0X21vZHVsZV9vcGVuJykgKSByZXR1cm4gRkFMU0U7CiAgICBzcmFuZCgoZG91YmxlKSBtaWNyb3RpbWUoKSAqIDEwMDAwMDApOwogICAgJGVuY2RhdGEgPSBGQUxTRTsKICAgICR0ZCA9IEBtY3J5cHRfbW9kdWxlX29wZW4oTUNSWVBUX0RFUywnJyxNQ1JZUFRfTU9ERV9FQ0IsJycpOwogICAgaWYoICR0ZCA9PT0gRkFMU0UgKSByZXR1cm4gRkFMU0U7CgogICAgJGtleSA9IHN1YnN0cigka2V5LDAsbWNyeXB0X2VuY19nZXRfa2V5X3NpemUoJHRkKSk7CiAgICAkaXZfc2l6ZSA9IG1jcnlwdF9lbmNfZ2V0X2l2X3NpemUoJHRkKTsKICAgICRpdiA9IEBtY3J5cHRfY3JlYXRlX2l2KCRpdl9zaXplLCBNQ1JZUFRfUkFORCk7CgogICAgLy8gaW5pdGlhbGl6ZSBlbmNyeXB0aW9uIGhhbmRsZQogICAgJHRtcCA9IEBtY3J5cHRfZ2VuZXJpY19pbml0KCR0ZCwka2V5LCAkaXYpOwogICAgaWYoICR0bXAgIT0gLTEgKQogICAgICB7CgkkdG1wID0gbWNyeXB0X2dlbmVyaWMoJHRkLCRkYXRhKTsKCUBtY3J5cHRfZ2VuZXJpY19kZWluaXQoJHRkKTsKCSRlbmNkYXRhID0gJHRtcDsKICAgICAgfQogICAgQG1jcnlwdF9tb2R1bGVfY2xvc2UoJHRkKTsKICAgIHJldHVybiAkZW5jZGF0YTsKICB9CgogIGZ1bmN0aW9uIF9kZWNyeXB0KCRrZXksJGVuY2RhdGEpCiAgewogICAgaWYoICFmdW5jdGlvbl9leGlzdHMoJ21jcnlwdF9tb2R1bGVfb3BlbicpICkgcmV0dXJuIEZBTFNFOwogICAgJGRhdGEgPSBGQUxTRTsKICAgICR0ZCA9IEBtY3J5cHRfbW9kdWxlX29wZW4oTUNSWVBUX0RFUywnJyxNQ1JZUFRfTU9ERV9FQ0IsJycpOwogICAgaWYoICR0ZCA9PT0gRkFMU0UgKSByZXR1cm4gRkFMU0U7CgogICAgJGtleSA9IHN1YnN0cigka2V5LDAsbWNyeXB0X2VuY19nZXRfa2V5X3NpemUoJHRkKSk7CiAgICAkaXZfc2l6ZSA9IEBtY3J5cHRfZW5jX2dldF9pdl9zaXplKCR0ZCk7CiAgICAkaXYgPSBAbWNyeXB0X2NyZWF0ZV9pdigkaXZfc2l6ZSwgTUNSWVBUX1JBTkQpOwoKICAgIC8vIGluaXRpYWxpemUgZW5jcnlwdGlvbiBoYW5kbGUKICAgICR0bXAgPSBAbWNyeXB0X2dlbmVyaWNfaW5pdCgkdGQsJGtleSwgJGl2KTsKICAgIGlmKCAkdG1wICE9IC0xICkKICAgICAgewoJJGRhdGEgPSBAbWRlY3J5cHRfZ2VuZXJpYygkdGQsJGVuY2RhdGEpOwoJbWNyeXB0X2dlbmVyaWNfZGVpbml0KCR0ZCk7CiAgICAgIH0KICAgIEBtY3J5cHRfbW9kdWxlX2Nsb3NlKCR0ZCk7CiAgICByZXR1cm4gJGRhdGE7CiAgfQoKICBmdW5jdGlvbiBIYXNDYXBhYmlsaXR5KCRjYXBhYmlsaXR5LCRwYXJhbXMgPSBhcnJheSgpKQogIHsKICAgIHN3aXRjaCggJGNhcGFiaWxpdHkgKQogICAgICB7CiAgICAgIGNhc2UgJ2NvbnRlbnRibG9ja3MnOgogICAgICBjYXNlICdjb250ZW50X2F0dHJpYnV0ZXMnOgoJcmV0dXJuIFRSVUU7CiAgICAgIGRlZmF1bHQ6CglyZXR1cm4gRkFMU0U7CiAgICAgIH0KICB9CgogIGZ1bmN0aW9uIGdldF9jb250ZW50X2F0dHJpYnV0ZXMoJGNvbnRlbnRfdHlwZSkKICB7CiAgICAkdG1wID0gYXJyYXkoKTsKICAgICRhdHRyID0gbmV3IENtc0NvbnRlbnRUeXBlUHJvZmlsZUF0dHJpYnV0ZSgnZmV1X2dyb3VwcycsJ3Zpc2l0b3JzJyk7CiAgICAkYXR0ci0+c2V0X2hlbHBlcihmZXVfY29udGVudF9hdHRyaWJ1dGVfaGVscGVyOjpnZXRfaW5zdGFuY2UoKSk7CiAgICAkdG1wW10gPSAkYXR0cjsKICAgIHJldHVybiAkdG1wOwogIH0KCgogIGZ1bmN0aW9uIEdldENvbnRlbnRCbG9ja0lucHV0KCRibG9ja05hbWUsJHZhbHVlLCRwYXJhbXMsJGFkZGluZyA9IGZhbHNlKQogIHsKICAgIHN3aXRjaCggJHBhcmFtc1snc2VsZWN0dHlwZSddICkKICAgICAgewogICAgICBjYXNlICdncm91cHNlbGVjdCc6CgkkdG1wMSA9IGFycmF5KCk7CgkkdG1wID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwoJJGdyb3VwcyA9IGFycmF5X21lcmdlKCR0bXAxLCR0bXApOwoJLy92YXJfZHVtcCgkdmFsdWUpOyBkaWUoKTsKCSR2YWx1ZSA9IGV4cGxvZGUoJywnLCB0cmltKCR2YWx1ZSkpOwoJcmV0dXJuICR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJycsJGJsb2NrTmFtZSAuICdbXScsJGdyb3VwcywkdmFsdWUpOwoJYnJlYWs7CiAgICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgogIGZ1bmN0aW9uIEdldENvbnRlbnRCbG9ja1ZhbHVlKCRibG9ja05hbWUsJGJsb2NrUGFyYW1zLCRpbnB1dFBhcmFtcykKICB7CiAgICBpZiggaXNzZXQoJGJsb2NrUGFyYW1zWydzZWxlY3R0eXBlJ10pICkKICAgICAgewoJaWYoIGlzc2V0KCRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXSkgKQoJICB7CgkgICAgJHZhbCA9ICRpbnB1dFBhcmFtc1skYmxvY2tOYW1lXTsKCQlpZiAoaXNfYXJyYXkoJHZhbCkpCgkJewoJCQkkdmFsID0gaW1wbG9kZSgnLCcsICR2YWwpOwoJCQlyZXR1cm4gJHZhbDsKCQl9CgkgIH0KCSAgICByZXR1cm4gJy0xJzsKICAgICAgfQogICAgcmV0dXJuICcnOwogIH0KCiAgZnVuY3Rpb24gVmFsaWRhdGVDb250ZW50QmxvY2tWYWx1ZSgkYmxvY2tOYW1lLCR2YWx1ZSwkYmxvY2tQYXJhbXMpCiAgewogICAgc3dpdGNoKCRibG9ja1BhcmFtc1snc2VsZWN0dHlwZSddKQogICAgICB7CiAgICAgIGNhc2UgJ2dyb3Vwc2VsZWN0JzoKLyoKCWlmKCAkdmFsdWUgPT0gLTEgKQoJICB7CgkgICAgcmV0dXJuICR0aGlzLT5MYW5nKCdlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJyk7CgkgIH0KKi8KCWJyZWFrOwogICAgICB9CiAgICByZXR1cm4gJyc7CiAgfQoJCQkKfSAvLyBjbGFzcwoKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_admintab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKICAvLyBhIGZvcm0gZm9yIHBlcmZvcm1pbmcgdmFyaW91cyBhZG1pbiB0YXNrcwogIC8vIGxpa2UgZXhwb3J0aW5nIHVzZXJzIHRvIENTViwgcmVzZXR0aW5nIGV4cGlyeSBkYXRlcywgZXRjLCBldGMuCiAgICAKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAKCQkgICAgICAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkb19hZG1pbnRhc2tzJywgJHJldHVybmlkLAoJCQkJCSAgICAgICdwb3N0JywgJ211bHRpcGFydC9mb3JtLWRhdGEnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfaGlkZGVuJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdhY3RpdmVfdGFiJywnYWRtaW4nKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CgovLyBUaGUgZXhwb3J0IGZpZWxkcy4KJHNtYXJ0eS0+YXNzaWduKCdsZWdlbmRfZXhwb3J0dXNlcnMnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZXhwb3J0dXNlcnMnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2V4cG9ydHVzZXJzJywkdGhpcy0+TGFuZygncHJvbXB0X2V4cG9ydGNzdicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9leHBvcnR1c2VycycsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnYnV0dG9uX2V4cG9ydHVzZXJzJywKCQkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2V4cG9ydGNzdicpKSk7CgovLyBUaGUgaW1wb3J0IGZpZWxkcwokc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF9pbXBvcnR1c2VycycsJHRoaXMtPkxhbmcoJ3Byb21wdF9pbXBvcnR1c2VycycpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaW1wb3J0dXNlcnN0b2dyb3VwJywkdGhpcy0+TGFuZygncHJvbXB0X2ltcG9ydGRlc3Rncm91cCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9pbXBvcnR1c2Vyc3RvZ3JvdXAnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfaW1wb3J0ZGVzdGdyb3VwJywKCQkJCQkgICAkdGhpcy0+R2V0R3JvdXBMaXN0KCkpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaW1wb3J0dXNlcnNmaWxlJywkdGhpcy0+TGFuZygncHJvbXB0X2ltcG9ydGZpbGVuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ltcG9ydHVzZXJzZmlsZScsCgkJJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2lucHV0X2ltcG9ydHVzZXJzZmlsZScsJycsNDApKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9pbXBvcnR1c2Vyc2J0bicsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnYnV0dG9uX2ltcG9ydHVzZXJzJywKCQkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ2ltcG9ydGNzdicpKSk7CiRzbWFydHktPmFzc2lnbignaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnLAoJCSR0aGlzLT5MYW5nKCdpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCcpKTsKCgokc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF91c2VyaGlzdG9yeW1haW50ZW5hbmNlJywKCQkkdGhpcy0+TGFuZygndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknKSk7CiRleHBvcnRsaXN0ID0gYXJyYXkoKTsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfYWxscmVjb3JkcycpXSA9IC0xOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmVob3Vyb2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfc2l4aG91cm9sZCcpXSA9ICc2aCc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3ZWx2ZWhvdXJvbGQnKV0gPSAnMTJoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lZGF5b2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25ld2Vla29sZCcpXSA9ICcxdyc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3b3dlZWtzb2xkJyldID0gJzJ3JzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lbW9udGhvbGQnKV0gPSAnMW0nOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV90aHJlZW1vbnRoc29sZCcpXSA9ICczbSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3NpeG1vbnRoc29sZCcpXSA9ICc2bSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZXllYXJvbGQnKV0gPSAnMXknOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywKCQkJCQkgICAkZXhwb3J0bGlzdCkpOwokc21hcnR5LT5hc3NpZ24oJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeScsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnYnV0dG9uX2V4cG9ydHVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnZXhwb3J0JykpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jbGVhcnVzZXJoaXN0b3J5JywKCQkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2NsZWFydXNlcmhpc3RvcnknLAoJCQkJCSAgICRleHBvcnRsaXN0KSk7CiRzbWFydHktPmFzc2lnbignYnV0dG9uX2NsZWFydXNlcmhpc3RvcnknLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2J1dHRvbl9jbGVhcnVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnY2xlYXInKSkpOwoKLy8gUHJvY2VzcyB0aGUgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbnRhc2tzLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_authtab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIHJldHVybjsKCiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9zZXRfYXV0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiRzbWFydHktPmFzc2lnbignc3VwcG9ydF9sb3N0dW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzdXBwb3J0X2xvc3R1bicsMSkpOwokc21hcnR5LT5hc3NpZ24oJ3N1cHBvcnRfbG9zdHB3JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0cHcnLDEpKTsKCiRzbWFydHktPmFzc2lnbigncHdmbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtaW5wd2xlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21pbl9wYXNzd29yZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtYXhwd2xlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCd1bmZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ21pbnVubGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWluX3VzZXJuYW1lbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ21heHVubGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJykpOwokc21hcnR5LT5hc3NpZ24oJ2Nvb2tpZV9rZWVwYWxpdmUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVfa2VlcGFsaXZlJywwKSk7CiRzbWFydHktPmFzc2lnbigndXNlY29va2llc3RvcmVtZW1iZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2Vjb29raWVzdG9yZW1lbWJlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdjb29raWVuYW1lJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZV9pc19lbWFpbCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpOwokc21hcnR5LT5hc3NpZ24oJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJykpOwokc21hcnR5LT5hc3NpZ24oJ2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdzaWduaW5fYnV0dG9uJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc2lnbmluX2J1dHRvbicsJHRoaXMtPkxhbmcoJ2xvZ2luJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJykpOwokc21hcnR5LT5hc3NpZ24oJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJykpOwokc21hcnR5LT5hc3NpZ24oJ2hpZGRlbl9maWVsZF9tYXJrZXInLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfbWFya2VyJywnISEnKSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJywnZ3JlZW4nKSk7CiRzbWFydHktPmFzc2lnbigndGh1bWJuYWlsX3NpemUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd0aHVtYm5haWxfc2l6ZScsNzUpKTsKCiRzbWFydHktPmFzc2lnbignc2VjdXJlX2ZpZWxkX21hcmtlcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9tYXJrZXInLCdeXicpKTsKJHNtYXJ0eS0+YXNzaWduKCdzZWN1cmVfZmllbGRfY29sb3InLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfY29sb3InLCd5ZWxsb3cnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnKSk7CiRzbWFydHktPmFzc2lnbigncGFnZWlkX2xvZ2luJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZF9sb2dvdXQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfbG9nb3V0JykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZF9hZnRlcnZlcmlmeScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5ncycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzJykpOwoKJGNnZWNvbSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnQ0dFY29tbWVyY2VCYXNlJyk7CiRzZWxmcmVnID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdTZWxmUmVnaXN0cmF0aW9uJyk7CmlmKCAkY2dlY29tICYmICRzZWxmcmVnICYmICRzZWxmcmVnLT5HZXRQcmVmZXJlbmNlKCdhbGxvd3BhaWRyZWdpc3RyYXRpb24nKSApCiAgewogICAgJG9wdHMgPSBhcnJheSgpOwogICAgJG9wdHNbJ25vbmUnXSA9ICR0aGlzLT5MYW5nKCdub25lJyk7CiAgICAkb3B0c1snZGVsZXRlJ10gPSAkdGhpcy0+TGFuZygnZGVsZXRlX3VzZXInKTsKICAgICRvcHRzWydleHBpcmUnXSA9ICR0aGlzLT5MYW5nKCdleHBpcmVfdXNlcicpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbWVyY2VfYWN0aW9ucycsJG9wdHMpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbV9vcmRlcmNhbmNlbGxlZCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyY2FuY2VsbGVkJywnbm9uZScpKTsKICAgICRzbWFydHktPmFzc2lnbignZWNvbW1fb3JkZXJkZWxldGVkJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJkZWxldGVkJywnbm9uZScpKTsKICB9CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWluX2F1dGh0YWIudHBsJyk7CiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_clearuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8gR2V0IHRoZSBzdGFydCBkYXRlCiRkYXRlID0gJy0xJzsKc3dpdGNoKCAkcGFyYW1zWydpbnB1dF9jbGVhcnVzZXJoaXN0b3J5J10gKQogIHsKICBjYXNlICcxaCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSBob3VyIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnNmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzYgaG91cnMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxMmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMWQnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgZGF5IGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMXcnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgd2VlayBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzJ3JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMW0nOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgbW9udGggYWdvJyk7CiAgICBicmVhazsKICBjYXNlICczbSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMyBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICc2bSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxeSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB5ZWFyIGFnbycpOwogICAgYnJlYWs7CiAgfQoKJGRiID0mICR0aGlzLT5HZXREYigpOwokcXVlcnkgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiOwokcGFybXMgPSBhcnJheSgpOwppZiggJGRhdGUgIT0gLTEgKQogIHsKICAgICRxdWVyeSAuPSAiIFdIRVJFIHJlZmRhdGUgPCA/IjsKICAgICRwYXJtc1tdID0gdHJpbSgkZGItPkRCVGltZVN0YW1wKCRkYXRlKSwiJyIpOwogIH0KCiRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcGFybXMgKTsKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicpOwovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_exportuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8gR2V0IHRoZSBzdGFydCBkYXRlCiRkYXRlID0gJy0xJzsKc3dpdGNoKCAkcGFyYW1zWydpbnB1dF9leHBvcnR1c2VyaGlzdG9yeSddICkKICB7CiAgY2FzZSAnMWgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgaG91ciBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzZoJzoKICAgICRkYXRlID0gc3RydG90aW1lKCc2IGhvdXJzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMTJoJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxMiBob3VycyBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzFkJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIGRheSBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzF3JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIHdlZWsgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcydyc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMiB3ZWVrcyBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzFtJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIG1vbnRoIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnM20nOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzMgbW9udGhzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnNm0nOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzYgbW9udGhzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMXknOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgeWVhciBhZ28nKTsKICAgIGJyZWFrOwogIH0KCiR1c2VyaW5mbyA9IGFycmF5KCk7CgovLyB3ZSB3YW50IHRvIGV4cG9ydCBhIGNzdiBmaWxlIGRvIHdlCmhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vZm9yY2UtZG93bmxvYWQnKTsKaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT11c2VyaGlzdG9yeS5jc3YnKTsKd2hpbGUoQG9iX2VuZF9jbGVhbigpKTsKCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKJGRvbmUgPSAwOwokc3RhcnQgPSAwOwokbnVtID0gMjsgLy8gdG9kbywgc2hvdWxkIGJlIGEgcHJlZmVyZW5jZQokcWJhc2UgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSAiOwokcGFybXMgPSBhcnJheSgpOwppZiggJGRhdGUgIT0gLTEgKQogIHsKICAgICRxYmFzZSAuPSAnIFdIRVJFIHJlZmRhdGUgPCA/JzsKICAgICRwYXJtc1tdID0gdHJpbSgkZGItPkRCVGltZVN0YW1wKCRkYXRlKSwiJyIpOwogIH0KCndoaWxlKCAkZG9uZSA9PSAwICkKICB7CiAgICAkcXVlcnkgPSAkcWJhc2UgLiAiIExJTUlUICRzdGFydCwkbnVtIjsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHF1ZXJ5LCAkcGFybXMgKTsKICAgIGlmKCAhJGRicmVzdWx0IHx8ICgkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgPT0gMCkgKQogICAgICB7CgkkZG9uZSA9IDE7CglicmVhazsKICAgICAgfQoKICAgICRvdXRwdXQgPSAnJzsKICAgIHdoaWxlKCAkZGJyZXN1bHQgJiYgISRkYnJlc3VsdC0+RU9GICkKICAgICAgewoJJGZpZWxkcyA9ICRkYnJlc3VsdC0+ZmllbGRzOwoJCgkkdWlkID0gJGZpZWxkc1sndXNlcmlkJ107CglpZiggJHVpZCA+IDAgKQoJICB7CgkgICAgaWYoICFpc3NldCggJHVzZXJpbmZvWyR1aWRdICkgKQoJICAgICAgewoJCSRyZXMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7CgkJJHVzZXJpbmZvWyR1aWRdID0gJHJlc1sxXTsKCSAgICAgIH0KCSAgICAkdXNlcm5hbWUgPSAkdXNlcmluZm9bJHVpZF1bJ3VzZXJuYW1lJ107CgkgICAgJGZpZWxkc1tdID0gJHVzZXJpbmZvWyR1aWRdWyd1c2VybmFtZSddOwoJICB9CgllbHNlCgkgIHsKCSAgICAkZmllbGRzW10gPSAndW5rbm93bic7CgkgIH0KCgkkb3V0cHV0IC49IGltcGxvZGUoJywnLCRmaWVsZHMpLiJcbiI7CgoJLy8gY2hlYXQsIGNvbnZlcnQgdXNlcmlkIHRvIHVzZXJuYW1lCgkkZGJyZXN1bHQtPk1vdmVOZXh0KCk7CiAgICAgIH0KICAgIGVjaG8gJG91dHB1dDsKICAgICRzdGFydCArPSAkbnVtOwogIH0KZXhpdCgpOwoKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_groupstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKICBnbG9iYWwgJGdDbXM7CiAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICRncm91cHMgPSAkdGhpcy0+R2V0R3JvdXBMaXN0RnVsbCgpOwogICRyb3djbGFzcyA9ICdyb3cxJzsKCiAgJHJvd2FycmF5ID0gYXJyYXkoKTsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oICdncm91cHNmb3VuZCcsICR0aGlzLT5MYW5nKCdncm91cHNmb3VuZCcpKTsKICBmb3JlYWNoKCAkZ3JvdXBzIGFzICRvbmVncm91cCApCiAgICB7CiAgICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdGdyb3VwcycpICkKCXsKCSAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwoJICAkb25lcm93LT5pZCA9ICRvbmVncm91cFsnaWQnXTsKCSAgJG9uZXJvdy0+bmFtZSA9CgkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkb25lZ3JvdXBbJ2dyb3VwbmFtZSddLAoJCQkJIGFycmF5ICgnZ3JvdXBfaWQnID0+ICRvbmVncm91cFsnaWQnXSkpOwkJCSAgICAgICAKCSAgJG9uZXJvdy0+ZGVzYyA9ICRvbmVncm91cFsnZ3JvdXBkZXNjJ107CgkgICRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKCSAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0Z3JvdXBzJykgKQoJICAgIHsKCSAgICAgICRvbmVyb3ctPmVkaXRsaW5rID0KCQkkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsCgkJCQkgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywKCQkJCQkJCQkJCSAgICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkgICAgIGFycmF5ICgnZ3JvdXBfaWQnID0+ICRvbmVncm91cFsnaWQnXSkpOwoJICAgICAgJG9uZXJvdy0+ZXhwb3J0bGluayA9CgkJJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2FkbWluX2V4cG9ydGdyb3VwJywgJHJldHVybmlkLAoJCQkJICAgJzxpbWcgc3JjPSIuLi9pbWFnZXMvY21zL3htbF9yc3MuZ2lmIiBhbHQ9InhtbCIvPicsCgkJCQkgICBhcnJheSgnZ3JvdXBfaWQnPT4kb25lZ3JvdXBbJ2lkJ10sCgkJCQkJICdkaXNhYmxlX2J1ZmZlcic9PjEsCgkJCQkJICdkaXNhYmxlX3RoZW1lJz0+MSksCgkJCQkgICAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InN5c3RlbWljb24iIHRpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9yc3NleHBvcnQnKS4nIicpOwoJICAgIH0KCSAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdyZW1vdmVncm91cHMnKSAmJgoJICAgICAgY291bnQoJHRoaXMtPkdldFVzZXJzSW5Hcm91cCggJG9uZWdyb3VwWydpZCddICkpID09IDAgKQoJICAgIHsKCSAgICAgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPQoJCSR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdkb19kZWxldGVncm91cCcsICRyZXR1cm5pZCwKCQkJCSAgICAgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UgKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkJCQkJCQkgICAkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCgkJCQkgICAgIGFycmF5ICgnZ3JvdXBfaWQnID0+ICRvbmVncm91cFsnaWQnXSksCgkJCQkgICAgICR0aGlzLT5MYW5nICgnYXJleW91c3VyZV9kZWxldGVncm91cCcpKTsKCSAgICB9CgkgIAoJICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkgICgkcm93Y2xhc3MgPT0gInJvdzEiID8gJHJvd2NsYXNzID0gInJvdzIiIDogJHJvd2NsYXNzID0gInJvdzEiKTsKCX0KCiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpdGVtcycsJHJvd2FycmF5KTsKICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdncm91cHNmb3VuZCcsICR0aGlzLT5MYW5nKCdncm91cHNmb3VuZCcpICk7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2lkJykpOwogICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ25hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZGVzY3RleHQnLCAkdGhpcy0+TGFuZygnZGVzY3JpcHRpb24nKSk7CiAgICB9CgogIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdGdyb3VwcycpICkKICAgIHsKICAgICAgJHByb3BkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICRzbWFydHktPmFzc2lnbigncHJvcGNvdW50Jyxjb3VudCgkcHJvcGRlZm5zKSk7CiAgICAgIGlmKCBpc19hcnJheSgkcHJvcGRlZm5zKSAmJiBjb3VudCgkcHJvcGRlZm5zKSA+IDAgKQoJewoJICAkc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAKCQkJICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsCgkJCQkJICAgICAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLAoJCQkJCQkJCQkJCSAgJHRoaXMtPkxhbmcoJ2FkZGdyb3VwJyksJycsJycsJ3N5c3RlbWljb24nKSkuJyAnLgoJCQkgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGRncm91cCcsCgkJCQkJICAgICAkcmV0dXJuaWQsCgkJCQkJICAgICAkdGhpcy0+TGFuZygnYWRkZ3JvdXAnKSkpOwoJfQoKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbXBvcnRsaW5rJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRtaW5faW1wb3J0Z3JvdXAnLCAkcmV0dXJuaWQsCgkJCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZicsCgkJCQkJCQkJCQkgICAgICAkdGhpcy0+TGFuZygnaW1wb3J0Z3JvdXAnKSwnJywnJywnc3lzdGVtaWNvbicpKS4nICcuCgkJICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkbWluX2ltcG9ydGdyb3VwJywKCQkJCQkgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnaW1wb3J0Z3JvdXAnKSkpOwogICAgICAKICAgIH0KCiAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCAnZ3JvdXBsaXN0LnRwbCcgKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_importusers.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKCi8vIEEgZnVuY3Rpb24gdG8gcmVhZCBhIGxpbmUgZnJvbSB0aGUgZmlsZQovLyB0cmltIGFueSBuZXdsaW5lIG9yIHdoaXRlc3BhY2UgY2hhcmFjdGVycyBmcm9tIGl0Ci8vIGNsZWFyIGFueSBjb21tZW50cyBmcm9tIHRoZSBsaW5lCi8vIGFuZCByZXR1cm4gd2hhdCdzIGxlZnQuCmZ1bmN0aW9uIF9mZ2V0cygkZmgsJG51bSA9ICcnKQp7CiAgaWYoICEkZmggKSByZXR1cm47CiAgJHBvczEgPSBmdGVsbCgkZmgpOwogIAogICRsaW5lID0gZmdldHMoJGZoLCRudW0pOwogIGlmKCBzdHJwb3MoJGxpbmUsIlxyIikgPT09IEZBTFNFICkKICAgIHsKICAgICAgcmV0dXJuICRsaW5lOwogICAgfQoKICAvLyBsaW5lIGlzIHByb2JhYmx5IGEgY3JhcHB5IG1hYyBsaW5lLgogICRsZW4xID0gc3RybGVuKCRsaW5lKTsKICAkcG9zID0gc3RycG9zKCRsaW5lLCJcciIpOwoKICAkbGluZSA9IHN1YnN0cigkbGluZSwwLCRwb3MpOwogIGZzZWVrKCRmaCwoJGxlbjEgLSAkcG9zIC0xICkgKiAtMSxTRUVLX0NVUik7CiAgcmV0dXJuICRsaW5lOwp9CgoKZnVuY3Rpb24gX2dldGxpbmUoJiRmaCwkY29tbWVudHMgPSAnLy8nKQp7CiAgJGlubGluZSA9IF9mZ2V0cygkZmgsNDA5Nik7CiAgJHBvcyA9IHN0cnBvcygkaW5saW5lLCRjb21tZW50cyk7CiAgaWYoICRwb3MgIT09IEZBTFNFICkKICAgIHsKICAgICAgJGxpbmUgPSBzdWJzdHIoJGlubGluZSwwLCRwb3MpOwogICAgfQogIHJldHVybiB0cmltKCRpbmxpbmUpOwp9CgpmdW5jdGlvbiBfZXJyb3JvdXQoJHN0cikKewogIGVjaG8gJzxkaXYgY2xhc3M9ImVycm9yIj4nLiRzdHIuIjwvZGl2PlxuIjsKICBmbHVzaCgpOyBAb2JfZmx1c2goKTsKfQoKZnVuY3Rpb24gX3Jlc3VsdG91dCgkcHJvbXB0LCR2YWx1ZSkKewogIGVjaG8gJzxkaXYgY2xhc3M9InJlcG9ydGxpbmUiPic7CiAgZWNobyAnPHAgY2xhc3M9InByb21wdCI+Jy4kcHJvbXB0Lic8L3A+JzsKICBlY2hvICc8cCBjbGFzcz0idmFsdWUiPicuJHZhbHVlLic8L3A+JzsKICBlY2hvICc8L2Rpdj4nOwp9CgovLwovLyAxLiAgQ2hlY2sgdGhlIGlucHV0IHBhcmFtZXRlcnMKLy8gCmlmKCAhaXNzZXQoICRwYXJhbXNbJ2lucHV0X2ltcG9ydGRlc3Rncm91cCddICkgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLGFycmF5KCdlcnJvcic9PiR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSkpOwogICAgcmV0dXJuOwogIH0KCiRrZXkgPSAkaWQuJ2lucHV0X2ltcG9ydHVzZXJzZmlsZSc7CmlmKCAoIWlzc2V0KCAkX0ZJTEVTWyRrZXldICkpIAogICAgfHwgJF9GSUxFU1ska2V5XVsnc2l6ZSddIDw9IDAgCiAgICB8fCAkX0ZJTEVTWyRrZXldWydlcnJvciddICE9IDAgKQogIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLAoJCQkgYXJyYXkoJ2Vycm9yJz0+JHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdfdXBsb2FkJykpKTsKICAgIHJldHVybjsKICB9CgoKaWYoICFmZXVfdXRpbHM6OnVzaW5nX3N0ZF9jb25zdW1lcigpICkKICB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vdHN1cHBvcnRlZCcpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nKTsKICB9CgokZ3JvdXBzID0gYXJyYXkoKTsKJGdyb3VwcHJvcG1hcCA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkcGFyYW1zWydpbnB1dF9pbXBvcnRkZXN0Z3JvdXAnXSApOwokZ3JvdXBpbmZvID0gJHRoaXMtPkdldEdyb3VwSW5mbyggJHBhcmFtc1snaW5wdXRfaW1wb3J0ZGVzdGdyb3VwJ10gKTsJCmlmKCAkZ3JvdXBwcm9wbWFwWzBdID09IEZBTFNFICkKewoJCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLAoJCQkJICAgICBhcnJheSgnZXJyb3InPT4kdGhpcy0+TGFuZygnZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnKSkpOwoJCXJldHVybjsKfQokcHJvcGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKaWYoICEkcHJvcGRlZm5zICkKewogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLAoJCWFycmF5KCdlcnJvcic9PiR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wZXJ0eWRlZm5zJykpKTsKCXJldHVybjsKfQokZ3JvdXBzWyAkZ3JvdXBpbmZvWydncm91cG5hbWUnXSBdID0gICRncm91cHByb3BtYXA7CiRkZWZhdWx0X2dyb3VwID0gJGdyb3VwaW5mb1snZ3JvdXBuYW1lJ107CgokaW1hZ2VEaXIgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwokaW1hZ2VEaXIgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCAnZmV1c2VycycpOwoKLy8KLy8gMi4gIE9wZW4gdGhlIHVwbG9hZGVkIGZpbGUKLy8KJGhhbmRsZSA9IGZvcGVuKCRfRklMRVNbJGtleV1bJ3RtcF9uYW1lJ10sICJyIik7CmlmKCAhJGhhbmRsZSApCnsKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLAoJCQkgICAgIGFycmF5KCdlcnJvcic9PiR0aGlzLT5MYW5nKCdlcnJvcl9jb3VsZG5vdG9wZW5maWxlJykpKTsKCXJldHVybjsKfQoKLy8KLy8gMy4gIFJlYWQgdGhlIGZpcnN0IGxpbmUsIHZhbGlkYXRlIGl0J3Mgc3ludGF4LCBhbmQgYnVpbGQgYSBmaWVsZCBtYXAKLy8KJGZpcnN0bGluZSA9IF9nZXRsaW5lKCRoYW5kbGUpOwppZiggc3Vic3RyKCRmaXJzdGxpbmUsJyMjJykgIT0gMCApCnsKCSMgdGhlIHRvcCBsaW5lIGRvZXNuJ3QgaGF2ZSB0d28gcG91bmQgY2hhcnMKCSR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnYWRtaW4nLAoJCQkgICAgIGFycmF5KCdlcnJvcic9PiR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWxlZm9ybWF0JykpKTsKCXJldHVybjsKfQokdG1wbWFwID0gY2dlX2FycmF5OjpzbWFydF9leHBsb2RlKCRmaXJzdGxpbmUpOwppZiggY291bnQoJHRtcG1hcCkgPCAzICkKewoJIyBpbnN1ZmZpY2llbnQgZmllbGRzCgkkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2FkbWluJywKCQkJICAgICBhcnJheSgnZXJyb3InPT4kdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCcpKSk7CglyZXR1cm47Cn0KJGZpZWxkbWFwID0gYXJyYXkoKTsKJGk9MDsKZm9yZWFjaCggJHRtcG1hcCBhcyAkdG1wICkKewoJICBpZiggaXNzZXQoJGZpZWxkbWFwWyR0bXBdKSApCgl7CgkgICMgZHVwbGljYXRlIGZpZWxkIHJlZmVyZW5jZQoJICBkaWUoJ2Vycm9yIDMnKTsKCSAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicsCgkJCSAgICAgICBhcnJheSgnZXJyb3InPT4kdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCcpKSk7CgkgIHJldHVybjsKCX0KJGZpZWxkbWFwWyB0cmltKCR0bXAsJ1wiIycpIF0gPSAkaTsKJGkrKzsKfQoKCi8vCi8vIDQuICBDaGVjayB0aGUgZmllbGQgbWFwIGFnYWluc3QgdGhlIHJlcXVpcmVkIGZpZWxkcywgYW5kIHRoZSBncm91cHMgcHJvcGVydGllcwovLwoKLy8KLy8gNC4xIENoZWNrIGZvciBzdGFuZGFyZCBmaWVsZHMKJGhhdmVfdXNlcm5hbWUgPSBGQUxTRTsKJGhhdmVfcGFzc3dvcmQgPSBGQUxTRTsKJGhhdmVfZXhwaXJlcyAgPSBGQUxTRTsKJGhhdmVfZ3JvdXBzICA9IEZBTFNFOwokaGF2ZV91c2VyaWQgID0gRkFMU0U7Cgpmb3JlYWNoKCAkZmllbGRtYXAgYXMgJG9uZWZpZWxkbmFtZSA9PiAkaW5kZXggKQp7IAoJaWYoICRvbmVmaWVsZG5hbWUgPT0gJ3VzZXJuYW1lJyApCgl7CgkJJGhhdmVfdXNlcm5hbWUgPSBUUlVFOwoJCWNvbnRpbnVlOwoJfQoKCWlmKCAkb25lZmllbGRuYW1lID09ICdwYXNzd29yZCcgKQoJewoJCSRoYXZlX3Bhc3N3b3JkID0gVFJVRTsKCQljb250aW51ZTsKCX0KCglpZiggJG9uZWZpZWxkbmFtZSA9PSAnZXhwaXJlcycgKQoJewoJCSRoYXZlX2V4cGlyZXMgPSBUUlVFOwoJCWNvbnRpbnVlOwoJfQoKCWlmKCAkb25lZmllbGRuYW1lID09ICdncm91cG5hbWUnICkKCXsKCQkkaGF2ZV9ncm91cHMgPSBUUlVFOwoJCWNvbnRpbnVlOwoJfQoJaWYoICRvbmVmaWVsZG5hbWUgPT0gJ3VzZXJpZCcgKQoJewoJCSRoYXZlX3VzZXJpZCA9IFRSVUU7CgkJY29udGludWU7Cgl9Cn0KaWYoICRoYXZlX3VzZXJuYW1lID09PSBGQUxTRSApCnsKCS8vIGNvdWxkIG5vdCBmaW5kIHJlcXVpcmVkIGZpZWxkIAoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicsCgkJCSAgICAgYXJyYXkoJ2Vycm9yJz0+JHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnLAoJCQkJCQkJJ3VzZXJuYW1lJykpKTsKCXJldHVybjsKfQoKLy8gT25seSB1c2UgaWYgd2UgYXJlbid0IGltcG9ydGluZyBhIGdyb3VwIGZpZWxkIC0tIFRoaXMgd2lsbCBiZSBkb25lIG9uIHRoZSB1c2VyIGxldmVsIHNpbmNlIHdlIG5vdyB1c2UgYSBncm91cCBmaWVsZAovLyA0LjIgY2hlY2sgZm9yIHJlcXVpcmVkIHByb3BlcnRpZXMKLy8KCmlmICgkaGF2ZV9ncm91cHMgPT09IEZBTFNFKQp7CgkkdWZpZWxkbWFwID0gYXJyYXkoKTsKCSR1Z3JvdXBzID0gJHBhcmFtc1snaW5wdXRfaW1wb3J0ZGVzdGdyb3VwJ107Cglmb3JlYWNoKCAkZ3JvdXBwcm9wbWFwIGFzICRvbmVncm91cHByb3AgKQoJewoJCWlmKCAkb25lZ3JvdXBwcm9wWydyZXF1aXJlZCddICE9IDApCgkJewoJCQoJCQlpZiggJG9uZWdyb3VwcHJvcFsncmVxdWlyZWQnXSA9PSAyICYmICFpc3NldCgkZmllbGRtYXBbJG9uZWdyb3VwcHJvcFsnbmFtZSddIF0pICkKCQkJewoJCQkJLy8gY291bGQgbm90IGZpbmQgcmVxdWlyZWQgZmllbGQgCgkJCQkgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicsCgkJCQkJCSAgICAgIGFycmF5KCdlcnJvcic9PiR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywKCQkJCQkJCQkJCSAkb25lZ3JvdXBwcm9wWyduYW1lJ10pKSk7CgkJCQlyZXR1cm47CgkJCX0KCQkJaWYoIGlzc2V0KCRmaWVsZG1hcFskb25lZ3JvdXBwcm9wWyduYW1lJ10gXSkgKQoJCQl7CgkJCQkkdWZpZWxkbWFwWyRvbmVncm91cHByb3BbJ25hbWUnXV0gPSAkZmllbGRtYXBbJG9uZWdyb3VwcHJvcFsnbmFtZSddXTsKCQkJfQoJCX0KCX0KfQoKLy8KLy8gNS4gIFByZXBhcmUgZm9yIHByb2dyZXNzIG91dHB1dAovLwplY2hvICcKPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCWRpdi5wcm9ncmVzcyB7CgkJY29sb3I6ICMzODQ2NTQ7ICAKCX0KCWRpdi5lcnJvciB7CgkJY29sb3I6ICNjYzAwMDA7Cgl9CglkaXYucmVwb3J0bGluZSB7CgkJY2xlYXI6IGxlZnQ7CgkJcGFkZGluZy10b3A6IDFweDsKCQl3aWR0aDogOTclOyAKCQlvdmVyZmxvdzogaGlkZGVuOwoJfQoJcC5wcm9tcHQgewoJZm9udC13ZWlnaHQ6IG5vcm1hbDsKCQlmbG9hdDogbGVmdDsKCQlwYWRkaW5nLXRvcDogNXB4OwoJCXBhZGRpbmctcmlnaHQ6IDVweDsKCQl3aWR0aDogMTVlbTsKCQltYXJnaW4tYm90dG9tOiAwLjVlbTsKCX0KCXAudmFsdWUgewoJCWZvbnQtd2VpZ2h0OiBib2xkOwoJCWZsb2F0OiBsZWZ0OwoJCXBhZGRpbmctdG9wOiA1cHg7CgkJbWFyZ2luLWJvdHRvbTogMC41ZW07Cgl9Cjwvc3R5bGU+JzsKZWNobyAnCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxkaXYgY2xhc3M9InByb2dyZXNzIiBhbGlnbj0iY2VudGVyIj4nOwoKCi8vCi8vIDYuICBCZWdpbiBJbXBvcnRpbmcgUmVjb3JkcwovLwokbGluZW5vID0gMTsgLy8gd2UndmUgYWxyZWFkeSByZWFkIG9uZSBsaW5lCiRlcnJvcnMgPSAwOwokYWRkZWQgID0gMDsKd2hpbGUoICFmZW9mKCAkaGFuZGxlICkgKQp7CgkvLwoJLy8gNi4xIEdldCBhIGxpbmUsIGFuZCBjb252ZXJ0IGl0IGludG8gZmllbGRzCgkkbGluZSA9IF9nZXRsaW5lKCAkaGFuZGxlICk7CgkkbGluZW5vKys7CglpZiggJGxpbmUgPT0gJycgKSBjb250aW51ZTsKCSRmaWVsZHMgPSBjZ2VfYXJyYXk6OnNtYXJ0X2V4cGxvZGUoICRsaW5lICk7CgkkaW1wb3J0ZXJyb3IgPSBGQUxTRTsKCQoJLy8KCS8vIDYuMiBnZXQgdGhlIHVzZXJuYW1lLCBwYXNzd29yZCBhbmQgZXhwaXJlcyBkYXRhCgkvLyAgICAgYW5kIGFkZCB0aGUgdXNlcgoJJHVwcm9wcz1hcnJheSgpOwoJJHVzZXJpZCA9ICcnOwoJJHVzZXJuYW1lID0gdHJpbSgkZmllbGRzWyRmaWVsZG1hcFsndXNlcm5hbWUnXV0sJ1wiJyk7CgkkcGFzc3dvcmQgPSAnY2hhbmdlbWUnOyAgICAgICAgICAgICAgIC8vIHRvZG8sIGN1c3RvbWl6YWJsZQoJJGV4cGlyZXMgID0gc3RydG90aW1lKCIrMTAgeWVhcnMiKTsgICAvLyB0b2RvLCBjdXN0b21pemFibGUKCWlmKCAkaGF2ZV9wYXNzd29yZCApCgl7CgkJLy8gZXhwZWN0IHBsYWludGV4dCBwYXNzd29yZAoJCSRwYXNzd29yZCA9IHRyaW0oJGZpZWxkc1skZmllbGRtYXBbJ3Bhc3N3b3JkJ11dLCdcIicpOwoJfQoJaWYoICRoYXZlX2V4cGlyZXMgKQoJewoJCS8vIGV4cGVjdCBhIHN0cmluZyB0aW1lCgkJJGV4cGlyZXMgPSBzdHJ0b3RpbWUodHJpbSgkZmllbGRzWyRmaWVsZG1hcFsnZXhwaXJlcyddXSwnXCInKSk7CgkgIH0KCWlmKCAkaGF2ZV91c2VyaWQgICYmICggJGZpZWxkc1skZmllbGRtYXBbJ3VzZXJpZCddXSAhPSAnJyApKQoJewoJCSR1c2VyaWQgPSB0cmltKCRmaWVsZHNbJGZpZWxkbWFwWyd1c2VyaWQnXV0sJ1wiJyk7CgkJaWYoICEkaGF2ZV9wYXNzd29yZCApCgkJewoJCQkkcGFzc3dvcmQgPSAnJzsKCQl9Cgl9CgkKCWlmKCAkaGF2ZV9ncm91cHMgKQoJewoJCSR1ZmllbGRtYXAgPSBhcnJheSgpOwoJCSRncnBzdHJpbmcgPSB0cmltKCRmaWVsZHNbJGZpZWxkbWFwWydncm91cG5hbWUnXV0sJ1wiJyk7CgkJaWYoICRncnBzdHJpbmcgPT0gJycgKQoJCXsKCQkJJGdycHN0cmluZyA9ICRkZWZhdWx0X2dyb3VwOwoJCX0KCQkkZ3JvdXBfYXJyYXkgPSBleHBsb2RlKCc6JywgJGdycHN0cmluZyk7CgkJJHVncm91cHMgPSBhcnJheSgpOwoJCWZvcmVhY2goICRncm91cF9hcnJheSBhcyAkbmFtZSkKCQl7CgkJCSRuYW1lID0gdHJpbSgkbmFtZSwnXCInKTsgIC8vIE1ha2Ugc3VyZSB0aGUgYXJlIG5vIFwiIGluIHRoZSBmaWVsZAoJCQkkZ2lkID0gJHRoaXMtPkdldEdyb3VwSUQoJG5hbWUpOwoJCQkkdWdyb3Vwc1tdID0gJGdpZDsKCQkJaWYoICFpc3NldCgkZ3JvdXBzWyRuYW1lXSkgKQoJCQl7CgkJCQkkZ3JvdXBwcm9wbWFwID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKCQkJCWlmKCAkZ3JvdXBwcm9wbWFwWzBdID09IEZBTFNFICkKCQkJCXsKCQkJCQkJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdhZG1pbicsCgkJCQkJCQkJICAgICBhcnJheSgnZXJyb3InPT4kdGhpcy0+TGFuZygnZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnKSkpOwoJCQkJCQkJICAgcmV0dXJuOwoJCQkJfWVsc2UKCQkJCXsKCQkJCQkkZ3JvdXBzWyRuYW1lXSA9ICRncm91cHByb3BtYXA7CgkJCQl9CgkJCX0KCQkJZm9yZWFjaCggJGdyb3Vwc1skbmFtZV0gYXMgJG9uZWdyb3VwcHJvcCApCgkJCXsKCQkJCWlmKCAhaXNzZXQoJHVmaWVsZG1hcFsgJG9uZWdyb3VwcHJvcFsnbmFtZSddIF0pICYmICAkb25lZ3JvdXBwcm9wWydyZXF1aXJlZCddICE9IDApCgkJCQl7CgkJCQkKCQkJCQlpZiggJG9uZWdyb3VwcHJvcFsncmVxdWlyZWQnXSA9PSAyICYmICghaXNzZXQoJGZpZWxkbWFwWyRvbmVncm91cHByb3BbJ25hbWUnXSBdKSB8fCAkZmllbGRzWyRmaWVsZG1hcFskb25lZ3JvdXBwcm9wWyduYW1lJ10gXV0gPT0gJycpICkKCQkJCQl7CgkJCQkJCS8vIGNvdWxkIG5vdCBmaW5kIHJlcXVpcmVkIGZpZWxkIAoJCQkJCQlfZXJyb3JvdXQoJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnLCRvbmVncm91cHByb3BbJ25hbWUnXS4nIGZvciBsaW5lICcuJGxpbmVubykpOwoJCQkJCQkkaW1wb3J0ZXJyb3IgPSBUUlVFOwoJCQkJCQkkZXJyb3JzKys7CgkJCQkJCWJyZWFrOwoJCQkJCX0KCQkJCQlpZiggaXNzZXQoJGZpZWxkbWFwWyRvbmVncm91cHByb3BbJ25hbWUnXSBdKSApCgkJCQkJewoJCQkJCQkkdWZpZWxkbWFwWyRvbmVncm91cHByb3BbJ25hbWUnXV0gPSAkZmllbGRtYXBbJG9uZWdyb3VwcHJvcFsnbmFtZSddXTsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9Cgl9Ci8vCi8vIDYuMyBkYXRhIHZhbGlkYXRpb24gb24gdGhlIHByb3BlcnRpZXMKCWZvcmVhY2goICR1ZmllbGRtYXAgYXMgJGtleSA9PiAkaW5kZXggKQoJewoJCSRzZXRwcm9wID0gVFJVRTsKCQlzd2l0Y2goICRrZXkgKQoJCXsKCQkJY2FzZSAndXNlcm5hbWUnOgoJCQljYXNlICdwYXNzd29yZCc6CgkJCWNhc2UgJ2V4cGlyZXMnOgoJCQljYXNlICdncm91cG5hbWUnOgoJCQljYXNlICd1c2VyaWQnOwoJCQkJLy8gdGhlc2UgYXJlIGFscmVhZHkgaGFuZGxlZAoJCQkJJHNldHByb3AgPSBGQUxTRTsKCQkJCWJyZWFrOwoJCQlkZWZhdWx0OgoJCQlicmVhazsKCQl9CgkJJHByb3B2YWx1ZSA9IHRyaW0oJGZpZWxkc1skaW5kZXhdLCdcIicpOwoKCQlpZiggJHNldHByb3AgPT0gRkFMU0UgIHx8ICAkcHJvcHZhbHVlID09ICcnKQoJCXsKCQkJY29udGludWU7CgkJfQoKCgkJLy8gbm93IHdlIGhhdmUgdG8gaGFuZGxlIHNwZWNpYWwgcHJvcGVydHkgdHlwZXMKCQlpZiggIWlzc2V0KCAkcHJvcGRlZm5zWyRrZXldICkgKQoJCXsJCgkJCS8vIFRPRE8gbGFuZygpIGZvciB0aGlzCgkJCV9lcnJvcm91dCgkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0dXNlcnMnLCRsaW5lbm8sICdQcm9wICcuJGtleS4nIGlzIG1pc3NpbmcnKSApOwoJCQkkaW1wb3J0ZXJyb3IgPSBUUlVFOwoJCQkkZXJyb3JzKys7CgkJCWNvbnRpbnVlOwoJCX0KCgkJc3dpdGNoKCAkcHJvcGRlZm5zWyRrZXldWyd0eXBlJ10gKQoJCXsKCQkJY2FzZSAyOiAvLyBlbWFpbAoJCQkJJHJlc3VsdCA9ICR0aGlzLT5Jc1ZhbGlkRW1haWxBZGRyZXNzKCRwcm9wdmFsdWUsICR1aWQpOwoJCQkJaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKQoJCQkJewoJCQkJCV9lcnJvcm91dCgkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0dXNlcnMnLCRsaW5lbm8sICRyZXN1bHRbMV0sJGtleSkgKTsKCQkJCQkkaW1wb3J0ZXJyb3IgPSBUUlVFOwoJCQkJCSRlcnJvcnMrKzsKCQkJCQlicmVhazsKCQkJCX0KCQkJY2FzZSAwOiAvLyB0ZXh0CgkJCQkvLyB2YWxpZGF0ZSBpdCdzIGxlbmd0aAoJCQkJaWYoIHN0cmxlbigkcHJvcHZhbHVlKSA+ICRwcm9wZGVmbnNbJGtleV1bJ21heGxlbmd0aCddICkKCQkJCXsKCQkJCQlfZXJyb3JvdXQoJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHVzZXJzJywkbGluZW5vLAoJCQkJCQkJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJywka2V5KSkpOwoJCQkJCSRpbXBvcnRlcnJvciA9IFRSVUU7CgkJCQkJJGVycm9ycysrOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgMTogLy8gY2hlY2tib3gKCQkJY2FzZSAzOiAvLyB0ZXh0YXJlYQoJCQkJLy8gbm8gdmFsaWRhdGlvbiBoZXJlCgkJCQlicmVhazsKCQkJY2FzZSA0OiAvLyBkcm9wZG93bgoJCQljYXNlIDU6IC8vIG11bHRpc2VsZWN0CgkJCWNhc2UgNzogLy8gcmFkaW9idXR0b24KCQkJCS8vIGNoZWNrIGVhY2ggb2YgdGhlIHZhbHVlcyBpbiB0aGUgc3RyaW5nCgkJCQkkb3B0aW9ucyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRrZXkpOwoJCQkJJHRtcHZhbHVlcyA9IGV4cGxvZGUoJzonLCRwcm9wdmFsdWUpOwoJCQkJJHRtcDIgPSBhcnJheSgpOwoJCQkJZm9yZWFjaCggJHRtcHZhbHVlcyBhcyAkb25ldmFsdWUgKQoJCQkJewoJCQkJCWZvcmVhY2goICRvcHRpb25zIGFzICRvcHR0ZXh0ID0+ICRvcHRuYW1lICkKCQkJCQl7CgkJCQkJCWlmKCAkb3B0dGV4dCA9PSAkb25ldmFsdWUgKQoJCQkJCQl7CgkJCQkJCQkkdG1wMltdID0gJG9wdG5hbWU7CgkJCQkJCQlicmVhazsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJCWlmKCBjb3VudCgkdG1wMikgIT0gY291bnQoJHRtcHZhbHVlcykgKQoJCQkJewoJCQkJCV9lcnJvcm91dCgkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0dXNlcnMnLCRsaW5lbm8sCgkJCQkJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywka2V5KSkpOwoJCQkJCSRpbXBvcnRlcnJvciA9IFRSVUU7CgkJCQkJJGVycm9ycysrOwoJCQkJfQoJCQkJJHByb3B2YWx1ZSA9IGltcGxvZGUoJywnLCR0bXAyKTsKCQkJCWJyZWFrOwoKCQkJY2FzZSA2OiAvLyBpbWFnZQoJCQkJLy8gZW5zdXJlIHRoZSBpbWFnZSBleGlzdHMKCQkJCWlmKCAhZmlsZV9leGlzdHMoICRpbWFnZURpci5ESVJFQ1RPUllfU0VQQVJBVE9SLiRwcm9wdmFsdWUgKSApCgkJCQl7CgkJCQkJX2Vycm9yb3V0KCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnR1c2VycycsJGxpbmVubywKCQkJCQkJCSAgICAgICR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnLCRwcm9wdmFsdWUpKSk7CgkJCQkJJGltcG9ydGVycm9yID0gVFJVRTsKCQkJCQkkZXJyb3JzKys7CgkJCQl9CgkJCQlicmVhazsKCQkJY2FzZSA4OiAvLyBkYXRlCgkJCQkkdG1wID0gZXhwbG9kZSgnLScsJHByb3B2YWx1ZSk7CgkJCQkkcHJvcHZhbHVlID0gbWt0aW1lKDAsMCwwLCR0bXBbMF0sJHRtcFsxXSwkdG1wWzJdKTsKCQkJCWJyZWFrOwoJCX0KCgkJaWYoICEkaW1wb3J0ZXJyb3IgKQoJCXsKCQkJJHVwcm9wc1tdID0gJGtleS4nPScuJHByb3B2YWx1ZTsKCQl9Cgl9IC8vIGZvcmVhY2gKCgkvLyAKCS8vIDYuNCBDbGVhbnVwLCBTZW5kIHRoZSBldmVudAoJLy8gICAgIGFuZCBkbyBhdWRpdGluZwoJaWYoICRpbXBvcnRlcnJvciA9PSBGQUxTRSApCgl7CgkJaWYgKCAkaGF2ZV91c2VyaWQgJiYgJHVzZXJpZCAhPSAiIikKCQl7CgkJCSRyZXN1bHQgPSAkdGhpcy0+U2V0VXNlcigkdXNlcmlkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKTsKCQl9ZWxzZQoJCXsKCQkJJHJlc3VsdCA9ICR0aGlzLT5BZGRVc2VyKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKTsKCQl9CgkJaWYoICRyZXN1bHRbMF0gPT09IEZBTFNFICkKCQl7CgkJCQlfZXJyb3JvdXQoJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHVzZXJzJywkbGluZW5vLCRyZXN1bHRbMV0pKTsKCQkJCSRlcnJvcnMrKzsKCQkJCWNvbnRpbnVlOyAKCQkgfSAKCQkkdWlkID0gJHJlc3VsdFsxXTsKCQkkdGhpcy0+U2V0VXNlckdyb3VwcygkdWlkLCR1Z3JvdXBzKTsgCgkJJHJlc3VsdCA9ICR0aGlzLT5TZXRVc2VyUHJvcGVydGllcygkdWlkLCR1cHJvcHMpOwoJCWlmKCAkcmVzdWx0ID09IEZBTFNFICkKCQl7CgkJCQlfZXJyb3JvdXQoJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHVzZXJzJywkbGluZW5vLCJFcnJvciBTZXR0aW5nIFVzZXIgUHJvcGVydGllcyIpKTsKCQkJCSRlcnJvcnMrKzsKCQkJCWNvbnRpbnVlOyAKCQkgfSAKCQkkYWRkZWQrKzsKCQkvLyBzZW5kIHRoZSBldmVudAoJCS8vIGFkZCBzb21ldGhpbmcgdG8gdGhlIGF1ZGl0IGxvZwoJfQp9IC8vIHdoaWxlCgoKLy8KLy8gNy4gIERpc3BsYXkgdGhlICdmaW5pc2hlZCcgZm9ybSwgYW5kIGNsb3NlIHRoZSBmaWxlCi8vCmZjbG9zZSgkaGFuZGxlKTsKJGZvcm10ZXh0ID0gJyc7CiRmb3JtdGV4dCAuPSAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnZGVmYXVsdGFkbWluJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLAoJCQkJICAgIGFycmF5KCdhY3RpdmVfdGFiJz0+J2FkbWluJykpOwokZm9ybXRleHQgLj0gJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnc3VibWl0JywkdGhpcy0+TGFuZygncHJvbXB0X3JldHVybicpKTsKJGZvcm10ZXh0IC49ICR0aGlzLT5DcmVhdGVGb3JtRW5kKCk7CQkJCSAgICAKZWNobyAnPC9kaXY+PCEtLSBwcm9ncmVzcyAtLT4nOwplY2hvICc8cD4nLiR0aGlzLT5MYW5nKCdpbXBvcnRfY29tcGxldGVfbXNnJykuJzwvcD4nOwpfcmVzdWx0b3V0KCR0aGlzLT5MYW5nKCdwcm9tcHRfbGluZXNwcm9jZXNzZWQnKSwkbGluZW5vKTsKX3Jlc3VsdG91dCgkdGhpcy0+TGFuZygncHJvbXB0X2Vycm9ycycpLCRlcnJvcnMpOwpfcmVzdWx0b3V0KCR0aGlzLT5MYW5nKCdwcm9tcHRfcmVjb3Jkc2FkZGVkJyksJGFkZGVkKTsKZWNobyAnPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+JzsKZWNobyAnPHAgY2xhc3M9InBhZ2VpbnB1dCI+Jy4kZm9ybXRleHQuJzwvcD4nOwplY2hvICc8L2Rpdj48IS0tIHBhZ2VvdmVyZmxvdyAtLT4nOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_lostusername_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKaWYoICEkZ0NtcyApIHJldHVybjsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndGVtcGxhdGVzJykgKSByZXR1cm47Cgokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnYWRtaW5fc2V0bG9zdHVuX3RlbXBsYXRlJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdGVtcGxhdGUxJywkdGhpcy0+TGFuZygnbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdGVtcGxhdGUxJywKCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoIGZhbHNlLCAkaWQsCgkJCSAgJHRoaXMtPkdldFRlbXBsYXRlICgnZmV1c2Vyc19sb3N0dW5mb3JtJyksCgkJCQkgICAgICAgJ2xvc3R1bmZvcm0nKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF90ZW1wbGF0ZTInLCR0aGlzLT5MYW5nKCdsb3N0dW5fY29uZmlybV90ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTInLAoJCSR0aGlzLT5DcmVhdGVUZXh0QXJlYSggZmFsc2UsICRpZCwKCQkJICAkdGhpcy0+R2V0VGVtcGxhdGUgKCdmZXVzZXJzX2xvc3R1bmZvcm1fY29uZmlybScpLAoJCQkJICAgICAgICdsb3N0dW5mb3JtX2NvbmZpcm0nKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRzJywKCQkJCQkgICR0aGlzLT5MYW5nKCdkZWZhdWx0cycpKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnbG9zdHVuX3RlbXBsYXRlZm9ybS50cGwnKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKLy8gZmlsbCBvdXQgdGhlIHRlbXBsYXRlCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkb19zZXRwcmVmcycpKTsKCiRtb250aHMgPSBhcnJheSgpOwpmb3IoICRpID0gNTIwOyAkaSA+IDA7ICRpLS0gKQogIHsKICAgICRtb250aHNbJGldID0gJGk7CiAgfQoKJHNtYXJ0eS0+YXNzaWduKCdhdXRvX2NyZWF0ZV91bmtub3duJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0b19jcmVhdGVfdW5rbm93bicsMCkpOwoKJGF1dGhfbW9kdWxlcyA9IG1vZHVsZV9oZWxwZXI6OmdldF9tb2R1bGVzX3dpdGhfbWV0aG9kKCdHZXRGRVVBdXRoQ29uc3VtZXInKTsKJGF1dGhfbW9kdWxlcyA9IGNnZV9hcnJheTo6aGFzaF9wcmVwZW5kKCRhdXRoX21vZHVsZXMsJ19fQlVJTFRJTl9fJywkdGhpcy0+TGFuZygnYXV0aF9idWlsdGluJykpOwokc21hcnR5LT5hc3NpZ24oJ2F1dGhfbW9kdWxlcycsJGF1dGhfbW9kdWxlcyk7CiRzbWFydHktPmFzc2lnbignYXV0aF9tb2R1bGUnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhdXRoX21vZHVsZScsJ19fQlVJTFRJTl9fJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yYW5kb211c2VybmFtZScsCgkJUlJVdGlsczo6bXlDcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2lucHV0X3JhbmRvbXVzZXJuYW1lJywgMSwKCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZV9yYW5kb211c2VybmFtZScsMCkpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfZXhwaXJlYWdlJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2V4cGlyZWFnZScsJG1vbnRocywtMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLDI2MCkpKTsKICAgCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3Nlc3Npb250aW1lb3V0JywgJHRoaXMtPkxhbmcoJ3Byb21wdF9zZXNzaW9udGltZW91dCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zZXNzaW9udGltZW91dCcsIAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfc2Vzc2lvbnRpbWVvdXQnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpLCA0LCA0ICkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcmVxdWlyZW9uZWdyb3VwJywgCgkJUlJVdGlsczo6bXlDcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ2lucHV0X3JlcXVpcmVvbmVncm91cCcsIDEsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywKCQlSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsIDEsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnLCAkdGhpcy0+TGFuZygnaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJykpOwoKCgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9kZmx0Z3JvdXAnLCAkdGhpcy0+TGFuZygncHJvbXB0X2RmbHRncm91cCcpKTsKJGdyb3VwczEgPSAkdGhpcy0+R2V0R3JvdXBMaXN0KCk7CiRncm91cHMgPSBhcnJheV9tZXJnZSggYXJyYXkoIk5vbmUiID0+IC0xKSwgJGdyb3VwczEgKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9kZmx0Z3JvdXAnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dERyb3BEb3duKCAkaWQsICdpbnB1dF9kZmx0Z3JvdXAnLCAkZ3JvdXBzLCAtMSwKCQkJCQkgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywKCQkJCQkgICR0aGlzLT5MYW5nKCdzdWJtaXQnKSwnJywnJywKCQkJCQkgICR0aGlzLT5MYW5nKCdjb25maXJtX3N1Ym1pdHByZWZzJykpKTsKJHNtYXJ0eS0+YXNzaWduICgnY2FuY2VsJywKCQkgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywKCQkkdGhpcy0+TGFuZygncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnLAoJCVJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAnaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywgMSwKCQkJCQkJJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X3JlcGVhdGVkX2xvZ2lucycpKSk7CgoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsCgkJCQkkdGhpcy0+TGFuZygncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsCgkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsCgkJCQkJCQkJCSAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJyksNDApKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJywKCQkJCSR0aGlzLT5MYW5nKCdwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycsCgkJCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJywKCQkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnKSw0MCw0MCkpOwoKJG5vdGlmaWNhdGlvbl9saXN0ID0gYXJyYXkoKTsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkxvZ2luJyldID0gJ09uTG9naW4nOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uTG9nb3V0JyldID0gJ09uTG9nb3V0JzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkV4cGlyZVVzZXInKV0gPSAnT25FeHBpcmVVc2VyJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkNyZWF0ZVVzZXInKV0gPSAnT25DcmVhdGVVc2VyJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkRlbGV0ZVVzZXInKV0gPSAnT25EZWxldGVVc2VyJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPblVwZGF0ZVVzZXInKV0gPSAnT25VcGRhdGVVc2VyJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkNyZWF0ZUdyb3VwJyldID0gJ09uQ3JlYXRlR3JvdXAnOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uVXBkYXRlR3JvdXAnKV0gPSAnT25VcGRhdGVHcm91cCc7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25EZWxldGVHcm91cCcpXSA9ICdPbkRlbGV0ZUdyb3VwJzsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbm90aWZpY2F0aW9ucycsJHRoaXMtPkxhbmcoJ3Byb21wdF9ub3RpZmljYXRpb25zJykpOwokbm90aWZpY2F0aW9ucyA9IGV4cGxvZGUoJywnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25zJywnJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X25vdGlmaWNhdGlvbnMnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJGlkLCdub3RpZmljYXRpb25zW10nLCRub3RpZmljYXRpb25fbGlzdCwgJG5vdGlmaWNhdGlvbnMpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJywkdGhpcy0+TGFuZygncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X25vdGlmaWNhdGlvbl9hZGRyZXNzJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnbm90aWZpY2F0aW9uX2FkZHJlc3MnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fYWRkcmVzcycpLDUwLDI1NSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbm90aWZpY2F0aW9uX3N1YmplY3QnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdub3RpZmljYXRpb25fc3ViamVjdCcsCgkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JyksNTAsMjU1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZScsCgkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCRpZCwKCQkJCSAgICAgICR0aGlzLT5HZXRUZW1wbGF0ZSgnbm90aWZpY2F0aW9uX3RlbXBsYXRlJyksCgkJCQkgICAgICAnbm90aWZpY2F0aW9uX3RlbXBsYXRlJykpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbmZvX3N0YXInLCR0aGlzLT5MYW5nKCdpbmZvX3N0YXInKSk7CiRudW0gPSAkdGhpcy0+Q291bnRUZW1wQ29kZVJlY29yZHMoKTsKaWYoICRudW0gKQogICAgewogICAgICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9udW1yZXNldHJlY29yZHMnLAoJCSAgICAgICR0aGlzLT5MYW5nKCdwcm9tcHRfbnVtcmVzZXRyZWNvcmQnKSk7CiAgICAgICRzbWFydHktPmFzc2lnbignZGF0YV9udW1yZXNldHJlY29yZHMnLCAkbnVtKTsgLy90b2RvCiAgICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfcmVtb3ZlYWxsJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdpbnB1dF9yZW1vdmVhbGwnLAoJCQkJCSAgICAgICAkdGhpcy0+TGFuZygncmVtb3ZlYWxsJyksCgkJCQkJICAgICAgICdvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycuJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmUnKS4nXCcpIicpKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1vdmUxd2VlaycsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfcmVtb3ZlMXdlZWsnLAoJCQkJCSAgICAgICAkdGhpcy0+TGFuZygncmVtb3ZlMXdlZWsnKSwKCQkJCQkgICAgICAgJ29uY2xpY2s9InJldHVybiBjb25maXJtKFwnJy4kdGhpcy0+TGFuZygnYXJleW91c3VyZScpLidcJykiJykpOwogICAgICAKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1vdmUxbW9udGgnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3JlbW92ZTFtb250aCcsCgkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdyZW1vdmUxbW9udGgnKSwKCQkJCQkgICAgICAgJ29uY2xpY2s9InJldHVybiBjb25maXJtKFwnJy4kdGhpcy0+TGFuZygnYXJleW91c3VyZScpLidcJykiJykpOwogICAgfQokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkbWlucHJlZnMudHBsJyk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/function.admin_propertiestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKICAkbWVzc2FnZSA9ICcnOwogIGlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogICAgewogICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCAkbWVzc2FnZSk7CiAgICB9CgogICR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLCR0aGlzLT5MYW5nKCdwcm9wZXJ0aWVzJykpOwoKICAkcm93YXJyYXkgPSBhcnJheSgpOwogICRyb3djbGFzcyA9ICdyb3cxJzsKICAka2V5cyA9IGFycmF5X2tleXMoJHRoaXMtPnR5cGVzKTsKCiAgJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICBpZiggaXNfYXJyYXkoJGRlZm5zKSApIHsKICAgIGZvcmVhY2goICRkZWZucyBhcyAkZGVmbiApCiAgICAgIHsKCSRwcm9wZ3JvdXBzID0gJHRoaXMtPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoJGRlZm5bJ25hbWUnXSk7CgoJJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwoJaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0cHJvcCcpKSAKCSAgewoJICAgICRvbmVyb3ctPm5hbWUgPSAKCSAgICAgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGRwcm9wJywgJHJldHVybmlkLCAkZGVmblsnbmFtZSddLAoJCQkJIGFycmF5KCdwcm9wbmFtZScgPT4gJGRlZm5bJ25hbWUnXSkpOwoJICB9CgllbHNlCgkgIHsKCSAgICAkb25lcm93LT5uYW1lID0gJGRlZm5bJ25hbWUnXTsKCSAgfQoJJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwoJJG9uZXJvdy0+dHlwZSA9ICR0aGlzLT5MYW5nKCRrZXlzWyRkZWZuWyd0eXBlJ11dKTsKCSRvbmVyb3ctPmxlbmd0aCA9ICRkZWZuWydsZW5ndGgnXTsKCSRvbmVyb3ctPmZvcmNlX3VuaXF1ZSA9ICRkZWZuWydmb3JjZV91bmlxdWUnXTsKCSRvbmVyb3ctPnJvd2NsYXNzID0gJHJvd2NsYXNzOwoKCWlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHByb3AnKSkKCSAgewoJICAgICRvbmVyb3ctPmVkaXRsaW5rID0KCSAgICAgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdhZGRwcm9wJywgJHJldHVybmlkLAoJCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZWRpdC5naWYnLAoJCQkJCQkJCQkgICAgICAkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJIGFycmF5KCdwcm9wbmFtZScgPT4gJGRlZm5bJ25hbWUnXSkpOwoKCSAgICBpZiggY291bnQoJHByb3Bncm91cHMpID09IDAgKQoJICAgICAgewoJCSRvbmVyb3ctPmRlbGV0ZWxpbmsgPQoJCSAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2RvX2RlbGV0ZXByb3AnLCAkcmV0dXJuaWQsCgkJCQkgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkJCQkJCQkgICR0aGlzLT5MYW5nICgnZGVsZXRlJyksICcnLCAnJywgJ3N5c3RlbWljb24nKSwKCQkJCSAgICAgYXJyYXkoJ3Byb3BuYW1lJyA9PiAkZGVmblsnbmFtZSddLCAncHJvcHR5cGUnID0+ICRkZWZuWyd0eXBlJ10pLCAKCQkJCSAgICAgJHRoaXMtPkxhbmcoJ2NvbmZpcm1fZGVsZXRlX3Byb3AnKSk7CgkgICAgICB9CgkgIH0KCgkkcm93YXJyYXlbXSA9ICRvbmVyb3c7CgkoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CiAgICAgIH0KICB9CgogICR0aGlzLT5zbWFydHktPmFzc2lnbignbmFtZXRleHQnLCR0aGlzLT5MYW5nKCduYW1lJykpOwogICR0aGlzLT5zbWFydHktPmFzc2lnbignbGVuZ3RodGV4dCcsJHRoaXMtPkxhbmcoJ2xlbmd0aCcpKTsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdHRleHQnLCR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0eXBldGV4dCcsJHRoaXMtPkxhbmcoJ3Byb21wdF90eXBlJykpOwogICR0aGlzLT5zbWFydHktPmFzc2lnbigncHJvcHMnLCRyb3dhcnJheSk7CiAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9wY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb3BzZm91bmQnLCR0aGlzLT5MYW5nKCdwcm9wc2ZvdW5kJykpOwoKICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2FkZHByb3AnKSApCiAgICB7CiAgICAgIC8vIHRvZG8sIGFkZCBhIHBlcm1pc3Npb24gY2hlY2sgYXJvdW5kIHRoaXMKICAgICAgLy8gbWF5YmUgY3JlYXRlIGFuICJlZGl0IGZyb250ZW5kdXNlciBwcm9wZXJ0aWVzIiBwZXJtaXNzaW9uCiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignYWRkbGluaycsIAoJCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZGRwcm9wJywkcmV0dXJuaWQsCgkJCQkJICAgICAgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywKCQkJCQkJCQkJCQkgICAkdGhpcy0+TGFuZygnYWRkcHJvcCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkJCQkJICAgICAgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpLicgJy4KCQkJICAgICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGRwcm9wJywKCQkJCQkgICAgICAgJHJldHVybmlkLAoJCQkJCSAgICAgICAkdGhpcy0+TGFuZygnYWRkcHJvcCcpLAoJCQkJCSAgICAgICBhcnJheSgpLCAnJywgZmFsc2UsCgkJCQkJICAgICAgIGZhbHNlLAoJCQkJCSAgICAgICAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKICAgIH0KCgogIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgncHJvcGVydGllc2Zvcm0udHBsJyk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/function.admin_resetsession_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3RlbXBsYXRlcycpICkgcmV0dXJuOwoKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLAoJCSR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2FkbWluX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlMScsJHRoaXMtPkxhbmcoJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF90ZW1wbGF0ZTEnLAoJCSR0aGlzLT5DcmVhdGVUZXh0QXJlYSggZmFsc2UsICRpZCwKCQkJICAkdGhpcy0+R2V0VGVtcGxhdGUgKCdmZXVzZXJzX3Jlc2V0c2Vzc2lvbicpLAoJCQkJICAgICAgICdyZXNldHNlc3Npb25fdGVtcGxhdGUnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRzJywKCQkJCQkgICR0aGlzLT5MYW5nKCdkZWZhdWx0cycpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZWZvcm0udHBsJyk7CgojCiMgRU9GCiMKPz4K]]></data>
	</file>
	<file>
	  <filename>/function.admin_userstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKICAvLyB0aGlzIHRhYiBoYXMgbWVyZWx5IG9uZSBtb2ZvIGxpc3Qgb2YgdXNlcyBhbmQgdGhlIGFiaWxpdHkgdG8gZWRpdCB0aGVtLCAKICAvLyBzZWUgZGV0YWlscyBhYm91dCB0aGVtLCBhbmQgdGhlbiBkZWxldGUgdGhlbQogIC8vIG1heWJlIHNlbmQgYW4gZW1haWwgdG8gdGhlbSB0b28gaWYgSSBnZXQgYXJvdW5kIHRvIGl0IHRoYXQgaXMuCgogIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdHVzZXJzJykgKQogICAgewogICAgICAvLyBidWxrIGFjdGlvbiBzdHVmZgogICAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2J1bGtkZWxldGUnXSkgKQoJewoJICBpZiggaXNzZXQoJHBhcmFtc1snc2VsZWN0ZWQnXSkgJiYgaXNfYXJyYXkoJHBhcmFtc1snc2VsZWN0ZWQnXSkgKQoJICAgIHsKCSAgICAgICRzZWwgPSBzZXJpYWxpemUoJHBhcmFtc1snc2VsZWN0ZWQnXSk7CgkgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRtaW5fYnVsa2FjdGlvbnMnLCAkcmV0dXJuaWQsCgkJCQkgYXJyYXkoJ2pvYic9PidkZWxldGUnLAoJCQkJICAgICAgICd1aWRzJz0+JHNlbCkpOwoJICAgIH0KCX0KCiAgICAgIC8vIGZpbHRlcmluZyBzdHVmZgogICAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2ZpbHRlciddKSApCgl7CgkgIGlmKCBpc3NldCggJHBhcmFtc1snZmlsdGVyX2dyb3VwJ10gKSApCgkgICAgewoJICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2N1cnJlbnRfZ3JvdXAnLCAkcGFyYW1zWydmaWx0ZXJfZ3JvdXAnXSApOwoJICAgIH0KCSAgaWYoIGlzc2V0KCAkcGFyYW1zWydmaWx0ZXJfcmVnZXgnXSApICkKCSAgICB7CgkgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnY3VycmVudF9yZWdleCcsICRwYXJhbXNbJ2ZpbHRlcl9yZWdleCddICk7CgkgICAgfQoJICBpZiggaXNzZXQoICRwYXJhbXNbJ2ZpbHRlcl9sb2dnZWRpbm9ubHknXSApICkKCSAgICB7CgkgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnY3VycmVudF9sb2dnZWRpbm9ubHknLCAkcGFyYW1zWydmaWx0ZXJfbG9nZ2VkaW5vbmx5J10gKTsKCSAgICB9CgkgIGVsc2UKCSAgewoJICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjdXJyZW50X2xvZ2dlZGlub25seScsIDApOwoJICB9CgkgIGlmKCBpc3NldCggJHBhcmFtc1snZmlsdGVyX2xpbWl0J10gKSApCgkgICAgewoJICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2N1cnJlbnRfbGltaXQnLCAkcGFyYW1zWydmaWx0ZXJfbGltaXQnXSApOwoJICAgIH0KCSAgaWYoIGlzc2V0KCAkcGFyYW1zWydmaWx0ZXJfc29ydGJ5J10gKSApCgkgICAgewoJICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2N1cnJlbnRfc29ydCcsICRwYXJhbXNbJ2ZpbHRlcl9zb3J0YnknXSApOwoJICAgIH0KCSAgaWYoIGlzc2V0KCAkcGFyYW1zWydmaWx0ZXJfcHJvcGVydHlzZWwnXSApICkKCSAgICB7CgkgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnY3VycmVudF9wcm9wc2VsJywgJHBhcmFtc1snZmlsdGVyX3Byb3BlcnR5c2VsJ10gKTsKCSAgICB9CgkgIGlmKCBpc3NldCggJHBhcmFtc1snZmlsdGVyX3Byb3BlcnR5c2VsJ10gKSApCgkgICAgewoJICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2N1cnJlbnRfcHJvcHZhbCcsICRwYXJhbXNbJ2ZpbHRlcl9wcm9wZXJ0eSddICk7CgkgICAgfQoJfQogICAgICAkY3VyZ3JvdXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3VycmVudF9ncm91cCcsICcnKTsKICAgICAgJGN1cnJlZ2V4ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2N1cnJlbnRfcmVnZXgnLCAnJyk7CgkgICRjdXJybG9nZ2VkaW5vbmx5ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2N1cnJlbnRfbG9nZ2VkaW5vbmx5JywgMCk7CiAgICAgICRjdXJsaW1pdCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjdXJyZW50X2xpbWl0JywgMTAwKTsKICAgICAgJGN1cnNvcnQgID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2N1cnJlbnRfc29ydCcsICcnKTsKICAgICAgJGN1cnByb3BzZWwgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3VycmVudF9wcm9wc2VsJywgJ25vbmUnKTsKICAgICAgJGN1cnByb3B2YWwgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY3VycmVudF9wcm9wdmFsJywgJycpOyAKCQogICAgICAvLyBnZXQgYSBncm91cCBsaXN0IGZvciB0aGUgZmlsdGVyCiAgICAgIC8vIGl0IHNob3VsZCBiZSByZWFkeSB0byBnbyByaWdodCBpbnRvIHRoZSBkcm9wZG93biAoY29vbCBlaCkKICAgICAgJGdyb3VwczEgPSAkdGhpcy0+R2V0R3JvdXBMaXN0KCk7CiAgICAgICRncm91cHMgPSBhcnJheV9tZXJnZSggYXJyYXkoIkFsbCBHcm91cHMiID0+IC0xKSwgJGdyb3VwczEgKTsKCQogICAgICAvLyBhIHB1bGxkb3duIGxpc3QgZm9yIGxpbWl0cwogICAgICAkbGltaXRzID0gYXJyYXkoICcxMDAnID0+IDEwMCwKCQkgICAgICAgJzEwJyA9PiAxMCwKCQkgICAgICAgJzI1JyA9PiAyNSwKCQkgICAgICAgJzUwJyA9PiA1MCwKCQkgICAgICAgJzI1MCcgPT4gMjUwLAoJCSAgICAgICAnNTAwJyA9PiA1MDAgKTsKCiAgICAgIC8vIGEgcHVsbGRvd24gbGlzdCBmb3IgcHJvcGVydHkgZGVmaW5pdGlvbnMKICAgICAgJGRlZm5zMSA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICRkZWZucyA9IGFycmF5KCk7CiAgICAgICRkZWZuc1snTm9uZSddID0gJ25vbmUnOwogICAgICBpZiggaXNfYXJyYXkoJGRlZm5zMSkgKQoJewoJICBmb3JlYWNoKCAkZGVmbnMxIGFzICRkZWYgKQoJICAgIHsKCSAgICAgICRkZWZuc1skZGVmWydwcm9tcHQnXV0gPSAkZGVmWyduYW1lJ107CgkgICAgfQoJfQoJCiAgICAgIC8vIGEgcHVsbGRvd24gbGlzdCBmb3Igc29ydGluZwogICAgICAkc29ydHMgPSBhcnJheSAoJ1VzZXJuYW1lJyA9PiAndXNlcm5hbWUnLAoJCSAgICAgICdVc2VybmFtZSAoZGVzY2VuZGluZyknID0+ICd1c2VybmFtZSBkZXNjJywKCQkgICAgICAnQ3JlYXRlIERhdGUnID0+ICdjcmVhdGVkYXRlJywKCQkgICAgICAnQ3JlYXRlIERhdGUgKGRlc2NlbmRpbmcpJyA9PiAnY3JlYXRlZGF0ZSBkZXNjJywKCQkgICAgICAnRXhwaXJ5IERhdGUnID0+ICdleHBpcmVzJywKCQkgICAgICAnRXhwaXJ5IERhdGUgKGRlc2NlbmRpbmcpJyA9PiAnZXhwaXJlcyBkZXNjJyk7CiAgICAgIC8vIG5vdyBzZXR1cCB0aGUgdGVtcGxhdGUgZmllbGRzCiAgICAgICRzbWFydHktPmFzc2lnbiggJ3Byb21wdF9maWx0ZXInLCAkdGhpcy0+TGFuZygnZmlsdGVyJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdwcm9tcHRfc29ydCcsICR0aGlzLT5MYW5nKCdzb3J0JykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdzdGFydGZvcm0nLAoJCQkgICAgICAgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZGVmYXVsdGFkbWluJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdwZXJtX3JlbW92ZXVzZXJzJywKCQkgICAgICAgJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJyk/MTowKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCAncHJvbXB0X2dyb3VwJywgJHRoaXMtPkxhbmcoJ2dyb3VwJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICd1c2Vyc2ZvdW5kJywgJHRoaXMtPkxhbmcoJ3VzZXJzZm91bmQnKSk7CiAgICAgICRzbWFydHktPmFzc2lnbiggJ3VzZXJzaW5ncm91cCcsICR0aGlzLT5MYW5nKCd1c2Vyc2luZ3JvdXAnKSk7CiAgICAgICRzbWFydHktPmFzc2lnbiggJ2ZpbHRlcl9ncm91cCcsCgkJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wRG93biggJGlkLCAnZmlsdGVyX2dyb3VwJywgJGdyb3VwcywgLTEsCgkJCQkJCQkgICAgICRjdXJncm91cCkpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdwcm9tcHRfdXNlcmZpbHRlcicsICR0aGlzLT5MYW5nKCd1c2VyZmlsdGVyJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdmaWx0ZXJfcmVnZXgnLCAKCQkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZpbHRlcl9yZWdleCcsCgkJCQkJCQkgJGN1cnJlZ2V4LCAyMCwgMjAgKSk7CgogICAgICAkc21hcnR5LT5hc3NpZ24oICdwcm9tcHRfcHJvcGVydHlmaWx0ZXJzZWwnLCR0aGlzLT5MYW5nKCdwcm9wZXJ0eWZpbHRlcicpKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCAnZmlsdGVyX3Byb3BlcnR5c2VsJywKCQkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dERyb3BEb3duKCAkaWQsICdmaWx0ZXJfcHJvcGVydHlzZWwnLAoJCQkJCQkJICAgICAkZGVmbnMsIC0xLCAkY3VycHJvcHNlbCApKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCAncHJvbXB0X3Byb3BlcnR5ZmlsdGVyJywkdGhpcy0+TGFuZygndmFsdWVyZWdleCcpKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCAnZmlsdGVyX3Byb3BlcnR5JywKCQkJICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZpbHRlcl9wcm9wZXJ0eScsCgkJCQkJCQkgJGN1cnByb3B2YWwsIDIwLCAyMCApKTsKCgkgICRzbWFydHktPmFzc2lnbiggJ3Byb21wdF9sb2dnZWRpbm9ubHknLAoJCQkJCSAgICR0aGlzLT5MYW5nKCdwcm9tcHRfbG9nZ2VkaW5vbmx5JykpOwoJICAkc21hcnR5LT5hc3NpZ24oICdmaWx0ZXJfbG9nZ2VkaW5vbmx5JywKCQkJCQkgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2ZpbHRlcl9sb2dnZWRpbm9ubHknLAoJCQkJCQkJCQkJCQkgIDEsJGN1cnJsb2dnZWRpbm9ubHkpKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCAncHJvbXB0X2xpbWl0JywKCQkJICAgICAgICR0aGlzLT5MYW5nKCd1c2VybGltaXQnKSk7CiAgICAgICRzbWFydHktPmFzc2lnbiggJ2ZpbHRlcl9saW1pdCcsCgkJCSAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wRG93biggJGlkLCAnZmlsdGVyX2xpbWl0JywgJGxpbWl0cywgLTEsCgkJCQkJCQkgICAgICRjdXJsaW1pdCkpOwogICAgICAkc21hcnR5LT5hc3NpZ24oICdwcm9tcHRfc29ydGJ5JywKCQkJICAgICAgICR0aGlzLT5MYW5nKCdzb3J0YnknKSk7CiAgICAgICRzbWFydHktPmFzc2lnbiggJ2ZpbHRlcl9zb3J0YnknLAoJCQkgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcERvd24oICRpZCwgJ2ZpbHRlcl9zb3J0YnknLCAkc29ydHMsIC0xLAoJCQkJCQkJICAgICAkY3Vyc29ydCkpOwoKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zZWxlY3QnLAoJCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ2ZpbHRlcicsCgkJCQkJCQkgICR0aGlzLT5MYW5nKCdhcHBseWZpbHRlcicpKSk7CiAgICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfaGlkZGVuJywKCQkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdjZ19hY3RpdmV0YWInLCAndXNlcnMnKQoJCQkgICAgICApOwogICAgICAkc21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwoKCiAgICAgICR1c2VycyA9ICR0aGlzLT5HZXRVc2Vyc0luR3JvdXAoICRjdXJncm91cCwgJGN1cnJlZ2V4LCAkY3VybGltaXQsICRjdXJzb3J0LAoJCQkJICAgICAgICRjdXJwcm9wc2VsLCAkY3VycHJvcHZhbCwgJGN1cnJsb2dnZWRpbm9ubHkgKTsKICAgICAgaWYoICFpc19hcnJheSgkdXNlcnMpICkKCXsKCSAgLy8gYW4gZXJyb3Igb2NjdXJyZWQKCSAgJGRiID0mICR0aGlzLT5HZXREYigpOwoJICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLAoJCQkJICAgICAgJGRiLT5FcnJvck1zZygpICk7Ci8vIAkgIHJldHVybjsKCX0KCiAgICAgIC8vIGdldCB0aGUgdG90YWwgbnVtYmVyIG9mIHVzZXJzCiAgICAgICRudW11c2VycyA9ICR0aGlzLT5Db3VudFVzZXJzSW5Hcm91cCggJGN1cmdyb3VwICk7CgogICAgICAkcm93YXJyYXkgPSBhcnJheSgpOwogICAgICAkcm93Y2xhc3MgPSAicm93MSI7CiAgICAgIGdsb2JhbCAkZ0NtczsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdudW11c2VycycsICRudW11c2VycyApOwogICAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykgKQoJewoJICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfZW1haWwnKSk7Cgl9CiAgICAgIGVsc2UKCXsKCSAgJHNtYXJ0eS0+YXNzaWduKCd1c2VybmFtZXRleHQnLCAkdGhpcy0+TGFuZygndXNlcm5hbWUnKSk7Cgl9CiAgICAgICRzbWFydHktPmFzc2lnbignZW1haWx0ZXh0JywgJHRoaXMtPkxhbmcoJ2VtYWlsJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oJ3N0YXR1c3RleHQnLCAkdGhpcy0+TGFuZygnc3RhdHVzJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oJ2NyZWF0ZWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2NyZWF0ZWQnKSk7CiAgICAgICRzbWFydHktPmFzc2lnbignZXhwaXJlc3RleHQnLCAkdGhpcy0+TGFuZygnZXhwaXJlcycpKTsKICAgICAgaWYoIGlzX2FycmF5KCR1c2VycykgKQoJewoJICBmb3JlYWNoKCAkdXNlcnMgYXMgJHJvdyApCgkgICAgewoJICAgICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwoJICAgICAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgkgICAgICAkb25lcm93LT5pZCA9ICRyb3dbJ2lkJ107CgkgICAgICAkb25lcm93LT5jcmVhdGVkICA9ICRyb3dbJ2NyZWF0ZWRhdGUnXTsKCSAgICAgICRvbmVyb3ctPnVzZXJuYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZWRpdHVzZXInLCAkcmV0dXJuaWQsICRyb3dbJ3VzZXJuYW1lJ10sCgkJCQkJCSAgICAgIGFycmF5KCd1c2VyX2lkJyA9PiAkcm93WydpZCddKSk7CgkgICAgICAkb25lcm93LT5leHBpcmVzICA9ICRyb3dbJ2V4cGlyZXMnXTsKCSAgICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdHVzZXJzJykgKQoJCXsKCQkgICRvbmVyb3ctPmhpc3RvcnlsaW5rID0KCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ3VzZXJoaXN0b3J5JywgJHJldHVybmlkLAoJCQkJICAgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW5mby5naWYnLAoJCQkJCQkJCQkJJHRoaXMtPkxhbmcoJ2hpc3RvcnknKSwnJywnJywnc3lzdGVtaWNvbicpLAoJCQkJICAgICAgIGFycmF5KCd1c2VyX2lkJz0+JHJvd1snaWQnXSkpOwoJCX0KCgkgICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXR1c2VycycpICkKCQl7CgkJICAkb25lcm93LT5lZGl0bGluayA9CgkJICAgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdlZGl0dXNlcicsICRyZXR1cm5pZCwKCQkJCSAgICAgICAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywKCQkJCQkJCQkJCSAgICAkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJICAgICAgIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSApKTsKCQkgIGlmKCAkcm93Wydsb2dnZWRpbiddICkKCQkJICB7CgkJCQkgICRvbmVyb3ctPmxvZ291dGxpbmsgPQoJCQkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwnYWRtaW5fbG9nb3V0JywkcmV0dXJuaWQsCgkJCQkJCQkJICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vYmFjay5naWYnLAoJCQkJCQkJCSAkdGhpcy0+TGFuZygncHJvbXB0X2xvZ291dCcpLCcnLCcnLCdzeXN0ZW1pY29uJyksCgkJCQkJCWFycmF5KCd1c2VyX2lkJz0+JHJvd1snaWQnXSkpOwoJCQkgIH0KCgkJfQoJICAgICAgCgkgICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJykgKQoJCXsKCQkgICRvbmVyb3ctPmRlbGV0ZWxpbmsgPSAKCQkgICAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwnZG9fZGVsZXRldXNlcicsJHJldHVybmlkLAoJCQkJICAgICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsCgkJCQkJCQkJCQkgICAgJHRoaXMtPkxhbmcgKCdkZWxldGUnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAoJCQkJICAgICAgIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSksCgkJCQkgICAgICAgJHRoaXMtPkxhbmcgKCdhcmV5b3VzdXJlJykpOwoJCX0KCSAgICAgIAoJICAgICAgJHJvd2FycmF5W10gPSAkb25lcm93OwoJICAgICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwoJICAgIH0KCX0KCiAgICAgICRzbWFydHktPmFzc2lnbignaXRlbXMnLCRyb3dhcnJheSk7CiAgICAgICRzbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJHJvd2FycmF5KSk7CiAgICB9CgogIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnYWRkdXNlcicpICkKICAgIHsKICAgICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykgPT0gMCB8fAoJICBjb3VudCgkZ3JvdXBzMSkgPiAwICkKCXsKCSAgJHNtYXJ0eS0+YXNzaWduKCdhZGRsaW5rJywgCgkJCSAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdhZGR1c2VyJywkcmV0dXJuaWQsCgkJCQkJICAgICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsCgkJCQkJCQkJCQkJICR0aGlzLT5MYW5nKCdhZGR1c2VyJyksJycsJycsJ3N5c3RlbWljb24nKSwKCQkJCQkgICAgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpLicgJy4KCQkJICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRkdXNlcicsCgkJCQkJICAgICAkcmV0dXJuaWQsCgkJCQkJICAgICAkdGhpcy0+TGFuZygnYWRkdXNlcicpLAoJCQkJCSAgICAgYXJyYXkoKSwgJycsIGZhbHNlLAoJCQkJCSAgICAgZmFsc2UsCgkJCQkJICAgICAnY2xhc3M9InBhZ2VvcHRpb25zIicpKTsKCX0KICAgICAgZWxzZQoJewoJICAkc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLAoJCQkJICAkdGhpcy0+TGFuZygnbm9ncm91cHMnKSk7Cgl9CiAgICB9CgogIGVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSggJ3VzZXJsaXN0LnRwbCcgKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_viewuser_template.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd0ZW1wbGF0ZXMnKSApIHJldHVybjsKCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywKCQkkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdhZG1pbl9zZXR2aWV3dXNlcl90ZW1wbGF0ZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3RlbXBsYXRlMScsJHRoaXMtPkxhbmcoJ3ZpZXd1c2VyX3RlbXBsYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3RlbXBsYXRlMScsCgkJJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLAoJCQkgICR0aGlzLT5HZXRUZW1wbGF0ZSAoJ2ZldXNlcnNfdmlld3VzZXInKSwKCQkJCSAgICAgICAndmlld3VzZXJfdGVtcGxhdGUnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLCR0aGlzLT5MYW5nKCdzdWJtaXQnKSkpOwokc21hcnR5LT5hc3NpZ24oJ2RlZmF1bHRzJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2RlZmF1bHRzJywKCQkJCQkgICR0aGlzLT5MYW5nKCdkZWZhdWx0cycpKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3ZpZXd1c2VyX3RlbXBsYXRlZm9ybS50cGwnKTsKCi8qCiAqIEVPRgogKi8KPz4=]]></data>
	</file>
	<file>
	  <filename>/function.default_lostusernameform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKZ2xvYmFsICRnQ21zOwokc21hcnR5ID0mICRnQ21zLT5HZXRTbWFydHkoKTsKCmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogIHsKICAgICRtZXNzYWdlID0gaHRtbF9lbnRpdHlfZGVjb2RlKHRyaW0oJHBhcmFtc1snbWVzc2FnZSddKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkKICB7CiAgICAkZXJyb3IgPSBodG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydlcnJvciddKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywkZXJyb3IpOwogIH0KCiRnaWQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcsLTEpOwppZiggaXNzZXQoJHBhcmFtc1snbG9zdHVuX2dyb3VwJ10pICkKICB7CiAgICAkZ2lkID0gJHRoaXMtPkdldEdyb3VwSUQoICRwYXJhbXNbJ2xvc3R1bl9ncm91cCddICk7CiAgICBpZiggJGdpZCA9PSBmYWxzZSApCiAgICAgIHsKCSR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCQkgICR0aGlzLT5MYW5nKCdlcnJvcl9ncm91cG5vdGZvdW5kJykpOwoJcmV0dXJuOwogICAgICB9CiAgfQplbHNlIGlmKCAkZ2lkIDw9IDAgKQogIHsKICAgICRncm91cHMgPSAkdGhpcy0+R2V0R3JvdXBMaXN0KCk7CiAgICAkdmFsdWVzID0gYXJyYXlfdmFsdWVzKCRncm91cHMpOwogICAgJGdpZCA9ICR2YWx1ZXNbMF07CiAgfQoKJHJlbG5zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKaWYoICFpc19hcnJheSggJHJlbG5zICkgfHwgJHJlbG5zWzBdID09PSBGQUxTRSApCiAgewogICAgZWNobyAnPCEtLSBGRVU6IEVycm9yIC0gJy4kcmVsbnNbMV0uJyAtLT4nOwogICAgcmV0dXJuOwogIH0KCiRjYXB0Y2hhID0mICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhaXNzZXQoJHBhcmFtc1snbm9jYXB0Y2hhJ10pICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2NhcHRjaGFfdGl0bGUnLCAkdGhpcy0+TGFuZygnY2FwdGNoYV90aXRsZScpKTsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfY2FwdGNoYScsCgkJICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9jYXB0Y2hhJywnJywxMCkpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7CiAgfQoKLy8KLy8gQWRkIGEgcGFzc3dvcmQgZmllbGQKLy8KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcGFzc3dvcmQnLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfcGFzc3dvcmQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcGFzc3dvcmQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwnZmV1X2lucHV0X3Bhc3N3b3JkJywnJywKCQkgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSksCgkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKCi8vIE5vdzogd2UgbmVlZCB0byBnZXQgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgbWFya2VkIGFzICdsb3N0dW5mbGFnJyAKLy8gYW5kIGRpc3BsYXkgdGhlbSBpbiB0aGUgZm9ybQokcm93YXJyYXkgPSBhcnJheSgpOwpmb3JlYWNoKCAkcmVsbnMgYXMgJG9uZXJlbG4gKQp7CiAgLy8gaWYgaXQncyBub3QgcmVxdWlyZWQgaGVyZSwgZG9uJ3QgZG8gYW55dGhpbmcKICBpZiggIWlzc2V0KCRvbmVyZWxuWydsb3N0dW5mbGFnJ10pIHx8ICRvbmVyZWxuWydsb3N0dW5mbGFnJ10gPD0gMCApCiAgICBjb250aW51ZTsKCiAgaWYoICRvbmVyZWxuWydyZXF1aXJlZCddID09IDMgfHwgJG9uZXJlbG5bJ3JlcXVpcmVkJ10gPT0gNCkgCiAgICB7CiAgICAgIC8vIEhtbSwgaG93IGNhbiBhbiBhIGZpZWxkIHRoYXQncyByZXF1aXJlZCBpbiBsb3N0dW4gYmUgaGlkZGVuCiAgICAgIC8vIGdvdHRhIGZpZ3VyZSB0aGF0IG91dC4uLi4gdG9kbwogICAgICBlY2hvICc8IS0tIEZFVTogRVJST1IgLSBBIEhpZGRlbi9yZWFkb25seSBmaWVsZCBpcyByZXF1aXJlZCBmb3IgbG9zdCB1c2VybmFtZT8gLS0+JzsKICAgICAgY29udGludWU7CiAgICB9CgogICRkZWZuID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbiggJG9uZXJlbG5bJ25hbWUnXSApOwoKICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgJG9uZXJvdy0+bmFtZSA9ICdpbnB1dF8nLiRvbmVyZWxuWyduYW1lJ107CiAgJG9uZXJvdy0+aWQgICA9ICRpZC4kb25lcm93LT5uYW1lOwogICRvbmVyb3ctPmNvbG9yID0gJyc7CiAgJG9uZXJvdy0+dHlwZSA9ICRkZWZuWyd0eXBlJ107CiAgJG9uZXJvdy0+bWFya2VyID0gJyc7CiAgJG9uZXJvdy0+Y2xhc3NuYW1lID0gJG9uZXJlbG5bJ25hbWUnXTsKICAkYWRkdGV4dCA9ICcnOwogICRvbmVyb3ctPmhpZGRlbiA9IFJSVXRpbHM6Om15Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgCgkJCQkJCSAgJ2ZldV9oaWRkZW5fJy4kb25lcmVsblsnbmFtZSddLAoJCQkJCQkgIGltcGxvZGUoJzsnLAoJCQkJCSAgICAgIGFycmF5KCRvbmVyZWxuWyduYW1lJ10sCgkJCQkJCSAgICAkZGVmblsndHlwZSddLAoJCQkJCQkgICAgJG9uZXJlbG5bJ3JlcXVpcmVkJ10pKSk7CgogIHN3aXRjaCggJGRlZm5bJ3R5cGUnXSApCiAgICB7CiAgICBjYXNlIDA6IC8vIHRleHQKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJCSAnJywkZGVmblsnbGVuZ3RoJ10sCgkJCQkJCSAkZGVmblsnbWF4bGVuZ3RoJ10sCgkJCQkJCSAkYWRkdGV4dCApOwogICAgICBicmVhazsKCiAgICBjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSBSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goICRpZCwKCQkJCQkJCSAnZmV1XycuJG9uZXJvdy0+bmFtZSwKCQkJCQkJCSAxLCAwLAoJCQkJCQkJICRhZGR0ZXh0ICk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgMjogLy8gZW1haWwKICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJCSAnJywkZGVmblsnbGVuZ3RoJ10sCgkJCQkJCSAkZGVmblsnbWF4bGVuZ3RoJ10sCgkJCQkJCSAkYWRkdGV4dCApOwogICAgICBicmVhazsKCiAgICBjYXNlIDM6IC8vIHRleHQgYXJlYQogICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCBmYWxzZSwgJGlkLCAnJywgCgkJCQkJCSdmZXVfJy4kb25lcm93LT5uYW1lICk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKAoJCQkJCQkgICAgJGlkLCAKCQkJCQkJICAgICdmZXVfJy4kb25lcm93LT5uYW1lLAoJCQkJCQkgICAgJHRoaXMtPkdldFNlbGVjdE9wdGlvbnMoJGRlZm5bJ25hbWUnXSwgMSksIAoJCQkJCQkgICAgLTEsIAoJCQkJCQkgICAgLTEsCgkJCQkJCSAgICAkYWRkdGV4dCk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNTogLy8gbXVsdGlzZWxlY3QKICAgICAgewoJJHNlbGVjdGVkID0gZXhwbG9kZSgnLCcsJHZhbCk7Cgkkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgKCQkJCQkJCSRpZCwgCgkJCQkJCQknZmV1XycuJG9uZXJvdy0+bmFtZS4nW10nLCAKCQkJCQkJCSR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJCSRzZWxlY3RlZCwKCQkJCQkJCSRkZWZuWydsZW5ndGgnXSwKCQkJCQkJCSRhZGR0ZXh0KTsKCWJyZWFrOwogICAgICB9CgogICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICAvLyB0aGlzIGlzbid0IGFsbG93ZWQKICAgICAgYnJlYWs7CiAgICB9CiAgJG9uZXJvdy0+bGFiZWxmb3IgPSAkaWQuJG9uZXJlbG5bJ25hbWUnXTsKICAkb25lcm93LT50eXBlID0gJGRlZm5bJ3R5cGUnXTsKICAkb25lcm93LT5sZW5ndGggPSAkZGVmblsnbGVuZ3RoJ107CiAgJG9uZXJvdy0+bWF4bGVuZ3RoID0gJGRlZm5bJ21heGxlbmd0aCddOwogICRvbmVyb3ctPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb25lcm93LT5uYW1lID0gJG9uZXJlbG5bJ25hbWUnXTsKICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7Cn0KCgokc21hcnR5LT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+TGFuZygndGl0bGVfbG9zdHVzZXJuYW1lJykpOwokc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJJHRoaXMtPmZlQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fbG9zdHVzZXJuYW1lJywKCQkJCQkgJHJldHVybmlkLCB0cnVlLCAncG9zdCcsICcnLCAnJywKCQkJCQkgJHBhcmFtcykpOwokc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywKCQkkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwoKJGhpZGRlbiA9ICcnOwppZiggaXNzZXQoJHBhcmFtc1snbG9zdHVuX2dyb3VwJ10pICkgCiAgewogICAgJGhpZGRlbiAuPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdsb3N0dW5fZ3JvdXAnLCRwYXJhbXNbJ2xvc3R1bl9ncm91cCddKTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1sncmV0dXJudG8nXSApICkKICB7CiAgICAkaGlkZGVuIC49ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2lucHV0X3JldHVybnRvJywKCQkJCQkkcGFyYW1zWydyZXR1cm50byddKTsKICB9CmlmKCAkaGlkZGVuICE9ICcnICkgCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCRoaWRkZW4pOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdmb3JtaWQnLCRpZCk7CiRzbWFydHktPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwokc21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xjb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX2xvc3R1bmZvcm0nKTsKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.user_changesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQpnbG9iYWwgJGdDbXM7CgokY2hhbmdlcGFzc3dkID0gVFJVRTsKaWYoICFmZXVfdXRpbHM6OnVzaW5nX3N0ZF9jb25zdW1lcigpICkKICB7CiAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAkY2hhbmdlcGFzc3dkID0gJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VQQVNTV0QpOwoKICAgIGlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTKSApCiAgICAgIHsKCS8vIHRoZSBjb25zdW1lciBwcm92aWRlcyB0aGUgbG9naW4gY2FwYWJpbGl0aWVzCgllY2hvICRjb25zdW1lci0+Z2V0X2NoYW5nZXNldHRpbmdzX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKCXJldHVybjsKICAgICAgfQogICAgZWxzZSBpZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUykgKQogICAgICB7CgkvLyB3ZSdyZSBnb25uYSB1c2UgdGhpcyBmb3JtLgogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCXJldHVybjsKICAgICAgfQogIH0KCiR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwppZiggJHVpZCA9PSBmYWxzZSApIAogIHsKICAgIC8vIHVzZXIgaXNuJ3QgbG9nZ2VkIGluCiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX25vdGxvZ2dlZGluJykpOwogICAgcmV0dXJuOwogIH0KJHJlc3VsdCA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwppZiggJHJlc3VsdFswXSA9PSBGQUxTRSApCiAgewogICAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsIAoJCQkgICAgICAkcmVzdWx0WzFdKTsKICAgIHJldHVybjsKICB9CiR1aW5mbyA9ICRyZXN1bHRbMV07CgppZiggaXNzZXQoICRwYXJhbXNbJ2Vycm9yJ10gKSApCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10gKTsKICB9CmlmKCBpc3NldCggJHBhcmFtc1snbWVzc2FnZSddICkgKQogIHsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignbWVzc2FnZScsICRwYXJhbXNbJ21lc3NhZ2UnXSApOwogIH0KCi8vIGdldCB0aGUgdXNlcnMgbWVtYmVyIGdyb3VwcwokZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CmlmKCAhJGdyb3VwcyApCiAgewogICAgLy8gdGhpcyB1c2VyIGlzIG5vdCBhIG1lbWJlciBvZiBhbnkgZ3J1b3BzLi4uCiAgICAvLyBoYW5kbGUgdGhpcyBsYXRlciB0b2RvCiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJICAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX25vZ3JvdXBzJykpOwogICAgcmV0dXJuOwogIH0KCi8vIG5vdyB3ZSBoYXZlIHRoZSBncm91cHMsIHdlIGJ1aWxkIGEgdW5pb24gb2YgYWxsIG9mIHRoZSBncm91cHMgcHJvcGVydGllcwokcHJvcGVydGllcyA9IGFycmF5KCk7CmZvcmVhY2goICRncm91cHMgYXMgJGdycHJlY29yZCApCnsKICAkZ2lkID0gJGdycHJlY29yZFsnZ3JvdXBpZCddOwogICRwcm9wcmVsYXRpb25zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKICAkcHJvcGVydGllcyA9IFJSVXRpbHM6OmFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRwcm9wZXJ0aWVzLCAkcHJvcHJlbGF0aW9ucyApOwogIHVhc29ydCggJHByb3BlcnRpZXMsIAoJICBhcnJheSgnY2dlX2FycmF5JywnY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5JykgKTsKfQoKaWYoIGNvdW50KCRwcm9wZXJ0aWVzKSA9PSAwICkKICB7CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfb25lZ3JvdXAnKSA9PSAxICkKICAgICAgewoJLy8gdGhpcyB1c2VyIGlzIG5vdCBhIG1lbWJlciBvZiBhbnkgZ3J1b3BzLi4uCgkvLyBoYW5kbGUgdGhpcyBsYXRlciB0b2RvCgkkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAKCQkJCSAgJHRoaXMtPkxhbmcoJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnKSk7CglyZXR1cm47CiAgICAgIH0KICB9CgoKLy8gbm93IHdlJ3JlIHJlYWR5IHRvIHBvcHVsYXRlIHRoZSB0ZW1wbGF0ZQovLyBmaXJzdCB3ZSBwdXQgaW4gc3R1ZmYgdGhhdCBpcyByZXF1aXJlZCAodXNlcm5hbWUsIHBhc3N3b3JkLCBldGMsIGV0YykKJHJvd2FycmF5ID0gYXJyYXkoKTsKCi8vIG1ha2Ugc3VyZSB1c2VybmFtZSBpcyBpbiB0aGVyZQovLyB3ZSBjYW4gaGlkZSBpdCBpbiB0aGUgdGVtcGxhdGUuCiR2YWwgPSAkdWluZm9bJ3VzZXJuYW1lJ107CiRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKJG9uZXJvdy0+bmFtZSA9ICd1c2VybmFtZSc7CiRvbmVyb3ctPnR5cGUgPSAwOwokb25lcm93LT5jb2xvciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKJG9uZXJvdy0+cmVxdWlyZWQgPSAxOwppZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpCiAgewogICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdwcm9tcHRfZW1haWwnKTsKICB9CiBlbHNlCiAgewogICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdwcm9tcHRfdXNlcm5hbWUnKTsKICB9CiRvbmVyb3ctPmNvbnRyb2wgPSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZmV1X2lucHV0X3VzZXJuYW1lJywgJHZhbCwKCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJyksCgkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSwKCQkJCQkgJ2Rpc2FibGVkPSJkaXNhYmxlZCInKTsKJHJvd2FycmF5WyRvbmVyb3ctPm5hbWVdID0gJG9uZXJvdzsKCmlmKCAkY2hhbmdlcGFzc3dkICkKICB7CiAgICAvLyBhbmQgcGFzc3dvcmQKICAgICR2YWwgPSAnJzsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10gKSApCiAgICAgICR2YWwgPSAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXTsKICAgICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKICAgICRvbmVyb3ctPm5hbWUgPSAncGFzc3dvcmQnOwogICAgJG9uZXJvdy0+dHlwZSA9IDA7CiAgICAkb25lcm93LT5jb2xvciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKICAgICRvbmVyb3ctPm1hcmtlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgICAkb25lcm93LT5yZXF1aXJlZCA9IDE7CiAgICAkb25lcm93LT5wcm9tcHQgPSAkdGhpcy0+TGFuZygncGFzc3dvcmQnKTsKICAgICRvbmVyb3ctPmNvbnRyb2wgPSR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2ZldV9pbnB1dF9wYXNzd29yZCcsICR2YWwsCgkJCQkJCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSwKCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSk7CiAgICAkb25lcm93LT5hZGR0ZXh0ID0kdGhpcy0+TGFuZygnaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnKTsKICAgICRyb3dhcnJheVskb25lcm93LT5uYW1lXSA9ICRvbmVyb3c7CiAgICAKICAgIC8vIGFuZCBtYWtlIGhpbSByZXBlYXQgdGhlIHBhc3N3b3JkCiAgICAkdmFsID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF9yZXBlYXRwYXNzd29yZCddICkgKQogICAgICAkdmFsID0gJHBhcmFtc1snZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJ107CiAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICAkb25lcm93LT5uYW1lID0gJ3JlcGVhdF9wYXNzd29yZCc7CiAgICAkb25lcm93LT50eXBlID0gMDsKICAgICRvbmVyb3ctPmNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwogICAgJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAgICRvbmVyb3ctPnJlcXVpcmVkID0gMTsKICAgICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdyZXBlYXRwYXNzd29yZCcpOwogICAgJG9uZXJvdy0+Y29udHJvbCA9JHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJywgCgkJCQkJCSAkdmFsLCAKCQkJCQkJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpLAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAgICRvbmVyb3ctPmFkZHRleHQgPSR0aGlzLT5MYW5nKCdpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCcpOwogICAgJHJvd2FycmF5WyRvbmVyb3ctPm5hbWVdID0gJG9uZXJvdzsKICB9CiAgICAgICAgCi8vIG5vdyBmb3IgdGhlIHByb3BlcnRpZXMKJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVpZCk7CmZvcmVhY2goICRwcm9wZXJ0aWVzIGFzICRwcm9wICkKewogIC8vIGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbgogICRkZWZuID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbiggJHByb3BbJ25hbWUnXSApOwogICR2YWwgPSAkdGhpcy0+R2V0VXNlclByb3BlcnR5RnVsbCggJHByb3BbJ25hbWUnXSwgJHVpZCApOwoKICAkcmVhZG9ubHl0ZXh0ID0gJyc7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDQgKQogICAgewogICAgICAkcmVhZG9ubHl0ZXh0PSdyZWFkb25seT0icmVhZG9ubHkiJzsKICAgICAgaWYoICRkZWZuWyd0eXBlJ10gPT0gNCB8fCAkZGVmblsndHlwZSddID09IDUgKQoJewoJICAkcmVhZG9ubHl0ZXh0PSdkaXNhYmxlZD0iZGlzYWJsZWQiJzsKCX0KICAgIH0KICAkY2xhc3NuYW1lID0gJHByb3BbJ25hbWUnXTsKICAkYWRkdGV4dCA9ICRyZWFkb25seXRleHQ7CgogICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsgCgogIC8vIEhhbmRsZSBoaWRkZW4gZmllbGRzIGRpZmZlcmVudGx5CiAgJG9uZXJvdy0+bmFtZSAgICAgPSAnaW5wdXRfJy4kcHJvcFsnbmFtZSddOwogICRvbmVyb3ctPmlkICAgICAgID0gJGlkLiRvbmVyb3ctPm5hbWU7CiAgaWYoICRwcm9wWydyZXF1aXJlZCddID09IDMgKQogICAgewogICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCAkaWQsICdmZXVfaW5wdXRfJy4kcHJvcFsnbmFtZSddLCR2YWwpOwkJCQkJCQkJICAgCQkJCSAgIAogICAgICAkcm93YXJyYXlbJG9uZXJvdy0+bmFtZV0gPSAkb25lcm93OwogICAgICBjb250aW51ZTsKICAgIH0KCiAgJGNvbG9yID0gJyc7CiAgJG1hcmtlciA9ICcnOwogIGlmKCAkZGVmblsnZW5jcnlwdCddICkKICAgIHsKICAgICAgJGNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9jb2xvcicsJ3llbGxvdycpOwogICAgICAkbWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9tYXJrZXInLCdeXicpOwogICAgfQogIGlmKCAkcHJvcFsncmVxdWlyZWQnXSA9PSAyICkgJGNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwogIGlmKCAkcHJvcFsncmVxdWlyZWQnXSA9PSAyICkgJG1hcmtlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CgogICRvbmVyb3ctPnJlcXVpcmVkID0gKCRwcm9wWydyZXF1aXJlZCddID09IDIpOwogICRvbmVyb3ctPnN0YXR1cyAgID0gJHByb3BbJ3JlcXVpcmVkJ107CiAgJG9uZXJvdy0+dHlwZSA9ICRkZWZuWyd0eXBlJ107CiAgJG9uZXJvdy0+Y29sb3IgICAgPSAkY29sb3I7CiAgJG9uZXJvdy0+bWFya2VyICAgPSAkbWFya2VyOwogICRvbmVyb3ctPmNsYXNzbmFtZSA9ICRjbGFzc25hbWU7CgogIC8vQWRkZWQgYnkgU2lsbWFyaWxsaW9uCiAgaWYgKGlzc2V0KCRwYXJhbXNbJ2ZldV8nLiRvbmVyb3ctPm5hbWVdKSkgewogICAgJHZhbD0kcGFyYW1zWydmZXVfJy4kb25lcm93LT5uYW1lXTsKICB9CgoKICBzd2l0Y2goICRkZWZuWyd0eXBlJ10gKQogICAgewogICAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdmZXVfJy4kb25lcm93LT5uYW1lLAoJCQkJCQkgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAKCQkJCQkJICRkZWZuWydtYXhsZW5ndGgnXSwKCQkJCQkJICRhZGR0ZXh0KTsKICAgICAgYnJlYWs7CgogICAgY2FzZSAxOiAvLyBjaGVja2JveAogICAgICAkb25lcm93LT5jb250cm9sID0gUlJVdGlsczo6bXlDcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsIAoJCQkJCQkJICdmZXVfJy4kb25lcm93LT5uYW1lLAoJCQkJCQkJIDEsICR2YWwsCgkJCQkJCQkgJGFkZHRleHQpOwogICAgICBicmVhazsKCiAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdmZXVfJy4kb25lcm93LT5uYW1lLAoJCQkJCQkgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAKCQkJCQkJICRkZWZuWydtYXhsZW5ndGgnXSwKCQkJCQkJICRhZGR0ZXh0KTsKICAgICAgYnJlYWs7CgogICAgY2FzZSAzOiAvLyB0ZXh0YXJlYQogICAgICAkZmxhZyA9IGZhbHNlOwogICAgICBpZiggaXNzZXQoJGRlZm5bJ2F0dHJpYnMnXSkgJiYgIWVtcHR5KCRkZWZuWydhdHRyaWJzJ10pICkKCXsKCSAgJGF0dHJpYnMgPSB1bnNlcmlhbGl6ZSgkZGVmblsnYXR0cmlicyddKTsKCSAgaWYoIGlzX2FycmF5KCRhdHRyaWJzKSAmJiBpc3NldCgkYXR0cmlic1snd3lzaXd5ZyddKSApCgkgICAgewoJICAgICAgJGZsYWcgPSAkYXR0cmlic1snd3lzaXd5ZyddOwoJICAgIH0KCX0KICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVUZXh0QXJlYSgkZmxhZywgJGlkLCAkdmFsLCAKCQkJCQkgICAgICAgJ2ZldV8nLiRvbmVyb3ctPm5hbWUpOwogICAgICBicmVhazsKCiAgICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigKCQkJCQkJICAgICRpZCwgCgkJCQkJCSAgICAnZmV1XycuJG9uZXJvdy0+bmFtZSwKCQkJCQkJICAgICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJICAgIC0xLCAKCQkJCQkJICAgICR2YWwsCgkJCQkJCSAgICAkYWRkdGV4dCk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgNTogLy8gbXVsdGlzZWxlY3QKICAgICAgewoJJHNlbGVjdGVkID0gZXhwbG9kZSgnLCcsJHZhbCk7Cgkkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgKCQkJCQkJCSRpZCwgCgkJCQkJCQknZmV1XycuJG9uZXJvdy0+bmFtZS4nW10nLCAKCQkJCQkJCSR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sIDEpLCAKCQkJCQkJCSRzZWxlY3RlZCwKCQkJCQkJCSRkZWZuWydsZW5ndGgnXSwKCQkJCQkJCSRhZGR0ZXh0KTsKCWJyZWFrOwogICAgICB9CgogICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICB7CglnbG9iYWwgJGdDbXM7CgkkZGVzdERpcjEgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3BhdGgnXS5ESVJFQ1RPUllfU0VQQVJBVE9SOwoJJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLkRJUkVDVE9SWV9TRVBBUkFUT1I7CgkkZGVzdERpcjIgPSAkZ0Ntcy0+Y29uZmlnWyd1cGxvYWRzX3VybCddLkRJUkVDVE9SWV9TRVBBUkFUT1I7CgkkZGVzdERpcjIgLj0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdmZXVzZXJzJykuRElSRUNUT1JZX1NFUEFSQVRPUjsKCSRmaWxlMSA9ICRkZXN0RGlyMS4kdmFsOwoJJGZpbGUyID0gJGRlc3REaXIyLiR2YWw7CglpZiggaXNfcmVhZGFibGUoICRmaWxlMSApICYmIGlzX2ZpbGUoJGZpbGUxKSApCgkgIHsKCSAgICAkb25lcm93LT5pbWFnZSA9ICc8aW1nIHNyYz0iJy4kZmlsZTIuJyIgYWx0PSInLiR2YWwuJyIvPic7CgkgICAgaWYoICEkb25lcm93LT5yZXF1aXJlZCApCgkgICAgICB7CgkJJG9uZXJvdy0+cHJvbXB0MiA9ICR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXInKTsKCQkkb25lcm93LT5jb250cm9sMiA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwKCQkJCQkJCSAgICAgICAnZmV1XycuJG9uZXJvdy0+bmFtZS4nX2NsZWFyJywKCQkJCQkJCSAgICAgICAnY2xlYXInLCcnKTsKCSAgICAgIH0KCSAgfQoJJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2ZldV8nLiRvbmVyb3ctPm5hbWUsJHZhbCkuCgkgICR0aGlzLT5DcmVhdGVGaWxlVXBsb2FkSW5wdXQoJGlkLCdmZXVfJy4kb25lcm93LT5uYW1lLCAnJywgJGRlZm5bJ2xlbmd0aCddKTsKCWJyZWFrOwogICAgICB9CgogICAgY2FzZSAnNyc6IC8vIHJhZGlvIGdyb3VwCiAgICAgIHsKCSRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJ2ZldV8nLiRvbmVyb3ctPm5hbWUsCgkJCQkJCQkkdGhpcy0+R2V0U2VsZWN0T3B0aW9ucygkZGVmblsnbmFtZSddLDEpLAoJCQkJCQkJJHZhbCwgJycsICc8YnIvPicpOwoJICAgIAogICAgICB9CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgJzgnOiAvLyBkYXRlCiAgICAgIHsKCSRwYXJtcyA9IGFycmF5KCk7CgkkcGFybXNbJ3ByZWZpeCddID0gJGlkLidmZXVfJy4kb25lcm93LT5uYW1lOwoJaWYoICR2YWwgKSAgJHBhcm1zWyd0aW1lJ10gPSAkdmFsOwoJJHBhcm1zWydzdGFydF95ZWFyJ10gPSAiLTUiOwoJJHBhcm1zWydlbmRfeWVhciddID0gIisxMCI7CgoJaWYoIGlzc2V0KCRkZWZuWydhdHRyaWJzJ10pICYmICFlbXB0eSgkZGVmblsnYXR0cmlicyddKSApCgkgIHsKCSAgICAkYXR0cmlicyA9IHVuc2VyaWFsaXplKCRkZWZuWydhdHRyaWJzJ10pOwoJICAgIGlmKCBpc3NldCgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICYmICFlbXB0eSgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICkKCSAgICAgIHsKCQkkcGFybXNbJ3N0YXJ0X3llYXInXSA9ICRhdHRyaWJzWydzdGFydHllYXInXTsKCSAgICAgIH0KCSAgICBpZiggaXNzZXQoJGF0dHJpYnNbJ2VuZHllYXInXSkgJiYgIWVtcHR5KCRhdHRyaWJzWydlbmR5ZWFyJ10pICkKCSAgICAgIHsKCQkkcGFybXNbJ2VuZF95ZWFyJ10gPSAkYXR0cmlic1snZW5keWVhciddOwoJICAgICAgfQoJICB9CgoJJHN0ciA9ICd7aHRtbF9zZWxlY3RfZGF0ZSAnOwoJZm9yZWFjaCggJHBhcm1zIGFzICRrZXk9PiR2YWx1ZSApCgkgIHsKCSAgICAkc3RyLj0ka2V5Lic9IicuJHZhbHVlLiciICc7CgkgIH0KCSRzdHIgLj0gJ30nOwoJJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkc3RyKTsKICAgICAgfQogICAgICBicmVhazsKICAgIH0KICAkb25lcm93LT5sYWJlbGZvciA9ICRpZC4kcHJvcFsnbmFtZSddOwogICRvbmVyb3ctPnR5cGUgPSAkZGVmblsndHlwZSddOwogICRvbmVyb3ctPmxlbmd0aCA9ICRkZWZuWydsZW5ndGgnXTsKICAkb25lcm93LT5tYXhsZW5ndGggPSAkZGVmblsnbWF4bGVuZ3RoJ107CiAgJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwogICRyb3dhcnJheVskcHJvcFsnbmFtZSddXSA9ICRvbmVyb3c7Cn0KCi8vIGZpbGwgaW4gdGhlIHZhcmlhYmxlcyBmb3IgdGhlIHRlbXBsYXRlCiR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGUnLCR0aGlzLT5MYW5nKCd1c2VyX3NldHRpbmdzJykpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJICAgICAgJHRoaXMtPmZlQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fdXNlcmNoYW5nZXNldHRpbmdzJywKCQkJCQkgICAgICAgJHJldHVybmlkLCB0cnVlLCAncG9zdCcsIAoJCQkJCSAgICAgICAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScgKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZmV1X3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZmV1X2NhbmNlbCcsJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7CgppZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApCiAgewogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLAoJCQkgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2ZldV9yZXR1cm50bycsJHBhcmFtc1sncmV0dXJudG8nXSkpOwogIH0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmb3JtaWQnLCRpZCk7CiR0aGlzLT5zbWFydHktPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NvbnRyb2xjb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdmZXVzZXJzX2NoYW5nZXNldHRpbmdzZm9ybScpOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.user_forgotpassword.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKJHVzZXJuYW1lID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSApICkKICB7CiAgICAkdXNlcm5hbWUgPSB0cmltKCAkcGFyYW1zWydpbnB1dF91c2VybmFtZSddICk7CiAgfQoKaWYoIGlzc2V0KCAkcGFyYW1zWydlcnJvciddICkgKQogIHsKICAgICRlcnJvciA9IGh0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ2Vycm9yJ10pKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZXJyb3InLCRlcnJvcik7CiAgfQppZiggaXNzZXQoICRwYXJhbXNbJ21lc3NhZ2UnXSApICkKICB7CiAgICAkbWVzc2FnZSA9IGh0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ21lc3NhZ2UnXSkpOwogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkbWVzc2FnZSk7CiAgfQoKaWYoICFpc3NldCggJHBhcmFtc1snc2tpcGZvcm1kaXNwbGF5J10gKSApCiAgewogICAgLy8gc2V0dXAgdGhlIHRlbXBsYXRlCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsCgkJCSAgJHRoaXMtPmZlQ3JlYXRlRm9ybVN0YXJ0KCAkaWQsICdkb19mb3Jnb3RwdycsICRyZXR1cm5pZCApKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsCgkJCSAgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RpdGxlJywKCQkJICAkdGhpcy0+TGFuZygnZm9yZ290cHcnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xvc3Rwd19tZXNzYWdlJywKCQkJICAkdGhpcy0+TGFuZygnbG9zdHB3X21lc3NhZ2UnKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZScsCgkJCSAgJHRoaXMtPkxhbmcoJ3Byb21wdF91c2VybmFtZScpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRfbGFiZWwnLCRpZCk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0X3VzZXJuYW1lJywKCQkJICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCAkaWQsICdpbnB1dF91c2VybmFtZScsCgkJCQkJCSAgJHVzZXJuYW1lLCAKCQkJCQkJICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnKSwgCgkJCQkJCSAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsCgkJCSAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ3JldHVybnRvJ10gKSApCiAgICAgIHsKCSR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywKCQkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwnaW5wdXRfcmV0dXJudG8nLCRwYXJhbXNbJ3JldHVybnRvJ10pKTsKICAgICAgfQogIH0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCAnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nICk7CgovLyBFT0YKPz4K]]></data>
	</file>
	<file>
	  <filename>/function.user_loginform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQpnbG9iYWwgJGdDbXM7CmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApCiAgewogICAgJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfTE9HSU4pICkKICAgICAgewoJLy8gdGhlIGNvbnN1bWVyIHByb3ZpZGVzIHRoZSBsb2dpbiBjYXBhYmlsaXRpZXMKCWVjaG8gJGNvbnN1bWVyLT5nZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoJcmV0dXJuOwogICAgICB9CiAgICBlbHNlCiAgICAgIHsKCXJldHVybjsKICAgICAgfQogIH0KCi8vIHRoZSByZW1haW5lciBpcyB0aGUgYnVpbHRpbiBhdXRoZW50aWNhdGlvbiBjb25zdW1lci4KJHNtYXJ0eSA9JiAkZ0Ntcy0+R2V0U21hcnR5KCk7CgovLyBidWlsZCB0aGUgZm9ybQokY2FwdGNoYSA9JiAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgIWlzc2V0KCRwYXJhbXNbJ25vY2FwdGNoYSddKSApCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdjYXB0Y2hhX3RpdGxlJywgJHRoaXMtPkxhbmcoJ2NhcHRjaGFfdGl0bGUnKSk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X2NhcHRjaGEnLAoJCSAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfY2FwdGNoYScsJycsMTApKTsKICAgICRzbWFydHktPmFzc2lnbignY2FwdGNoYScsICRjYXB0Y2hhLT5nZXRDYXB0Y2hhKCkpOwogIH0KCiR1c2VybmFtZSA9IChpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfdXNlcm5hbWUnXSk/JHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ106JycpOwokcGFzc3dvcmQgPSAoaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0X3Bhc3N3b3JkJ10pPyRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddOicnKTsKJHJlbWVtYmVybWUgPSAoaXNzZXQoJHBhcmFtc1snZmV1X3JlbWVtYmVybWUnXSk/JHBhcmFtc1snZmV1X3JlbWVtYmVybWUnXTonJyk7CgokaW5saW5lID0gdHJ1ZTsKaWYoIGlzc2V0KCRwYXJhbXNbJ25vaW5saW5lJ10pICkKICB7CiAgICAkaW5saW5lID0gZmFsc2U7CiAgfQovLyBpZiggIWlzc2V0KCRwYXJhbXNbJ3JldHVybnRvJ10pICkKLy8gICB7Ci8vICAgICAkcGFyYW1zWydyZXR1cm50byddID0gJHJldHVybmlkOwovLyAgIH0KCiRjZ2UgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NHRXh0ZW5zaW9ucycpOwppZiggJGNnZSAmJiBpc3NldCgkcGFyYW1zWydyZXR1cm5sYXN0J10pICkKICB7CiAgICAkdGhpc191cmwgPSBjZ2VfdXJsOjpjdXJyZW50X3VybCgpOwogICAgJF9TRVNTSU9OWydmZXVfcHJlbG9naW5fdXJsJ10gPSAkdGhpc191cmw7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2ZldV9wcmVsb2dpbl91cmwnLCR0aGlzX3VybCk7CiAgfQoKJHNtYXJ0eS0+YXNzaWduKCdlcnJvcicsIGlzc2V0KCRwYXJhbXNbJ2Vycm9yJ10pID8gJHBhcmFtc1snZXJyb3InXSA6ICcnKTsKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAKCQkkdGhpcy0+ZmVDcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX2xvZ2luJywgJHJldHVybmlkLCAkaW5saW5lLAoJCQkJCSAgJ3Bvc3QnLCAnJywgJycsICRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdpZF91c2VybmFtZScsJGlkLidmZXVfaW5wdXRfdXNlcm5hbWUnKTsKaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZScsICR0aGlzLT5MYW5nKCdwcm9tcHRfZW1haWwnKSk7CiAgfQplbHNlCiAgewogICAgJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdXNlcm5hbWUnLCAkdGhpcy0+TGFuZygncHJvbXB0X3VzZXJuYW1lJykpOwogIH0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF91c2VybmFtZScsIAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJ2ZldV9pbnB1dF91c2VybmFtZScsCgkJCQkJJHVzZXJuYW1lLAoJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpLAoJCQkJCSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSkpOwoKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9sYWJlbCcsICRpZCApOwokc21hcnR5LT5hc3NpZ24oJ2lkX3Bhc3N3b3JkJywkaWQuJ2ZldV9pbnB1dF9wYXNzd29yZCcpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wYXNzd29yZCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfcGFzc3dvcmQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcGFzc3dvcmQnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2ZldV9pbnB1dF9wYXNzd29yZCcsCgkJCQkJCSAkcGFzc3dvcmQsIAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksIAoJCQkJCQkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9yZW1lbWJlcm1lJywkdGhpcy0+TGFuZygncHJvbXB0X3JlbWVtYmVybWUnKSk7CiRzbWFydHktPmFzc2lnbignaWRfcmVtZW1iZXJtZScsJGlkLidmZXVfcmVtZW1iZXJtZScpOwoKaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2Vjb29raWVzdG9yZW1lbWJlcicpICYmCiAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpICE9ICcnICYmCiAgICBmdW5jdGlvbl9leGlzdHMoJ21jcnlwdF9tb2R1bGVfb3BlbicpICkKICB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlbWVtYmVybWUnLAoJCSAgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2ZldV9yZW1lbWJlcm1lJywxLAoJCQkJCSAgICAgICAkcmVtZW1iZXJtZSkpOwogIH0KCiRzbWFydHktPmFzc2lnbignaW5wdXRfc3VibWl0JywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZmV1X2J0bl9sb2dpbicsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzaWduaW5fYnV0dG9uJywkdGhpcy0+TGFuZygnbG9naW4nKSkpKTsKCi8vIGZyb20gdGhpcyBwb2ludCBmb3J3YXJkLCBhbnkgbGlua3MsIGV0Yy4uLiBzaG91bGQgcmV0dXJuIHRvIHRoaXMgcGFnZQovLyBpZiB0aGV5IGNhbgokcGFyYW1zWydyZXR1cm50byddID0gICRyZXR1cm5pZDsKCiRwYWdlID0gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRmb3Jnb3RwYXNzd2QnKSk7CmlmKCAkcGFnZSApCiAgewogICAgJHBpZCA9IENvbnRlbnRNYW5hZ2VyOjpHZXRQYWdlSURGcm9tQWxpYXMoICRwYWdlICk7CiAgICBpZiggJHBpZCA9PSBmYWxzZSApCiAgICAgIHsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfZm9yZ290JywnPCEtLSBFcnJvciBjb3VsZCBub3QgZGV0ZXJtaW5lIHBhZ2UgZnJvbSBhbGlhcy9pZCAtLT4nKTsKICAgICAgfQogICAgZWxzZSAKICAgICAgewoJJHBhcmFtc1snZm9ybSddID0gJ2ZvcmdvdHB3JzsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2xpbmtfZm9yZ290JywKCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcGlkLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2ZvcmdvdHB3JyksCgkJCQkJICAkcGFyYW1zKSk7CgkvL251bm8tZGV2LVByZXR0eSBVcmwncwoJJHByZXR0eXVybF9mb3Jnb3QgPSAnZmV1L2ZvcmdvdC8nLiRwaWQ7CgkkZm9yZ290X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcGlkLCAgJycsCgkJCQkJJHBhcmFtcywgJycsIAoJCQkJCXRydWUsIGZhbHNlLCAnJywgZmFsc2UsICRwcmV0dHl1cmxfZm9yZ290KTsKCQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmxfZm9yZ290JywkZm9yZ290X2ZldSk7CgkJCgoJJHBhcmFtc1snZm9ybSddID0gJ2xvc3R1c2VybmFtZSc7Cgkkc21hcnR5LT5hc3NpZ24oJ2xpbmtfbG9zdHVuJywKCQkJJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcGlkLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2xvc3R1c2VybmFtZScpLAoJCQkJCSAgJHBhcmFtcykpOwoJCQkJCSAgCS8vbnVuby1kZXYtUHJldHR5IFVybCdzCgkkcHJldHR5dXJsX2xvc3R1biA9ICdmZXUvbG9zdHVzZXJuYW1lLycuJHBpZDsKCSRsb3N0dW5fZmV1ID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVmYXVsdCcsICRwaWQsICAnJywKCQkJCSAgICAkcGFyYW1zLCAnJywgCgkJCQkJdHJ1ZSwgZmFsc2UsICcnLCBmYWxzZSwgJHByZXR0eXVybF9sb3N0dW4pOwoJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9sb3N0dW4nLCRsb3N0dW5fZmV1KTsKICAgICAgfQogIH0KIGVsc2UgCiAgIHsKICAgICAkcGFyYW1zWydmb3JtJ10gPSAnZm9yZ290cHcnOwogICAgICRzbWFydHktPmFzc2lnbignbGlua19mb3Jnb3QnLAoJCSAgICAgJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdkZWZhdWx0JywKCQkJCSAgICAgICAkdGhpcy0+TGFuZygnZm9yZ290cHcnKSwKCQkJCSAgICAgICAkcGFyYW1zKSk7CgkkZm9yZ290X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlZmF1bHQnLCAkcmV0dXJuaWQsICAnJywKCQkJCQkkcGFyYW1zLCAnJywgCgkJCQkJdHJ1ZSwgZmFsc2UsICcnLCBmYWxzZSk7CgkKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndXJsX2ZvcmdvdCcsJGZvcmdvdF9mZXUpOwoJCQoJCSAgICAgICAgICAgICAgICAJLyoKCSAgCSQkc21hcnR5LT5hc3NpZ24oJ3VybF9mb3Jnb3QnLAoJCSAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCdkZWZhdWx0JywkcmV0dXJuaWQsJycsCgkJCQkgICAgICAgJHBhcmFtcywnJyx0cnVlKSk7CgkgICAgICAgICAgICAgICAgICAgICAgICAqLwoJCSAvL2VuZCAKCQkJCQkgIAoJCQkJCSAgCiAgICAgICAgICRwYXJhbXNbJ2Zvcm0nXSA9ICdsb3N0dXNlcm5hbWUnOwogICAgICAgICRzbWFydHktPmFzc2lnbignbGlua19sb3N0dW4nLAoJCSAgICAgJHRoaXMtPkNyZWF0ZUZyb250ZW5kTGluaygkaWQsJHJldHVybmlkLCdkZWZhdWx0JywKCQkJCSAgICAgICAkdGhpcy0+TGFuZygnbG9zdHVzZXJuYW1lJyksCgkJCQkgICAgICAgJHBhcmFtcykpOwoJCQkJICAgICAgIAoJJGxvc3R1bl9mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAgJycsCgkJCQkJJHBhcmFtcywgJycsIAoJCQkJCXRydWUsIGZhbHNlLCAnJywgZmFsc2UpOwoJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9sb3N0dW4nLCRsb3N0dW5fZmV1KTsKICAgfQppZiAoaXNzZXQoJHBhcmFtc1snb25seV9ncm91cHMnXSkpIHsKICAkc21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAnPGRpdj4nLiR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdvbmx5X2dyb3VwcycsICRwYXJhbXNbJ29ubHlfZ3JvdXBzJ10pIC4nPC9kaXY+Jy4gJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiB9CiBlbHNlIHsKICAgJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiB9CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZUZyb21EYXRhYmFzZSgnZmV1c2Vyc19sb2dpbmZvcm0nKTsKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.user_logoutform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQpnbG9iYWwgJGdDbXM7CgppZiggIWZldV91dGlsczo6dXNpbmdfc3RkX2NvbnN1bWVyKCkgKQogIHsKICAgICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgIGlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0xPR09VVCkgKQogICAgICB7CgkvLyB0aGUgY29uc3VtZXIgcHJvdmlkZXMgdGhlIGxvZ2luIGNhcGFiaWxpdGllcwoJJGNvbnN1bWVyLT5nZXRfbG9nb3V0X2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CglyZXR1cm47CiAgICAgIH0KICB9CmVsc2UKICB7CiAgICAvLyBkbyB0aGUgZGVmYXVsdAogICAgJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICBpZiggISR1aWQgKSByZXR1cm47CiAgICAkdXNlcm5hbWUgPSAkdGhpcy0+TG9nZ2VkSW5OYW1lKCk7CgogICAgJGNnZSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ0dFeHRlbnNpb25zJyk7CiAgICBpZiggJGNnZSAmJiBpc3NldCgkcGFyYW1zWydyZXR1cm5sYXN0J10pICkKICAgICAgewoJJHRoaXNfdXJsID0gY2dlX3VybDo6Y3VycmVudF91cmwoKTsKCSRfU0VTU0lPTlsnZmV1X3ByZWxvZ291dF91cmwnXSA9ICR0aGlzX3VybDsKCSRzbWFydHktPmFzc2lnbignZmV1X3ByZWxvZ291dF91cmwnLCR0aGlzX3VybCk7CiAgICAgIH0KCiAgICAvLyByZXBsYWNlIHskZ3JvdXBuYW1lfSB3aXRoIHRoZSBmaXJzdCBncm91cG5hbWUgd2UgY2FuIGZpbmQgdGhhdCBtYXRjaGVzCiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CiAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CgogICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbG9nZ2VkaW4nLAoJCQkgICR0aGlzLT5MYW5nKCdtc2dfY3VycmVudGx5bG9nZ2VkaW5hcycpKTsKICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigndXNlcmlkJywgJHVpZCk7CiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lJywgJHVzZXJuYW1lKTsKCiAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xpbmtfbG9nb3V0JywKCQkJICAkdGhpcy0+Q3JlYXRlRnJvbnRlbmRMaW5rKCRpZCwkcmV0dXJuaWQsImxvZ291dCIsCgkJCQkJCSAgICAkdGhpcy0+TGFuZygnbG9nb3V0JykpKTsKICAgLy9udW5vLWRldi1QcmV0dHkgVXJsJ3MKCSRwcmV0dHl1cmxfbG9nb3V0ID0gJ2ZldS9sb2dvdXQvJy4kcmV0dXJuaWQ7CgkkbG9nb3V0X2ZldSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2xvZ291dCcsICRyZXR1cm5pZCwgICcnLAoJCQkJICAgIGFycmF5KCksICcnLCB0cnVlLCBmYWxzZSwgJycsIGZhbHNlLCAkcHJldHR5dXJsX2xvZ291dCk7CgkKCSR0aGlzLT5zbWFydHktPmFzc2lnbigndXJsX2xvZ291dCcsICRsb2dvdXRfZmV1KTsKCS8vZW5kCgogICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICRwYXJtc1snZm9ybSddID0gJ2NoYW5nZXNldHRpbmdzJzsKICAgICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm5pZDsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydsYW5nJ10pICkKICAgIHsKICAgICAgJHBhcm1zWydsYW5nJ10gPSAkcGFyYW1zWydsYW5nJ107CiAgICB9CgogICAgJHBhZ2UgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9jaGFuZ2VzZXR0aW5ncycpKTsKICAgIGlmKCAkcGFnZSApCiAgICB7CiAgICAgICRwYWdlaWQgPSBDb250ZW50TWFuYWdlcjo6R2V0UGFnZUlERnJvbUFsaWFzKCAkcGFnZSApOwogICAgICBpZiggJHBhZ2VpZCA9PSBmYWxzZSApCiAgICAgIHsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xpbmtfY2hhbmdlc2V0dGluZ3MnLCc8IS0tIEVycm9yIGNvdWxkIG5vdCBkZXRlcm1pbmUgcGFnZSBmcm9tIGFsaWFzL2lkIC0tPicpOwogICAgICB9CiAgICAgIGVsc2UgCiAgICAgIHsKICAgICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2xpbmtfY2hhbmdlc2V0dGluZ3MnLAoJCQkgICAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnZGVmYXVsdCcsICRwYWdlaWQsCgkJCQkJCSAkdGhpcy0+TGFuZygncHJvbXB0X2NoYW5nZXNldHRpbmdzJyksCgkJCQkJCSAkcGFybXMpKTsKCSRjaGFuZ2VzZXR0aW5nc19mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHBhZ2VpZCwgICcnLAoJCQkJCQkkcGFybXMsICcnLAoJCQkJCQl0cnVlLCBmYWxzZSwgJycsIGZhbHNlKTsKCQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd1cmxfY2hhbmdlc2V0dGluZ3MnLCRjaGFuZ2VzZXR0aW5nc19mZXUpOwoJLy9lbmQKICAgICAgfQogICAgfQogICAgZWxzZQogICAgewogICAgICAgJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdsaW5rX2NoYW5nZXNldHRpbmdzJywKCQkJICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ2RlZmF1bHQnLCRyZXR1cm5pZCwKCQkJCQkgICAgJHRoaXMtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncycpLAoJCQkJCSAgICAkcGFybXMpKTsKCSRjaGFuZ2VzZXR0aW5nc19mZXUgPSAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdkZWZhdWx0JywgJHJldHVybmlkLCAgJycsCgkJCQkJCSRwYXJtcywgJycsCgkJCQkJCXRydWUsIGZhbHNlLCAnJywgZmFsc2UpOwoJCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3VybF9jaGFuZ2VzZXR0aW5ncycsJGNoYW5nZXNldHRpbmdzX2ZldSk7CiAgICB9CiAgICAkcHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoICR0aGlzLT5Mb2dnZWRJbklkKCkgKTsKICAgIGlmKCAkcHJvcHMgIT09IGZhbHNlICkKICAgICAgewoJZm9yZWFjaCggJHByb3BzIGFzICRwICkKCSAgewoJICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigkcFsndGl0bGUnXSwkcFsnZGF0YSddKTsKCSAgfQogICAgICB9CiAgICBlY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJ2ZldXNlcnNfbG9nb3V0Zm9ybScpOwogIH0KIwojIEVPRgojCj8+]]></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>/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[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICdOb25lJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnRGVsZXRlIFVzZXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdFeHBpcmUgVXNlcic7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBjYW5jZWxsZWQnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGRlbGV0ZWQnOwokbGFuZ1snZWNvbW1lcmNlX3NldHRpbmdzJ10gPSAnRWNvbW1lcmNlIFNldHRpbmdzJzsKJGxhbmdbJ3NlY3VyZWZpZWxkbWFya2VyJ10gPSAnU2VjdXJlIEZpZWxkIE1hcmtlcic7CiRsYW5nWydzZWN1cmVmaWVsZGNvbG9yJ10gPSAnU2VjdXJlIEZpZWxkIENvbG9yJzsKJGxhbmdbJ3Byb21wdF9lbmNyeXB0J10gPSAnU3RvcmUgdGhpcyBkYXRhIGVuY3J5cHRlZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnVGhlIGNob3NlbiBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBnaXZlbiB5b3VyIGN1cnJlbnQgY29uZmlndXJhdGlvbic7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdVc2VyIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdJZiBhIHVzZXIgaXMgYXV0aGVudGljYXRlZCBieSBhbiBleHRlcm5hbCBhdXRoZW50aWNhdGlvbiBtb2R1bGUgYnV0IGlzIG5vdCBrbm93biBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgc2hvdWxkIGFuIEZFVSBhY2NvdW50IGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseT8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNhbGx5IENyZWF0ZSBVbmtub3duIFVzZXJzJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdEaXNwbGF5IFNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIGFyZSBvbmx5IGFwcGxpY2FibGUgaWYgdXNpbmcgdGhlICZxdW90O0J1aWx0aW4gQXV0aGVudGljYXRpb24mcXVvdDsuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gcmVxdWVzdCBsb3N0IGxvZ2luIGluZm9ybWF0aW9uLCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byBhIHBhc3N3b3JkIHJlc2V0LCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCB0aGVpciB1c2VybmFtZSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgY2hhbmdlJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdBdXRoZW50aWNhdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0J1aWx0aW4gQXV0aGVudGljYXRpb24nOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnRkVVIFN0YW5kYXJkIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnQXV0aGVudGljYXRpb24gTW9kdWxlL01ldGhvZCc7CiRsYW5nWydpbmZvX2F1dGhfbW9kdWxlJ10gPSAnVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIHN1cHBvcnRzIHVzaW5nIGFsdGVybmF0ZSBhdXRoZW50aWNhdGlvbiBtZXRob2RzLCB3aXRoIHZhcnlpbmcgY2FwYWJpbGl0aWVzLiAgU29tZSBmdW5jdGlvbmFsaXR5IHdpbGwgbm90IGZ1bmN0aW9uIG9yIGJlIGRpc2FibGVkIHdoZW4gbm90IHVzaW5nIHRoZSBidWlsdCBpbiBhdXRoZW50aWNhdGlvbiBtZXRob2QnOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyBpcyBhbHJlYWR5IGluIHVzZSBieSBhbm90aGVyIHVzZXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pcXVlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1RoZSB2YWx1ZSBzcGVjaWZpZWQgZm9yICVzICglcykgaXMgbm90IHVuaXF1ZSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yY2UgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlciBhY2NvdW50cyc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVc2VkIHdpdGggdGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGlmIHNwZWNpZmllZCB3aWxsIGluZGljYXRlIHRoYXQgdGhlIHVzZXIgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSBwYWdlIChieSB1cmwpIHRoYXQgdGhlIHVzZXIgd2FzIHZpZXdpbmcgYmVmb3JlIHRoZSBhY3Rpb24gb2NjdXJyZWQuICBUaGlzIHBhcmFtZXRlciB3aWxsIG92ZXJyaWRlIHRoZSByZWRpcmVjdCBwcmVmZXJlbmNlcywgYW5kIHRoZSByZXR1cm50byBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2VkIHdpdGggb25lIG9mIHRoZSBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoYXQgdGhlIGZvcm1zIHNob3VsZCBub3QgYmUgcGxhY2VkIGlubGluZSwgaW5zdGVhZCB0aGUgcmVzdWx0aW5nIG91dHB1dCBhZnRlciBmb3JtIHN1Ym1pc3Npb24gd2lsbCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2snOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0xvZ2luIFNlc3Npb24gVGltZW91dCBXYXJuaW5nJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICImcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0b3JzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0IG9uZSBvciBtb3JlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoaXMgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnQSBncm91cCBtdXN0IGJlIHNlbGVjdGVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IFllYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmQgWWVhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUaHVtYm5haWwgU2l6ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSBzZWxlY3RlZCB1c2Vycz8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9udGhzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQcm9wZXJ0eSBTZXR0aW5ncyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1JlZGlyZWN0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaW9uIGFuZCBDb29raWUgU2V0dGluZ3MnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGaWVsZCBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdUaGUgbG9zdHVzZXJuYW1lIGZsYWcgY2FuIG9ubHkgYmUgdXNlZCBvbiByZXF1aXJlZCBmaWVsZHMnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoaXMgdXNlcyB0aGUgbWNyeXB0IGZ1bmN0aW9ucyBmb3IgZW5jcnlwdGlvbiBwdXJwb3NlcywgYW5kIHRoZXkgY291bGQgbm90IGJlIGRldGVjdGVkIG9uIHlvdXIgaW5zdGFsbC4gICBQbGVhc2UgY29udGFjdCB5b3VyIHNlcnZlciBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdFZGl0aW5nIFVzZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnQ2xpY2sgaGVyZSBpZiB5b3UgY2Fubm90IHJlbWVtYmVyIHlvdXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnQ2xpY2sgaGVyZSBpZiB5b3UgY2Fubm90IHJlbWVtYmVyIHlvdXIgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdDbGljayBoZXJlIHRvIHNpZ24gb3V0JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljayBoZXJlIHRvIGFkanVzdCB5b3VyIHBhc3N3b3JkIG9yIG90aGVyIGluZm9ybWF0aW9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVmlldyBVc2VyIFRlbXBsYXRlJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbnQnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgU3ViamVjdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0VtYWlsIE5vdGlmaWNhdGlvbnMnOwokbGFuZ1snT25Mb2dpbiddID0gJ09uIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnT24gTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ09uIFNlc3Npb24gRXhwaXJ5JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ09uIE5ldyBVc2VyIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnT24gVXNlciBEZWxldGVkJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwoKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVGhlIGxvc3QgbG9naW4gZGV0YWlscyBmdW5jdGlvbmFsaXR5IGhhcyBzdWNjZXNzZnVsbHkgY29tcGxldGVkLiAgV2UgaGF2ZSBmb3VuZCBhIHVuaXF1ZSB1c2VybmFtZSB0aGF0IG1hdGNoZXMgdGhlIGRldGFpbHMgeW91IGVudGVyZWQuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdZb3VyIHVzZXJuYW1lIGlzJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBEZXRhaWxzIFRlbXBsYXRlJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBDb25maXJtIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3I6IE1vcmUgdGhhbiBvbmUgdXNlciBhY2NvdW50IG1hdGNoZWQgdGhlIHByb3BlcnRpZXMgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIG1hdGNoaW5nIHVzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIGdyb3VwIGJ5IHRoYXQgbmFtZSc7CiRsYW5nWydyZWFkb25seSddID0gJ1JlYWQgT25seSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dnZWQgb3V0IGJ5IGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1Nob3cgT25seSBMb2dnZWQgSW4gVXNlcnMnOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0xvZ291dCB0aGlzIHVzZXInOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnVXNlciBQcm9wZXJ0aWVzJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5JzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydCc7CiRsYW5nWydjbGVhciddID0gJ0NsZWFyJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydCBVc2VyIEhpc3RvcnkgVG8gQVNDSUkgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0NsZWFyIFVzZXIgSGlzdG9yeSByZWNvcmRzIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnRm9yZ290IFlvdXIgTG9naW4gRGV0YWlscz8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0IGdyb3VwIGRlZmluaXRpb24gKGFuZCBwcm9wZXJ0aWVzKSB0byBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1VzZXIgSGlzdG9yeSBNYWludGVuYW5jZSc7CiRsYW5nWyd5ZXMnXSA9ICdZZXMnOwokbGFuZ1snbm8nXSA9ICdObyc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdPZic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBObyBMaW1pdCAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdPbmUgSG91ciBPbGQnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2l4IEhvdXJzIE9sZCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUd2VsdmUgSG91cnMgT2xkJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnT25lIERheSBPbGQnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnT25lIFdlZWsgT2xkJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdUd28gd2Vla3MgT2xkJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdPbmUgTW9udGggT2xkJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdUaHJlZSBNb250aHMgT2xkJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2l4IE1vbnRocyBPbGQnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnT25lIFllYXIgT2xkJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dyb3VwaW5nIGFuZCBTb3J0aW5nJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdSZWNvcmRzIG1hdGNoaW5nIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0Rlc2NlbmRpbmcgVXNlcm5hbWUnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ0FzY2VuZGluZyBVc2VybmFtZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRGVzY2VuZGluZyBEYXRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0FzY2VuZGluZyBEYXRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ0Rlc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ0FzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0Rlc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0FzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdObyBIaXN0b3J5IERldGVjdGVkJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXQnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3JvdXAgQnkgSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0V2ZW50IFR5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0Rpc3BsYXkgb25seSBldmVudHMgdGhhdCBhcmUgbGVzcyB0aGFuOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnUGFnZSBMaW1pdCc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnkgUmVwb3J0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVbmtub3duJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnUmV0dXJuJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdJbXBvcnQgT3BlcmF0aW9uIENvbXBsZXRlJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpbmVzIFByb2Nlc3NlZCc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyb3JzIEVuY291bnRlcmVkJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdSZWNvcmRzIEFkZGVkJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdDb3VsZCBub3QgZmluZCBwcm9wZXJ0aWVzIGZvciBncm91cCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0NvdWxkIG5vdCBnZXQgYSByZXNwb25zZSBmcm9tIHRoZSBTTVRQIHNlcnZlcic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdGaWxlIHNwZWNpZmllZCAoJXMpIGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnSW52YWxpZCB2YWx1ZSBmb3IgZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QgZmllbGQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGaWVsZCAlcyBleGNlZWRzIG1heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEVycm9yIChsaW5lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJwo8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pgo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+CjxoNT5IZWFkZXIgbGluZTwvaDU+Cjx1bD4KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPgo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPgo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4KPC91bD4KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pgo8dWw+CjxsaT5UaGUgPHN0cm9uZz51c2VyaWQ8L3N0cm9uZz4gRmllbGQgLSBUaGUgdXNlcmlkIGZvciB0aGUgdXNlci4gQSB2YWx1ZSBpbiB0aGlzIGZpZWxkIHdpbGwgaW5kaWNhdGUgeW91IGFyZSBkb2luZyBhbiB1cGRhdGUuPC9saT4KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHBhc3N3b3JkIHRvIHNldCBmb3IgdGhlIHVzZXI8L2xpPgo8bGk+VGhlIDxzdHJvbmc+Y3JlYXRlZGF0ZTwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPgo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPgo8bGk+VGhlIDxzdHJvbmc+Z3JvdXBuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGdyb3VwcyB0aGF0IHlvdSB3YW50IHRvIGhhdmUgdGhlIHVzZXIgYmUgYSBtZW1iZXIgb2YuIElmIGFsbCByZXF1aXJlZCBmaWVsZHMgYXJlIG5vdCBmaWxsZWQgaW4gdGhlIGluc2VydC91cGRhdGUgb2YgdGhlIHJlY29yZCB3aWxsIGZhaWwuIFNlZSBNdWx0aXNlbGVjdCBGaWVsZHMgYmVsb3cgZm9yIHN5bnRheC48L2xpPgo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4KPC9saT4KPGxpPk11bHRpc2VsZWN0IEZpZWxkcwogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPgo8L2xpPgo8bGk+RGF0ZSBGaWVsZHMKICAgIDxwPk11c3QgYmUgaW4gdGhlIGZvcm1hdCBvZiBNTS1ERC1ZWVlZPC9wPgo8L2xpPgo8bGk+SW1hZ2UgRmllbGRzCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdob1wncyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgYSByZXF1aXJlZCBwYXJ0IG9mIHRoZSBkZXN0aW5hdGlvbiBncm91cCwgdGhlbiB0aGUgbmFtZSBzcGVjaWZpZWQgaW4gdGhlc2UgY29sdW1ucyBtdXN0IGV4aXN0IGluIHRoZSB1cGxvYWRzIGRpc3JlY3Rvcnkgb2YgdGhlIENNUyBpbnN0YWxsYXRpb24uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPjwvbGk+CjwvdWw+CjxoNT5Ob3RlczwvaDU+CjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC48L3A+CjxoNT5FeGFtcGxlPC9oNT4KPHByZT4KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUKPC9wcmU+Cic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnCjxoMz5PbkRlbGV0ZVVzZXI8aDM+CjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4KPGxpPjxlbT5wcm9wczwvZW0+IC0gQSBoYXNoIGZpbGxlZCB3aXRoIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSB1c2VyPC9saT4KPC91bD4gCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJwo8aDM+T25DcmVhdGVVc2VyPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4KPGg0PlBhcmFtZXRlcnM8L2g0Pgo8dWw+CjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4KPC91bD4gCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJwo8aDM+T25VcGRhdGVVc2VyPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPgo8L3VsPiAKJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJwo8aDM+T25DcmVhdGVHcm91cDxoMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+CjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+CjwvdWw+IAonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnCjxoMz5PbkRlbGV0ZUdyb3VwPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4KPC91bD4gCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICcKPGgzPk9uTG9naW48aDM+CjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPgo8L3VsPgonOyAKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICcKPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPgo8L3VsPgonOyAKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+CjwvdWw+Cic7IAokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBUaGUgZm9sbG93aW5nIGZpZWxkcyBhcmUgZnVsbCBzbWFydHkgdGVtcGxhdGVzLjxici8+QWxvbmcgd2l0aCBvdGhlciBwcmUtZXhpc3Rpbmcgc21hcnR5IHZhcmlhYmxlcyBhbmQgcGx1Z2lucywgdGhlIHskdXNlcm5hbWV9IGFuZCB7JGdyb3VwfSB2YXJpYWJsZXMgYXJlIGF2YWlsYWJpZS4gIDxlbT4oVGhlIHskZ3JvdXB9IHZhcmlhYmxlIG1hdGNoZXMgdGhlIGZpcnN0IGdyb3VwIHRvIHdoaWNoIHRoZSB1c2VyIGJlbG9uZ3MuKTwvZW0+Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdBIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbnZhbGlkIEVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdXZSBjb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc2VyIEFkZGVkICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXNlciBEZWxldGVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3BlcnR5JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgYWRkcmVzcyBhbHJlYWR5IHVzZWQnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoQWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXJcJ3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb25cJ3Qgc2V0IHRoaXMgd2l0aCAiYWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyIhKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAiZm9yZ290IHBhc3N3b3JkIiByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhBbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuXCd0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzZSBGcm9udC1lbmQgVXNlciBzcGVjaWZpYyBwZXJtaXNzaW9ucz8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0NvdWxkIG5vdCBmaW5kIHRoZSB1cGxvYWRlZCBmaWxlIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdUaGVyZSB3YXMgYSBwcm9ibGVtIHdpdGggeW91ciB1cGxvYWRlZCBmaWxlLiAgUGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1lvdSBkaWQgbm90IGVudGVyIHlvdXIgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSBwYXNzd29yZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBMb2dvdXQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgVXNlciBMb2dpbic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9InJlZCI+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB3b3JrIG9uIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0RvIG5vdCBjcmVhdGUgYSBwcm9wZXJ0eSBmb3IgdXNlcm5hbWUsIG9yIHBhc3N3b3JkIGFzIHRoZXNlIHByb3BlcnRpZXMgYXJlIGJ1aWx0aW4gdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnQgVXNlcnMgdG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHk6IDxlbT4lczwvZW0+JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltdW0gTGVuZ3RoJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnQgQnknOwokbGFuZ1snc29ydCddID0gJ1NvcnRpbmcnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXNlcnMgaW4gdGhlIHNlbGVjdGVkIGdyb3VwKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0IHJlc3VsdHMgdG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgZmllbGQgZm9yIHRoaXMgdXNlci4gIFlvdSBtYXkgbmVlZCB0byBjb250YWN0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSB3ZWVrIG9sZCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgbW9udGggb2xkJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlPyc7IAokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7IAokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0VpdGhlciB5b3Vyc2VsZiBvciBzb21lb25lIGVsc2UgaGFzIGFscmVhZHkgdHJpZ2dlcmVkIGEgcGFzc3dvcmQgcmVzZXQgb3BlcmF0aW9uIGZvciB0aGlzIGFjY291bnQuICBDaGVjayB5b3VyIGVtYWlsLCB5b3UgbWF5IGhhdmUgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQgaW4geW91ciBpbmJveCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UgZXJyb3InOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2Ugc29tZWJvZHkgdG9sZCBvdXIgc2l0ZSB0aGF0IHlvdSBoYWQgbG9zdCB5b3VyIHBhc3N3b3JkLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSwgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGJlbG93LiAgSWYgeW91IGRvblwndCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiBnZW5lcmF0ZWQgcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzblwndCB0aGUgY29kZSBpczonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGlja2luZyBvbiB0aGUgZm9sbG93aW5nIGxpbmsgd2lsbCB0YWtlIHlvdSB0byB0aGUgd2Vic2l0ZSB3aGVyZSB5b3UgY2FuIGVudGVyIHRoZSBhYm92ZSBjb2RlLCBhbmQgcmVzZXQgeW91ciBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0xvc3QgUGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgQ01TTWFpbGVyIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdBbiBlbWFpbCBoYXMgYmVlbiBzZW50IHRvICVzIHdpdGggaW5zdHJ1Y3Rpb25zIGFzIHRvIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkLiAgVGhhbmsgeW91JzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU28geW91IGZvcmdvdCBvciBsb3N0IHlvdXIgcGFzc3dvcmQuIFdlbGwsIHR5cGUgeW91ciB1c2VybmFtZSBpbiBoZXJlLCBhbmQgaWYgd2UgY2FuIGZpbmQgeW91IHdlIHdpbGwgc2VuZCB5b3UgYW4gZW1haWwgd2l0aCBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHJlc2V0IGl0JzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnRm9yZ290IFBhc3N3b3JkIFRlbXBsYXRlcyc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1Byb3BlcnR5ICVzIG5vdCBmb3VuZCc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcGVydGllcyBmb3VuZCc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWRkIFByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdBIHJlcXVpcmVkIGZpZWxkICglcykgd2FzIGVtcHR5JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRW50ZXIgYSBuZXcgcGFzc3dvcmQgaGVyZSB0byBjaGFuZ2UgeW91ciBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1lvdSBkbyBub3QgYXBwZWFyIHRvIGJlIGxvZ2dlZCBpbic7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnU2V0dGluZ3MnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYXRpb24nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdUaGlzIGFjY291bnQgaGFzIGV4cGlyZWQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ltcHJvcGVyIGVtYWlsIGFkZHJlc3MgZm9ybWF0dGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ludmFsaWQgZXhwaXJ5IGRhdGUuICBUaGlzIG1heSBiZSBzeXN0ZW0gcmVsYXRlZC4gIFRyeSBzZXR0aW5nIGFuIGVhcmxpZXIgeWVhci4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIHNldHRpbmcgcHJvcGVydHkgJXMgZm9yIHVzZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJbnZhbGlkIGdyb3VwIGlkICVzJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnQgb3JkZXInOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgZm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3llcyddID0gJ1llcyc7CiRsYW5nWydwcm9tcHQnXSA9ICdQcm9tcHQnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUmVxdWlyZWQnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZW1haWwnXSA9ICdFbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxjb21lJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NpZ24gb3V0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgdGhpcyBncm91cCBuYW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0NoYW5nZSBNeSBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIGZhaWxlZCAtIEludmFsaWQgdXNlcm5hbWUgb3IgcGFzc3dvcmQ/JzsKJGxhbmdbJ2xvZ2luJ10gPSAnU2lnbiBpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1NpZ24gaW4gYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdSZW1lbWJlciBtZSBvbiB0aGlzIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0ZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdGb3Jnb3QgWW91ciBQYXNzd29yZD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRm9yZ290IFlvdXIgTG9naW4gRGV0YWlscz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1VzZXIgSUQgbm90IGZvdW5kJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdUaGF0IHVzZXJuYW1lICglcykgaXMgYWxyZWFkeSBpbiB1c2UnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1VzZSBTTVRQIHRvIHZhbGlkYXRlIGVtYWlsIGFkZHJlc3Nlcz8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSBQYXNzd29yZCBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW11bSBQYXNzd29yZCBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBVc2VybmFtZSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW11bSBVc2VybmFtZSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnU2Vzc2lvbiBUaW1lb3V0IChzZWNvbmRzKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNlIGNvb2tpZXMgdG8ga2VlcCBsb2dpbnMgYWxpdmUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdBbGxvdyBFbWFpbCBSZWdpc3RyYXRpb24nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0RlZmF1bHQgR3JvdXAgZm9yIG5ldyB1c2Vycyc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ0NoYW5nZSBTZXR0aW5ncyBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnUGFzc3dvcmRzIERvIG5vdCBtYXRjaCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdJbnZhbGlkIFVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ0ludmFsaWQgUGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnQ291bGQgbm90IGZpbmQgaW5mb3JtYXRpb24gZm9yIHRoaXMgdXNlcic7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsdWUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wZXJ0aWVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnUHJvcGVydHkgTmFtZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdQcm9wZXJ0eSBWYWx1ZSc7CiRsYW5nWydhZGQnXSA9ICdBZGQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyZXMnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmeSBEYXRlJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG91cnMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Vycyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvdXJzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBXZWVrJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgV2Vla3MnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNb250aCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNb250aHMnOwokbGFuZ1snNm1vbnRocyddID0gJzYgTW9udGhzJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBZZWFyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmV2ZXInOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAiTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4iJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgQWRkcmVzcyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnQWdhaW4nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dyb3VwIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdFZGl0IEdyb3VwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGdyb3VwPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBhZGRpbmcgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW0gZGVsZXRpbmcgYSBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05vIHdyaXRlIHBlcm1pc3Npb24gdG8gZGVzdGluYXRpb24gZGlyZWN0b3J5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdJbnZhbGlkIFBhcmFtZXRlcnMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdDb3VsZCBub3QgZmluZCBhbnkgZ3JvdXBzJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBwbHknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdVc2VybmFtZSBSZWd1bGFyIEV4cHJlc3Npb24nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcm91cCBOYW1lJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvcic7CiRsYW5nWydhZGRncm91cCddID0gJ0FkZCBHcm91cCc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydCBHcm91cCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWRkIFVzZXInOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1VzZXJzIGZvdW5kIHRoYXQgbWF0Y2ggdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3JvdXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3QgR3JvdXAnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0xvZ291dCBUZW1wbGF0ZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0xvZ2luIFRlbXBsYXRlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3VzZXJzJ10gPSAiVXNlcnMiOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gIkRlZmF1bHQgZnJvbnQgcGFnZSI7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwokbGFuZ1snaGVscCddID0gPDw8RU9GCjxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5UaGlzIG1vZHVsZSBhbGxvd3MgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24gb2YgZnJvbnQgZW5kIHVzZXJzIDxpPih1c2VycyB3aG8gaGF2ZSBubyBhZG1pbiBhY2Nlc3NzKTwvaT4uICBJdCBhbGxvd3MgY3JlYXRpb24gb2YgdXNlciBncm91cHMsIGFuZCB1c2VyIGFjY291bnRzIGFuZCBhbGxvd3MgdXNlcnMgdG8gbG9naW4gYW5kIGxvZ291dC4gIGl0IGNhbiBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIEN1c3RvbUNvbnRlbnQgbW9kdWxlIHRvIGRpc3BsYXkgZGlmZmVyZW50IGNvbnRlbnQgdG8gZGlmZmVyZW50IHVzZXJzIG9uY2UgdGhleSBoYXZlIGxvZ2dlZCBpbjwvcD4KPGgzPkZlYXR1cmVzPC9oMz4KPHVsPgo8bGk+PHA+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L3A+PC9saT4KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+CjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+CjxsaT48cD5Gb3Jnb3QgcGFzc3dvcmQsIGFuZCBmb3Jnb3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4uLi4gYWxsb3dzIHVzZXJzIHRvIHNldCBhIG5ldyBwYXNzd29yZCwgYW5kL29yIHRvIHJlY292ZXIgdGhlaXIgdXNlcm5hbWUgaWYgdGhleSBjb21wbGV0ZWx5IGZvcmdvdCBsb2dpbiBkZXRhaWxzLjwvcD48L2xpPgo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+CjwvdWw+CjxoMz5Ib3cgZG8gSSB1c2UgaXQ8L2gzPgo8dWw+CjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmIGdHcm91cHMmcXVvdDsgbWVudS48L3A+PC9saT4KPGxpPgo8cD5TZWNvbmRseSwgeW91IG5lZWQgdG8gZGVmaW5lIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eS4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgZXRjLjwvcD4KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgKG9yIGVtYWlsIGFkZHJlc3MpIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPgo8cD48Yj5Ob3RlOjwvYj4gTmV3IGluc3RhbGxhdGlvbnMgb2YgdGhlIEZFVSBtb2R1bGUgc3BlY2lmeSB0aGF0IHRoZSB1c2VycyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lICh0aGlzIG9wdGlvbiBjYW4gYmUgY2hhbmdlZCBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiKS4gIFNvIGlmIHVzaW5nIHRoaXMgb3B0aW9uIHlvdSB3aWxsIG5vdCBuZWVkIHRvIGNyZWF0ZSBhbiBlbWFpbCBhZGRyZXNzIHByb3BlcnR5LjwvcD4KPC9saT4KPGxpPjxwPk5leHQgeW91IG11c3QgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+CjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lL2VtYWlsIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCdOZXh0XCc8L3A+CjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPgo8L3VsPgo8aDM+U21hcnR5IEZ1bmN0aW9uczwvaDM+CjxwPlNvbWUgbGltaXRlZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBkYXRhYmFzZSBpcyBwb3NzaWJsZSB3aXRoIHNtYXJ0eSBhbmQgdGhlIFwkZmV1X3NtYXJ0eSBvYmplY3QuPC9wPgo8aDQ+RnVuY3Rpb25zOjwvaDQ+Cjx1bD4KPGxpPjxzdHJvbmc+PGNvZGU+e1wkZmV1X3NtYXJ0eS0mZ3Q7Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZShcJGdyb3VwbmFtZSxcJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC4gIFRoZSBvdXRwdXQgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmcXVvdDthc3NpZ24mcXVvdDsgcGFyYW1ldGVyLjwvcD4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPntcJGZldV9zbWFydHktJmd0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJ21lbWJlcnMnLCdteW1lbWJlcnMnKX08YnIvPntcJG15bWVtYmVyc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgo8bGk+PHN0cm9uZz48Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfdXNlcl9wcm9wZXJ0aWVzKFwkdWlkLFwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfdXNlcl9wcm9wZXJ0aWVzKDUsJ3VzZXJwcm9wcycpfTxici8+e1wkdXNlcnByb3BzfEBwcmludF9yfTwvY29kZT48L3A+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfZHJvcGRvd25fdGV4dChcJHByb3BuYW1lLFwkcHJvcHZhbHVlWyxcJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgZnVuY3Rpb24gcmV0dXJucyB0aGUgdGV4dCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBvcHRpb24gdmFsdWUgZm9yIGEgc3BlY2lmaWVkIGRyb3Bkb3duIHByb3BlcnR5LjwvbGk+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfZHJvcGRvd25fdGV4dCgnYWdlX3JhbmdlJyxcJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntcJGZldV9zbWFydHktJmd0O2dldF9tdWx0aXNlbGVjdF90ZXh0KFwkcHJvcG5hbWUsXCRwcm9wdmFsdWUsXCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBzbWFydHkgZnVuY3Rpb24gcmV0dXJucyBhbiBhcnJheSBvZiBvcHRpb24gdGV4dHMgY29ycmVzcG9uZGluZyB0byBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbiB2YWx1ZXMuPC9saT4KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPntcJGZldV9zbWFydHktJmd0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCdmYXZvcml0ZV9mb29kcycsXCRvbmVwcm9wdmFsdWUsJ2Zhdm9yaXRlX2Zvb2RzJyl9PGJyLz57XCRmYXZvcml0ZV9mb29kc3xAcHJpbnRfcn08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfdXNlcl9leHBpcnkoXCR1aWRbLFwkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBtZXRob2QgcmV0dXJucyB0aGUgdW5peCB0aW1lc3RhbXAgdGhhdCB0aGUgc3BlY2lmaWVkIHVpZCBhY2NvdW50IGV4cGlyZXMuICBUaGUgZnVuY3Rpb24gd2lsbCByZXR1cm4gZmFsc2UgaWYgdGhlIHVpZCBjYW5ub3QgYmUgZm91bmQgb3Igc29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57XCRmZXVfc21hcnR5LSZndDtnZXRfdXNlcl9leHBpcnkoMjUsJ2V4cGlyeScpfTxici8+e1wkZXhwaXJ5fGNtc19kYXRlX2Zvcm1hdH08L2NvZGU+PC9wPgo8L2xpPgoKPGxpPjxzdHJvbmc+Y29kZT57XCRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoXCR1aWRbLFwkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIHNtYXJ0eSBtZXRob2QgcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3ZXRoZXIgdGhlIHNwZWNpZmllZCB1c2VyIGFjY291bnQgaGFzIGV4cGlyZWQuICBUaGUgbWV0aG9kIHdpbGwgYWxzbyByZXR1cm4gZmFsc2UgaWYgdGhlIHVpZCBjYW5ub3QgYmUgZm91bmQgb3Igc29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC48L3A+CjxwPkV4YW1wbGU6PGJyLz48Y29kZT57XCRmZXVfc21hcnR5LSZndDt1c2VyX2V4cGlyZWQoMjUsJ2V4cGlyZWQnKX08YnIvPntpZiBcJGV4cGlyZWR9VUlEIDI1IGNhbiBubyBsb25nZXIgbG9naW4gdG8gdGhlIHN5c3RlbXsvaWZ9PC9jb2RlPjwvcD4KPC9saT4KPC91bD4KCjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCdzCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vY2FsZ3V5MTAwMC5jb20iPmNhbGd1eTEwMDAuY29tPC9hPi48L2xpPgo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+CjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPgo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIAo8L3VsPgo8aDM+UGFyYW1ldGVyczwvaDM+Cjx1bD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSJkZWZhdWx0IjxsaT4KPHA+QWN0aW9uczoKPHVsPgo8bGk+PGVtPmRlZmF1bHQ8L2VtPiAtIFRoZSBkZWZhdWx0IGFjdGlvbiwgd2hpY2ggZW5hYmxlcyB0aGUgbm9ybWFsIGZvcm09IGJlaGF2aW91ci48L2xpPgo8bGk+PGVtPnJlc2V0X3Nlc3Npb248L2VtPiAtIFByb3ZpZGUgYSBqYXZhc2NyaXB0IGNvbnRyb2xsZWQgdGVtcGxhdGUgdG8gYWxsb3cgdGhlIG1hbnVhbCwgb3IgYXV0b21hdGljIHBpbmdpbmcgb2YgdGhlIHVzZXIgc2Vzc2lvbi4gIFRoaXMgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gcmVtaW5kIHRoZSB1c2VyIHRoYXQgaGlzIGxvZ2luIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlLCBhbmQgdG8gdHJpZ2dlciBpdHMgcmVzZXQuICBOb3JtYWxseSB0aGlzIG1ldGhvZCBpcyBub3QgcmVxdWlyZWQgYXMgYW55IHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgRnJvbnRFbmRVc2VyIGNvbnRyb2xzIHdvdWxkIGhhbmRsZSB0aGlzLCBqdXN0IHJlcXVpcmluZyB0aGUgdXNlciB0byB2aWV3IGEgcGFnZSBvbiBhIHJlZ3VsYXIgYmFzaXMuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgcGFnZXMgd2l0aCBhbG90IG9mIGNvbnRlbnQgcmVxdWlyaW5nIGV4dGVuc2l2ZSByZWFkaW5nLCB0aGlzIG1heSBiZSBhIHVzZWZ1bCBzb2x1dGlvbi48L2xpPgo8bGk+PGVtPnZpZXd1c2VyPC9lbT4gLSBEaXNwbGF5IGEgcmVwb3J0IGZvciBhIHNpbmdsZSB1c2VyLCByZXF1aXJlcyB1c2Ugb2YgdGhlIHVpZCBwYXJhbWV0ZXIuPC9saT4KPC91bD4KPC9wPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSJuYW1lIjwvbGk+CjxwPkZvcm1zOgo8dWw+CiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+CiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+CiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+CiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+CjxsaT48ZW0+c2lsZW50PC9lbT4gPSBEaXNwbGF5IG5vdGhpbmcsIGJ1dCBleHBvcnQgcHJvcGVydGllcyBhbmQgb3RoZXIgc21hcnR5IHZhcmlhYmxlcyBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4gIElmIG5vIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGVuIG5vIHZhcmlhYmxlcyBhcmUgZXhwb3J0ZWQuPC9saT4KPC91bD4KPC9wPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXR1cm50bz0icGFnZSI8L2xpPgo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSJncm91cDEsIGdyb3VwMiwgZ3JvdXAzIjwvbGk+CjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9zdHVuX2dyb3VwPSJncm91cCI8L2xpPgo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9IjEiPC9saT4KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1aWQ9bnVsbDwvbGk+CjxwPlVzZWQgd2l0aCB0aGUgdmlld3VzZXIgYWN0aW9uLiAgVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgdG8gc3BlY2lmeSB3aGljaCB1c2VyIHRvIHZpZXcgdGhlIGRldGFpbHMgb2YuPC9wPgo8L3VsPgo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQKb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPgo8aDM+UmVxdWlyZW1lbnRzPC9oMz4KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQgYW5kIHByb3Blcmx5IGNvbmZpZ3VyZWQuPC9wPgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+Jmx0O2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcmZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiAKc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+CjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLApidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCk9yIHJlYWQgaXQgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5vbmxpbmU8L2E+PC9wPgo8aDM+U3BvbnNvcnM8L2gzPgo8cD5UaGVyZSBoYXZlIGJlZW4gbWFueSBzcG9uc29ycyBmb3IgdGhpcyBtb2R1bGUsIHNvbWUgb2YgdGhlc2UgYXJlIGxpc3RlZCBiZWxvdzo8L3A+Cjx1bC4+CiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5tYXR0ZXJob3JubWFya2V0aW5nLmNvbSI+TWF0dGVyaG9ybiBNYXJrZXRpbmc8L2E+PC9saT4KIDxsaT48YSBocmVmPSJodHRwOi8vd3d3LmJwdGkuZXUiPkJhbGthbiBJbnN0aXR1dGUgb2YgQWR2YW5jZWQgVGVjaG5vbG9neTwvYT48L2xpPgo8L3VsPgpFT0Y7Cj8+Cg==]]></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/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIGFkZGluZyBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAgcmVsYXRpb24nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGFkZGluZyBhIHVzZXIgdG8gYSBncm91cCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBkZWxldGluZyBhIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnTm8gd3JpdGUgcGVybWlzc2lvbiB0byBkZXN0aW5hdGlvbiBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhZ3JhdmU7bWV0cmVzIGludiZhZ3JhdmU7bGlkcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0NvdWxkIG5vdCBmaW5kIGFueSBncm91cHMnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcGNpJm9hY3V0ZTsnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZmVnaXIgbm91IGdydXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBub3UgR3J1cCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWZlZ2lyIFVzdWFyaSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgdGhhdCBtYXRjaCB0aGUgY3JpdGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVHJpYXIgR3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSByZWdpc3RyZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSBzb3J0aWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnhldGEgZCYjMDM5O2VudHJhZGEnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWdyYXZlO25jaWVzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1YXJpcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRGVmYXVsdCBmcm9udCBwYWdlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMYXN0IGFjY2Vzc2VkIHBhZ2UnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnT3RoZXIgcGFnZTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBmcm9tIHRoZSBpbWFnZSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBhbGxvd3MgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24gb2YgZnJvbnQgZW5kIHVzZXJzIDxpPih1c2VycyB3aG8gaGF2ZSBubyBhZG1pbiBhY2Nlc3NzKTwvaT4uICBJdCBhbGxvd3MgY3JlYXRpb24gb2YgdXNlciBncm91cHMsIGFuZCB1c2VyIGFjY291bnRzIGFuZCBhbGxvd3MgdXNlcnMgdG8gbG9naW4gYW5kIGxvZ291dC4gIGl0IGNhbiBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIEN1c3RvbUNvbnRlbnQgbW9kdWxlIHRvIGRpc3BsYXkgZGlmZmVyZW50IGNvbnRlbnQgdG8gZGlmZmVyZW50IHVzZXJzIG9uY2UgdGhleSBoYXZlIGxvZ2dlZCBpbjwvcD4NCjxoMz5GZWF0dXJlczwvaDM+DQo8dWw+DQo8bGk+PHA+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3VwczwvcD48L2xpPg0KPGxpPjxwPkNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBnR3JvdXBzJnF1b3Q7IG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcywgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXM6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4NCiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gb25seV9ncm91cHM9JnF1b3Q7Z3JvdXAxLCBncm91cDIsIGdyb3VwMyZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiAgQmFzaWNhbGx5IG9ubHkgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGlmIHRoZXkgYmVsb25nIHRvIHRoYXQgcGFydGljdWxhciBncm91cChzKS48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9JnF1b3Q7MSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiBoaXMgd2lsbCBkaXNuYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGhvdG1haWwuY29tIj48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjMxMDkxNDU5Nzc1MzMyNDc1MDAuMTIyNTMxMTMxMi4xMjU2OTAyNDc1LjEyNTY5MDgzMjIuNDInOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjU0MDg4NzU3LjM1LjIudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPTY2LjE0Ny4yNDQuMTU1fHV0bWNjdD0vfmNsdWJjb2NjL2Ntc21hZGVzaW1wbGUvaW5zdGFsbC9pbmRleC5waHB8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTg5NDQ1MTEwOC0xMjUwNDU1ODIzODIwJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></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+aXZhdGVsZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHN0ciZhYWN1dGU7bmthJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdTdHImYWFjdXRlO25rYSBzIHBvc2xlZG4maWFjdXRlO20gcMWZJmlhY3V0ZTtzdHVwZW0nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSmluJmFhY3V0ZTsgc3RyJmFhY3V0ZTtua2E6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3BpJnNjYXJvbjt0ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a3UnOwokbGFuZ1snaGVscCddID0gJzxoMz5DbyBkxJtsJmFhY3V0ZTsgdGVudG8gbW9kdWw/PC9oMz4NCjxwPlRlbnRvIG1vZHVsIHVtb8W+xYh1amUgc3ByJmFhY3V0ZTt2dSBmcm9udGVuZCB1xb5pdmF0ZWzFryAodGVkeSB1xb5pdmF0ZWzFrywga3RlxZkmaWFjdXRlOyBzZSB6YXJlZ2lzdHJvdmFsaSBwcm8geiZpYWN1dGU7c2smYWFjdXRlO24maWFjdXRlOyBzcGVjaSZhYWN1dGU7bG4maWFjdXRlO2NoIG1vxb5ub3N0JmlhY3V0ZTssIG5lbWFqJmlhY3V0ZTsgYWxlIHDFmSZpYWN1dGU7c3R1cCBrIGFkbWluaXN0cmHEjW4maWFjdXRlO211IHJvemhyYW4maWFjdXRlOyB3ZWJ1KS4gVW1vxb7FiHVqZSB2eXR2JmFhY3V0ZTvFmWVuJmlhY3V0ZTsgc2t1cGluIHXFvml2YXRlbMWvLCB1xb5pdmF0ZWxzayZ5YWN1dGU7Y2ggJnVhY3V0ZTvEjXTFryBhIHDFmWlobGEmc2Nhcm9uO292JmFhY3V0ZTtuJmlhY3V0ZTsgKG9kaGxhJnNjYXJvbjtvdiZhYWN1dGU7biZpYWN1dGU7KSB1xb5pdmF0ZWzFry4gU2Nob3Bub3N0aSB0b2hvdG8gbW9kdWx1IHZ5dcW+JmlhY3V0ZTt2JmFhY3V0ZTsgbsSba29saWsgamluJnlhY3V0ZTtjaCBtb2R1bMWvLCBuYXDFmSZpYWN1dGU7a2xhZCAmcXVvdDtVxb5pdmF0ZWxzayZ5YWN1dGU7IG9ic2FoJnF1b3Q7IG5lYm8gJnF1b3Q7RiZvYWN1dGU7cnVtJnF1b3Q7LjwvcD4NCjxoMz5GdW5rY2U8L2gzPg0KPHVsPg0KPGxpPjxwPlZ5cHImc2Nhcm9uO2VuJmlhY3V0ZTsgcGxhdG5vc3RpIHXFvml2YXRlbHNrJnlhY3V0ZTtjaCAmdWFjdXRlO8SNdMWvLiAgTcWvxb5ldGUgdnl0diZhYWN1dGU7xZlldCBkb8SNYXNuJmVhY3V0ZTsgdcW+aXZhdGVsZTwvcD48L2xpPg0KPGxpPjxwPlZsYXN0bm9zdGkgc2t1cGluLiBQxZkmaWFjdXRlO3NsdSZzY2Fyb247biZpYWN1dGU7a8WvIHLFr3puJnlhY3V0ZTtjaCBza3VwaW4gc2UgbcWvxb5ldGUgcHQmYWFjdXRlO3QgbmEgcsWvem4mZWFjdXRlOyB2xJtjaS48L3A+PC9saT4NCjxsaT48cD5Nb8W+bm9zdCBzcHImYWFjdXRlO3Z5IHN0b3ZlayB1xb5pdmF0ZWzFrzwvcD48L2xpPg0KPGxpPjxwPk9ic2FodWplIHJvenMmYWFjdXRlO2hsJmVhY3V0ZTsgQVBJIHBybyBwxZlpZCZhYWN1dGU7diZhYWN1dGU7biZpYWN1dGU7IGZ1bmtjJmlhY3V0ZTs8L3A+PC9saT4NCjwvdWw+DQo8aDM+SmFrIGhvIG1vaHUgcG91xb4maWFjdXRlO3Q8L2gzPg0KPHVsPg0KPGxpPjxwPlBvIGluc3RhbGFjaSBuYWxlem5ldGUgYWRtaW5pc3RyYcSNbiZpYWN1dGU7IHJvemhyYW4maWFjdXRlOyBtb2R1bHUgdiBtZW51IFXFvml2YXRlbCZlYWN1dGU7L1NrdXBpbnkgamFrbyAmcXVvdDtTcHImYWFjdXRlO3ZhIGZyb250ZW5kIHXFvml2YXRlbMWvJnF1b3Q7PC9wPjwvbGk+DQo8bGk+DQo8cD5NxJtsaSBieXN0ZSB0YWsmZWFjdXRlOyBkZWZpbm92YXQgdmxhc3Rub3N0aS4gVmxhc3Rub3N0aSBqc291IG51dG4mZWFjdXRlOyBkZWZpbmljZSBwb2wmaWFjdXRlOywgemRlIHVwxZllc24maWFjdXRlO3RlIHR5cCBpbmZvcm1hYyZpYWN1dGU7LCBrdGVyJmVhY3V0ZTsgY2hjZXRlIHNocm9tJmFhY3V0ZTvFvmRpdCBvIHXFvml2YXRlbCZpYWN1dGU7Y2gsIG5hcMWZLiBKbSZlYWN1dGU7bm8sIFbEm2ssIE3Em3N0bywuLi48L3A+DQo8cD48Yj5Qb3puJmFhY3V0ZTtta2E6PC9iPiBOZW11cyZpYWN1dGU7dGUgdnl0diZhYWN1dGU7xZlldCB2bGFzdG5vc3RpIHBybyB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBhIGhlc2xvLCB0eXRvIGJ1ZG91IHZ5dHZvxZllbnkgYXV0b21hdGlja3kuPC9iPg0KPC9saT4NCjxsaT48cD5Qb3QmZWFjdXRlOyBieXN0ZSBtxJtsaSB2eXR2b8WZaXQgamVkbnUgbmVibyB2JmlhY3V0ZTtjZSBza3VwaW4gdcW+aXZhdGVsxa8uIFDFmWkgdnl0diZhYWN1dGU7xZllbiZpYWN1dGU7IHNrdXBpbnkgbXVzJmlhY3V0ZTt0ZSB2bG/Fvml0IGplaiZpYWN1dGU7IGptJmVhY3V0ZTtubywgcG9waXNlaywgcMWZacWZYWRpdCB2bGFzdG5vc3RpIGsgdCZlYWN1dGU7dG8gc2t1cGluxJsgYSBuYXN0YXZpdCBqZWppY2ggbW/Fvm5vc3RpICh6ZGEgamUgdmxhc3Rub3N0IHZvbGl0ZWxuJmFhY3V0ZTssIHZ5xb5hZG92YW4mYWFjdXRlOywgbmVibyB6ZGEgamRlIG8gc2tyeXQmZWFjdXRlOyBwb2xlPGk+KHBvbGUgbcWvxb5lIGImeWFjdXRlO3QgdGFrJmVhY3V0ZTsgdnlwbnV0JmVhY3V0ZTspPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPlBvem4mYWFjdXRlO21rYTo8L2I+IFDFmWVkIHBva3JhxI1vdiZhYWN1dGU7biZpYWN1dGU7bSBzZSBwcm9zJmlhY3V0ZTttIHVqaXN0xJt0ZSwgxb5lIHZsYXN0bm9zdGkganNvdSBuYXN0YXZlbnkgc3ByJmFhY3V0ZTt2bsSbLjwvcD48L2xpPg0KPGxpPjxwPk4mYWFjdXRlO3NsZWRuxJsgYnlzdGUgbcSbbGkgdnl0dm/FmWl0IG7Em2phayZlYWN1dGU7IHXFvml2YXRlbGUuIFDFmWlkJmFhY3V0ZTtuJmlhY3V0ZTsgdcW+aXZhdGVsZSBzZSBza2wmYWFjdXRlO2QmYWFjdXRlOyB6ZSBkdm91IGtyb2vFry4gTmVqcHJ2ZSBtdXMmaWFjdXRlO3RlIHVyxI1pdCB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBhIGhlc2xvLCBwxZkmaWFjdXRlO3BhZG7EmyB0YWsmZWFjdXRlOyBkYXR1bSB2eXByJnNjYXJvbjtlbiZpYWN1dGU7IHRvaG90byAmdWFjdXRlO8SNdHUuIFBvdCZlYWN1dGU7IHZ5YmVydGUgc2t1JnVhY3V0ZTtpbnksIGppY2jFviBidWRlIHRlbnRvIHXFvml2YXRlbCDEjWxlbmVtIGEga2xpa27Em3RlIG5hIFwmIzAzOTtEYWwmc2Nhcm9uOyZpYWN1dGU7XCYjMDM5OzwvcD4NCjxwPjxlbT5Qb3puJmFhY3V0ZTtta2E6IDwvZW0+VG90byBqZSBuJmFhY3V0ZTtyb8SNbiZ5YWN1dGU7IGEgbnVkbiZ5YWN1dGU7IHByb2NlcywgamVkbm9kdSZzY2Fyb247JnNjYXJvbjsmaWFjdXRlOyBqZSBuZWNoYXQgdcW+aXZhdGVsZSBzYW1vc3RhdG7EmyByZWdpc3Ryb3ZhdCA8ZW0+UG9kJmlhY3V0ZTt2ZWp0ZSBzZSBuYSBtb2R1bCBTZWxmIFJlZ2lzdHJhdGlvbjwvZW0+LCBwb3QmZWFjdXRlOyBqZSBtxb5ldGUgemHFmWFkaXQgZG8gc2t1cGlueS4gUHJvICZ1YWN1dGU7xI1lbHkgdnl6a291JnNjYXJvbjtlbiZpYWN1dGU7IGZ1bmvEjW5vc3RpIHByb3MmaWFjdXRlO20gdnl0dm/FmXRlIG5lam0mZWFjdXRlO27EmyBqZWRub2hvIHXFvml2YXRlbGUuPC9wPjwvbGk+DQo8bGk+PHA+TiZhYWN1dGU7c2xlZG7EmyBqZSB0xZllYmEgdnlwbG5pdCB2bGFzdG5vc3RpIGRlZmlub3ZhbiZlYWN1dGU7IHBybyBkYW4mZWFjdXRlO2hvIHXFvml2YXRlbGUsIGFieSBieWxvIGplaG8gdnl0dm/FmWVuJmlhY3V0ZTsgZG9rb27EjWVubzwvcD48L2xpPg0KPGxpPjxwPk55biZpYWN1dGU7IGplIHYmc2Nhcm9uO2UgcMWZaXByYXZlbm8gcHJvIHDFmWlkJmFhY3V0ZTtuJmlhY3V0ZTsgZnJvbnRlbmRvdiZlYWN1dGU7IGZ1bmvEjW5vc3RpIGsgdmEmc2Nhcm9uO2VtdSBtb2R1bHUuICBUbyBqZSBqZWRub2R1Y2gmZWFjdXRlOy4gUMWZaWRlanRlIHRhZyB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gZG8gVmEmc2Nhcm9uOyZpYWN1dGU7IHN0ciZhYWN1dGU7bmt5IG5lYm8gJnNjYXJvbjthYmxvbnkuPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXM6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4NCiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPg0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KPGgzPlJlcXVpcmVtZW50czwvaDM+DQo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZDwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSI+PGNhbGd1eTEwMDBAaG90bWFpbC5jb20+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43ODMzMDA2OTkuMTI1NzgwODczNS4xMjYxMzM3NTI0LjEyNjEzNDA5NzAuMzMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjYxMzMzNTgxLjMxLjIwLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1kZXYuY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS98dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE3MzEzODg5NjQtMTI1Nzg4NDMwNTYzOCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></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+QmUgc3VyZSB0byBzZXQgdGhlICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ0tvZGVvcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdJZ2VuJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnUmVkaWcmZWFjdXRlO3IgZ3J1cHBlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0luZHNlbmQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkZXR0ZSBlciBkZSByaWd0aWdlIGluZHN0aWxsaW5nZXIgZm9yIGRlbm5lIGdydXBwZT8gSHZpcyBkdSBmamVybmVyIGVuIGVnZW5za2FiIGhlciwgdmlsIGRldCBpa2tlIHNsZXR0ZSBlZ2Vuc2thYmVybmUgaSBkYXRhYmFzZW4gZm9yIGRlbm5lIGdydXBwZS4gRGUgdmlsIGJsb3QgdiZhZWxpZztyZSB1dGlsZyZhZWxpZztuZ2VsaWdlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZ3J1cHBlPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZWdlbnNrYWIgZnVsZHN0JmFlbGlnO25kaWd0PyBIdmlzIGR1IHNsZXR0ZXIgZGVuIHZpbCBkZXQgb2dzJmFyaW5nOyBzbGV0dGUgYnJ1Z2VyaW5kc2xhZyBtZWQgZGVubmUgZWdlbnNrYWIuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1V0aWxzdHImYWVsaWc7a2tlbGlnZSBwYXJhbWV0cmUnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmF2bic7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbWVyIG1lZCBhdCB0aWxmJm9zbGFzaDtqZSBlbiBicnVnZXIgdGlsIGVuIGdydXBwZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWVyIG1lZCBhdCBzbGV0dGUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5uZSBpa2tlIGZpbmRlIGVuIGVtYWlsIGFkcmVzc2UnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0RlciBlciBpa2tlIHNrcml2ZS1yZXR0aWdoZWRlciB0aWwgZGVzdGluYXRpb25zLW1hcHBlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVWd5bGRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS3VubmUgaWtrZSBmaW5kZSBub2dlbiBncnVwcGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQW52ZW5kJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2tyaXZlbHNlJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dydXBwZW5hdm4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWRnYW5nIG4mYWVsaWc7Z3RldCc7CiRsYW5nWydlcnJvciddID0gJ0ZlamwnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdUaWxmJm9zbGFzaDtqIGdydXBwZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydCZlYWN1dGU7ciBncnVwcGUnOwokbGFuZ1snYWRkdXNlciddID0gJ1RpbGYmb3NsYXNoO2ogYnJ1Z2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdCcnVnZXJlIG1lZCBkZXQgYW5naXZuZSBrcml0ZXJpZSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwZSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYWVsaWc7bGcgZ3J1cHBlJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJlcmluZ3Mgc2thYmVsb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnTG9nb3V0IHNrYWJlbG9uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTG9naW4gc2thYmVsb24nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ3VzZXJzJ10gPSAnQnJ1Z2VyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01hbmFnZSBGcm9udGVuZCBVc2Vycyc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhcmQgZm9yc2lkZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU2lkc3QgdGlsZyZhcmluZztlZGUgc2lkZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbmRlbiBzaWRlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1Nrcml2IHRla3N0ZW4gcCZhcmluZzsgYmlsbGVkZXQnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJnF1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBzaG91bGQgZGVmaW5lIHByb3BlcnRpZXMuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIEVtYWlsIGFkZHJlc3MsIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdTwvYj4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3Ugc2hvdWxkIGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2V0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkIDxpPihvZmYgaXMgYWxzbyB2YWxpZCk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4NCjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCYjMDM5O05leHRcJiMwMzk7PC9wPg0KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMsIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCjxsaT48ZW0+c2lsZW50PC9lbT4gPSBEaXNwbGF5IG5vdGhpbmcsIGJ1dCBleHBvcnQgcHJvcGVydGllcyBhbmQgb3RoZXIgc21hcnR5IHZhcmlhYmxlcyBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4gIElmIG5vIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGVuIG5vIHZhcmlhYmxlcyBhcmUgZXhwb3J0ZWQuPC9saT4NCjwvdWw+DQo8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXR1cm50bz0mcXVvdDtwYWdlJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4sIGxvZ291dCwgYW5kIGNoYW5nZXNldHRpbmdzIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBjb250YWlucyB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8sIHdoZW4gdGhlIGZvcm0gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZDwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20iPjxjYWxndXkxMDAwQGhvdG1haWwuY29tPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMjU0MzgwNDQ0OTE0NTgyNzAwMC4xMjM5NjQyMDM1LjEyMzk2NDIwMzUuMTIzOTY0NDE4Ni4yJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjM5NjQyMDM1LjEuMS51dG1jc3I9KGRpcmVjdCl8dXRtY2NuPShkaXJlY3QpfHV0bWNtZD0obm9uZSknOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICdLZWluKGVyKSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ0JlbnV0emVyIGwmb3VtbDtzY2hlbic7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdlQ29tbWVyY2UtRWluc3RlbGx1bmdlbic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1NlY3VyZSBGaWVsZCBNYXJrZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ1NlY3VyZSBGaWVsZCBDb2xvcic7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1N0b3JlIHRoaXMgZGF0YSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnSWYgYSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgYnkgYW4gZXh0ZXJuYWwgYXV0aGVudGljYXRpb24gbW9kdWxlIGJ1dCBpcyBub3Qga25vd24gaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHNob3VsZCBhbiBGRVUgYWNjb3VudCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHk/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYWxseSBDcmVhdGUgVW5rbm93biBVc2Vycyc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnQW56ZWlnZS1FaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIGFyZSBvbmx5IGFwcGxpY2FibGUgaWYgdXNpbmcgdGhlICZxdW90O0J1aWx0aW4gQXV0aGVudGljYXRpb24mcXVvdDsuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gcmVxdWVzdCBsb3N0IGxvZ2luIGluZm9ybWF0aW9uLCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byBhIHBhc3N3b3JkIHJlc2V0LCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCB0aGVpciB1c2VybmFtZSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgY2hhbmdlJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdBdXRoZW50aWNhdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0J1aWx0aW4gQXV0aGVudGljYXRpb24nOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnRkVVIFN0YW5kYXJkIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnQXV0aGVudGljYXRpb24gTW9kdWxlL01ldGhvZCc7CiRsYW5nWydpbmZvX2F1dGhfbW9kdWxlJ10gPSAnVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIHN1cHBvcnRzIHVzaW5nIGFsdGVybmF0ZSBhdXRoZW50aWNhdGlvbiBtZXRob2RzLCB3aXRoIHZhcnlpbmcgY2FwYWJpbGl0aWVzLiAgU29tZSBmdW5jdGlvbmFsaXR5IHdpbGwgbm90IGZ1bmN0aW9uIG9yIGJlIGRpc2FibGVkIHdoZW4gbm90IHVzaW5nIHRoZSBidWlsdCBpbiBhdXRoZW50aWNhdGlvbiBtZXRob2QnOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyBpcyBhbHJlYWR5IGluIHVzZSBieSBhbm90aGVyIHVzZXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pcXVlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1RoZSB2YWx1ZSBzcGVjaWZpZWQgZm9yICVzICglcykgaXMgbm90IHVuaXF1ZSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yY2UgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlciBhY2NvdW50cyc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVc2VkIHdpdGggdGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGlmIHNwZWNpZmllZCB3aWxsIGluZGljYXRlIHRoYXQgdGhlIHVzZXIgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSBwYWdlIChieSB1cmwpIHRoYXQgdGhlIHVzZXIgd2FzIHZpZXdpbmcgYmVmb3JlIHRoZSBhY3Rpb24gb2NjdXJyZWQuICBUaGlzIHBhcmFtZXRlciB3aWxsIG92ZXJyaWRlIHRoZSByZWRpcmVjdCBwcmVmZXJlbmNlcywgYW5kIHRoZSByZXR1cm50byBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2VkIHdpdGggb25lIG9mIHRoZSBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoYXQgdGhlIGZvcm1zIHNob3VsZCBub3QgYmUgcGxhY2VkIGlubGluZSwgaW5zdGVhZCB0aGUgcmVzdWx0aW5nIG91dHB1dCBhZnRlciBmb3JtIHN1Ym1pc3Npb24gd2lsbCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2snOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0xvZ2luIFNlc3Npb24gVGltZW91dCBXYXJuaW5nJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICZxdW90OyZxdW90O09rJnF1b3Q7IHRvIGNvbmZpcm0geW91ciBhY3Rpdml0eSBvbiB0aGlzIHdlYnNpdGUuJzsKJGxhbmdbJ29rJ10gPSAnT0snOwokbGFuZ1sncmVzZXRzZXNzaW9uX3RlbXBsYXRlJ10gPSAnU2Vzc2lvbi1UZW1wbGF0ZSB6dXImdXVtbDtja3NldHplbic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEaWVzIGlzdCBkZXIgRmVsZG5hbWUsIGRlciBpbiBTbWFydHkgZiZ1dW1sO3IgZGllIEFkcmVzc2llcnVuZyB2ZXJ3ZW5kZXQgd2lyZC4gRXIgZGFyZiBudXIgYWxwaGFudW1lcmlzY2hlIFplaWNoZW4gdW5kIFVudGVyc3RyaWNoZSAoXykgZW50aGFsdGVuLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXN1Y2hlcic7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1cmYXVtbDtobGVuIHNpZSBlaW5lIG9kZXIgbWVocmVyZSBGRVUtQmVudXR6ZXJncnVwcGVuLCBkZW5lbiBlcyBlcmxhdWJ0IGlzdCwgZGllc2UgU2VpdGUgYW56dXNlaGVuJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFcyBtdXNzIGVpbmUgR3J1cHBlIGF1c2dldyZhdW1sO2hsdCB3ZXJkZW4nOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnSWhyZSBBdXN3YWhsJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydGphaHInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmRqYWhyJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdHciZvdW1sOyZzemxpZztlIGRlcyBWb3JzY2hhdWJpbGQnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGRpZSBCZW51dHplcmdydXBwZSBnZSZhdW1sO25kZXJ0IHd1cmRlJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ0YmdXVtbDtyIGRpZXNlIEFrdGlvbiB3dXJkZW4genUgdmllbGUgQmVudXR6ZXIgYXVzZ2V3JmF1bWw7aGx0LiBCaXR0ZSBiZXNjaHImYXVtbDtua2VuIFNpZSBzaWNoIGF1ZiAyNTAgKG9kZXIgd2VuaWdlcikuJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnV29sbGVuIFNpZSB3aXJrbGljaCBkaWUgYXVzZ2V3JmF1bWw7aGx0ZW4gQmVudXR6ZXIgbCZvdW1sO3NjaGVuPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdBdXNnZXcmYXVtbDtobHRlIEJlbnV0emVyIGwmb3VtbDtzY2hlbic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdFaW5lbiB6dWYmYXVtbDtsbGlnZW4gQmVudXR6ZXJuYW1lbiBlcnpldWdlbiwgd2VubiBlaW4gbmV1ZXIgQmVudXR6ZXIgaGluenVnZWYmdXVtbDtndCB3aXJkJzsKJGxhbmdbJ21vbnRocyddID0gJ01vbmF0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnVm9yZWluZ2VzdGVsbHRlIFplaXQgYmlzIHp1bSBWZXJmYWxsIGRlcyBCZW51dHplcmtvbnRvcyc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdCZW5hY2hyaWNodGlndW5ncy1FaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnRWlnZW5zY2hhZnRzLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdXZWl0ZXJsZWl0dW5ncy1FaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdBbGxnZW1laW5lIEVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4gZiZ1dW1sO3IgU2Vzc2lvbnMgdW5kIENvb2tpZXMnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGZWxkLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnRGllIEtlbm56ZWljaG51bmcgZiZ1dW1sO3IgdmVyZ2Vzc2VuZSBCZW51dHplcm5hbWVuIGthbm4gbnVyIGJlaSBQZmxpY2h0ZmVsZGVybiB2ZXJ3ZW5kZXQgd2VyZGVuLic7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdJbiBkaWVzZW0gVGV4dGJlcmVpY2ggZGllIFZlcndlbmR1bmcgZWluZXMgV1lTSVdZRy1FZGl0b3JzIGVybGF1YmVuJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPkhpbndlaXM6PC9zdHJvbmc+IEYmdXVtbDtyIGRpZSBWZXJzY2hsJnV1bWw7c3NlbHVuZyB3ZXJkZW4gZGllIG1jcnlwdC1GdW5rdGlvbmVuIHZlcndlbmRldC4gQXVmIElocmVtIEFjY291bnQgc2NoZWludCBkaWVzZSBqZWRvY2ggbmljaHQgdm9yaGFuZGVuIHp1IHNlaW4uIEtvbnRha3RpZXJlbiBTaWUgZGFoZXIgSWhyZW4gU2VydmVyLUFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0JlbnV0emVyLUJlYXJiZWl0dW5nJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnS2VpbmUgSW5saW5lLUZvcm11bGFyZSB2ZXJ3ZW5kZW4nOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlja2VuIFNpZSBoaWVyLCB3ZW5uIFNpZSBzaWNoIG5pY2h0IG1laHIgYW4gZGllIERldGFpbHMgSWhyZXIgQW5tZWxkdW5nIGVyaW5uZXJuIGsmb3VtbDtubmVuJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdLbGlja2VuIFNpZSBoaWVyLCB3ZW5uIFNpZSBzaWNoIG5pY2h0IG1laHIgYW4gSWhyIFBhc3N3b3J0IGVyaW5uZXJuIGsmb3VtbDtubmVuJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnWnVtIEFibWVsZGVuIGhpZXIga2xpY2tlbic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpY2tlbiBTaWUgaGllciwgdW0gSWhyIFBhc3N3b3J0IG9kZXIgYW5kZXJlIEluZm9ybWF0aW9uZW4genUgJmF1bWw7bmRlcm4uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGllIEJlbnV0emVyLUFuemVpZ2UnOwokbGFuZ1snZXZlbnQnXSA9ICdFcmVpZ25pcyc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVLUVyZWlnbmlzLUJlbmFjaHJpY2h0aWd1bmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdFbWFpbC1BZHJlc3NlIGYmdXVtbDtyIEJlbmFjaHJpY2h0aWd1bmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgRW1haWwtQmVuYWNocmljaHRpZ3VuZ2VuJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ0JldHJlZmYgZGVyIEVtYWlsLUJlbmFjaHJpY2h0aWd1bmcnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbC1CZW5hY2hyaWNodGlndW5nZW4nOwokbGFuZ1snT25Mb2dpbiddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFubWVsZGV0JzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgYWJtZWxkZXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluZSBCZW51dHplci1TZXNzaW9uIGFibCZhdW1sO3VmdCc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW4gQmVudXR6ZXJrb250byBuZXUgZXJzdGVsbHQgd3VyZGUnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2VsJm91bWw7c2NodCB3dXJkZSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBCZW51dHplcmRhdGVuIGFrdHVhbGlzaWVydCB3dXJkZW4nOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgbmV1IGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGdlbCZvdW1sO3NjaHQgd3VyZGUnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdEaWUgRGF0ZW4genVtIEF1ZmZpbmRlbiB2ZXJsb3JlbmVyIFBhc3N3Jm91bWw7cnRlciB3dXJkZW4gdm9sbHN0JmF1bWw7bmRpZyBlaW5nZWdlYmVuLiBXaXIgaGFiZW4gZWluZW4gQmVudXR6ZXJuYW1lbiBnZWZ1bmRlbiwgZGVyIGRlbiB2b24gSWhuZW4gZWluZ2VnZWJlbmVuIERldGFpbHMgZW50c3ByaWNodC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0lociBCZW51dHplcm5hbWUgaXN0JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dpciBlbXBmZWhsZW4gSWhuZW4sIGRpZXNlIEluZm9ybWF0aW9uIGFuIHNpY2hlcmVyIFN0ZWxsZSBhdWZ6dWJld2FocmVuLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZW0gJkF1bWw7bmRlcm4gZGVyIEVpbnN0ZWxsdW5nZW4gZ2VzcHJ1bmdlbiB3ZXJkZW4gc29sbCc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdTZWl0ZW4tSUQvLUFsaWFzIGRlciBTZWl0ZSwgYXVmIGRpZSBuYWNoIGRlciBDb2RlcHImdXVtbDtmdW5nIGdlc3BydW5nZW4gd2VyZGVuIHNvbGwgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0RldGFpbHMtVGVtcGxhdGUgYmVpIHZlcmdlc3NlbmVtIEJlbnV0emVybmFtZW4nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdCZXN0JmF1bWw7dGlndW5ncy1UZW1wbGF0ZSBiZWkgdmVyZ2Vzc2VuZW0gQmVudXR6ZXJuYW1lbic7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0ZFSExFUjogTWVociBhbHMgZWluIEJlbnV0emVyLUtvbnRvIGVudHNwcmljaHQgZGVuIGdlc3VjaHRlbiBFaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZFSExFUjogS29ubnRlIGRlbiBnZXN1Y2h0ZW4gQmVudXR6ZXIgbmljaHQgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdGRUhMRVI6IEtvbm50ZSBrZWluZSBHcnVwcGUgbWl0IGRpZXNlbSBOYW1lbiBmaW5kZW4nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdOdXIgbGVzZW4nOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0tsYXNzZSB6dXIgQmVhcmJlaXR1bmcgdm9uIEJlbnV0emVybic7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdEdXJjaCBkZW4gQWRtaW5pc3RyYXRvciBhYmdlbWVsZGV0JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOdXIgZGllIGFuZ2VtZWxkZXRlbiBCZW51dHplciBhbnplaWdlbic7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRGllc2VuIEJlbnV0emVyIGFibWVsZGVuJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0JlbnV0emVyLUVpZ2Vuc2NoYWZ0ZW4nOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdCZW51dHplci1HZXNjaGljaHRlJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydGllcmVuJzsKJGxhbmdbJ2NsZWFyJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0JlbnV0emVyZ2VzY2hpY2h0ZSBpbiBlaW5lIEFTQ0lJLURhdGVpIGV4cG9ydGllcmVuJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnRGF0ZW5zJmF1bWw7dHplIGRlciBCZW51dHplcmdlc2NoaWNodGUgbCZvdW1sO3NjaGVuJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0hhYmVuIFNpZSBJaHJlIFp1Z2FuZ3NkYXRlbiB2ZXJnZXNzZW4/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0dydXBwZW4tRGVmaW5pdGlvbiAodW5kIEVpZ2Vuc2NoYWZ0ZW4pIGFscyBYTUwtRGF0ZWkgZXhwb3J0aWVyZW4nOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1ZlcndhbHR1bmcgZGVyIEJlbnV0emVyZ2VzY2hpY2h0ZW4nOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWluJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ3Zvbic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBLZWluZSBCZXNjaHImYXVtbDtua3VuZyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFaW5lIFN0dW5kZSBhbHQnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2VjaHMgU3R1bmRlbiBhbHQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnWncmb3VtbDtsZiBTdHVuZGVuIGFsdCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VpbmVuIFRhZyBhbHQnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRWluZSBXb2NoZSBhbHQnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1p3ZWkgV29jaGVuIGFsdCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnRWluZW4gTW9uYXQgYWx0JzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdEcmVpIE1vbmF0ZSBhbHQnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTZWNocyBNb25hdGUgYWx0JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0VpbiBKYWhyIGFsdCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwcGllcnVuZyB1bmQgU29ydGllcnVuZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnTWl0IGRlbiB2b3JnZWdlYmVuZW4gS3JpdGVyaWVuICZ1dW1sO2JlcmVpbnN0aW1tZW5kZSBEYXRlbnMmYXVtbDt0emUnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdOYWNoIEJlbnV0emVybmFtZW4gYWJzdGVpZ2VuZCAnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ05hY2ggQmVudXR6ZXJuYW1lbiBhdWZzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnTmFjaCBEYXR1bSBhYnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ05hY2ggRGF0dW0gYXVmc3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnTmFjaCBFcmVpZ25pc3R5cCBhYnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnTmFjaCBFcmVpZ25pc3R5cCBhdWZzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdOYWNoIElQLUFkcmVzc2UgYWJzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ05hY2ggSVAtQWRyZXNzZSBhdWZzdGVpZ2VuZCc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnS2VpbmUgR2VzY2hpY2h0ZSB2b3JoYW5kZW4nOwokbGFuZ1sncmVzZXQnXSA9ICdadXImdXVtbDtja3NldHplbic7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcnVwcGVuIG5hY2ggSVAtQWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0VyZWlnbmlzdHlwZW4tRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1plaWd0IG51ciBFcmVpZ25pc3NlIGFuLCBkaWUgZ2VyaW5nZXIgc2luZCBhbHM6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTZWl0ZW5saW1pdCc7CiRsYW5nWydmb3InXSA9ICdmJnV1bWw7cic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0JlcmljaHQgenVyIEJlbnV0emVyZ2VzY2hpY2h0ZSc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5iZWthbm50JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1BZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdFcmVpZ25pcy1UeXAnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnWnVyJnV1bWw7Y2snOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0RhdGVuaW1wb3J0IGtvbXBsZXR0JzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1plaWxlbiB2ZXJhcmJlaXRldCc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRmVobGVyIGF1ZmdldHJldGVuJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdEYXRlbnMmYXVtbDt0emUgaGluenVnZWYmdXVtbDtndCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnS29ubnRlIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZiZ1dW1sO3IgZGllIEdydXBwZSAlcyBmaW5kZW4nOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdLb25udGUga2VpbmUgQW50d29ydCB2b20gU01UUC1TZXJ2ZXIgYmVrb21tZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRGllIHZvcmdlZ2ViZW5lIERhdGVpICglcykga29ubnRlIG5pY2h0IGdlZnVuZGVuIHdlcmRlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVW5nJnV1bWw7bHRpZ2VyIFdlcnQgZiZ1dW1sO3IgZGFzIExpc3RlbmZlbGQgb2RlciBkYXMgRmVsZCB6dXIgTWVocmZhY2hhdXN3YWhsICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRGFzIEZlbGQgJXMgJnV1bWw7YmVyc2NocmVpdGV0IGRpZSBtYXhpbWFsIG0mb3VtbDtnbGljaGUgTCZhdW1sO25nZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydC1GZWhsZXIgKFplaWxlICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0tvbm50ZSBkaWUgRWlnZW5zY2hhZnRzZGVmaW5pdGlvbiBuaWNodCBhYnJ1ZmVuIChpbnRlcm5lciBGZWhsZXIpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gYmVpbSBTZXR6ZW4gZGVyIEJlbnV0emVyaW5mb3JtYXRpb24nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0tvbm50ZSBrZWluZSBTcGFsdGUgZmluZGVuLCBkaWUgbWl0IGRlbSBlcmZvcmRlcmxpY2hlbiBGZWxkICVzICZ1dW1sO2JlcmVpbnN0aW1tdCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0tvbm50ZSBmJnV1bWw7ciBkaWUgZmVzdGdlbGVndGUgR3J1cHBlIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdEYXMgRm9ybWF0IGRlciB6dSBpbXBvcnRpZXJlbmRlbiBEYXRlaSBpc3QgZmFsc2NoJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdLb25udGUgZGllIERhdGVpIG5pY2h0ICZvdW1sO2ZmbmVuJzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkluZm9tYXRpb25lbiB6dW0gRm9ybWF0IGRlciB6dSBpbXBvcnRpZXJlbmRlbiBEYXRlaTwvaDQ+DQo8cD5EaWUgenUgaW1wb3J0aWVyZW5kZSBEYXRlaSBtdXNzIGltIEFTQ0lJLUZvcm1hdCB2b3JsaWVnZW4uIERpZSBlaW56ZWxuZW4gV2VydGUgbSZ1dW1sO3NzZW4gZHVyY2ggS29tbWF0YSBnZXRyZW5udCBzZWluLiBKZWRlIFplaWxlIGluIGRpZXNlciBEYXRlaSBlbnRzcHJpY2h0IGRlbSBEYXRlbnNhdHogZWluZXMgQmVudXR6ZXJzIChtaXQgQXVzbmFobWUgZGVyIEtvcGZ6ZWlsZSwgbWVociBkYXp1IHdlaXRlciB1bnRlbikuIEplZGUgWmVpbGUgTVVTUyBkaWUgZ2xlaWNoZSBBbnphaGwgYW4gRmVsZGVybiBlbnRoYWx0ZW4uIEF1Y2ggZGllIFJlaWhlbmZvbGdlIGRlciBGZWxkZXIgTVVTUyBpbiBqZWRlciBaZWlsZSBnbGVpY2ggc2Vpbi48L3A+DQo8aDU+RGllIEtvcGZ6ZWlsZTwvaDU+DQo8dWw+DQo8bGk+RGllIGVyc3RlIFplaWxlIGRlciBEYXRlaSBtdXNzIG1pdCB6d2VpIFJhdXRlbiAoXCMpIGJlZ2lubmVuLiBJbiBkaWVzZXIgWmVpbGUgd2VyZGVuIGRpZSB2ZXJ3ZW5kZXRlbiBGZWxkZXIgaW4gZGVyIERhdGVpIGRlZmluaWVydC4gRGllIE5hbWVuIGRpZXNlciBGZWxkZXIgc2luZCBiZXNvbmRlcnMgd2ljaHRpZy4gRWluIHBhYXIgZGVyIEZlbGRlciBzaW5kIFBmbGljaHRmZWxkZXIgKGltIGZvbGdlbmRlbiBiZXNjaHJpZWJlbikuIERpZSBhbmRlcmVuIEZlbGRuYW1lbiBtJnV1bWw7c3NlbiBtaXQgZGVuIE5hbWVuIGRlciB6dWdlb3JkbmV0ZW4gRWlnZW5zY2hhZnRlbiBkZXIgamV3ZWlsaWdlbiBCZW51dHplcmdydXBwZSAmdXVtbDtiZXJlaW5zdGltbWVuLCBkZXIgZGllIEJlbnV0emVyIGhpbnp1Z2VmJnV1bWw7Z3Qgd2VyZGVuIHNvbGxlbi48L2xpPg0KPGxpPlN0aW1tZW4gZGllIEZlbGRlciBuaWNodCBtaXQgYWxsZW4sIGRlciBCZW51dHplcmdydXBwZSAoZGVyIGRpZSBCZW51dHplciBoaW56dWdlZiZ1dW1sO2d0IHdlcmRlbiBzb2xsZW4pIHp1Z2VvcmRuZXRlbiBQZmxpY2h0ZmVsZGVybiAmdXVtbDtiZXJlaW4sIHdpcmQgZGVyIEltcG9ydCBtaXNzbGluZ2VuLjwvbGk+DQo8bGk+RGllIHp1IGltcG9ydGllcmVuZGUgRGF0ZWkga2FubiBGZWxkZXIgZW50aGFsdGVuLCBpbiBkZW5lbiBvcHRpb25hbGUgRWlnZW5zY2hhZnRlbiBkZXIgZmVzdGdlbGVndGVuIEdydXBwZSBlbnRoYWx0ZW4gc2luZC48L2xpPg0KPGxpPkJlaW0gSW1wb3J0IHdlcmRlbiBGZWxkZXIgaWdub3JpZXJ0LCBkaWUgZW50d2VkZXIgdW5iZWthbm50IHNpbmQgb2RlciBhdWYgRWlnZW5zY2hhZnRlbiB2ZXJ3ZWlzZW4sIGRpZSBmJnV1bWw7ciBkaWUgZmVzdGdlbGVndGUgQmVudXR6ZXJncnVwcGUgbmljaHQgYWt0aXZpZXJ0IHNpbmQuPC9saT4NCjwvdWw+DQo8aDU+RGllIERhdGVuIGluIGRlbiBTcGFsdGVuPC9oNT4NCjx1bD4NCjxsaT5EYXMgRmVsZCA8c3Ryb25nPnVzZXJpZDwvc3Ryb25nPiAtIERpZSBCZW51dHplci1JRCBmJnV1bWw7ciBkZW4gQmVudXR6ZXIuIEVudGgmYXVtbDtsdCBkaWVzZXMgRmVsZCBlaW5lbiBXZXJ0LCB3aXJkIGRhdm9uIGF1c2dlZ2FuZ2VuLCBkYXNzIFNpZSBkaWVzZXMgYWt0dWFsaXNpZXJlbiBtJm91bWw7Y2h0ZW4uPC9saT4NCjxsaT5EYXMgRmVsZCA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IC0gZGVyIGdldyZ1dW1sO25zY2h0ZSBCZW51dHplcm5hbWUuDQogICAgPHA+RGllc2VzIEZlbGQgbXVzcyBpbiBkZXIgS29wZnplaWxlIHNvd2llIGluIGplZGVyIFplaWxlIGRlciB6dSBpbXBvcnRpZXJlbmRlbiBEYXRlaSBlbnRoYWx0ZW4gc2Vpbi4gRXhpc3RpZXJ0IGRlciBCZW51dHplcm5hbWUgYmVyZWl0cyBpbiBkZXIgRGF0ZW5iYW5rLCB3aXJkIGRpZXNlciBEYXRlbnNhdHogbmljaHQgaW1wb3J0aWVydC48L3A+PC9saT4NCjxsaT5EYXMgRmVsZCA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IC0gZGFzIFBhc3N3b3J0LCB3ZWxjaGVzIGYmdXVtbDtyIGRpZXNlbiBCZW51dHplciBnZXNldHp0IHdlcmRlbiBzb2xsPC9saT4NCjxsaT5EYXMgRmVsZCA8c3Ryb25nPmNyZWF0ZWRhdGU8L3N0cm9uZz4gLSBub2NoIHp1IGVybGVkaWdlbjwvbGk+DQo8bGk+RGFzIEZlbGQgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IC0gbm9jaCB6dSBlcmxlZGlnZW48L2xpPg0KPGxpPkRhcyBGZWxkIDxzdHJvbmc+Z3JvdXBuYW1lPC9zdHJvbmc+IC0gZGllIEJlbnV0emVyZ3J1cHBlbiwgaW4gZGVuZW4gZGVyIEJlbnV0emVyIE1pdGdsaWVkIHNlaW4gc29sbC4gRmFsbHMgUGZsaWNodGZlbGRlciBvaG5lIEVpbnRyYWcgc2luZCwgd2lyZCBkZXIgSW1wb3J0IGZlaGxzY2hsYWdlbi4gRGVuIFN5bnRheCBmJnV1bWw7ciBMaXN0ZW5mZWxkZXIgbWl0IE1laHJmYWNoYXVzd2FobCBmaW5kZW4gU2llIHdlaXRlciB1bnRlbi48L2xpPg0KPGxpPkxpc3RlbmZlbGRlcg0KICAgIDxwPkRlciBXZXJ0IGRlcyBMaXN0ZW5mZWxkZXMgaW4gZGVyIHp1IGltcG9ydGllcmVuZGVuIERhdGVpIG11c3MgZWluZW4gZGVyIFRleHRzdHJpbmdzIGVudGhhbHRlbiwgZGVyIGluIGRlciBMaXN0ZW5mZWxkYXVzd2FobCBkZXMgRnJvbnRlbmRVc2VyLU1vZHVscyBhbmdlemVpZ3Qgd2lyZC48L3A+DQo8L2xpPg0KPGxpPkxpc3RlbmZlbGRlciBtaXQgTWVocmZhY2hhdXN3YWhsDQogICAgPHA+RWluIExpc3RlbmZlbGQgbWl0IE1laGZhY2hhdXN3YWhsIG11c3MgaW4gZGVyIHp1IGltcG9ydGllcmVuZGVuIERhdGVpIGVpbmVuIG9kZXIgbWVocmVyZSBkZXIgVGV4dHN0cmluZ3MgZW50aGFsdGVuLCBkaWUgaW0gTGlzdGVuZmVsZCBtaXQgTWVocmZhY2hhdXN3YWhsIGRlcyBGcm9udGVuZFVzZXItTW9kdWxzIGFuZ2V6ZWlndCB3ZXJkZW4uIERpZSBXZXJ0ZSBkaWVzZXMgRmVsZGVzIHNpbmQgZHVyY2ggRG9wcGVscHVua3Qgdm9uZWluYW5kZXIgenUgdHJlbm5lbi48L3A+DQo8L2xpPg0KPGxpPkRhdHVtc2ZlbGRlcg0KICAgIDxwPk11c3MgaW0gRm9ybWF0IE1NLVRULUpKSkogYW5nZWdlYmVuIHdlcmRlbjwvcD4NCjwvbGk+DQo8bGk+QmlsZGZlbGRlcg0KICAgIDxwPkJpbGRmZWxkZXIgc2luZCBGZWxkZXIsIGRlcmVuIFNwYWx0ZW5uYW1lIG1pdCBlaW5lciBFaWdlbnNjaGFmdCB2b20gVHlwIEJpbGQgJnV1bWw7YmVyZWluc3RpbW10LiBXZW5uIGRpZXNlcyBGZWxkIGVpbiBQZmxpY2h0ZmVsZCBkZXJqZW5pZ2VuIEdydXBwZSBpc3QsIGRlciBkaWUgQmVudXR6ZXIgaGluenVnZWYmdXVtbDtndCB3ZXJkZW4gc29sbGVuLCBkYW5uIG11c3MgZWluIEJpbGQgbWl0IGRlbSwgaW4gZGllc2VyIFNwYWx0ZSBhbmdlZ2ViZW5lbiBOYW1lbiBpbSAvdXBsb2Fkcy1WZXJ6ZWljaG5pcyB2b24gQ01TIG1hZGUgc2ltcGxlIHZvcmhhbmRlbiBzZWluLiBXZW5uIGRhcyBCaWxkIG5pY2h0IGV4aXN0aWVydCB1bmQgZGFzIEZlbGQgYWxzIFBmbGljaHRmZWxkIGZlc3RnZWxlZ3Qgd3VyZGUsIHdpcmQgZGVyIERhdGVuc2F0eiBuaWNodCBpbXBvcnRpZXJ0LjwvcD4NCjwvdWw+DQo8aDU+SGlud2Vpc2U8L2g1Pg0KPHA+RGVyIEVyZm9sZyBkZXMgSW1wb3J0cHJvemVzc2VzIGthbm4gdm9uIHZlcnNjaGllZGVuZW4gQmVzY2hyJmF1bWw7bmt1bmdlbiBJaHJlcyBQcm92aWRlcnMgKHdpZSBldHdhIFNwZWljaGVyYmVzY2hyJmF1bWw7bmt1bmdlbiwgVmVyYXJiZWl0dW5nc3plaXRlbiwgR3Imb3VtbDsmc3psaWc7ZSBkZXIgaG9jaHp1bGFkZW5kZW4gRGF0ZWkgdW5kIHNhZmUgbW9kZS1CZXNjaHImYXVtbDtua3VuZ2VuKSBiZWVpbnRyJmF1bWw7Y2h0aWd0IHdlcmRlbi4gSmVkZXIgZGllc2VyIEJlc2NociZhdW1sO25rdW5nZW4ga2FubiBkZW4gZXJmb2xncmVpY2hlbiBJbXBvcnQgdmVyaGluZGVybi4gQXVmZ3J1bmQgZGVzc2VuIGlzdCBlcyBlbXBmZWhsZW5zd2VydCwgamV3ZWlscyBudXIga2xlaW5lcmUgRGF0ZWllbiBtaXQgZWluZmFjaGVyIFN0cnVrdHVyIHp1IGltcG9ydGllcmVuLjwvcD4NCjxwPlVtIGRlbiBWZXJsdXN0IGRlciBEYXRlbmJhbmsgZHVyY2ggZWluZSBCZXNjaCZhdW1sO2RpZ3VuZyB6dSB2ZXJtZWlkZW4sIGlzdCBlcyBkZXN3ZWl0ZXJlbiBlbXBmZWhsZW5zd2VydCwgVk9SIGRlbSBJbXBvcnQgZWluZSBTaWNoZXJ1bmdza29waWUgZGVyIERhdGVuYmFuayB6dSBlcnN0ZWxsZW4uPC9wPg0KPHA+RGllIGV4cG9ydGllcnRlbiBEYXRlbiBzaW5kIGltIHNlbGJlbiBGb3JtYXQsIHdpZSBzaWUgZiZ1dW1sO3IgZGVuIEltcG9ydCBiZW4mb3VtbDt0aWd0IHdlcmRlbi48L3A+DQo8aDU+RWluIEJlaXNwaWVsIGYmdXVtbDtyIGVpbmUgSW1wb3J0ZGF0ZWk8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsVm9ybmFtZSxOYWNobmFtZSxFbWFpbCxTdGFkdCxCdW5kZXNsYW5kLFN0YWF0LFBMWg0KQmVudXR6ZXIxLFRlc3QsQmVudXR6ZXIsYmVudXR6ZXIxQG1laW5lZG9tYWluLmRlLGlyZ2VuZHdvLFNOLERFLDAxMjM0DQo8L3ByZT4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0JlbnV0emVyIGluIGRpZXNlIEdydXBwZSBpbXBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdDU1YtRGF0ZWkgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdYTUwtRGF0ZWkgYXVzdyZhdW1sO2hsZW4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnQmVudXR6ZXIgZXhwb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnQmVudXR6ZXIgaW1wb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnWmllbHBmYWQgZiZ1dW1sO3IgZGFzIEJpbGQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFcyBpc3QgZWluIFByb2JsZW0gbWl0IGVpbmVyIGZlaGxlbmRlbiwgYWJlciBlcmZvcmRlcmxpY2hlbiAoaG9jaHp1bGFkZW5kZW4pIERhdGVpIGF1ZmdldHJldGVuJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLb25udGUgZGllIGFuZ2VnZWJlbmUgWE1MLURhdGVpIG5pY2h0IHZlcmFyYmVpdGVuJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdEaWUgR3J1cHBlIGtvbm50ZSBuaWNodCBnZWwmb3VtbDtzY2h0IHdlcmRlbiwgZGEgc2llIG5vY2ggQmVudXR6ZXIgZW50aCZhdW1sO2x0Lic7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRGllc2VyIEJlbnV0emVyIGlzdCBiZXJlaXRzIGFuZ2VtZWxkZXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnRGVyIFRleHQgYXVzIGRlbSBCaWxkIHd1cmRlIG5pY2h0IHJpY2h0aWcgZWluZ2VnZWJlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnRGVuIEJlbnV0emVybiBlcmxhdWJlbiwgc2ljaCBtZWhyIGFscyBlaW5tYWwgYW56dW1lbGRlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnTmFtZW5zZXJ3ZWl0ZXJ1bmdlbiBmJnV1bWw7ciBCaWxkZXIsIGRpZSBkZXIgQmVudXR6ZXIgaG9jaGxhZGVuIGRhcmYnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2VsJm91bWw7c2NodCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIEJlbnV0emVybmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gbmV1IGVyc3RlbGx0IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBkZXIgQmVudXR6ZXJuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBCZW51dHplcmRhdGVuIGFrdHVhbGlzaWVydCB3dXJkZW4gKGVudHdlZGVyIGR1cmNoIGlobiBzZWxic3Qgb2RlciBkdXJjaCBkZW4gQWRtaW5pc3RyYXRvcik8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gZGVyIEJlbnV0emVybmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIG5ldSBlcnN0ZWxsdCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBkZXIgQmVudXR6ZXJncnVwcGVuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGRpZSBCZXNjaHJlaWJ1bmcgZGVyIEJlbnV0emVyZ3J1cHBlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplcmdydXBwZW4tSUQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGdlbCZvdW1sO3NjaHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gZGVyIEJlbnV0emVyZ3J1cHBlbm5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gZGllIEJlbnV0emVyZ3J1cHBlbi1JRDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkF1c2YmdXVtbDtocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFubWVsZGV0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgSUQgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIE5hbWUgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gZGllIElQLUFkcmVzc2UgZGVzIENsaWVudHM8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPGgzPk9uTG9nb3V0PGgzPg0KPHA+QXVzZiZ1dW1sO2hyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgYWJtZWxkZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBOYW1lIGRlcyBhYmdlbWVsZGV0ZW4gQmVudXR6ZXJzPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPGgzPk9uU2Vzc2lvbkV4cGlyeTwvaDM+DQo8cD5BdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyLVNlc3Npb24gYWJsJmF1bWw7dWZ0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBkZXIgTmFtZSBkZXMgQmVudXR6ZXJzIGRlciBhYmdlbGF1ZmVuZW4gU2l0enVuZzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgQmVudXR6ZXItSUQgZGVyIGFiZ2VsYXVmZW5lbiBTaXR6dW5nPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgaW0gU3lzdGVtIGFubWVsZGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBzaWNoIGVpbiBCZW51dHplciBpbSBTeXN0ZW0gYWJtZWxkZXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyLVNpdHp1bmcgYWJsJmF1bWw7dWZ0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluIG5ldWVyIEJlbnV0emVyIGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZGllIEluZm9ybWF0aW9uZW4genUgZWluZW0gQmVudXR6ZXIgYWt0dWFsaXNpZXJ0IHd1cmRlbic7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0F1c2YmdXVtbDtocmVuLCB3ZW5uIGVpbiBCZW51dHplcmtvbnRvIGdlbCZvdW1sO3NjaHQgd3VyZGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQXVzZiZ1dW1sO2hyZW4sIHdlbm4gZWluZSBCZW51dHplcmdydXBwZSBlcnN0ZWxsdCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGFrdHVhbGlzaWVydCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBdXNmJnV1bWw7aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGdlbCZvdW1sO3NjaHQgd3VyZGUnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0FkbWluaXN0cmF0aW9ucy1HcnVwcGUnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBEaWUgZm9sZ2VuZGVuIE1ha3JvcyBrJm91bWw7bm5lbiBpbiBkaWVzZW4gRmVsZGVybiB2ZXJ3ZW5kZXQgd2VyZGVuOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2VubiBTaWUgZGFzIHskZ3JvdXB9LU1ha3JvIHZlcndlbmRlbiwgZXJzZXR6dCBkYXMgU3lzdGVtIGRlbiBOYW1lbiBkZXIgZXJzdGVuIEJlbnV0emVyZ3J1cHBlLCBkZXIgZGVyIEJlbnV0emVyIGFuZ2VoJm91bWw7cnQgdW5kIGxlaXRldCBpaG4gYXVmIGRpZXNlIFNlaXRlIHdlaXRlci4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0JlYXJiZWl0ZW4gU2llIGRpZXNlcyBGZWxkLCB1bSBkYXMgUGFzc3dvcnQgZGVzIEJlbnV0emVycyB6dXImdXVtbDtja3p1c2V0emVuLic7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnQmVhcmJlaXRlbiBTaWUgZGllc2VzIEZlbGQsIHVtIGRhcyBQYXNzd29ydCBkZXMgQmVudXR6ZXJzIHp1ciZ1dW1sO2NrenVzZXR6ZW4uJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0VpbiBCZW51dHplciBtaXQgZGllc2VtIEJlbnV0emVybmFtZW4gZXhpc3RpZXJ0IGJlcmVpdHMuJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ1ZvbSBDU1YtRXhwb3J0IHd1cmRlbiBrZWluZSBEYXRlbiB6dXImdXVtbDtja2dlZ2ViZW4uJzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0wmYXVtbDtuZ2UgZGVzIEJlbnV0emVybmFtZW4tRmVsZGVzJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0wmYXVtbDtuZ2UgZGVzIFBhc3N3b3J0LUZlbGRlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnQmVpbSBVbnRlci0vJlV1bWw7YmVyc2NocmVpdGVuIGRpZXNlciBMJmF1bWw7bmdlIGlzdCBkYXMgUGFzc3dvcnQgdW5nJnV1bWw7bHRpZy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ0JlaW0gVW50ZXItLyZVdW1sO2JlcnNjaHJlaXRlbiBkaWVzZXIgTCZhdW1sO25nZSBpc3QgZGVyIEJlbnV0emVybmFtZSB1bmcmdXVtbDtsdGlnLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnVW5nJnV1bWw7bHRpZ2UgRW1haWwtQWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0YmdXVtbDtyIGRpZXNlcyBCZW51dHplcmtvbnRvIHd1cmRlIGtlaW5lIEVtYWlsYWRyZXNzZSBnZWZ1bmRlbi4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gYmVpbSBTZXR6ZW4gZGVyIEJlbnV0emVyaW5mb3JtYXRpb25lbic7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIGJlaW0gU2V0emVuIGRlciBFaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdCZW51dHplciAlcyA9ICVzIGhpbnp1Z2VmJnV1bWw7Z3QnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnQmVudXR6ZXIgbWl0IGRlciB1aWQ9JXMgZ2VsJm91bWw7c2NodCc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdXZXJ0IChyZWd1bCZhdW1sO3JlciBBdXNkcnVjayknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJudW5nOiBEaWVzZSBGZWxkZXIgYmVlaW5mbHVzc2VuIGRpZSBHciZvdW1sOyZzemxpZztlIGRlciBFaW5nYWJlZmVsZGVyIGluIEZvcm11bGFyZW4uICBEaWUgVmVycmluZ2VydW5nIGRpZXNlciBaYWhsIGlzdCBkYWhlciBhdWYgZWluZXIgYmVyZWl0cyBleGlzdGllcmVuZGVuIFNlaXRlIG5pY2h0IHJhdHNhbS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggZGllIEVpbnN0ZWxsdW5nZW4gJmF1bWw7bmRlcm4/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdEaWVzZSBFbWFpbGFkcmVzc2UgaXN0IGJlcmVpdHMgaW4gVmVyd2VuZHVuZy4nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnQ29va2llcyBmJnV1bWw7ciBkaWUgU3BlaWNoZXJ1bmcgZGVyIEFubWVsZGUtRGV0YWlscyB2ZXJ3ZW5kZW4nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdEZXIgTmFtZSBkZXMgQ29va2llcyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0VtYWlsLUFkcmVzc2R1cGxpa2F0ZSBlcmxhdWJlbic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdEaWUgRW1haWwtQWRyZXNzZSBzb2xsIGRlciBCZW51dHplcm5hbWUgc2Vpbic7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdFcyB3aXJkIHZlcnN1Y2h0LCBkaWUgZXJmb2xncmVpY2hlIEFubWVsZHVuZyAmdXVtbDtiZXIgZWluZW4gQ29va2llIGF1ZiBkZW0gUmVjaG5lciB6dSBzcGVpY2hlcm4gPGVtPihkZXIgQ29va2llIHdpcmQgYmVpIGVudHNwcmVjaGVuZGVuIEFrdGl2aXQmYXVtbDt0ZW4gYXVmIGRlciBXZWJzZWl0ZSB6dXImdXVtbDtjayBnZXNldHp0KTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhlcmxhdWJ0IG1laHJlcmVuIEJlbnV0emVybiBkaWUgTnV0enVuZyBkZXIgZ2xlaWNoZW4gRW1haWxhZHJlc3NlKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGRpZSBFbWFpbC1BZHJlc3NlIGRlcyBCZW51dHplcnMgaXN0IHNlaW4gQmVudXR6ZXJuYW1lIC0tIHZlcndlbmRlbiBTaWUgZGllc2UgRWluc3RlbGx1bmcgTklFTUFMUyB6dXNhbW1lbiBtaXQgJnF1b3Q7RW1haWwtQWRyZXNzZHVwbGlrYXRlIGVybGF1YmVuJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdFcm5ldXRlIEFuZnJhZ2UgJnF1b3Q7UGFzc3dvcnQgdmVyZ2Vzc2VuJnF1b3Q7IGVybGF1YmVuPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoZXJsYXVidCBlaW5lbSBCZW51dHplciBkaWUgZXJuZXV0ZSBBbmZyYWdlIGF1ZiBkYXMgWnVyJnV1bWw7Y2tzZXR6ZW4gZGVzIFBhc3N3b3J0ZXMsIGF1Y2ggd2VubiBlciBhdWYgZWluZSB2b3JhbmdlZ2FuZ2VuZSBadXImdXVtbDtja3NldHp1bmcgbmljaHQgcmVhZ2llcnQgaGF0KSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ0Zyb250ZW5kVXNlci1zcGV6aWZpc2NoZSBCZXJlY2h0aWd1bmdlbiB2ZXJ3ZW5kZW4/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxlcndlaXNlIGVudHNwcmVjaGVuIGRpZSBGRVVzZXJzIEJlcmVjaHRpZ3VuZ2VuIGRlbmVuIGF1cyBkZXIgQWRtaW5pc3RyYXRpb24gd2llIGV0d2EgQmVudXR6ZXIgaGluenVmJnV1bWw7Z2VuLCBHcnVwcGUgaGluenVmJnV1bWw7Z2VuIHVzdy4gV2VubiBTaWUgamVkb2NoIGRpZXNlIE9wdGlvbiBhdXN3JmF1bWw7aGxlbiwgd2VyZGVuIGYmdXVtbDtyIGRpZSBGcm9udGVuZFVzZXJzLUJlbnV0emVya29udGVuIHNlcGFyYXRlIEJlcmVjaHRpZ3VuZ2VuIGdlc2V0enQuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnS29ubnRlIGRpZSBob2NoZ2VsYWRlbmUgRGF0ZWkgbmljaHQgZmluZGVuIChpbnRlcm5lciBGZWhsZXIpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnTWl0IGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIGlzdCBlaW4gUHJvYmxlbSBhdWZnZXRyZXRlbi4gQml0dGUgdmVyc3VjaGVuIFNpZSBlcyBub2NoIGVpbm1hbC4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnU2llIGhhYmVuIGtlaW5lbiBCZW51dHplcm5hbWVuIGVpbmdlZ2ViZW4uJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1NpZSBoYWJlbiBJaHJlIEVtYWlsLUFkcmVzc2UgbmljaHQgZWluZ2VnZWJlbiEnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnU2llIGhhYmVuIGtlaW4gUGFzc3dvcnQgZWluZ2VnZWJlbi4nOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kVXNlciAtIEFibWVsZHVuZyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZFVzZXIgLSBBbm1lbGR1bmcnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxzcGFuIHN0eWxlPSZxdW90O2NvbG9yOiByZWQmcXVvdDs+PGI+QUNIVFVORzwvYj4gV2VubiBTaWUgYmVyZWl0cyBleGlzdGllcmVuZGUgRWlnZW5zY2hhZnRlbiAmYXVtbDtuZGVybiwgZGllIHNjaG9uIEdydXBwZW4genVnZW9yZG5ldCBzaW5kLCBrYW5uIElocmUgU2VpdGUgbSZvdW1sO2dsaWNoZXJ3ZWlzZSB6ZXJzdCZvdW1sO3J0IHdlcmRlbjxpPihiZXNvbmRlcnMsIHdlbm4gU2llIGRpZSBMJmF1bWw7bmdlIGRlciBGZWxkZXIgcmVkdXppZXJlbiwgZXRjKS48L2k+PC9zcGFuPic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0RpZXMgZnVua3Rpb25pZXJ0IE5JQ0hUIHVudGVyIFdpbmRvd3MuJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdFcnN0ZWxsZW4gU2llIE5JRU1BTFMgZWluZSBFaWdlbnNjaGFmdCBmJnV1bWw7ciBlaW5lbiBCZW51dHplcm5hbWVuIG9kZXIgUGFzc3dvcnQuIERpZXMgaXN0IGltIEZyb250RW5kVXNlcnMtTW9kdWwgYmVyZWl0cyBlaW5nZWJhdXQuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdCZW51dHplciBpbiBlaW5lIENTVi1EYXRlaSBleHBvcnRpZXJlbic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRpZXJlbic7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnRpZXJlbic7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmF0b3InOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFaWdlbnNjaGFmdCBiZWFyYmVpdGVuJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltYWxlIEwmYXVtbDtuZ2UnOwokbGFuZ1snY3JlYXRlZCddID0gJ0Vyc3RlbGx0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRpZXJlbiBuYWNoJzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aWVydW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0JlbnV0emVyIGluIGRlci9kZW4gYXVzZ2V3JmF1bWw7aGx0ZW4gR3J1cHBlKG4pJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0VyZ2Vibmlzc2UgYmVzY2hyJmF1bWw7bmtlbiBhdWYnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnRiZ1dW1sO3IgZGllc2VuIEJlbnV0emVyIGtvbm50ZSBkYXMgRW1haWwtRmVsZCBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4uIEJpdHRlIGtvbnRha3RpZXJlbiBTaWUgZGVuIFN5c3RlbWFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBmJnV1bWw7ciBkYXMgRm9ybXVsYXIgJnF1b3Q7UGFzc3dvcnQgdmVyZ2Vzc2VuJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBmJnV1bWw7ciBkYXMgRm9ybXVsYXIgJnF1b3Q7RWluc3RlbGx1bmdlbiAmYXVtbDtuZGVybiZxdW90Oyc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1NlaXRlbi1JRC8tQWxpYXMgZGVyIFNlaXRlLCBhdWYgZGllIG5hY2ggZGVyIEFubWVsZHVuZyBnZXNwcnVuZ2VuIHdlcmRlbiBzb2xsIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZXIgQWJtZWxkdW5nIGdlc3BydW5nZW4gd2VyZGVuIHNvbGwgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0aWVycmVpaGVuZm9sZ2UnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQW56YWhsIGRlciBCZW51dHplcm4sIGRpZSBpaHIgdmVybG9yZW5lcyBQYXNzd29ydCB6dXImdXVtbDtja3p1c2V0emVuIG0mb3VtbDtjaHRlbi4gQWt0dWVsbCBzdGVodCBkZXIgWiZhdW1sO2hsZXIgYXVmOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4sIGRpZSAmYXVtbDtsdGVyIGFscyBlaW5lIFdvY2hlIHNpbmQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnQWxsZSBFaW50ciZhdW1sO2dlIGVudGZlcm5lbiwgZGllICZhdW1sO2x0ZXIgYWxzIGVpbiBNb25hdCBzaW5kJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ0FsbGUgRWludHImYXVtbDtnZSBlbnRmZXJuZW4nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dvbGxlbiBTaWUgZGFzIHdpcmtsaWNoPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1NpZSBoYWJlbiBlaW5lbiB1bmcmdXVtbDtsdGlnZW4gQ29kZSBlaW5nZWdlYmVuOyBiaXR0ZSB2ZXJzdWNoZW4gU2llIGVzIG5vY2ggZWlubWFsLic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRiZ1dW1sO3IgSWhyZSBCZW51dHplci1JRCB3dXJkZSBrZWluIHRlbXBvciZhdW1sO3JlciBDb2RlIGluIGRlciBEYXRlbmJhbmsgZ2VmdW5kZW4uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZiZ1dW1sO3IgZGllIEFuemVpZ2UgZGVzICZVdW1sO2JlcnByJnV1bWw7ZnVuZ3MtRm9ybXVsYXJzJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBkaWUgRW1haWwgYmVpIHZlcmdlc3NlbmVtIFBhc3N3b3J0JzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFbnR3ZWRlciBTaWUgc2VsYnN0IG9kZXIgamVtYW5kIGFuZGVyZXMgaGF0IGJlcmVpdHMgZGFzIFp1ciZ1dW1sO2Nrc2V0emVuIGRlcyBQYXNzd29ydHMgZiZ1dW1sO3IgZGllc2UgS29udG8gYXVzZ2VsJm91bWw7c3QuIFByJnV1bWw7ZmVuIFNpZSBJaHJlbiBFbWFpbC1FaW5nYW5nLiBTaWUgZmluZGVuIGRvcnQgd2VpdGVyZSBBbndlaXN1bmdlbiB6dW0gWnVyJnV1bWw7Y2tzZXR6ZW4gSWhyZXMgUGFzc3dvcnRlcy4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGVuYmFua2ZlaGxlcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdTaWUgZXJoYWx0ZW4gZGllc2UgTmFjaHJpY2h0LCBkYSBqZW1hbmQgYXVmIHVuc2VyZXIgU2VpdGUgYW5nZWdlYmVuIGhhdCwgZGFzcyBTaWUgSWhyIFBhc3N3b3J0IHZlcmxvcmVuIGhhYmVuLiBGYWxscyBkaWVzIHp1dHJpZmZ0LCBsZXNlbiBTaWUgYml0dGUgZGllIHdlaXRlcmVuIEFud2Vpc3VuZ2VuLiAgV2VubiBTaWUga2VpbmUgQWhudW5nIGhhYmVuLCB1bSB3YXMgZXMgZ2VodCwgZGFubiBsJm91bWw7c2NoZW4gU2llIHNpY2hlcmhlaXRzaGFsYmVyIGRpZXNlIE5hY2hyaWNodC4gV2lyIGJlZGFua2VuIHVucywgZGFzcyBTaWUgc2ljaCBkaWUgWmVpdCBnZW5vbW1lbiBoYWJlbi4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlICc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdEZXIgZm9sZ2VuZGUgQ29kZSB3dXJkZSB6dWYmYXVtbDtsbGlnIGdlbmVyaWVydCwgdW0gZGFzIEJlbnV0emVyLUtvbnRvIHp1ICZ1dW1sO2JlcnByJnV1bWw7ZmVuLiBXZW5uIFNpZSBhdWYgZGVuIGZvbGdlbmRlbiBMaW5rIGtsaWNrZW4sIGdlbGFuZ2VuIFNpZSBhdWYgZWluZSBTZWl0ZSwgd28gU2llIGRpZXNlbiBDb2RlIGVpbmdlYmVuIG0mdXVtbDtzc2VuLiBOb3JtYWxlcndlaXNlIGVudGgmYXVtbDtsdCBkYXMgRmVsZCBiZXJlaXRzIElocmVuIENvZGUuIEZhbGxzIGFiZXIgbmljaHQsIGxhdXRldCBkZXIgQ29kZTonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdFaW4gS2xpY2sgYXVmIGRlbiBmb2xnZW5kZW4gTGluayBicmluZ3QgU2llIGF1ZiBkaWUgV2Vic2VpdGUsIHdvIFNpZSBkZW4gdW50ZW5zdGVoZW5kZW4gQ29kZSBlaW5nZWJlbiB1bmQgZGFtaXQgSWhyIFBhc3N3b3J0IHp1ciZ1dW1sO2Nrc2V0emVuIGsmb3VtbDtubmVuOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGFzc3dvcnQgdmVybG9yZW4nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdEYXMgQ01TTWFpbGVyLU1vZHVsIHd1cmRlIG5pY2h0IGdlZnVuZGVuLic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdFaW5lIEVtYWlsIG1pdCBJbmZvcm1hdGlvbmVuIHp1bSBadXImdXVtbDtja3NldHplbiBkZXMgUGFzc3dvcnRzIHd1cmRlIGFuICVzIHZlcnNhbmR0LiBWaWVsZW4gRGFuayEnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTaWUgaGFiZW4gSWhyIFBhc3N3b3J0IHZlcmdlc3NlbiBvZGVyIHZlcmxvcmVuLiBHZWJlbiBTaWUgaGllciBJaHJlbiBCZW51dHplcm5hbWVuIGVpbi4gV2VubiB3aXIgU2llIGltIFN5c3RlbSBmaW5kZW4sIGVyaGFsdGVuIFNpZSBlaW5lIEVtYWlsIG1pdCB3ZWl0ZXJlbiBBbndlaXN1bmdlbiB6dW0gWnVyJnV1bWw7Y2tzZXR6ZW4gZGVzIFBhc3N3b3J0cy4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciB2ZXJnZXNzZW5lIFBhc3N3Jm91bWw7cnRlcic7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciB2ZXJnZXNzZW5lIEJlbnV0emVybmFtZW4nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnRWlnZW5zY2hhZnQgJXMgbmljaHQgZ2VmdW5kZW4nOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ0VpZ2Vuc2NoYWZ0ZW4gZ2VmdW5kZW4nOwokbGFuZ1snYWRkcHJvcCddID0gJ0VpZ2Vuc2NoYWZ0IGhpbnp1ZiZ1dW1sO2dlbic7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnRWluIGVyZm9yZGVybGljaGVzIEZlbGQgKCVzKSB3YXIgbGVlci4nOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdVbSBJaHIgUGFzc3dvcnQgenUgJmF1bWw7bmRlcm4sIGdlYmVuIFNpZSBiaXR0ZSBoaWVyIGVpbiBuZXVlcyBQYXNzd29ydCBlaW4uJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnRXMgc2NoZWludCBzbywgYWxzIG9iIFNpZSBuaWNodCBhbmdlbWVsZGV0IHNpbmQuJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmllcnVuZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0RpZXNlcyBLb250byBpc3QgYWJnZWxhdWZlbic7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVW5nZW5hdWUgRm9ybWF0aWVydW5nIGRlciBFbWFpbC1BZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnVW5nJnV1bWw7bHRpZ2VzIEFibGF1ZmRhdHVtJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdGZWhsZXIgYmVpbSBTZXR6ZW4gZGVyIEVpZ2Vuc2NoYWZ0ICVzIGYmdXVtbDtyIGRlbiBCZW51dHplciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ1VuZyZ1dW1sO2x0aWdlIEJlbnV0emVyLUlEICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnS2VubnplaWNobnVuZyBkZXMgdmVyYm9yZ2VuZW4gRmVsZGVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdGYXJiZSBkZXMgdmVyYm9yZ2VuZW4gRmVsZGVzJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1ZlcmJvcmdlbic7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRWluZSBFaWdlbnNjaGFmdCBtaXQgZGllc2VtIE5hbWVuIHd1cmRlIGJlcmVpdHMgZGVmaW5pZXJ0Lic7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdLZWluZSBFaWdlbnNjaGFmdGVuIGRlZmluaWVydCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0YmdXVtbDtyIGRpZXNlIEJlbnV0emVyZ3J1cHBlIHd1cmRlbiBrZWluZSBFaWdlbnNjaGFmdGVuIGF1c2dldyZhdW1sO2hsdC4nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdFcyB3dXJkZW4gbm9jaCBrZWluZSBHcnVwcGVuIGRlZmluaWVydC4nOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdCZW51dHplcmdydXBwZW4gZ2VmdW5kZW4nOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0RpZSBNaXRnbGllZHNjaGFmdCBpbiBtaW5kZXN0ZW5zIGVpbmVyIEdydXBwZSBpc3QgZXJmb3JkZXJsaWNoLic7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnRXJmb3JkZXJ0IGRpZSBNaXRnbGllZHNjaGFmdCBpbiBtaW5kZXN0ZW5zIGVpbmVyIEdydXBwZSc7CiRsYW5nWydiYWNrJ10gPSAnWnVyJnV1bWw7Y2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzdCBlaW4gUGZsaWNodGZlbGQuJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdQZmxpY2h0ZmVsZGVyIGtlbm56ZWljaG5lbiBtaXQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnUGZsaWNodGZlbGRlciBlaW5mJmF1bWw7cmJlbiBtaXQnOwokbGFuZ1snbmV4dCddID0gJ1dlaXRlcic7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0VpbmUgR3J1cHBlIG1pdCBkaWVzZW0gTmFtZW4gZXhpc3RpZXJ0IGJlcmVpdHMuJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUGZsaWNodGZlbGQnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdvcHRpb25hbCc7CiRsYW5nWydvZmYnXSA9ICdBdXMnOwokbGFuZ1snc2l6ZSddID0gJ0dyJm91bWw7JnN6bGlnO2UnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhpbWFsZSBHciZvdW1sOyZzemxpZztlIGlyZ2VuZCBlaW5lciBCaWxkZGltZW5zaW9uIGluIFBpeGVsKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMJmF1bWw7bmdlJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KFplaWNoZW4gaW4gZGVyIFRleHRlaW5nYWJlKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTGlzdGVuZmVsZC1PcHRpb25lbiwgZ2V0cmVubnQgZHVyY2ggWmVpbGVudW1iciZ1dW1sO2NoZS4gRGllIFdlcnRlIGsmb3VtbDtubmVuIG1pdCBhID0gWmVpY2hlbiB2b20gVGV4dCBnZXRyZW5udCB3ZXJkZW4sIHouQnNwLjogV2VpYmxpY2g9dyc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdCZXNjaHJpZnR1bmcgZGVzIE9wdGlvbnNmZWxkZXMsIGdldHJlbm50IGR1cmNoIFplaWxlbnVtYnImdXVtbDtjaGUuIERpZSBXZXJ0ZSBrJm91bWw7bm5lbiBtaXQgYSA9IFplaWNoZW4gdm9tIFRleHQgZ2V0cmVubnQgd2VyZGVuLCB6LkJzcC46IFdlaWJsaWNoPXcnOwokbGFuZ1sncHJvbXB0J10gPSAnRWluZ2FiZWF1ZmZvcmRlcnVuZyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cCc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRmVsZHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdGcmFnZSBiZWkgdmVyZ2Vzc2VuZW08YnIvPkJlbnV0emVybmFtZW4nOwokbGFuZ1sndGV4dCddID0gJ1RleHQgJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnS29udHJvbGxrJmF1bWw7c3RjaGVuJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTWVocmZhY2hsaXN0ZW5hdXN3YWhsJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ09wdGlvbnNmZWxkZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwtQWRyZXNzZSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRmZWxkJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTGlzdGVuZmVsZCc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dpbGxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnQWJtZWxkZW4nOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ0RpZXNlbiBHcnVwcGVubmFtZW4gdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ01laW5lIEVpbnN0ZWxsdW5nZW4gJmF1bWw7bmRlcm4nOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdJaHJlIEFubWVsZHVuZyBpc3QgZ2VzY2hlaXRlcnQgLSB1bmcmdXVtbDtsdGlnZXIgQmVudXR6ZXJuYW1lIG9kZXIgdW5nJnV1bWw7bHRpZ2VzIFBhc3N3b3J0Pyc7CiRsYW5nWydsb2dpbiddID0gJ0FubWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnQmVzY2hyaWZ0dW5nIGRlcyBBbm1lbGRlLUJ1dHRvbnMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsLUFkcmVzc2UnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcnQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdBbm1lbGR1bmcgYXVmIGRpZXNlbSBDb21wdXRlciBtZXJrZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyaWVyZW4nOwokbGFuZ1snZm9yZ290cHcnXSA9ICdIYWJlbiBTaWUgSWhyIFBhc3N3b3J0IHZlcmdlc3Nlbj8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnSGFiZW4gU2llIElocmUgQmVudXR6ZXJkYXRlbiB2ZXJnZXNzZW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnU3RhbmRhcmQnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSAnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnS29ubnRlIGtlaW5lIEluZm9ybWF0aW9uZW4gZiZ1dW1sO3IgZGllc2VuIEJlbnV0emVyIGZpbmRlbic7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnRGllc2VyIEJlbnV0emVybmFtZSAoJXMpIHdpcmQgYmVyZWl0cyB2ZXJ3ZW5kZXQuJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdTb2xsIFNNVFAgdmVyd2VuZGV0IHdlcmRlbiwgdW0gRW1haWwtQWRyZXNzZW4gYXVmIGlocmUgRyZ1dW1sO2x0aWdrZWl0IHp1IHByJnV1bWw7ZmVuPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbWFsZSBMJmF1bWw7bmdlIGRlcyBQYXNzd29ydHMnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW1hbGUgTCZhdW1sO25nZSBkZXMgUGFzc3dvcnRzJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWxlIEwmYXVtbDtuZ2UgZGVzIEJlbnV0emVybmFtZW5zJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltYWxlIEwmYXVtbDtuZ2UgZGVzIEJlbnV0emVybmFtZW5zJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ0F1c3plaXQgZiZ1dW1sO3IgU2Vzc2lvbnMgKGluIFNla3VuZGVuKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnQ29va2llcyBmJnV1bWw7ciBkaWUgQW5tZWxkdW5nIHZlcndlbmRlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0VtYWlsLVJlZ2lzdHJpZXJ1bmcgZXJsYXViZW4nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkLUJlbnV0emVyZ3J1cHBlIGYmdXVtbDtyIG5ldWUgQmVudXR6ZXInOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmJnV1bWw7ciBFaW5zdGVsbHVuZ2VuICZhdW1sO25kZXJuJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdEaWUgUGFzc3cmb3VtbDtydGVyIHN0aW1tZW4gbmljaHQgJnV1bWw7YmVyZWluLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVbmcmdXVtbDtsdGlnZXIgQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VuZyZ1dW1sO2x0aWdlcyBQYXNzd29ydCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0JlbnV0emVyIGJlYXJiZWl0ZW4nOwokbGFuZ1sndmFsaWQnXSA9ICdHJnV1bWw7bHRpZyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMgJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0RpZXNlciBCZW51dHplciBpc3Qga2VpbiBNaXRnbGllZCBlaW5lciBCZW51dHplcmdydXBwZS4nOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ0tlaW5lIEVpZ2Vuc2NoYWZ0ZW4nOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdTaWUgaGFiZW4gdmVyc3VjaHQsIEVpZ2Vuc2NoYWZ0ZW4gZG9wcGVsdCB6dSBpbXBvcnRpZXJlbic7CiRsYW5nWyd2YWx1ZSddID0gJ1dlcnQnOwokbGFuZ1snZ3JvdXBzJ10gPSAnQmVudXR6ZXJncnVwcGVuJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdFaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTmFtZSBkZXIgRWlnZW5zY2hhZnQnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnV2VydCBkZXIgRWlnZW5zY2hhZnQnOwokbGFuZ1snYWRkJ10gPSAnSGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdHZXNjaGljaHRlJzsKJGxhbmdbJ2VkaXQnXSA9ICdCZWFyYmVpdGVuJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdBYmxhdWYnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnRGF0dW0gZmVzdGxlZ2VuJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgU3R1bmRlbic7CiRsYW5nWycyNGhycyddID0gJzI0IFN0dW5kZW4nOwokbGFuZ1snNDhocnMnXSA9ICc0OCBTdHVuZGVuJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBXb2NoZSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFdvY2hlbic7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1vbmF0JzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1vbmF0ZSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNb25hdGUnOwokbGFuZ1snMXllYXInXSA9ICcxIEphaHInOwokbGFuZ1snbmV2ZXInXSA9ICdOaWVtYWxzJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ0RhcyBNb2R1bCB3dXJkZSBpbnN0YWxsaWVydC48YnIvPlN0ZWxsZW4gU2llIHNpY2hlciwgZGFzcyBkaWUgQmVyZWNodGlndW5nICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyZxdW90OyBnZXNldHp0IHd1cmRlLiBadXMmYXVtbDt0emxpY2ggd2lyZCBkaWUgSW5zdGFsbGF0aW9uIGRlcyBDYXB0Y2hhLU1vZHVscyBlbXBmb2hsZW4uIE5hY2ggZGVzc2VuIEluc3RhbGxhdGlvbiB3aXJkIGJlaSBkZXIgQW5tZWxkdW5nIGVyZyZhdW1sO256ZW5kIHp1IEJlbnV0emVybmFtZW4gdW5kIFBhc3N3b3J0IGRlciBJbmhhbHQgZWluZXMgQ2FwdGNoYS1CaWxkZXMgYWJnZWZyYWd0LiBEaWVzIHNvbGwgaGVsZmVuLCBCcnV0ZS1mb3JjZS1BdHRhY2tlbiB6dSB2ZXJoaW5kZXJuLiA8c3Ryb25nPkhpbndlaXM6PC9zdHJvbmc+IERpZXNlIEZ1bmt0aW9uYWxpdCZhdW1sO3Qga2FubiBtaXQgZGVtIFBhcmFtZXRlciBub2NhcHRjaGEgZGVha3RpdmllcnQgd2VyZGVuLCBhdWNoIHdlbm4gZGFzIENhcHRjaGEtTW9kdWwgaW5zdGFsbGllcnQgaXN0Lic7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3J0JzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnTm9jaCBlaW5tYWwnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0VpbmUgQmVudXR6ZXJncnVwcGUgbWl0IGRpZXNlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnQmVudXR6ZXJncnVwcGUgYmVhcmJlaXRlbic7CiRsYW5nWydzdWJtaXQnXSA9ICdBYnNlbmRlbic7CiRsYW5nWydjYW5jZWwnXSA9ICdBYmJyZWNoZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnTCZvdW1sO3NjaGVuJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnU2luZCBkYXMgd2lya2xpY2ggZGllIHJpY2h0aWdlbiBFaW5zdGVsbHVuZ2VuIGYmdXVtbDtyIGRpZXNlIEJlbnV0emVyZ3J1cHBlP1xuRGFzIERlYWt0aXZpZXJlbiBlaW5lciBFaWdlbnNjaGFmdCBsJm91bWw7c2NodCBrZWluZSBFaW50ciZhdW1sO2dlIGluIGRlciBFaWdlbnNjaGFmdGVudGFiZWxsZSBmJnV1bWw7ciBkaWVzZSBCZW51dHplcmdydXBwZS9kaWVzZW4gQmVudXR6ZXIuIFNpZSBzaW5kIGxlZGlnbGljaCBuaWNodCBtZWhyIHZlcmYmdXVtbDtnYmFyLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnV29sbGVuIFNpZSBkaWVzZSBCZW51dHplcmdydXBwZSB3aXJrbGljaCBsJm91bWw7c2NoZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdXb2xsZW4gU2llIGRpZXNlIEVpZ2Vuc2NoYWZ0IHdpcmtsaWNoIGtvbXBsZXR0IGwmb3VtbDtzY2hlbj9cbkZhbGxzIGphLCB3aXJkIGF1Y2ggamVkZXIgQmVudXR6ZXJlaW50cmFnIGYmdXVtbDtyIGRpZXNlIEVpZ2Vuc2NoYWZ0IGdlbCZvdW1sO3NjaHQuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1VuenVyZWljaGVuZGUgUGFyYW1ldGVyJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUgJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZiZ1dW1sO2dlbiBlaW5lciBFaWdlbnNjaGFmdCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZiZ1dW1sO2dlbiBlaW5lciBHcnVwcGVuYmV6aWVodW5nJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYmVpbSBIaW56dWYmdXVtbDtnZW4gZWluZXIgR3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZiZ1dW1sO2dlbiBlaW5lcyBCZW51dHplcnMgenUgZWluZXIgR3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGJlaW0gTCZvdW1sO3NjaGVuIGVpbmVyIEVpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnS29ubnRlIGtlaW5lIEVtYWlsLUFkcmVzc2UgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdTaWUgaGFiZW4ga2VpbmUgU2NocmVpYmJlcmVjaHRpZ3VuZyBmJnV1bWw7ciBkYXMgWmllbHZlcnplaWNobmlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVW5nJnV1bWw7bHRpZ2UgUGFyYW1ldGVyJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS29ubnRlIGtlaW5lIEdydXBwZW4gZmluZGVuJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQW53ZW5kZW4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyICc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQmVudXR6ZXJuYW1lIChyZWd1bCZhdW1sO3JlciBBdXNkcnVjayknOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNjaHJlaWJ1bmcnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnTmFtZSBkZXIgQmVudXR6ZXJncnVwcGUgJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1p1Z3JpZmYgdmVyd2VpZ2VydCc7CiRsYW5nWydlcnJvciddID0gJ0ZlaGxlcic7CiRsYW5nWydhZGRncm91cCddID0gJ0VpbmUgQmVudXR6ZXJncnVwcGUgaGluenVmJnV1bWw7Z2VuJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnR3J1cHBlIGltcG9ydGllcmVuJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdFaW5lbiBCZW51dHplciBoaW56dWYmdXVtbDtnZW4nOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0JlbnV0emVyIGdlZnVuZGVuLCBkaWUgZGVuIEtyaXRlcmllbiBlbnRzcHJlY2hlbic7CiRsYW5nWydncm91cCddID0gJ0JlbnV0emVyZ3J1cHBlICc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ0JlbnV0emVyZ3J1cHBlIGF1c3cmYXVtbDtobGVuJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJpZXJ1bmdzLVRlbXBsYXRlJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0FibWVsZHVuZ3MtVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdBbm1lbGR1bmdzLVRlbXBsYXRlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWyd1c2VycyddID0gJ0JlbnV0emVyJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kVXNlci1WZXJ3YWx0dW5nJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRXJsYXVidCBkZW4gQmVudXR6ZXJuLCBzaWNoIGF1ZiBJaHJlciBXZWJzZWl0ZSBhbnp1bWVsZGVuJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdTdGFuZGFyZC1TdGFydHNlaXRlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMZXR6dGUgU2VpdGUsIGF1ZiBkaWUgenVnZWdyaWZmZW4gd3VyZGUnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5kZXJlIFNlaXRlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0dlYmVuIFNpZSBkZW4gVGV4dCBhdXMgZGVtIEJpbGQgZWluJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2FzIG1hY2h0IGRpZXNlcyBNb2R1bD88L2gzPg0KPHA+RGllc2VzIE1vZHVsIGVybGF1YnQgZGllIFZlcndhbHR1bmcgdW5kIEFkbWluaXN0cmF0aW9uIHZvbiBGcm9udEVuZC1CZW51dHplcm4gPGk+KD1CZW51dHplciwgZGllIGtlaW5lbiBadWdyaWZmIGF1ZiBkaWUgQWRtaW5pc3RyYXRpb24gaGFiZW4pPC9pPi4gRXMgZXJtJm91bWw7Z2xpY2h0IHp1bSBlaW5lbiBkYXMgRXJzdGVsbGVuIHZvbiBCZW51dHplcmdydXBwZW4gdW5kIEJlbnV0emVya29udGVuIHVuZCB6dW0gYW5kZXJlbiBkYXMgQW4tIHVuZCBBYm1lbGRlbiB2b24gQmVudXR6ZXJuLiBJbiBWZXJiaW5kdW5nIG1pdCBkZW0gQ3VzdG9tQ29udGVudC1Nb2R1bCBrJm91bWw7bm5lbiB1bnRlcnNjaGllZGxpY2hlbiBCZW51dHplcm4gdW50ZXJzY2hpZWRsaWNoZSBJbmhhbHRlIGFuZ2V6ZWlndCB3ZXJkZW4sIGpld2VpbHMgaW4gQWJoJmF1bWw7bmdpZ2tlaXQgZGF2b24sIG9iIGRlciBCZW51dHplciBhbmdlbWVsZGV0IGlzdCBvZGVyIG5pY2h0LjwvcD4NCjxoMz5GZWF0dXJlczwvaDM+DQo8dWw+DQo8bGk+PHA+QWJsYXVmIGRlciBCZW51dHplcmtvbnRlbi4gSGllcm1pdCBrJm91bWw7bm5lbiBTaWUgZiZ1dW1sO3IgZWluZSBiZXN0aW1tdGUgWmVpdGRhdWVyIGVpbmVuIEJlbnV0emVyIGVyc3RlbGxlbi48L3A+PC9saT4NCjxsaT48cD5CZW51dHplcmdydXBwZW4tRWlnZW5zY2hhZnRlbi4gU2llIGsmb3VtbDtubmVuIHZvbiBkZW4gTWl0Z2xpZWRlcm4gdW50ZXJzY2hpZWRsaWNoZSBHcnVwcGVuIHVuZCB1bnRlcnNjaGllZGxpY2hlIEluZm9ybWF0aW9uZW4gYWJmcmFnZW4uPC9wPjwvbGk+DQo8bGk+PHA+RXMgaXN0IGRpZSBWZXJ3YWx0dW5nIHZvbiBIdW5kZXJ0ZW4gQmVudXR6ZXJuIG0mb3VtbDtnbGljaC48L3A+PC9saT4NCjxsaT48cD5GdW5rdGlvbmFsaXQmYXVtbDt0IGYmdXVtbDtyIHZlcmdlc3NlbmUgQmVudXR6ZXJuYW1lbiB1bmQgUGFzc3cmb3VtbDtydGVyLiBCZW51dHplciBrJm91bWw7bm5lbiBlaW4gbmV1ZXMgUGFzc3dvcnQgZmVzdGxlZ2VuLCB1bmQvb2RlciBpaHIgQmVudXR6ZXJrb250byB3aWVkZXJoZXJzdGVsbGVuLCBmYWxscyBzaWUgZGllIEFubWVsZGVkYXRlbiBrb21wbGV0dCB2ZXJnZXNzZW4gaGFiZW4uPC9wPjwvbGk+DQo8bGk+PHA+aGF0IGVpbmUgdW1mYW5ncmVpY2hlIEFQSSBmJnV1bWw7ciBkYXMgSGluenVmJnV1bWw7Z2VuIHZvbiBGdW5rdGlvbmVuPC9wPjwvbGk+DQo8L3VsPg0KPGgzPldpZSB3aXJkIGVzIGVpbmdlc2V0enQgPzwvaDM+DQo8dWw+DQo8bGk+PHA+TmFjaCBkZXIgSW5zdGFsbGF0aW9uIGsmb3VtbDtubmVuIFNpZSB1bnRlciBkZW0gTWVuJnV1bWw7ICZxdW90O0JlbnV0emVydmVyd2FsdHVuZyZxdW90OyBhdWYgZGllIEFkbWluaXN0cmF0aW9uIGRlcyBGcm9udEVuZFVzZXJzLU1vZHVscyB6dWdyZWlmZW4uPC9wPjwvbGk+DQo8bGk+DQo8cD5adW4mYXVtbDtjaHN0IG0mdXVtbDtzc2VuIFNpZSBFaWdlbnNjaGFmdGVuIGYmdXVtbDtyIGRpZSBCZW51dHplciBkZWZpbmllcmVuIChtaW5kZXN0ZW5zIGVpbmUhKS4gRWlnZW5zY2hhZnRlbiBzaW5kIEZlbGRkZWZpbml0aW9uZW4sIG1pdCBkZW5lbiBTaWUgZGVuIFR5cCBkZXIgenUgZXJmYXNzZW5kZW4gSW5mb3JtYXRpb25lbiB1bmQgZGVyZW4gQmVzY2hyJmF1bWw7bmt1bmdlbiBmZXN0bGVnZW4gayZvdW1sO25uZW4gd2llIHp1bSBCZWlzcGllbDogTmFtZSwgQWx0ZXIsIFN0YWR0LCBCdW5kZXNsYW5kLCBTdGFhdCwgRW1haWxhZHJlc3NlIHVzdy48L3A+DQo8cD48Yj5IaW53ZWlzOjwvYj4gRiZ1dW1sO3IgZGVuIEJlbnV0emVybmFtZW4gdW5kIGRhcyBQYXNzd29ydCBtJnV1bWw7c3NlbiBTaWUga2VpbmUgRWlnZW5zY2hhZnRlbiBmZXN0bGVnZW47IGRpZXMgd2lyZCBiZXJlaXRzIHZvbSBNb2R1bCBlcmxlZGlndC48L2I+DQo8L2xpPg0KPGxpPjxwPkFscyBOJmF1bWw7Y2hzdGVzIHNvbGx0ZW4gU2llIGVpbmUgb2RlciBtZWhyZXJlIEJlbnV0emVyZ3J1cHBlbiBlcnN0ZWxsZW4uIFdlbm4gU2llIGVpbmUgR3J1cHBlIGVyc3RlbGxlbiwgd2VyZGVuIFNpZSBuYWNoIGRlbSBCZW51dHplcmdydXBwZW5uYW1lbiwgZWluZXIgQmVzY2hyZWlidW5nIHNvd2llIGRlbiBkZXIgQmVudXR6ZXJncnVwcGUgenV6dW9yZG5lbmRlbiBFaWdlbnNjaGFmdGVuIHVuZCBkZXNzZW4gU29ydGllcnVuZyBnZWZyYWd0LiBPcHRpb25hbCBzaW5kIGF1Y2ggUGZsaWNodC0gb2RlciB2ZXJib3JnZW5lIEZlbGRlciBtJm91bWw7Z2xpY2ggPGk+KGF1Y2ggb2ZmIGlzdCBnJnV1bWw7bHRpZyk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+SGlud2Vpczo8L2I+IEJldm9yIFNpZSB3ZWl0ZXIgbWFjaGVuLCBzb2xsdGVuIFNpZSBwciZ1dW1sO2Zlbiwgb2IgZGllIEVpbnN0ZWxsdW5nZW4ga29ycmVrdCBnZXNldHp0IHNpbmQuPC9wPjwvbGk+DQo8bGk+PHA+QW5zY2hsaWUmc3psaWc7ZW5kIHNvbGx0ZW4gU2llIGVpbiBwYWFyIEJlbnV0emVyIGVyc3RlbGxlbi4gQmVudXR6ZXIgd2VyZGVuIGluIHp3ZWkgU2Nocml0dGVuIGhpbnp1Z2VmJnV1bWw7Z3QuIFdlbm4gU2llIGVpbmVuIEJlbnV0emVyIGVyc3RlbGxlbiwgd2VyZGVuIFNpZSBuYWNoIGRlbSBCZW51dHplcm5hbWVuIHVuZCBkZW0gUGFzc3dvcnQgc293aWUgbmFjaCBlaW5lbSBBYmxhdWZkYXR1bSBmJnV1bWw7ciBkaWVzZW4gQmVudXR6ZXIgZ2VmcmFndC4gRGFubiBtJnV1bWw7c3NlbiBTaWUgbm9jaCBkaWUgR3J1cHBlbiBhdXN3JmF1bWw7aGxlbiwgaW4gd2VsY2hlbiBkZXIgQmVudXR6ZXIgTWl0Z2xpZWQgc2VpbiBzb2xsLiBLbGlja2VuIFNpZSBkYW5uIGF1ZiAmcXVvdDtXZWl0ZXImcXVvdDs8L3A+DQo8cD48ZW0+SGlud2VpczogPC9lbT5EYXMgaXN0IGVpbiBzZWhyIGFyYmVpdHNpbnRlbnNpdmVyIHVuZCBsYW5nd2VpbGlnZXIgUHJvemVzcy4gRXMgaXN0IGRhaGVyIGVpbmZhY2hlciwgd2VubiBTaWUgc2ljaCBkaWUgQmVudXR6ZXIgc2VsYnN0IHJlZ2lzdHJpZXJlbiBsYXNzZW4gKHp1bSBCZWlzcGllbCBtaXQgZGVtIFNlbGZSZWdpc3RyYXRpb24tTW9kdWwpLiBTaWUgbSZ1dW1sO3NzZW4gZGllIEJlbnV0emVyIGRhbm4gbnVyIG5vY2ggZWluZXIgb2RlciBtZWhyZXJlbiBCZW51dHplcmdydXBwZW4genVvcmRuZW4uIEFiZXIgZXJzdGVsbGVuIFNpZSBiaXR0ZSBmJnV1bWw7ciBUZXN0endlY2tlIG1pbmRlc3RlbnMgZWluZW4gQmVudXR6ZXIuPC9wPjwvbGk+DQo8bGk+PHA+TmFjaGRlbSBkYXMgU3lzdGVtIGFsbGUgZiZ1dW1sO3IgZGllc2VuIEJlbnV0emVyIG5vdHdlbmRpZ2VuIEZlbGRlciBiZXN0aW1tdCBoYXQsIHdpcmQgSWhuZW4gZWluIEZvcm11bGFyIG1pdCBkZW4gZXJmb3JkZXJsaWNoZW4gSW5mb3JtYXRpb25lbiAmdXVtbDtiZXIgZGVuIEJlbnV0emVyIGFuZ2V6ZWlndC4gTWl0IGRlciBLb21wbGV0dGllcnVuZyBkaWVzZXMgRm9ybXVsYXJzIHdpcmQgZGFzIEhpbnp1ZiZ1dW1sO2dlbiBlaW5lcyBCZW51dHplcnMgYWJnZXNjaGxvc3Nlbi4gPC9wPg0KPHA+PGVtPkhpbndlaXM6IDwvZW0+RnJvbnRlbmRVc2VycyBpc3Qgc3RhbmRhcmRtJmF1bWw7JnN6bGlnO2lnIHNvIGVpbmdlc3RlbGx0LCBkYXNzIGRpZSBFbWFpbC1BZHJlc3NlIGRlciBCZW51dHplcm5hbWUgaXN0LiBXZW5uIFNpZSBkYXMgbmljaHQgbSZvdW1sO2NodGVuLCBzb2xsdGVuIFNpZSBkaWVzIGluIGRlbiBFaW5zdGVsbHVuZ2VuICZhdW1sO25kZXJuLjwvcD48L2xpPg0KPGxpPjxwPkpldHp0IGsmb3VtbDtubmVuIFNpZSBkYXMgRnJvbnRFbmRVc2Vycy1Nb2R1bCBhdWYgSWhyZXIgU2VpdGUgbnV0emVuLiBIaWVyenUgbSZ1dW1sO3NzZW4gU2llIGVpbmZhY2ggbnVyIHtjbXNfbW9kdWxlIG1vZHVsZT0mcXVvdDtGcm9udEVuZFVzZXJzJnF1b3Q7fSBpbiBJaHJlIFNlaXRlIG9kZXIgVGVtcGxhdGUgZWluZiZ1dW1sO2dlbi48L3A+PC9saT4NCjwvdWw+DQo8aDM+U21hcnR5LUZ1bmt0aW9uZW48L2gzPg0KPHA+JlV1bWw7YmVyIFNtYXJ0eSB1bmQgZGFzICRmZXVfc21hcnR5LU9iamVrdCBrYW5uIGF1ZiBkaWUgRGF0ZW5iYW5rIGRlcyBGcm9udEVuZFVzZXJzLU1vZHVsIHp1Z2VncmlmZmVuIHdlcmRlbi48L3A+DQo8aDQ+RnVua3Rpb25lbjo8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+RGllc2UgRnVua3Rpb24ga2FubiB2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBlaW4gQXJyYXkgbWl0IGFsbGVuIEJlbnV0emVybmFtZW4gdW5kIEJlbnV0emVyLUlEcyBlaW5lciB2b3JnZWdlYmVuZW4gR3J1cHBlIHp1IGVyaGFsdGVuLiBEYXMgRXJnZWJuaXMgd2lyZCBkZXIgaW0gUGFyYW1ldGVyICZxdW90O2Fzc2lnbiZxdW90OyB2b3JnZWdlYmVuZW4gU21hcnR5LVZhcmlhYmxlbiB6dWdld2llc2VuLjwvcD4NCjxwPkJlaXNwaWVsOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfHByaW50X3J9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5EaWVzZSBGdW5rdGlvbiBrYW5uIHZlcndlbmRldCB3ZXJkZW4sIHVtIGF1ZiBlaW5lIExpc3RlIGFsbGVyIEVpZ2Vuc2NoYWZ0ZW4gZWluZXMgYmVzdGltbXRlbiBCZW51dHplcnMgenV6dWdyZWlmZW4uIERhcyBFcmdlYm5pcyB3aXJkIGRlciBpbSBQYXJhbWV0ZXIgJnF1b3Q7YXNzaWduJnF1b3Q7IHZvcmdlZ2ViZW5lbiBTbWFydHktVmFyaWFibGVuIHp1Z2V3aWVzZW4uPC9wPg0KPHA+QmVpc3BpZWw6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoNSwmIzAzOTt1c2VycHJvcHMmIzAzOTspfTxici8+eyR1c2VycHJvcHN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZVssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4NCjxwPkRpZXNlIEZ1bmt0aW9uIGdpYnQgZGVuIHZvcmdlZ2ViZW5lbiBUZXh0IHp1ciZ1dW1sO2NrLCBkaWUgZGVyIGF1c2dldyZhdW1sO2hsdGVuIE9wdGlvbiBkZXIgTGlzdGVuZmVsZGF1c3dhaGwgZW50c3ByaWNodC48L2xpPg0KPHA+QmVpc3BpZWw6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF9kcm9wZG93bl90ZXh0KCYjMDM5O2FnZV9yYW5nZSYjMDM5Oywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfbXVsdGlzZWxlY3RfdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5EaWVzZSBGdW5rdGlvbiBnaWJ0IGVpbiBBcnJheSBtaXQgZGVuIFRleHRlbiB6dXImdXVtbDtjaywgZGllIGRlbiBtaXQgS29tbWF0YSBnZXRyZW5udGVuIExpc3RlIGRlciBPcHRpb25zd2VydGUgZW50c3ByaWNodC48L2xpPg0KPHA+QmVpc3BpZWw6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF9tdWx0aXNlbGVjdF90ZXh0KCYjMDM5O2Zhdm9yaXRlX2Zvb2RzJiMwMzk7LCRvbmVwcm9wdmFsdWUsJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTspfTxici8+eyRmYXZvcml0ZV9mb29kc3xAcHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkRpZXNlcyBNb2R1bCBiZWluaGFsdGV0IGtlaW5lbiBrb21tZXJ6aWVsbGVuIFN1cHBvcnQuIFNpZSBrJm91bWw7bm5lbiBqZWRvY2ggJnV1bWw7YmVyIGZvbGdlbmRlIE0mb3VtbDtnbGljaGtlaXRlbiBIaWxmZSB6dSBkZW0gTW9kdWwgZXJoYWx0ZW46PC9wPg0KPHVsPg0KPGxpPkYmdXVtbDtyIGRpZSBsZXR6dGUgVmVyc2lvbiBkaWVzZXMgTW9kdWxzLCBGQVFzLCBkZW0gVmVyc2FuZCBlaW5lcyBGZWhsZXJyZXBvcnRzIG9kZXIgZGVtIEthdWYga29tbWVyemllbGxlbiBTdXBwb3J0IGJlc3VjaGVuIHNpZSBiaXR0ZSBjYWxndXlzIEhvbWVwYWdlIHVudGVyIDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5FaW5lIHdlaXRlcmUgRGlza3Vzc2lvbiB6dSBkaWVzZW0gTW9kdWwgaXN0IGF1Y2ggaW4gZGVuIEZvcmVuIHZvbiA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZTwvYT4genUgZmluZGVuLjwvbGk+DQo8bGk+RGVyIEF1dG9yIGNhbGd1eTEwMDAsIGlzdCBoJmF1bWw7dWZpZyBpbSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4genUgZmluZGVuLjwvbGk+DQo8bGk+TGV0enRsaWNoIGVycmVpY2hlbiBzaWUgZGVuIEF1dG9yIGF1Y2ggJnV1bWw7YmVyIGVpbmUgZGlyZWt0ZSBFbWFpbC48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcjwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXVsYXJlOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIFplaWd0IGRhcyBBbm1lbGRlLUZvcm11bGFyIGFuPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gWmVpZ3QgZGFzIEFibWVsZGUtRm9ybXVsYXIgYW48L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIFplaWd0IGRhcyBGb3JtdWxhciB6dW0gJkF1bWw7bmRlcm4gZGVyIEVpbnN0ZWxsdW5nZW4gYW48L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIFplaWd0IGRhcyBGb3JtdWxhciBmJnV1bWw7ciB2ZXJnZXNzZW5lIFBhc3N3Jm91bWw7cnRlciBhbjwvbGk+DQo8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gWmVpZ3QgZGFzIEZvcm11bGFyIGYmdXVtbDtyIHZlcmdlc3NlbmUgQmVudXR6ZXJuYW1lbiBhbjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gWmVpZ3QgbmljaHRzIGFuLCBhYmVyIGRpZSBFaWdlbnNjaGFmdGVuIHVuZCBhbmRlcmUgU21hcnR5LVZhcmlhYmxlbiBkZXIgYWt0dWVsbCBhbmdlbWVsZGV0ZW4gQmVudXR6ZXIgd2VyZGVuIGV4cG9ydGllcnQuIElzdCBrZWluIEJlbnV0emVyIGFuZ2VtZWxkZXQsIHdlcmRlbiBhdWNoIGtlaW5lIFZhcmlhYmxlbiBleHBvcnRpZXJ0LjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5XaXJkIG1pdCBkZW4gRm9ybXVsYXJlbiB6dXIgQW4tIHVuZCBBYm1lbGRlLSBzb3dpZSB6dXIgJkF1bWw7bmRlcnVuZyB2b24gRWluc3RlbGx1bmdlbiB2ZXJ3ZW5kZXQuIERpZXNlciBQYXJhbWV0ZXIgZW50aCZhdW1sO2x0IGRpZSBJRCBvZGVyIGRlbiBBbGlhcyBlaW5lciBTZWl0ZSwgYXVmIGRpZSBkZXIgQmVudXR6ZXIgd2VpdGVyZ2VsZWl0ZXQgd2lyZCwgd2VubiBkYXMgRm9ybXVsYXIgZXJmb2xncmVpY2ggYXVzZ2VmJnV1bWw7bGx0IHd1cmRlLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSZxdW90O2dyb3VwMSwgZ3JvdXAyLCBncm91cDMmcXVvdDs8L2xpPg0KPHA+V2lyZCBtaXQgZGVtIEFubWVsZGUtRm9ybXVsYXIgdmVyd2VuZGV0LiBFcyBrJm91bWw7bm5lbiBzaWNoIG51ciBkaWUgQmVudXR6ZXIgYW5tZWxkZW4sIGRpZSBNaXRnbGllZGVyIGRlciBmZXN0Z2VsZWd0ZW4gR3J1cHBlKG4pIHNpbmQuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9zdHVuX2dyb3VwPSZxdW90O2dyb3VwJnF1b3Q7PC9saT4NCjxwPkJlaSBWZXJ3ZW5kdW5nIGluIFZlcmJpbmR1bmcgbWl0IGRlbSBGb3JtdWxhciBmJnV1bWw7ciB2ZXJnZXNzZW5lIEJlbnV0emVybmFtZW4ga2FubiBtaXQgZGllc2VtIFBhcmFtZXRlciBlaW5lIEdydXBwZSBmZXN0Z2VsZWd0IHdlcmRlbiwgZGVyIGRpZXNlIEJlbnV0emVyIHp1Z2VvcmRuZXQgd2VyZGVuIHNvbGxlbi48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9JnF1b3Q7MSZxdW90OzwvbGk+DQo8cD5XaXJkIG1pdCBkZW4gQW5tZWxkZS1Gb3JtdWxhcmVuIHZlcndlbmRldC4gRGFtaXQgd2VyZGVuIGRpZSBDYXB0Y2hhcyBpbiBkZW4gRm9ybXVsYXJlbiBkZWFrdGl2aWVydC4gV3VyZGUgZGFzIENhcHRjaGEtTW9kdWwgaW5zdGFsbGllcnQsIGlzdCBmJnV1bWw7ciBlaW5lIGVyZm9sZ3JlaWNoZSBBbm1lbGR1bmcgc3RhbmRhcmRtJmF1bWw7JnN6bGlnO2lnIGRpZSBFaW5nYWJlIGRlcyBJbmhhbHRlcyBlaW5lcyBDYXB0Y2hhLUJpbGRlcyBlcmZvcmRlcmxpY2guIERpZXMgaXN0IGVpbmUgU2ljaGVyaGVpdHNtYSZzemxpZztuYWhtZSwgdW0gQnJ1dGUtZm9yY2UtQXR0YWNrZW4gdm9yenViZXVnZW4uPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+RGVyIGVpbnppZyBtJm91bWw7Z2xpY2hlIFdlcnQgZiZ1dW1sO3IgZGllc2VuIFBhcmFtZXRlciBpc3QgJnF1b3Q7dmlld3VzZXImcXVvdDs8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1aWQ9bnVsbDwvbGk+DQo8cD5Jc3QgaW4gVmVyYmluZHVuZyBtaXQgZGVyIEFrdGlvbiB2aWV3dXNlciB6dSB2ZXJ3ZW5kZW4uIE1pdCBkaWVzZW0gUGFyYW1ldGVyIGthbm4gZmVzdGdlbGVndCB3ZXJkZW4sIHdlbGNoZXIgQmVudXR6ZXIgZGllIERldGFpbHMgYW5nZXplaWd0IGJla29tbXQuPC9wPg0KPC91bD4NCjxwPk5hY2ggZGVyIEdQTCB3aXJkIGRpZXNlIFNvZnR3YXJlIHNvIHZlciZvdW1sO2ZmZW50bGljaHQsIHdpZSBzaWUgaXN0LiBCaXR0ZSBsZXNlbiBTaWUgZGVuIExpemVuenRleHQgZiZ1dW1sO3IgZGVuIHZvbGxlbiBIYWZ0dW5nc2F1c3NjaGx1c3MuPC9wPg0KPGgzPkFuZm9yZGVydW5nZW48L2gzPg0KPHA+VW0gZGllIEZ1bmt0aW9uYWxpdCZhdW1sO3QgZiZ1dW1sO3IgZGllIHZlcmdlc3NlbmVuIFBhc3N3Jm91bWw7cnRlciBudXR6ZW4genUgayZvdW1sO25uZW4sIG11c3MgenV2b3IgZGFzIENNU01haWxlci1Nb2R1bCBpbnN0YWxsaWVydCB1bmQga29uZmlndXJpZXJ0IHdlcmRlbi48L3A+DQo8aDM+Q29weXJpZ2h0IHVuZCBMaXplbno8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbGwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20iPmNhbGd1eTEwMDBAaG90bWFpbC5jb208L2E+LiBBbGxlIFJlY2h0ZSB2b3JiZWhhbHRlbi48L3A+DQo8cD5EaWVzZXMgTW9kdWwgd3VyZGUgdW50ZXIgZGVyIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPiB2ZXImb3VtbDtmZmVudGxpY2h0LiBTaWUgbSZ1dW1sO3NzZW4gZGllc2VyIExpemVueiB6dXN0aW1tZW4sIGJldm9yIFNpZSBkYXMgTW9kdWwgdmVyd2VuZGVuLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uPC9wPg0KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkDQphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUNCmluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMNCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiANCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQpidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCk9yIHJlYWQgaXQgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5vbmxpbmU8L2E+PC9wPic7CiRsYW5nWydxY2EnXSA9ICdQMC03NTA5MTQ3OC0xMjY4NDIxODE0MDcyJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI4MTcyOTQ4MC4zNy4yMy51dG1jc3I9Y21zbWFkZXNpbXBsZS5kZXx1dG1jY249KHJlZmVycmFsKXx1dG1jbWQ9cmVmZXJyYWx8dXRtY2N0PS8nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43Mjg5ODk0NTIuMTI2ODU2NzQ3NS4xMjgxNzI5NDgwLjEyODE3MzIyNDIuMzgnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></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/OtM6xOiAnOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPjAuMC4xIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlPC9saT4NCjxsaT4wLjEuMCAtIE9jdG9iZXIsIDIwMDUgLSBJbml0aWFsIHJlbGVhc2U8L2xpPg0KPGxpPjAuMS4xIC0gT2N0b2JlciwgMjAwNSAtIEZpeGVkIGlzc3VlcyB3aXRoIHByb3BlcnRpZXM8L2xpPg0KPGxpPjAuMS4yIC0gT2N0b2JlciwgMjAwNSAtIEFkZGVkIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5PC9saT4NCjxsaT48cD4wLjEuMyAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSByZWRpcmVjdCBwYWdlIG9uIGxvZ2luLCBsb2dvdXQsIGZvcmdvdCBwYXNzd29yZCwgYW5kIGNoYW5nZSBzZXR0aW5ncywgYW5kIGFkZGVkIHRoZSByZXR1cm50byBhbmQgZm9ybSBwYXJhbWV0ZXJzIHRvIHRoZSB1c2VyIHNpZGUgb2YgdGhpbmdzLCBhbHNvIGRpZCBhIGNvdXBsZSBsZiBsaXR0bGUgY2xlYW51cHMuICBUaGlzIHZlcnNpb24gcmVxdWlyZXMgdjAuMTEgYW5kIGFib3ZlIGZvciBjZXJ0YWluLjwvcD48L2xpPg0KPGxpPjAuMS40IC0gTm92ZW1iZXIsIDIwMDUgLSBWZXJ5IG1pbm9yIGNoYW5nZSB3aXRoIHJlc3BlY3QgdG8gYSBmb3Jnb3R0ZW4gYW5kIG5vIGxvbmdlciBuZWVkZWQgZnVuY3Rpb24gY2FsbDwvbGk+DQo8bGk+PHA+MC4xLjUgLSBOb3ZlbWJlciwgMjAwNTwvcD4NCiAgICA8cD5Bbm90aGVyIHZlcnkgbWlub3IgY2hhbmdlLCBhZGRlZCBzb21lIHRleHQgdG8gdGhlIFBvc3RJbnN0YWxsIG1lc3NhZ2UuPC9wPjwvbGk+DQo8bGk+PHA+MC4xLjYgLSBKYW51YXJ5LCAyMDA2PHA+DQogICAgPHA+Q2hhbmdlcyB0byB0aGUgcGVybWlzc2lvbiBtb2RlbCwgYW5kIG1pbm9yIGJ1ZyBmaXhlcyB0byB0aGUgcHJlZmVyZW5jZXMuICBBbHNvIHNvbWUgcGhwNSBmaXhlcyBidXQgSSBhbSBzdXJlIHRoYXQgdGhlcmUgYXJlIG1vcmUgb3V0IHRoZXJlLjwvcD48L2xpPg0KPGxpPjxwPjAuMS43IC0gSmFudWFyeSwgMjAwNjxwPg0KICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBwcm9wZXJ0eSBhZGRpbmcgdG8gZml4IHByb2JsZW1zIHdpdGggc3BhY2VzIGluIHByb3BlcnR5IG5hbWVzICh3ZSBubyBsb25nZXIgbGV0IHRoYXQgaGFwcGVuKS48L3A+DQo8L2xpPg0KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4NCiAgICA8cD5BZGRlZCBmaWx0ZXJpbmcgYW5kIHJvdyBsaW1pdGluZyB0byB0aGUgYWRtaW4gcGFuZWwuIFRoaXMgd2lsbCBoYXZlIGJpZyBiZW5lZml0cyB0byB0aG9zZSB0aGF0IGFyZSB1c2luZyB0aGlzIG1vZHVsZSBmb3IgaGlnaCB0cmFmaWMsIGFuZCBoaWdoIHVzZXIgc2l0ZXMuPC9wPg0KICAgIDxwPkFkZGVkIHNvcnRpbmcgdG8gdGhlIGFkbWluIHBhbmVsPC9wPg0KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+DQogICAgPHA+Rml4ZWQgYSBzbWFsbCBwcm9ibGVtIHdpdGggdGhlIGRlZmF1bHQgZ3JvdXAgbm90IGJlaW5nIGNoZWNrZWQgd2hlbiBhZGRpbmcgYSB1c2VyPC9wPg0KICAgIDxwPlNhdmUgZmlsdGVyIHNldHRpbmdzIGluIHByZWZlcmVuY2VzLCBhbmQgdGhlIGFjdGl2ZSB0YWIgdG9vLjwvcD4NCiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4NCiAgICA8cD5BZGQgY29uZmlybWF0aW9uIG1lc3NhZ2UgaW4gZWRpdCBncm91cHMuPC9wPg0KICAgIDxwPkFkZGVkIGEgY291cGxlIG1vcmUgY29uZmlybWF0aW9uIG1lc3NhZ2VzLjwvcD4NCiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4NCiAgICA8cD5Ub2RvIC0gQWRkIHByZWZlcmVuY2VzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRsZW5ndGg8L3A+DQo8L2xpPg0KPGxpPjxwPjEuMC4xIC0gRmVicnVhcnksIDIwMDY8cD4NCiAgICA8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBjaGVjayBmb3IgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlczwvcD4NCiAgICA8cD5GaXggcHJvYmxlbSB3aGVyZSBleHBpcnkgZGF0ZSB3YXMgYmVpbmcgbW9kaWZpZWQgd2hlbiBhZG1pbiBtb2RpZmllZCB1c2VyIHNldHRpbmdzPC9wPg0KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPg0KICAgIDxwPkZpeGVkIGEgbWlub3IgYnVnIHdoZW4gY291dGluZyB0aGUgbnVtYmVyIG9mIHVzZXJzIGluIGEgZ3JvdXA8L3A+DQogICAgPHA+Rml4ZXMgdG8gdGhlIHNpemUgb2YgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcywgYW5kIG1heGxlbmd0aDwvcD4NCiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4NCjwvcD4NCjwvdWw+JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPg0KPGgzPkZlYXR1cmVzPC9oMz4NCjx1bD4NCjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+DQo8bGk+PHA+Q2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkhhcyBhbiBleHRlbnNpdmUgQVBJIGZvciBhZGRpbmcgZnVuY3Rpb25hbGl0eTwvcD48L2xpPg0KPC91bD4NCjxoMz5Ib3cgZG8gSSB1c2UgaXQ8L2gzPg0KPHVsPg0KPGxpPjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIGFjY2VzcyBhZG1pbiBwYW5lbCB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdW5kZXIgdGhlICJVc2VycyAmIGdHcm91cHMiIG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJ05leHRcJzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzLCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPg0KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4NCjxsaT48cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge2Ntc19tb2R1bGUgbW9kdWxlPUZyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGU8L3A+PC9saT4NCjwvdWw+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwncw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9JnF1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZxdW90Oz50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2h0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyZxdW90Oz5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0mcXVvdDtpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMmcXVvdDs+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSJuYW1lIjwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiPC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4sIGxvZ291dCwgYW5kIGNoYW5nZXNldHRpbmdzIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBjb250YWlucyB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8sIHdoZW4gdGhlIGZvcm0gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZDwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCDCqSAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSZxdW90O21haWx0bzpjYWxndXkxMDAwQGhvdG1haWwuY29tJnF1b3Q7PjxjYWxndXkxMDAwQGhvdG1haWwuY29tPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSZxdW90O2h0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCZxdW90Oz5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPic7Cj8+]]></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/XG5IYWNpZW5kb2xvIGFzJmlhY3V0ZTsgYm9ycmFyJmFhY3V0ZTsgY3VhbHF1aWVyIGVudHJhZGEgZGUgdXN1YXJpbyBwYXJhIGVzdGEgcHJvcGllZGFkLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyBpbnN1ZmljaWVudGVzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21icmUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcHJvcGllZGFkJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcmVsYWNpJm9hY3V0ZTtuIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyB1biB1c3VhcmlvIGEgdW4gZ3J1cG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIGVsaW1pbmFuZG8gdW5hIHByb3BpZWRhZCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05vIHNlIHB1ZG8gaGFsbGFyIHVuYSBkaXJlY2NpJm9hY3V0ZTtuIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyBoYXkgcGVybWlzbyBkZSBlc2NyaXR1cmEgZW4gZWwgZGlyZWN0b3JpbyBkZXN0aW5vJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyAgaW52YWxpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm8gc2UgcHVkbyBlbmNvbnRyYXIgbmluZyZ1YWN1dGU7biBncnVwbyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwbGljYXInOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJvJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdFeHByZXNpJm9hY3V0ZTtuIE5vcm1hbCBkZSBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXBjaSZvYWN1dGU7bic7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21icmUgZGVsIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzbyBEZW5lZ2Fkbyc7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yLic7CiRsYW5nWydhZGRncm91cCddID0gJ0EmbnRpbGRlO2FkaXIgR3J1cG8nOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBHcnVwbyc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQSZudGlsZGU7YWRpciBVc3VhcmlvJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc3VhcmlvcyBlbmNvbnRyYWRvcyBxdWUgY29pbmNpZGVuIGNvbiBlbCBjcml0ZXJpbyBkZSBiJnVhY3V0ZTtzcXVlZGEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwbyc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1NlbGVjY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1BsYW50aWxsYSBkZSBSZWdpc3RybyBkZSBVc3Vhcmlvcyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgZGUgU2FsaWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIEFjY2Vzbyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2lhcyc7CiRsYW5nWyd1c2VycyddID0gJ1VzdWFyaW9zJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0FkbWluaXN0cmFjaSZvYWN1dGU7biBkZSBVc3VhcmlvcyBkZWwgUG9ydGFsJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYSBsb3MgdXN1YXJpb3MgaW5ncmVzYXIgYWwgcG9ydGFsIGRlbCBzaXRpbyB3ZWInOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1AmYWFjdXRlO2dpbmEgcG9yIGRlZmVjdG8gZGUgaW5pY2lvJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdVbHRpbWEgcCZhYWN1dGU7Z2luYSBhY2NlZGlkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdHJhIHAmYWFjdXRlO2dpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdXpjYSBlbCB0ZXh0byBkZSBsYSBpbWFnZW4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJnF1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBzaG91bGQgZGVmaW5lIHByb3BlcnRpZXMuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIEVtYWlsIGFkZHJlc3MsIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdTwvYj4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3Ugc2hvdWxkIGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2V0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkIDxpPihvZmYgaXMgYWxzbyB2YWxpZCk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4NCjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCYjMDM5O05leHRcJiMwMzk7PC9wPg0KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPg0KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4NCjxsaT48cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge2Ntc19tb2R1bGUgbW9kdWxlPUZyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGU8L3A+PC9saT4NCjwvdWw+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyI+dGVjaGNvbS5keW5kbnMub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjx1bD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09JnF1b3Q7bmFtZSZxdW90OzwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0mcXVvdDsxJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuIGhpcyB3aWxsIGRpc25hYmxlIGNhcHRjaGEgb24gdGhlIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgZm9yIGxvZ2luLiAgVGhpcyBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgaW50ZW50ZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLjwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20iPjxjYWxndXkxMDAwQGhvdG1haWwuY29tPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+JzsKJGxhbmdbJ3FjYSddID0gJ1AwLTIwOTYwNTQzNzAtMTI1OTgwMzYxNTkzOSc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjIzODYwNjg1NC4xMjU5ODA0MzY4LjEyNjc2NzA4MzguMTI2NzY4NzA1OC42MCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNjc2NTI0NTkuNTYuMjgudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjdD0vaW5kZXgucGhwL3RvcGljLDE5OTI5LjAuaHRtbHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></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/XG5PbWFkdXNlIHYmYXVtbDtsamEgbCZ1dW1sO2xpdGFtaW5lIGVpIGt1c3R1dGEgJnV1bWw7aHRlZ2kgc2lzc2VrYW5uZXQgc2VsbGUgZ3J1cGkva2FzdXRhamEgb21hZHVzdGUgdGFiZWxpcy4gTmVpZCBlaSBzYWEgbGlodHNhbHQga2FzdXRhZGEuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdPbGVkIGtpbmRlbCwgZXQgc29vdmlkIHNlZGEgZ3J1cHBpIGt1c3R1dGFkYT8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ09sZWQga2luZGVsLCBldCBzb292aWQgc2VsbGUgb21hZHVzZSBsJm90aWxkZTtwbGlrdWx0IGt1c3R1dGFkYT9cblNlbGxlZ2Ega2Fhc25lYiBrJm90aWxkZTtpa2lkZSBrYXN1dGFqYXRlIHNlbGxlIG9tYWR1c2Uga3VzdHV0YW1pbmUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ViYXBpaXNhdmFkIHBhcmFtZWV0cmlkJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVlbSBvbWFkdXNlIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlZW0gZ3J1cGkgc2Vvc2UgbGlzYW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZWVtIGdydXBpIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZWVtIGthc3V0YWphIGdydXBwaSBsaXNhbWlzZWwnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZWVtIG9tYWR1c2Uga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRWkgbGVpZG51ZCBlLW1haWxpIGFhZHJlc3NpJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdQdXVkdXZhZCBraXJqdXRhbWlzZSAmb3RpbGRlO2lndXNlZCBzaWh0a2F0YWxvb2dpbGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1ZpZ2FzZWQgUGFyYW1lZXRyaWQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdFaSBsZWlkbnVkICZ1dW1sO2h0ZWdpIGdydXBwaSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1V1ZW5kYSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmVlcmknOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0thc3V0YWphbmltaSB2YWJhcyB2b3JtaXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cGkgTmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdMaWdpcCZhdW1sOyZhdW1sO3Mga2VlbGF0dWQnOwokbGFuZ1snZXJyb3InXSA9ICdWaWdhJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTGlzYSBHcnVwcCc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9yZGkgR3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0xpc2EgS2FzdXRhamEnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0FudHVkIGtyaXRlZXJpdW1pbGUgdmFzdGF2KGF0KSBrYXN1dGFqYSh0KSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVmFsaSBHcnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyZWVyaW1pc2UgTWFsbCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdWJmF1bWw7bGphbG9naW1pc2UgTWFsbCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ1Npc3NlbG9naW1pc2UgTWFsbCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0VlbGlzdHVzZWQnOwokbGFuZ1sndXNlcnMnXSA9ICdLYXN1dGFqYWQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ21lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdMdWJhIGthc3V0YWphdGVsIG9tYSBzYWlkaSBlZXNsaWl0ZWwgc2lzc2UgbG9naWRhJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdBbGduZSBlc2lsZWh0JzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdWaWltYXRpIHZhYWRhdHVkIGxlaHQnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnTXV1IGxlaHQ6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2lzZXN0YSB0ZWtzdCBwaWxkaWx0JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPg0KPGgzPkZlYXR1cmVzPC9oMz4NCjx1bD4NCjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+DQo8bGk+PHA+Q2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkZvcmdvdCBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uLiBhbGxvd3MgdXNlcnMgdG8gc2V0IGEgbmV3IHBhc3N3b3JkLCBhbmQvb3IgdG8gcmVjb3ZlciB0aGVpciB1c2VybmFtZSBpZiB0aGV5IGNvbXBsZXRlbHkgZm9yZ290IGxvZ2luIGRldGFpbHMuPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJmFtcDtxdW90O1VzZXJzICZhbXA7IGdHcm91cHMmYW1wO3F1b3Q7IG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4NCjxwPlNvbWUgbGltaXRlZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBkYXRhYmFzZSBpcyBwb3NzaWJsZSB3aXRoIHNtYXJ0eSBhbmQgdGhlICRmZXVfc21hcnR5IG9iamVjdC48L3A+DQo8aDQ+RnVuY3Rpb25zOjwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJmFtcDtxdW90O2Fzc2lnbiZhbXA7cXVvdDsgcGFyYW1ldGVyLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcyg1LCYjMDM5O3VzZXJwcm9wcyYjMDM5Oyl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWVbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIHRoZSB0ZXh0IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG9wdGlvbiB2YWx1ZSBmb3IgYSBzcGVjaWZpZWQgZHJvcGRvd24gcHJvcGVydHkuPC9saT4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfZHJvcGRvd25fdGV4dCgmIzAzOTthZ2VfcmFuZ2UmIzAzOTssJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgc21hcnR5IGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2Ygb3B0aW9uIHRleHRzIGNvcnJlc3BvbmRpbmcgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb24gdmFsdWVzLjwvbGk+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTssJG9uZXByb3B2YWx1ZSwmIzAzOTtmYXZvcml0ZV9mb29kcyYjMDM5Oyl9PGJyLz57JGZhdm9yaXRlX2Zvb2RzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPC91bD4NCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9jYWxndXkxMDAwLmNvbSI+Y2FsZ3V5MTAwMC5jb208L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICZxdW90O3ZpZXd1c2VyJnF1b3Q7PC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZhbXA7Y29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZhbXA7bHQ7Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyZhbXA7Z3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMzIxNTU0NTI2NjczMjAxOTAwMC4xMjQxMDkxNzg3LjEyNjIxNzc1ODMuMTI2MjU5NjE1Ny4yMDknOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjU3ODczMzM3LjE4MC4zMi51dG1jY249KG9yZ2FuaWMpfHV0bWNzcj1nb29nbGV8dXRtY3RyPWhvdyB0byBzZWN1cmUgY21zbXN8dXRtY21kPW9yZ2FuaWMnOwokbGFuZ1sncWNhJ10gPSAnMTI0MDY4MzYxNS01ODQwOTk3My03OTkxNTMwMyc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI2MjU5NjE1Nyc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></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/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdvcnVwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0ludmFsaWQgUGFyYW1ldGVycyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwokbGFuZ1snY2hhbmdlbG9nJ10gPSAnPHVsPg0KPGxpPjAuMC4xIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgTlJQVCAoTm90IFJlYWR5IGZvciBQcmltZSBUaW1lKSByZWxlYXNlPC9saT4NCjxsaT4wLjEuMCAtIE9jdG9iZXIsIDIwMDUgLSBJbml0aWFsIHJlbGVhc2U8L2xpPg0KPGxpPjAuMS4xIC0gT2N0b2JlciwgMjAwNSAtIEZpeGVkIGlzc3VlcyB3aXRoIHByb3BlcnRpZXM8L2xpPg0KPGxpPjAuMS4yIC0gT2N0b2JlciwgMjAwNSAtIEFkZGVkIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5PC9saT4NCjxsaT48cD4wLjEuMyAtIE5vdmVtYmVyLCAyMDA1PC9wPg0KICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgYSByZWRpcmVjdCBwYWdlIG9uIGxvZ2luLCBsb2dvdXQsIGZvcmdvdCBwYXNzd29yZCwgYW5kIGNoYW5nZSBzZXR0aW5ncywgYW5kIGFkZGVkIHRoZSByZXR1cm50byBhbmQgZm9ybSBwYXJhbWV0ZXJzIHRvIHRoZSB1c2VyIHNpZGUgb2YgdGhpbmdzLCBhbHNvIGRpZCBhIGNvdXBsZSBsZiBsaXR0bGUgY2xlYW51cHMuICBUaGlzIHZlcnNpb24gcmVxdWlyZXMgdjAuMTEgYW5kIGFib3ZlIGZvciBjZXJ0YWluLjwvcD48L2xpPg0KPGxpPjAuMS40IC0gTm92ZW1iZXIsIDIwMDUgLSBWZXJ5IG1pbm9yIGNoYW5nZSB3aXRoIHJlc3BlY3QgdG8gYSBmb3Jnb3R0ZW4gYW5kIG5vIGxvbmdlciBuZWVkZWQgZnVuY3Rpb24gY2FsbDwvbGk+DQo8bGk+PHA+MC4xLjUgLSBOb3ZlbWJlciwgMjAwNTwvcD4NCiAgICA8cD5Bbm90aGVyIHZlcnkgbWlub3IgY2hhbmdlLCBhZGRlZCBzb21lIHRleHQgdG8gdGhlIFBvc3RJbnN0YWxsIG1lc3NhZ2UuPC9wPjwvbGk+DQo8bGk+PHA+MC4xLjYgLSBKYW51YXJ5LCAyMDA2PHA+DQogICAgPHA+Q2hhbmdlcyB0byB0aGUgcGVybWlzc2lvbiBtb2RlbCwgYW5kIG1pbm9yIGJ1ZyBmaXhlcyB0byB0aGUgcHJlZmVyZW5jZXMuICBBbHNvIHNvbWUgcGhwNSBmaXhlcyBidXQgSSBhbSBzdXJlIHRoYXQgdGhlcmUgYXJlIG1vcmUgb3V0IHRoZXJlLjwvcD48L2xpPg0KPGxpPjxwPjAuMS43IC0gSmFudWFyeSwgMjAwNjxwPg0KICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBwcm9wZXJ0eSBhZGRpbmcgdG8gZml4IHByb2JsZW1zIHdpdGggc3BhY2VzIGluIHByb3BlcnR5IG5hbWVzICh3ZSBubyBsb25nZXIgbGV0IHRoYXQgaGFwcGVuKS48L3A+DQo8L2xpPg0KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4NCiAgICA8cD5BZGRlZCBmaWx0ZXJpbmcgYW5kIHJvdyBsaW1pdGluZyB0byB0aGUgYWRtaW4gcGFuZWwuIFRoaXMgd2lsbCBoYXZlIGJpZyBiZW5lZml0cyB0byB0aG9zZSB0aGF0IGFyZSB1c2luZyB0aGlzIG1vZHVsZSBmb3IgaGlnaCB0cmFmaWMsIGFuZCBoaWdoIHVzZXIgc2l0ZXMuPC9wPg0KICAgIDxwPkFkZGVkIHNvcnRpbmcgdG8gdGhlIGFkbWluIHBhbmVsPC9wPg0KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+DQogICAgPHA+Rml4ZWQgYSBzbWFsbCBwcm9ibGVtIHdpdGggdGhlIGRlZmF1bHQgZ3JvdXAgbm90IGJlaW5nIGNoZWNrZWQgd2hlbiBhZGRpbmcgYSB1c2VyPC9wPg0KICAgIDxwPlNhdmUgZmlsdGVyIHNldHRpbmdzIGluIHByZWZlcmVuY2VzLCBhbmQgdGhlIGFjdGl2ZSB0YWIgdG9vLjwvcD4NCiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4NCiAgICA8cD5BZGQgY29uZmlybWF0aW9uIG1lc3NhZ2UgaW4gZWRpdCBncm91cHMuPC9wPg0KICAgIDxwPkFkZGVkIGEgY291cGxlIG1vcmUgY29uZmlybWF0aW9uIG1lc3NhZ2VzLjwvcD4NCiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4NCiAgICA8cD5Ub2RvIC0gQWRkIHByZWZlcmVuY2VzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRsZW5ndGg8L3A+DQo8L2xpPg0KPGxpPjxwPjEuMC4xIC0gTWFyY2gsIDIwMDY8cD4NCiAgICA8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBjaGVjayBmb3IgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlczwvcD4NCiAgICA8cD5GaXggcHJvYmxlbSB3aGVyZSBleHBpcnkgZGF0ZSB3YXMgYmVpbmcgbW9kaWZpZWQgd2hlbiBhZG1pbiBtb2RpZmllZCB1c2VyIHNldHRpbmdzPC9wPg0KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPg0KICAgIDxwPkZpeGVkIGEgbWlub3IgYnVnIHdoZW4gY291dGluZyB0aGUgbnVtYmVyIG9mIHVzZXJzIGluIGEgZ3JvdXA8L3A+DQogICAgPHA+Rml4ZXMgdG8gdGhlIHNpemUgb2YgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcywgYW5kIG1heGxlbmd0aDwvcD4NCiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4NCiAgICA8cD5DaGFuZ2VzIHRvIGxhYmVsaW5nIGluIGFkZCBvciBlZGl0IHVzZXI8L3A+DQogICAgPHA+Rml4ZXMgdG8gcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbiBpbmxpbmUgZm9ybXMsIHRoZSBwYXNzd29yZCBpcyBuZXZlciBzZW50IG9uIHRoZSBnZXQgbGluZTwvcD4NCiAgICA8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+PHA+MS4wLjIgLSBNYXJjaCwgMjAwNjxwPg0KICAgIDxwPk1vcmUgZmllbGQgbGVuZ3RoIGZpeGVzPC9wPg0KPC9saT4NCjxsaT48cD4xLjAuMyAtIE1hcmNoLCAyMDA2PHA+DQogICAgPHA+RXhwb3J0IHRvIHNtYXJ0eSBhbGwgb2YgdGhlIHVzZXIgcHJvcGVydGllcyB3aGVuIHRoZXkgYXJlIGxvZ2dlZCBpbjwvcD4NCjwvbGk+DQo8bGk+PHA+MS4wLjQgLSBNYXksIDIwMDY8cD4NCiAgICA8cD5GaXhlcyB0byB0aGUgZXhwb3J0IGNvZGU8L3A+DQogICAgPHA+Q29kZSBjbGVhbnVwIChhbHBoYWJldGl6ZSBmdW5jdGlvbnMpPC9wPg0KICAgIDxwPk1pbm9yIGZpeGVzIGFuZCBlbmhhbmNlbWVudHMgKHJlY29tbWVuZGVkIGJ5IG5pbHM3MykgZm9yIGRlYWxpbmcgd2l0aCB0aGUgY2hhbmdlIHBhc3N3b3JkIHN0dWZmLjwvcD4NCiAgICA8cD5SZW1vdmVkIHRoZSByZXF1aXJlbWVudCBmb3IgQ01TIDAuMTIsIGFuZCBwdXQgaXQgYmFjayB0byAwLjExLjI8L3A+DQogICAgPHA+QWRkZWQgdGhlIFwmIzAzOTtzaWxlbnRcJiMwMzk7IGZvcm08L3A+DQogICAgPHA+Q2xlYW5lZCB1cCBkYXRhYmFzZSBhY2Nlc3Mgc3R1ZmYgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMgKGhvcGVmdWxseSk8L3A+DQogICAgPHA+QWRkZWQgY29weXJpZ2h0IGluZm88L3A+DQogICAgPHA+QWRkZWQgbWFjcm9zIGZvciByZWRpcmVjdG8gdG8gYSB1c2VyIHNwZWNpZmljIHBhZ2Ugb24gbG9naW4gb3IgbG9nb3V0PC9wPg0KICAgIDxwPlR3ZWFrcyB0byB0aGUgYWRtaW4gcHJlZmVyZW5jZXMgdGFiPC9wPg0KPC9saT4NCjxsaT48cD4xLjAuNSAtIE1heSwgMjAwNjwvcD4NCiAgICA8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCBleHBpcnkgZGF0ZXM8L3A+DQogICAgPHA+U3RhcnQgc3BsaXR0aW5nIHRoZSBjb2RlIHVwIGludG8gc2V2ZXJhbCBmaWxlczwvcD4NCjxsaT48cD4xLjAuNiAtIE1heSwgMjAwNjwvcD4NCiAgICA8cD5GaXhlZCBhIHByb2JsZW0gd2l0aCBlZGl0aW5nIGRyb3Bkb3duczwvcD4NCjwvbGk+DQo8bGk+PHA+MS4xLjAgLSBNYXksIDIwMDY8L3A+DQogICAgPHA+RXZlbnRzPC9wPg0KICAgIDxwPk9wdGlvbmFsbHkgZGlzYWxsb3cgcmVwZWF0ZWQgbG9naW5zPC9wPg0KICAgIDxwPkV4cG9ydCB0aGUgdXNlciBpZCB0byBzbWFydHk8L3A+DQogICAgPHA+QWRkZWQgb3B0aW9uYWxseSBceyRncm91cFx9IGZvciB0aGUgcGFnZXMgdG8ganVtcCB0byBvbiBsb2dpbjwvcD4NCjwvbGk+DQo8bGk+PHA+MS4xLjEgLSBTZXB0LCAyMDA2PC9wPg0KICAgIDxwPkZpeGVkIGEgYnVnIHdoZW4gYSB1c2VyIHdhcyBlZGl0aW5nIGhpcyBzZXR0aW5ncyB3aXRoIFwmIzAzOTthbGxvdyBkdXBsaWNhdGUgZW1haWxzXCYjMDM5OyB3YXMgb2ZmPC9wPg0KICAgIDxwPkNoYW5nZWQgdGhlIGRyb3Bkb3duIHRhYmxlIHRvIDI1NSBjaGFyYWN0ZXJzPC9wPg0KICAgIDxwPk1pbm9yIGNsZWFudXBzPC9wPg0KPC9saT4NCjxsaT48cD4xLjEuMiAtIERlYywgMjAwNjwvcD4NCiAgICA8cD5GaXhlcyAoaG9wZWZ1bHkpIHRvIHRoZSBhZG9kYi9hZG9kYi1saXRlIERBVEVUSU1FIGlzc3VlPC9wPg0KICAgIDxwPkFkZCBjYXB0Y2hhIHN1cHBvcnQgdG8gdGhlIGxvZ2luIHNjcmVlbiAob3B0aW9uYWwpLCB0aGFua3MgZGl0dG1hbjwvcD4NCiAgICA8cD5GaXhlcyB0byBjYW5jZWwgaGFuZGxpbmcgb24gdGhlIGxvc3QgcGFzc3dvcmQgYW5kIGNoYW5nZSBzZXR0aW5ncyBzY3JlZW5zPC9wPg0KICAgIDxwPkZpeGVzIHRvIHVzZXIgZXhwaXJ5IChtb3JlIERCVGltZXN0YW1wIGlzc3VlcyksIHRoYW5rcyBhZ2FpbiBkaXR0bWFuPC9wPg0KICAgIDxwPk9wdGlvbiB0byBhbGxvdyBGRVVzZXJzIHRvIGhhdmUgaXRzIG93biBzZXQgb2YgcGVybWlzc2lvbnMgYXNzaWRlIGZyb20gdGhlIGFkbWluIHBlcm1pc3Npb25zLiAgVGhhbmtzIF9TakdfPC9wPg0KICAgIDxwPk9wdGlvbiB0byBhbGxvdyBkdXBsaWNhdGUgcGFzc3dvcmQgcmVtaW5kZXIgcmVxdWVzdHMgYW5kIHRvIHNwZWNpZnkgdGV4dCBvbiB0aGUgc2lnbmluIGJ1dHRvbi4gIFRoYW5rcyBfU2pHXzwvcD4NCiAgICA8cD5HZW5lcmFsIGNsZWFudXAgb2YgZnVuY3Rpb25zIHRoYXQgd2VyZSBub3QgYmVpbmcgdXNlZCBhbmQgbm90aWNlcy93YXJuaW5nczwvcD4NCiAgICA8cD5BZGRlZCB0aGUgb25seV9ncm91cHMgcGFyYW0gZm9yIGxvZ2luIGZvcm1zLiAgVGhhbmtzIHdpc2h5PC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBsZW5ndGggb2YgdGhlIGVtYWlsIGZpZWxkIGluIHRoZSBjaGFuZ2UgcGFzc3dvcmQgZm9ybTwvcD4NCiAgICA8cD5GaXhlcyB0byB0aGUgZW1haWwgdmFsaWRhdGlvbiBzdHVmZjwvcD4NCjwvbGk+DQogICAgPGxpPjxwPjEuMi4wIC0gQXByaWwsIDIwMDc8L3A+DQogICAgPHA+ZWxpamFobG9mZ3JlbiAtIEZpeGVzIHRvIGNhcHRjaGEgc3VwcG9ydCwgYW5kIHNvbWUgdGVtcGxhdGUgY2xlYW51cHMuPC9wPg0KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBtdWx0aSBzZWxlY3QgbGlzdHM8L3A+DQogICAgPHA+VGVtcGxhdGUgY2xlYW51cHMgKG1vcmUgb2YgZW0pPC9wPg0KICAgIDxwPkFkZCBzdXBwb3J0IGZvciB2YWx1ZT1rZXkgc3R1ZmYgaW4gdGhlIGRyb3Bkb3duIGFuZCBtdWx0aSBzZWxlY3QgbGlzdHMuPC9wPg0KICAgIDxwPmJldHRlciBjaGVja2luZyBvZiB0aGUgJnF1b3Q7YXQgbGVhc3Qgb25lIGdyb3VwIHJlcXVpcmVkJnF1b3Q7IHN0dWZmPC9wPg0KICAgIDxwPk91dHB1dCBtb3JlIHNtYXJ0eSB2YXJpYWJsZXMgb24gdGhlIHVzZXIgc2V0dGluZ3MgcGFnZSwgdG8gYWxsb3cgcGVvcGxlIHRvIG1vZGlmeSB0aGUgdGVtcGxhdGUgdG8gc29tZXRoaW5nIHRoYXQgaXMgbW9yZSBhY2Nlc3NpYmlsZTwvcD4NCiAgICA8cD5TcGxpdCBpbnRvIG1vcmUgZmlsZXMgZm9yIHBlcmZvcm1hbmNlPC9wPg0KICAgIDxwPllvdSBjYW4gbm93IG5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2VyczwvcD4NCiAgICA8cD5Ob3cgaGFuZGxlIHJlZ2V4IHByb2JsZW1zIGJldHRlciBpbiB0aGUgYWRtaW4gc2VjdGlvbiB1c2VycyB0YWI8L3A+DQogICAgPHA+RW1haWwgZmllbGRzLCB3aGVuIHNwZWNpZmllZCBhcyBvcHRpb25hbCwgbWFrZSBlbSBhY3R1YWxseSBvcHRpb25hbDwvcD4NCiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgaW1hZ2UgdXBsb2FkcywgdGhpcyBpcyBhIGJpZyBmZWF0dXJlLiAgSW1hZ2VzIGFyZSBzY2FsZWQgdG8gYSBtYXhpbXVtIHNpemUgaW4gb25lIGRpbWVuc2lvbiwgYW5kIHN0b3JlZCBhcyBmaWxlcyBpbiBhIGNvbmZpZ3VyYWJsZSBkaXJlY3RvcnkgdW5kZXIgdGhlIHVwbG9hZHNfcGF0aC48L3A+DQogICAgPHA+Q2FwdGNoYSBtb2RlIGlzIG5vdyBvbiBieSBkZWZhdWx0LCB1bmxlc3MgeW91IHVzZSB0aGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBpbiB0aGUgdGFnLjwvcD4NCiAgICA8cD5GaXhlcyB0byBDU1YgZXhwb3J0Li4uIGl0IHdhcyBhc3N1bWluZyB0aGUgZGJfcHJlZml4IGlzIGNtc188L3A+DQogICAgPHA+SW1wb3J0IFVzZXJzIGZyb20gQ1NWPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBpbnN0YWxsIGFuZCB1bmluc3RhbGwgbWV0aG9kcywgYW5kIG5vdyB0aGUgYWxsb3dfcmVwZWF0ZWRfbG9naW5zIHByZWZlcmVuY2Ugc2hvdWxkIHdvcms8L3A+DQogICAgPHA+QWRkcyBwcm9wZXIgdXNlciBoaXN0b3J5IHRyYWNraW5nLiAgTm93IHRyYWNrIGZhaWxlZCBsb2dpbnMsIGxvZ2lucywgZXhwaXJpZXMsIGFuZCBsb2dvdXRzLCBvbiBhIHBlciB1c2VyIGJhc2lzLjwvcD4NCiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgdXNlciBzZXR0aW5ncyBwYWdlLCBpZiB0aGUgdXNlciBzZXR0aW5ncyBmb3JtIGlzIG9uIGEgZGlmZmVyZW50IHBhZ2UuPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBjYW5jZWwgYnV0dG9uIG9mIHRoZSBmb3Jnb3QgcGFzc3dvcmQgcGFnZSwgaWYgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtIGlzIG9uIGEgZGlmZmVyZW50IHBhZ2UuPC9wPg0KICAgIDxwPk1pbm9yIGZpeGVzIHRvIGJlaGF2aW91ciBvYWYgdGhlIHByZWZlcmVuY2VzIHBhbmVscy48L3A+DQo8L2xpPg0KPGxpPg0KPHA+MS4yLjEgLSBKdW5lLCAyMDA3PC9wPg0KCTxwPkEgY29va2llIGlzIG5vdyB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgbG9naW4gc3RhdGUgYmV0d2VlbiBzZXNzaW9ucywgaG93ZXZlciB0aGUgY29va2llIGRvZXMgbm90IGxhc3QgYW55IGxvbmdlciB0aGFuIHRoZSB0aW1lb3V0IHNwZWNpZmllZCBpbiB0aGUgdXNlciBzZXR0aW5ncy48L3A+DQoJPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGFuIGFkbWluaXN0cmF0b3IgdG8gbG9nb3V0IHVzZXJzPC9wPg0KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGZpbHRlciBieSBsb2dnZWQgaW4gc3RhdHVzPC9wPg0KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciByZWFkLW9ubHkgcHJvcGVydGllcy48L3A+DQoJPHA+QWRkZWQgbW9yZSB2YXJpYWJsZXMgaW4gZWFjaCBvYmplY3QgaW4gdGhlIGNoYW5nZXNldHRpbmdzIGZvcm08L3A+DQo8L2xpPg0KPGxpPg0KCTxwPjEuMi4yIC0gSnVuZSwgMjAwNzwvcD4NCgk8cD50c3cgLSBBZGRlZCBldmVudCBPblVwZGF0ZVVzZXIgd2hpY2ggZ2V0cyBjYWxsZWQgd2hlbiB1c2VyIChvciBhZG1pbikgdXBkYXRlcyB1c2VyIGluZm88L3A+DQo8L2xpPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJnF1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBzaG91bGQgZGVmaW5lIHByb3BlcnRpZXMuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIEVtYWlsIGFkZHJlc3MsIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdTwvYj4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3Ugc2hvdWxkIGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2V0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkIDxpPihvZmYgaXMgYWxzbyB2YWxpZCk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4NCjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCYjMDM5O05leHRcJiMwMzk7PC9wPg0KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPg0KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4NCjxsaT48cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge2Ntc19tb2R1bGUgbW9kdWxlPUZyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGU8L3A+PC9saT4NCjwvdWw+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0mcXVvdDtodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnJnF1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9JnF1b3Q7aHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnJnF1b3Q7PkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSZxdW90O2lyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyZxdW90Oz5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjx1bD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09JnF1b3Q7bmFtZSZxdW90OzwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0mcXVvdDsxJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuIGhpcyB3aWxsIGRpc25hYmxlIGNhcHRjaGEgb24gdGhlIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgZm9yIGxvZ2luLiAgVGhpcyBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgaW50ZW50ZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLjwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwNSwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0mcXVvdDttYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSZxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0mcXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmcXVvdDs+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My43NzUzNzI2NjIuMTE4NzczMDU5My4xMTg3NzMwNTkzLjExODc3MzA1OTMuMSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTE4NzczMDU5My4xLjEudXRtY2NuPShkaXJlY3QpfHV0bWNzcj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRpbmcgVXNlcic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdQYWluYSB0JmF1bWw7c3QmYXVtbDssIGpvcyBldCBtdWlzdGEga2lyamF1dHVtaXN0aWV0b2phc2knOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ1BhaW5hIHQmYXVtbDtzdCZhdW1sOywgam9zIGV0IG11aXN0YSBzYWxhc2FuYWFzaSc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtrYWEga2lyamF1dHVha3Nlc2kgdWxvcyc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnUGFpbmEgdCZhdW1sO3N0JmF1bWw7IG11b2thdGFrc2VzaSBzYWxhc2FuYWFzaSB0YWkgbXVpdGEgdGlldG9qYXNpJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnTiZhdW1sO3l0JmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7IC1wb2hqYSc7CiRsYW5nWydldmVudCddID0gJ1RhcGFodHVtYSc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVLXRhcGFodHVtYWh1b21hdXR1cyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdJbG1vaXR1c3ZpZXN0aWVuIGtvaGRlb3NvaXRlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdJbG1vaXR1c3ZpZXN0aWVuIHBvaGphJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ0lsbW9pdHVzdmllc3RpZW4gYWloZSAoU3ViamVjdCknOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdTJmF1bWw7aGsmb3VtbDtwb3N0aS1pbG1vaXR1a3NldCc7CiRsYW5nWydPbkxvZ2luJ10gPSAnU2lzJmF1bWw7JmF1bWw7bmtpcmphdXR1ZXNzYSc7CiRsYW5nWydPbkxvZ291dCddID0gJ1Vsb3NraXJqYXV0dWVzc2EnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnSXN0dW5ub24gdmFuaGV0ZXNzYSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdLJmF1bWw7eXR0JmF1bWw7amkmYXVtbDsgbHVvZGVzc2EnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7IHBvaXN0ZXR0YWVzc2EnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGFzZXR1a3NpZW4gbXV1dHR1ZXNzYSc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnTHVvdGFlc3NhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7cnlobSZhdW1sOyc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnUG9pc3RldHRhZXNzYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3J5aG0mYXVtbDsnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICcmcXVvdDtLYWRvbm5lZXQga2lyamF1dHVtaXN0aWVkb3QmcXVvdDstdG9pbWlubmFsbGlzdXVzIG9uIG9ubmlzdHVuZWVzdGkgc3Vvcml0ZXR0dS4gTCZvdW1sO3lkZXR0aWluIHVuaWlra2kgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMsIGpva2EgdmFzdGFhIGFudGFtaWFzaSB0aWV0b2phLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZXNpIG9uJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1N1b3NpdHRlbGVtbWUga2lyamFhbWFhbiB0JmF1bWw7bSZhdW1sO24gdGllZG9uIHlsJm91bWw7cyB0dXJ2YWxsaXNlZW4sIG11dHRhIHNhYXRhdmlsbGEgb2xldmFhbiBzaWphaW50aWluLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzLCBqb25uZSBzaWlycnl0JmF1bWw7JmF1bWw7biBhc2V0dXN0ZW4gbXV1dG9rc2VuIGomYXVtbDtsa2Vlbic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMga29vZGluIHZhcm1lbm51a3NlbiBqJmF1bWw7bGtlZW4gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0thZG9ubnV0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIHBvaGphJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnS2Fkb25udXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgdmFybWVubnVzIHBvaGphJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnVmlyaGU6IEVuZW1tJmF1bWw7biBrdWluIHlrc2kgdGlsaSBsJm91bWw7eXR5aSBvbWluYWlzdXVrc2lsbGEnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnVmlyaGU6IEsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JmF1bWw7IGVpIGwmb3VtbDt5dHlueXQgbiZhdW1sO2lsbCZhdW1sOyBlaGRvaWxsYSc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnVmlyaGU6IFJ5aG0mYXVtbDsmYXVtbDsgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydyZWFkb25seSddID0gJ1ZhaW4gbHVrdSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2ppZW4gbXVva2thdXNsdW9ra2EnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnWWxsJmF1bWw7cGl0JmF1bWw7aiZhdW1sOyBraXJqYXNpIHVsb3MnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ04mYXVtbDt5dCZhdW1sOyB2YWluIGtpcmphdXR1bmVldCBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QnOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0tpcmphYSB0JmF1bWw7bSZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyB1bG9zJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBvbWluYWlzdXVkZXQnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gaGlzdG9yaWEnOwokbGFuZ1snZXhwb3J0J10gPSAnVmllJzsKJGxhbmdbJ2NsZWFyJ10gPSAnVHloamVubiZhdW1sOyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdWaWUgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtoaXN0b3JpYSBBU0NJSS1tdW9kb3NzYSBqb2thIG9uIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7bic7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1R5aGplbm4mYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtoaXN0b3JpYSBqb2thIG9uIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7bic7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdVbm9oZGl0a28gdHVubnVrc2VuIHRhaSBzYWxhc2FuYW4/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ1ZpZSByeWhtJmF1bWw7bSZhdW1sOyZhdW1sO3JpdHlrc2V0IFhNTC1tdW9kb3NzYSc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtoaXN0b3JpYW4gaGFsbGludGEnOwokbGFuZ1sneWVzJ10gPSAnS3lsbCZhdW1sOyc7CiRsYW5nWydubyddID0gJ0VpJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJy8nOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogRWkgcmFqb2l0dXN0YSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdUdW5uaW4gdmFuaGEnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnS3V1c2kgdHVudGlhIHZhbmhhJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0tha3NpdG9pc3RhIHR1bnRpYSB2YW5oYSc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1AmYXVtbDtpdiZhdW1sO24gdmFuaGEnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnVmlpa29uIHZhbmhhJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdLYWtzaSB2aWlra29hIHZhbmhhJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdLdXVrYXVkZW4gdmFuaGEnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ0tvbG1lIGt1dWthdXR0YSB2YW5oYSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ0t1dXNpIGt1dWthdXR0YSB2YW5oYSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdWdW9kZW4gdmFuaGEnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnUnlobWl0dGVseSBqYSBqJmF1bWw7cmplc3R5cyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnSGFrdWVodG9qYSB2YXN0YWF2YXQgbWVya2lubiZhdW1sO3QnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBsYXNrZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBub3VzZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdQJmF1bWw7aXYmYXVtbDttJmF1bWw7JmF1bWw7ciZhdW1sOyBsYXNrZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ1AmYXVtbDtpdiZhdW1sO20mYXVtbDsmYXVtbDtyJmF1bWw7IG5vdXNldmEnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnVGFwYWh0dW1hbiB0eXlwcGkgbGFza2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1RhcGFodHVtYW4gdHl5cHBpIG5vdXNldmEnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnSVAtb3NvaXRlIGxhc2tldmEnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdJUC1vc29pdGUgbm91c2V2YSc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnRWkgaGlzdG9yaWFhJzsKJGxhbmdbJ3Jlc2V0J10gPSAnTm9sbGFhJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1J5aG1pdHRlbGUgSVAtb3NvaXR0ZWVuIG11a2Fhbic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ1RhcGFodHVtYXR5eXBwaXN1b2RhdHVzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ04mYXVtbDt5dCZhdW1sOyB2YWluIHRhcGFodHVtYXQgam90a2Egb3ZhdDonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1NpdnVyYWpvaXR1cyc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2hpc3RvcmlhcmFwb3J0dGknOwokbGFuZ1sndW5rbm93biddID0gJ1R1bnRlbWF0b24nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQLU9zb2l0ZSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGFwYWh0dW1hbiB0eXlwcGknOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdQJmF1bWw7aXYmYXVtbDsnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1BhbGFhJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdUdW9udGkgb25uaXN0dWknOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnUml2aSZhdW1sOyBrJmF1bWw7c2l0ZWx0eSc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnVmlyaGVpdCZhdW1sOyBsJm91bWw7eXR5aSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnTWVya2ludCZhdW1sOyZhdW1sOyBsaXMmYXVtbDt0dHknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ1J5aG0mYXVtbDtsbGUgJXMgZWkgbCZvdW1sO3l0eW55dCBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnU01UUC1zZXJ2ZXJpaW4gZWkgc2FhdHUgeWh0ZXl0dCZhdW1sOyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdUaWVkb3N0b2EgKCVzKSBlaSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWaXJoZWVsbGluZW4gYXJ2byBrZW50JmF1bWw7c3MmYXVtbDsgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdLZW50JmF1bWw7c3MmYXVtbDsgJXMgbGlpYW4gcGl0ayZhdW1sOyBhcnZvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnVHVvbnRpdmlyaGUgKHJpdmkgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnRWkgdm9pdHUgbGFkYXRhIG9taW5haXN1dXN0aWV0b2phIChTaXMmYXVtbDtpbmVuIHZpcmhlKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdPbmdlbG1hIGFzZXRldHRhZXNzYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gdGlldG9qYSc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnVmFhZGl0dWxsZSBrZW50JmF1bWw7bGxlICVzIGVpIGwmb3VtbDt5dHlueXQgc2FyYWtldHRhJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnUnlobSZhdW1sO2xsZSBlaSBsJm91bWw7eWR5IG9taW5haXN1dWtzaWEnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1R1b250aXRpZWRvc3RvbiBtdW90byBvbiB2JmF1bWw7JmF1bWw7ciZhdW1sOyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnVGllZG9zdG9hIGVpIHZvaXR1IGF2YXRhJzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oND4NCjxwPlRoZSBpbnB1dCBmaWxlIG11c3QgYmUgaW4gQVNDSUkgZm9ybWF0IHVzaW5nIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMuICBFYWNoIGxpbmUgaW4gdGhpcyBpbnB1dCBmaWxlICh3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhlYWRlciBsaW5lLCBkaXNjdXNzZWQgYmVsb3cpIHJlcHJlc2VudHMgb25lIHVzZXIgcmVjb3JkLiAgRWFjaCBsaW5lIG11c3QgY29udGFpbiB0aGUgc2FtZSBudW1iZXIgb2YgZmllbGRzLCBhbmQgdGhlIG9yZGVyIG9mIHRoZSBmaWVsZHMgaW4gZWFjaCBsaW5lIG11c3QgYmUgaWRlbnRpY2FsLjwvcD4NCjxoNT5IZWFkZXIgbGluZTwvaDU+DQo8dWw+DQo8bGk+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgbXVzdCBiZWdpbiB3aXRoIHR3byBwb3VuZCAoXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD4NCjxoNT5Db2x1bW5hciBEYXRhPC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY24gYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPkRyb3Bkb3duIEZpZWxkcw0KICAgIDxwPlRoZSB2YWx1ZSBvZiBkcm9wZG93biBwcm9wZXJ0aWVzIGluIGFuIGltcG9ydCBmaWxlIGlzIHJlcHJlc2VudGVkIGFzIHRoZSBzdHJpbmcgdGhhdCBpcyBzaG93biBpbiB0aGUgZHJvcGRvd24gY29udHJvbCBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUuPC9wPg0KPC9saT4NCjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMNCiAgICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+DQo8L2xpPg0KPGxpPkltYWdlIEZpZWxkcw0KICAgIDxwPkltYWdlIGFyZSBmaWVsZHMgd2hvJiMwMzk7cyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgYSByZXF1aXJlZCBwYXJ0IG9mIHRoZSBkZXN0aW5hdGlvbiBncm91cCwgdGhlbiB0aGUgbmFtZSBzcGVjaWZpZWQgaW4gdGhlc2UgY29sdW1ucyBtdXN0IGV4aXN0IGluIHRoZSB1cGxvYWRzIGRpc3JlY3Rvcnkgb2YgdGhlIENNUyBpbnN0YWxsYXRpb24uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdUdW8gayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0IHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0NTVi10aWVkb3N0byc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ1hNTC10aWVkb3N0byc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdWaWUgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ1R1byBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVHloamVubiZhdW1sOyc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0t1dmFuIGtvaGRlcG9sa3UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdIYXZhaXR0aWluIG9uZ2VsbWEgcHV1dHR1dmFuIChqYSB2YWFkaXR1bikgdXBsb2FkaW4ga2Fuc3NhJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdYTUwtdGllZG9zdG9hIGVpIHZvaXR1IGx1a2VhJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdFaSB2b2lkYSB0dWhvdGEgcnlobSZhdW1sOyZhdW1sOyBqb3NzYSBvbiB2aWVsYSBrJmF1bWw7eXR0JmF1bWw7amkmYXVtbDsnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7IG9uIGpvIGtpcmphdXR1bmVlbmEnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnS3V2YXNzYSBvbGV2YSB0ZWtzdGkgZWkgb2xlIHN5Jm91bWw7dGV0dHkgb2lrZWluJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdTYWxsaSBrJmF1bWw7eXR0JmF1bWw7amllbiBraXJqYXV0dWEgdXNlYW1tYW4ga2VycmFuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdLdXZpZW4gdGllZG9zdG9wJmF1bWw7JmF1bWw7dHRlZXQgam9pdGEgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0IHNhYXZhdCBsYWRhdGEnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+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+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGtpcmphdXR1dSBqJmF1bWw7cmplc3RlbG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDsga2lyamF1dHV1IHVsb3MgaiZhdW1sO3JqZXN0ZWxtJmF1bWw7c3QmYXVtbDsnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGlzdHVudG8gdmFuaGVuZWUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gdXVzaSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBsdW9kYWFuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phIHAmYXVtbDtpdml0ZXQmYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWxpIHBvaXN0ZXRhYW4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIHJ5aG0mYXVtbDsgbHVvZGFhbic7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdTdW9yaXRldGFhbiBrdW4gcnlobSZhdW1sOyBwb2lzdGV0YWFuJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogU2V1cmFhdmlhIG1ha3JvamEgdm9pZGFhbiBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7OiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnQ1NWIGV4cG9ydCBlaSBwYWxhdXR0YW51dCB0dWxva3NpYSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51c2tlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdTYWxhc2FuYWtlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluaW1pLS9NYWtzaW1pLXBpdHV1ZGV0IHNhbGFzYW5hbGxlIG92YXQgdmlyaGVlbGxpc2V0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW5pbWktL01ha3NpbWktcGl0dXVkZXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZWxsZSBvdmF0IHZpcmhlZWxsaXNldCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnVmlyaGVlbGxpbmVuIGVtYWlsLW9zb2l0ZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1RpbGlsbGUgZWkgbCZvdW1sO3l0eW55dCBlbWFpbC1vc29pdGV0dGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIG9taW5haXN1dWtzaWEnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGxpcyZhdW1sO3R0eSAlcz0lcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBwb2lzdGV0dHUgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnT21pbmFpc3V1cyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnQXJ2byAocmVxdWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm9pdHVzOiBOJmF1bWw7bSZhdW1sOyBrZW50JmF1bWw7dCB2YWlrdXR0YXZhdCBzeSZvdW1sO3R0Jm91bWw7a2VudHRpZW4ga29rb29uLiBBcnZvamVuIHBpZW5lbnQmYXVtbDttaW5lbiBlaSBvbGUgc3Vvc2l0ZWx0YXZhYSBrJmF1bWw7eXR0Jm91bWw7c3MmYXVtbDsgb2xldmFsbGEgc2l2dXN0b2xsYSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnSGFsdWF0a28gdmFybWFzdGkgbXVva2F0YSBtb2R1bGluIGFzZXR1a3NpYSc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgb3NvaXRlIG9uIGpvIGsmYXVtbDt5dCZvdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsga2lyamF1dHVtaXN0aWV0b2plbiB0YWxsZW5udWtzZWVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnS2Vrc2luIG5pbWknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdTYWxsaSB0dXBsYS1lbWFpbGl0JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ1MmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRlIG9uIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7bmltaSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdZcml0JmF1bWw7IHBpdCZhdW1sOyZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7amllbiBraXJqYXV0dW1pbmVuIGFrdGlpdmlzZW5hIGtla3NpbGwmYXVtbDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnU2FsbGkgdXNlaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUgc2FtYSBlbWFpbC1vc29pdGUnOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSB1c2VhdCAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFzaSZxdW90OyB2aWVzdGl0Pyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSBrJmF1bWw7eXR0JmF1bWw7amllbiBweXl0JmF1bWw7JmF1bWw7IHNhbGFzYW5hIHV1ZGVzdGFhbiB2YWlra2EgZWRlbGxpc2VlbiBrdXRzdXVuIGVpIG9sZSB2aWVsJmF1bWw7IHJlYWdvaXR1JzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnSyZhdW1sO3l0JmF1bWw7IEZyb250LWVuZCBVc2VyIHNwZWNpZmljaSZhdW1sOyBvaWtldWtzaWEnOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0VpIHZvaXR1IGF2YXRhIGxhZGF0dHVhIHRpZWRvc3RvYSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0xhZGF0dXNzYSB0aWVkb3N0b3NzYSBvbiBoYXZhaXR0dSBvbmdlbG1hLCBvbGUgaHl2JmF1bWw7IGphIHlyaXQmYXVtbDsgdXVkZWxsZWVuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ0V0IHN5Jm91bWw7dHQmYXVtbDtueXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXN0YSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdFdCBzeSZvdW1sO3R0JmF1bWw7bnl0IHMmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRldHRhc2knOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnRXQgc3kmb3VtbDt0dCZhdW1sO255dCBzYWxhc2FuYWEnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0tpcmphdWR1IHVsb3MnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnS2lyamF1ZHUgc2lzJmF1bWw7JmF1bWw7bic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9XCZxdW90O3JlZFwmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVCZhdW1sO20mYXVtbDsgdG9pbWludG8gZWkgdG9pbWkgV2luZG93cy15bXAmYXVtbDtyaXN0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJyZBdW1sO0wmQXVtbDsgbHVvIG9taW5haXN1dXR0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbGxlIHRhaSBzYWxhc2FuYWxsZSwgbiZhdW1sO20mYXVtbDsga2VudCZhdW1sO3QgbHVvZGFhbiBhaW5hIGF1dG9tYWF0dGlzZXN0aS4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ1ZpZSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QgQ1NWLXRpZWRvc3Rvb24nOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnVmllJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ1R1byc7CiRsYW5nWydhZG1pbiddID0gJ0hhbGxpbm5vaSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ011b2trYWEgb21pbmFpc3V1dHRhJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3NpbWkgcGl0dXVzJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdMdW90dSc7CiRsYW5nWydzb3J0YnknXSA9ICdKJmF1bWw7cmplc3QmYXVtbDsnOwokbGFuZ1snc29ydCddID0gJ0omYXVtbDtyamVzdHlzJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCB2YWxpdHVzc2EgcnlobSZhdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ04mYXVtbDt5dCZhdW1sOyByaXZpJmF1bWw7Oic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSBlaSBsJm91bWw7eWRldHR5IGVtYWlsIGtlbnR0JmF1bWw7JmF1bWw7LiBPdGEgeWh0ZXR0JmF1bWw7IHdlYm1hc3Rlcmlpbic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyAmcXVvdDt1bm9odHVudXQgc2FsYXNhbmEmcXVvdDsgLWxvbWFra2VlbGxlJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzICZxdW90O211dXRhIGFzZXR1a3NpYSZxdW90OyAtbG9tYWtrZWVsbGUnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgam9rYSBuJmF1bWw7eXRldCZhdW1sOyZhdW1sO24ga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGpva2EgbiZhdW1sO3l0ZXQmYXVtbDsmYXVtbDtuIHVsb3Mga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnSiZhdW1sO3JqZXN0eXMnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnSm9pdGFpbiBrJmF1bWw7eXR0JmF1bWw7amkmYXVtbDsgb24gdCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgcmVzZXRvaW1hc3NhIHNhbGFzYW5vamFhbi4gVCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgbiZhdW1sO2l0JmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBvdmF0OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQb2lzdGEga2Fpa2tpIHlsaSB2aWlrb24gdmFuaGF0IG1lcmtpbm4mYXVtbDt0JzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BvaXN0YSBrYWlra2kgeWxpIGt1dWthdWRlbiB2YW5oYXQgbWVya2lubiZhdW1sO3QnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUG9pc3RhIGthaWtraSBtZXJraW5uJmF1bWw7dCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnT2xldGtvIHZhcm1hPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1ZpcmhlZWxsaW5lbiBrb29kaSwgb2xlIGh5diZhdW1sOyBqYSB5cml0JmF1bWw7IHV1ZGVsbGVlbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnViZhdW1sO2xpYWlrYWlzdGEga29vZGlhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VsbGUgZWkgbCZvdW1sO3l0eW55dCB0aWV0b2thbm5hc3RhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnUG9oamEgdmFodmlzdHVzbG9tYWtrZWVsbGUnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1BvaGphICZxdW90O3Vub2h0dW51dCBzYWxhc2FuYSZxdW90OyAtcyZhdW1sO2hrJm91bWw7cG9zdGlsbGUnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0pva28gc2luJmF1bWw7IHRhaSBqb2t1IG11dSBvbiBoYWx1bm51dCBub2xsYXRhIHNhbGFzYW5hbiB0JmF1bWw7bGxlIHRpbGlsbGUuIFRhcmtpc3RhIHMmYXVtbDtoayZvdW1sO3Bvc3Rpc2ksIGwmYXVtbDt5ZCZhdW1sO3Qgc2llbHQmYXVtbDsgamF0a28tb2hqZWV0IHNhbGFzYW5hbiBub2xsYWFtaXNlZW4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1RpZXRva2FudGF2aXJoZSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdTYWl0IHQmYXVtbDttJmF1bWw7biB2aWVzdGluIGtvc2thIGpva3Ugb24gdmFsaW5udXQgc2l2dXN0b2x0YSAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFuc2kmcXVvdDsgdG9pbWlubm9uLiBKb3MgdGVpdCB0JmF1bWw7bSZhdW1sO24gdG9pbWlubm9uIGl0c2UgbCZvdW1sO3lkJmF1bWw7dCBvaGplZXQgYWx0YS4gSm9zIGV0IHRpZWQmYXVtbDsgbWlzdCZhdW1sOyBwdWh1dGFhbiB2b2l0IHR1aG90YSB0JmF1bWw7bSZhdW1sO24gcG9zdGluLCBraWl0b2tzaWEgYWphc3Rhc2kuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29vZGknOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnU2V1cmFhdmEga29vZGkgb24gbHVvdHUgc2ludWxsZSwgayZhdW1sO3l0JmF1bWw7IGtvb2RpYSB2YWh2aXN0YWFrc2VzaSBldHQmYXVtbDsgb2xldCB0aWxpbiBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOy4gS3VuIGtsaWtrYWF0IGFsbGEgb2xldmFhIGxpbmtraSZhdW1sOyBzaW51biB0YXJ2aXRzZWUgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB0JmF1bWw7bSZhdW1sOyBrb29kaSBsb21ha2tlZXNlZW4uIFlsZWVucyZhdW1sOyBrZW50dCZhdW1sOyBvbiB2YWxtaWlrc2kgdCZhdW1sO3l0ZXR0eSwgbXV0dGEgam9zIGpvc3RhaW4gc3l5c3QmYXVtbDsgZWkgb2xlIGtvb2Rpc2kgb246JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnVCZhdW1sO20mYXVtbDsgbGlua2tpIHZpZSBzaW51dCBzaXZ1bGxlIGpvbm5lIHZvaXQgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB5bGwmYXVtbDsgbWFpbml0dW4ga29vZGluIGphIG5vbGxhdGEgc2FsYXNhbmFzaSc7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnS2Fkb25udXQgc2FsYXNhbmEnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdFaSB2b2l0dSBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7IENNU01haWxlci1tb2R1dWxpYSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdTaW51bGxlIG9uIGwmYXVtbDtoZXRldHR5IGVtYWlsLW9zb2l0dGVzZWVuICVzIGpvc3NhIG9uIHRpZWRvdCBtaXRlbiB2b2l0IG5vbGxhdGEgc2FsYXNhbmFzaS4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdVbm9oZGl0IHNhbGFzYW5hc2k/IEtpcmpvaXRhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VzdGkgdCZhdW1sO2gmYXVtbDtuLCBqYSBqb3MgbCZvdW1sO3lkJmF1bWw7bW1lIHRpbGlsbGVzaSBlbWFpbCBvc29pdHRlZW4gbCZhdW1sO2hldCZhdW1sO21tZSBzaW5uZSB0aWVkb3Qgc2FsYXNhbmFuIG5vbGxhdWtzZXN0YSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJyZxdW90O1Vub2h0dW51dCBzYWxhc2FuYSZxdW90OyAtcG9oamEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VW5vaHR1bnV0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzJnF1b3Q7IC1wb2hqYSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdPbWluYWlzdXV0dGEgJXMgZWkgbCZvdW1sO3lkeSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnT21pbmFpc3V1a3NpYSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdMaXMmYXVtbDsmYXVtbDsgb21pbmFpc3V1cyc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnVmFhZGl0dHUga2VudHQmYXVtbDsgKCVzKSBvbiB0eWhqJmF1bWw7JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnU3kmb3VtbDt0JmF1bWw7IHV1c2kgc2FsYXNhbmEnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdFdCBvbGUga2lyamF1dHVudXQnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1Jla2lzdGVyJm91bWw7aW50aSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1QmYXVtbDttJmF1bWw7IHRpbGxpIG9uIHZhbmhlbnR1bnV0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdFbWFpbC1vc29pdHRlZW4gbXVvdG8gb24gdiZhdW1sOyZhdW1sO3ImYXVtbDsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdWaXJoZWVsbGluZW4gdmFuaGVudHVtaXNwJmF1bWw7aXYmYXVtbDsnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ1ZpcmhlIGFzZXRldHRhZXNzYSBvbWluYWlzdXV0dGEgJXMgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtsbGUgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdWaXJoZWVsbGluZW4gcnlobSZhdW1sOyAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1BpaWxvdGV0dHUga2VudHQmYXVtbDsgLW1lcmtpbnQmYXVtbDsnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ1BpaWxvdGV0dW4ga2VudCZhdW1sO24gdiZhdW1sO3JpJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1BpaWxvdGV0dHUnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ1NhbWFsbGEgbmltZWxsJmF1bWw7IG9uIGpvIG9taW5haXN1dXMnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnRWkgb21pbmFpc3V1a3NpYSBtJmF1bWw7JmF1bWw7cml0ZWx0eSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ1QmYXVtbDtsbGUgcnlobSZhdW1sO2xsZSBlaSBvbGUgdmFsaXR0dWphIG9taW5haXN1dWtzaWEnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdFaSBtJmF1bWw7JmF1bWw7cml0ZWx0eWomYXVtbDsgcnlobWkmYXVtbDsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdSeWhtaSZhdW1sOyBsJm91bWw7eXR5aSc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIHR1bGVlIGt1dWx1YSB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24geWh0ZWVuIHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdWYWFkaSB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24geWtzaSByeWhtJmF1bWw7IHBlciBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyc7CiRsYW5nWydiYWNrJ10gPSAnVGFrYWlzaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIG9uIHZhYWRpdHR1IGtlbnR0JmF1bWw7JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNZXJraXRzZSB2YWFkaXR1dCBrZW50JmF1bWw7dCBtZXJraWxsJmF1bWw7JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0tvcm9zdGEgdmFhZGl0dHVqYSBrZW50dGkmYXVtbDsnOwokbGFuZ1snbmV4dCddID0gJ1NldXJhYXZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2FtYWxsYSBuaW1lbGwmYXVtbDsgb24gam8gcnlobSZhdW1sOyc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1ZhYWRpdHR1IGtlbnR0JmF1bWw7JzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnVmFwYWFlaHRvaW5lbic7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ0tva28nOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYWtzaW1pIGt1dmFuIGtva28gKGxldmV5cyBqYSBrb3JrZXVzKSBwaWtzZWxlaXNzJmF1bWw7ICknOwokbGFuZ1snbGVuZ3RoJ10gPSAnUGl0dXVzJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KE1lcmtrZWomYXVtbDsgdGVrc3RpIGtlbnQmYXVtbDtzcyZhdW1sOyknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0FsYXN2ZXRvdmFsaWtvbiB2YWxpbm5hdCwgam9rYWluZW4gYXJ2byBvbWFsbGEgcml2aWxsJmF1bWw7JmF1bWw7bi4gQXJ2byB2b2lkYWFuIGVyb3R0YWEgPSBtZXJraWxsJmF1bWw7LCBlc2ltIE5haW5lbj1ODQonOwokbGFuZ1sncHJvbXB0J10gPSAnS2Vob3RlJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHl5cHBpJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXlwcGknOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdLZW50JmF1bWw7biB0aWxhJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0FzayBpbiBMb3N0PGJyLz5Vc2VybmFtZSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3RpJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnVmFsaW50YWxhYXRpa2tvJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTW9uaXZhbGludGEmcXVvdDtsaXN0YSc7CiRsYW5nWydpbWFnZSddID0gJ0t1dmEnOwokbGFuZ1snZW1haWwnXSA9ICdFbWFpbC1vc29pdGUnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdGlhbHVlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnQWxhc3ZldG92YWxpa2tvJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnVGVydmV0dWxvYSc7CiRsYW5nWydsb2dvdXQnXSA9ICdLaXJqYXVkdSB1bG9zJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdLJmF1bWw7eXQmYXVtbDsgdCZhdW1sO3QmYXVtbDsgcnlobSZhdW1sOyBuaW1lJmF1bWw7JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0FzZXR1a3NlbmknOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdLaXJqYXV0dW1pbmVuIGVwJmF1bWw7b25uaXN0dWkgLSB0YXJraXN0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBqYSBzYWxhc2FuYSc7CiRsYW5nWydsb2dpbiddID0gJ0tpcmphdWR1JzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnS2lyamF1ZHUgc2lzJmF1bWw7JmF1bWw7biAtbmFwaW4gb3RzaWtrbyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdTJmF1bWw7aGsmb3VtbDtwb3N0aW9zb2l0ZSc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdTYWxhc2FuYSc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ011aXN0YSBtaW51dCB0JmF1bWw7bGwmYXVtbDsgdGlldG9rb25lZWxsYSc7CiRsYW5nWydyZWdpc3RlciddID0gJ1Jla2lzdGVyJm91bWw7aWR5JzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnVW5vaGRpdGtvIHNhbGFzYW5hc2knOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnVW5vaGRpdGtvIGtpcmphdXR1bWlzIHRpZXRvc2k/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnT2xldHVrc2V0JzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUG9oamEnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDsmYXVtbDsgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVmFsaXRzZW1hc2kgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBTTVRQOnQmYXVtbDsgZW1haWwtb3NvaXR0ZWlkZW4gdGFya2lzdHVrc2Vzc2EnOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnU2FsYXNhbmFuIG1pbmltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdTYWxhc2FuYW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbiBtaW5pbWlwaXR1dXMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdJc3R1bm5vbiBhaWtha2F0a2Fpc3UgKHNla3VudGVqYSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsgcGl0JmF1bWw7JmF1bWw7a3Nlc2kga2lyamF1dHVtaXNlbiB5bGwmYXVtbDsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdTYWxsaSBlbWFpbC1yZWtpc3RlciZvdW1sO2ludGknOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ09sZXR1c3J5aG0mYXVtbDsgdXVzaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdWYWloZGEgYXNldHVrc2lhIC1wb2hqYSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnU2FsYXNhbmF0IGVpdiZhdW1sO3Qgb2xlIHlodGVuZXYmYXVtbDt0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIGVpIGtlbHBhYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdTYWxhc2FuYSBlaSBrZWxwYWEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNdW9ra2FhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3ZhbGlkJ10gPSAnS2VscGFhJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1snc3RhdHVzJ10gPSAnVGlsYSc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUJmF1bWw7bSZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBlaSBrdXVsdSBtaWhpbmsmYXVtbDsmYXVtbDtuIHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdFaSBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnWXJpdCZhdW1sOyB0dW9kYSB0dXBsYW9taW5haXN1dWRldCc7CiRsYW5nWyd2YWx1ZSddID0gJ0Fydm8nOwokbGFuZ1snZ3JvdXBzJ10gPSAnUnlobSZhdW1sO3QnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ09taW5haXN1dWRldCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ09taW5haXN1dWRlbiBuaW1pJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ09taW5haXN1dWRlbiBhcnZvJzsKJGxhbmdbJ2FkZCddID0gJ0xpcyZhdW1sOyZhdW1sOyc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWEnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZXhwaXJlcyddID0gJ1ZhbmhlbmVlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ00mYXVtbDsmYXVtbDtyaXR0ZWxlIHAmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWycxMmhycyddID0gJzEyIHR1bnRpYSc7CiRsYW5nWycyNGhycyddID0gJzI0IHR1bnRpYSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IHR1bnRpYSc7CiRsYW5nWycxd2VlayddID0gJzEgdmlpa2tvJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgdmlpa2tvYSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIGt1dWthdXNpJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIGt1dWthdXR0YSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBrdXVrYXV0dGEnOwokbGFuZ1snMXllYXInXSA9ICcxIHZ1b3NpJzsKJGxhbmdbJ25ldmVyJ10gPSAnRWkga29za2Fhbic7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlIFwmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLlwmcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTYWxhc2FuYSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1V1ZGVzdGFhbic7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnTmltZWxsJmF1bWw7IG9uIGpvIHJ5aG0mYXVtbDsnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTXVva2thYSByeWhtJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0wmYXVtbDtoZXQmYXVtbDsnOwokbGFuZ1snY2FuY2VsJ10gPSAnUGVydXV0YSc7CiRsYW5nWydkZWxldGUnXSA9ICdQb2lzdGEnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdBcmUgeW91IHN1cmUgdGhpcyBpcyB0aGUgcHJvcGVyIHNldHRpbmdzIGZvciB0aGlzIGdyb3VwP1xuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdIYWx1YXRrbyB2YXJtYXN0aSBwb2lzdGFhIHQmYXVtbDttJmF1bWw7biByeWhtJmF1bWw7JmF1bWw7bic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUmlpdHQmYXVtbDttJmF1bWw7dHQmb3VtbDttJmF1bWw7dCBwYXJhbWV0cml0JzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBsaXMmYXVtbDt5a3Nlc3MmYXVtbDsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1J5aG0mYXVtbDtsaWl0b2tzZW4gbGlzJmF1bWw7JmF1bWw7bWlzZXNzYSBlc2lpbnR5aSBvbmdlbG1hJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ09uZ2VsbWEgcnlobSZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnT25nZWxtYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7IHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBwb2lzdGFtaXNlc3NhJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRW1haWwgb3NvaXRldHRhIGVpIGwmb3VtbDt5ZGV0dHknOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0tvaGRlIGthbnNpb29uIGVpIG9sZSBraXJqb2l0dXNvaWtldXR0YSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVmlyaGVlbGxpc2V0IHBhcmFtZXRyaXQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdSeWhtaSZhdW1sOyBlaSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXNldGEnOwokbGFuZ1snZmlsdGVyJ10gPSAnU3VvZGF0YSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLdXZhdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnUnlobSZhdW1sO24gbmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdQJmF1bWw7JmF1bWw7c3kga2llbGxldHR5JzsKJGxhbmdbJ2Vycm9yJ10gPSAnVmlyaGUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdMaXMmYXVtbDsmYXVtbDsgcnlobSZhdW1sOyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ1R1byByeWhtJmF1bWw7JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdMaXMmYXVtbDsmYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDsnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0hha3VlaHRvaWhpbiBzb3BpdmF0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydncm91cCddID0gJ1J5aG0mYXVtbDsnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWYWxpdHR1IHJ5aG0mYXVtbDsnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpIHBvaGphJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0tpcmphdWR1IHVsb3MgcG9oamEnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdLaXJqYXV0dW1pcyBwb2hqYSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWyd1c2VycyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTYWxsaWkgayZhdW1sO3l0dCZhdW1sO2ppZW4ga2lyamF1dHVhIHNpdnVzdG9sbGVzaSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnT2xldHVzIGV0dXNpdnUnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1ZpaW1la3NpIGsmYXVtbDt5dHkgc2l2dSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdUb2luZW4gc2l2dTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTeSZvdW1sO3QmYXVtbDsga3V2YXNzYSBuJmF1bWw7a3l2JmF1bWw7IHRla3N0aSc7CiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+DQo8bGk+MC4wLjEgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2U8L2xpPg0KPGxpPjAuMS4wIC0gT2N0b2JlciwgMjAwNSAtIEluaXRpYWwgcmVsZWFzZTwvbGk+DQo8bGk+MC4xLjEgLSBPY3RvYmVyLCAyMDA1IC0gRml4ZWQgaXNzdWVzIHdpdGggcHJvcGVydGllczwvbGk+DQo8bGk+MC4xLjIgLSBPY3RvYmVyLCAyMDA1IC0gQWRkZWQgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHk8L2xpPg0KPGxpPjAuMS4zIC0gTm92ZW1iZXIsIDIwMDUNCiAgICA8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IGEgcmVkaXJlY3QgcGFnZSBvbiBsb2dpbiwgbG9nb3V0LCBmb3Jnb3QgcGFzc3dvcmQsIGFuZCBjaGFuZ2Ugc2V0dGluZ3MsIGFuZCBhZGRlZCB0aGUgcmV0dXJudG8gYW5kIGZvcm0gcGFyYW1ldGVycyB0byB0aGUgdXNlciBzaWRlIG9mIHRoaW5ncywgYWxzbyBkaWQgYSBjb3VwbGUgbGYgbGl0dGxlIGNsZWFudXBzLiAgVGhpcyB2ZXJzaW9uIHJlcXVpcmVzIHYwLjExIGFuZCBhYm92ZSBmb3IgY2VydGFpbi48L3A+PC9saT4NCjxsaT4wLjEuNCAtIE5vdmVtYmVyLCAyMDA1IC0gVmVyeSBtaW5vciBjaGFuZ2Ugd2l0aCByZXNwZWN0IHRvIGEgZm9yZ290dGVuIGFuZCBubyBsb25nZXIgbmVlZGVkIGZ1bmN0aW9uIGNhbGw8L2xpPg0KPGxpPjAuMS41IC0gTm92ZW1iZXIsIDIwMDUNCiAgICA8cD5Bbm90aGVyIHZlcnkgbWlub3IgY2hhbmdlLCBhZGRlZCBzb21lIHRleHQgdG8gdGhlIFBvc3RJbnN0YWxsIG1lc3NhZ2UuPC9wPjwvbGk+DQo8bGk+MC4xLjYgLSBKYW51YXJ5LCAyMDA2DQogICAgPHA+Q2hhbmdlcyB0byB0aGUgcGVybWlzc2lvbiBtb2RlbCwgYW5kIG1pbm9yIGJ1ZyBmaXhlcyB0byB0aGUgcHJlZmVyZW5jZXMuICBBbHNvIHNvbWUgcGhwNSBmaXhlcyBidXQgSSBhbSBzdXJlIHRoYXQgdGhlcmUgYXJlIG1vcmUgb3V0IHRoZXJlLjwvcD48L2xpPg0KPGxpPjAuMS43IC0gSmFudWFyeSwgMjAwNg0KICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBwcm9wZXJ0eSBhZGRpbmcgdG8gZml4IHByb2JsZW1zIHdpdGggc3BhY2VzIGluIHByb3BlcnR5IG5hbWVzICh3ZSBubyBsb25nZXIgbGV0IHRoYXQgaGFwcGVuKS48L3A+DQo8L2xpPg0KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4NCiAgICA8cD5BZGRlZCBmaWx0ZXJpbmcgYW5kIHJvdyBsaW1pdGluZyB0byB0aGUgYWRtaW4gcGFuZWwuIFRoaXMgd2lsbCBoYXZlIGJpZyBiZW5lZml0cyB0byB0aG9zZSB0aGF0IGFyZSB1c2luZyB0aGlzIG1vZHVsZSBmb3IgaGlnaCB0cmFmaWMsIGFuZCBoaWdoIHVzZXIgc2l0ZXMuPC9wPg0KICAgIDxwPkFkZGVkIHNvcnRpbmcgdG8gdGhlIGFkbWluIHBhbmVsPC9wPg0KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+DQogICAgPHA+Rml4ZWQgYSBzbWFsbCBwcm9ibGVtIHdpdGggdGhlIGRlZmF1bHQgZ3JvdXAgbm90IGJlaW5nIGNoZWNrZWQgd2hlbiBhZGRpbmcgYSB1c2VyPC9wPg0KICAgIDxwPlNhdmUgZmlsdGVyIHNldHRpbmdzIGluIHByZWZlcmVuY2VzLCBhbmQgdGhlIGFjdGl2ZSB0YWIgdG9vLjwvcD4NCiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4NCiAgICA8cD5BZGQgY29uZmlybWF0aW9uIG1lc3NhZ2UgaW4gZWRpdCBncm91cHMuPC9wPg0KICAgIDxwPkFkZGVkIGEgY291cGxlIG1vcmUgY29uZmlybWF0aW9uIG1lc3NhZ2VzLjwvcD4NCiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4NCiAgICA8cD5Ub2RvIC0gQWRkIHByZWZlcmVuY2VzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZmllbGRsZW5ndGg8L3A+DQo8L2xpPg0KPGxpPjEuMC4xIC0gTWFyY2gsIDIwMDYNCiAgICA8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBjaGVjayBmb3IgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlczwvcD4NCiAgICA8cD5GaXggcHJvYmxlbSB3aGVyZSBleHBpcnkgZGF0ZSB3YXMgYmVpbmcgbW9kaWZpZWQgd2hlbiBhZG1pbiBtb2RpZmllZCB1c2VyIHNldHRpbmdzPC9wPg0KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPg0KICAgIDxwPkZpeGVkIGEgbWlub3IgYnVnIHdoZW4gY291dGluZyB0aGUgbnVtYmVyIG9mIHVzZXJzIGluIGEgZ3JvdXA8L3A+DQogICAgPHA+Rml4ZXMgdG8gdGhlIHNpemUgb2YgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGZpZWxkcywgYW5kIG1heGxlbmd0aDwvcD4NCiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4NCiAgICA8cD5DaGFuZ2VzIHRvIGxhYmVsaW5nIGluIGFkZCBvciBlZGl0IHVzZXI8L3A+DQogICAgPHA+Rml4ZXMgdG8gcHJvYmxlbXMgd2l0aCBpbmxpbmUgYW5kIG5vbiBpbmxpbmUgZm9ybXMsIHRoZSBwYXNzd29yZCBpcyBuZXZlciBzZW50IG9uIHRoZSBnZXQgbGluZTwvcD4NCiAgICA8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4NCjwvbGk+DQo8bGk+MS4wLjIgLSBNYXJjaCwgMjAwNg0KICAgIDxwPk1vcmUgZmllbGQgbGVuZ3RoIGZpeGVzPC9wPg0KPC9saT4NCjxsaT4xLjAuMyAtIE1hcmNoLCAyMDA2DQogICAgPHA+RXhwb3J0IHRvIHNtYXJ0eSBhbGwgb2YgdGhlIHVzZXIgcHJvcGVydGllcyB3aGVuIHRoZXkgYXJlIGxvZ2dlZCBpbjwvcD4NCjwvbGk+DQo8bGk+MS4wLjQgLSBNYXksIDIwMDYNCiAgICA8cD5GaXhlcyB0byB0aGUgZXhwb3J0IGNvZGU8L3A+DQogICAgPHA+Q29kZSBjbGVhbnVwIChhbHBoYWJldGl6ZSBmdW5jdGlvbnMpPC9wPg0KICAgIDxwPk1pbm9yIGZpeGVzIGFuZCBlbmhhbmNlbWVudHMgKHJlY29tbWVuZGVkIGJ5IG5pbHM3MykgZm9yIGRlYWxpbmcgd2l0aCB0aGUgY2hhbmdlIHBhc3N3b3JkIHN0dWZmLjwvcD4NCiAgICA8cD5SZW1vdmVkIHRoZSByZXF1aXJlbWVudCBmb3IgQ01TIDAuMTIsIGFuZCBwdXQgaXQgYmFjayB0byAwLjExLjI8L3A+DQogICAgPHA+QWRkZWQgdGhlIFwmIzAzOTtzaWxlbnRcJiMwMzk7IGZvcm08L3A+DQogICAgPHA+Q2xlYW5lZCB1cCBkYXRhYmFzZSBhY2Nlc3Mgc3R1ZmYgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMgKGhvcGVmdWxseSk8L3A+DQogICAgPHA+QWRkZWQgY29weXJpZ2h0IGluZm88L3A+DQogICAgPHA+QWRkZWQgbWFjcm9zIGZvciByZWRpcmVjdG8gdG8gYSB1c2VyIHNwZWNpZmljIHBhZ2Ugb24gbG9naW4gb3IgbG9nb3V0PC9wPg0KICAgIDxwPlR3ZWFrcyB0byB0aGUgYWRtaW4gcHJlZmVyZW5jZXMgdGFiPC9wPg0KPC9saT4NCjxsaT4xLjAuNSAtIE1heSwgMjAwNg0KICAgIDxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIGV4cGlyeSBkYXRlczwvcD4NCiAgICA8cD5TdGFydCBzcGxpdHRpbmcgdGhlIGNvZGUgdXAgaW50byBzZXZlcmFsIGZpbGVzPC9wPg0KPGxpPjEuMC42IC0gTWF5LCAyMDA2DQogICAgPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggZWRpdGluZyBkcm9wZG93bnM8L3A+DQo8L2xpPg0KPGxpPjEuMS4wIC0gTWF5LCAyMDA2DQogICAgPHA+RXZlbnRzPC9wPg0KICAgIDxwPk9wdGlvbmFsbHkgZGlzYWxsb3cgcmVwZWF0ZWQgbG9naW5zPC9wPg0KICAgIDxwPkV4cG9ydCB0aGUgdXNlciBpZCB0byBzbWFydHk8L3A+DQogICAgPHA+QWRkZWQgb3B0aW9uYWxseSBceyRncm91cFx9IGZvciB0aGUgcGFnZXMgdG8ganVtcCB0byBvbiBsb2dpbjwvcD4NCjwvbGk+DQo8bGk+MS4xLjEgLSBTZXB0LCAyMDA2DQogICAgPHA+Rml4ZWQgYSBidWcgd2hlbiBhIHVzZXIgd2FzIGVkaXRpbmcgaGlzIHNldHRpbmdzIHdpdGggXCYjMDM5O2FsbG93IGR1cGxpY2F0ZSBlbWFpbHNcJiMwMzk7IHdhcyBvZmY8L3A+DQogICAgPHA+Q2hhbmdlZCB0aGUgZHJvcGRvd24gdGFibGUgdG8gMjU1IGNoYXJhY3RlcnM8L3A+DQogICAgPHA+TWlub3IgY2xlYW51cHM8L3A+DQo8L2xpPg0KPGxpPjEuMS4yIC0gRGVjLCAyMDA2DQogICAgPHA+Rml4ZXMgKGhvcGVmdWx5KSB0byB0aGUgYWRvZGIvYWRvZGItbGl0ZSBEQVRFVElNRSBpc3N1ZTwvcD4NCiAgICA8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSBsb2dpbiBzY3JlZW4gKG9wdGlvbmFsKSwgdGhhbmtzIGRpdHRtYW48L3A+DQogICAgPHA+Rml4ZXMgdG8gY2FuY2VsIGhhbmRsaW5nIG9uIHRoZSBsb3N0IHBhc3N3b3JkIGFuZCBjaGFuZ2Ugc2V0dGluZ3Mgc2NyZWVuczwvcD4NCiAgICA8cD5GaXhlcyB0byB1c2VyIGV4cGlyeSAobW9yZSBEQlRpbWVzdGFtcCBpc3N1ZXMpLCB0aGFua3MgYWdhaW4gZGl0dG1hbjwvcD4NCiAgICA8cD5PcHRpb24gdG8gYWxsb3cgRkVVc2VycyB0byBoYXZlIGl0cyBvd24gc2V0IG9mIHBlcm1pc3Npb25zIGFzc2lkZSBmcm9tIHRoZSBhZG1pbiBwZXJtaXNzaW9ucy4gIFRoYW5rcyBfU2pHXzwvcD4NCiAgICA8cD5PcHRpb24gdG8gYWxsb3cgZHVwbGljYXRlIHBhc3N3b3JkIHJlbWluZGVyIHJlcXVlc3RzIGFuZCB0byBzcGVjaWZ5IHRleHQgb24gdGhlIHNpZ25pbiBidXR0b24uICBUaGFua3MgX1NqR188L3A+DQogICAgPHA+R2VuZXJhbCBjbGVhbnVwIG9mIGZ1bmN0aW9ucyB0aGF0IHdlcmUgbm90IGJlaW5nIHVzZWQgYW5kIG5vdGljZXMvd2FybmluZ3M8L3A+DQogICAgPHA+QWRkZWQgdGhlIG9ubHlfZ3JvdXBzIHBhcmFtIGZvciBsb2dpbiBmb3Jtcy4gIFRoYW5rcyB3aXNoeTwvcD4NCiAgICA8cD5GaXhlcyB0byB0aGUgbGVuZ3RoIG9mIHRoZSBlbWFpbCBmaWVsZCBpbiB0aGUgY2hhbmdlIHBhc3N3b3JkIGZvcm08L3A+DQogICAgPHA+Rml4ZXMgdG8gdGhlIGVtYWlsIHZhbGlkYXRpb24gc3R1ZmY8L3A+DQo8L2xpPg0KICAgIDxsaT4xLjIuMCAtIEFwcmlsLCAyMDA3DQogICAgPHA+ZWxpamFobG9mZ3JlbiAtIEZpeGVzIHRvIGNhcHRjaGEgc3VwcG9ydCwgYW5kIHNvbWUgdGVtcGxhdGUgY2xlYW51cHMuPC9wPg0KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBtdWx0aSBzZWxlY3QgbGlzdHM8L3A+DQogICAgPHA+VGVtcGxhdGUgY2xlYW51cHMgKG1vcmUgb2YgZW0pPC9wPg0KICAgIDxwPkFkZCBzdXBwb3J0IGZvciB2YWx1ZT1rZXkgc3R1ZmYgaW4gdGhlIGRyb3Bkb3duIGFuZCBtdWx0aSBzZWxlY3QgbGlzdHMuPC9wPg0KICAgIDxwPmJldHRlciBjaGVja2luZyBvZiB0aGUgJnF1b3Q7YXQgbGVhc3Qgb25lIGdyb3VwIHJlcXVpcmVkJnF1b3Q7IHN0dWZmPC9wPg0KICAgIDxwPk91dHB1dCBtb3JlIHNtYXJ0eSB2YXJpYWJsZXMgb24gdGhlIHVzZXIgc2V0dGluZ3MgcGFnZSwgdG8gYWxsb3cgcGVvcGxlIHRvIG1vZGlmeSB0aGUgdGVtcGxhdGUgdG8gc29tZXRoaW5nIHRoYXQgaXMgbW9yZSBhY2Nlc3NpYmlsZTwvcD4NCiAgICA8cD5TcGxpdCBpbnRvIG1vcmUgZmlsZXMgZm9yIHBlcmZvcm1hbmNlPC9wPg0KICAgIDxwPllvdSBjYW4gbm93IG5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2VyczwvcD4NCiAgICA8cD5Ob3cgaGFuZGxlIHJlZ2V4IHByb2JsZW1zIGJldHRlciBpbiB0aGUgYWRtaW4gc2VjdGlvbiB1c2VycyB0YWI8L3A+DQogICAgPHA+RW1haWwgZmllbGRzLCB3aGVuIHNwZWNpZmllZCBhcyBvcHRpb25hbCwgbWFrZSBlbSBhY3R1YWxseSBvcHRpb25hbDwvcD4NCiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgaW1hZ2UgdXBsb2FkcywgdGhpcyBpcyBhIGJpZyBmZWF0dXJlLiAgSW1hZ2VzIGFyZSBzY2FsZWQgdG8gYSBtYXhpbXVtIHNpemUgaW4gb25lIGRpbWVuc2lvbiwgYW5kIHN0b3JlZCBhcyBmaWxlcyBpbiBhIGNvbmZpZ3VyYWJsZSBkaXJlY3RvcnkgdW5kZXIgdGhlIHVwbG9hZHNfcGF0aC48L3A+DQogICAgPHA+Q2FwdGNoYSBtb2RlIGlzIG5vdyBvbiBieSBkZWZhdWx0LCB1bmxlc3MgeW91IHVzZSB0aGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBpbiB0aGUgdGFnLjwvcD4NCiAgICA8cD5GaXhlcyB0byBDU1YgZXhwb3J0Li4uIGl0IHdhcyBhc3N1bWluZyB0aGUgZGJfcHJlZml4IGlzIGNtc188L3A+DQogICAgPHA+SW1wb3J0IFVzZXJzIGZyb20gQ1NWPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBpbnN0YWxsIGFuZCB1bmluc3RhbGwgbWV0aG9kcywgYW5kIG5vdyB0aGUgYWxsb3dfcmVwZWF0ZWRfbG9naW5zIHByZWZlcmVuY2Ugc2hvdWxkIHdvcms8L3A+DQogICAgPHA+QWRkcyBwcm9wZXIgdXNlciBoaXN0b3J5IHRyYWNraW5nLiAgTm93IHRyYWNrIGZhaWxlZCBsb2dpbnMsIGxvZ2lucywgZXhwaXJpZXMsIGFuZCBsb2dvdXRzLCBvbiBhIHBlciB1c2VyIGJhc2lzLjwvcD4NCiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgdXNlciBzZXR0aW5ncyBwYWdlLCBpZiB0aGUgdXNlciBzZXR0aW5ncyBmb3JtIGlzIG9uIGEgZGlmZmVyZW50IHBhZ2UuPC9wPg0KICAgIDxwPkZpeGVzIHRvIHRoZSBjYW5jZWwgYnV0dG9uIG9mIHRoZSBmb3Jnb3QgcGFzc3dvcmQgcGFnZSwgaWYgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtIGlzIG9uIGEgZGlmZmVyZW50IHBhZ2UuPC9wPg0KICAgIDxwPk1pbm9yIGZpeGVzIHRvIGJlaGF2aW91ciBvYWYgdGhlIHByZWZlcmVuY2VzIHBhbmVscy48L3A+DQo8L2xpPg0KPGxpPjEuMi4xIC0gSnVuZSwgMjAwNw0KCTxwPkEgY29va2llIGlzIG5vdyB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgbG9naW4gc3RhdGUgYmV0d2VlbiBzZXNzaW9ucywgaG93ZXZlciB0aGUgY29va2llIGRvZXMgbm90IGxhc3QgYW55IGxvbmdlciB0aGFuIHRoZSB0aW1lb3V0IHNwZWNpZmllZCBpbiB0aGUgdXNlciBzZXR0aW5ncy48L3A+DQoJPHA+QWRkZWQgdGhlIGFiaWxpdHkgZm9yIGFuIGFkbWluaXN0cmF0b3IgdG8gbG9nb3V0IHVzZXJzPC9wPg0KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGZpbHRlciBieSBsb2dnZWQgaW4gc3RhdHVzPC9wPg0KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciByZWFkLW9ubHkgcHJvcGVydGllcy48L3A+DQoJPHA+QWRkZWQgbW9yZSB2YXJpYWJsZXMgaW4gZWFjaCBvYmplY3QgaW4gdGhlIGNoYW5nZXNldHRpbmdzIGZvcm08L3A+DQo8L2xpPg0KPGxpPg0KCTxwPjEuMi4yIC0gSnVuZSwgMjAwNzwvcD4NCgk8cD50c3cgLSBBZGRlZCBldmVudCBPblVwZGF0ZVVzZXIgd2hpY2ggZ2V0cyBjYWxsZWQgd2hlbiB1c2VyIChvciBhZG1pbikgdXBkYXRlcyB1c2VyIGluZm88L3A+DQogICAgICAgIA0KPC9saT4NCjxsaT4xLjMgLSBPY3RvYmVyLCAyMDA3DQo8cD5BZGRlZCBzdXBwb3J0IGZvciAmIzAzOTtyZW1lbWJlciBtZSYjMDM5OyBzbyB0aGF0IGxvZ2luIGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiBhIGNvb2tpZS4gIEFuZCBzdXBwb3J0IGZvciBhIGZvcm0gdG8gYWxsb3cgdGhhdCBjb29raWUgdG8gYmUgcmVzZXQuPC9wPg0KPHA+Tm8gbG9uZ2VyIHN1cHBvcnQgbm9uIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGluIHByb3BlcnR5IG5hbWVzLjwvcD4NCjxwPk51bWVyb3VzIHNtYWxsIGJ1Z2ZpeGVzLjwvcD4NCjxwPlJlcXVpcmUgQ01TIDEuMiBvciBncmVhdGVyLjwvcD4NCjwvbGk+DQo8bGk+MS4zLjEgLSBOb3ZlbWJlciwgMjAwNw0KPHA+Rml4ZXMgcHJvYmxlbXMgd2l0aCBwYXJhbWV0ZXJzIG5vdCBiZWluZyBjbGVhbmVkIGluIHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZGlhbG9nIG9uIHRoZSBmcm9udCBlbmQuPC9wPg0KPHA+Rml4ZXMgYW4gdXBkcmFkZSBpc3N1ZSBpbiB0aGUgZGF0YWJhc2Ugc2NoZW1hPC9wPg0KPHA+Rml4ZXMgYW4gaXNzdWUgaW4gYSBHZXRTbWFydHkoKSBjYWxsIHRoYXQgd2FzIGFwcGFyZW50bHkgY2F1c2luZyBwZW9wbGUgZGlmZmljdWx0aWVzIHdpdGggdGhlIGxvZ2luIGZvcm0uPC9wPg0KPHA+QWRkIGEgcHJlZmVyZW5jZSB0aGF0IGFsbG93cyBhZG1pbnMgdG8gc3BlY2lmeSBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgdGhlIGZvcmdvdCBwYXNzd29yZCB2YWxpZGF0aW9uIGZvcm0gaXMgY29tcGxldGUuPC9wPg0KPHA+Rml4ZXMgYSBwcm9ibGVtIHdpdGggaGlkZGVuIHByb3BlcnRpZXMgYmVpbmcgbG9zdCBhZnRlciBhIHVzZXIgY2hhbmdlZCB0aGVpciBzZXR0aW5ncy48L3A+DQo8cD5UaGUgRm9yZ290IFBhc3N3b3JkIGFuZCBMb3N0IFVzZXJuYW1lIGZvcm1zIGFyZSBub3cgaW5saW5lPC9wPg0KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmYW1wO3F1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZhbXA7cXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3Ugc2hvdWxkIGRlZmluZSBwcm9wZXJ0aWVzLiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBFbWFpbCBhZGRyZXNzLCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IHNob3VsZCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFwmIzAzOTtOZXh0XCYjMDM5OzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXM6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4NCiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gb25seV9ncm91cHM9JnF1b3Q7Z3JvdXAxLCBncm91cDIsIGdyb3VwMyZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiAgQmFzaWNhbGx5IG9ubHkgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGlmIHRoZXkgYmVsb25nIHRvIHRoYXQgcGFydGljdWxhciBncm91cChzKS48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9JnF1b3Q7MSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiBoaXMgd2lsbCBkaXNuYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmFtcDtjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSI+JmFtcDtsdDtjYWxndXkxMDAwQGhvdG1haWwuY29tJmFtcDtndDs8L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE5NTk1NDcxOTMuMTIxMzg2NTc4My4xMjE1MjAxOTEwLjEyMTUzNDAxNjMuMjgnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjE0MDU2MzQ1LjEwLjQudXRtY2NuPShyZWZlcnJhbCl8dXRtY3NyPWRldi5jbXNtYWRlc2ltcGxlLm9yZ3x1dG1jY3Q9L2ZvcnVtL2ZvcnVtLnBocHx1dG1jbWQ9cmVmZXJyYWwnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0xlcyBwYXJhbSZlZ3JhdmU7dHJlcyBzdWl2YW50cyBuZSBzJiMwMzk7YXBwbGlxdWVudCBxdWUgc2kgdm91cyB1dGlsaXNleiBsZSBtb2R1bGUgU2VsZiBSZWdpc3RyYXRpb24gcGVybWV0dGFudCBkZXMgZW5yZWdpc3RyZW1lbnQgcGF5YW50JzsKJGxhbmdbJ25vbmUnXSA9ICdBdWN1bic7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ1N1cHByaW1lciBsJiMwMzk7dXRpbGlzYXRldXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdFeHBpcmV6IHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gJmFncmF2ZTsgZWZmZWN0dWVyIHF1YW5kIHVuIG9yZHJlIGRlIHNvdXNjcmlwdGlvbiBlc3QgYW5udWwmZWFjdXRlO2UnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gJmFncmF2ZTsgZWZmZWN0dWVyIHF1YW5kIHVuIG9yZHJlIGRlIHNvdXNjcmlwdGlvbiBlc3Qgc3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIEVjb21tZXJjZSc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcmtlciBzJmVhY3V0ZTtjdXJpcyZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdDaGFtcCBjb2xvciZlYWN1dGU7IHMmZWFjdXRlO2N1cmlzJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9ja2VyIGNlcyBkb25uJmVhY3V0ZTtlcyBjcnlwdCZlYWN1dGU7ZXMgZGFucyBsYSBiYXNlIGRlIGRvbm4mZWFjdXRlO2VzJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ0wmIzAzOTtvcHRpb24gY2hvaXNpZSBuJiMwMzk7ZXN0IHBhcyBzdXBwb3J0JmVhY3V0ZTtlIGF2ZWMgbGEgY29uZmlndXJhdGlvbiBhY3R1ZWxsZSc7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdVdGlsaXNhdGV1ciBjciZlYWN1dGU7JmVhY3V0ZTsgYXV0b21hdGlxdWVtZW50JzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ1NpIHVuIHV0aWxpc2F0ZXVyIGVzdCBhdXRoZW50aWZpJmVhY3V0ZTsgcGFyIHVuIG1vZHVsZSBleHRlcm5lIGQmIzAzOTthdXRoZW50aWZpY2F0aW9uLCBtYWlzIGVzdCBpbmNvbm51IGRhbnMgbGUgbW9kdWxlIEZyb250RW5kVXNlcnMsIHVuIGNvbXB0ZSBGRVUgZG9pdC1pbCAmZWNpcmM7dHJlIGNyJmVhY3V0ZTsmZWFjdXRlOyBhdXRvbWF0aXF1ZW1lbnQgPyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0NyJmVhY3V0ZTsmZWFjdXRlO3IgYXV0b21hdGlxdWVtZW50IGxlcyB1dGlsaXNhdGV1cnMgaW5jb25udXMmbmJzcDsnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0FmZmljaGVyIGxlcyByJmVhY3V0ZTtnbGFnZXMnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ0xlcyByJmVhY3V0ZTtnbGFnZXMgc3VpdmFudHMgbmUgc29udCBhcHBsaWNhYmxlcyBxdSYjMDM5O2F2ZWMgJnF1b3Q7bCYjMDM5O0F1dGhlbnRpZmljYXRpb24gaW50JmVhY3V0ZTtnciZlYWN1dGU7ZSZxdW90Oy4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ0Nob2lzaXIgTm9uIGQmZWFjdXRlO3NhY3RpdmUgbGEgcG9zc2liaWxpdCZlYWN1dGU7IHBvdXIgdW4gdXRpbGlzYXRldXIgZCYjMDM5O3V0aWxpc2VyIGxhIGZvbmN0aW9uIGRlIHImZWFjdXRlO2N1cCZlYWN1dGU7cmF0aW9uIGRlcyBpZGVudGlmaWFudHMsIGluZCZlYWN1dGU7cGVuZGFtbWVudCBkZXMgYXV0cmVzIHImZWFjdXRlO2dsYWdlcyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnQ2hvaXNpciBOb24gZCZlYWN1dGU7c2FjdGl2ZSBsYSBwb3NzaWJpbGl0JmVhY3V0ZTsgcG91ciB1biB1dGlsaXNhdGV1ciBkZSByJmVhY3V0ZTtpbml0aWFsaXNlciBzb24gbW90IGRlIHBhc3NlLCBpbmQmZWFjdXRlO3BlbmRhbW1lbnQgZGVzIGF1dHJlcyByJmVhY3V0ZTtnbGFnZXMnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQXV0b3Jpc2VyIGxlcyB1dGlsaXNhdGV1cnMgJmFncmF2ZTsgZGVtYW5kZXIgbGV1ciBpZGVudGlmaWFudCZuYnNwOyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBdXRvcmlzZXIgbGVzIHV0aWxpc2F0ZXVycyAmYWdyYXZlOyBkZW1hbmRlciB1biBjaGFuZ2VtZW50IGRlIG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnUGFyYW0mZWFjdXRlO3RyZXMgZCYjMDM5O2F1dGhlbnRpZmljYXRpb24nOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdBdXRoZW50aWZpY2F0aW9uIGludCZlYWN1dGU7Z3ImZWFjdXRlO2UnOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnQXV0aGVudGlmaWNhdGlvbiBTdGFuZGFyZCBkZSBGRVUnOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdNb2R1bGUvTSZlYWN1dGU7dGhvZGUgZCYjMDM5O2F1dGhlbnRpZmljYXRpb24mbmJzcDsnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0xlIG1vZHVsZSBGcm9udEVuZFVzZXJzIHN1cHBvcnRlIGwmIzAzOTt1dGlsaXNhdGlvbiBkZSBtJmVhY3V0ZTt0aG9kZSBhbHRlcm5hdGl2ZXMgZCYjMDM5O2F1dGhlbnRpZmljYXRpb24sIGF2ZWMgZGVzIGNhcGFjaXQmZWFjdXRlO3MgdmFyaWFibGVzLiBDZXJ0YWluZXMgZm9uY3Rpb25uYWxpdCZlYWN1dGU7cyBuZSB2b250IHBhcyBmb25jdGlvbm5lciBvdSBzZXJvbnQgZCZlYWN1dGU7c2FjdGl2JmVhY3V0ZTtlcyBzaSBsYSBtJmVhY3V0ZTt0aG9kZSBkJiMwMzk7YXV0aGVudGlmaWNhdGlvbiBpbnQmZWFjdXRlO2dyJmVhY3V0ZTtlIG4mIzAzOTtlc3QgcGFzIHV0aWxpcyZlYWN1dGU7ZS4nOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdMYSB2YWxldXIgc3AmZWFjdXRlO2NpZmkmZWFjdXRlO2UgcG91ciAlIHMgZXN0IGQmZWFjdXRlO2omYWdyYXZlOyB1dGlsaXMmZWFjdXRlO2UgcGFyIHVuIGF1dHJlIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSAnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnTGEgdmFsZXVyIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTtlIHBvdXIgJSBzICglIHMpIG4mIzAzOTtlc3QgcGFzIHVuaXF1ZSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yY2VyIGxhIHZhbGV1ciBkZSBjZXR0ZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBwb3VyICZlY2lyYzt0cmUgdW5pcXVlIGRhbnMgdG91cyBsZXMgY29tcHRlcyB1dGlsaXNhdGV1cnMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXRpbGlzJmVhY3V0ZTsgYXZlYyBsZXMgZm9ybXVsYWlyZXMgbG9naW4gZXQgbG9nb3V0LCBzaSBjZSBwYXJhbSZlZ3JhdmU7dHJlIGVzdCBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7LCBpbCBpbmRpcXVlcmEgcXVlIGwmIzAzOTt1dGlsaXNhdGV1ciBkb2l0ICZlY2lyYzt0cmUgcmVudm95JmVhY3V0ZTsgdmVycyBsYSBwYWdlIChwYXIgVVJMKSBxdWUgbCYjMDM5O3V0aWxpc2F0ZXVyIGF2YWl0IGFmZmljaCZlYWN1dGU7IGF2YW50IGwmIzAzOTthY3Rpb24uIENlIHBhcmFtJmVncmF2ZTt0cmUgcmVtcGxhY2UgbGVzIHByJmVhY3V0ZTtmJmVhY3V0ZTtyZW5jZXMgZGUgcmVkaXJlY3Rpb24sIGV0IGxlIHBhcmFtJmVncmF2ZTt0cmUgJnF1b3Q7cmV0dXJudG8mcXVvdDsnOwokbGFuZ1snaGVscF9ub2lubGluZSddID0gJ1V0aWxpcyZlYWN1dGU7IGF2ZWMgbCYjMDM5O3VuIGRlcyBmb3JtdWxhaXJlcywgY2UgcGFyYW0mZWdyYXZlO3RyZSBzcCZlYWN1dGU7Y2lmaWUgcXVlIGxlcyBmb3JtdWxhaXJlcyBuZSBkZXZyYWllbnQgcGFzICZlY2lyYzt0cmUgbWlzIGVuIGxpZ25lLCBhdSBjb250cmFpcmUgbGUgciZlYWN1dGU7c3VsdGF0IGRlIHNvdW1pc3Npb24gZHUgZm9ybXVsYWlyZSByZW1wbGFjZXJhIGxlIGJsb2MgZGUgY29udGVudSBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0aXRsZV9yZXNldF9zZXNzaW9uJ10gPSAnQXZlcnRpc3NlbWVudCBkZSBmaW4gZGUgc2Vzc2lvbic7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1ZvdHJlIHNlc3Npb24gdmEgYmllbnQmb2NpcmM7dCBleHBpcmVyLCB2ZXVpbGxleiBjbGlxdWVyIHN1ciAmcXVvdDtPSyZxdW90OyBwb3VyIHJlc3RlciBjb25uZWN0JmVhY3V0ZTsoZSkuJzsKJGxhbmdbJ29rJ10gPSAnT0snOwokbGFuZ1sncmVzZXRzZXNzaW9uX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSByZW1pc2UgJmFncmF2ZTsgeiZlYWN1dGU7cm8gZGUgc2Vzc2lvbiAnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnQ2VjaSBlc3QgbGUgbm9tIGR1IGNoYW1wICh1dGlsaXMmZWFjdXRlOyBhdmVjIFNtYXJ0eSkuIElsIGRvaXQgY29tcG9ydGVyIHVuaXF1ZW1lbnQgZGVzIGNhcmFjdCZlZ3JhdmU7cmVzIGFscGhhbnVtJmVhY3V0ZTtyaXF1ZXMgb3UgZGVzIHVuZGVyc2NvcmUgKF8pLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdGV1cnMnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmV6IHVuIG91IHBsdXNpZXVycyBncm91cGVzIEZFVSBxdWkgc29udCBhdXRvcmlzJmVhY3V0ZTtzICZhZ3JhdmU7IGFjYyZlYWN1dGU7ZGVyICZhZ3JhdmU7IGNldHRlIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ1VuIGdyb3VwZSBkb2l0ICZlY2lyYzt0cmUgcyZlYWN1dGU7bGVjdGlvbm4mZWFjdXRlOyc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmVyIHVuIGdyb3VwZSc7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnQW5uJmVhY3V0ZTtlIGRlIGQmZWFjdXRlO2J1dCc7CiRsYW5nWydlbmRfeWVhciddID0gJ0FubiZlYWN1dGU7ZSBkZSBmaW4nOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGFpbGxlIGRlIHZpZ25ldHRlJm5ic3A7JzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdMb3JzcXUmIzAzOTt1biBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3QgbW9kaWZpJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVHJvcCBkJiMwMzk7dXRpbGlzYXRldXJzIHNvbnQgcyZlYWN1dGU7bGVjdGlvbm4mZWFjdXRlO3MgcG91ciBsZXMgb3AmZWFjdXRlO3JhdGlvbnMgLi4uLiBNZXJjaSBkZSByJmVhY3V0ZTtkdWlyZSAmYWdyYXZlOyAyNTAgb3UgbW9pbnMnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICcmRWNpcmM7dGVzIHZvdXMgcyZ1Y2lyYztyKGUpIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGxlcyB1dGlsaXNhdGV1cnMgcyZlYWN1dGU7bGVjdGlvbm4mZWFjdXRlO3MgPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTdXBwcmltZXIgbGEgcyZlYWN1dGU7bGVjdGlvbic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHJmVhY3V0ZTtuJmVhY3V0ZTtyZXIgdW4gbm9tIGQmIzAzOTt1dGlsaXNhdGV1ciBhdSBoYXNhcmQgbG9ycyBkZSBsJiMwMzk7YWpvdXQgZGUgbm91dmVhdXggdXRpbGlzYXRldXJzJm5ic3A7JzsKJGxhbmdbJ21vbnRocyddID0gJ21vaXMnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1AmZWFjdXRlO3Jpb2RlIGQmIzAzOTtleHBpcmF0aW9uIHBhciBkJmVhY3V0ZTtmYXV0IHBvdXIgbCYjMDM5O3V0aWxpc2F0ZXVyICAnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgZGUgbm90aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgZGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBkZSByZWRpcmVjdGlvbiZuYnNwOyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgZyZlYWN1dGU7biZlYWN1dGU7cmF1eCZuYnNwOyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgZGUgU2Vzc2lvbiBldCBDb29raWUmbmJzcDsnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdQYXJhbSZlZ3JhdmU7dHJlcyBkZXMgY2hhbXBzJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ0xlIGRyYXBlYXUgJnF1b3Q7ZGVtYW5kZSBsb3JzIGRlIGxhIHImZWFjdXRlO2N1cCZlYWN1dGU7cmF0aW9uIGRlIGwmIzAzOTtpZGVudGlmaWFudCZxdW90OyBuZSBwZXV0ICZlY2lyYzt0cmUgdXRpbGlzJmVhY3V0ZTsgcXVlIHN1ciBsZXMgY2hhbXBzIG9ibGlnYXRvaXJlcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdQZXJtZXR0cmUgbCYjMDM5O3V0aWxpc2F0aW9uIGRlIGwmIzAzOTsmZWFjdXRlO2RpdGV1ciB2aXN1ZWwgKFdZU0lXWUcpIHN1ciBjZXR0ZSB6b25lIGRlIHRleHRlJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGUgOiA8L3N0cm9uZz4gY2VsYSB1dGlsaXNlIGxhIGZvbmN0aW9uIGRlIGNyeXB0YWdlIG1jcnlwdCwgZXQgbmUgcG91dmFpdCBwYXMgJmVjaXJjO3RyZSBkJmVhY3V0ZTt0ZWN0JmVhY3V0ZTsgbG9ycyBkZSB2b3RyZSBpbnN0YWxsYXRpb24uIE1lcmNpIGRlIGNvbnRhY3RlciBsJiMwMzk7YWRtaW5pc3RyYXRldXIgZHUgc2VydmV1ci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGlvbiBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOZSBwYXMgbWV0dHJlIGVuIGxpZ25lIGxlcyBmb3JtdWxhaXJlcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgaWRlbnRpZmlhbnQnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVleiBpY2kgcG91ciB2b3VzIGQmZWFjdXRlO2Nvbm5lY3Rlcic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpcXVleiBpY2kgcG91ciBtb2RpZmllciB2b3RyZSBtb3QgZGUgcGFzc2UgZXQgZCYjMDM5O2F1dHJlcyBpbmZvcm1hdGlvbnMnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWdWUgZ2FiYXJpdCB1dGlsaXNhdGV1ciZuYnNwOyc7CiRsYW5nWydldmVudCddID0gJyZFYWN1dGU7diZlYWN1dGU7bmVtZW50JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdOb3RpZmljYXRpb24gZCYjMDM5OyZlYWN1dGU7diZlYWN1dGU7bmVtZW50IG1vZHVsZSBGcm9udEVuZFVzZXInOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnQWRyZXNzZSBlbWFpbCBwb3VyIGxhIG5vdGlmaWNhdGlvbiZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkJiMwMzk7ZW1haWwgcG91ciBsYSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnU3VqZXQgZGUgbCYjMDM5O2VtYWlsIHBvdXIgbGEgbm90aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnTm90aWZpY2F0aW9ucyBwYXIgZW1haWwmbmJzcDsnOwokbGFuZ1snT25Mb2dpbiddID0gJyZBZ3JhdmU7IGxhIGNvbm5leGlvbic7CiRsYW5nWydPbkxvZ291dCddID0gJyZBZ3JhdmU7IGxhIGQmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICcmQWdyYXZlOyBsJiMwMzk7ZXhwaXJhdGlvbiBkZSBsYSBzZXNzaW9uJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ0xvcnNxdSYjMDM5O3VuIG5vdXZlbCB1dGlsaXNhdGV1ciBlc3QgY3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0xvcnNxdSYjMDM5O3VuIHV0aWxpc2F0ZXVyIGVzdCBzdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnTG9ycyBkZSBjaGFuZ2VtZW50IGRlIHBhcmFtJmVncmF2ZTt0cmVzIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdMb3JzcXUmIzAzOTt1biBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3QgY3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdMb3JzcXUmIzAzOTt1biBncm91cGUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3Qgc3VwcHJpbSZlYWN1dGU7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnTGEgZm9uY3Rpb24gZGUgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGVzIGQmZWFjdXRlO3RhaWxzIGRlIGxvZ2luIG91YmxpJmVhY3V0ZTsgZXN0IHRlcm1pbiZlYWN1dGU7ZS4gTm91cyBhdm9ucyB0cm91diZlYWN1dGU7IHVuIGlkZW50aWZpYW50IHVuaXF1ZSBxdWkgY29ycmVzcG9uZCBhdXggZCZlYWN1dGU7dGFpbHMgcXVlIHZvdXMgYXZleiBlbnRyJmVhY3V0ZTtzLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnVm90cmUgaWRlbnRpZmlhbnQgZXN0JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ05vdXMgdm91cyByZWNvbW1hbmRvbnMgZCYjMDM5O2VucmVnaXN0cmVyIGNldHRlIGluZm9ybWF0aW9uIGRhbnMgdW4gZW5kcm9pdCBzJnVjaXJjO3IsIG1haXMgZmFjaWxlICZhZ3JhdmU7IHJldHJvdXZlciBwb3VyIHZvdXMuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgbyZ1Z3JhdmU7IHNlIHJlbmRyZSBhcHImZWdyYXZlO3MgbGEgbW9kaWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0wmIzAzOTtJRCBvdSBsJiMwMzk7YWxpYXMgZGUgbGEgcGFnZSBvJnVncmF2ZTsgc2UgcmVuZHJlIGFwciZlZ3JhdmU7cyBsYSB2JmVhY3V0ZTtyaWZpY2F0aW9uIGR1IGNvZGUgKiZuYnNwOyc7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZXMgZCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBwb3VyIGxhIGNvbmZpcm1hdGlvbiBkZSBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZXMgZCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyZXVyJm5ic3A7OiBQbHVzIGQmIzAzOTt1biB1dGlsaXNhdGV1ciBjb3JyZXNwb25kIGF1eCBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgZCZlYWN1dGU7ZmluaWVzJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0VycmV1ciZuYnNwOzogSW1wb3NzaWJsZSBkZSB0cm91dmVyIHVuIHV0aWxpc2F0ZXVyIGNvcnJlc3BvbmRhbnQnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0VycmV1ciZuYnNwOzogSW1wb3NzaWJsZSBkZSB0cm91dmVyIHVuIGdyb3VwZSBkZSBjZSBub20nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdMZWN0dXJlIHNldWxlJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdDbGFzc2UgZGUgbWFuaXB1bGF0aW9uIGRlcyBpZGVudGlmaWFudHMmbmJzcDsnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnRCZlYWN1dGU7Y29ubmVjdCZlYWN1dGU7IHBhciB1biBhZG1pbmlzdHJhdGV1cic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnQWZmaWNoZSB1bmlxdWVtZW50IGxlcyB1dGlsaXNhdGV1cnMgY29ubmVjdCZlYWN1dGU7cyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRCZlYWN1dGU7Y29ubmVjdGVyIGNldCB1dGlsaXNhdGV1cic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnSGlzdG9yaXF1ZSBkZSBsJiMwMzk7dXRpbGlzYXRldXInOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0ZXInOwokbGFuZ1snY2xlYXInXSA9ICdWaWRlcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRlciBlbiBBU0NJSSBsJiMwMzk7aGlzdG9yaXF1ZSB1dGlsaXNhdGV1ciBxdWkgYSBtb2lucyBkZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1ZpZGVyIGwmIzAzOTtoaXN0b3JpcXVlIHV0aWxpc2F0ZXVyIHF1aSBhIHBsdXMgZGUmbmJzcDsnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnQXZlei12b3VzIG91YmxpJmVhY3V0ZTsgdm90cmUgaWRlbnRpZmlhbnQgPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRlciBsYSBkJmVhY3V0ZTtmaW5pdGlvbiBkdSBncm91cGUgKGV0IHNlcyBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MpIGF1IGZvcm1hdCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ01haW50ZW5hbmNlIGRlIGwmIzAzOTtoaXN0b3JpcXVlIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3llcyddID0gJ091aSc7CiRsYW5nWydubyddID0gJ05vbic7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdkZSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBOb24gbGltaXQmZWFjdXRlOyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICcxIGhldXJlJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJzYgaGV1cmVzJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJzEyIGhldXJlcyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJzEgam91cic7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICcxIHNlbWFpbmUnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJzIgc2VtYWluZXMnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJzEgbW9pcyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnMyBtb2lzJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnNiBtb2lzJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJzEgYW4nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3JvdXBlciBldCB0cmllciZuYnNwOyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnRW5yZWdpc3RyZW1lbnRzIHF1aSBjb3JyZXNwb25kZW50IGF1eCBjcml0JmVncmF2ZTtyZXMnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdPcmRyZSBkZXNjZW5kYW50IGRlcyBub21zIGQmIzAzOTt1dGlsaXNhdGV1cnMnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ09yZHJlIGFzY2VuZGFudCBkZXMgbm9tcyBkJiMwMzk7dXRpbGlzYXRldXJzJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdPcmRyZSBkZXNjZW5kYW50IGRlIGxhIGRhdGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnT3JkcmUgYXNjZW5kYW50IGRlIGxhIGRhdGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkdSB0eXBlIGQmIzAzOTsmZWFjdXRlO3YmZWFjdXRlO25lbWVudCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ09yZHJlIGFzY2VuZGFudCBkdSB0eXBlIGQmIzAzOTsmZWFjdXRlO3YmZWFjdXRlO25lbWVudCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdPcmRyZSBkZXNjZW5kYW50IGRlIGwmIzAzOTthZHJlc3NlIElQJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnT3JkcmUgYXNjZW5kYW50IGRlIGwmIzAzOTthZHJlc3NlIElQJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdBdWN1biBoaXN0b3JpcXVlIGQmZWFjdXRlO3RlY3QmZWFjdXRlOyc7CiRsYW5nWydyZXNldCddID0gJ1ImZWFjdXRlO2luaXRpYWxpc2VyJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dyb3VwZXIgcGFyIGFkcmVzc2UgSVAmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0cmUgZGUgdHlwZSBkJiMwMzk7JmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnQWZmaWNoZSB1bmlxdWVtZW50IGxlcyAmZWFjdXRlO3YmZWFjdXRlO25lbWVudHMgcXVpIG9uIG1vaW5zIGRlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMaW1pdGUgZGUgcGFnZSZuYnNwOyc7CiRsYW5nWydmb3InXSA9ICdwb3VyJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnUmFwcG9ydCBkJiMwMzk7aGlzdG9yaXF1ZSBkJiMwMzk7dXRpbGlzYXRldXInOwokbGFuZ1sndW5rbm93biddID0gJ0luY29ubnUnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0FkcmVzc2UgSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1R5cGUgZCYjMDM5OyZlYWN1dGU7diZlYWN1dGU7bmVtZW50JzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0ZSAnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1JldG91cic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnT3AmZWFjdXRlO3JhdGlvbiBkJiMwMzk7aW1wb3J0YXRpb24gdGVybWluJmVhY3V0ZTtlJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpZ25lcyBlZmZlY3R1JmVhY3V0ZTtlcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyZXVycyByZW5jb250ciZlYWN1dGU7ZXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0VucmVncmlzdHJlbWVudHMgYWpvdXQmZWFjdXRlO3MnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciBkZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIHBvdXIgbGUgZ3JvdXBlICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQXVjdW5lIHImZWFjdXRlO3BvbnNlIGR1IHNlcnZldXIgU01UUCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGUgZmljaGllciBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7ICglcyknOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1ZhbGV1ciBpbnZhbGlkZSBwb3VyIGxlIGNoYW1wIG1lbnUgZCZlYWN1dGU7cm91bGFudCBvdSBtdWx0aXMmZWFjdXRlO2xlY3Rpb24gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdMZSBjaGFtcCAlcyBkJmVhY3V0ZTtwYXNzZSBsYSBsb25ndWV1ciBtYXhpbWFsZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0VycmV1ciBkJiMwMzk7aW1wb3J0YXRpb24gKGxpZ25lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0ltcG9zc2libGUgZCYjMDM5O29idGVuaXIgbGVzIGQmZWFjdXRlO2Zpbml0aW9ucyBkZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyAoZXJyZXVyIGludGVybmUpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsJmVncmF2ZTttZSBsb3JzIGRlIGxhIGQmZWFjdXRlO2Zpbml0aW9uIGRlcyBpbmZvcyB1dGlsaXNhdGV1cic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnSW1wb3NzaWJsZSBkZSB0cm91dmVyIHVuZSBjb2xvbm5lIHF1aSBjb3JyZXNwb25kIGF1IGNoYW1wIHJlcXVpcyAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciBsZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIHBvdXIgbGUgZ3JvdXBlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ0xlIGZpY2hpZXIgc3AmZWFjdXRlO2NpZmkmZWFjdXRlOyBwb3VyIGwmIzAzOTtpbXBvcnRhdGlvbiBuJiMwMzk7ZXN0IHBhcyBhdSBib24gZm9ybWF0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdJbXBvc3NpYmxlIGQmIzAzOTtvdXZyaXIgbGUgZmljaGllcic7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5JbmZvcm1hdGlvbiBzdXIgbGUgZm9ybWF0IGR1IGZpY2hpZXI8L2g0Pg0KPHA+TGUgZmljaGllciBkb2l0ICZlY2lyYzt0cmUgZW4gZm9ybWF0IEFTQ0lJIGF2ZWMgbGVzIHZhbGV1cnMgcyZlYWN1dGU7cGFyJmVhY3V0ZTtlcyBwYXIgZGVzIHZpcmd1bGVzLiBDaGFxdWUgbGlnbmUgZGUgY2UgZmljaGllciAoJmFncmF2ZTsgbCYjMDM5O2V4Y2VwdGlvbiBkZSBsYSBsaWduZSBkJiMwMzk7ZW4tdCZlY2lyYzt0ZSwgdm9pciBwbHVzIGJhcykgcmVwciZlYWN1dGU7c2VudCB1biBlbnJlZ2lzdHJlbWVudCB1dGlsaXNhdGV1ci4gQ2hhcXVlIGxpZ25lciBkb2l0IGNvbnRlbmlyIGxlIG0mZWNpcmM7bWUgbm9tYnJlIGRlIGNoYW1wLCBldCBsJiMwMzk7b3JkcmUgZGVzIGNoYW1wcyBkYW5zIGNoYXF1ZSBsaWduZSBkb2l0ICZlY2lyYzt0cmUgaWRlbnRpcXVlLjwvcD4NCjxoNT5MaWduZSBkJiMwMzk7ZW4tdCZlY2lyYzt0ZTwvaDU+DQo8dWw+DQo8bGk+TGEgcHJlbWkmZWdyYXZlO3JlIGxpZ25lIGR1IGZpY2hpZXIgZG9pdCBjb21tZW5jZXIgcGFyIDIgZGkmZWdyYXZlO3NlcyAoXCMpLCBldCBub21tZSBjaGFjdW4gZGVzIGNoYW1wcyBkYW5zIGxlIGZpY2hpZXIuIExlcyBub21zIGRlIGNlcyBjaGFtcHMgc29udCBpbXBvcnRhbnRzLiBJbCB5IGEgcXVlbHF1ZXMgbm9tcyBkZSBjaGFtcHMgcmVxdWlzICh2b2lyIGNpLWRlc3NvdXMpLCBldCBwb3VyIGxlcyBhdXRyZXMgY2hhbXBzLCBpbHMgZG9pdmVudCBjb3JyZXNwb25kcmUgYXV4IHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBhc3NvY2kmZWFjdXRlO2VzIGF1IGdyb3VwZSBkJiMwMzk7dXRpbGlzYXRldXJzIGRhbnMgbGVxdWVsIGNlIGZpY2hpZXIgdmEgJmVjaXJjO3RyZSBpbXBvcnQmZWFjdXRlOy48L2xpPg0KPGxpPkxlIHByb2Nlc3N1cyBkJiMwMzk7aW1wb3J0YXRpb24gJmVhY3V0ZTtjaG91ZXJhIHNpIGxlIGZpY2hpZXIgZCYjMDM5O2ltcG9ydCBuZSBjb3JyZXNwb25kIHBhcyAmYWdyYXZlOyB0b3V0ZXMgbGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBhc3NvY2kmZWFjdXRlO2VzIGF1IGdyb3VwZSBkJiMwMzk7dXRpbGlzYXRldXJzIGRhbnMgbGVxdWVsIGNlIGZpY2hpZXIgdmEgJmVjaXJjO3RyZSBpbXBvcnQmZWFjdXRlOy48L2xpPg0KPGxpPkxlIGZpY2hpZXIgcGV1dCBjb250ZW5pciBkZXMgY2hhbXBzIHJlcHImZWFjdXRlO3NlbnRhbnQgbGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBvcHRpb25uZWxsZXMgZHUgZ3JvdXBlIHNwJmVhY3V0ZTtjaWZpJmVhY3V0ZTsuPC9saT4NCjxsaT5MZSBwcm9jZXNzdXMgZCYjMDM5O2ltcG9ydGF0aW9uIGlnbm9yZXJhIHRvdXQgY2hhbXAgZHUgZmljaGllciBxdWkgZXN0IHNvaXQgaW5jb25udSwgb3UgcXVpIG5lIGNvcnJlc3BvbmQgcGFzIGF1eCBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgcXVpIHNvbnQgPGVtPmQmZWFjdXRlO3NhY3RpdiZlYWN1dGU7ZXM8L2VtPiBkYW5zIGxlIGdyb3VwZSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7LjwvbGk+DQo8L3VsPg0KPGg1PkRvbm4mZWFjdXRlO2VzIHRhYnVsYWlyZXM8L2g1Pg0KPHVsPg0KPGxpPkxlIGNoYW1wIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IChlbiBhbmdsYWlzKSAtIExlIG51bSZlYWN1dGU7cm8gZCYjMDM5O2lkZW50aWZpYW50IHVuaXF1ZSBwb3VyIHVuIHV0aWxpc2F0ZXVyLiBBIHZhbHVlIGluIHRoaXMgZmllbGQgd2lsbCBpbmRpY2F0ZSB5b3UgYXJlIGRvaW5nIGFuIHVwZGF0ZS48L2xpPg0KPGxpPkxlIGNoYW1wIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gKGVuIGFuZ2xhaXMpIC0gTGUgbm9tIGQmIzAzOTt1dGlsaXNhdGV1ciBkJmVhY3V0ZTtzaXImZWFjdXRlOy4NCiAgICA8cD5DZSBjaGFtcCBkb2l0IGV4aXN0ZXIgZGFucyBsYSBsaWduZSBkJiMwMzk7ZW4tdCZlY2lyYzt0ZSwgZXQgZG9pdCAmZWNpcmM7dHJlIHJlbXBsaSBkYW5zIGNoYWN1bmUgZGVzIGxpZ25lcyBkdSBmaWNoaWVyIGQmIzAzOTtpbXBvcnRhdGlvbi4gTCYjMDM5O2VucmVnaXN0cmVtZW50ICZlYWN1dGU7Y2hvdWVyYSBzaSB1biB1dGlsaXNhdGV1ciBkdSBtJmVjaXJjO21lIG5vbSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7IGRhbnMgbGEgYmFzZSBkZSBkb25uJmVhY3V0ZTtlcy48L3A+PC9saT4NCjxsaT5MZSBjaGFtcCA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IChlbiBhbmdsYWlzKSAtIGxlIG1vdCBkZSBwYXNzZSBwb3VyIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8bGk+TGUgY2hhbXAgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IChlbiBhbmdsYWlzKSAtIGxhIGRhdGUgZGUgY3ImZWFjdXRlO2F0aW9uIHBvdXIgbCYjMDM5O3V0aWxpc2F0ZXVyPC9saT4NCjxsaT5MZSBjaGFtcCA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gKGVuIGFuZ2xhaXMpIC0gbGEgZGF0ZSBkJiMwMzk7ZXhwaXJhdGlvbiBwb3VyIGwmIzAzOTt1dGlsaXNhdGV1cjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+Z3JvdXBuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGdyb3VwcyB0aGF0IHlvdSB3YW50IHRvIGhhdmUgdGhlIHVzZXIgYmUgYSBtZW1iZXIgb2YuIElmIGFsbCByZXF1aXJlZCBmaWVsZHMgYXJlIG5vdCBmaWxsZWQgaW4gdGhlIGluc2VydC91cGRhdGUgb2YgdGhlIHJlY29yZCB3aWxsIGZhaWwuIFNlZSBNdWx0aXNlbGVjdCBGaWVsZHMgYmVsb3cgZm9yIHN5bnRheC48L2xpPg0KPGxpPkNoYW1wIGQmZWFjdXRlO3JvdWxhbnRzL0JvdXRvbiByYWRpbw0KICAgIDxwPkxhIHZhbGV1ciBkZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIGRlIGNoYW1wIGQmZWFjdXRlO3JvdWxhbnQgZGFucyBsZSBmaWNoaWVyIGQmIzAzOTtpbXBvcnRhdGlvbiBlc3QgcmVwciZlYWN1dGU7c2VudCZlYWN1dGU7ZSBwYXIgbGUgdGV4dGUgcXVpIGVzdCBhZmZpY2gmZWFjdXRlOyBkYW5zIGxlIGNoYW1wIGQmZWFjdXRlO3JvdWxhbnQgZGFucyBsZSBtb2R1bGUgRnJvbnRFbmRVc2Vycy48L3A+DQo8L2xpPg0KPGxpPkNoYW1wcyAmYWdyYXZlOyBtdWx0aXMmZWFjdXRlO2xlY3Rpb24NCiAgICA8cD5MZXMgY2hhbXBzICZhZ3JhdmU7IG11bHRpcyZlYWN1dGU7bGVjdGlvbiBzb250IGNvbnRlbnVzIGRhbnMgbGUgZmljaGllciBBU0NJSSBlbiB0YW50IHF1ZSZuYnNwOzogdW5lIGxpc3RlIHMmZWFjdXRlO3BhciZlYWN1dGU7ZSBkZSB0ZXh0ZXMsIG91IGNoYXF1ZSB0ZXh0ZSByZXByJmVhY3V0ZTtzZW50ZSBsZSB0ZXh0ZSBhZmZpY2gmZWFjdXRlOyBkYW5zIGxhIGxpc3RlICZhZ3JhdmU7IG11bHRpcyZlYWN1dGU7bGVjdGlvbjwvcD4NCjwvbGk+DQo8bGk+Q2hhbXBzIERhdGVzIA0KICAgIDxwPkRvaXZlbnQgJmVjaXJjO3RyZSBkYW5zIGxlIGZvcm1hdCBNTS1ERC1ZWVlZPC9wPg0KPC9saT4NCjxsaT5DaGFtcHMgaW1hZ2VzDQogICAgPHA+TGVzIGltYWdlcyBzb250IGRlcyBjaGFtcHMgZG9udCBsZSBub20gZGUgY29sb25uZSBjb3JyZXNwb25kICZhZ3JhdmU7IHVuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBkZSB0eXBlIEltYWdlLiBTaSBjZSBjaGFtcCBlc3QgcmVxdWlzIGRhbnMgbGUgZ3JvdXBlIGRlIGRlc3RpbmF0aW9uLCBhbG9ycyBsZSBub20gc3AmZWFjdXRlO2NpY2kmZWFjdXRlOyBkYW5zIGNlcyBjb2xvbm5lcyBkb2l0IGV4aXN0ZXIgZGFucyBsZSBkb3NzaWVyICZxdW90O3VwbG9hZHMmcXVvdDsgZGUgbCYjMDM5O2luc3RhbGxhdGlvbiBkZSBDTVMgTWFkZSBTaW1wbGUuIFNpIGwmIzAzOTtpbWFnZSBuJiMwMzk7ZXhpc3RlIHBhcywgYW5kIHF1ZSBsZSBjaGFtcCBlc3QgcmVxdWlzLCBsJiMwMzk7ZW5yZWdpc3RyZW1lbnQgJmVhY3V0ZTtjaG91ZXJhLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+TGUgcHJvY2Vzc3VzIGQmIzAzOTtpbXBvcnRhdGlvbiBlc3Qgc3VqZXQgYXV4IGxpbWl0YXRpb25zIGltcG9zJmVhY3V0ZTtlcyBwYXIgbCYjMDM5O2gmZWFjdXRlO2JlcmdldXIsIHRlbGxlcyBxdWUgbGltaXRhdGlvbiBkZSBtJmVhY3V0ZTttb2lyZSwgZGUgdGVtcHMgZCYjMDM5O2V4JmVhY3V0ZTtjdXRpb24sIGRlIHRhaWxsZSBtYXhpbWFsZSBkZSBmaWNoaWVyIHQmZWFjdXRlO2wmZWFjdXRlO2NoYXJnJmVhY3V0ZTssIGV0IGxlcyByZXN0cmljdGlvbnMgJnF1b3Q7c2FmZW1vZGUmcXVvdDsuIENoYWN1bmUgZGUgY2VzIGxpbWl0YXRpb25zIHBldXQgY2F1c2VyIGwmIzAzOTsmZWFjdXRlO2NoZWMgZGUgbCYjMDM5O2ltcG9ydGF0aW9uLiBEJmVncmF2ZTtzIGxvcnMsIGlsIGVzdCByZWNvbW1hbmQmZWFjdXRlOyBkZSBzJiMwMzk7YXNzdXJlciBxdWUgbGVzIGZpY2hpZXJzIGQmIzAzOTtpbXBvcnRhdGlvbiBzb2llbnQgcGV0aXRzIGVuIHRhaWxsZSwgZXQgZGUgbmF0dXJlIHNpbXBsZS48L3A+DQo8cD5NYWxnciZlYWN1dGU7IHF1ZSB0b3V0IGFpZSAmZWFjdXRlO3QmZWFjdXRlOyBlbnRyZXByaXMgYWZpbiBkZSBzJiMwMzk7YXNzdXJlciBxdSYjMDM5O2F1Y3VuZSBjb3JydXB0aW9uIGRlIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMgbmUgc3Vydmllbm5lLCBpbCBlc3QgcmVjb21tYW5kJmVhY3V0ZTsgZGUgZmFpcmUgdW5lIHNhdXZlZ2FyZGUgZGUgbGEgYmFzZSBkZSBkb25uJmVhY3V0ZTtlIGF2YW50IGQmIzAzOTtlZmZlY3R1ZXIgdW4gaW1wb3J0IGQmIzAzOTt1dGlsaXNhdGV1cnMuPC9wPg0KPHA+TCYjMDM5O2V4cG9ydGF0aW9uIGRlcyBkb25uJmVhY3V0ZTtlcyBlc3QgZGFucyBsZSBtJmVjaXJjO21lIGZvcm1hdCBwb3VyIGxlcyBiZXNvaW5zIGQmIzAzOTtpbXBvcnRhdGlvbi48L3A+DQo8aDU+RXhlbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAdW5kb21haW5lLmZyLHF1ZWxxdWVwYXJ0LFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0ZXIgbGVzIHV0aWxpc2F0ZXVycyBkYW5zIGNlIGdyb3VwZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdFbnRyZXIgdW4gZmljaGllciBDU1YmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdFbnRyZXIgdW4gZmljaGllciBYTUwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0ZXIgZGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRlciBkZXMgdXRpbGlzYXRldXJzJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1ZpZGVyJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQ2hlbWluIGRlIGRlc3RpbmF0aW9uIGRlIGwmIzAzOTtpbWFnZSZuYnNwOyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ1VuIHByb2JsJmVncmF2ZTttZSBlc3QgYXBwYXJ1IGF2ZWMgdW4gdCZlYWN1dGU7bCZlYWN1dGU7Y2hhcmdlbWVudCBtYW5xdWFudCAobWFpcyByZXF1aXMpJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdJbXBvc3NpYmxlIGQmIzAzOTthbmFseXNlciBsZSBmaWNoaWVyIFhNTCBmb3VybmknOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0ltcG9zc2libGUgZGUgc3VwcHJpbWVyIHVuIGdyb3VwZSBxdWkgY29udGllbnQgZW5jb3JlIGRlcyB1dGlsaXNhdGV1cnMnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0NldCB1dGlsaXNhdGV1ciBlc3QgZCZlYWN1dGU7aiZhZ3JhdmU7IGNvbm5lY3QmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdMZSB0ZXh0ZSBkZSBjZXR0ZSBpbWFnZSBuJiMwMzk7YSBwYXMgJmVhY3V0ZTt0JmVhY3V0ZTsgZW50ciZlYWN1dGU7IGNvcnJlY3RlbWVudCc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQXV0b3Jpc2VyIGxlcyB1dGlsaXNhdGV1cnMgJmFncmF2ZTsgJmVjaXJjO3RyZSBjb25uZWN0JmVhY3V0ZTtzIHBsdXMgZCYjMDM5O3VuZSBmb2lzJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdFeHRlbnNpb25zIGRlcyBmaWNoaWVycyBkJiMwMzk7aW1hZ2VzIHF1ZSBsZXMgdXRpbGlzYXRldXJzIHNvbnQgYXV0b3JpcyZlYWN1dGU7cyAmYWdyYXZlOyB0JmVhY3V0ZTtsJmVhY3V0ZTtjaGFyZ2VyJm5ic3A7JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPlVuICZlYWN1dGU7diZlYWN1dGU7bmVtZW50IGVzdCBnJmVhY3V0ZTtuJmVhY3V0ZTtyJmVhY3V0ZTsgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IHN1cHByaW0mZWFjdXRlOzwvcD4NCjxoND5QYXJhbSZlZ3JhdmU7dHJlczwvaDQ+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+PGVtPmlkPC9lbT4gLSBsJiMwMzk7aWQgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyIGRvbnQgbGEgc2Vzc2lvbiBhIGV4cGlyJmVhY3V0ZTs8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIHNlIGNvbm5lY3RlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIHNlIGQmZWFjdXRlO2Nvbm5lY3RlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1bmUgc2Vzc2lvbiBleHBpcmUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBjciZlYWN1dGU7JmVhY3V0ZTsnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBtaXMgJmFncmF2ZTsgam91ciAocGFyIGx1aS1tJmVjaXJjO21lIG91IHBhciB1biBhZG1pbiknOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBzdXBwcmltJmVhY3V0ZTsnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBncm91cGUgZXN0IGNyJmVhY3V0ZTsmZWFjdXRlOyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiAmZWFjdXRlO3YmZWFjdXRlO25lbWVudCBlc3QgZyZlYWN1dGU7biZlYWN1dGU7ciZlYWN1dGU7IHF1YW5kIHVuIGdyb3VwZSBlc3QgbWlzICZhZ3JhdmU7IGpvdXInOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnVW4gJmVhY3V0ZTt2JmVhY3V0ZTtuZW1lbnQgZXN0IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBxdWFuZCB1biBncm91cGUgZXN0IHN1cHByaW0mZWFjdXRlOyc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnR3JvdXBlJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJypMZXMgY2hhbXBzIHN1aXZhbnRzIHNvbnQgZ2FiYXJpdHMgU21hcnR5Ljxici8+QXZlYyBsZXMgdmFyaWFibGVzIGV4aXN0YW50ZXMgIHNtYXJ0eSBldCBsZXMgcGx1Z2lucywgIGxlcyBtYWNyb3Mgc3VpdmFudGVzIHBldXZlbnQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlO2VzIGRhbnMgY2VzIGNoYW1wcyA6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBMb3JzIGRlIGwmIzAzOTt1dGlsaXNhdGlvbiBkZSBsYSBtYWNybyB7JGdyb3VwfSwgbGUgc3lzdCZlZ3JhdmU7bWUgcmVtcGxhY2UgbGUgbm9tIGR1IHByZW1pZXIgZ3JvdXBlIGF1cXVlbCBsJiMwMzk7dXRpbGlzYXRldXIgYXBwYXJ0aWVudCwgZXQgdmEgbGUgcmVkaXJpZ2VyIHN1ciBjZXR0ZSBwYWdlLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnJkVhY3V0ZTtkaXRlciBjZSBjaGFtcCBwb3VyIHImZWFjdXRlO2luaXRpYWxpc2VyIGxlIG1vdCBkZSBwYXNzZSB1dGlsaXNhdGV1cic7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnJkVhY3V0ZTtkaXRlciBjZSBjaGFtcCBwb3VyIHImZWFjdXRlO2luaXRpYWxpc2VyIGxlIG1vdCBkZSBwYXNzZSB1dGlsaXNhdGV1cic7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVbiB1dGlsaXNhdGV1ciBhdmVjIGNlIG5vbSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7Lic7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdBdWN1biByJmVhY3V0ZTtzdWx0YXQgcmV0b3VybiZlYWN1dGU7IGRlIGwmIzAzOTtleHBvcnQgY3N2JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xvbmd1ZXVyIGR1IGNoYW1wIG5vbSBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTG9uZ3VldXIgZHUgY2hhbXAgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMb25ndWV1ciBtaW5pbWFsZS9tYXhpbWFsZSBpbnZhbGlkZSBwb3VyIGxlIG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUvbWF4aW1hbGUgaW52YWxpZGUgcG91ciBsZSBub20gZCYjMDM5O3V0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdBZHJlc3NlIGVtYWlsIGludmFsaWRlJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnSWwgbiYjMDM5O3kgYSBwYXMgZCYjMDM5O2FkcmVzc2UgZW1haWwgZW5yZWdpc3RyJmVhY3V0ZTtlIHBvdXIgY2UgY29tcHRlLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5OyZlYWN1dGU7ZGl0aW9uIGRlcyBpbmZvcyB1dGlsaXNhdGV1cic7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibCZlZ3JhdmU7bWUgbG9ycyBkZSBsJiMwMzk7JmVhY3V0ZTtkaXRpb24gZGUgbGEgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1V0aWxpc2F0ZXVyIGFqb3V0JmVhY3V0ZTsgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGlsaXNhdGV1ciBzdXBwcmltJmVhY3V0ZTsgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbGV1ciAoZXhwcmVzc2lvbiByJmVhY3V0ZTtndWxpJmVncmF2ZTtyZSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBdHRlbnRpb24gOiBjZXMgY2hhbXBzIGFmZmVjdGVudCBsYSB0YWlsbGUgZGUgY2hhbXBzIGQmIzAzOTtlbnRyJmVhY3V0ZTtlIGRhbnMgbGVzIGZvcm11bGFpcmVzLiAgRGltaW51ZXIgY2V0dGUgdmFsZXVyIHN1ciB1biBzaXRlIGV4aXN0YW50IG4mIzAzOTtlc3QgcGFzIHJlY29tbWFuZCZlYWN1dGU7JzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdNb2RpZmllciBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBhZG1pbmlzdHJhdGV1ciZuYnNwOz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0NldHRlIGFkcmVzc2UgZW1haWwgZXN0IGQmZWFjdXRlO2omYWdyYXZlOyB1dGlsaXMmZWFjdXRlO2UnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXRpbGlzZXIgbGVzIGNvb2tpZXMgcG91ciBtJmVhY3V0ZTttb3Jpc2VyIGxlcyBkJmVhY3V0ZTt0YWlscyBkJiMwMzk7aWRlbnRpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdMZSBub20gZHUgY29va2llJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQXV0b3Jpc2VyIGxlcyBkb3VibG9ucyBkJiMwMzk7ZW1haWwmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnTCYjMDM5O2FkcmVzc2UgZW1haWwgZXN0IGxlIG5vbSBkJiMwMzk7dXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnVGVudGUgZGUgZ2FyZGVyIGxlcyBjb25uZXhpb25zIGFjdGl2ZXMgcGFyIGwmIzAzOTt1dGlsaXNhdGlvbiBkZSBjb29raWVzIDxlbT5sZSBjb29raWUgZXN0IHImZWFjdXRlO2luaXRpYWxpcyZlYWN1dGU7IHBhciBsJiMwMzk7YWN0aXZpdCZlYWN1dGU7IHN1ciBsZSBzaXRlPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKEF1dG9yaXNlciBwbHVzaWV1cnMgdXRpbGlzYXRldXJzIHBhcnRhZ2VhbnQgbGEgbSZlY2lyYzttZSBhZHJlc3NlIGVtYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKEwmIzAzOTthZHJlc3NlIGVtYWlsIGVzdCBsZSBub20gZGUgbCYjMDM5O3V0aWxpc2F0ZXVyIC0tIE5lIHBhcyBjb2NoZXIgc2kgdm91cyBjaG9pc2lzc2V6ICZxdW90O0F1dG9yaXNlciBsZXMgZG91YmxvbnMgZCYjMDM5O2VtYWlsJnF1b3Q7ICEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQXV0b3Jpc2VyIGRlcyBkZW1hbmRlcyBtdWx0aXBsZXMgZGUgbW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKEF1dG9yaXNlciBsZXMgdXRpbGlzYXRldXJzICZhZ3JhdmU7IHJlLWRlbWFuZGVyIHVuZSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2UsIG1hbGdyJmVhY3V0ZTsgcXUmIzAzOTtpbHMgbiYjMDM5O2FpZW50IHBhcyB1dGlsaXMmZWFjdXRlOyB1bmUgcHImZWFjdXRlO2MmZWFjdXRlO2RlbnRlIGRlbWFuZGUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXRpbGlzZXIgbGVzIHBlcm1pc3Npb25zIHNwJmVhY3V0ZTtjaWZpcXVlIGRlIEZFVXNlcnMgPyZuYnNwOyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsZW1lbnQsIGxlcyBwZXJtaXNzaW9ucyBkZSBGRVVzZXJzIHNvbnQgaWRlbnRpcXVlcyBhdXggcGVybWlzc2lvbnMgZHUgcGFubmVhdSBkJiMwMzk7YWRtaW5pc3RyYXRpb24gdGVsIHF1ZSBBam91dGVyIHVuIHV0aWxpc2F0ZXVyLCBBam91dGVyIHVuZSBncm91cGUsIGV0Yy4gU2kgdm91cyBzJmVhY3V0ZTtsZWN0aW9ubmV6IGNldHRlIG9wdGlvbiwgaWwgeSBhdXJhIGRlcyBwZXJtaXNzaW9ucyBkaWZmJmVhY3V0ZTtyZW50ZXMgcG91ciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciBsZSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTsgKGVycmV1ciBpbnRlcm5lKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0lsIHkgYSBldSB1biBwcm9ibCZlZ3JhdmU7bWUgYXZlYyBsZSBmaWNoaWVyIGNoYXJnJmVhY3V0ZTsuIFZldWlsbGV6IHImZWFjdXRlO2Vzc2F5ZXIuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1ZvdXMgbiYjMDM5O2F2ZXogcGFzIGVudHImZWFjdXRlOyBkZSBub20gZCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1ZvdXMgbmUgZGV2ZXogcGFzIGVudHJlciB2b3RyZSBhZHJlc3NlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1ZvdXMgbiYjMDM5O2F2ZXogcGFzIGVudHImZWFjdXRlOyBkZSBtb3QgZGUgcGFzc2UnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0QmZWFjdXRlO2Nvbm5leGlvbiB1dGlsaXNhdGV1cic7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdDb25uZXhpb24gdXRpbGlzYXRldXInOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5BVFRFTlRJT04gOjwvYj4gZW4gY2hhbmdlYW50IHVuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBxdWkgYSAmZWFjdXRlO3QmZWFjdXRlOyBhc3NpZ24mZWFjdXRlO2UgJmFncmF2ZTsgZGVzIGdyb3VwZXMsIHZvdXMgcG91dmV6IHBvdGVudGllbGxlbWVudCBkJmVhY3V0ZTt0cnVpcmUgb3UgYWImaWNpcmM7bWVyIHVuIHNpdGUgZXhpc3RhbnQgPGk+KGVuIHBhcnRpY3VsaWVyIHNpIHZvdXMgciZlYWN1dGU7ZHVpc2V6IGxlcyBsb25ndWV1cnMgZGUgY2hhbXBzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdDZXR0ZSBmb25jdGlvbiBuZSBtYXJjaGUgcGFzIHNvdXMgV2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTmUgY3ImZWFjdXRlO2V6IHBhcyBkZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBwb3VyIHV0aWxpc2F0ZXVyIChub20gZCYjMDM5O3V0aWxpc2F0ZXVyIGV0IG1vdCBkZSBwYXNzZSksIGNhciBjZWNpIGVzdCBpbmNsdXMgZGFucyBsZSBtb2R1bGUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZXIgbGEgbGlzdGUgZGVzIHV0aWxpc2F0ZXVycyBhdSBmb3JtYXQgQ1NWJm5ic3A7JzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGVyJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4gJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnJkVhY3V0ZTtkaXRlciBsYSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdMb25ndWV1ciBtYXhpbWFsZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3ImZWFjdXRlOyZlYWN1dGU7JzsKJGxhbmdbJ3NvcnRieSddID0gJ1RyaWVyIHBhciZuYnNwOyc7CiRsYW5nWydzb3J0J10gPSAnVHJpJm5ic3A7JzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1V0aWxpc2F0ZXVycyBkYW5zIGxlIGdyb3VwZSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGVyIGxlcyByJmVhY3V0ZTtzdWx0YXRzICZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0F1Y3VuIGVtYWlsIHRyb3V2JmVhY3V0ZTsgcG91ciBjZXQgdXRpbGlzYXRldXIuIFZvdXMgZGV2ZXogJmVhY3V0ZTt2ZW50dWVsbGVtZW50IGNvbnRhY3RlciBsJiMwMzk7YWRtaW5pc3RyYXRldXIuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGR1IGZvcm11bGFpcmUgbW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZHUgZm9ybXVsYWlyZSBkZSBjaGFuZ2VtZW50IGRlIHBhcmFtJmVncmF2ZTt0cmVzJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIG8mdWdyYXZlOyByZWRpcmlnZXIgbCYjMDM5O3V0aWxpc2F0ZXVyIGFwciZlZ3JhdmU7cyBxdSYjMDM5O2lsIHNlIHNvaXQgY29ubmVjdCZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBvJnVncmF2ZTsgcmVkaXJpZ2VyIGwmIzAzOTt1dGlsaXNhdGV1ciBhcHImZWdyYXZlO3MgcXUmIzAzOTtpbCBzZSBzb2l0IGQmZWFjdXRlO2Nvbm5lY3QmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRlIGRlIHRyaSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdVbiBub21icmUgZCYjMDM5O3V0aWxpc2F0ZXVycyBlc3QgZW4gY291cnMgZGUgciZlYWN1dGU7aW5pdGlhbGlzYXRpb24gZGUgbW90cyBkZSBwYXNzZS4gQ2Ugbm9tYnJlIGVzdCBhY3R1ZWxsZW1lbnQgZGUgOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHZpZWlsbGVzIGRlIHBsdXMgZCYjMDM5O3VuZSBzZW1haW5lJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHZpZWlsbGVzIGRlIHBsdXMgZCYjMDM5O3VuIG1vaXMnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnU3VwcHJpbWVyIHRvdXRlcyBsZXMgZW50ciZlYWN1dGU7ZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJyZFY2lyYzt0ZXMtdm91cyBzJnVjaXJjO3IoZSkmbmJzcDs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVW4gY29kZSBpbnZhbGlkZSBhICZlYWN1dGU7dCZlYWN1dGU7IGVudHImZWFjdXRlOywgdmV1aWxsZXogciZlYWN1dGU7ZXNzYXllcic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnTGUgY29kZSB0ZW1wb3JhaXJlIHBvdXIgdm90cmUgaWQgdXRpbGlzYXR1ZXIgbiYjMDM5O2EgcGFzIHB1ICZlY2lyYzt0cmUgdHJvdXYmZWFjdXRlOyBkYW5zIGxhIGJhc2UgZGUgZG9ubiZlYWN1dGU7ZXMnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpcyZlYWN1dGU7IHBvdXIgYWZmaWNoZXIgbGUgZm9ybXVsYWlyZSBkZSB2JmVhY3V0ZTtyaWZpY2F0aW9uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpcyZlYWN1dGU7IHBvdXIgbCYjMDM5O2VtYWlsIGVudm95JmVhY3V0ZTsgbG9ycyBkZSBsJiMwMzk7b3VibGkgZHUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdVbmUgZGVtYW5kZSBkZSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkZSBtb3QgZGUgcGFzc2UgYSAmZWFjdXRlO3QmZWFjdXRlOyBzb3VtaXNlIHBvdXIgY2UgY29tcHRlLCBzb2l0IHBhciB2b3VzLW0mZWNpcmM7bWUsIHNvaXQgcGFyIHF1ZWxxdSYjMDM5O3VuIGQmIzAzOTthdXRyZS4gViZlYWN1dGU7cmlmaWV6IHZvdHJlIGVtYWlsLCB2b3VzIHkgdHJvdXZlcmV6IGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkZSB2b3RyZSBtb3QgZGUgcGFzc2UuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJldXIgZGUgYmFzZSBkZSBkb25uJmVhY3V0ZTtlcyc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdWb3VzIHJlY2V2ZXogY2UgbWVzc2FnZSBjYXIgcXVlbHF1JiMwMzk7dW4gKHBldXQgJmVjaXJjO3RyZSB2b3VzKSBhIGZhaXQgdW5lIGRlbWFuZGUgZGUgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGUgbW90IGRlIHBhc3NlLiBTaSBjJiMwMzk7ZXN0IGxlIGNhcywgbGlzZXogbGVzIGluc3RydWN0aW9ucyBjaS1kZXNzb3VzLiBTaSB2b3VzIG5lIHNhdmV6IHBhcyBkZSBxdW9pIGlsIHMmIzAzOTthZ2l0IG91IHNpIGNlIG4mIzAzOTtlc3QgcGFzIHZvdXMsIHZvdXMgcG91dmV6IHNpbXBsZW1lbnQgZWZmYWNlciBjZSBtZXNzYWdlIChjZWxhIG4mIzAzOTthdXJhIGF1Y3VuZSBjb25zJmVhY3V0ZTtxdWVuY2Ugc3VyIHZvdHJlIGNvbXB0ZSkuIE5vdXMgdm91cyByZW1lcmNpb25zLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZGUgJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ0xlIGNvZGUgc3VpdmFudCBhICZlYWN1dGU7dCZlYWN1dGU7IGcmZWFjdXRlO24mZWFjdXRlO3ImZWFjdXRlOyBhdSBoYXNhcmQgcG91ciBsYSB2JmVhY3V0ZTtyaWZpY2F0aW9uIGR1IGNvbXB0ZSB1dGlsaXNhdGV1ci4gTG9yc3F1ZSB2b3VzIGNsaXF1ZXJleiBzdXIgbGUgbGllbiBjaS1kZXNzb3VzLCB2b3VzIHRyb3V2ZXJleiB1biBjaGFtcCBkYW5zIGxlcXVlbCBlbnRyZXIgY2UgY29kZS4gTm9ybWFsZW1lbnQsIGNlIGNoYW1wIGVzdCByZW1wbGkgcG91ciB2b3VzLCBtYWlzIGRhbnMgbGUgY2FzIGNvbnRyYWlyZSwgbGUgY29kZSBlc3QgOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0xlIGxpZW4gc3VpdmFudCB2b3VzIGFtJmVncmF2ZTtuZSBhdSBzaXRlIG8mdWdyYXZlOyB2b3VzIHBvdXJyZXogZW50cmVyIGxlIGNvZGUgY2ktZGVzc3VzLCBldCByJmVhY3V0ZTtpbml0aWFsaXNlciB2b3RyZSBtb3QgZGUgcGFzc2UgOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnTW90IGRlIHBhc3NlIG91YmxpJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdMZSBtb2R1bGUgQ01TTWFpbGVyIG4mIzAzOTthIHBhcyAmZWFjdXRlO3QmZWFjdXRlOyB0cm91diZlYWN1dGU7JzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VuIGVtYWlsIGEgJmVhY3V0ZTt0JmVhY3V0ZTsgZW52b3kmZWFjdXRlOyAmYWdyYXZlOyAlcyBhdmVjIGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2UuIE1lcmNpJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU2kgdm91cyBhdmV6IG91YmxpJmVhY3V0ZTsgdm90cmUgbW90IGRlIHBhc3NlLCB2ZXVpbGxleiBlbnRyZXIgdm90cmUgaWRlbnRpZmlhbnQgaWNpLCBldCBzaSBub3VzIGxlIHRyb3V2b25zLCB2b3VzIHJlY2V2cmV6IHVuIGVtYWlsIGF2ZWMgbGVzIGluc3RydWN0aW9ucyBwb3VyIGxhIHImZWFjdXRlO2luaXRpYWxpc2F0aW9uIGR1IG1vdCBkZSBwYXNzZS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IHBvdXIgbCYjMDM5O291YmxpIGR1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdHYWJhcml0IHBvdXIgbGEgciZlYWN1dGU7Y3VwJmVhY3V0ZTtyYXRpb24gZGUgbCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0xhIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7ICVzIG4mIzAzOTthIHBhcyAmZWFjdXRlO3QmZWFjdXRlOyB0cm91diZlYWN1dGU7ZSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAncHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIHRyb3V2JmVhY3V0ZTtlcyc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWpvdXRlciB1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ1VuIGNoYW1wIHJlcXVpcyAoJXMpIGVzdCB2aWRlJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnVmV1aWxsZXogZW50cmVyIGljaSB1biBub3V2ZWF1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1ZvdXMgbmUgc2VtYmxleiBwYXMgJmVjaXJjO3RyZSBjb25uZWN0JmVhY3V0ZTsnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnRW5yZWdpc3RyZW1lbnQnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdDZSBjb21wdGUgZXN0IHAmZWFjdXRlO3JpbSZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdGb3JtYXQgZCYjMDM5O2FkcmVzc2UgZW1haWwgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdEYXRlIGQmIzAzOTtleHBpcmF0aW9uIGludmFsaWRlLiBFc3NheWV6IGF2ZWMgYW5uJmVhY3V0ZTtlIGFudCZlYWN1dGU7cmlldXJlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdJbCB5IGEgZXUgdW5lIGVycmV1ciBsb3JzIGRlIGxhIGQmZWFjdXRlO2Zpbml0aW9uICVzIHBvdXIgbCYjMDM5O3V0aWxpc2F0ZXVyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnaWQgZGUgZ3JvdXBlICVzIGludmFsaWRlJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnTWFycXVldXIgZGUgY2hhbXAgY2FjaCZlYWN1dGU7Jm5ic3A7JzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdDb3VsZXVyIGRlIGNoYW1wIGNhY2gmZWFjdXRlOyZuYnNwOyc7CiRsYW5nWydoaWRkZW4nXSA9ICdDYWNoJmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ1VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBkdSBtJmVjaXJjO21lIG5vbSBlc3QgZCZlYWN1dGU7aiZhZ3JhdmU7IGQmZWFjdXRlO2ZpbmllJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0F1Y3VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyBkJmVhY3V0ZTtmaW5pZSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0F1Y3VuIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7IG4mIzAzOTthICZlYWN1dGU7dCZlYWN1dGU7IHMmZWFjdXRlO2xlY3Rpb25uJmVhY3V0ZTtlIHBvdXIgY2UgZ3JvdXBlJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnQXVjdW4gZ3JvdXBlIGQmZWFjdXRlO2ZpbmknOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cGVzIHRyb3V2JmVhY3V0ZTtzJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdMJiMwMzk7YXBwYXJ0ZW5hbmNlICZhZ3JhdmU7IGF1IG1vaW5zIHVuIGdyb3VwZSBlc3QgcmVxdWlzZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWllcnQgbCYjMDM5O2FwcGFydGVuYW5jZSAmYWdyYXZlOyBhdSBtb2lucyB1biBncm91cGUmbmJzcDsnOwokbGFuZ1snYmFjayddID0gJ1JldG91cic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgZXN0IHVuIGNoYW1wIHJlcXVpcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFycXVldXIgZGUgY2hhbXBzIHJlcXVpcyZuYnNwOyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdNaXNlIGVuICZlYWN1dGU7dmlkZW5jZSBkZXMgY2hhbXBzIHJlcXVpcyBlbiZuYnNwOyc7CiRsYW5nWyduZXh0J10gPSAnU3VpdmFudCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VuIGdyb3VwZSBkdSBtJmVjaXJjO21lIG5vbSBleGlzdGUgZCZlYWN1dGU7aiZhZ3JhdmU7JzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnQ2hhbXAgcmVxdWlzJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9uZWwnOwokbGFuZ1snb2ZmJ10gPSAnRCZlYWN1dGU7c2FjdGl2JmVhY3V0ZTsnOwokbGFuZ1snc2l6ZSddID0gJ1RhaWxsZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFRhaWxsZSBtYXhpbWFsZSBkJiMwMzk7dW5lIGRlcyBkaW1lbnNpb25zIGRlIGwmIzAzOTtpbWFnZSBlbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xvbmd1ZXVyJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KGNhcmFjdCZlZ3JhdmU7cmVzIGRhbnMgbGUgY2hhbXAgdGV4dGUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHRpb25zIG1lbnUgZCZlYWN1dGU7cm91bGFudCwgcyZlYWN1dGU7cGFyJmVhY3V0ZTtlcyBwYXIgZGVzIHJldG91cnMgJmFncmF2ZTsgbGEgbGlnbmUnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnTGFiZWwgZGVzIGJvdXRvbnMgUmFkaW8gcyZlYWN1dGU7cGFyJmVhY3V0ZTtzIHBhciBkZXMgc2F1dHMgZGUgbGlnbmUuIExlcyB2YWxldXJzIHBldXZlbnQgJmVjaXJjO3RyZSBzJmVhY3V0ZTtwYXImZWFjdXRlO3MgZHUgdGV4dGUgcGFyIHVuIGNhcmFjdCZlZ3JhdmU7cmUgZXhlbXBsZSA6IEZlbW1lID0gZic7CiRsYW5nWydwcm9tcHQnXSA9ICdJbnZpdCZlYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwZSAnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnU3RhdHV0IGR1IGNoYW1wJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0RlbWFuZGUgbG9ycyBkZSBsYSByJmVhY3V0ZTtjdXAmZWFjdXRlO3JhdGlvbiBkZTxici8+bCYjMDM5O2lkZW50aWZpYW50JzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ZSc7CiRsYW5nWydjaGVja2JveCddID0gJ0Nhc2UgJmFncmF2ZTsgY29jaGVyJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGUgbXVsdGktcyZlYWN1dGU7bGVjdGlvbic7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdCb3V0b25zIFJhZGlvJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UgJzsKJGxhbmdbJ2VtYWlsJ10gPSAnQWRyZXNzZSBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0NoYW1wIGRlIHRleHRlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTWVudSBkJmVhY3V0ZTtyb3VsYW50JzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmllbnZlbnVlJzsKJGxhbmdbJ2xvZ291dCddID0gJ0QmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXRpbGlzZXIgbGUgbm9tIGRlIGNlIGdyb3VwZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdDaGFuZ2VtZW50IGRlIG1lcyBwYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xhIGNvbm5leGlvbiBhICZlYWN1dGU7Y2hvdSZlYWN1dGU7IDogaWRlbnRpZmlhbnQgb3UgbW90IGRlIHBhc3NlIGludmFsaWRlID8nOwokbGFuZ1snbG9naW4nXSA9ICdTJiMwMzk7aWRlbnRpZmllcic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1RleHRlIGR1IGJvdXRvbiBkZSBjb25uZXhpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnQWRyZXNzZSBlbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2UnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNZSBtJmVhY3V0ZTttb3Jpc2VyIHN1ciBjZXQgb3JkaW5hdGV1cic7CiRsYW5nWydyZWdpc3RlciddID0gJ1MmIzAzOTtlbnJlZ2lzdHJlcic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ01vdCBkZSBwYXNzZSBvdWJsaSZlYWN1dGU7ID8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRCZlYWN1dGU7dGFpbHMgZCYjMDM5O2lkZW50aWZpY2F0aW9uIG91YmxpJmVhY3V0ZTtzID8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ0dhYmFyaXQnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSUQgdXRpbGlzYXRldXIgbm9uIHRyb3V2JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0NldCBpZGVudGlmaWFudCAoJXMpIGV4aXN0ZSBkJmVhY3V0ZTtqJmFncmF2ZTsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1V0aWxpc2VyIFNNVFAgcG91ciBsYSB2YWxpZGF0aW9uIGRlcyBhZHJlc3NlcyBlbWFpbCZuYnNwOz8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUgZHUgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0xvbmd1ZXVyIG1heGltYWxlIGR1IG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMb25ndWV1ciBtaW5pbWFsZSBkZSBsJiMwMzk7aWRlbnRpZmlhbnQmbmJzcDsnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTG9uZ3VldXIgbWF4aW1hbGUgZGUgbCYjMDM5O2lkZW50aWZpYW50Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ0V4cGlyYXRpb24gZGUgc2Vzc2lvbiAoc2Vjb25kZXMpJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVdGlsaXNlciBsZXMgY29va2llcyBwb3VyIGdhcmRlciBsZXMgY29ubmV4aW9ucyBhY3RpdmVzJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQXV0b3Jpc2UgbCYjMDM5O2VucmVnaXN0cmVtZW50IHBhciBlbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3JvdXBlIHBhciBkJmVhY3V0ZTtmYXV0IHBvdXIgbGVzIG5vdXZlYXV4IHV0aWxpc2F0ZXVycyZuYnNwOyc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsZSBjaGFuZ2VtZW50IGRlcyBwYXJhbSZlZ3JhdmU7dHJlcyc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnTGVzIG1vdHMgZGUgcGFzc2UgbmUgY29uY29yZGVudCBwYXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQgbm9uIHZhbGlkZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2Ugbm9uIHZhbGlkZSc7CiRsYW5nWydlZGl0dXNlciddID0gJyZFYWN1dGU7ZGl0ZXIgbCYjMDM5O3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWRlJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHV0JzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0NldCB1dGlsaXNhdGV1ciBuJiMwMzk7ZXN0IG1lbWJyZSBkJiMwMzk7YXVjdW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdBdWN1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50ZSBkJiMwMzk7aW1wb3J0ZXIgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyAmYWdyYXZlOyBkb3VibGUnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxldXInOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBlcyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTm9tIGRlIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7JzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1ZhbGV1ciBkZSBsYSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydhZGQnXSA9ICdBam91dGVyJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3JpcXVlJzsKJGxhbmdbJ2VkaXQnXSA9ICcmRWFjdXRlO2RpdGVyJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmUnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3AmZWFjdXRlO2NpZmlleiB1bmUgZGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIGhldXJlcyc7CiRsYW5nWycyNGhycyddID0gJzI0IGhldXJlcyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IGhldXJlcyc7CiRsYW5nWycxd2VlayddID0gJzEgc2VtYWluZSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHNlbWFpbmVzJzsKJGxhbmdbJzFtb250aCddID0gJzEgbW9pcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtb2lzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1vaXMnOwokbGFuZ1snMXllYXInXSA9ICcxIGFuJzsKJGxhbmdbJ25ldmVyJ10gPSAnSmFtYWlzJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ0xlIG1vZHVsZSBhICZlYWN1dGU7dCZlYWN1dGU7IGluc3RhbGwmZWFjdXRlOyBhdmVjIHN1Y2MmZWdyYXZlO3MuPGJyLz5Bc3N1cmV6LXZvdXMgZGUgZCZlYWN1dGU7ZmluaXIgbGEgcGVybWlzc2lvbiAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsuIERlIHBsdXMsIG5vdXMgdm91cyByZWNvbW1hbmRvbnMgZCYjMDM5O2luc3RhbGxlciBsZSBtb2R1bGUgQ2FwdGNoYS4gTG9yc3F1ZSBjZSBjZWx1aS1jaSBlc3QgaW5zdGFsbCZlYWN1dGU7LCBsYSB2YWxpZGF0aW9uIGRlIGwmIzAzOTtpbWFnZSBjYXB0Y2hhIHNlcmEgcmVxdWlzZSBwb3VyIHNlIGNvbm5lY3RlciwgZW4gcGx1cyBkZSBsJiMwMzk7aWRlbnRpZmlhbnQgZXQgZHUgbW90IGRlIHBhc3NlLiBDZWNpIGVzdCBjb25zZWlsbCZlYWN1dGU7IHBvdXIgJmVhY3V0ZTt2aXRlciBsZXMgYXR0YXF1ZXMuDQoNCjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gTGUgcGFyYW0mZWdyYXZlO3RyZSAmIzAzOTtub2NhcHRjaGEmIzAzOTsgcGV1dCAmZWNpcmM7dHJlIHV0aWxpcyZlYWN1dGU7IHBvdXIgZCZlYWN1dGU7c2FjdGl2ZXIgY2V0dGUgZm9uY3Rpb24gbSZlY2lyYzttZSBsb3JzcXVlIGxlIG1vZHVsZSBDYXB0Y2hhIGVzdCBpbnN0YWxsJmVhY3V0ZTsuDQoNCkxlIG1vZHVsZSBTZWxmUmVnaXN0cmF0aW9uIGRvaXQgJmVjaXJjO3RyZSBpbnN0YWxsJmVhY3V0ZTsgcG91ciBxdWUgbGUgdmlzaXRldXJzIHB1aXNzZW50IHMmIzAzOTtpbnNjcmlyZSBzdXIgdm90cmUgc2l0ZS4gU2lub24sIHZvdXMgZGV2cmV6IGxlcyBlbnJlZ2lzdHJlciB2b3VzIG0mZWNpcmM7bWUuJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnTW90IGRlIHBhc3NlJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUmUtdGFwZXogbGUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdVbiBncm91cGUgZHUgbSZlY2lyYzttZSBub20gZXhpc3RlIGQmZWFjdXRlO2omYWdyYXZlOyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICcmRWFjdXRlO2RpdGVyIGxlIGdyb3VwZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdFbnZveWVyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbWVyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnJkVjaXJjO3Rlcy12b3VzIHMmdWNpcmM7cihlKSBxdWUgY2V0dGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgZXN0IGNvcnJlY3RlIHBvdXIgY2UgZ3JvdXBlJm5ic3A7P1xuRCZlYWN1dGU7c2FjdGl2ZXIgdW5lIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7IG4mIzAzOTtlZmZhY2VyYSBwYXMgbGVzIGVudHImZWFjdXRlO2VzIGRhbnMgbGEgdGFibGUgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBwb3VyIGNlIGdyb3VwZS91dGlsaXNhdGV1ci4gVG91dCBhdSBwbHVzLCBsZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIG5lIHNlcm9udCBwYXMgZGlzcG9uaWJsZXMuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICcmRWNpcmM7dGVzLXZvdXMgcyZ1Y2lyYztyKGUpIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGNlIGdyb3VwZSZuYnNwOz8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJyZFY2lyYzt0ZXMtdm91cyBzJnVjaXJjO3IoZSkgZGUgdm91bG9pciBjb21wbCZlZ3JhdmU7dGVtZW50IHN1cHByaW1lciBjZXR0ZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOz9cbkNlbGEgc3VwcHJpbWVyYSB0b3V0ZXMgbGVzIGVudHImZWFjdXRlO2VzIHBvdXIgY2V0dGUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUGFyYW0mZWdyYXZlO3RyZXMgaW5zdWZmaXNhbnRzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibCZlZ3JhdmU7bWUgbG9ycyBkZSBsJiMwMzk7YWpvdXQgZCYjMDM5O3VuZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5O2Fqb3V0IGQmIzAzOTt1bmUgcmVsYXRpb24gZGUgZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsJmVncmF2ZTttZSBsb3JzIGRlIGwmIzAzOTtham91dCBkJiMwMzk7dW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmwmZWdyYXZlO21lIGxvcnMgZGUgbCYjMDM5O2Fqb3V0IGQmIzAzOTt1biB1dGlsaXNhdGV1ciAmYWdyYXZlOyB1biBncm91cGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVncmF2ZTttZSBsb3JzIGRlIGxhIHN1cHByZXNzaW9uIGQmIzAzOTt1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW5lIGFkcmVzc2UgZW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1BhcyBkJiMwMzk7YWNjJmVncmF2ZTtzIGVuICZlYWN1dGU7Y3JpdHVyZSBkYW5zIGxlIGRvc3NpZXIgZGUgZGVzdGluYXRpb24nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtJmVncmF2ZTt0cmVzIG5vbiB2YWxpZGVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQXVjdW4gZ3JvdXBlIHRyb3V2JmVhY3V0ZTsnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcHBsaXF1ZXInOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJlJm5ic3A7JzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdJZGVudGlmaWFudCAoZXhwcmVzc2lvbiByJmVhY3V0ZTtndWxpJmVncmF2ZTtyZSkmbmJzcDsnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbiAnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnTm9tIGR1IGdyb3VwZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2MmZWdyYXZlO3MgcmVmdXMmZWFjdXRlOyc7CiRsYW5nWydlcnJvciddID0gJ0VycmV1cic7CiRsYW5nWydhZGRncm91cCddID0gJ0Fqb3V0ZXIgdW4gZ3JvdXBlJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0ZXIgbGUgZ3JvdXBlJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBam91dGVyIHVuIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVdGlsaXNhdGV1cnMgdHJvdXYmZWFjdXRlO3MnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcm91cGUnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTJmVhY3V0ZTtsZWN0aW9ubmVyIGxlIGdyb3VwZSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdHYWJhcml0IGQmIzAzOTtlbnJlZ2lzdHJlbWVudCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIGQmZWFjdXRlO2Nvbm5leGlvbic7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyc7CiRsYW5nWyd1c2VycyddID0gJ1V0aWxpc2F0ZXVycyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uIGRlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0cmZWdyYXZlO3JlIGxlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUGFnZSBwYXIgZCZlYWN1dGU7ZmF1dCc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnRGVybmkmZWdyYXZlO3JlIHBhZ2UgYWNjJmVhY3V0ZTtkJmVhY3V0ZTtlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ0F1dHJlIHBhZ2UmbmJzcDs6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdWZXVpbGxleiBlbnRyZXIgbGUgdGV4dGUgZGUgbCYjMDM5O2ltYWdlJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+UXVlIGZhaXQgY2UgbW9kdWxlID88L2gzPg0KPHA+Q2UgbW9kdWxlIHBlcm1ldCBsYSBnZXN0aW9uIGV0IGwmIzAzOTthZG1pbmlzdHJhdGlvbiBkZXMgdXRpbGlzYXRldXJzIGR1IHNpdGUgc3VyIGxhIHBhcnRpZSBwdWJsaXF1ZSA8aT4odXRpbGlzYXRldXJzIHF1aSBuJiMwMzk7b250IHBhcyBhY2MmZWdyYXZlO3MgYXUgcGFubmVhdSBkJiMwMzk7YWRtaW5pc3RyYXRpb24pPC9pPi4gSWwgcGVybWV0IGxhIGNyJmVhY3V0ZTthdGlvbiBkZSBncm91cGVzIGQmIzAzOTt1dGlsaXNhdGV1cnMsIGRlIGNvbXB0ZXMgdXRpbGlzYXRldXIsIGV0IHBlcm1ldCBhdXggdXRpbGlzYXRldXJzIGRlIHNlIGNvbm5lY3RlciBldCBzZSBkJmVhY3V0ZTtjb25uZWN0ZXIuIElsIHBldXQgJmVjaXJjO3RyZSB1dGlsaXMmZWFjdXRlOyBhdmVjIGxlIG1vZHVsZSBDdXN0b21Db250ZW50IHBvdXIgYWZmaWNoZXIgZHUgY29udGVudSBkaWZmJmVhY3V0ZTtyZW50IHNlbG9uIGxlcyB1dGlsaXNhdGV1cnMsIHVuZSBmb2lzIHF1JiMwMzk7aWxzIHNvbnQgY29ubmVjdCZlYWN1dGU7cy48L3A+DQo8aDM+Rm9uY3Rpb25uYWxpdCZlYWN1dGU7czwvaDM+DQo8dWw+DQo8bGk+PHA+RXhwaXJhdGlvbiBkdSBjb21wdGUgdXRpbGlzYXRldXIuICBWb3VzIHBvdXZleiBjciZlYWN1dGU7ZXIgZGVzIHV0aWxpc2F0ZXVycyB0ZW1wb3JhaXJlczwvcD48L2xpPg0KPGxpPjxwPlByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBkZSBncm91cGUuICBWb3VzIHBvdXZleiBkZW1hbmRlciBkZXMgaW5mb3JtYXRpb25zIGRpZmYmZWFjdXRlO3JlbnRlcyBhdXggbWVtYnJlcyBkZSBkaWZmJmVhY3V0ZTtyZW50cyBncm91cGVzPC9wPjwvbGk+DQo8bGk+PHA+UGV1dCBnJmVhY3V0ZTtyZXIgZGVzIGNlbnRhaW5lcyBkJiMwMzk7dXRpbGlzYXRldXJzPC9wPjwvbGk+DQo8bGk+PHA+Q29udGllbnQgdW5lIEFQSSAmZWFjdXRlO3RlbmR1ZSwgcG91ciBsJiMwMzk7YWpvdXQgZGUgZm9uY3Rpb25uYWxpdCZlYWN1dGU7czwvcD48L2xpPg0KPC91bD4NCjxoMz5Db21tZW50IGwmIzAzOTt1dGlsaXNlciA/PC9oMz4NCjx1bD4NCjxsaT48cD5BcHImZWdyYXZlO3MgaW5zdGFsbGF0aW9uLCB2b3VzIHBvdXZleiBhY2MmZWFjdXRlO2RlciBhdSBtb2R1bGUgRnJvbnRFbmRVc2VycyBwYXIgbGUgcGFubmVhdSBkJiMwMzk7YWRtaW5pc3RyYXRpb24gc291cyBsZSBtZW51ICZxdW90O0dyb3VwZXMgJmFtcDsgVXRpbGlzYXRldXJzJnF1b3Q7LjwvcD48L2xpPg0KPGxpPg0KPHA+RGV1eGkmZWdyYXZlO21lbWVudCwgdm91cyBkZXZyZXogZCZlYWN1dGU7ZmluaXIgYXUgbW9pbnMgdW5lIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cy4gTGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBzb250IGVzc2VudGllbGxlbWVudCBkZXMgZCZlYWN1dGU7ZmluaXRpb25zIGRlIGNoYW1wLCB2b3VzIHBvdXZleiBpY2kgZCZlYWN1dGU7ZmluaXIgbGUgdHlwZSBkJiMwMzk7aW5mb3JtYXRpb24gcXVlIHZvdXMgZCZlYWN1dGU7c2lyZXogY29sbGVjdGVyLCBldCBsZXMgbGltaXRlcy4gcC5leC4gTm9tLCBBZ2UsIFZpbGxlLCBEJmVhY3V0ZTtwYXJ0ZW1lbnQsIFBheXMsIEFkcmVzc2UgZW1haWwsIGV0Yy4gPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFZvdXMgbiYjMDM5O2F2ZXogcGFzIGJlc29pbiBkZSBkJmVhY3V0ZTtmaW5pciBsZXMgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTtzIGRlIGwmIzAzOTtpZGVudGlmaWFudCAob3UgYWRyZXNzZSBlbWFpbCApIGV0IGR1IG1vdCBkZSBwYXNzZSwgaWxzIHNvbnQgY3ImZWFjdXRlOyZlYWN1dGU7cyBwb3VyIHZvdXMuPC9iPjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBMZXMgbm91dmVsbGVzIGluc3RhbGxhdGlvbnMgZHUgbW9kdWxlIEZFVSBwciZlYWN1dGU7Y2lzZW50IHF1ZSBsJiMwMzk7YWRyZXNzZSBlLW1haWwgIHV0aWxpc2F0ZXVyIGVzdCBsZXVyIG5vbSBkJiMwMzk7dXRpbGlzYXRldXIgKGNldHRlIG9wdGlvbiBwZXV0ICZlY2lyYzt0cmUgY2hhbmcmZWFjdXRlOyBkYW5zIGwmIzAzOTtvbmdsZXQgUHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcykuIERvbmMsIHNpIHZvdXMgdXRpbGlzZXogY2V0dGUgb3B0aW9uLCB2b3VzIG4mIzAzOTthdXJleiBwYXMgYmVzb2luIGRlIGNyJmVhY3V0ZTtlciB1bmUgcHJvcHJpJmVhY3V0ZTt0JmVhY3V0ZTsgYWRyZXNzZSBlbWFpbC48L3A+DQo8L2xpPg0KPGxpPjxwPkVuc3VpdGUsIHZvdXMgcG91dmV6IGNyJmVhY3V0ZTtlciB1biBvdSBwbHVzaWV1cnMgbm9tKHMpIGRlIGdyb3VwZS4gUXVhbmQgdm91cyBjciZlYWN1dGU7ZXogdW4gZ3JvdXBlLCB2b3VzIGRldmV6IGVudHJlciB1biBub20gZGUgZ3JvdXBlLCB1bmUgZGVzY3JpcHRpb24gZXQgZGV2ZXogYXNzb2NpZXIgZGVzIHByb3ByaSZlYWN1dGU7dCZlYWN1dGU7cyBhdSBncm91cGUsIHNwJmVhY3V0ZTtjaWZpZXIgbCYjMDM5O29yZHJlIGRlcyBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MsIHNpIGNlbGxlcy1jaSBzb250IG9wdGlvbm5lbGxlcywgcmVxdWlzZXMgb3UgZGUgY2hhbXAgY2FjaCZlYWN1dGU7PGk+KG9mZiBlc3QgYXVzc2kgdmFsaWRlKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlIDo8L2I+IEF2YW50IGRlIGNvbnRpbnVlciwgdmV1aWxsZXogdm91cyBhc3N1cmVyIHF1ZSBsZXMgcHImZWFjdXRlO2YmZWFjdXRlO3JlbmNlcyBzb250IGQmZWFjdXRlO2ZpbmllcyBjb3JyZWN0ZW1lbnQuPC9wPjwvbGk+DQo8bGk+PHA+VHJvaXNpJmVncmF2ZTttZW1lbnQsIGNyJmVhY3V0ZTtleiBsZXMgdXRpbGlzYXRldXJzLiBMJiMwMzk7YWpvdXQgZCYjMDM5O3V0aWxpc2F0ZXVyIGVzdCB1biBwcm9jZXNzdXMgZW4gZGV1eCB0ZW1wcy4gUXVhbmQgdm91cyBjciZlYWN1dGU7ZXogdW4gdXRpbGlzYXRldXIsIHZvdXMgZGV2ZXogZW50cmVyIHVuIGlkZW50aWZpYW50L2VtYWlsIGV0IHVuIG1vdCBkZSBwYXNzZSwgYWluc2kgcXUmIzAzOTt1bmUgZGF0ZSBkJiMwMzk7ZXhwaXJhdGlvbi4gVm91cyBkZXZleiBlbnN1aXRlIHMmZWFjdXRlO2xlY3Rpb25uZXIgbGUgb3UgbGVzIGdyb3VwZShzKSBhdSh4KXF1ZWwocykgY2V0IHV0aWxpc2F0ZXVyIGFwcGFydGllbmRyYSwgcHVpcyBjbGlxdWVyIHN1ciBcJiMwMzk7U3VpdmFudFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZSA6IDwvZW0+Q2VjaSBlc3QgdW4gdHJhdmFpbCBsb25nIGV0IGxhYm9yaWV1eCwgaWwgZXN0IHBsdXMgZmFjaWxlIGRlIGxhaXNzZXIgbGVzIHV0aWxpc2F0ZXVycyBzJiMwMzk7ZW5yZWdpc3RyZXIgZXV4LW0mZWNpcmM7bWVzLiBQdWlzIHZvdXMgcG91dmV6ICZlYWN1dGU7ZGl0ZXIgbGV1ciBncm91cGUgZCYjMDM5O2FwcGFydGVuYW5jZS4gQ2VwZW5kYW50LCBjciZlYWN1dGU7ZXogYXUgbW9pbnMgdW4gdXRpbGlzYXRldXItdGVzdC48L3A+PC9saT4NCjxsaT48cD5FbmZpbiwgYXByJmVncmF2ZTtzIHF1ZSBsZSBzeXN0JmVncmF2ZTttZSBhaXQgZCZlYWN1dGU7dGVybWluJmVhY3V0ZTsgdG91cyBsZXMgY2hhbXBzICZhZ3JhdmU7IHByJmVhY3V0ZTtzZW50ZXIgJmFncmF2ZTsgbCYjMDM5O3V0aWxpc2F0ZXVyLCB2b3VzIHZlcnJleiB1biBmb3JtdWxhaXJlIHF1aSB2b3VzIGRlbWFuZGVyYSBkZSBkJmVhY3V0ZTtmaW5pciB0b3VzIGxlcyBjaGFtcHMgb2JsaWdhdG9pcmVzLiBSZW1wbGlzc2V6IGNlIGZvcm11bGFpcmUgcG91ciB0ZXJtaW5lciBsJiMwMzk7YWpvdXQgZGUgbCYjMDM5O3V0aWxpc2F0ZXVyLjwvcD48L2xpPg0KPGxpPjxwPlZvdXMgJmVjaXJjO3RlcyBtYWludGVuYW50IHByJmVjaXJjO3QgJmFncmF2ZTsgYWpvdXRlciBsYSBmb25jdGlvbiBhdXggcGFnZXMgZGUgdm90cmUgc2l0ZS4gQyYjMDM5O2VzdCB0ciZlZ3JhdmU7cyBzaW1wbGUsIGFqb3V0ZXogbGEgYmFsaXNlIFNtYXJ0eSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gJmFncmF2ZTsgdm90cmUgcGFnZSBvdSBnYWJhcml0PC9wPjwvbGk+DQo8L3VsPg0KDQo8aDM+Rm9uY3Rpb25zIFNtYXJ0eTwvaDM+DQo8cD5RdWVscXVlcyBpbnRlcmFjdGlvbnMgYXZlYyBsYSBiYXNlIGRlIGRvbm4mZWFjdXRlO2VzIGR1IG1vZHVsZSBGcm9udEVuZFVzZXJzIHNvbnQgcG9zc2libGVzIGF2ZWMgc21hcnR5IGV0IGwmIzAzOTtvYmpldCAkZmV1X3NtYXJ0eS48L3A+DQo8aDQ+Rm9uY3Rpb25zIDo8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJmFtcDtxdW90O2Fzc2lnbiZhbXA7cXVvdDsgcGFyYW1ldGVyLjwvcD4NCjxwPkV4ZW1wbGUgOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGEgbGlzdCBvZiBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgYW5kIGFzc2lnbiB0aGVtIHRvIGEgc21hcnR5IHZhcmlhYmxlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvcD4NCjxwPkV4ZW1wbGUgOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKDUsJiMwMzk7dXNlcnByb3BzJiMwMzk7KX08YnIvPnskdXNlcnByb3BzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZVssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgc21hcnR5IGZ1bmN0aW9uIHJldHVybnMgdGhlIHRleHQgc3BlY2lmaWVkIGZvciBhIHBhcnRpY3VsYXIgb3B0aW9uIHZhbHVlIGZvciBhIHNwZWNpZmllZCBkcm9wZG93biBwcm9wZXJ0eS48L2xpPg0KPHA+RXhlbXBsZSA6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF9kcm9wZG93bl90ZXh0KCYjMDM5O2FnZV9yYW5nZSYjMDM5Oywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfbXVsdGlzZWxlY3RfdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIGFuIGFycmF5IG9mIG9wdGlvbiB0ZXh0cyBjb3JyZXNwb25kaW5nIHRvIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9uIHZhbHVlcy48L2xpPg0KPHA+RXhlbXBsZSA6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF9tdWx0aXNlbGVjdF90ZXh0KCYjMDM5O2Zhdm9yaXRlX2Zvb2RzJiMwMzk7LCRvbmVwcm9wdmFsdWUsJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTspfTxici8+eyRmYXZvcml0ZV9mb29kc3xAcHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkNlIG1vZHVsZSBuZSBjb250aWVudCBhdWN1biBzdXBwb3J0IGNvbW1lcmNpYWwuIENlcGVuZGFudCwgY2VzIHJlc3NvdXJjZXMgc29udCBkaXNwb25pYmxlcyBwb3VyIHZvdXMgYWlkZXImbmJzcDs6PC9wPg0KPHVsPg0KPGxpPlBvdXIgbGEgZGVybmkmZWdyYXZlO3JlIHZlcnNpb24gZGUgY2UgbW9kdWxlLCBsZXMgRkFRcywgb3UgcG91ciBhbm5vbmNlciB1biBidWcsIG91IHBvdXIgYWNoZXRlciBkdSBzdXBwb3J0IGNvbW1lcmNpYWwsIHZldWlsbGV6IHZpc2l0ZXIgbGUgc2l0ZSBkZSBjYWxndXkgPGEgaHJlZj0iaHR0cDovL2NhbGd1eTEwMDAuY29tIj5jYWxndXkxMDAwLmNvbTwvYT4uPC9saT4NCjxsaT5EZXMgZGlzY3Vzc2lvbnMgY29tcGwmZWFjdXRlO21lbnRhaXJlcyByZWxhdGl2ZXMgJmFncmF2ZTsgY2UgbW9kdWxlIHBldXZlbnQgYXVzc2kgJmVjaXJjO3RyZSB0cm91diZlYWN1dGU7ZXMgc3VyIGxlcyA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciIHRhcmdldD0iX2JsYW5rIj5Gb3J1bXMgQ01TIE1hZGUgU2ltcGxlPC9hPi48L2xpPg0KPGxpPkwmIzAzOTthdXRldXIsIGNhbGd1eTEwMDAsIGVzdCBzb3V2ZW50IHN1ciBJUkMgc3VyIGNhbmFsICNjbXM6IGlyYy5mcmVlbm9kZS5uZXQvI2NtczwvbGk+DQo8bGk+RXQgZW5maW4sIHZvdXMgcG91dmV6IHJlbmNvbnRyZXIgdW4gY2VydGFpbiBzdWNjJmVncmF2ZTtzIGVuIGVudm95YW50IHVuIGVtYWlsIGRpcmVjdGVtZW50ICZhZ3JhdmU7IGwmIzAzOTthdXRldXIuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbSZlZ3JhdmU7dHJlczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25lbCk8L2VtPiBhY3Rpb249JnF1b3Q7ZGVmYXVsdCZxdW90OzxsaT4NCjxwPkFjdGlvbnMgOg0KPHVsPg0KPGxpPjxlbT5kZWZhdWx0PC9lbT4gLSBUaGUgZGVmYXVsdCBhY3Rpb24sIHdoaWNoIGVuYWJsZXMgdGhlIG5vcm1hbCBmb3JtPSBiZWhhdmlvdXIuPC9saT4NCjxsaT48ZW0+cmVzZXRfc2Vzc2lvbjwvZW0+IC0gUHJvdmlkZSBhIGphdmFzY3JpcHQgY29udHJvbGxlZCB0ZW1wbGF0ZSB0byBhbGxvdyB0aGUgbWFudWFsLCBvciBhdXRvbWF0aWMgcGluZ2luZyBvZiB0aGUgdXNlciBzZXNzaW9uLiAgVGhpcyB0ZW1wbGF0ZSBjYW4gYmUgdXNlZCB0byByZW1pbmQgdGhlIHVzZXIgdGhhdCBoaXMgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIGFuZCB0byB0cmlnZ2VyIGl0cyByZXNldC4gIE5vcm1hbGx5IHRoaXMgbWV0aG9kIGlzIG5vdCByZXF1aXJlZCBhcyBhbnkgcGFnZSB0aGF0IGRpc3BsYXlzIHRoZSBGcm9udEVuZFVzZXIgY29udHJvbHMgd291bGQgaGFuZGxlIHRoaXMsIGp1c3QgcmVxdWlyaW5nIHRoZSB1c2VyIHRvIHZpZXcgYSBwYWdlIG9uIGEgcmVndWxhciBiYXNpcy4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBwYWdlcyB3aXRoIGFsb3Qgb2YgY29udGVudCByZXF1aXJpbmcgZXh0ZW5zaXZlIHJlYWRpbmcsIHRoaXMgbWF5IGJlIGEgdXNlZnVsIHNvbHV0aW9uLjwvbGk+DQo8bGk+PGVtPnZpZXd1c2VyPC9lbT4gLSBEaXNwbGF5IGEgcmVwb3J0IGZvciBhIHNpbmdsZSB1c2VyLCByZXF1aXJlcyB1c2Ugb2YgdGhlIHVpZCBwYXJhbWV0ZXIuPC9saT4NCjwvdWw+DQoNCjxsaT48ZW0+KG9wdGlvbmVsKTwvZW0+IGZvcm09JnF1b3Q7bmFtZSZxdW90OzwvbGk+DQo8cD5Gb3JtdWxhaXJlcyA6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gQWZmaWNoZSBsZSBmb3JtdWxhaXJlIGRlIGNvbm5leGlvbjwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIEFmZmljaGUgbGUgZm9ybXVsYWlyZSBkZSBkJmVhY3V0ZTtjb25uZXhpb248L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIEFmZmljaGUgbGUgZm9ybXVsYWlyZSBkZSBjaGFuZ2VtZW50IGRlIHBhcmFtJmVncmF2ZTt0cmVzPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBBZmZpY2hlIGxlIGZvcm11bGFpcmUgZCYjMDM5O291YmxpIGRlIG1vdCBkZSBwYXNzZTwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gTiYjMDM5O2FmZmljaGUgcmllbiwgbWFpcyBleHBvcnRlIGxlcyBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlO3MgZXQgYXV0cmVzIHZhcmlhYmxlcyBzbWFydHkgcG91ciBsJiMwMzk7dXRpbGlzYXRldXIgY29ubmVjdCZlYWN1dGU7LiBTaSBhdWN1biB1dGlsaXNhdGV1ciBuJiMwMzk7ZXN0IGNvbm5lY3QmZWFjdXRlOywgYXVjdW5lIHZhcmlhYmxlIG4mIzAzOTtlc3QgZXhwb3J0JmVhY3V0ZTtlLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uZWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5VdGlsaXMmZWFjdXRlOyBhdmVjIGxlcyBmb3JtdWxhaXJlcyBkZSBjb25uZXhpb24sIGRlIGQmZWFjdXRlO2Nvbm5leGlvbiwgZXQgZGUgY2hhbmdlbWVudCBkZSBwYXJhbSZlZ3JhdmU7dHJlcywgY2UgcGFyYW0mZWdyYXZlO3RyZSBjb250aWVudCBsJiMwMzk7aWQgb3UgbCYjMDM5O2FsaWFzIGRlIGxhIHBhZ2UgJmFncmF2ZTsgbGFxdWVsbGUgcmVkaXJpZ2VyIGwmIzAzOTt1dGlsaXNhdGV1ciBhcHImZWdyYXZlO3MgbCYjMDM5O2Vudm9pIGR1IGZvcm11bGFpcmUsIHNpIGNlbHVpLWNpIGEgJmVhY3V0ZTt0JmVhY3V0ZTsgdHJhaXQmZWFjdXRlOyBhdmVjIHN1Y2MmZWdyYXZlO3M8L3A+DQo8bGk+PGVtPihvcHRpb25lbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlV0aWxpcyZlYWN1dGU7cyBhdmVjIGxlcyBmb3JtdWxhaXJlcyBkZSBjb25uZXhpb24uIEF1dG9yaXNlIGxlcyB1dGlsaXNhdGV1cnMgJmFncmF2ZTsgc2UgY29ubmVjdGVyIHNldWxlbWVudCBzJiMwMzk7aWxzIGFwcGFydGllbm5lbnQgYXV4IGdyb3VwZShzKSBzcCZlYWN1dGU7Y2lmaSZlYWN1dGU7KHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmVsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5VdGlsaXMmZWFjdXRlOyBhdmVjIGxlIGZvcm11bGFpcmUgbG9zdHVzZXJuYW1lLCBjZXR0ZSBmb25jdGlvbiBzcCZlYWN1dGU7Y2lmaWUgbGUgZ3JvdXBlIHBvdXIgYXNzdW1lciBkZSBxdWVsIGdyb3VwZSBsZXMgdXRpbGlzYXRldXJzIHNvbnQgbWVtYnJlcy4uPC9wPg0KPGxpPjxlbT4ob3B0aW9uZWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXRpbGlzJmVhY3V0ZTsgYXZlYyBsZXMgZm9ybXVsYWlyZXMgZGUgbG9naW4uIENlbGEgZCZlYWN1dGU7c2FjdGl2ZXJhIGxhIGZvbmN0aW9uIGNhcHRjaGEgc3VyIGxlIGZvcm11bGFpcmUuIFBhciBkJmVhY3V0ZTtmYXV0LCBzaSBsZSBtb2R1bGUgQ2FwdGNoYSBlc3QgaW5zdGFsbCZlYWN1dGU7LCB1bmUgdmFsaWRhdGlvbiBkJiMwMzk7aW1hZ2UgQ2FwdGNoYSBzZXJhIHJlcXVpc2UgcG91ciBzZSBjb25uZWN0ZXIuIENlY2kgZXN0IHVuZSBtZXN1cmUgZGUgcyZlYWN1dGU7Y3VyaXQmZWFjdXRlOyBwb3VyICZlYWN1dGU7dml0ZXIgbGVzIGF0dGFxdWVzIHR5cGUgJnF1b3Q7YnJ1dGUgZm9yY2UmcXVvdDsuPC9wPg0KPGxpPjxlbT4ob3B0aW9uZWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXRpbGlzJmVhY3V0ZTsgYXZlYyBsZSBwYXJhbSZlZ3JhdmU7dHJlICZxdW90O3ZpZXd1c2VyJnF1b3Q7LiAgQ2UgcGFyYW0mZWdyYXZlO3RyZSBlc3QgZXhpZyZlYWN1dGU7IHBvdXIgaW5kaXF1ZXIgZGUgcXVlbCB1dGlsaXNhdGV1ciB2b2lyIGxlcyBkJmVhY3V0ZTt0YWlscy48L3A+DQo8L3VsPg0KDQo8cD5Db25mb3JtJmVhY3V0ZTttZW50ICZhZ3JhdmU7IGxhIGxpY2VuY2UgR1BMLCBjZSBtb2R1bGUgZXN0IGRpc3RyaWJ1JmVhY3V0ZTsgdGVsIHF1ZWwuIFZldWlsbGV6IHZvdXMgciZlYWN1dGU7ZiZlYWN1dGU7cmVyIGRpcmVjdGVtZW50ICZhZ3JhdmU7IGxhIGxpY2VuY2UgcG91ciB0b3V0IGF2aXMgZGUgbm9uIHJlc3BvbnNhYmlsaXQmZWFjdXRlOy48L3A+DQo8aDM+UmVxdWlzPC9oMz4NCjxwPlBvdXIgbCYjMDM5O2ltcGwmZWFjdXRlO21lbnRhdGlvbiBkZSBsYSByJmVhY3V0ZTtpbml0aWFsaXNhdGlvbiBkZSBtb3QgZGUgcGFzc2Ugb3VibGkmZWFjdXRlOywgY2UgbW9kdWxlIHJlcXVpZXJ0IHF1ZSBsZSBtb2R1bGUgQ01TTWFpbGVyIHNvaXQgcHImZWFjdXRlO2FsYWJsZW1lbnQgaW5zdGFsbCZlYWN1dGU7IGV0IGNvcnJlY3RlbWVudCBjb25maWd1ciZlYWN1dGU7LjwvcD4NCjxoMz5Db3B5cmlnaHQgZXQgTGljZW5jZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDUsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGhvdG1haWwuY29tIj48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBUb3VzIGRyb2l0cyByJmVhY3V0ZTtzZXJ2JmVhY3V0ZTtzLjwvcD4NCjxwPkNlIG1vZHVsZSBlc3QgZGlzdHJpYnUmZWFjdXRlOyBzb3VzIGxhIGxpY2VuY2UgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIiB0YXJnZXQ9Il9ibGFuayI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gVm91cyBkZXZleiBhZ3ImZWFjdXRlO2VyIGF1eCB0ZXJtZXMgZGUgY2V0dGUgbGljZW5jZSBwb3VyIHBvdXZvaXIgdXRpbGlzZXIgY2UgbW9kdWxlLjwvcD4NCjxoMz5TcG9uc29yczwvaDM+DQo8cD5RdWVscXVlcyBzcG9uc29ycyBkZSBjZSBtb2R1bGUgOjwvcD4NCjx1bD4NCiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5tYXR0ZXJob3JubWFya2V0aW5nLmNvbSI+TWF0dGVyaG9ybiBNYXJrZXRpbmc8L2E+PC9saT4NCiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5icHRpLmV1Ij5CYWxrYW4gSW5zdGl0dXRlIG9mIEFkdmFuY2VkIFRlY2hub2xvZ3k8L2E+PC9saT4NCjwvdWw+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNDQ0OTI1MzM3LjEyODA1NjE0OTUuMTI4MDU2MTQ5NS4xMjgwNTYxNDk1LjEnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyODA1NjE0OTUuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICdOZXNzdW5vJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnVXRlbnRlIGNhbmNlbGxhdG8nOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdVdGVudGUgc2NhZHV0byc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQXppb25lIGRhIGVzZWd1aXJlIHF1YW5kbyB1bmEgc290dG9zY3JpemlvbmUgJmVncmF2ZTsgYW5udWxsYXRhJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQXppb25lIGRhIGVzZWd1aXJlIHF1YW5kbyB1bmEgc290dG9zY3JpemlvbmUgJmVncmF2ZTsgY2FuY2VsbGF0YSc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdDb25maWd1cmF6aW9uaSBFY29tbWVyY2UnOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdJbW1hZ2F6emluYSBxdWVzdG8gZGF0byBjcmlwdGF0byBuZWwgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnVGhlIGNob3NlbiBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBnaXZlbiB5b3VyIGN1cnJlbnQgY29uZmlndXJhdGlvbic7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdVdGVudGUgYXV0b21hdGljYW1lbnRlIGNyZWF0byc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdJZiBhIHVzZXIgaXMgYXV0aGVudGljYXRlZCBieSBhbiBleHRlcm5hbCBhdXRoZW50aWNhdGlvbiBtb2R1bGUgYnV0IGlzIG5vdCBrbm93biBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgc2hvdWxkIGFuIEZFVSBhY2NvdW50IGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseT8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNhbWVudGUgY3JlYSB1dGVudGkgU2Nvbm9zY2l1dGknOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYXppb25pIGRpIHZpc3VhbGl6emF6aW9uZSc7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnTGUgc2VndWVudGkgY29uZmlndXJhemlvbmkgc29ubyBzb2xvIGFwcGxpY2FiaWxpIGNvbiBsJiMwMzk7dXNvIGRpICZxdW90O0F1dGVudGljYXppb25pIGludGVybmUmcXVvdDsuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gcmVxdWVzdCBsb3N0IGxvZ2luIGluZm9ybWF0aW9uLCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byBhIHBhc3N3b3JkIHJlc2V0LCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnUGVybWV0dGUgYWdsaSB1dGVudGkgZGkgcmljaGllZGVyZSBpbCBsb3JvIHVzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1Blcm1ldHRlIGFnbGkgdXRlbnRpIGRpIHJpY2hpZWRlcmUgdW4gY2FtYmlhbWVudG8gZGkgcGFzc3dvcmQnOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYXppb25pIGRpIGF1dGVudGljYXppb25lJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnQXV0ZW50aWNhemlvbmkgaW50ZXJuZSc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdBdXRlbnRpY2F6aW9uZSBzdGFuZGFyZCBGRVUnOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdBdXRlbnRpY2F6aW9uZSBNb2R1bG8vTWV0b2RvJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgc3VwcG9ydHMgdXNpbmcgYWx0ZXJuYXRlIGF1dGhlbnRpY2F0aW9uIG1ldGhvZHMsIHdpdGggdmFyeWluZyBjYXBhYmlsaXRpZXMuICBTb21lIGZ1bmN0aW9uYWxpdHkgd2lsbCBub3QgZnVuY3Rpb24gb3IgYmUgZGlzYWJsZWQgd2hlbiBub3QgdXNpbmcgdGhlIGJ1aWx0IGluIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0lsIHZhbG9yZSBzcGVjaWZpY2F0byBwZXIgJXMgJmVncmF2ZTsgZ2kmYWdyYXZlOyBpbiB1c28gZGEgYWx0cm8gdXRlbnRlJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaWNvJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0lsIHZhbG9yZSBzcGVjaWZpY2F0byBwZXIgJXMgKCVzKSBub24gJmVncmF2ZTsgdW5pY28nOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcnphIGkgdmFsb3JpIGRpIHF1ZXN0YSBwcm9wcmlldCZhZ3JhdmU7IGRpIGVzc2VyZSB1bmljYSBhdHRyYXZlcnNvIHR1dHRpIGdsaSB1dGVudGknOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0YXRvcmknOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlemlvbmEgdW5vIG8gcGkmdWdyYXZlOyBncnVwcGkgRkVVIGNoZSBzb25vIHBlcm1lc3NpIGRpIHZpc3VhbGl6emFyZSBxdWVzdGEgcGFnaW5hJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdVbiBncnVwcG8gZGV2ZSBlc3NlcmUgc2VsZXppb25hdG8nOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnU2VsZXppb25hIHVubyc7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnQW5ubyBwYXJ0ZW56YSc7CiRsYW5nWydlbmRfeWVhciddID0gJ0Fubm8gZmluZSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdEaW1lbnNpb25lIG1pbmlhdHVyYSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnQWxsYSBtb2RpZmljYSBkZWkgR3J1cHBpIFV0ZW50ZSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdTb25vIHNlbGV6aW9uYXRpIHRyb3BwaSB1dGVudGkgcGVyIG9wZXJhemlvbmkgZGkgbWFzc2EuLi4gUmlkdWNldGVsaSBhIDI1MCBvIG1lbm8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIGVsaW1pbmFyZSBnbGkgdXRlbnRpIHNlbGV6aW9uYXRpPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdFbGltaW5hIFNlbGV6aW9uYXRpJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYSBub21lIHV0ZW50ZSBjYXN1YWxlIHF1YW5kbyBzaSBhZ2dpdW5nb25vIG51b3ZpIHV0ZW50aSc7CiRsYW5nWydtb250aHMnXSA9ICdtZXNpJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQZXJpb2RvIGRpIHZhbGlkaXQmYWdyYXZlOyB1dGVudGUgcHJlZGVmaW5pdG8nOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIG5vdGlmaWNhJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgcmVkaXJlemlvbmFtZW50byc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIEdlbmVyYWxpJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgU2Vzc2lvbmUgZSBDb29raWUnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQ2FtcGknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnSWwgZmxhZyBsb3N0dXNlcm5hbWUgcHUmb2dyYXZlOyBlc3NlcmUgdXRpbGl6emF0byBzb2xvIHN1IGNhbXBpIG9iYmxpZ2F0b3JpJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1Blcm1ldHRpIGwmIzAzOTt1c28gZGkgdW4gZWRpdG9yIHd5c2l3eWcgcGVyIHF1ZXN0JiMwMzk7YXJlYSBkaSB0ZXN0byc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RhOiA8L3N0cm9uZz4gVmVycmFubm8gdXRpbGl6emF0ZSBsZSBmdW56aW9uaSBtY3J5cHQgcGVyIHNjb3BpIGRpIGNyaXB0YXppb25lIGUgcG90cmViYmVybyBub24gdmVuaXJlIGluZGl2aWR1YXRlIGR1cmFudGUgbGEgdm9zdHJhIGluc3RhbGxhemlvbmUuIENvbnRhdHRhdGUgaWwgdm9zdHJvIGFtbWluaXN0cmF0b3JlIGRlbCBzZXJ2ZXIuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ01vZGlmaWNhIFV0ZW50ZSc7CiRsYW5nWydub2lubGluZSddID0gJ05vbiBhbGxpbmVhcmUgTW9kdWxpJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnQ2xpY2NhdGUgcXVpIHNlIG5vbiByaWNvcmRhdGUgaSBkZXR0YWdsaSBkZWwgdm9zdHJvIGxvZ2luJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljY2F0ZSBxdWkgc2Ugbm9uIHJpY29yZGF0ZSBsYSB2b3N0cmEgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdDbGljY2F0ZSBxdWkgcGVyIGRpc2Nvbm5ldHRlcnZpJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljY2F0ZSBxdWkgcGVyIG1vZGlmaWNhcmUgbGEgdm9zdHJhIHBhc3N3b3JkIG8gYWx0cmUgaW5mb3JtYXppb25pJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVmlzdWFsaXp6YSBpbCBNb2RlbGxvIFV0ZW50ZSc7CiRsYW5nWydldmVudCddID0gJ0V2ZW50byc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnTm90aWZpY2EgRXZlbnRvIEZFVSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdJbmRpcml6em8gRW1haWwgcGVyIE5vdGlmaWNoZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBFbWFpbCBkaSBOb3RpZmljYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdPZ2dldHRvIGRlbGxhIEVtYWlsIGRpIG5vdGlmaWNhJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnTm90aWZpY2hlIHZpYSBFbWFpbCc7CiRsYW5nWydPbkxvZ2luJ10gPSAnQWwgTG9naW4nOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBbCBMb2dvdXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQWxsYSBTY2FkZW56YSBTZXNzaW9uZSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdBbGxhIENyZWF6aW9uZSBOdW92byBVdGVudGUnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnQWxsYSBDYW5jZWxsYXppb25lIFV0ZW50ZSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdBbGxhIE1vZGlmaWNhIEltcG9zdGF6aW9uaSBVdGVudGUnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0FsbGEgQ3JlYXppb25lIEdydXBwaSBVdGVudGUnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0FsbGEgQ2FuY2VsbGF6aW9uZSBHcnVwcGkgVXRlbnRlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnTGEgZnVuemlvbmFsaXQmYWdyYXZlOyBkZXR0YWdsaSBkaSBsb2dpbiBwZXJzaSAmZWdyYXZlOyBzdGF0YSBjb21wbGV0YXRhIGNvcnJldHRhbWVudGUuIEFiYmlhbW8gdHJvdmF0byB1biBub21lIHV0ZW50ZSB1bml2b2NvIGNoZSBjb3JyaXNwb25kZSBjb24gbGUgaW5mb3JtYXppb25pIGNoZSBhdmV0ZSBpbnNlcml0by4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0lsIHZvc3RybyBub21lIHV0ZW50ZSAmZWdyYXZlOyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdWaSByYWNjb21hbmRpYW1vIGRpIHJlZ2lzdHJhcmUgcXVlc3RhIGluZm9ybWF6aW9uZSBpbiB1biBwb3N0byBzaWN1cm8gbWEgcmVjdXBlcmFiaWxlLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnSUQvQWxpYXMgZGkgcGFnaW5hIGEgY3VpIGFuZGFyZSBkb3BvIGlsIGNhbWJpbyBkZWxsZSBpbXBvc3RhemlvbmknOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnSUQvQWxpYXMgZGkgcGFnaW5hIGEgY3VpIGFuZGFyZSBkb3BvIGxhIHZlcmlmaWNhIGRlbCBjb2RpY2UgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ01vZGVsbG8gRGV0dGFnbGkgTm9tZSBVdGVudGUgUGVyc28nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdNb2RlbGxvIENvbmZlcm1hIE5vbWUgVXRlbnRlIFBlcnNvJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3JlOiBQaSZ1Z3JhdmU7IGRpIHVuIGFjY291bnQgdXRlbnRlIGNvaW5jaWRlIGNvbiBsZSBwcm9wcmlldCZhZ3JhdmU7IHNwZWNpZmljYXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yZTogTm9uIHRyb3ZvIG5lc3N1biB1dGVudGUgY29ycmlzcG9uZGVudGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm9yZTogTm9uIHRyb3ZvIHVuIGdydXBwbyBjb24gcXVlbCBub21lJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU29sYSBsZXR0dXJhJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdDbGFzc2UgcGVyIGxhIG1hbmlwb2xhemlvbmUgdXRlbnRpJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0Rpc2Nvbm5lc3NvIGRhbGwmIzAzOTthbW1pbmlzdHJhdG9yZSc7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnTW9zdHJhIHNvbG8gdXRlbnRpIGNvbm5lc3NpJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEaXNjb25uZXR0aSBxdWVzdG8gdXRlbnRlJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByaWV0JmFncmF2ZTsgdXRlbnRlJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnQ3Jvbm9sb2dpYSB1dGVudGUnOwokbGFuZ1snZXhwb3J0J10gPSAnRXNwb3J0YSc7CiRsYW5nWydjbGVhciddID0gJ1B1bGlzY2knOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXNwb3J0YSBsYSBDcm9ub2xvZ2lhIFV0ZW50ZSBpbiBBU0NJSSBjaGUgJmVncmF2ZTsgYWxtZW5vJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnUHVsaXNjaSBpIHZhbG9yaSBkZWxsYSBDcm9ub2xvZ2lhIFV0ZW50ZSBjaGUgc29ubyBhbG1lbm8nOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnVmFsb3JpIGRpIExvZ2luIERpbWVudGljYXRpPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFc3BvcnRhIGRlZmluaXppb25pIGRlbCBncnVwcG8gKGUgcHJvcHJpZXQmYWdyYXZlOykgaW4gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdHZXN0aW9uZSBjcm9ub2xvZ2lhIHV0ZW50ZSc7CiRsYW5nWyd5ZXMnXSA9ICdTJmlncmF2ZTsnOwokbGFuZ1snbm8nXSA9ICdObyc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdkaSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBOZXNzdW4gbGltaXRlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1ZlY2NoaW8gZGkgdW4gb3JhJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1ZlY2NoaW8gZGkgc2VpIG9yZSc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdWZWNjaGlvIGRpIGRvZGljaSBvcmUnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdWZWNjaGlvIGRpIHVuIGdpb3Jubyc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdWZWNjaGlvIGRpIHVuYSBzZXR0aW1hbmEnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1ZlY2NoaW8gZGkgZHVlIHNldHRpbWFuZSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnVmVjY2hpbyBkaSB1biBtZXNlJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdWZWNjaGlvIGRpIHRyZSBtZXNpJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnVmVjY2hpbyBkaSBzZWkgbWVzaSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdWZWNjaGlvIGRpIHVuIGFubm8nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnUmFnZ3J1cHBhbWVudG8gZSBvcmRpbmFtZW50byc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnVmFsb3JpIGNoZSBjb3JyaXNwb25kb25vIGFsIGNyaXRlcmlvJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTm9taSBVdGVudGUgZGlzY2VuZGVudGknOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ05vbWkgVXRlbnRlIGFzY2VuZGVudGknOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0RhdGEgZGlzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnRGF0YSBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RpcG8gZXZlbnRvIGRpc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnVGlwbyBldmVudG8gYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdJbmRpcml6emkgSXAgZGlzY2VuZGVudGknOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdJbmRpcml6emkgSXAgYXNjZW5kZW50aSc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTmVzc3VuYSBjcm9ub2xvZ2lhIHRyb3ZhdGEnOwokbGFuZ1sncmVzZXQnXSA9ICdBenplcmEnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnUmFnZ3J1cHBhIHBlciBpbmRpcml6em8gSVAnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0cmEgcGVyIHRpcG8gZGkgZXZlbnRvJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1Zpc3VhbGl6emEgc29sbyBnbGkgZXZlbnRpIGNoZSBzb25vIG1lbm8gZGk6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMaW1pdGUgcGFnaW5hJzsKJGxhbmdbJ2ZvciddID0gJ3Blcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1JlcG9ydCBjcm9ub2xvZ2lhIHV0ZW50ZSc7CiRsYW5nWyd1bmtub3duJ10gPSAnU2Nvbm9zY2l1dG8nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0luZGlyaXp6byBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwbyBldmVudG8nOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdSaXRvcm5hJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdPcGVyYXppb25lIGRpIGltcG9ydGF6aW9uZSBjb21wbGV0YXRhJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpbmVlIHByb2Nlc3NhdGUnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9yaSBpbmNvbnRyYXRpJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdSZWNvcmQgYWdnaXVudGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ05vbiB0cm92byBwcm9wcmlldCZhZ3JhdmU7IHBlciBpbCBncnVwcG8gJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdOb24gaG8gb3R0ZW51dG8gcmlzcG9zdGUgZGFsIHNlcnZlciBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0lsIGZpbGUgc3BlY2lmaWNhdG8gKCVzKSBub24gJmVncmF2ZTsgc3RhdG8gdHJvdmF0byc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVmFsb3JlIG5vbiB2YWxpZGkgcGVyIGNhbXBpIHRlbmRpbmEgbyBtdWx0aXNlbGV6aW9uZSAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0lsIGNhbXBvICVzIGVjY2VkZSBsYSBsdW5naGV6emEgbWFzc2ltYSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vycm9yZSBkaSBpbXBvcnRhemlvbmUgKGxpbmVhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ05vbiByaWVzY28gYWQgb3R0ZW5lcmUgbGUgZGVmaW5pemlvbmkgZGVsbGEgcHJvcHJpZXQmYWdyYXZlOyAoZXJyb3JlIGludGVybm8pJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTtpbXBvc3RhcmUgbGUgaW5mb3JtYXppb25pIHV0ZW50ZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnTm9uIHRyb3ZvIHVuYSBjb2xvbm5hIGNoZSBjb2luY2lkYSBjb24gaWwgY2FtcG8gcmljaGllc3RvICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnTm9uIHRyb3ZvIHByb3ByaWV0JmFncmF2ZTsgcGVyIGlsIGdydXBwbyBzcGVjaWZpY2F0byc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnSWwgZmlsZSBzcGVjaWZpY2F0byBwZXIgbCYjMDM5O2ltcG9ydGF6aW9uZSBub24gJmVncmF2ZTsgbmVsIGZvcm1hdG8gY29ycmV0dG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05vbiBwb3NzbyBhcHJpcmUgaWwgZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0YSBVdGVudGkgaW4gcXVlc3RvIEdydXBwbyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdGaWxlIENTViBkaSBJbnB1dCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0ZpbGUgWE1MIGRpIElucHV0JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0VzcG9ydGEgVXRlbnRpJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGEgVXRlbnRpJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1B1bGlzY2knOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdQZXJjb3JzbyBEZXN0aW5hemlvbmUgSW1tYWdpbmUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdQcm9ibGVtYSBvY2NvcnNvIGNvbiB1biBmaWxlIGNhcmljYXRvIG1hbmNhbnRlIChtYSBuZWNlc3NhcmlvKSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnTm9uIHJpZXNjbyBhZCBpbnRlcnByZXRhcmUgaWwgZmlsZSBYTUwgZm9ybml0byc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTm9uIHBvc3NvIGVsaW1pbmFyZSB1biBncnVwcG8gY2hlIGNvbnRpZW5lIGFuY29yYSB1dGVudGknOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1F1ZXN0byB1dGVudGUgJmVncmF2ZTsgZ2kmYWdyYXZlOyBjb2xsZWdhdG8nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnSWwgdGVzdG8gZGFsbCYjMDM5O2ltbWFnaW5lIG5vbiAmZWdyYXZlOyBzdGF0byBpbnNlcml0byBjb3JyZXR0YW1lbnRlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdQZXJtZXR0ZSBhZ2xpIHV0ZW50aSBkaSBjb25uZXR0ZXJzaSBwaSZ1Z3JhdmU7IHZvbHRlIGNvbnRlbXBvcmFuZWFtZW50ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnRXN0ZW5zaW9uaSBkZWwgZmlsZSBpbW1hZ2luZSBkaSB1cGxvYWQgcGVybWVzc2kgYWxsJiMwMzk7dXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlIHZpZW5lIGNhbmNlbGxhdG88L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIElsIG5vbWUgdXRlbnRlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCB1dGVudGU8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjcmVhdG8gdW4gdXRlbnRlPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIElsIG5vbWUgdXRlbnRlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCB1dGVudGU8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB1biB1dGVudGUgJmVncmF2ZTsgYWdnaW9ybmF0byAobyBkYWxsbyBzdGVzc28gdXNlciBvIGRhIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIHV0ZW50ZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgdXRlbnRlPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjcmVhdG8gdW4gZ3J1cHBvPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIElsIG5vbWUgZGVsIGdydXBwbzwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBMYSBkZXNjcml6aW9uZSBkZWwgZ3J1cHBvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCBkZWwgZ3J1cHBvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjYW5jZWxsYXRvIHVuIGdydXBwbzwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIGRlbCBncnVwcG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIGRlbCBncnVwcG88L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBlZmZldHR1YSBsJiMwMzk7YWNjZXNzbzwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsJiMwMzk7dXRlbnRlIGNoZSBoYSBlZmZldHR1YXRvIGwmIzAzOTthY2Nlc3NvPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIEwmIzAzOTtpbmRpcml6em8gSVAgZGVsIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBzaSBkaXNjb25uZXR0ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsJiMwMzk7dXRlbnRlIGRpc2Nvbm5lc3NvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCB1dGVudGU8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gc2NhZGUgdW5hIHNlc3Npb25lIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsJiMwMzk7dXRlbnRlIHNjYWR1dG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIGRlbGwmIzAzOTt1dGVudGUgc2NhZHV0bzwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlIHNpIGNvbm5ldHRlIGFsIHNpc3RlbWEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlIHNpIGRpc2Nvbm5ldHRlIGRhbCBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyBsYSBzZXNzaW9uZSB1dGVudGUgc2NhZGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHZpZW5lIGNyZWF0byB1biBudW92byB1dGVudGUnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIGxlIGluZm9ybWF6aW9uaSB1dGVudGUgc29ubyBhZ2dpb3JuYXRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjYW5jZWxsYXRvIHVuIGFjY291bnQgdXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIG51b3ZvIGdydXBwbyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHZpZW5lIGNhbmNlbGxhdG8gdW4gZ3J1cHBvJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwcG8gZGkgQmFja2VuZCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIExlIHNlZ3VlbnRpIG1hY3JvIHBvc3Nvbm8gZXNzZXJlIHVzYXRlIGluIHF1ZXN0byBjYW1waTogeyR1c2VybmFtZX0seyRncm91cH0uIFF1YW5kbyB1c2F0ZSBsYSBtYWNybyB7JGdyb3VwfSwgaWwgc2lzdGVtYSBzb3N0aXR1aXImYWdyYXZlOyBpbCBub21lIGRlbCBwcmltbyBncnVwcG8gdXRlbnRpIGEgY3VpIGFwcGFydGllbmUgbCYjMDM5O3V0ZW50ZSBlIHJlZGlyZXppb25lciZhZ3JhdmU7IGEgcXVlbGxhIHBhZ2luYS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ01vZGlmaWNhIHF1ZXN0byBjYW1wbyBwZXIgcmVzZXR0YXJlIGxlIHBhc3N3b3JkIHV0ZW50aSc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnTW9kaWZpY2EgcXVlc3RvIGNhbXBvIHBlciByZXNldHRhcmUgbGUgcGFzc3dvcmQgdXRlbnRpJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0VzaXN0ZSBnaSZhZ3JhdmU7IHVuIHV0ZW50ZSBjb24gcXVlc3RvIHVzZXJuYW1lJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05lc3N1biByaXN1bHRhdG8gcmljZXZ1dG8gZGFsbCYjMDM5O2VzcG9ydGF6aW9uZSBjc3YnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTHVuZ2hlenphIGRlbCBjYW1wbyBub21lIHV0ZW50ZSc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMdW5naGV6emEgZGVsIGNhbXBvIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMdW5naGV6emEgTWluL01heCBkZWxsYSBwYXNzd29yZCBub24gdmFsaWRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdMdW5naGV6emEgTWluL01heCBkZWwgbm9tZSB1dGVudGUgbm9uIHZhbGlkYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW5kaXJpenpvIEVtYWlsIG5vbiB2YWxpZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdOb24gdHJvdm8gdW4gaW5kaXJpenpvIGVtYWlsIHBlciBxdWVzdG8gYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbWEgbmVsbCYjMDM5O2ltcG9zdGF6aW9uZSBkZWxsZSBpbmZvcm1hemlvbmkgdXRlbnRlJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTtpbXBvc3RhemlvbmUgZGVsbGUgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXRlbnRlIGFnZ2l1bnRvICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXRlbnRlIGNhbmNlbGxhdG8gdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsb3JlIChlc3ByZXNzaW9uZSByZWdvbGFyZSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBdHRlbnppb25lOiBRdWVzdGkgY2FtcGkgaW5mbHVpc2Nvbm8gc3VsbGEgZGltZW5zaW9uZSBkZWkgY2FtcGkgZGkgaW5wdXQgZGVpIGZvcm0uIFBvdHJlYmJlIG5vbiBlc3NlcmUgY29uc2lnbGlhYmlsZSBkaW1pbnVpcmUgcXVlc3RvIG51bWVybyBzdSB1biBzaXRvIGVzaXN0ZW50ZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU2lldGUgc2ljdXJpIGRpIHZvbGVyZSBtb2RpZmljYXJlIGxlIHByZWZlcmVuemUgZGVsIG1vZHVsbz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0luZGlyaXp6byBlbWFpbCBnaSZhZ3JhdmU7IHVzYXRvJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzYSBjb29raWVzIHBlciByaWNvcmRhcmUgaSBkZXR0YWdsaSBkZWwgbG9naW4nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOb21lIGRlbCBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdQZXJtZXR0aSBlbWFpbCBkdXBsaWNhdGUnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnTCYjMDM5O2luZGlyaXp6byBFbWFpbCBkaXZlbnRhIGxvIHVzZXJuYW1lJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ1NpIGNlcmNhIGRpIHRlbmVyZSBhdHRpdmEgbGEgc2Vzc2lvbmUgY29uIGwmIzAzOTt1c28gZGkgdW4gY29va2llIDxlbT4oaWwgY29va2llICZlZ3JhdmU7IGNvbnRpbnVhbWVudGUgcmVzZXR0YXRvIGNvbiBsJiMwMzk7YXR0aXZpdCZhZ3JhdmU7IHN1bCBzaXRvKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhwZXJtZXR0aSBwaSZ1Z3JhdmU7IHV0ZW50aSBjb24gbG8gc3Rlc3NvIGluZGlyaXp6byBlbWFpbCknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyhpbmRpcml6em8gZW1haWwgZGVsbCYjMDM5O3V0ZW50ZSAmZWdyYXZlOyBpbCBzdW8gbm9tZSB1dGVudGUgLS0gbm9uIHV0aWxpenphcmUgcXVlc3RhIGltcG9zdGF6aW9uZSBjb24gJnF1b3Q7cGVybWV0dGkgaW5kaXJpenppIGVtYWlsIGR1cGxpY2F0aSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnUGVybWV0dGkgcmljaGllc3RlIG11bHRpcGxlIHBlciBwYXNzd29yZCBkaW1lbnRpY2F0ZT8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHBlcm1ldHRlIGFkIHVuIHV0ZW50ZSBkaSByaWNoaWVkZXJlIGwmIzAzOTthenplcmFtZW50byBkZWxsYSBwYXNzd29yZCBhbmNoZSBzZSBub24gaGEgcG9ydGF0byBhIHRlcm1pbmUgdW5hIHJpY2hpZXN0YSBwcmVjZWRlbnRlKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzYSBpIHBlcm1lc3NpIHNwZWNpZmljaSBkZWwgbW9kdWxvIEZyb250RW5kVXNlcj8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbG1lbnRlIGkgcGVybWVzc2kgcGVyIEZFVXNlcnMgc29ubyBnbGkgc3Rlc3NpIGRlZ2xpIGVxdWl2YWxlbnRpIHBlcm1lc3NpIG5lbGwmIzAzOTthcmVhIEFtbWluaXN0cmF6aW9uZSBjb21lIEFnZ2l1bmdpIFV0ZW50ZSwgQWdnaXVuZ2kgR3J1cHBvLCBldGMuIFNlIHNlbGV6aW9uYXRlIHF1ZXN0YSBvcHppb25lIGNpIHNhcmFubm8gcGVybWVzc2kgc2VwYXJhdGkgcGVyIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnTm9uIHRyb3ZvIGlsIGZpbGUgZGkgdXBsb2FkIChlcnJvcmUgaW50ZXJubyknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdTaSAmZWdyYXZlOyB2ZXJpZmljYXRvIHVuIHByb2JsZW1hIG5lbCBmaWxlIHNwZWRpdG8uIFNpIHByZWdhIGRpIHJpcHJvdmFyZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdOb24gYXZldGUgaW5zZXJpdG8gdW4gbm9tZSB1dGVudGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnTm9uIGF2ZXRlIGluc2VyaXRvIGxhIFZvc3RyYSBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOb24gYXZldGUgaW5zZXJpdG8gdW5hIHBhc3N3b3JkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdMb2dvdXQgVXRlbnRlIEZyb250RW5kJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0xvZ2luIFV0ZW50ZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPHNwYW4gc3R5bGU9JnF1b3Q7Y29sb3I6cmVkJnF1b3Q7PjxiPlVTQVJFIENPTiBDQVVURUxBPC9iPiBxdWFuZG8gbW9kaWZpY2F0ZSBwcm9wcmlldCZhZ3JhdmU7IGVzaXN0ZW50aSBjaGUgc29ubyBhc3NlZ25hdGUgYSBncnVwcGksIHBvdGV0ZSBwb3RlbnppYWxtZW50ZSBjYXVzYXJlIGRhbm5pIGUgYmxvY2NhcmUgdW4gc2l0byBlc2lzdGVudGUgPGk+KHNwZWNpYWxtZW50ZSBzZSByaWR1Y2V0ZSBsYSBsdW5naGV6emEgZGVpIGNhbXBpLCBldGMpPC9pPjwvc3Bhbj4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdRdWVzdGEgZnVuemlvbmUgbm9uIGZ1bnppb25hIHN1IHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05vbiBjcmVhdGUgdW5hIHByb3ByaWV0JmFncmF2ZTsgcGVyIHVzZXJuYW1lIG8gcGFzc3dvcmQsIHBvaWNoJmVncmF2ZTsgcXVlc3RlIHByb3ByaWV0JmFncmF2ZTsgc29ubyBnaSZhZ3JhdmU7IGluc2VyaXRlIG5lbCBtb2R1bG8gRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXNwb3J0YSBnbGkgdXRlbnRpIGluIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFc3BvcnRhJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGEnOwokbGFuZ1snYWRtaW4nXSA9ICdBbW1pbmlzdHJhemlvbmUnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdNb2RpZmljYSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01hc3NpbWEgbHVuZ2hlenphJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdG8nOwokbGFuZ1snc29ydGJ5J10gPSAnT3JkaW5hdG8gcGVyJzsKJGxhbmdbJ3NvcnQnXSA9ICdPcmRpbmFtZW50byc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVdGVudGkgbmVsIGdydXBwby9pIHNlbGV6aW9uYXRvL2knOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXRhIHJpc3VsdGF0aSBhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ05vbiByaWVzY28gYSB0cm92YXJlIHVuIGNhbXBvIGVtYWlsIHBlciBxdWVzdG8gdXRlbnRlLiBDb250YXR0YXJlIGwmIzAzOTthbW1pbmlzdHJhdG9yZSBkZWwgc2lzdGVtYSc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0lEL0FsaWFzIGRlbGxhIHBhZ2luYSBwZXIgaWwgbW9kdWxvIGRpIFBhc3N3b3JkIGRpbWVudGljYXRhJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnSUQvQWxpYXMgZGVsbGEgcGFnaW5hIHBlciBpbCBtb2R1bG8gZGkgTW9kaWZpY2EgY29uZmlndXJhemlvbmknOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdJRC9BbGlhcyBkZWxsYSBwYWdpbmEgYSBjdWkgYW5kYXJlIGRvcG8gaWwgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdJRC9BbGlhcyBkZWxsYSBwYWdpbmEgYSBjdWkgYW5kYXJlIGRvcG8gaWwgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnT3JkaW5hJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ1VuIG51bWVybyBkaSB1dGVudGkgc29ubyBuZWwgbWV6em8gZGVsbCYjMDM5O2F6emVyYW1lbnRvIGRlbGxhIGxvcm8gcGFzc3dvcmQgZGltZW50aWNhdGUuIEluIHF1ZXN0byBtb21lbnRvIHNvbm86JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnUmltdW92aSB0dXR0ZSBsZSBlbnRpdCZhZ3JhdmU7IHBpJnVncmF2ZTsgdmVjY2hpZSBkaSB1bmEgc2V0dGltYW5hJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1JpbXVvdmkgdHV0dGUgbGUgZW50aXQmYWdyYXZlOyBwaSZ1Z3JhdmU7IHZlY2NoaWUgZGkgdW4gbWVzZSc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSaW11b3ZpIHR1dHRlIGxlIGVudGl0JmFncmF2ZTsnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1NpZXRlIHNpY3VyaT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdFJiMwMzk7IHN0YXRvIGluIHNlcml0byB1biBjb2RpY2Ugbm9uIHZhbGlkbywgcHJvdmF0ZSBkaSBudW92byc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnTm9uICZlZ3JhdmU7IHBvc3NpYmlsZSB0cm92YXJlIHVuIGNvZGljZSB0ZW1wb3JhbmVvIHBlciBpbCB2b3N0cm8gSUQgdXRlbnRlIG5lbCBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ01vZGVsbG8gdXNhdG8gcGVyIHZpc3VhbGl6emFyZSBpbCBtb2R1bG8gZGkgdmVyaWZpY2EnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ01vZGVsbG8gdXNhdG8gcGVyIGxhIGVtYWlsIHBlciBwYXNzd29yZCBkaW1lbnRpY2F0YSc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnVm9pIG8gcXVhbGN1biYjMDM5O2FsdHJvIGhhIGdpJmFncmF2ZTsgcmljaGllc3RvIGRpIGF6emVyYXJlIGxhIHBhc3N3b3JkIHBlciBxdWVzdG8gYWNjb3VudC4gQ29udHJvbGxhdGUgbGEgdm9zdHJhIGVtYWlsLCBkb3ZyZXN0ZSBhdmVyZSByaWNldnV0byBsZSBpc3RydXppb25pIHN1IGNvbWUgYXp6ZXJhcmUgbGEgdm9zdHJhIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvcmUgZGVsIGRhdGFiYXNlJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ0F2ZXRlIHJpY2V2dXRvIHF1ZXN0byBtZXNzYWdnaW8gcGVyY2gmZWdyYXZlOyBxdWFsY3VubyBoYSBzZWduYWxhdG8gc3VsIG5vc3RybyBzaXRvIGNoZSBhdmV0ZSBwZXJzbyBsYSBWb3N0cmEgcGFzc3dvcmQuIFNlICZlZ3JhdmU7IGNvcnJldHRvLCBsZWdnZXRlIGxlIGlzdHJ1emlvbmkgc290dG9zdGFudGkuIFNlIG5vbiBzYXBldGUgZGkgY29zYSBzaSB0cmF0dGksIHBvdGV0ZSB0cmFucXVpbGxhbWVudGUgY2FuY2VsbGFyZSBxdWVzdG8gbWVzc2FnZ2lvLCBncmF6aWUgcGVyIGlsIHRlbXBvIGRlZGljYXRvY2kuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kaWNlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ0lsIHNlZ3VlbnRlIGNvZGljZSAmZWdyYXZlOyBzdGF0byBnZW5lcmF0byBpbiBtYW5pZXJhIGNhc3VhbGUgcGVyIHZlcmlmaWNhcmUgbCYjMDM5O2FjY291bnQgdXRlbnRlLiBRdWFuZG8gZmF0ZSBjbGljayBzdWwgbGluayBzb3R0b3N0YW50ZSB2ZXJyJmFncmF2ZTsgdmlzdWFsaXp6YXRvIHVuIGNhbXBvIGluIGN1aSBpbnNlcmlyZSBxdWVzdG8gY29kaWNlLiBOb3JtYWxtZW50ZSBpbCBjYW1wbyAmZWdyYXZlOyBwcmUtY29tcGlsYXRvIHBlciBWb2ksIG1hIHNlIGNvcyZpZ3JhdmU7IG5vbiBmb3NzZSBpbCBjb2RpY2UgJmVncmF2ZTs6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnU2VndWVuZG8gaWwgbGluayBzZWd1ZW50ZSB2ZXJyZXRlIHBvcnRhdGkgYWwgc2l0byB3ZWIgZG92ZSBpbnNlcmlyZSBpbCBjb2RpY2Ugcmlwb3J0YXRvIHNvcHJhIHBlciBhenplcmFyZSBsYSB2b3N0cmEgcGFzc3dvcmQ6JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdQYXNzd29yZCBwZXJzYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05vbiB0cm92byBpbCBtb2R1bG8gQ01TTWFpbGVyJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VuYSBlbWFpbCAmZWdyYXZlOyBzdGF0YSBzcGVkaXRhIGFsbCYjMDM5O2luZGlyaXp6byAlcyBjb24gbGUgaXN0cnV6aW9uaSBzdSBjb21lIGF6emVyYXJlIGxhIHZvc3RyYSBwYXNzd29yZC4gR3JhemllJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnQXZldGUgcXVpbmRpIGRpbWVudGljYXRvIG8gcGVyc28gbGEgdm9zdHJhIHBhc3N3b3JkLiBEaWdpdGF0ZSBpbCB2b3N0cm8gbm9tZSB1dGVudGUgZSBzZSB2ZXJyJmFncmF2ZTsgdHJvdmF0byBzcGVkaXJlbW8gdW5hIGVtYWlsIGNvbiBsZSBpc3RydXppb25pIHN1IGNvbWUgYXp6ZXJhcmxhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBwZXIgUGFzc3dvcmQgZGltZW50aWNhdGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBQZXJkaXRhIFVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1Byb3ByaWV0JmFncmF2ZTsgJXMgbm9uIHRyb3ZhdGEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Byb3ByaWV0JmFncmF2ZTsgdHJvdmF0YSc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWdnaXVuZ2kgUHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnVW4gY2FtcG8gcmljaGllc3RvICglcykgZXJhIHZ1b3RvJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnSW5zZXJpcmUgc29sbyBwZXIgbW9kaWZpY2FyZSBxdWVsbGEgcHJlY2VkZW50ZSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1NlbWJyYSBjaGUgbm9uIGFiYmlhdGUgZWZmZXR0dWF0byBsJiMwMzk7YWNjZXNzbyc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmF6aW9uZSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1F1ZXN0byBhY2NvdW50ICZlZ3JhdmU7IHNjYWR1dG8nOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0Zvcm1hdHRhemlvbmUgZGVsbCYjMDM5O2luZGlyaXp6byBkaSBlbWFpbCBub24gdmFsaWRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnRGF0YSBkaSBzY2FkZW56YSBub24gdmFsaWRhJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvcmUgbmVsbCYjMDM5O2ltcG9zdGF6aW9uZSBkZWxsYSBwcm9wcmlldCZhZ3JhdmU7ICVzIHBlciBsJiMwMzk7dXRlbnRlICVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSUQgZGkgZ3J1cHBvICVzIG5vbiB2YWxpZG8nOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdNYXJjYXRvcmUgZGVsIGNhbXBvIG5hc2Nvc3RvJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdDb2xvcmUgZGVsIGNhbXBvIG5hc2Nvc3RvJzsKJGxhbmdbJ2hpZGRlbiddID0gJ05hc2Nvc3RvJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdVbmEgcHJvcHJpZXQmYWdyYXZlOyBjb24gcXVlbCBub21lICZlZ3JhdmU7IGdpJmFncmF2ZTsgZGVmaW5pdGEnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVzc3VuYSBwcm9wcmlldCZhZ3JhdmU7IGRlZmluaXRhJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVzc3VuYSBwcm9wcmlldCZhZ3JhdmU7IHNlbGV6aW9uYXRhIHBlciBxdWVzdG8gZ3J1cHBvJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTmVzc3VuIGdydXBwbyBkZWZpbml0byc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dydXBwaSB0cm92YXRpJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdFJiMwMzk7IG5lY2Vzc2FyaW8gZXNzZXJlIG1lbWJybyBkaSBhbG1lbm8gdW4gZ3J1cHBvJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSaWNoaWVkZSBlc3NlcmUgbWVtYnJvIGRpIGFsbWVubyB1biBncnVwcG8nOwokbGFuZ1snYmFjayddID0gJ0luZGlldHJvJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyAmZWdyYXZlOyB1biBjYW1wbyBvYmJsaWdhdG9yaW8nOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmNhIGkgY2FtcGkgcmljaGllc3RpIGNvbic7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdFdmlkZW56aWFyZSBpIGNhbXBpIHJpY2hpZXN0aSBpbic7CiRsYW5nWyduZXh0J10gPSAnUHJvc3NpbW8nOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdVbiBncnVwcG8gY29uIHF1ZWwgbm9tZSAmZWdyYXZlOyBnaSZhZ3JhdmU7IHByZXNlbnRlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnQ2FtcG8gb2JibGlnYXRvcmlvJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnRmFjb2x0YXRpdm8nOwokbGFuZ1snb2ZmJ10gPSAnT2ZmJzsKJGxhbmdbJ3NpemUnXSA9ICdEaW1lbnNpb25lJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyIC8+KE1hc3NpbW8gbGF0byBkaSB1bmEgaW1tYWdpbmUgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMdW5naGV6emEnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxiciAvPihjYXJhdHRlcmkgbmVsIGNhbXBvIGRpIHRlc3RvKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnT3B6aW9uaSBkZWxsYSB0ZW5kaW5hLCBzZXBhcmF0aSBkYSBmaW5lIGxpbmVhLiBWYWxvcmkgcG9zc29ubyBlc3NlcmUgc2VwYXJhdGkgZGFsIHRlc3RvIGNvbiB1biA9LCBwZXIgZXNlbXBpbyBGZW1taW5hPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnRXRpY2hldHRlIFJhZGlvYnV0dG9uLCBzZXBhcmF0aSBkYSBmaW5lIGxpbmVhLiBWYWxvcmkgcG9zc29ubyBlc3NlcmUgc2VwYXJhdGkgZGFsIHRlc3RvIGNvbiB1biA9LCBwZXIgZXNlbXBpbyBGZW1taW5hPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnU3VnZ2VyaW1lbnRvJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVGlwbyc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwbyc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0NhbXBvIFN0YXRvJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0NoaWVkaSBpbiBQZXJkaXRhPGJyLz5Vc2VybmFtZSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVzdG8nOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0xpc3RhIE11bHRpIFNlbGVjdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1tYWdpbmUnOwokbGFuZ1snZW1haWwnXSA9ICdJbmRpcml6em8gZW1haWwnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdBcmVhIGRpIHRlc3RvJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnVGVuZGluYSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ0JlbnZlbnV0byc7CiRsYW5nWydsb2dvdXQnXSA9ICdVc2NpdGEnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ1VzYSBxdWVzdG8gbm9tZSBkaSBncnVwcG8nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnTW9kaWZpY2EgbGUgbWllIGltcG9zdGF6aW9uaSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIGZhbGxpdG8gLSBub21lIHV0ZW50ZSBvIHBhc3N3b3JkIHNiYWdsaWF0aT8nOwokbGFuZ1snbG9naW4nXSA9ICdBY2NlZGknOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdFdGljaGV0dGEgZGVsIHB1bHNhbnRlIGRpIEFjY2Vzc28nOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnTm9tZSB1dGVudGUnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnSW5kaXJpenpvIEVtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmljb3JkYW1pIHN1IHF1ZXN0byBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJhdGknOwokbGFuZ1snZm9yZ290cHcnXSA9ICdQYXNzd29yZCBkaW1lbnRpY2F0YT8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRGltZW50aWNhdG8gaWwgVm9zdHJvIGxvZ2luPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ1ZhbG9yaSBwcmVkZWZpbml0aSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01vZGVsbG8nOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSUQgdXRlbnRlIG5vbiB0cm92YXRvJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdRdWVzdG8gdXNlcm5hbWUgKCVzKSAmZWdyYXZlOyBnaSZhZ3JhdmU7IGluIHVzbyc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNhcmUgU01UUCBwZXIgdmFsaWRhcmUgaW5kaXJpenppIGVtYWlsPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdMdW5naGV6emEgbWluaW1hIGRlbGxhIHBhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0x1bmdoZXp6YSBtYXNzaW1hIGRlbGxhIHBhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ0x1bmdoZXp6YSBtaW5pbWEgZGVsIG5vbWUgdXRlbnRlJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ0x1bmdoZXp6YSBtYXNzaW1hIGRlbCBub21lIHV0ZW50ZSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdUaW1lb3V0IGRlbGxhIHNlc3Npb25lIChzZWNvbmRpKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNvIGNvb2tpZXMgcGVyIHRlbmVyIHZpdm8gaWwgbG9naW4nOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQZXJtZXR0aSByZWdpc3RyYXppb25lIEVtYWlsJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdHcnVwcG8gcHJlZGVmaW5pdG8gcGVyIG51b3ZpIHV0ZW50aSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ0NhbWJpYSBpbCBNb2RlbGxvIGRlbGxlIGNvbmZpZ3VyYXppb25pJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdMZSBwYXNzd29yZCBub24gY29pbmNpZG9ubyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdOb21lIHV0ZW50ZSBub24gdmFsaWRvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1Bhc3N3b3JkIG5vbiB2YWxpZGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNb2RpZmljYSBVdGVudGUnOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZG8nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOb21lIHV0ZW50ZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0byc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdRdWVzdG8gdXRlbnRlIG5vbiAmZWdyYXZlOyBtZW1icm8gZGkgbmVzc3VuIGdydXBwbyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTmVzc3VuYSBQcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnVGVudGF0aXZvIGRpIGltcG9ydGFyZSBwcm9wcmlldCZhZ3JhdmU7IGR1cGxpY2F0ZSc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbG9yZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdOb21lIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnVmFsb3JlIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snYWRkJ10gPSAnQWdnaXVuZ2VyZSc7CiRsYW5nWydoaXN0b3J5J10gPSAnQ3Jvbm9sb2dpYSc7CiRsYW5nWydlZGl0J10gPSAnTW9kaWZpY2EnOwokbGFuZ1snZXhwaXJlcyddID0gJ1NjYWRlbnplJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZmljYXJlIHVuYSBkYXRhJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgT3JlJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgT3JlJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggT3JlJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBTZXR0aW1hbmEnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBTZXR0aW1hbmUnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNZXNlJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1lc2knOwokbGFuZ1snNm1vbnRocyddID0gJzYgTWVzaSc7CiRsYW5nWycxeWVhciddID0gJzEgQW5ubyc7CiRsYW5nWyduZXZlciddID0gJ01haSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bG8gaW5zdGFsbGF0by48YnIgLz5BY2NlcnRhcnNpIGRpIGNvbmZpZ3VyYXJlIGkgcGVybWVzc2kgcGVyICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uJnF1b3Q7LiBDb25zaWdsaWFtbyBpbm9sdHJlIGRpIGluc3RhbGxhcmUgaWwgbW9kdWxvIENhcHRjaGEgcG9pY2gmZWdyYXZlOyBwdSZvZ3JhdmU7IGVzc2VyZSByaWNoaWVzdG8gbGEgdmFsaWRhemlvbmUgZGkgdW5hIGltbWFnaW5lLiBRdWVzdG8gJmVncmF2ZTsgaW50ZXNvIHBlciBwcmV2ZW5pcmUgYXR0YWNjaGkgYnJ1dGUgZm9yY2UuICA8c3Ryb25nPk5vdGE6PC9zdHJvbmc+IGlsIHBhcmFtZXRybyBub2NhcHRjaGEgcHUmb2dyYXZlOyBlc3NlcmUgdXNhdG8gcGVyIGRpc2FiaWxpdGFyZSBxdWVzdGEgZnVuemlvbmFsaXQmYWdyYXZlOyBhbmNoZSBzZSBpbCBtb2R1bG8gJmVncmF2ZTsgaW5zdGFsbGF0by4nOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ2RpIG51b3ZvJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdVbiBncnVwcG8gY29uIHF1ZWwgbm9tZSAmZWdyYXZlOyBnaSZhZ3JhdmU7IHByZXNlbnRlJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ01vZGlmaWNhIEdydXBwbyc7CiRsYW5nWydzdWJtaXQnXSA9ICdJbnZpYSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGxhJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0NhbmNlbGxhJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnU2lldGUgc2ljdXJpIGNoZSBxdWVzdGUgc2lhbm8gbGUgaW1wb3N0YXppb25pIGNvcnJldHRlIHBlciBxdWVzdG8gZ3J1cHBvP1xuRGlzYXR0aXZhbmRvIHVuYSBwcm9wcmlldCZhZ3JhdmU7IG5vbiBzaSBjYW5jZWxsYW5vIGkgZGF0aSBuZWxsYSB0YWJlbGxhIHByb3ByaWV0JmFncmF2ZTsgcGVyIHF1ZWwgZ3J1cHBvL3V0ZW50ZS4gU2FyYW5ubyBzb2xvIG5vbiBkaXNwb25pYmlsaS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1NpZXRlIHNpY3VyaSBkaSB2b2xlcmUgY2FuY2VsbGFyZSBxdWVzdG8gZ3J1cHBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnU2lldGUgc2ljdXJvIGRpIHZvbGVyZSBjYW5jZWxsYXJlIGNvbXBsZXRhbWVudGUgcXVlc3RhIHByb3ByaWV0JmFncmF2ZTs/XG5GYWNlbmRvbG8gc2FyYW5ubyBjYW5jZWxsYXRpIHR1dHRpIGkgZGF0aSBkZWdsaSB1dGVudGkgcGVyIHF1ZXN0YSBwcm9wcmlldCZhZ3JhdmU7Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdQYXJhbWV0cmkgaW5zdWZmaWNpZW50aSc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgbmVsbCYjMDM5O2FnZ2l1bmdlcmUgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbWEgbmVsbCYjMDM5O2FnZ2l1bmdlcmUgcmVsYXppb25lIGRpIGdydXBwbyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSBpbCBncnVwcG8nOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSB1biB1dGVudGUgYWwgZ3J1cHBvJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtYSBuZWxsYSBjYW5jZWxsYXppb25lIGRpIHVuYSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTm9uIHRyb3ZvIHVuIGluZGlyaXp6byBlbWFpbCc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnTmVzc3VuIHBlcm1lc3NvIGRpIHNjcml0dHVyYSBuZWxsYSBjYXJ0ZWxsYSBkaSBkZXN0aW5hemlvbmUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtZXRyaSBub24gdmFsaWRpJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm9uIHRyb3ZvIGdydXBwaSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGxpY2EnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJvJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdFc3ByZXNzaW9uZSByZWdvbGFyZSBkaSBVc2VybmFtZSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXppb25lJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ05vbWUgZ3J1cHBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2Vzc28gbmVnYXRvJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3JlJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQWdnaXVuZ2VyZSBncnVwcG8nOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhIEdydXBwbyc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWdnaXVuZ2VyZSB1dGVudGUnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1Ryb3ZhdGkgdXRlbnRpIGNoZSBzb2RkaXNmYW5vIGlsIGNyaXRlcmlvJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3J1cHBvJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZXppb25hIEdydXBwbyc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIHJlZ2lzdHJhemlvbmUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBkaSBsb2dvdXQnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIGxvZ2luJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW56ZSc7CiRsYW5nWyd1c2VycyddID0gJ1V0ZW50aSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uZSB1dGVudGkgZGkgRnJvbnRlbmQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdQZXJtZXR0aSBhZ2xpIHV0ZW50aSBkaSBlZmZldHR1YXJlIGwmIzAzOTthY2Nlc3NvIGRhbGwmIzAzOTtpbnRlcmZhY2NpYSBkZWwgc2l0byc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUGFnaW5hIGRpIGFjY2Vzc28gcHJlZGVmaW5pdGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1VsdGltYSBwYWdpbmEgYWNjZWR1dGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQWx0cmEgcGFnaW5hOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0luc2VyaXRlIGlsIHRlc3RvIHZpc3VhbGl6emF0byBuZWxsJiMwMzk7aW1tYWdpbmUnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmYW1wO3F1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZhbXA7cXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3UgbmVlZCB0byBkZWZpbmUgYXQgbGVhc3Qgb25lIHByb3BlcnR5LiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgKG9yIGVtYWlsIGFkZHJlc3MpIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPHA+PGI+Tm90ZTo8L2I+IE5ldyBpbnN0YWxsYXRpb25zIG9mIHRoZSBGRVUgbW9kdWxlIHNwZWNpZnkgdGhhdCB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAodGhpcyBvcHRpb24gY2FuIGJlIGNoYW5nZWQgaW4gdGhlIHByZWZlcmVuY2VzIHRhYikuICBTbyBpZiB1c2luZyB0aGlzIG9wdGlvbiB5b3Ugd2lsbCBub3QgbmVlZCB0byBjcmVhdGUgYW4gZW1haWwgYWRkcmVzcyBwcm9wZXJ0eS48L3A+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IG11c3QgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUvZW1haWwgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4NCjxwPlNvbWUgbGltaXRlZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBkYXRhYmFzZSBpcyBwb3NzaWJsZSB3aXRoIHNtYXJ0eSBhbmQgdGhlICRmZXVfc21hcnR5IG9iamVjdC48L3A+DQo8aDQ+RnVuY3Rpb25zOjwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJmFtcDtxdW90O2Fzc2lnbiZhbXA7cXVvdDsgcGFyYW1ldGVyLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcyg1LCYjMDM5O3VzZXJwcm9wcyYjMDM5Oyl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWVbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIHRoZSB0ZXh0IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG9wdGlvbiB2YWx1ZSBmb3IgYSBzcGVjaWZpZWQgZHJvcGRvd24gcHJvcGVydHkuPC9saT4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfZHJvcGRvd25fdGV4dCgmIzAzOTthZ2VfcmFuZ2UmIzAzOTssJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgc21hcnR5IGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2Ygb3B0aW9uIHRleHRzIGNvcnJlc3BvbmRpbmcgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb24gdmFsdWVzLjwvbGk+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTssJG9uZXByb3B2YWx1ZSwmIzAzOTtmYXZvcml0ZV9mb29kcyYjMDM5Oyl9PGJyLz57JGZhdm9yaXRlX2Zvb2RzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KDQo8bGk+PHN0cm9uZz5jb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2VyX2V4cGlyeSgkdWlkWywkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBzbWFydHkgbWV0aG9kIHJldHVybnMgdGhlIHVuaXggdGltZXN0YW1wIHRoYXQgdGhlIHNwZWNpZmllZCB1aWQgYWNjb3VudCBleHBpcmVzLiAgVGhlIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2VyX2V4cGlyeSgyNSwmIzAzOTtleHBpcnkmIzAzOTspfTxici8+eyRleHBpcnl8Y21zX2RhdGVfZm9ybWF0fTwvY29kZT48L3A+DQo8L2xpPg0KDQo8bGk+PHN0cm9uZz5jb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O3VzZXJfZXhwaXJlZCgkdWlkWywkYXNzaWduXSl9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBzbWFydHkgbWV0aG9kIHJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBhY2NvdW50IGhhcyBleHBpcmVkLiAgVGhlIG1ldGhvZCB3aWxsIGFsc28gcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O3VzZXJfZXhwaXJlZCgyNSwmIzAzOTtleHBpcmVkJiMwMzk7KX08YnIvPntpZiAkZXhwaXJlZH1VSUQgMjUgY2FuIG5vIGxvbmdlciBsb2dpbiB0byB0aGUgc3lzdGVtey9pZn08L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vY2FsZ3V5MTAwMC5jb20iPmNhbGd1eTEwMDAuY29tPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjx1bD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj0mcXVvdDtkZWZhdWx0JnF1b3Q7PGxpPg0KPHA+QWN0aW9uczoNCjx1bD4NCjxsaT48ZW0+ZGVmYXVsdDwvZW0+IC0gVGhlIGRlZmF1bHQgYWN0aW9uLCB3aGljaCBlbmFibGVzIHRoZSBub3JtYWwgZm9ybT0gYmVoYXZpb3VyLjwvbGk+DQo8bGk+PGVtPnJlc2V0X3Nlc3Npb248L2VtPiAtIFByb3ZpZGUgYSBqYXZhc2NyaXB0IGNvbnRyb2xsZWQgdGVtcGxhdGUgdG8gYWxsb3cgdGhlIG1hbnVhbCwgb3IgYXV0b21hdGljIHBpbmdpbmcgb2YgdGhlIHVzZXIgc2Vzc2lvbi4gIFRoaXMgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gcmVtaW5kIHRoZSB1c2VyIHRoYXQgaGlzIGxvZ2luIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlLCBhbmQgdG8gdHJpZ2dlciBpdHMgcmVzZXQuICBOb3JtYWxseSB0aGlzIG1ldGhvZCBpcyBub3QgcmVxdWlyZWQgYXMgYW55IHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgRnJvbnRFbmRVc2VyIGNvbnRyb2xzIHdvdWxkIGhhbmRsZSB0aGlzLCBqdXN0IHJlcXVpcmluZyB0aGUgdXNlciB0byB2aWV3IGEgcGFnZSBvbiBhIHJlZ3VsYXIgYmFzaXMuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgcGFnZXMgd2l0aCBhbG90IG9mIGNvbnRlbnQgcmVxdWlyaW5nIGV4dGVuc2l2ZSByZWFkaW5nLCB0aGlzIG1heSBiZSBhIHVzZWZ1bCBzb2x1dGlvbi48L2xpPg0KPGxpPjxlbT52aWV3dXNlcjwvZW0+IC0gRGlzcGxheSBhIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXNlciwgcmVxdWlyZXMgdXNlIG9mIHRoZSB1aWQgcGFyYW1ldGVyLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZhbXA7Y29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZhbXA7bHQ7Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyZhbXA7Z3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+DQo8aDM+U3BvbnNvcnM8L2gzPg0KPHA+VGhlcmUgaGF2ZSBiZWVuIG1hbnkgc3BvbnNvcnMgZm9yIHRoaXMgbW9kdWxlLCBzb21lIG9mIHRoZXNlIGFyZSBsaXN0ZWQgYmVsb3c6PC9wPg0KPHVsLj4NCiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5tYXR0ZXJob3JubWFya2V0aW5nLmNvbSI+TWF0dGVyaG9ybiBNYXJrZXRpbmc8L2E+PC9saT4NCiA8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5icHRpLmV1Ij5CYWxrYW4gSW5zdGl0dXRlIG9mIEFkdmFuY2VkIFRlY2hub2xvZ3k8L2E+PC9saT4NCjwvdWw+JzsKJGxhbmdbJ3FjYSddID0gJ1AwLTI1MDY3OTcyMi0xMjcxMTg3MTY4NzY0JzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/lt_LT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2VkIHdpdGggb25lIG9mIHRoZSBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoYXQgdGhlIGZvcm1zIHNob3VsZCBub3QgYmUgcGxhY2VkIGlubGluZSwgaW5zdGVhZCB0aGUgcmVzdWx0aW5nIG91dHB1dCBhZnRlciBmb3JtIHN1Ym1pc3Npb24gd2lsbCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2snOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ8Suc3DEl2ppbWFzIGFwaWUgcHJpc2lqdW5naW1vIHNlc2lqb3MgcGFiYWlnxIUnOwokbGFuZ1snbXNnX3Jlc2V0X3Nlc3Npb24nXSA9ICdKxatzxbMgcHJpc2lqdW5naW1vIHNlc2lqb3MgZ2FsaW9qaW1hcyBhcnTEl2phIHByaWUgcGFiYWlnb3MuIFByYSZzY2Fyb247b20gcGFzcGF1c2tpdGUgJnF1b3Q7UHJhdMSZc3RpJnF1b3Q7IG15Z3R1a8SFLCBqZWkgbm9yaXRlIHByYXTEmXN0aSBwcmlzaWp1bmdpbW8gc2VzaWpvcyBnYWxpb2ppbcSFJzsKJGxhbmdbJ29rJ10gPSAnUHJhdMSZc3RpJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Nlc2lqb3MgYXRuYXVqaW5pbW8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdMYW5reXRvamFpJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnUGFzaXJpbmtpdGUgdmllbsSFIGFyIGRhdWdpYXUgRkVVIGdydXBpxbMsIGt1cmlvbXMgYnVzIGxlaXN0YSBtYXR5dGkgJnNjYXJvbjvEryBwdXNsYXDEryc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnVHVyaSBixat0aSBwYXNpcmlua3RhIGdydXDElyc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdQcmFkxb5pb3MgbWV0YWknOwokbGFuZ1snZW5kX3llYXInXSA9ICdQYWJhaWdvcyBtZXRhaSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdNaW5pYXRpxatyb3MgZHlkaXMnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXIgdGlrcmFpIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJnNjYXJvbjvEryBuYXVkb3RvasSFPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdJJnNjYXJvbjt0cmludGkgcGFzaXJpbmt0dXMnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnUHJpZGVkYW50IG5hdWp1cyBuYXVkb3RvanVzIGdlbmVydW90aSBhdHNpdGlrdGluxK8gbmF1ZG90b2pvIHZhcmTEhSc7CiRsYW5nWydtb250aHMnXSA9ICdtxJduZXNpYWknOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ051bWF0eXRhc2lzIG5hdWRvdG9qbyBnYWxpb2ppbW8gdGVybWluYXMnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBudXN0YXR5bWFpJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnU2F2eWJpxbMgbnVzdGF0eW1haSc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1BlcmFkcmVzYXZpbW8gbnVzdGF0eW1haSc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnUGFncmluZGluaWFpIG51c3RhdHltYWknOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc2lqb3MgaXIgc2xhcHVrxbMgbnVzdGF0eW1haSc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0xhdWtvIG51c3RhdHltYWknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnUmVkYWd1b3RpIG5hdWRvdG9qxIUnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnU3BhdXNraXRlIMSNaWEsIGplaSBuZWF0c2ltZW5hdGUgc2F2byBwcmlzaWp1bmdpbW8gZGV0YWxpxbMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ1NwYXVza2l0ZSDEjWlhLCBqZWkgbmVhdHNpbWVuYXRlIHNhdm8gc2xhcHRhxb5vZMW+aW8nOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdOb3LEl2RhbWkgYXRzaWp1bmd0aSBzcGF1c2tpdGUgxI1pYSc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnUGFzcGF1c2tpdGUgxI1pYSBzbGFwdGHFvm9kxb5pbyBhciBraXRvcyBpbmZvcm1hY2lqb3Mga2VpdGltdWknOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdOYXVkb3Rvam8gcGVyxb5pxatyxJdqaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydldmVudCddID0gJ8SudnlraXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgcHJhbmUmc2Nhcm9uO2ltYW1zJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdQcmFuZSZzY2Fyb247aW1vIGUuIHBhJnNjYXJvbjt0dSAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBlLiBwYSZzY2Fyb247dHUgdGVtYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ1ByYW5lJnNjYXJvbjtpbWFpIGUuIHBhJnNjYXJvbjt0dSc7CiRsYW5nWydPbkxvZ2luJ10gPSAnUHJpc2lqdW5ndXMnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBdHNpanVuZ3VzJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ1Bhc2liYWlndXMgc2VzaWphaSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdTdWvFq3J1cyBuYXVqxIUgbmF1ZG90b2rEhSc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdJJnNjYXJvbjt0cnludXMgbmF1ZG90b2rEhSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdLYWkgbmF1ZG90b2rFsyBudXN0YXR5bWFpIHBha2Vpc3RpJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdLYWkgbmF1ZG90b2rFsyBncnVwxJcgc3VrdXJ0YSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnS2FpIG5hdWRvdG9qxbMgZ3J1cMSXIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnSsWrc8WzIG5hdWRvdG9qbyB2YXJkYXMgeXJhJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnUHJhcmFzdG8gbmF1ZG90b2pvIHZhcmRvIGRldGFsacWzICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ05hdWRvdG9qbyBwYW1pciZzY2Fyb247dG8gdmFyZG8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3I6IE1vcmUgdGhhbiBvbmUgdXNlciBhY2NvdW50IG1hdGNoZWQgdGhlIHByb3BlcnRpZXMgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIG1hdGNoaW5nIHVzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0tsYWlkYSAtIGdydXDElyB0b2tpdSB2YXJkdSBuZXJhc3RhJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnVGlrIHNrYWl0eW11aSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnTmF1ZG90b2rFsyBtYW5pcHVsaWF0b3JpYXVzIGtsYXPElyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdBdGp1bmd0YXMgYWRtaW5pc3RyYXRvcmlhdXMnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1JvZHl0aSB0aWsgcHJpc2lqdW5ndXNpdXMgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnQXRqdW5ndGkgJnNjYXJvbjvEryBuYXVkb3RvasSFJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ05hdWRvdG9qbyBzxIV2eWLEl3MnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdOYXVkb3Rvam8gaXN0b3JpamEnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9ydHVvdGknOwokbGFuZ1snY2xlYXInXSA9ICdWYWx5dGknOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0IFVzZXIgSGlzdG9yeSBUbyBBU0NJSSB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnQ2xlYXIgVXNlciBIaXN0b3J5IHJlY29yZHMgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBwcmlzaWp1bmdpbW8gZGV0YWxlcz8/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnVGFpcCc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2kmc2Nhcm9uOyc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKkJlIHJpYsWzICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1ZpZW5vcyB2YWxhbmRvcyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnJlNjYXJvbjtlJnNjYXJvbjtpxbMgdmFsYW5kxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0R2eWxpa29zIHZhbGFuZMWzIHNlbnVtbyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1ZpZW5vcyBkaWVub3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1ZpZW5vcyBzYXZhaXTEl3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdmllasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1ZpZW5vIG3El25lc2lvIHNlbnVtbyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHJpasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2Umc2Nhcm9uO2nFsyBtxJduZXNpxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ1ZpZW5lcmnFsyBtZXTFsyBzZW51bW8nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cGF2aW1hcyBpciByxasmc2Nhcm9uO2lhdmltYXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlY29yZHMgbWF0Y2hpbmcgdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBtYcW+xJdqaW7EjWlhaSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBkaWTEl2phbsSNaWFpJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnQXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnRGVzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnQXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRGVzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05vIEhpc3RvcnkgRGV0ZWN0ZWQnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cCBCeSBJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSBGaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnRGlzcGxheSBvbmx5IGV2ZW50cyB0aGF0IGFyZSBsZXNzIHRoYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdlIExpbWl0JzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSBSZXBvcnQnOwokbGFuZ1sndW5rbm93biddID0gJ05lxb5pbm9tYXMnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIGFkcmVzYXMnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ8SudnlraW8gdGlwYXMnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdHcsSvxb50aSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IE9wZXJhdGlvbiBDb21wbGV0ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lcyBQcm9jZXNzZWQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9ycyBFbmNvdW50ZXJlZCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnxK5yYSZzY2Fyb247YWkgcHJpZMSXdGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIGdyb3VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQ291bGQgbm90IGdldCBhIHJlc3BvbnNlIGZyb20gdGhlIFNNVFAgc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0xhdWthcyAlcyB2aXImc2Nhcm9uO2lqbyBtYWtzaW1hbMWzIGlsZ8SvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXZpbW8ga2xhaWRhIChlaWx1dMSXICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMgxK8gJnNjYXJvbjtpxIUgZ3J1cMSZJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5wdXQgWE1MIEZpbGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRWtzcG9ydHVvdGkgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVmFseXRpJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnSW1hZ2UgRGVzdGluYXRpb24gUGF0aCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0dydXDElywga3VyaW9qZSB5cmEgbmF1ZG90b2rFsywgbmVnYWxpIGLFq3RpIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnJlNjYXJvbjtpcyBuYXVkb3RvamFzIGphdSB5cmEgcHJpc2lqdW5nxJlzJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ05ldGVpc2luZ2FpIMSvdmVzdGFzIHRla3N0YXMgaSZzY2Fyb247IHBhdmVpa3NsaXVrbyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnTGVpc3RpIG5hdWRvdG9qdWkgcHJpc2lqdW5ndGkgZGF1Z2lhdSBuZWd1IHZpZW7EhSBrYXJ0xIUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+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+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBUaGUgZm9sbG93aW5nIG1hY3JvcyBjYW4gYmUgdXNlZCBpbiB0aGVzZSBmaWVsZHM6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBXaGVuIHVzaW5nIHRoZSB7JGdyb3VwfSBtYWNybywgdGhlIHN5c3RlbSB3aWxsIHN1YnNpdHV0ZSB0aGUgbmFtZSBvZiB0aGUgZmlyc3QgbWVtYmVyIGdyb3VwIHRoYXQgdGhlIHVzZXIgYmVsb25ncyB0bywgYW5kIHdpbGwgcmVkaXJlY3QgdG8gdGhhdCBwYWdlLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdOYXVkb3RvamFzIHRva2l1IHZhcmR1IGphdSBlZ3ppc3R1b2phJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ05hdWRvdG9qbyB2YXJkbyBsYXVrbyBpbGdpcyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdTbGFwdGHFvm9kxb5pbyBsYXVrbyBpbGdpcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluaW1hbHVzL21ha3NpbWFsdXMgc2xhcHRhxb5vZMW+aW8gaWxnaXMgeXJhIG5ldGVpc2luZ2FzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ05ldGVpc2luZ2FzIGUuIHBhJnNjYXJvbjt0byBhZHJlc2FzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgJnNjYXJvbjtpYWkgc8SFc2thaXRhaSBuZXJhc3Rhcyc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ05hdWRvdG9qYXMgcHJpZMSXdGFzICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnTmF1ZG90b2phcyBpJnNjYXJvbjt0cmludGFzIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1NhdnlixJcnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbHVlIChyZWd1bGFyIGV4cHJlc3Npb24pJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnV2FybmluZzogVGhlc2UgZmllbGRzIGFmZmVjdCB0aGUgc2l6ZSBvZiBpbnB1dCBmaWVsZHMgZm9yIGZvcm1zLiAgRGVjcmVhc2luZyB0aGlzIG51bWJlciBvbiBhbiBleGlzdGluZyBzaXRlIG1heSBub3QgYmUgYWR2aXNhYmxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gYWRqdXN0IHRoZSBtb2R1bGUgcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLiBwYSZzY2Fyb247dG8gYWRyZXNhcyBqYXUgeXJhIG5hdWRvamFtYXMnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdMZWlzdGkgdMSFIHBhdMSvIGUuIHBhJnNjYXJvbjt0byBhZHJlc8SFIGtlbGllbXMgbmF1ZG90b2phbXMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyB5cmEgbmF1ZG90b2pvIGUuIHBhJnNjYXJvbjt0byBhZHJlc2FzJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+KHRoZSBjb29raWUgaXMgcmVzZXQgb24gYWN0aXZpdHkgaW4gdGhlIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGFsbG93IG11bHRpcGxlIHVzZXJzIHdpdGggdGhlIHNhbWUgZW1haWwgYWRkcmVzcyknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgJnF1b3Q7Zm9yZ290IHBhc3N3b3JkJnF1b3Q7IHJlbWluZGVycz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGFsbG93IGEgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIHJlc2V0LCBldmVuIGlmIHRoZXkgaGF2ZW4mIzAzOTt0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzZSBGcm9udC1lbmQgVXNlciBzcGVjaWZpYyBwZXJtaXNzaW9ucz8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0NvdWxkIG5vdCBmaW5kIHRoZSB1cGxvYWRlZCBmaWxlIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdUaGVyZSB3YXMgYSBwcm9ibGVtIHdpdGggeW91ciB1cGxvYWRlZCBmaWxlLiAgUGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdKxatzIG5lxK92ZWTEl3RlIG5hdWRvdG9qbyB2YXJkbyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdKxatzIG5lxK92ZWTEl3RlIHNhdm8gZS4gcGEmc2Nhcm9uO3RvIGFkcmVzbyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdKxatzIG5lxK92ZWTEl3RlIHNsYXB0YcW+b2TFvmlvJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdGcm9udGVuZCBVc2VyIExvZ291dCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIExvZ2luJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB3b3JrIG9uIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0RvIG5vdCBjcmVhdGUgYSBwcm9wZXJ0eSBmb3IgdXNlcm5hbWUsIG9yIHBhc3N3b3JkIGFzIHRoZXNlIHByb3BlcnRpZXMgYXJlIGJ1aWx0aW4gdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFa3Nwb3J0dW90aSBuYXVkb3RvanVzIMSvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0dW90aSc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnR1b3RpJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyYXZpbWFzJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnS2Vpc3RpIHPEhXZ5YsSZOiA8ZW0+JXM8L2VtPic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzaW1hbHVzIGlsZ2lzJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdTdWt1cnRhcyc7CiRsYW5nWydzb3J0YnknXSA9ICdSxasmc2Nhcm9uO2l1b3RpIHBhZ2FsJzsKJGxhbmdbJ3NvcnQnXSA9ICdSxasmc2Nhcm9uO2l1b2phbWEnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnTmF1ZG90b2phaSBwYXNpcmlua3Rvc2UgZ3J1cMSXc2UnOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnQXByaWJvdGkgcmV6dWx0YXR1cyBpa2knOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnJlNjYXJvbjtpbyBuYXVkb3Rvam8gZS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgbmVyYW5kYW1hcy4gS3JlaXBraXTEl3MgxK8gc2lzdGVtb3MgYWRtaW5pc3RyYXRvcmnFsy4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnUsWrJnNjYXJvbjtpYXZpbW8gdHZhcmthJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1BhJnNjYXJvbjthbGludGkgdmlzdXMgZGF1Z2lhdSBuZWd1IHNhdmFpdMSXcyBzZW51bW8gxK9yYSZzY2Fyb247dXMnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUGEmc2Nhcm9uO2FsaW50aSB2aXN1cyBkYXVnaWF1IG5lZ3UgbcSXbmVzaW8gc2VudW1vIMSvcmEmc2Nhcm9uO3VzJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1BhJnNjYXJvbjthbGludGkgdmlzdXMgxK9yYSZzY2Fyb247dXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyIGrFq3MgxK9zaXRpa2luxJlzPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ05ldGVpc2luZ2FzIGtvZGFzIGJ1dm8gxK92ZXN0YXMuIEJhbmR5a2l0ZSBkYXIga2FydMSFJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdKxatzIGFyYmEga2FzIG5vcnMga2l0YXMgamF1IHByYSZzY2Fyb247xJd0ZSBzbGFwdGHFvm9kxb5pbyBrZWl0aW1vLiBQYXRpa3JpbmtpdCBzYXZvIGUuIHBhJnNjYXJvbjt0xIUgLSB0dXLEl3R1bcSXdGUgcmFzdGkgZS4gbGFpJnNjYXJvbjtrxIUgc3UgaW5zdHJ1a2Npam9taXMsIGthaXAgcGFrZWlzdGkgc2xhcHRhxb5vZMSvLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRHVvbWVuxbMgYmF6xJdzIGtsYWlkYSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdKxatzIGdhdm90ZSAmc2Nhcm9uO8SvIGxhaSZzY2Fyb247a8SFLCBuZXMgasWrcyBhcmJhIGthxb5rYXMga2l0YXMgbcWrc8WzIHN2ZXRhaW7El2plIG51cm9kxJcsIGthZCBwcmFyYWRvdGUgc2F2byBwcmlzaWp1bmdpbW8gc2xhcHRhxb5vZMSvLiBKZWkganVtcyBuZXJlaWtpYSBrZWlzdGkgc2F2byBzbGFwdGHFvm9kxb5pbywgdGllc2lvZyBpZ25vcnVva2l0ZSAmc2Nhcm9uO8SvIGxhaSZzY2Fyb247a8SFLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0tvZGFzJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ05vcsSXZGFtaSBwYWtlaXN0aSBzYXZvIHNsYXB0YcW+b2TEryBzZWtpdGUgxb5lbWlhdSBwYXRlaWt0xIUgbnVvcm9kxIUuIE5vcmludCBwYWtlaXN0aSBzbGFwdGHFvm9kxK8sIHJlaWtpYSDEr3Zlc3RpIGlyIGtvZMSFLiDErnByYXN0YWkga29kbyBsYXVrZWxpcyBixatuYSBpJnNjYXJvbjsgYW5rc3RvIHXFvnBpbGR5dGFzLCB0YcSNaWF1IGplaSBuZSwgdGFpIGtvZGFzIHlyYTonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdTZWtpdGUgJnNjYXJvbjtpxIUgbnVvcm9kxIUsIGplaSBub3JpdGUgcGFrZWlzdGkgc2F2byBzbGFwdGHFvm9kxK86JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdQcmFyYXN0YXMgc2xhcHRhxb5vZGlzJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnbmVyYW5kYW1hcyBDTVNNYWlsZXIgbW9kdWxpcyc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdFLiBsYWkmc2Nhcm9uO2thcyBzdSBpbnN0cnVrY2lqb21pcywga2FpcCBwYWtlaXN0aSBzbGFwdGHFvm9kxK8sIGkmc2Nhcm9uO3NpxbNzdGFzIGFkcmVzdSAlcy4gQcSNacWrISc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ8SudmVza2l0ZSBuYXVkb3Rvam8gdmFyZMSFIGlyIGplaWd1IHRva3MgdmFyZGFzIGVnemlzdHVvamEsIGUuIGxhaSZzY2Fyb247a2FzIHN1IGluc3RydWtjaWpvbWlzLCBrYWlwIHBha2Vpc3RpIHNsYXB0YcW+b2TErywgYnVzIGp1bXMgaSZzY2Fyb247c2nFs3N0YXMuICc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1XFvm1pciZzY2Fyb247dG8gc2xhcHRhxb5vZMW+aW8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ05hdWRvdG9qbyB2YXJkbyBwcmltaW5pbW8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1PEhXZ5YsSXICVzIG5lcmFzdGEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Jhc3RvcyBzxIV2eWLEl3MnOwokbGFuZ1snYWRkcHJvcCddID0gJ1ByaWTEl3RpIHPEhXZ5YsSZJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQcml2YWxvbWFzIGxhdWthcyAoJXMpIGJ1dm8gdHUmc2Nhcm9uO8SNaWFzJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnxK52ZXNraXRlIG5hdWrEhSBzbGFwdGHFvm9kxK8sIGplaSBub3JpdGUgcGFrZWlzdGkgZGFiYXJ0aW7Eryc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0rFq3MgbmVwcmlzaWp1bmfEmXMnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ051c3RhdHltYWknOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYWNpamEnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICcmU2Nhcm9uO2kgcGFza3lyYSBuZWJlZ2FsaW9qYSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnTmV0ZWlzaW5nYXMgZS4gcGEmc2Nhcm9uO3RvIGFkcmVzbyBmb3JtYXRhcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ05ldGVpc2luZ2EgcGFza3lyb3MgZ2FsaW9qaW1vIHBhYmFpZ29zIGRhdGEuIFRhaSBnYWxpIGLFq3RpIHN1c2lldGEgc3Ugc2lzdGVtb3MgbnVzdGF0eW1haXMuIEJhbmR5a2l0ZSBudXN0YXR5dGkgYW5rc3Rlc25pdXMgbWV0dXMuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdQYXNsxJdwdGEnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cCc7CiRsYW5nWydub2dyb3VwcyddID0gJ05vIEdyb3VwcyBhcmUgZGVmaW5lZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ1Jhc3RvcyBncnVwxJdzJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdNZW1iZXJzaGlwIGluIGF0IGxlYXN0IG9uZSBncm91cCBpcyByZXF1aXJlZCc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWlyZSBtZW1iZXJzaGlwIGluIGF0bGVhc3Qgb25lIGdyb3VwJzsKJGxhbmdbJ2JhY2snXSA9ICdBdGdhbCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnbGF1a2FzICVzIHlyYSBwcml2YWxvbWFzJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ0tpdGFzJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnR3J1cMSXIHRva2l1IHBhdmFkaW5pbXUgamF1IHlyYSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ0LFq3RpbmFzJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnTGFpc3ZhaSBwYXNpcmVua2FtYXMnOwokbGFuZ1snb2ZmJ10gPSAnSSZzY2Fyb247anVuZ3RhJzsKJGxhbmdbJ3NpemUnXSA9ICdEeWRpcyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdJbGdpcyc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihjaGFycyBpbiB0aGUgdGV4dCBpbnB1dCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVGlwYXMnOwokbGFuZ1sndHlwZSddID0gJ1RpcGFzJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnTGF1a2VsaW8gc3RhdHVzYXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdGFzJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnUGF2ZWlrc2xpdWthcyc7CiRsYW5nWydlbWFpbCddID0gJ0UuIHBhJnNjYXJvbjt0byBhZHJlc2FzJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dGFyZWEnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1N2ZWlraSc7CiRsYW5nWydsb2dvdXQnXSA9ICdBdHNpanVuZ3RpJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdOYXVkb3RpICZzY2Fyb247aW9zIGdydXDEl3MgdmFyZMSFJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1Bha2Vpc3RpIG1hbm8gbnVzdGF0eW11cyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ05lcGF2eWtvIHByaXNpanVuZ3RpOiBuZXRlaXNpbmdpIG5hdWRvdG9qbyB2YXJkYXMgYXJiYSBzbGFwdG/FvjBkaXMnOwokbGFuZ1snbG9naW4nXSA9ICdQcmlzaWp1bmd0aSc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1ByaXNpanVuZ2ltbyBteWd0dWtvIGV0aWtldMSXJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ05hdWRvdG9qbyB2YXJkYXMnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnU2xhcHRhxb5vZGlzJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUHJpc2ltaW5rIG1hbmUnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RydW90aXMnOwokbGFuZ1snZm9yZ290cHcnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBzbGFwdGHFvm9kxK8/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1XFvm1pciZzY2Fyb247b3RlIHByaXNpanVuZ2ltbyBkZXRhbGVzPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ051bWF0eXRpJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0luZm9ybWFjaWphIGFwaWUgJnNjYXJvbjvEryBuYXVkb3RvasSFIG5lcmFzdGEnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ05hdWRvdG9qbyB2YXJkYXMgKCVzKSBqYXUgeXJhIG5hdWRvamFtYXMnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1VzZSBTTVRQIHRvIHZhbGlkYXRlIGVtYWlsIGFkZHJlc3Nlcz8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSBQYXNzd29yZCBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW11bSBQYXNzd29yZCBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW1hbHVzIG5hdWRvdG9qbyB2YXJkbyBpbGdpcyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNlY29uZHMpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2UgY29va2llcyB0byBrZWVwIGxvZ2lucyBhbGl2ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0FsbG93IEVtYWlsIFJlZ2lzdHJhdGlvbic7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnTnVtYXR5dGEgZ3J1cMSXIG5hdWphbSBuYXVkb3RvanVpJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnTnVzdGF0eW3FsyBrZWl0aW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnU2xhcHRhxb5vZMW+aWFpIG5lc3V0YW1wYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdOZXRlaXNpbmdhcyBuYXVkb3Rvam8gdmFyZGFzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ05ldGVpc2luZ2FzIHNsYXB0YcW+b2Rpcyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1JlZGFndW90aSBuYXVkb3RvamEnOwokbGFuZ1sndmFsaWQnXSA9ICdHYWxpb2phbnRpcyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ05hdWRvdG9qbyB2YXJkYXMnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzYXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnJlNjYXJvbjtpcyBuYXVkb3RvamFzIG5lcHJpa2xhdXNvIGpva2lhaSBncnVwZWknOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ07El3JhIHPEhXZ5YmnFsyc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmVydMSXJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXDEl3MnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1NhdnlixJdzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnU2F2eWLEl3MgdmFyZGFzJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1NhdnlixJdzIHZlcnTElyc7CiRsYW5nWydhZGQnXSA9ICdQcmlkxJd0aSc7CiRsYW5nWydoaXN0b3J5J10gPSAnSXN0b3JpamEnOwokbGFuZ1snZWRpdCddID0gJ0tlaXN0aSc7CiRsYW5nWydleHBpcmVzJ10gPSAnTnVzdG9qYSBnYWxpb3RpJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZnkgRGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvdXJzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG91cnMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Vycyc7CiRsYW5nWycxd2VlayddID0gJzEgV2Vlayc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFdlZWtzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTW9udGgnOwokbGFuZ1snM21vbnRocyddID0gJzMgTW9udGhzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IE1vbnRocyc7CiRsYW5nWycxeWVhciddID0gJzEgWWVhcic7CiRsYW5nWyduZXZlciddID0gJ05pZWthZGEnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxpcyBpbnN0YWxpdW90YXMgc8SXa21pbmdhaS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1NsYXB0YcW+b2Rpcyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1NsYXB0YcW+b2RpcywgZGFyIGthcnTEhSc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnR3J1cMSXIHRva2l1IHBhdmFkaW5pbXUgamF1IHlyYSc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdSZWRhZ3VvdGkgZ3J1cMSZJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1BhdGVpa3RpJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0F0JnNjYXJvbjthdWt0aSc7CiRsYW5nWydkZWxldGUnXSA9ICdUcmludGknOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdBcmUgeW91IHN1cmUgdGhpcyBpcyB0aGUgcHJvcGVyIHNldHRpbmdzIGZvciB0aGlzIGdyb3VwP1xuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdBciBqxatzIMSvc2l0aWtpbsSZcywga2FkIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJnNjYXJvbjtpxIUgZ3J1cMSZPz8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ1ZhcmRhcyc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYWRkaW5nIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCByZWxhdGlvbic7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gYWRkaW5nIGEgdXNlciB0byBhIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGRlbGV0aW5nIGEgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdFLiBwYSZzY2Fyb247dG8gYWRyZXNhcyBuZXJhc3Rhcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnTm8gd3JpdGUgcGVybWlzc2lvbiB0byBkZXN0aW5hdGlvbiBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ05ldGVpc2luZ2kgcGFyYW1ldHJhaSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0pva2lhIGdydXDElyBuZXJhc3RhJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnUHJpdGFpa3l0aSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmFzJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdVc2VybmFtZSBSZWd1bGFyIEV4cHJlc3Npb24nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdBcHJhJnNjYXJvbjt5bWFzJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dydXDEl3MgcGF2YWRpbmltYXMnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnUHJpc2lqdW5naW1hcyBhdG1lc3Rhcyc7CiRsYW5nWydlcnJvciddID0gJ0tsYWlkYSc7CiRsYW5nWydhZGRncm91cCddID0gJ1ByaWTEl3RpIGdydXDEmSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydHVvdGkgZ3J1cMSZJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdQcmlkxJd0aSBuYXVkb3RvasSFJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dydXDElyc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1Bhc2lyaW5rdGkgZ3J1cMSZJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhY2lqb3MgJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0F0c2lqdW5naW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ1ByaXNpanVuZ2ltbyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdOdXN0YXR5bWFpJzsKJGxhbmdbJ3VzZXJzJ10gPSAnTmF1ZG90b2phaSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBuYXVkb3RvasWzIHR2YXJreW1hcyc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FsbG93IHVzZXJzIHRvIGxvZyBpbiB0byB0aGUgZnJvbnRlbmQgb2YgeW91ciBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdOdW1hdHl0YXNpcyBwcmllJnNjYXJvbjtha2luaXMgcHVzbGFwaXMnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xhc3QgYWNjZXNzZWQgcGFnZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdLaXRhcyBwdXNsYXBpczogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICfErnZlc2tpdGUgdGVrc3TEhSBwYXZlaWtzbGl1a3VpJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPg0KPGgzPkZlYXR1cmVzPC9oMz4NCjx1bD4NCjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+DQo8bGk+PHA+Q2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkZvcmdvdCBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uLiBhbGxvd3MgdXNlcnMgdG8gc2V0IGEgbmV3IHBhc3N3b3JkLCBhbmQvb3IgdG8gcmVjb3ZlciB0aGVpciB1c2VybmFtZSBpZiB0aGV5IGNvbXBsZXRlbHkgZm9yZ290IGxvZ2luIGRldGFpbHMuPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJnF1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBzaG91bGQgZGVmaW5lIHByb3BlcnRpZXMuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIEVtYWlsIGFkZHJlc3MsIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdTwvYj4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3Ugc2hvdWxkIGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2V0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkIDxpPihvZmYgaXMgYWxzbyB2YWxpZCk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4NCjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCYjMDM5O05leHRcJiMwMzk7PC9wPg0KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPg0KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4NCjxsaT48cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge2Ntc19tb2R1bGUgbW9kdWxlPUZyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGU8L3A+PC9saT4NCjwvdWw+DQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyI+dGVjaGNvbS5keW5kbnMub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjx1bD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09JnF1b3Q7bmFtZSZxdW90OzwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQogPGxpPjxlbT5sb3N0dXNlcm5hbWU8L2VtPiAtIERpc3BsYXkgdGhlIGxvc3QgdXNlcm5hbWUgZm9ybS48L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gb25seV9ncm91cHM9JnF1b3Q7Z3JvdXAxLCBncm91cDIsIGdyb3VwMyZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiAgQmFzaWNhbGx5IG9ubHkgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGlmIHRoZXkgYmVsb25nIHRvIHRoYXQgcGFydGljdWxhciBncm91cChzKS48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9JnF1b3Q7Z3JvdXAmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb3N0dXNlcm5hbWUgZm9ybSwgdGhpcyBmZWF0dXJlIHNwZWNpZmllcyB0aGUgZnJvbnRlbmQgdXNlciBncm91cCB0byBhc3N1bWUgdGh0IHVzZXJzIGFyZSBtZW1iZXJzIG9mLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0mcXVvdDsxJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuIGhpcyB3aWxsIGRpc25hYmxlIGNhcHRjaGEgb24gdGhlIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgZm9yIGxvZ2luLiAgVGhpcyBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgaW50ZW50ZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj1udWxsPC9saT4NCjxwPlRoZSBvbmx5IHBvc3NpYmxlIHZhbHVlIGZvciB0aGlzIHBhcmFtZXRlciBpcyAmcXVvdDt2aWV3dXNlciZxdW90OzwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsPC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgdmlld3VzZXIgYWN0aW9uLiAgVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgdG8gc3BlY2lmeSB3aGljaCB1c2VyIHRvIHZpZXcgdGhlIGRldGFpbHMgb2YuPC9wPg0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KPGgzPlJlcXVpcmVtZW50czwvaDM+DQo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZDwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ3FjYSddID0gJ1AwLTM5NzAyMTMxOS0xMjU5OTI0NDEwODMwJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNDk5NzEyMzUzLjEyNjAxMTY2ODcuMTI2OTkzMjQ4MS4xMjY5OTQ4NzY5LjU3JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI2OTk0ODc2OS41Ny40Mi51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS9pbmRleC5waHB8dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0RlIGYmb3NsYXNoO2xnZW5kZSBpbm5zdGlsbGluZ2VuZSBnamVsZGVyIGJhcmUgaHZpcyBkdSBicnVrZXIgU2VsdnJlZ2lzdHJlcmluZyhTZWxmIFJlZ2lzdHJhdGlvbikgb2cgdGlsbGF0ZXIgQmV0YWx0IHAmYXJpbmc7bWVsZGluZyc7CiRsYW5nWydub25lJ10gPSAnSW5nZW4nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdTbGV0dCBicnVrZXInOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdUaWRzdXRsJm9zbGFzaDtwIGJydWtlcic7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnSGFuZGxpbmcgJmFyaW5nOyB1dGYmb3NsYXNoO3JlIG4mYXJpbmc7ciBlbiBhYm9ubmVtZW50YmVzdGlsbGluZyBlciBrYW5zZWxsZXJ0JzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnSGFuZGxpbmcgJmFyaW5nOyB1dGYmb3NsYXNoO3JlIG4mYXJpbmc7ciBlbiBhYm9ubmVtZW50b3JkcmUgZXIgc2xldHRldCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1Npa2tlcnQgZmVsdCBtYXJrJm9zbGFzaDtyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTaWtrZXJ0IGZlbHQgZmFyZ2UnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdMYWdyZSBkaXNzZSBkYXRhIGtyeXB0ZXJ0IGkgZGF0YWJhc2VuJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ0RlbiB2YWxndGUgb3Bzam9uZW4gZXIgaWtrZSBzdCZvc2xhc2g7dHRldCBtZWQgZGluIG4mYXJpbmc7diZhZWxpZztyZW5kZSBrb25maWd1cmFzam9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ0JydWtlciBhdXRvbWF0aXNrIG9wcHJldHRldCc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdPbSBlbiBicnVrZXIgZXIgaWRlbnRpZmlzZXJ0IGF2IGVuIGVrc3Rlcm4gaWRlbnRpZmlrYXNqb25zbW9kdWwgbWVuIGlra2UgZXIga2plbnQgaSBGcm9udEVuZFVzZXJzIG1vZHVsZW4gLSBza2FsIGRhIGVuIEZFVS1rb250byBvcHByZXR0ZXMgYXV0b21hdGlzaz8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdPcHByZXR0IGF1dG9tYXRpc2sgdWtqZW50ZSBicnVrZXJlJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdWaXNuaW5nc2lubnN0aWxsaW5nZXInOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ0RlbiBmJm9zbGFzaDtsZ2VuZGUgaW5uc3RpbGxpbmdlbiBlciBrdW4gZ3lsZGlnIG9tICZxdW90O0lubmVieWdkIGlkZW50aWZpa2Fzam9uJnF1b3Q7IGVyIGJlbnl0dGV0Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnJkFyaW5nOyB2ZWxnZSBOZWkgdmkgc2wmYXJpbmc7IGF2IG11bGlnaGV0ZW4gZm9yIGVuIGJydWtlciB0aWwgJmFyaW5nOyBiZSBvbSBnbGVtdCBpbm5sb2dnaW5nc2luZm9ybWFzam9uLCB1YXZoZW5naWcgYXYgYW5kcmUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnJkFyaW5nOyB2ZWxnZSBOZWkgdmlsIHNsJmFyaW5nOyBhdiBtdWxpZ2hldGVuIGZvciBlbiBicnVrZXIgdGlsICZhcmluZzsgYmUgb20gdGlsYmFrZXN0aWxsaW5nIGF2IHBhc3NvcmQsIHVhdmhlbmdpZyBhdiBhbmRyZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ1RpbGxhdCBicnVrZXJlICZhcmluZzsgYmUgb20gc2l0dCBicnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1RpbGxhdCBicnVrZXJlICZhcmluZzsgYmUgb20gcGFzc29yZGVuZHJpbmcnOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0lkZW50aWZpa2Fzam9uc2lubnN0aWxsaW5nZXInOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdJbm5lYnlnZCBpZGVudGlmaWthc2pvbic7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdGRVUgU3RhbmRhcmQgaWRlbnRpZmlrYXNqb24nOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdJZGVudGlmaWthc2pvbnNtb2R1bC9tZXRvZGUnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0Zyb250ZW5kVXNlcnMgbW9kdWxlbiBzdCZvc2xhc2g7dHRlciBzdCZvc2xhc2g7dHRlciBicnVrIGFsdGVybmF0aXZlIG1ldG9kZXIgZm9yIGlkZW50aWZpa2Fzam9uLCBtZWQgdmFyaWVyZW5kZSBmdW5rc2pvbmVyLiBOb2UgZnVua3Nqb25hbGl0ZXQgdmlsIGlra2UgZnVuZ2VyZSBlbGxlciB2aWwgdiZhZWxpZztyZSBkZWFrdGl2ZXJ0IG4mYXJpbmc7ciBpa2tlIGRlbiBpbm5lYnlnZGUgaWRlbnRpZmlrYXNqb25zbWV0b2RlIGVyIGkgYnJ1ayc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZlcmRpZW4gb3BwZ2l0dCBmb3IgJXMgZXIgYWxsZXJlZGUgaSBicnVrIGF2IGVuIGFubmVuIGJydWtlcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlrJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZlcmRpZW4gc29tIGVyIG9wcGdpdHQgZm9yICVzICglcykgZXIgaWtrZSB1bmlrJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdUdmluZyB2ZXJkaWVyIGZvciBkZW5uZSBlZ2Vuc2thcGVuIHRpbCAmYXJpbmc7IHVuaWsgcCZhcmluZzsgdHZlcnMgYXYgYWxsZSBrb250b2VyJzsKJGxhbmdbJ2hlbHBfcmV0dXJubGFzdCddID0gJ09tIGJlbnl0dGV0IG1lZCBpbm5sb2dnaW5nIG9nIHV0bG9nZ2luZ3NramVtYWVuZSB2aWwgZGVubmUgcGFyYW1ldGVyLCBvbSBkZW4gZXIgc3Blc2lmaXNlcnQsIGluZGlrZXJlIGF0IGJydWtlcmVuIHNrYWwgc2VuZGVzIHRpbGJha2UgdGlsIHNpZGVuIChldHRlciB1cmwpIHNvbSBicnVrZXJlbiB2YXIgcCZhcmluZzsgZiZvc2xhc2g7ciBoYW5kbGluZ2VuIGhlbmR0ZS4gRGVubmUgcGFyYW1ldGVyIHZpbCBvdmVyc3R5cmUgb21kaXJpZ2VyaW5nIHByZWZlcmFuc2VuZSwgb2cgcmV0dXJudG8gcGFyYW1ldGVyZW4uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdCZW55dHRldCBtZWQgZW4gYXYgc2tqZW1hZW5lLCBkZW5uZSBwYXJhbWV0ZXIgc3Blc2lmaXNlcmVyIGF0IHNramVtYWVuZSBpa2tlIHNrYWwgcGxhc3NlcmVzIGlubGluZS4gSXN0ZWRldCBza2FsIGRlIHJlc3VsdGVyZW5kZSB1dGRhdGFlbmUgZXR0ZXIgaW5uc2VuZGluZyBhdiBza2plbWFldCBlcnN0YXR0ZSBzdGFuZGFyZCBpbm5ob2xkc2Jsb2trZW4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0lubmxvZ2dpbmdzIHNlc3Npb25zdGlkc3V0bCZvc2xhc2g7cHNhZHZhcnNlbCc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ0RpbiBpbm5sb2dnaW5nc2Vzc2lvbiBlciBpIGZlcmQgbWVkICZhcmluZzsgdXRsJm9zbGFzaDtwZSwgdmVubmxpZ3N0IGtsaWtrICBPSyAgZm9yICZhcmluZzsgYmVrcmVmdGUgZGluIHRpbHN0ZWRldiZhZWxpZztyZWxzZSBwJmFyaW5nOyBkZXR0ZSBuZXR0c3RlZGV0Lic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1RpbGJha2VzdGlsbCBzZXNzaW9uc21hbGVuJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ0RldHRlIGVyIGZlbHRuYXZuZXQsIHNvbSBza2FsIGJlbnl0dGVzIGZvciBhZHJlc3NlcmluZyBpIHNtYXJ0eS4gRGV0IG0mYXJpbmc7IGJlc3QmYXJpbmc7IGF2IGt1biBhbGZhbnVtbWVyaXNrZSBib2tzdGF2ZXIgb2cgdW5kZXJzdHJla2VyLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXMmb3NsYXNoO2tlcmUnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdWZWxnIGVuIGVsbGVyIGZsZXJlIEZFVS1ncnVwcGVyIHNvbSBlciB0aWxsYXR0ICZhcmluZzsgc2UgZGVubmUgc2lkZW4nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0VuIGdydXBwZSBtJmFyaW5nOyB2ZWxnZXMnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVmVsZyBlbic7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnU3RhcnQmYXJpbmc7cic7CiRsYW5nWydlbmRfeWVhciddID0gJ1NsdXR0JmFyaW5nO3InOwokbGFuZ1snZGF0ZSddID0gJ0RhdG8nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnTWluaWF0eXJiaWxkZXN0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ1ZlZCBlbmRyaW5nIGF2IEJydWtlcmdydXBwZShVc2VyIEdyb3VwKSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdGb3IgbWFuZ2UgYnJ1a2VyZSBibGUgdmFsZ3QgZm9yIG1hc3NlLWhhbmRsaW5nZXIuLi4uIFZlbm5saWdzdCByZWR1c2VyIG5lZCB0aWwgMjUwIGVsbGVyIG1pbmRyZSc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgc2xldHRlIGRlIHZhbGd0ZSBicnVrZXJuZT8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnU2xldHRpbmcgdmFsZ3QnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnR2VuZXJlciBldCB0aWxmZWxkaWcgYnJ1a2VuYXZuIHZlZCBvcHByZXR0ZWxzZSBhdiBueWUgYnJ1a2VyZSc7CiRsYW5nWydtb250aHMnXSA9ICdtJmFyaW5nO25lZGVyJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdTdGFuZGFyZCBicnVrZXIgdXRsJm9zbGFzaDtwc3RpZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdWYXJzbGluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnRWdlbnNrYXAgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ09tZGlyaWdlcmluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBvZyBjb29raWUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZlbHQgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdMb3N0dXNlcm5hbWUoR2xlbXQgQnJ1a2VybmF2bikgZmxhZ2dldCBrYW4ga3VuIGJlbnl0dGVzIHAmYXJpbmc7a3JldmRlIGZlbHRlcic7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdUaWxsYXQgYnJ1ayBhdiB3eXNpd3lnIHAmYXJpbmc7IGRldHRlIHRla3N0b21yJmFyaW5nO2RldCc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5NZXJrOiA8L3N0cm9uZz4gRGV0dGUgYmVueXR0ZXIgbWNyeXB0IGZ1bmtzam9uZW5lIGZvciBrcnlwdGVyaW5nc2Zvcm0mYXJpbmc7bCwgb2cgZGlzc2UgYmxlIGlra2UgZnVubmV0IHAmYXJpbmc7IGRpbiBpbnN0YWxsYXNqb24uIFZlbm5saWdzdCBrb250YWt0IGRpbiBzZXJ2ZXJhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdSZWRpZ2VyIGJydWtlcic7CiRsYW5nWydub2lubGluZSddID0gJ0lra2UgYnJ1ayBza2plbWEgc29tIGlubGluZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0tsaWtrIGhlciBvbSBkdSBpa2tlIGthbiBodXNrZSBkaW5lIGlubmxvZ2dpbmdzZGV0YWxqZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWtrIGhlciBvbSBkdSBpa2tlIGthbiBodXNrZSBkaXR0IHBhc3NvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdLbGlrayBoZXIgZm9yICZhcmluZzsgbG9nZ2UgdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0tsaWtrIGhlciBmb3IgJmFyaW5nOyBlbmRyZSBkaXR0IHBhc3NvcmQgZWxsZXIgYW5uZW4gaW5mb3JtYXNqb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaXMgYnJ1a2VyIG1hbCc7CiRsYW5nWydldmVudCddID0gJ0hlbmRlbHNlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgSGVuZGVsc2UgdmFyc2VsJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ1ZhcnNlbCBlLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdWYXJzbGluZyBFLXBvc3RtYWwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnVmFyc2xpbmcgRS1wb3N0ZW1uZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0UtcG9zdHZhcnNsaW5nJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdWZWQgaW5ubG9nZ2luZyc7CiRsYW5nWydPbkxvZ291dCddID0gJ1ZlZCB1dGxvZ2dpbmcnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnVmVkIHV0bCZvc2xhc2g7cCBhdiBzZXNzaW9uJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1ZlZCBCcnVrZXIgb3BwcmV0dGV0JzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ1ZlZCBCcnVrZXIgc2xldHRldCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdWZWQgZW5kcmluZyBhdiBicnVrZXJpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdWZWQgb3BwcmV0dGVsc2UgYXYgYnJ1a2VyZ3J1cHBlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdWZWQgc2xldHRpbmcgYXYgYnJ1a2VyZ3J1cHBlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnRnVua3Nqb25lbiBmb3IgbWlzdGV0IGlubmxvZ2dpbmdzZGV0YWxqZXIgZXIgZnVsbGYmb3NsYXNoO3J0LiBWaSBoYXIgZnVubmV0IGV0IHVuaWt0IGJydWtlcm5hdm4gc29tIHBhc3NlciB0aWwgZGUgZGV0YWxqZW5lIGR1IGhhciBvcHBnaXR0Lic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnRGl0dCBicnVrZXJuYXZuIGVyJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZpIGFuYmVmYWxlciBhdCBkdSB0YXIgdmFyZSBwJmFyaW5nOyBkZW5uZSBpbmZvcm1hc2pvbmVuIHAmYXJpbmc7IGVuIHNpa2tlciwgbWVuIHRpbGdqZW5nZWxpZyBwbGFzcy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyAmYXJpbmc7IGhvcHBlIHRpbCBldHRlciBlbmRyaW5nIGF2IGlubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzICZhcmluZzsgaG9wcGUgdGlsIGV0dGVyIGtvZGUgYmVrcmVmdGVsc2UgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0dsZW10IEJydWtlcm5hdm4gZGV0YWxqbWFsJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnR2xlbXQgQnJ1a2VybmF2biBiZWtyZWZ0ZWxzZXNtYWwnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGZWlsOiBNZXJlIGVubiBlbiBicnVrZXJrb250byBwYXNzZXIgbWVkIGRlIHNwZXNpZmlzZXJ0ZSBlZ2Vuc2thcGVyJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZlaWw6IEt1bm5lIGlra2UgZmlubmUgZW4gYnJ1a2VyIHNvbSBwYXNzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0ZlaWw6IEt1bm5lIGlra2UgZmlubmUgZW4gZ3J1cHBlIG1lZCBkZXQgbmF2bmV0JzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2tyaXZlYmVza3l0dGV0JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdCcnVrZXIgTWFuaXB1bGF0b3IgS2xhc3NlJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dldCB1dCBhdiBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdWaXMga3VuIGRlIHNvbSBlciBpbm5sb2dnZXQnOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0xvZ2cgdXQgZGVubmUgYnJ1a2VyZW4nOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnQnJ1a2VyIGVnZW5za2FwZXInOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdCcnVrZXIgaGlzdG9yaWUnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9ydGVyJzsKJGxhbmdbJ2NsZWFyJ10gPSAnVCZvc2xhc2g7bSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFa3Nwb3J0ZXIgQnJ1a2VyaGlzdG9yaWUgdGlsIEFTQ0lJIGZpbCBzb20gZXIgbWluc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdUJm9zbGFzaDttIEJydWtlcmhpc3RvcmllIG9wcGYmb3NsYXNoO3JpbmdlciBzb20gZXIgbWluc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnR2xlbXQgZGluZSBpbm5sb2dnaW5nc2RldGFsamVyPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0ZXIgZ3J1cHBlZGVmaW5pc2pvbiAob2cgZWdlbnNrYXBlcikgdGlsIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnQmVoYW5kbGUgQnJ1a2VyaGlzdG9yaWUnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWknOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnYXYnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogSW5nZW4gZ3JlbnNlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ0VuIHRpbWUgZ2FtbGUnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2VrcyB0aW1lciBnYW1sZSc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUb2x2IHRpbWVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRW4gZGFnIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0VuIHVrZSBnYW1sZSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVG8gdWtlciBnYW1sZSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnRW4gbSZhcmluZztuZWQgZ2FtbGUnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZSBtJmFyaW5nO25lZGVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VrcyBtJmFyaW5nO25lZGVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0V0dCAmYXJpbmc7ciBnYW1sZSc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwcGVyaW5nIG9nIFNvcnRlcmluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnT3BwZiZvc2xhc2g7cmluZ2VyIHNvbSBwYXNzZXIga3JpdGVyaWV0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnU3lua2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnU3RpZ2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnU3lua2VuZGUgRGF0byc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdTdGlnZW5kZSBEYXRvJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1N5bmtlbmRlIEhlbmRlbHNlc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdTdGlnZW5kZSBIZW5kZWxzZXN0eXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1N5bmtlbmRlIElQLWFkcmVzc2UnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdTdGlnZW5kZSBJUC1hZHJlc3NlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdJa2tlIG5vZSBoaXN0b3Jpc2sgZnVubmV0JzsKJGxhbmdbJ3Jlc2V0J10gPSAnVGlsYmFrZXN0aWxsJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBwZXIgZXR0ZXIgSVAtYWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0hlbmRlbHNlc3R5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ZpcyBrdW4gaGVuZGVsc2VyIHNvbSBlciBtaW5kcmUgZW5uOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2lkZWdyZW5zZSc7CiRsYW5nWydmb3InXSA9ICdmb3IgJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnQnJ1a2VyaGlzdG9yaWUgcmFwcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVWtqZW50JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1hZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdIZW5kZWxzZXN0eXBlJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0byc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGlsYmFrZSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IG9wcGdhdmVuIGVyIGZlcmRpZyc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5qZXIgcHJvc2Vzc2VydCc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRGV0IG9wcHN0b2QgZmVpbCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUG9zdGVyIGxhZ3QgdGlsJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGVnZW5za2FwZXIgZm9yIGdydXBwZSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0Zpa2sgaW5nZW4gcmVzcG9ucyBmcmEgU01UUCBzZXJ2ZXJlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdTcGVzaWZpc2VydGUgZmlsZXIgKCVzKSBibGUgaWtrZSBmdW5uZXQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1VneWxkaWcgdmVyZGkgZm9yIG5lZHRyZWtrIGVsbGVyIGZsZXJ2YWxnc2ZlbHQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGZWx0ICVzIG92ZXJza3JpZGVyIG1ha3NpbXVtIGxlbmdkZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBGZWlsIChsaW5qZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdLdW5uZSBpa2tlIGYmYXJpbmc7IHRhayBpIGVnZW5za2FwIGRlZmluaXNqb25lbmUgKGludGVybiBmZWlsKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIG1lZCAmYXJpbmc7IHNldHRlIGJydWtlcmluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0t1bm5lIGlra2UgZmlubmUgZW4ga29sb25uZSBzb20gc2Ftc3ZhcnRlIG1lZCBkZXQgcCZhcmluZztrcmV2ZGUgZmVsdGV0ICVlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0t1bm5lIGlra2UgZmlubmUgZWdlbnNrYXBlciBmb3IgZGVuIHNwZXNpZmlzZXJ0ZSBncnVwcGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdGaWxlbiBvcHBnaXR0IGZvciBpbXBvcnQgZXIgaWtrZSBpIGtvcnJla3QgZm9ybWF0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdLdW5uZSBpa2tlICZhcmluZztwbmUgZmlsZW4nOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBUaGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJpZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSB1c2VyaWQgZm9yIHRoZSB1c2VyLiBBIHZhbHVlIGluIHRoaXMgZmllbGQgd2lsbCBpbmRpY2F0ZSB5b3UgYXJlIGRvaW5nIGFuIHVwZGF0ZS48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUaGUgcGFzc3dvcmQgdG8gc2V0IGZvciB0aGUgdXNlcjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+Y3JlYXRlZGF0ZTwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSB0b2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5ncm91cG5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZ3JvdXBzIHRoYXQgeW91IHdhbnQgdG8gaGF2ZSB0aGUgdXNlciBiZSBhIG1lbWJlciBvZi4gSWYgYWxsIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IGZpbGxlZCBpbiB0aGUgaW5zZXJ0L3VwZGF0ZSBvZiB0aGUgcmVjb3JkIHdpbGwgZmFpbC4gU2VlIE11bHRpc2VsZWN0IEZpZWxkcyBiZWxvdyBmb3Igc3ludGF4LjwvbGk+DQo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+RGF0ZSBGaWVsZHMNCiAgICA8cD5NdXN0IGJlIGluIHRoZSBmb3JtYXQgb2YgTU0tREQtWVlZWTwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+PC9saT4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxwPlRoZSBFeHBvcnQgZGF0YSBpcyBpbiB0aGUgc2FtZSBmb3JtYXQgYXMgbmVlZGVkIGZvciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRlciBCcnVrZXJlIHRpbCBkZW5uZSBncnVwcGVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lubmRhdGEgQ1NWIGZpbCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lubmRhdGEgWE1MIGZpbCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFa3Nwb3J0ZXIgQnJ1a2VyZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRlciBCcnVrZXJlJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1Qmb3NsYXNoO20nOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdCaWxkZSBtJmFyaW5nO2xzdGknOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFdCBwcm9ibGVtIGhhciBvcHBzdCZhcmluZzt0dCBtZWQgZW4gbWFuZ2xlbmRlIChtZW4gbiZvc2xhc2g7ZHZlbmRpZykgb3BwbGFzdGluZyc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnS3VubmUgaWtrZSBiZWhhbmRsZSBkZW4gdGlsYnVkdGUgWE1MIGZpbGVuJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdLYW4gaWtrZSBzbGV0dGUgZW4gZ3J1cHBlIHNvbSBmb3J0c2F0dCBoYXIgYnJ1a2VyZSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRGVubmUgYnJ1a2VyZW4gZXIgYWxsZXJlZGUgaW5ubG9nZ2V0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGRldCBibGUgaWtrZSBza3JldmV0IHJpa3RpZyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnVGlsbGF0ZXIgYnJ1a2VyZSAmYXJpbmc7IGxvZ2dlIGlubiBtZXIgZW4gZW4gZ2FuZyc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnQmlsZGUgZmlsZW5kZWxzZXIgc29tIGJydWtlcmUgZiZhcmluZztyIGxvdiAmYXJpbmc7IGxhc3RlIG9wcCc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIHNsZXR0ZXM8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBCcnVrZXJuYXZuZXQ8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gQnJ1a2VyIElEZW48L2xpPg0KPGxpPjxlbT5wcm9wczwvZW0+IC0gRW4gaGFzaCBmeWx0IG1lZCBlZ2Vuc2thcGVuZSB0aWwgYnJ1a2VyZW48L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGJydWtlciBvcHByZXR0ZXM8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEJydWtlcm5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXIgSURlbjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIGVyIG9wcGRhdGVydCAoZW50ZW4gYXYgYnJ1a2VyZW4gc2VsdiBlbGxlciBhdiBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEJydWtlcm5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXJJRCYjMDM5O2VuPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGdydXBwZSBlciBvcHByZXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEdydXBwZW5hdm5ldDwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBHcnVwcGViZXNrcml2ZWxzZW48L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gR3J1cHBlIElEZW48L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gZ3J1cHBlIGVyIHNsZXR0ZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEdydXBwZW5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBHcnVwcGUgSURlbjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkVuIGhlbmRlbHNlL2V2ZW50IGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXIgbG9nZ2VyIHNlZyBpbm48L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBpZCYjMDM5O2VuIGZvciBkZW4gaW5ubG9nZ2VkZSBicnVrZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTmF2bmV0IHAmYXJpbmc7IGJydWtlcmVuIHNvbSBlciBsb2dnZXQgaW5uPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFdlYmtsaWVudGVucyBJUCBhZHJlc3NlIDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VyIGxvZ2dlciB1dDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE5hdm5ldCBwJmFyaW5nOyBicnVrZXJlbiBzb20gZXIgbG9nZ2V0IHV0PC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEJydWtlciBJRGVuPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2Vyc2Vzc2lvbiB1dGwmb3NsYXNoO3BlcjwvcD4NCjxoND5QYXJhbWV0ZXJlaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBOYXZuZXQgcCZhcmluZzsgYnJ1a2VyZW4gc29tIHV0bCZvc2xhc2g7cDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXIgSURlbiB0aWwgYnJ1a2VyZW4gc29tIHV0bCZvc2xhc2g7cDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0VuIGhlbmRlbHNlIHNvbSBnZW5lcmVyZXMgbiZhcmluZztyIGVuIGJydWtlciBsb2dnZXIgc2VnIGlubiBpIHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdFbiBoZW5kZWxzZSBzb20gZ2VuZXJlcmVzIG4mYXJpbmc7ciBlbiBicnVrZXIgbG9nZ2VyIHNlZyB1dCBhdiBzeXN0ZW1ldCc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0VuIGhlbmRlbHNlIHNvbSBnZW5lcmVyZXMgbiZhcmluZztyIGVuIGJydWtlci1zZXNzaW9uIGhhciB1dGwmb3NsYXNoO3B0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbiZhcmluZztyIGVuIGJydWtlciBlciBvcHByZXR0ZXQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuJmFyaW5nO3IgZW4gYnJ1a2VycyBpbmZvIGVyIG9wcGRhdGVydCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0VuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXJrb250byBlciBzbGV0dGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0VuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXJncnVwcGUgZXIgb3BwcmV0dGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0VuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXJncnVwcGUgZXIgb3BwZGF0ZXJ0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0VuIGhlbmRlbHNlIGdlbmVyZXJ0IG4mYXJpbmc7ciBlbiBicnVrZXJncnVwcGUgZXIgc2xldHRldCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBncnVwcGUnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBGJm9zbGFzaDtsZ2VuZGUgZmVsdCBlciBmdWxsc3RlbmRpZ2UgU21hcnR5bWFsZXIuPGJyLz5TYW1tZW4gbWVkIGFuZHJlIHRpZGxpZ2VyZSBla3Npc3RlcmVuZGUgc21hcnR5IHZhcmlhYmxlciBvZyBwbHVnaW5zLCBzJmFyaW5nOyBlciAoJHVzZXJuYW1lKSBvZyAoJCBncnVwcGUpIHZhcmlhYmxlbmUgdGlsZ2plbmdlbGlnZS4gPGVtPiAoKCRncm91cCktdmFyaWFibGVuIGtvYmxlciBkZW4gZiZvc2xhc2g7cnN0ZSBncnVwcGVuIHRpbCBkZW4gc29tIGJydWtlcmVuIHRpbGgmb3NsYXNoO3Jlci4pPC8gZW0+Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnUmVkaWdlciBkZXR0ZSBmZWx0ZXQgZm9yICZhcmluZzsgZW5kcmUgYnJ1a2VyZW5zIHBhc3NvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1JlZGlnZXIgZGV0dGUgZmVsdGV0IGZvciAmYXJpbmc7IGVuZHJlIGJydWtlcmVucyBwYXNzb3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0VuIGJydWtlciBtZWQgc2FtbWUgYnJ1a2VybmF2biBmaW5uZXMgYWxsZXJlZGUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnSW5nZW4gcmVzdWx0YXRlciBmcmEgY3N2IGVrc3BvcnRlbic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5nZGVuIHAmYXJpbmc7IGJydWtlcm5hdm5mZWx0ZXQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ2RlbiBwJmFyaW5nOyBwYXNzb3JkZmVsdGV0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWFrcyBsZW5nZGUgcCZhcmluZzsgcGFzc29yZGV0IGVyIHVneWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYWtzIGxlbmdkZSBwJmFyaW5nOyBicnVrZXJuYXZuIGVyIHVneWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ1VneWxkaWcgZS1wb3N0YWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1ZpIGt1bm5lIGlra2UgZmlubmUgZW4gZS1wb3N0YWRyZXNzZSBmb3IgZGVubmUga29udG9lbic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnS2FuIGlra2UgbGFncmUgYnJ1a2VyaW5mb3JtYXNqb25lbic7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdLYW4gaWtrZSBsYWdyZSBlZ2Vuc2thcGVuJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdCcnVrZXIgbGFndCB0aWwgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdCcnVrZXIgc2xldHRldCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdFZ2Vuc2thcGVyJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWZXJkaSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0FkdmFyc2VsOiBEaXNzZSBmZWx0ZW5lIHAmYXJpbmc7dmlya2VyIHN0Jm9zbGFzaDtycmVsc2VuIHAmYXJpbmc7IGlubnRhc3RpbmdzZmVsdGVuZSBpIHNramVtYWVyLiAmQXJpbmc7IG1pbnNrZSBkaXNzZSB2ZXJkaWVuZSBwJmFyaW5nOyBldCBla3Npc3RlcmVuZGUgbmV0dHN0ZWQgZXIgaWtrZSAmYXJpbmc7IGFuYmVmYWxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIGVuZHJlIGRlbm5lIG1vZHVsZW5zIGlubnN0aWxsaW5nZXI/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLXBvc3RhZHJlc3NlbiBlciBhbGxlcmVkZSBpIGJydWsnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnQnJ1ayBpbmZvcm1hc2pvbnNrYXBzbGVyKGNvb2tpZXMpIGZvciAmYXJpbmc7IGh1c2tlIGlubmxvZ2dpbmdzZGV0YWxqZXInOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOYXZuZXQgcCZhcmluZzsgaW5mb3JtYXNqb25za2Fwc2VsZW4oY29va2llKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1RpbGxhdCBpZGVudGlza2UgZS1wb3N0YWRyZXNzZXInOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1wb3N0YWRyZXNzZSBlciBicnVrZXJuYXZuJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0ZvcnMmb3NsYXNoO2sgJmFyaW5nOyBob2xkZSBpbm5sb2dnaW5nZW4gdmVkIGxpdmUgdmVkICZhcmluZzsgYmVueXR0ZSBlbiBpbmZvcm1hc2pvbnNrYXBlbCA8ZW0+KGluZm9ybWFzam9uc2thcHNlbGVuIHZpbCBibGkgdGlsYmFrZXNhdHQgbiZhcmluZztyIGR1IGVyIGFrdGl2IHAmYXJpbmc7IG5ldHRzdGVkZXQpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHRpbGxhdCBmbGVyZSBicnVrZXJlIG1lZCBzYW1tZSBlLXBvc3RhZHJlc3NlKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGJydWtlcnMgZS1wb3N0YWRyZXNzZSBlciBkZXJlcyBicnVrZXJuYXZuIC0tIGlra2Ugc2V0dCBkZXR0ZSBzYW1tZW4gbWVkICZxdW90O1RpbGxhdCBpZGVudGlza2UgZS1wb3N0YWRyZXNzZXImcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1RpbGxhdCBmbGVyZSAmcXVvdDtnbGVtdCBwYXNzb3JkJnF1b3Q7IHAmYXJpbmc7bWlubmVsc2VyPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcodGlsbGF0IGF0IGVuIGJydWtlciBiZXIgb20gbnVsbHN0aWxsaW5nIGF2IHBhc3NvcmRldCwgc2VsdiBvbSBkZSBpa2tlIGhhciBiZW55dHRldCBkZXQgZm9ycmlnZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdCZW55dHQgRnJvbnQtZW5kIFVzZXIgc3Blc2lmaWtlIHRpbGxhdGVsc2VyPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsdCBlciwgRkVVc2VyIHRpbGxhdGVsc2VyIGRlIHNhbW1lIHNvbSB0aWxzdmFyZW5kZSBBZG1pbi1vbXImYXJpbmc7ZGUgdGlsbGF0ZWxzZXIgLSBMZWdnIHRpbCBicnVrZXIsIExlZ2cgdGlsIGdydXBwZSwgb3N2LiBPbSBkdSBoYWtlciBhdiBoZXIsIHZpbCBkZXQgdiZhZWxpZztyZSBhZHNraWx0ZS9lZ25lIHRpbGxhdGVsc2VyIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0tsYXJ0ZSBpa2tlICZhcmluZzsgZmlubmUgZGVuIG9wcGxhc3RlZGUgZmlsYSAoaW50ZXJuIGZlaWwpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnRGV0IGVyIGV0IHByb2JsZW0gbWVkIGRpbiBvcHBsYXN0ZWRlIGZpbC4gVmVubmxpZ3N0IGZvcnMmb3NsYXNoO2sgcCZhcmluZzsgbnl0dCc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdEdSBvcHBnYSBpa2tlIGJydWtlcm5hdm4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnRHUgb3BwZ2EgaWtrZSBlbiBlLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ0R1IG9wcGdhIGlra2UgcGFzc29yZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgYnJ1a2VyIHV0bG9nZ2luZyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBicnVrZXIgaW5ubG9nZ2luZyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlYmQUVsaWc7UiBWQVJTT008L2I+IG4mYXJpbmc7ciBla3Npc3RlcmVuZGUgZWdlbnNrYXBlciBzb20gZXIgdGlsZWduZXQgZ3J1cHBlciBmb3JhbmRyZXMsIGR1IGthbiBrb21tZSBpIHNrYWRlIGZvciAmYXJpbmc7ICZvc2xhc2g7ZGVsZWdnZSBub2Ugb2cgZGVybWVkIG5ldHRzdGVkZXQgPGk+KHNwZXNpZWx0IGh2aXMgZHUgbWluc2tlciBmZWx0bGVuZ2RlciwgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRGVubmUgZnVua3Nqb25lbiB2aXJrZXIgaWtrZSBpIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0lra2Ugb3BwcmV0dCBlZ2Vuc2thcGVyIGZvciBicnVrZXJuYXZuIGVsbGVyIHBhc3NvcmQgZGEgZGlzc2UgZWdlbnNrYXBlbmUgZXIgaW5uZWJ5Z2dldCBpIHNlbHZlIEZyb250RW5kVXNlciBtb2R1bGVuLic7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRWtzcG9ydGVyIGJydWtlcmUgdGlsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbiAnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdSZWRpZ2VyIGVnZW5za2FwJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3MgbGVuZ2RlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdPcHByZXR0ZXQnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydGVyIGV0dGVyJzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0ZXJlcic7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdCcnVrZXJlIGkgdmFsZ3QoZSkgZ3J1cHBlKHIpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0JlZ3JlbnMgcmVzdWx0YXRlbmUgdGlsJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0t1bm5lIGlra2UgZmlubmUgZXQgZS1wb3N0ZmVsdCBmb3IgZGVubmUgYnJ1a2VyZW4uIER1IG0mYXJpbmc7IGthbnNramUga29udGFrdGUgc3lzdGVtYWRtaW5pc3RyYXRvcmVuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGZvciBza2plbWFldCBHbGVtdCBwYXNzb3JkJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGZvciBza2plbWFldCBFbmRyZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGRldCBza2FsIGhvcHBlcyB0aWwgZXR0ZXIgaW5ubG9nZ2luZyAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1NpZGVJRC9BbGlhcyBkZXQgc2thbCBob3BwZXMgdGlsIGV0dGVyIHV0bG9nZ2luZyAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnRlcmluZ3NyZWtrZWYmb3NsYXNoO2xnZSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdOb2VuIGJydWtlcmUgaG9sZGVyIHAmYXJpbmc7ICZhcmluZzsgdGlsYmFrZXN0aWxsZSBzaW5lIHRhcHRlIHBhc3NvcmQuIE4mYXJpbmc7IGVyIGRldHRlIGFudGFsbGV0OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cgc29tIGVyIG1lciBlbm4gZW4gdWtlIGdhbWxlJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0ZqZXJuIGFsbGUgaW5ubGVnZyBzb20gZXIgbWVyIGVubiBlbiBtJmFyaW5nO25lZCBnYW1sZSc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0VyIGR1IHNpa2tlcj8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdFbiB1Z3lsZGlnIGtvZGUgZXIgbGFndCBpbm4sIHZlbm5saWdzdCBwciZvc2xhc2g7diBpZ2plbi4nOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0VuIG1pZGxlcnRpZGlnIGtvZGUgZm9yIGRpbiBicnVrZXJJRCBibGUgaWtrZSBmdW5uZXQgaSBkYXRhYmFzZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNYWwgc29tIGJlbnl0dGVzIGZvciAmYXJpbmc7IHZpc2UgdmVyaWZpa2Fzam9uc3NramVtYWV0JzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdNYWwgc29tIGJlbnl0dGVzIHAmYXJpbmc7IGdsZW10IHBhc3NvcmQgZXBzb3Rlbic7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRW5kcmluZyBhdiBwYXNzb3JkIGZvciBkZW5uZSBrb250b2VuIGVyIGFsbGVyZWRlIHNhdHQgaSBnYW5nIGF2IGRlZyBlbGxlciBub2VuIGFubmVuLiBTamVrayBlLXBvc3RlbiBkaW4sIGR1IGthbiBoYSBtb3R0YXR0IHZpZGVyZSBpbnN0cnVrc2pvbmVyIG9tIGh2b3JkYW4gZGV0dGUgc2thbCBnamVubm9tZiZvc2xhc2g7cmVzLiAnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGZlaWwnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnRHUgZiZhcmluZztyIGRlbm5lIG1lbGRpbmdlbiBmb3JkaSBub2VuIGhhciBmb3J0YWx0IHYmYXJpbmc7ciBuZXR0c2lkZSBhdCBkdSBoYXIgbWlzdGV0IGRpdHQgcGFzc29yZC4gIE9tIGRldHRlIGVyIGtvcnJla3QsIGxlcyBpbnN0cnVrc2pvbmVuZSBuZWRlbmZvci4gIE9tIGR1IGlra2Ugc2tqJm9zbGFzaDtubmVyIGh2YSBkZXR0ZSBrYW4gdiZhZWxpZztyZSwgcyZhcmluZzsga2FuIGR1IHRyeWd0IHNsZXR0ZSBkZW5uZSBtZWxkaW5nZW4sIG9nIHZpIHRha2tlciBmb3IgZGluIG9wcG1lcmtzb21oZXQuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdEZW4gZiZvc2xhc2g7bGdlbmRlIGtvZGUgaGFyIGJsaXR0IGdlbmVyZXJ0IHRpbGZlbGRpZyBmb3IgJmFyaW5nOyBnamVua2plbm5lIGJydWtlcmtvbnRvZW4uICBuJmFyaW5nO3IgZHUga2xpa2tlciBsaW5rZW4gbmVkZW5mb3IgdmlsIGR1IGYmYXJpbmc7IG9wcCBldCBmZWx0IGZvciAmYXJpbmc7IHNrcml2ZSBpbm4gZGVubmUga29kZW4uICBOb3JtYWwgZXIgZmVsdGV0IGZvcmgmYXJpbmc7bmRzdXRmeWx0IGZvciBkZWcsIG1lbiBpIHRpbGZlbGxlIGRldCBpa2tlIGVyIC0gcyZhcmluZzsgZXIga29kZW46JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnSHZpcyBkdSBrbGlra2VyIHAmYXJpbmc7IGxpbmtlbiBzb20gZiZvc2xhc2g7bGdlciB2aWwgZHUgYmxpIGYmb3NsYXNoO3J0IHRpbCBlbiBuZXR0c2lkZSBodm9yIGR1IGthbiBsZWdnZSBpbm4gdmVkbGFndGUga29kZSBvZyBsZWdnZSBpbm4gbnl0dCBwYXNzb3JkLic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2xlbXQgcGFzc29yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0t1bm5lIGlra2UgZmlubmUgQ01TTWFpbGVyIG1vZHVsZW4nOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRW4gZS1wb3N0IGVyIGJsaXR0IHNlbmR0IHRpbCAlcyBtZWQgaW5zdHJ1a3Nqb25lciBvbSBodm9yZGFuIHBhc3NvcmRldCBrYW4gbGVnZ2VzIGlubiBwJmFyaW5nOyBueS4gVGFray4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTJmFyaW5nOyBkdSBoYXIgZ2xlbXQgZWxsZXIgbWlzdGV0IHBhc3NvcmRldCBkaXR0LiBWZWwsIGxlZ2cgaW5uIGJydWtlcm5hdm5ldCBkaXR0IGhlciwgb2cgb20gdmkgZmlubmVyIGRlZyBzJmFyaW5nOyB2aWwgdmkgc2VuZGUgZGVnIGVuIGUtcG9zdCBvbSBodm9yZGFuIGR1IGthbiB0aWxiYWtlc3RpbGxlIGRldC4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNYWwgZm9yIGdsZW10IHBhc3NvcmQnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnJiMwMzk7TWlzdGV0IGJydWtlcm5hdm4mIzAzOTsgbWFsJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0VnZW5za2FwICVzIGlra2UgZnVubmV0JzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdFZ2Vuc2thcCBmdW5uZXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0xlZ2cgdGlsIGVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdFdCBvYmxpZ2F0b3Jpc2sgZmVsdCAoJXMpIHZhciB0b210JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRXZ0LiBueXR0IHBhc3NvcmQgaGVyIGZvciAmYXJpbmc7IGVuZHJlIGRldCBla3Npc3RlcmVuZGUnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdEZXQgc2VyIGlra2UgdXQgdGlsIGF0IGR1IGVyIGlubmxvZ2dldCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5uc3RpbGxpbmdlcic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJlcmluZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0tvbnRvZW4gaGFyIHV0bCZvc2xhc2g7cHQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ZlaWwgcCZhcmluZzsgZS1wb3N0YWRyZXNzZW5zIGZvcm1hdGVyaW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnVWd5bGRpZyB1dGwmb3NsYXNoO3BzZGF0by4gRGV0dGUga2FuIHYmYWVsaWc7cmUgc3lzdGVtcmVsYXRlcnQuIEZvcnMmb3NsYXNoO2sgbWVkICZhcmluZzsgc2V0dGUgZXQgdGlkbGlnZXJlICZhcmluZztyLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRmVpbCB2ZWQgc2V0dGluZyBhdiBlZ2Vuc2thcCAlcyBmb3IgYnJ1a2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnVWd5bGRpZyBncnVwcGVJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01lcmtlIGZvciBza2p1bHQgZmVsdCc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnRmFyZ2UgZm9yIHNranVsdCBmZWx0JzsKJGxhbmdbJ2hpZGRlbiddID0gJ1NranVsdCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRW4gZWdlbnNrYXAgbWVkIGRldCBuYXZuZXQgZXIgYWxsZXJlZGUgZGVmaW5lcnQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnSW5nZW4gZWdlbnNrYXAgZGVmaW5lcnQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdJbmdlbiBlZ2Vuc2thcGVyIGJsZSB2YWxndCBmb3IgZGVubmUgZ3J1cHBlbic7CiRsYW5nWydub2dyb3VwcyddID0gJ0luZ2VuIGdydXBwZXIgZXIgZGVmaW5lcnQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwcGVyIGZ1bm5ldCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnRGV0IG0mYXJpbmc7IHRpbGRlbGVzIG1lZGxlbXNrYXAgZm9yIG1pbnN0IGVuIGdydXBwZSAnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ0tyZXYgbWVkbGVtc2thcCBmb3IgbWluc3QgZW4gZ3J1cHBlJzsKJGxhbmdbJ2JhY2snXSA9ICdUaWxiYWtlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBmZWx0ZXQgbSZhcmluZzsgZnlsbGVzIHV0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNZXJrIG9ibGlnYXRvcmlza2UgZmVsdCBtZWQgJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ1V0aGV2IG9ibGlnYXRvcmlza2UgZmVsdCBtZWQnOwokbGFuZ1snbmV4dCddID0gJ05lc3RlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRW4gZ3J1cHBlIG1lZCBkZXQgbmF2bmV0IGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3Jpc2snOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdWYWxnZnJpdHQnOwokbGFuZ1snb2ZmJ10gPSAnQXYnOwokbGFuZ1snc2l6ZSddID0gJ1N0Jm9zbGFzaDtycmVsc2UnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYWtzIHN0Jm9zbGFzaDtycmVsc2UgaSBwaXhsZXIgZm9yIGVuaHZlciBkaW1lbnNqb24gcCZhcmluZzsgYmlsZGV0KSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5nZGUnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oYm9rc3RhdmVyIGkgdGVrc3Rpbm5za3JpdmluZ2VuKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTmVkdHJla2tzdmFsZywgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3MuIEh1bm5raiZvc2xhc2g7bm49Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2tuYXBwIGV0aWtldHRlciwgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3M6IEh1bm5raiZvc2xhc2g7bm49ayc7CiRsYW5nWydwcm9tcHQnXSA9ICdTcCZvc2xhc2g7cic7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0ZlbHQgU3RhdHVzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1NwJm9zbGFzaDtyIGkgTWlzdGV0PGJyLz5icnVrZXJuYXZuJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdCc7CiRsYW5nWydjaGVja2JveCddID0gJ0F2a3J5c3NuaW5nc2Jva3MnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdGbGVydmFsZ3NsaXN0ZSc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpb2tuYXBwZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkZSc7CiRsYW5nWydlbWFpbCddID0gJ0UtcG9zdGFkcmVzc2UnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdG9tciZhcmluZztkZSc7CiRsYW5nWydkcm9wZG93biddID0gJ05lZHRyZWtrc21lbnknOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdWZWxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnTG9nZyB1dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnQmVueXR0IGRldHRlIGdydXBwZW5hdm5ldCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdGb3JhbmRyZSBtaW5lIGlubnN0aWxsaW5nZXInOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdJbm5sb2dnaW5nIG1pc3NseWtrZXQgLSB1Z3lsZGlnIGJydWtlcm5hdm4gZWxsZXIgcGFzc29yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dnIGlubic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0xvZ2cgaW5uIGtuYXBwIGV0aWtldHQnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3NvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdIdXNrIG1lZyBwJmFyaW5nOyBkZW5uZSBkYXRhbWFza2luZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdHbGVtdCBwYXNzb3JkZXQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0hhciBkdSBnbGVtdCBpbm5sb2dnaW5nc2RldGFsamVuZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01hbCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGluZm9ybWFzam9uIG9tIGRlbm5lIGJydWtlcmVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEZXQgYnJ1a2VybmF2bmV0ICglcykgZXIgYWxsZXJlZGUgaSBicnVrJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdCcnVrIFNNVFAgZm9yICZhcmluZzsga29udHJvbGxlcmUgZS1wb3N0YWRyZXNzZXI/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gbGVuZ2RlIHAmYXJpbmc7IHBhc3NvcmQnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWFrc2ltdW0gbGVuZ2RlIHAmYXJpbmc7IHBhc3NvcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBMZW5nZGUgcCZhcmluZzsgYnJ1a2VybmF2bic7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYWtzaW11bSBsZW5nZGUgcCZhcmluZzsgYnJ1a2VybmF2bic7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNla3VuZGVyKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnQnJ1ayBjb29raWVzIGZvciAmYXJpbmc7IGhvbGRlIGlubmxvZ2dpbmdlbiB2ZWQgbGl2JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnVGlsbGF0IGUtcG9zdCByZWdpc3RyZXJpbmcnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkZ3J1cHBlIGZvciBueWUgYnJ1a2VyZSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ01hbCBmb3IgZm9yYW5kcmUgYnJ1a2VyZGF0YSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnUGFzc29yZGVuZSBlciBpa2tlIGxpa2UnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVWd5bGRpZyBicnVrZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VneWxkaWcgcGFzc29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ1JlZGlnZXIgYnJ1a2VyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnR3lsZGlnJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnQnJ1a2VybmF2bic7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMgJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0Rlbm5lIGJydWtlcmVuIGVyIGlra2UgbWVkbGVtIGF2IG5vZW4gZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdJbmdlbiBlZ2Vuc2thcGVyJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnRm9ycyZvc2xhc2g7ayAmYXJpbmc7IGltcG9ydGVyZSBkdXBsaWthdGUgZWdlbnNrYXBlcic7CiRsYW5nWyd2YWx1ZSddID0gJ1ZlcmRpJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXBwZXInOwokbGFuZ1sncHJvcGVydGllcyddID0gJ0VnZW5za2FwZXInOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdFZ2Vuc2thcGVucyBOYXZuICc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdFZ2Vuc2thcGVucyB2ZXJkaSc7CiRsYW5nWydhZGQnXSA9ICdMZWdnIHRpbCc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWUnOwokbGFuZ1snZWRpdCddID0gJ1JlZGlnZXInOwokbGFuZ1snZXhwaXJlcyddID0gJ1V0bCZvc2xhc2g7cGVyJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZXNpZmlzZXIgZGF0byc7CiRsYW5nWycxMmhycyddID0gJzEyIHRpbWVyJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgdGltZXInOwokbGFuZ1snNDhocnMnXSA9ICc0OCB0aW1lcic7CiRsYW5nWycxd2VlayddID0gJzEgdWtlJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgVWtlcic7CiRsYW5nWycxbW9udGgnXSA9ICcxIE0mYXJpbmc7bmVkJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE0mYXJpbmc7bmVkZXInOwokbGFuZ1snNm1vbnRocyddID0gJzYgTSZhcmluZztuZWRlcic7CiRsYW5nWycxeWVhciddID0gJzEgJkFyaW5nO3InOwokbGFuZ1snbmV2ZXInXSA9ICdBbGRyaSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdWZWxseWtrZXQgaW5zdGFsbGFzam9uIGF2IG1vZHVsZW4uPGJyLz5IdXNrICZhcmluZzsgYWt0aXZpc2VyZSAgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uJnF1b3Q7DQpJIHRpbGxlZ2csIGFuYmVmYWxlciB2aSBkZWcgJmFyaW5nOyBpbnN0YWxsZXJlIENhcHRjaGEgbW9kdWxlbi4gIE9tIGRlbm5lIGVyIGluc3RhbGxlcnQsIGVuIGd5bGRpZ2hldHN0ZXN0IGF2IGV0IGNhcHRjaGFiaWxkZSB2aWwga3JldmVzIGkgdGlsbGVnZyB0aWwgYnJ1a2VybmF2biBvZyBwYXNzb3JkIGZvciAmYXJpbmc7IGxvZ2dlIGlubi4gTWVuaW5nZW4gbWVkIGRldHRlIGVyICZhcmluZzsgaGluZHJlIGJydXRlIGZvcmNlIGFuZ3JlcC4gIDxzdHJvbmc+TWVyazo8L3N0cm9uZz4gUGFyYW1ldGVyZW4gbm9jYXB0Y2hhIGthbiBiZW55dHRlcyBmb3IgJmFyaW5nOyBzbCZhcmluZzsgYXYgZGVubmUgZnVua3Nqb25lbiBzZWx2IG9tIENhcHRjaGEgbW9kdWxlbiBlciBpbnN0YWxsZXJ0LiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3NvcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdHamVudGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0VuIGdydXBwZSBtZWQgZGV0IG5hdm5ldCBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1JlZGlnZXIgZ3J1cHBlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1JlZ2lzdHJlcic7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldHQnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZGV0dGUgZXIga29ycmVrdGUgdmFsZyBmb3IgZGVubmUgZ3J1cHBlbj9cbiZBcmluZzsgc2wmYXJpbmc7IGVuIGVnZW5za2FwIGF2L29mZiB2aWwgaWtrZSBzbGV0dGUgbm9lbiBpbm5sZWdnIGkgZWdlbnNrYXAtdGFiZWxsZW4gZm9yIGRlbm5lIGdydXBwZW4vYnJ1a2VyZW4uICBFZ2Vuc2thcGVuIHZpbCBpIHN0ZWRldCBibGkgdXRpbGdqZW5nZWxpZy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkdSB2aWwgc2xldHRlIGRlbm5lIGdydXBwZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdFciBkdSBzaWtrZXIgcCZhcmluZzsgYXQgZHUgdmlsIHNsZXR0ZSBkZW5uZSBlZ2Vuc2thcGVuIGhlbHQ/XG4mQXJpbmc7IGdqJm9zbGFzaDtyZSBkZXR0ZSB2aWwgb2dzJmFyaW5nOyBzbGV0dGUgZW5odmVyIGJydWtlcnMgaW5ubGVnZyBpIGRlbm5lIGVnZW5za2FwZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1VmdWxsc3RlbmRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXZuJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBtZWQgJmFyaW5nOyBsZWdnZSB0aWwgZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgdGlsIGdydXBwZWVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgdGlsIGdydXBwZSc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gbWVkICZhcmluZzsgbGVnZ2UgZW4gYnJ1a2VyIHRpbCBncnVwcGVuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIG1lZCAmYXJpbmc7IHNsZXR0ZSBlbiBlZ2Vuc2thcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ0t1bm5lIGlra2UgZmlubmUgZW4gZS1wb3N0YWRyZXNzZSc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnSW5nZW4gc2tyaXZlcmV0dGlnaGV0IGkgbSZhcmluZztsbWFwcGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdVZ3lsZGlnZSBwYXJhbWV0ZXJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS3VubmUgaWtrZSBmaW5uZSBub2VuIGdydXBwZXInOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdCcnVrJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0JydWtlcm5hdm4gdmFubGlnIHV0dHJ5a2snOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdCZXNrcml2ZWxzZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcnVwcGVuYXZuJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FkZ2FuZyBuZWt0ZXQnOwokbGFuZ1snZXJyb3InXSA9ICdGZWlsJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTGVnZyB0aWwgZ3J1cHBlJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0ZXIgR3J1cHBlJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdMZWdnIHRpbCBicnVrZXInOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0JydWtlcmUgc29tIHBhc3NlciBtZWQga3JpdGVyaWVuZSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwZSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1ZlbGcgZ3J1cHBlJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01hbCBmb3IgcmVnaXN0cmVyaW5nJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ01hbCBmb3IgdXRsb2dnaW5nJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTWFsIGZvciBpbm5sb2dnaW5nJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyYW5zZXInOwokbGFuZ1sndXNlcnMnXSA9ICdCcnVrZXJlJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgQWRtaW5pc3RyYXNqb24nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBZG1pbmlzdHJlciBGcm9udGVuZCBVc2Vycyc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhcmQgZm9yc2lkZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU2lzdGUgdmlzdGUgc2lkZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbm5lbiBzaWRlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ09wcGdpIHRla3N0ZW4gZnJhIGJpbGRldCc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBhbGxvd3MgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24gb2YgZnJvbnQgZW5kIHVzZXJzIDxpPih1c2VycyB3aG8gaGF2ZSBubyBhZG1pbiBhY2Nlc3NzKTwvaT4uICBJdCBhbGxvd3MgY3JlYXRpb24gb2YgdXNlciBncm91cHMsIGFuZCB1c2VyIGFjY291bnRzIGFuZCBhbGxvd3MgdXNlcnMgdG8gbG9naW4gYW5kIGxvZ291dC4gIGl0IGNhbiBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIEN1c3RvbUNvbnRlbnQgbW9kdWxlIHRvIGRpc3BsYXkgZGlmZmVyZW50IGNvbnRlbnQgdG8gZGlmZmVyZW50IHVzZXJzIG9uY2UgdGhleSBoYXZlIGxvZ2dlZCBpbjwvcD4NCjxoMz5GZWF0dXJlczwvaDM+DQo8dWw+DQo8bGk+PHA+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3VwczwvcD48L2xpPg0KPGxpPjxwPkNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Gb3Jnb3QgcGFzc3dvcmQsIGFuZCBmb3Jnb3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4uLi4gYWxsb3dzIHVzZXJzIHRvIHNldCBhIG5ldyBwYXNzd29yZCwgYW5kL29yIHRvIHJlY292ZXIgdGhlaXIgdXNlcm5hbWUgaWYgdGhleSBjb21wbGV0ZWx5IGZvcmdvdCBsb2dpbiBkZXRhaWxzLjwvcD48L2xpPg0KPGxpPjxwPkhhcyBhbiBleHRlbnNpdmUgQVBJIGZvciBhZGRpbmcgZnVuY3Rpb25hbGl0eTwvcD48L2xpPg0KPC91bD4NCjxoMz5Ib3cgZG8gSSB1c2UgaXQ8L2gzPg0KPHVsPg0KPGxpPjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIGFjY2VzcyBhZG1pbiBwYW5lbCB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdW5kZXIgdGhlICZhbXA7cXVvdDtVc2VycyAmYW1wOyBnR3JvdXBzJmFtcDtxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBuZWVkIHRvIGRlZmluZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSAob3IgZW1haWwgYWRkcmVzcykgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8cD48Yj5Ob3RlOjwvYj4gTmV3IGluc3RhbGxhdGlvbnMgb2YgdGhlIEZFVSBtb2R1bGUgc3BlY2lmeSB0aGF0IHRoZSB1c2VycyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lICh0aGlzIG9wdGlvbiBjYW4gYmUgY2hhbmdlZCBpbiB0aGUgcHJlZmVyZW5jZXMgdGFiKS4gIFNvIGlmIHVzaW5nIHRoaXMgb3B0aW9uIHlvdSB3aWxsIG5vdCBuZWVkIHRvIGNyZWF0ZSBhbiBlbWFpbCBhZGRyZXNzIHByb3BlcnR5LjwvcD4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3UgbXVzdCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZS9lbWFpbCBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFwmIzAzOTtOZXh0XCYjMDM5OzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlNtYXJ0eSBGdW5jdGlvbnM8L2gzPg0KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4NCjxoND5GdW5jdGlvbnM6PC9oND4NCjx1bD4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC4gIFRoZSBvdXRwdXQgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmYW1wO3F1b3Q7YXNzaWduJmFtcDtxdW90OyBwYXJhbWV0ZXIuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJiMwMzk7bWVtYmVycyYjMDM5OywmIzAzOTtteW1lbWJlcnMmIzAzOTspfTxici8+eyRteW1lbWJlcnN8QHByaW50X3J9PC9jb2RlPjwvcD4NCjwvbGk+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGEgbGlzdCBvZiBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgYW5kIGFzc2lnbiB0aGVtIHRvIGEgc21hcnR5IHZhcmlhYmxlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcl9wcm9wZXJ0aWVzKDUsJiMwMzk7dXNlcnByb3BzJiMwMzk7KX08YnIvPnskdXNlcnByb3BzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KDQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZVssJGFzc2lnbl0pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgc21hcnR5IGZ1bmN0aW9uIHJldHVybnMgdGhlIHRleHQgc3BlY2lmaWVkIGZvciBhIHBhcnRpY3VsYXIgb3B0aW9uIHZhbHVlIGZvciBhIHNwZWNpZmllZCBkcm9wZG93biBwcm9wZXJ0eS48L2xpPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF9kcm9wZG93bl90ZXh0KCYjMDM5O2FnZV9yYW5nZSYjMDM5Oywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBzbWFydHkgZnVuY3Rpb24gcmV0dXJucyBhbiBhcnJheSBvZiBvcHRpb24gdGV4dHMgY29ycmVzcG9uZGluZyB0byBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbiB2YWx1ZXMuPC9saT4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfbXVsdGlzZWxlY3RfdGV4dCgmIzAzOTtmYXZvcml0ZV9mb29kcyYjMDM5Oywkb25lcHJvcHZhbHVlLCYjMDM5O2Zhdm9yaXRlX2Zvb2RzJiMwMzk7KX08YnIvPnskZmF2b3JpdGVfZm9vZHN8QHByaW50X3J9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPmNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfZXhwaXJ5KCR1aWRbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBtZXRob2QgcmV0dXJucyB0aGUgdW5peCB0aW1lc3RhbXAgdGhhdCB0aGUgc3BlY2lmaWVkIHVpZCBhY2NvdW50IGV4cGlyZXMuICBUaGUgZnVuY3Rpb24gd2lsbCByZXR1cm4gZmFsc2UgaWYgdGhlIHVpZCBjYW5ub3QgYmUgZm91bmQgb3Igc29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfZXhwaXJ5KDI1LCYjMDM5O2V4cGlyeSYjMDM5Oyl9PGJyLz57JGV4cGlyeXxjbXNfZGF0ZV9mb3JtYXR9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPmNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7dXNlcl9leHBpcmVkKCR1aWRbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBtZXRob2QgcmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3ZXRoZXIgdGhlIHNwZWNpZmllZCB1c2VyIGFjY291bnQgaGFzIGV4cGlyZWQuICBUaGUgbWV0aG9kIHdpbGwgYWxzbyByZXR1cm4gZmFsc2UgaWYgdGhlIHVpZCBjYW5ub3QgYmUgZm91bmQgb3Igc29tZSBvdGhlciBlcnJvciBvY2N1cnJlZC48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7dXNlcl9leHBpcmVkKDI1LCYjMDM5O2V4cGlyZWQmIzAzOTspfTxici8+e2lmICRleHBpcmVkfVVJRCAyNSBjYW4gbm8gbG9uZ2VyIGxvZ2luIHRvIHRoZSBzeXN0ZW17L2lmfTwvY29kZT48L3A+DQo8L2xpPg0KPC91bD4NCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9jYWxndXkxMDAwLmNvbSI+Y2FsZ3V5MTAwMC5jb208L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSZxdW90O2RlZmF1bHQmcXVvdDs8bGk+DQo8cD5BY3Rpb25zOg0KPHVsPg0KPGxpPjxlbT5kZWZhdWx0PC9lbT4gLSBUaGUgZGVmYXVsdCBhY3Rpb24sIHdoaWNoIGVuYWJsZXMgdGhlIG5vcm1hbCBmb3JtPSBiZWhhdmlvdXIuPC9saT4NCjxsaT48ZW0+cmVzZXRfc2Vzc2lvbjwvZW0+IC0gUHJvdmlkZSBhIGphdmFzY3JpcHQgY29udHJvbGxlZCB0ZW1wbGF0ZSB0byBhbGxvdyB0aGUgbWFudWFsLCBvciBhdXRvbWF0aWMgcGluZ2luZyBvZiB0aGUgdXNlciBzZXNzaW9uLiAgVGhpcyB0ZW1wbGF0ZSBjYW4gYmUgdXNlZCB0byByZW1pbmQgdGhlIHVzZXIgdGhhdCBoaXMgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIGFuZCB0byB0cmlnZ2VyIGl0cyByZXNldC4gIE5vcm1hbGx5IHRoaXMgbWV0aG9kIGlzIG5vdCByZXF1aXJlZCBhcyBhbnkgcGFnZSB0aGF0IGRpc3BsYXlzIHRoZSBGcm9udEVuZFVzZXIgY29udHJvbHMgd291bGQgaGFuZGxlIHRoaXMsIGp1c3QgcmVxdWlyaW5nIHRoZSB1c2VyIHRvIHZpZXcgYSBwYWdlIG9uIGEgcmVndWxhciBiYXNpcy4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBwYWdlcyB3aXRoIGFsb3Qgb2YgY29udGVudCByZXF1aXJpbmcgZXh0ZW5zaXZlIHJlYWRpbmcsIHRoaXMgbWF5IGJlIGEgdXNlZnVsIHNvbHV0aW9uLjwvbGk+DQo8bGk+PGVtPnZpZXd1c2VyPC9lbT4gLSBEaXNwbGF5IGEgcmVwb3J0IGZvciBhIHNpbmdsZSB1c2VyLCByZXF1aXJlcyB1c2Ugb2YgdGhlIHVpZCBwYXJhbWV0ZXIuPC9saT4NCjwvdWw+DQo8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXM6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4NCiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0uPC9saT4NCjxsaT48ZW0+c2lsZW50PC9lbT4gPSBEaXNwbGF5IG5vdGhpbmcsIGJ1dCBleHBvcnQgcHJvcGVydGllcyBhbmQgb3RoZXIgc21hcnR5IHZhcmlhYmxlcyBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4gIElmIG5vIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGVuIG5vIHZhcmlhYmxlcyBhcmUgZXhwb3J0ZWQuPC9saT4NCjwvdWw+DQo8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXR1cm50bz0mcXVvdDtwYWdlJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4sIGxvZ291dCwgYW5kIGNoYW5nZXNldHRpbmdzIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBjb250YWlucyB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8sIHdoZW4gdGhlIGZvcm0gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZDwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSZxdW90O2dyb3VwMSwgZ3JvdXAyLCBncm91cDMmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gIEJhc2ljYWxseSBvbmx5IGFsbG93cyB1c2VycyB0byBsb2dpbiBpZiB0aGV5IGJlbG9uZyB0byB0aGF0IHBhcnRpY3VsYXIgZ3JvdXAocykuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9zdHVuX2dyb3VwPSZxdW90O2dyb3VwJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9zdHVzZXJuYW1lIGZvcm0sIHRoaXMgZmVhdHVyZSBzcGVjaWZpZXMgdGhlIGZyb250ZW5kIHVzZXIgZ3JvdXAgdG8gYXNzdW1lIHRodCB1c2VycyBhcmUgbWVtYmVycyBvZi48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9JnF1b3Q7MSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiBoaXMgd2lsbCBkaXNuYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1aWQ9bnVsbDwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIHZpZXd1c2VyIGFjdGlvbi4gIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIHRvIHNwZWNpZnkgd2hpY2ggdXNlciB0byB2aWV3IHRoZSBkZXRhaWxzIG9mLjwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQgYW5kIHByb3Blcmx5IGNvbmZpZ3VyZWQuPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmFtcDtjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+JmFtcDtsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmFtcDtndDs8L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4NCjxoMz5TcG9uc29yczwvaDM+DQo8cD5UaGVyZSBoYXZlIGJlZW4gbWFueSBzcG9uc29ycyBmb3IgdGhpcyBtb2R1bGUsIHNvbWUgb2YgdGhlc2UgYXJlIGxpc3RlZCBiZWxvdzo8L3A+DQo8dWwuPg0KIDxsaT48YSBocmVmPSJodHRwOi8vd3d3Lm1hdHRlcmhvcm5tYXJrZXRpbmcuY29tIj5NYXR0ZXJob3JuIE1hcmtldGluZzwvYT48L2xpPg0KIDxsaT48YSBocmVmPSJodHRwOi8vd3d3LmJwdGkuZXUiPkJhbGthbiBJbnN0aXR1dGUgb2YgQWR2YW5jZWQgVGVjaG5vbG9neTwvYT48L2xpPg0KPC91bD4nOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjc5OTIyMjgyLjMwMzkuNzAudXRtY3NyPWZvcnVtLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2luZGV4LnBocCc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE3OTA1MjYyMzA4NDExMDEwMC4xMjEwNDIzNTc3LjEyODA1MjgyNzQuMTI4MDU3ODMwMC4zMDc4JzsKJGxhbmdbJ3FjYSddID0gJzEyMTA5NzE2OTAtMjczMDgwNzMtODE5NTI4MzInOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4yLjEwLjEyODA1NzgzMDAnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0RlIHZvbGdlbmRlIGluc3RlbGxpbmdlbiBnZWxkZW4gYWxsZWVuIGJpaiBnZWJydWlrIHZhbiB6ZWxmcmVnaXN0cmF0aWUgZW4gYmV0YWFsZGUgcmVnaXN0cmF0aWUnOwokbGFuZ1snbm9uZSddID0gJ0dlZW4nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdWZXJ3aWpkZXIgZ2VicnVpa2VyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnVmVybG9vcCBnZWJydWlrZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGllIG9tIHVpdCB0ZSB2b2VyZW4gd2FubmVlciBlZW4gaW5zY2hyaWp2aW5nIHdvcmR0IGdlYW5udWxlZXJkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aWUgb20gdWl0IHRlIHZvZXJlbiB3YW5uZWVyIGVlbiBpbnNjaHJpanZpbmcgd29yZHQgdmVyd2lqZGVyZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFLWNvbW1lcmNlIEluc3RlbGxpbmdlbic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcmtlciBiZXZlaWxpZ2QgdmVsZCc7CiRsYW5nWydzZWN1cmVmaWVsZGNvbG9yJ10gPSAnS2xldXIgYmV2ZWlsaWdkIHZlbGQnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTbGEgZGV6ZSBnZWdldmVucyB2ZXJzbGV1dGVsZCBvcCBpbiBkZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdEZSBnZWtvemVuIG9wdGllIHdvcmR0IG5pZXQgb25kZXJzdGV1bmQgbWV0IGRlIGh1aWRpZ2UgY29uZmlndXJhdGllJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ0dlYnJ1aWtlciBhdXRvbWF0aXNjaCBnZW5lcmVyZW4nOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnSW5kaWVuIGVlbiBnZWJydWlrZXIgaXMgZ2VhdXRoZW50aWNlZXJkIGRvb3IgZWVuIGV4dGVybmUgYXV0aGVuY2F0aWUgbW9kdWxlLCBtYWFyIGRlemUgZ2VicnVpa2VycyBpcyBuaWV0IGJla2VuZCBpbiBkZSBGcm9uZEVuZFVzZXJzIG1vZHVsZSwgbW9ldCBlciBkYW4gZWVuIEZFVSBhY2NvdW50IGF1dG9tYXRpc2NoIHdvcmRlbiBhYW5nZW1hYWt0Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpc2NoIE9uYmVrZW5kZSBHZWJydWlrZXJzIEdlbmVyZXJlbic7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuIHdlZXJnZXZlbic7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnRGUgdm9sZ2VuZGUgaW5zdGVsbGluZ2VuIHppam4gYWxsZWVuIHZhbiB0b2VwYXNzaW5nIGFscyB1IGdlYnJ1aWsgbWFha3QgdmFuIGRlICZhbXA7cXVvdDtJbmdlYm91d2RlIEF1dGhlbmNhdGllJmFtcDtxdW90Ow0KJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdOZWUgc2VsZWN0ZXJlbiB6b3JndCBlcnZvb3IgZGF0IGRlIGdlYnJ1aWtlciB2ZXJnZXRlbiBsb2dpbiBpbmZvcm1hdGllIG5pZXQga2FuIG9wdnJhZ2VuLCBvbmdlYWNodCBhbmRlcmUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdOZWUgc2VsZWN0ZXJlbiB6b3JndCBlcnZvb3IgZGF0IGRlIGdlYnJ1aWtlciBoZXQgd2FjaHR3b29yZCBvcG5pZXV3IGthbiBpbnN0ZWxsZW4sIG9uZ2VhY2h0IGFuZGVyZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnU3RhIGdlYnJ1aWtlcnMgdG9lIGh1biBnZWJydWlrZXJzbmFhbSBvcCB0ZSB2cmFnZW4nOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnU3RhIGdlYnJ1aWtlcnMgdG9lIGh1biB3YWNodHdvb3JkIG9wIHRlIHZyYWdlbic7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpZSBJbnN0ZWxsaW5nZW4nOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdJbmdlYm91d2RlIEF1dGhlbnRpY2F0aWUnOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnRkVVIFN0YW5kYWFyZCBBdXRoZW50aWNhdGllJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnQXV0aGVudGljYXRpZSBNb2R1bGUvTWV0aG9kZSc7CiRsYW5nWydpbmZvX2F1dGhfbW9kdWxlJ10gPSAnVGhlIEZyb250ZW5kVXNlcnMgbW9kdWxlIHN1cHBvcnRzIHVzaW5nIGFsdGVybmF0ZSBhdXRoZW50aWNhdGlvbiBtZXRob2RzLCB3aXRoIHZhcnlpbmcgY2FwYWJpbGl0aWVzLiAgU29tZSBmdW5jdGlvbmFsaXR5IHdpbGwgbm90IGZ1bmN0aW9uIG9yIGJlIGRpc2FibGVkIHdoZW4gbm90IHVzaW5nIHRoZSBidWlsdCBpbiBhdXRoZW50aWNhdGlvbiBtZXRob2QgJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGUgaW5nZXZvZXJkZSB3YWFyZGUgdm9vciAlcyBpcyBhbCBpbiBnZWJydWlrIGRvb3IgZWVuIGFuZGVyZSBnZWJydWlrZXInOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pZWsnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGUgaW5nZXZvZXJkZSB3YWFyZGUgdm9vciAlcyAoJXMpIGlzIG5pZXQgdW5pZWsnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ1ZlcmVpcyBkYXQgZGUgd2FhcmRlbiB2b29yIGRpdCB2ZWxkIHVuaWVrIHppam4gdm9vciBhbGxlIGFhbndlemlnZSBnZWJydWlrZXJzJzsKJGxhbmdbJ2hlbHBfcmV0dXJubGFzdCddID0gJ1VzZWQgd2l0aCB0aGUgbG9naW4gYW5kIGxvZ291dCBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgaWYgc3BlY2lmaWVkIHdpbGwgaW5kaWNhdGUgdGhhdCB0aGUgdXNlciBzaG91bGQgYmUgcmV0dXJuZWQgdG8gdGhlIHBhZ2UgKGJ5IHVybCkgdGhhdCB0aGUgdXNlciB3YXMgdmlld2luZyBiZWZvcmUgdGhlIGFjdGlvbiBvY2N1cnJlZC4gIFRoaXMgcGFyYW1ldGVyIHdpbGwgb3ZlcnJpZGUgdGhlIHJlZGlyZWN0IHByZWZlcmVuY2VzLCBhbmQgdGhlIHJldHVybnRvIHBhcmFtZXRlci4gJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdHZWJydWlrdCBtZXQgJmVhY3V0ZTsmZWFjdXRlO24gdmFuIGRlIGZvcm11bGllcmVuLCBkZXplIHBhcmFtZXRlciBzcGVjaWZpY2VlcnQgZGF0IGRpdCBmb3JtdWxpZXIgbmlldCBpbmxpbmUgZ2VicnVpa3Qga2FuIHdvcmRlbiwgaW4gcGxhYXRzIGRhYXJ2YW4gemFsIGRlIG91dHB1dCBuYSBoZXQgdmVyc3R1cmVuIHZhbiBoZXQgZm9ybXVsaWVyIHdvcmRlbiB2ZXJ2YW5nZW4gZG9vciBkZSBzdGFuZGFhcmQgSFRNTC1ibG9rJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaWUgVmVybG9vcCBXYWFyc2NodXdpbmcnOwokbGFuZ1snbXNnX3Jlc2V0X3Nlc3Npb24nXSA9ICdVdyBsb2dpbiBzZXNzaWUgaXMgYmlqbmEgdmVybG9wZW4sIGtsaWsgb3AgJiMwMzk7T2smZWFjdXRlOyYjMDM5OyBvbSBkZXplIHRlIHZlcmxlbmdlbi4nOwokbGFuZ1snb2snXSA9ICdPayZlYWN1dGU7JzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3NpZSBTamFibG9vbic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEaXQgaXMgZGUgdmVsZG5hYW0sIGRpZSBrYW4gd29yZGVuIGdlYnJ1aWt0IHZvb3IgaGV0IGFkcmVzc2VyZW4gaW4gc21hcnR5LiAgSGV0IG1hZyBhbGxlZW4gYmVzdGFhbiB1aXQgYWxwaGFudW1lcmlla2Uga2FyYWt0ZXJzIGVuIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXpvZWtlcnMnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3RlZXIgJmVhY3V0ZTsmZWFjdXRlO24gb2YgbWVlcmRlcmUgRkVVIGdyb2VwZW4gZGllIGRlemUgcGFnaW5hIG1vZ2VuIGJla2lqa2VuJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFciBtb2V0IGVlbiBncm9lcCB3b3JkZW4gZ2VzZWxlY3RlZXJkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ0tpZXMgJmVhY3V0ZTsmZWFjdXRlO24nOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IEphYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFaW5kIEphYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ01pbmlhdHV1ciBncm9vdHRlJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdHZWJydWlrZXJzZ3JvZXAgZ2V3aWp6aWdkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ0VyIHppam4gdGUgdmVlbCBnZWJydWlrZXJzIGdlc2VsZWN0ZWVyZCB2b29yIGJ1bGsgYWN0aWVzLi4uLiBWZXJtaW5kZXIgZGV6ZSB0b3QgMjUwIHN0dWtzIG9mIG1pbmRlcic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZSBnZXNlbGVjdGVlcmRlIGdlYnJ1aWtlcnMgd2lsdCB2ZXJ3aWpkZXJlbj8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnU2VsZWN0aWUgdmVyd2lqZGVyZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmVlciBlZW4gd2lsbGVrZXVyaWdlIGdlYnJ1aWtlcnNuYWFtIHZvb3IgbmlldXdlIGdlYnJ1aWtlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbWFhbmRlbic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnU3RhbmRhYXJkIGdlYnJ1aWtlciB2ZXJsb29wcGVyaW9kZSc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpZSBJbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdFaWdlbnNjaGFwIEluc3RlbGxpbmdlbic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ0Rvb3JzdHV1ciBJbnN0ZWxsaW5nZW4nOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FsZ2VtZW5lIGluc3RlbGxpbmdlbic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBlbiBDb29raWUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnVmVsZCBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnRGUgdmVybG9yZW4tZ2VicnVpa2Vyc25hYW0gdmVyd2lqemluZyBrYW4gYWxsZWVuIHdvcmRlbiBnZWJydWlrdCBvcCB2ZXJwbGljaHRlIHZlbGRlbic7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdTdGEgJiMwMzk7d3lzaXd5ZyYjMDM5OyB0b2UgaW4gZGUgdGVrc3RydWltdGUnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+T3BtZXJraW5nOiA8L3N0cm9uZz4gRGl0IG1hYWt0IGdlYnJ1aWsgdmFuIG1jcnlwdCBmdW5jdGllcyB2b29yIGVuY3J5cHRpZSBkb2VsZWluZGVuLCBlbiBkZXplIHppam4gbmlldCBvcCB1dyBzZXJ2ZXIgZ2VkZXRlY3RlZXJkLiBOZWVtIGhpZXJ2b29yIGNvbnRhY3Qgb3AgbWV0IHV3IHdlYnNpdGVwcm92aWRlci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnV2lqemlnZW4gZ2VicnVpa2VyJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnR2VicnVpayBnZWVuICZxdW90O2lubGluZSZxdW90OyBmb3JtdWxpZXJlbic7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0tsaWsgaGllciB3YW5uZWVyIGplIGplIGxvZ2luZ2VnZXZlbnMgbmlldCBtZWVyIHdlZXQnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWsgaGllciB3YW5uZWVyIGplIGplIHdhY2h0d29vcmQgbmlldCBtZWVyIHdlZXQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdLbGlrIGhpZXIgb20gdWl0IHRlIGxvZ2dlbic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpayBoaWVyIG9tIGplIHdhY2h0d29vcmQgb2YgYW5kZXJlIGluZm9ybWF0aWUgdGUgd2lqemlnZW4gJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnQmVraWprIGdlYnJ1aWtlcnNzamFibG9vbic7CiRsYW5nWydldmVudCddID0gJ0dlYmV1cnRlbmlzJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUtZ2ViZXVydGVuaXNtZWxkaW5nJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0UtbWFpbGFkcmVzIHZvb3IgbWVsZGluZ2VuJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdFLW1haWxzamFibG9vbiB2b29yIG1lbGRpbmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdFLW1haWxvbmRlcndlcnAgdm9vciBtZWxkaW5nZW4nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFLW1haWxtZWxkaW5nZW4nOwokbGFuZ1snT25Mb2dpbiddID0gJ0JpaiBsb2dpbic7CiRsYW5nWydPbkxvZ291dCddID0gJ0JpaiBsb2dvdXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQmlqIHNlc3NpZXZlcmxvb3AnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQmlqIG5pZXV3ZSBnZWJydWlrZXIgYWFuZ2VtYWFrdCc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdCaWogZ2VicnVpa2VyIHZlcndpamRlcmQnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnQmlqIGdlYnJ1aWtlcnNpbnN0ZWxsaW5nZW4gdmVyYW5kZXJkJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdCaWogZ2VicnVpa2Vyc2dyb2VwIGFhbmdlbWFha3QnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0JpaiBnZWJydWlrZXJzZ3JvZXAgdmVyd2lqZGVyZCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0RlIGZ1bmN0aW9uYWxpdGVpdCB2YW4gdmVybG9yZW4tbG9naW4tZ2VnZXZlbnMgaXMgYWZnZXJvbmQuIEVyIGlzIGVlbiB1bmlla2UgZ2VicnVpa2Vyc25hYW0gZ2V2b25kZW4gZGllIG92ZXJlZW5rb210IG1ldCBkZSBnZWdldmVucyBkaWUgdSBoZWVmdCBpbmdldm9lcmQuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdVdyBnZWJydWlrZXJzbmFhbSBpcyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdXZSBhZHZpc2VyZW4gZGV6ZSBpbmZvcm1hdGllIG9wIGVlbiB2ZWlsaWdlLCBtYWFyIHZpbmRiYXJlIHBsYWF0cyB0ZSBiZXdhcmVuLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnaW5hSUQvLWFsaWFzIGRpZSBnZW9wZW5kIHdvcmR0IG5hIGhldCB3aWp6aWdlbiB2YW4gZGUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2luYUlELy1hbGlhcyBvbSB0ZSB0b25lbiBuYSBjb2RldmVyaWZpY2F0aWUgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ1NqYWJsb29uIHZvb3IgdmVybG9yZW4gZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdTamFibG9vbiB2b29yIGJldmVzdGlnaW5nIHZlcmxvcmVuIGdlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRm91dDogbWVlciBkYW4gJmVhY3V0ZTsmZWFjdXRlO24gZ2VicnVpa2Vyc2FjY291bnQga3dhbSBvdmVyZWVuIG1ldCBkZSBnZXNwZWNpZmljZWVyZGUgZWlnZW5zY2hhcHBlbic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdGb3V0OiBrYW4gZ2VlbiBvdmVyZWVua29tc3RpZ2UgZ2VicnVpa2VyIHZpbmRlbic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRm91dDoga2FuIGdlZW4gZ3JvZXAgbWV0IGRpZSBuYWFtIHZpbmRlbic7CiRsYW5nWydyZWFkb25seSddID0gJ0FsbGVlbiBsZXplbic7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnR2VicnVpa2Vyc21hbmlwdWxlZXJrbGFzc2UnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnVWl0Z2Vsb2dkIGRvb3IgYmVoZWVyZGVyJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdBbGxlZW4gaW5nZWxvZ2RlIGdlYnJ1aWtlcnMgdG9uZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0xvZyBkZXplIGdlYnJ1aWtlciB1aXQnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnR2VicnVpa2Vyc2VpZ2Vuc2NoYXBwZW4nOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdHZWJydWlrZXJzZ2VzY2hpZWRlbmlzJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0V4cG9ydGVlcic7CiRsYW5nWydjbGVhciddID0gJ1dpcyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdHZWJydWlrZXJzZ2VzY2hpZWRlbmlzIG5hYXIgQVNDSUkgZXhwb3J0ZXJlbiB2YW4gbWluc3RlbnMnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdHZWJydWlrZXJzZ2VzY2hpZWRlbmlzIHdpc3NlbiB2YW4gbWluc3RlbnMnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnRm9ybXVsaWVyIFZlcmxvcmVuZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnR3JvZXBkZWZpbml0aWVzIChlbiBlaWdlbnNjaGFwcGVuKSBuYWFyIFhNTCBleHBvcnRlcmVuJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdPbmRlcmhvdWQgZ2VicnVpa2Vyc2dlc2NoaWVkZW5pcyc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05lZSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdWYW4nOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogT25iZWdyZW5zZCAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFJmVhY3V0ZTtuIHV1ciBvdWQnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnWmVzIHV1ciBvdWQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVHdhYWxmIHV1ciBvdWQnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdFJmVhY3V0ZTtuIGRhZyBvdWQnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRSZlYWN1dGU7biB3ZWVrIG91ZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdlZSB3ZWtlbiBvdWQnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0UmZWFjdXRlO24gbWFhbmQgb3VkJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdEcmllIG1hYW5kZW4gb3VkJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnWmVzIG1hYW5kZW4gb3VkJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0UmZWFjdXRlO24gamFhciBvdWQnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3JvZXBlcmVuIGVuIHNvcnRlcmVuJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdSZWNvcmRzIGRpZSB2b2xkb2VuIGFhbiBkZSBjcml0ZXJpYSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0FmbG9wZW5kZSBnZWJydWlrZXJzbmFhbSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnT3Bsb3BlbmRlIGdlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdBZmxvcGVuZGUgZGF0dW0nOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnT3Bsb3BlbmRlIGRhdHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ0FmbG9wZW5kZSBnZWJldXJ0ZW5pc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdPcGxvcGVuZGUgZ2ViZXVydGVuaXN0eXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0FmbG9wZW5kIElQLWFkcmVzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnT3Bsb3BlbmQgSVAtYWRyZXMnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0dlZW4gZ2VzY2hpZWRlbmlzIGdldm9uZGVuJzsKJGxhbmdbJ3Jlc2V0J10gPSAnSGVyc3RlbCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdPcCBJUC1hZHJlcyBncm9lcGVyZW4nOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdHZWJldXJ0ZW5pc3R5cGVmaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnQWxsZWVuIGdlYmV1cnRlbmlzc2VuIHRvbmVuIGRpZSBtaW5kZXIgemlqbiBkYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdpbmFsaW1pZXQnOwokbGFuZ1snZm9yJ10gPSAndm9vcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1JhcHBvcnQgZ2VicnVpa2Vyc2dlc2NoaWVkZW5pcyc7CiRsYW5nWyd1bmtub3duJ10gPSAnT25iZWtlbmQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQLWFkcmVzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdHZWJldXJ0ZW5pc3R5cGUnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGVydWcnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydGVyZW4gZ2VzbGFhZ2QnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnUmVnZWxzIHZlcndlcmt0JzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdGb3V0ZW4gb3BnZXRyZWRlbic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyB0b2VnZXZvZWdkJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLYW4gZGUgZWlnZW5zY2hhcHBlbiB2YW4gZ3JvZXAgJXMgbmlldCB2aW5kZW4nOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdLcmVlZyBnZWVuIHJlYWN0aWUgdmFuIGRlIFNNVFAtc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ09wZ2VnZXZlbiBiZXN0YW5kICglcykgaXMgbmlldCBnZXZvbmRlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnT25nZWxkaWdlIHdhYXJkZSB2b29yIGtldXplbGlqc3QtIG9mIG1lZXJzZWxlY3RpZXZlbGQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdWZWxkICVzIG92ZXJzY2hyaWpkdCBtYXhpbXVtIGxlbmd0ZSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVlcmZvdXQgKHJlZ2VsICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0RlIGVpZ2Vuc2NoYXBzZGVmaW5pdGllcyBuaWV0IGdldm9uZGVuIChpbnRlcm5lIGZvdXQpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZWVtIGJpaiBpbnN0ZWxsZW4gZ2VicnVpa2Vyc2luZm9ybWF0aWUnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0dlZW4ga29sb20gZ2V2b25kZW4gZGllIG92ZXJlZW5rb210IG1ldCB2ZXJwbGljaHQgdmVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0dlZW4gZWlnZW5zY2hhcCBnZXZvbmRlbiB2b29yIG9wZ2VnZXZlbiBncm9lcCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnSGV0IGltcG9ydGJlc3RhbmQgaGVlZnQgbmlldCBoZXQgZ29lZGUgZm9ybWFhdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnS2FuIGhldCBiZXN0YW5kIG5pZXQgb3Blbic7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YSA8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJpZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSB1c2VyaWQgZm9yIHRoZSB1c2VyLiBBIHZhbHVlIGluIHRoaXMgZmllbGQgd2lsbCBpbmRpY2F0ZSB5b3UgYXJlIGRvaW5nIGFuIHVwZGF0ZS48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUaGUgcGFzc3dvcmQgdG8gc2V0IGZvciB0aGUgdXNlcjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+Y3JlYXRlZGF0ZTwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSB0b2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5ncm91cG5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZ3JvdXBzIHRoYXQgeW91IHdhbnQgdG8gaGF2ZSB0aGUgdXNlciBiZSBhIG1lbWJlciBvZi4gSWYgYWxsIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IGZpbGxlZCBpbiB0aGUgaW5zZXJ0L3VwZGF0ZSBvZiB0aGUgcmVjb3JkIHdpbGwgZmFpbC4gU2VlIE11bHRpc2VsZWN0IEZpZWxkcyBiZWxvdyBmb3Igc3ludGF4LjwvbGk+DQo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+RGF0ZSBGaWVsZHMNCiAgICA8cD5NdXN0IGJlIGluIHRoZSBmb3JtYXQgb2YgTU0tREQtWVlZWTwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+PC9saT4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxwPlRoZSBFeHBvcnQgZGF0YSBpcyBpbiB0aGUgc2FtZSBmb3JtYXQgYXMgbmVlZGVkIGZvciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+DQonOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0dlYnJ1aWtlcnMgaW4gZGV6ZSBncm9lcCBpbXBvcnRlcmVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0ludm9lciBDU1YtYmVzdGFuZCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0ludm9lciBYTUwtYmVzdGFuZCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdHZWJydWlrZXJzIGV4cG9ydGVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnR2VicnVpa2VycyBpbXBvcnRlcmVuJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1dpc3Nlbic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1BhZCBhZmJlZWxkaW5nZW5iZXN0ZW1taW5nJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnRXIgaXMgZWVuIHByb2JsZWVtIG9wZ2V0cmVkZW4gbWV0IGVlbiBvbnRicmVrZW5kZSwgbWFhciB2ZXJwbGljaHRlIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnSGV0IG9wZ2VnZXZlbiBYTUwtYmVzdGFuZCBrYW4gbmlldCB3b3JkZW4gdmVyd2Vya3QgJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdLYW4gZ2VlbiBncm9lcCB2ZXJ3aWpkZXJlbiBkaWUgbm9nIGdlYnJ1aWtlcnMgYmV2YXQnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0RlemUgZ2VicnVpa2VyIGlzIHJlZWRzIGluZ2Vsb2dkJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0RlIHRla3N0IHZhbiBkZSBhZmJlZWxkaW5nIGlzIG5pZXQganVpc3QgaW5nZXZvZXJkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdTdGEgdG9lIGRhdCBnZWJydWlrZXJzIG1lZXJkZXJlIGtlcmVuIGlubG9nZ2VuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdFeHRlbnRpZXMgdmFuIGFmYmVlbGRpbmdzYmVzdGFuZGVuIGRpZSBnZWJydWlrZXJzIG1vZ2VuIHVwbG9hZGVuJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk5hIHZlcndpamRlcmVuIGdlYnJ1aWtlcjxoMz4NCjxwPkVlbiBnZWJldXJ0ZW5pcywgZ2VnZW5lcmVlcmQgYWxzIGVlbiBnZWJydWlrZXIgdmVyd2lqZGVyZCBpczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIERlIGdlYnJ1aWtlcnNuYWFtPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIERlIGdlYnJ1aWtlcnMgaWQ8L2xpPg0KPGxpPjxlbT5wcm9wczwvZW0+IC0gQSBoYXNoIGZpbGxlZCB3aXRoIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSB1c2VyPC9saT4NCg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+TmEgYWFubWFrZW4gZ2VicnVpa2VyPGgzPg0KPHA+RWVuIGdlYmV1cnRlbmlzLCBnZWdlbmVyZWVyZCBhbHMgZWVuIGdlYnJ1aWtlciBhYW5nZW1hYWt0IGlzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gRGUgZ2VicnVpa2Vyc25hYW08L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRGUgZ2VicnVpa2VycyBpZDwvbGk+DQo8L3VsPiANCg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk5hIHdpanppZ2VuIGdlYnJ1aWtlcjxoMz4NCjxwPkVlbiBnZWJldXJ0ZW5pcyBkaWUgd29yZHQgZ2VnZW5lcmVlcmQgYWxzIGVlbiBnZWJydWlrZXIgaXMgZ2V3aWp6aWdkIChkb29yIGRlIGdlYnJ1aWtlciB6ZWxmIG9mIGRvb3IgZGUgYmVoZWVyZGVyKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRGUgZ2VicnVpa2Vyc25hYW08L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRGUgZ2VicnVpa2Vyc2lkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5OYSBhYW5tYWtlbiBncm9lcDxoMz4NCjxwPkVlbiBnZWJldXJ0ZW5pcywgZ2VnZW5lcmVlcmQgYWxzIGVlbiBncm9lcCBpcyBhYW5nZW1hYWt0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBEZSBncm9lcHNuYWFtPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIERlIGdyb2Vwc29tc2NocmlqdmluZzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBEZSBncm9lcHMgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk5hIHZlcndpamRlcmVuIGdyb2VwPGgzPg0KPHA+RWVuIGdlYmV1cnRlbmlzLCBnZWdlbmVyZWVyZCBhbHMgZWVuIGdyb2VwIGlzIHZlcndpamRlcmQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIERlIGdyb2Vwc25hYW08L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRGUgZ3JvZXBzIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5OYSBpbmxvZ2dlbjxoMz4NCjxwPkVlbiBnZWJldXJ0ZW5pcywgZ2VnZW5lcmVlcmQgYWxzIGVlbiBnZWJydWlrZXIgaW5sb2dkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gSGV0IGlkIHZhbiBkZSBhYW5nZW1lbGRlIGdlYnJ1aWtlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBEZSBuYWFtIHZhbiBkZSBpbmdlbG9nZGUgZ2VicnVpa2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIEhldCBpcC1hZHJlcyB2YW4gZGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkVlbiBnZWJldXJ0ZW5pcywgZ2VnZW5lcmVlcmQgYWxzIGVlbiBnZWJydWlrZXIgdWl0bG9nZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIERlIG5hYW0gdmFuIGRlIHVpdGdlbG9nZGUgZ2VicnVpa2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIERlIGdlYnJ1aWtlcnMgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkVlbiBnZWJldXJ0ZW5pcywgZ2VnZW5lcmVlcmQgYWxzIGVlbiBnZWJydWlrZXJzc2Vzc2llIHZlcmxvb3B0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gRGUgbmFhbSB2YW4gZGUgdmVybG9wZW4gZ2VicnVpa2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIERlIGlkIHZhbiBkZSB2ZXJsb3BlbiBnZWJydWlrZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZWVuIGdlYnJ1aWtlciBpbmxvZ3QnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gZ2VicnVpa2VyIHVpdGxvZ3QnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZGUgc2Vzc2lldGlqZCB2YW4gZWVuIGdlYnJ1aWtlciBpcyB2ZXJzdHJla2VuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBuaWV1d2UgZ2VicnVpa2VyIGlzIGFhbmdlbWFha3QnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdFZW4gdGFnIGRpZSB3b3JkdCBhYW5nZXJvZXBlbiBhbHMgZ2VicnVpa2Vyc2luZm9ybWF0aWUgaXMgZ2V3aWp6aWdkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBnZWJydWlrZXJzYWNjb3VudCBpcyB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gZ2VicnVpa2Vyc2dyb2VwIGlzIGFhbmdlbWFha3QnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnRWVuIHRhZyBkaWUgd29yZHQgYWFuZ2Vyb2VwZW4gYWxzIGVlbiBnZWJydWlrZXJzZ3JvZXAgaXMgZ2V3aWp6aWdkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0VlbiB0YWcgZGllIHdvcmR0IGFhbmdlcm9lcGVuIGFscyBlZW4gZ2VicnVpa2Vyc2dyb2VwIGlzIHZlcndpamRlcmQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgZ3JvZXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBEZSB2b2xnZW5kZSBtYWNybyYjMDM5O3Mga3VubmVuIGluIGRlemUgdmVsZGVuIHdvcmRlbiBnZWJydWlrdDogeyR1c2VybmFtZX0seyRncm91cH0uIEFscyBkZSB7JGdyb3VwfSBtYWNybyB3b3JkdCBnZWJydWlrdCwgemFsIGhldCBzeXN0ZWVtIGRlIG5hYW0gdmFuIGRlIGVlcnN0IGdyb2VwIHdhYXJ0b2UgZGUgZ2VicnVpa2VyIGJlaG9vcnQgdmVydmFuZ2VuIGVuIHZlcndpanplbiBuYWFyIGRpZSBwYWdpbmEuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdEaXQgdmVsZCB3aWp6aWdlbiBvbSBoZXQgd2FjaHR3b29yZCB0ZSBoZXJzdGVsbGVuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdEaXQgdmVsZCB3aWp6aWdlbiBvbSBoZXQgd2FjaHR3b29yZCB0ZSBoZXJzdGVsbGVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0RlemUgZ2VicnVpa2Vyc25hYW0gYmVzdGFhdCBhbCc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdDU1YtZXhwb3J0IGxldmVyZGUgZ2VlbiB3YWFyZGVuIG9wJzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0ZSB2YW4gaGV0IGdlYnJ1aWtlcnNuYWFtdmVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGUgdmFuIGhldCB3YWNodHdvb3JkdmVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL21heCB3YWNodHdvb3JkbGVuZ3RlIG9uZ2VsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vbWF4IGdlYnJ1aWtlcnNuYWFtbGVuZ3RlIG9uZ2VsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdFLW1haWxhZHJlcyBpcyBmb3V0JzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnR2VlbiBlLW1haWxhZHJlcyB2b29yIGRpdCBhY2NvdW50IGdldm9uZGVuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVlbSBtZXQgaGV0IGluc3RlbGxlbiB2YW4gZGUgZ2VicnVpa2Vyc2luZm9ybWF0aWUnOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlZW0gbWV0IGhldCBpbnN0ZWxsZW4gdmFuIGVlbiBlaWdlbnNjaGFwJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdHZWJydWlrZXIgdG9lZ2V2b2VnZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ0dlYnJ1aWtlciB2ZXJ3aWpkZXJkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VpZ2Vuc2NoYXAnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1dhYXJkZSAocmVndWxpZXJlIGV4cHJlc3NpZSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYWFyc2NodXdpbmc6IGRlemUgdmVsZGVuIGJlJml1bWw7bnZsb2VkZW4gZGUgbGVuZ3RlIHZhbiBpbnZvZXJ2ZWxkZW4gdmFuIGZvcm11bGllcmVuLiBIZXQgaXMgbmlldCBhYW4gdGUgcmFkZW4gZGV6ZSBsZW5ndGVuIHRlIHZlcmtsZWluZW4gdm9vciBlZW4gYmVzdGFhbmRlIHdlYnNpdGUuJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdCZWhlZXJ2b29ya2V1cmVuIHdpanppZ2VuPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRS1tYWlsYWRyZXMgd29yZHQgYWwgZ2VicnVpa3QnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnR2VicnVpayBjb29raWVzIG9tIGRlIGlubG9nZGV0YWlscyB0ZSBiZXdhcmVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnRGUgbmFhbSB2YW4gaGV0IGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0dlbGlqa2UgZS1tYWlsYWRyZXNzZW4gdG9lc3RhYW4nOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1tYWlsYWRyZXMgaXMgZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnUG9naW5nIG9tIGRlIGxvZ2lucyBhY3RpZWYgdGUgaG91ZGVuIGRvb3IgaGV0IGdlYnJ1aWsgdmFuIGVlbiBjb29raWU8ZW0+KGRlIGNvb2tpZSB3b3JkdCBoZXJzdGVsZCBiaWogYWN0aXZpdGVpdCBvcCBkZSB3ZWJzaXRlKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhtZWVyZGVyZSBnZWJydWlrZXJzIG1ldCBoZXR6ZWxmZGUgZS1tYWlsIGFkcmVzIHRvZXN0YWFuKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGdlYnJ1aWtlcnMgZS1tYWlsIGFkcmVzIGlzIGRlIGdlYnJ1aWtlcnNuYWFtIC0gc2VsZWN0ZWVyIG5pZXQgZGUgb3B0aWUgJnF1b3Q7R2VsaWprZSBlLW1haWxhZHJlc3NlbiB0b2VzdGFhbiZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnU3RhIGR1YmJlbGUgaGVyaW5uZXJpbmdlbiAmcXVvdDt3YWNodHdvb3JkIHZlcmdldGVuJnF1b3Q7IHRvZT8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHN0YSBnZWJydWlrZXJzIHRvZSB0ZSB2ZXJ6b2VrZW4gdG90IGhldCByZXNldHRlbiB2YW4gZWVuIHdhY2h0d29vcmQsIHplbGZzIHphbCB6ZSBuaWV0cyBtZXQgZWVuIHZvcmlnIHZlcnpvZWsgaGViYmVuIGdlZGFhbiknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdHZWJydWlrIEZyb250RW5kVXNlciBzcGVjaWZpZWtlIHJlY2h0ZW4/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWFsIHppam4gZGUgcmVjaHRlbiB2YW4gRkVVc2VycyBnZWxpamsgYWFuIGRpZSB2YW4gaGV0IHdlYnNpdGViZWhlZXIsIHpvYWxzIEdlYnJ1aWtlcnMgdG9ldm9lZ2VuIG9mIEdyb2VwZW4gdG9ldm9lZ2VuLiBBbHMgdSBkZXplIG9wdGllIHNlbGVjdGVlcnQsIGRhbiBrb21lbiBlciBhcGFydGUgcmVjaHRlbiB2b29yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnS2FuIGhldCBnZSZ1dW1sO3Bsb2FkZSBiZXN0YW5kIG5pZXQgdmluZGVuIChpbnRlcm5lIGZvdXQpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnRXIgd2FzIGVlbiBwcm9ibGVlbSBtZXQgdXcgZ2UmdXVtbDtwbG9hZGUgYmVzdGFuZC4gUHJvYmVlciBoZXQgb3BuaWV1dyc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdHZWVuIGdlYnJ1aWtlcnNuYWFtIGluZ2V2b2VyZCc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdKZSBoZWJ0IGdlZW4gZS1tYWlsIGluZ2V2b2VyZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdHZWVuIHdhY2h0d29vcmQgaW5nZXZvZXJkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdGcm9udGVuZHVzZXIgbG9ndWl0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kdXNlciBsb2dpbic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlZPT1JaSUNIVElHPC9iPiBhbHMgZWlnZW5zY2hhcHBlbiBnZXdpanppZ2Qgd29yZGVuIGRpZSBhYW4gZ3JvZXBlbiB6aWpuIHRvZWdla2VuZCwgZGFuIGt1bnQgdSBtb2dlbGlqayBzY2hhZGUgdmVyb29yemFrZW4gZW4gZGUgYmVzdGFhbmRlIHdlYnNpdGUgdmVybmllbGVuPGk+KG1ldCBuYW1lIGFscyB1IHZlbGRsZW5ndGVuIHJlZHVjZWVydCwgZXRjLik8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0RlemUgZnVuY3RpZSB3ZXJrdCBuaWV0IG9uZGVyIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ01hYWsgZ2VlbiBlaWdlbnNjaGFwIGFhbiB2b29yIGdlYnJ1aWtlcnNuYWFtIGVuIHdhY2h0d29vcmQuIERlemUgemlqbiBhbCBpbmdlYm91d2QgaW4gZGUgbW9kdWxlLic7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnR2VicnVpa2VycyBuYWFyIENTViBleHBvcnRlcmVuJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyZW4nOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXJlbic7CiRsYW5nWydhZG1pbiddID0gJ0JlaGVlcic7CiRsYW5nWydlZGl0cHJvcCddID0gJ1dpanppZyB3YWFyZGU6IDxlbT4lczwvZW0+JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltdW0gbGVuZ3RlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdBYW5nZW1hYWt0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlcmVuIG9wJzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0ZXJlbic7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdHZWJydWlrZXIocykgaW4gZGUgZ2VzZWxlY3RlZXJkZSBncm9lcChlbiknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnUmVzdWx0YXRlbiBiZXBlcmtlbiB0b3QnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnS2FuIGdlZW4gZS1tYWlsIHZlbGQgdmluZGVuIHZvb3IgZGV6ZSBnZWJydWlrZXIuIE5lZW0gY29udGFjdCBvcCBtZXQgZGUgYmVoZWVyZGVyLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2luYUlEL2FsaWFzIHZvb3IgZm9ybXVsaWVyICZxdW90O3dhY2h0d29vcmQgdmVyZ2V0ZW4mcXVvdDsnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdpbmFJRC9hbGlhcyB2b29yIGZvcm11bGllciAmcXVvdDt3aWp6aWcgaW5zdGVsbGluZ2VuJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnaW5hSUQvYWxpYXMgb20gdGUgdG9uZW4gbmEgaW5sb2dnZW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdpbmFJRC9hbGlhcyBvbSB0ZSB0b25lbiBuYSB1aXRsb2dnZW4gKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0ZWVydm9sZ29yZGUnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnRWVuIGFhbnRhbCBnZWJydWlrZXJzIGhlZWZ0IGVlbiB2ZXJ6b2VrIHRvdCByZXNldHRlbiB2YW4gd2FjaHR3b29yZGVuIGluZ2VkaWVuZC4gTW9tZW50ZWVsIHppam4gZGl0IGVyOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1ZlcndpamRlciBhbGxlIHZlcnpvZWtlbiB2YW4gbWVlciBkYW4gZWVuIHdlZWsgb3VkJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1ZlcndpamRlciBhbGxlIHZlcnpvZWtlbiB2YW4gbWVlciBkYW4gZWVuIG1hYW5kIG91ZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdBbGxlIHZlcnpvZWtlbiB2ZXJ3aWpkZXJlbic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnWmVrZXIgd2V0ZW4/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnRXIgaXMgZWVuIHZlcmtlZXJkZSBjb2RlIGluZ2V2b2VyZCwgcHJvYmVlciBoZXQgbm9nbWFhbHMnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0RlIHRpamRlbGlqa2UgY29kZSB2b29yIHV3IGFjY291bnQga2FuIG5pZXQgaW4gb256ZSBkYXRhYmFzZSB3b3JkZW4gZ2V2b25kZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdTamFibG9vbiBvbSBoZXQgYmV2ZXN0aWdpbmdzZm9ybXVsaWVyIHRlIHRvbmVuLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnU2phYmxvb24gb20gaGV0ICZxdW90O3dhY2h0d29vcmQgdmVyZ2V0ZW4mcXVvdDsgZm9ybXVsaWVyIHRlIHRvbmVuLic7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnVSBvZiBpZW1hbmQgYW5kZXJzIGhlZWZ0IGFsIGVlbiBwcm9jZWR1cmUgb20gaGV0IHdhY2h0d29vcmQgdGUgaGVyc3RlbGxlbiBpbiBnYW5nIGdlemV0LiBDb250cm9sZWVyIHV3IGUtbWFpbDogZXIgemlqbiBpbnN0cnVjdGllcyB2ZXJ6b25kZW4gaG9lIHV3IHdhY2h0d29vcmQgaGVyc3RlbGQga2FuIHdvcmRlbi4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlLWZvdXQnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVSBvbnR2YW5ndCBkZXplIGJvb2RzY2hhcCBvbWRhdCBlciBpcyBnZW1lbGQgZGF0IHUgdXcgd2FjaHR3b29yZCBrd2lqdCBiZW50LiBBbHMgZGl0IHpvIGlzLCBsZWVzIGRhbiBkZSBvbmRlcnN0YWFuZGUgYWFud2lqemluZ2VuIGFhbmRhY2h0aWcgZG9vci4gQWxzIGRpdCBiZXJpY2h0IG5pZXQgdm9vciB1IGJlc3RlbWQgaXMsIGRhbiBrdW50IHUgZGl0IHdlZ2dvb2llbi4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlICc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdEZSB2b2xnZW5kZSBjb2RlIGlzIHdpbGxla2V1cmlnIGdlZ2VuZXJlZXJkIG9tIGhldCBnZWJydWlrZXJzLWFjY291bnQgdGUgY29udHJvbGVyZW4uIEFscyB1IG9wIGRlIGxpbmsgaGllcm9uZGVyIGtsaWt0LCBrcmlqZ3QgdSBlZW4gdmVsZCB3YWFyIGRlemUgY29kZSBpbmdldm9lcmQga2FuIHdvcmRlbi4gTm9ybWFhbCB6YWwgZGl0IHZlbGQgcmVlZHMgaW5nZXZ1bGQgemlqbi4gSXMgZGl0IG5pZXQgaGV0IGdldmFsLCB2b2VyIGRhbiBkZSB2b2xnZW5kZSBjb2RlIGluOiAnOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdBbHMgdSBvcCBkZSB2b2xnZW5kZSBsaW5rIGtsaWt0LCBrb210IHUgb3AgZGUgd2Vic2l0ZSB3YWFyIHUgYm92ZW5zdGFhbmRlIGNvZGUga3VudCBpbnZvZXJlbiBlbiBkYWFybWVlIHUgdXcgd2FjaHR3b29yZCBrdW50IHJlc2V0dGVuLic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnV2FjaHR3b29yZCB2ZXJnZXRlbic7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0thbiBkZSBDTVNNYWlsZXItbW9kdWxlIG5pZXQgdmluZGVuJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ0VlbiBlLW1haWwgaXMgbmFhciAlcyBnZXpvbmRlbiBtZXQgaW5zdHJ1Y3RpZXMgaG9lIGhldCB3YWNodHdvb3JkIGdlcmVzZXQga2FuIHdvcmRlbi4gJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnVSBnZWVmdCBhYW4gaGV0IHdhY2h0d29vcmQgdmVybG9yZW4gb2YgdmVyZ2V0ZW4gdGUgemlqbi4gVm9lciBoaWVyIHV3IGdlYnJ1aWtlcnNuYWFtIGluLiBJbmRpZW4gZGV6ZSBiZXN0YWF0LCBvbnR2YW5ndCB1IGVlbiBlLW1haWwgbWV0IGluc3RydWN0aWVzIGhvZSB1IGhldCB3YWNodHdvb3JkIGt1bnQgcmVzZXR0ZW4uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnU2phYmxvb24gJnF1b3Q7VmVyZ2V0ZW4gd2FjaHR3b29yZCZxdW90Oyc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdTamFibG9vbiAmcXVvdDtWZXJnZXRlbiBnZWJydWlrZXJzbmFhbSZxdW90Oyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdFaWdlbnNjaGFwICVzIG5pZXQgZ2V2b25kZW4nOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ0dldm9uZGVuIGVpZ2Vuc2NoYXAocGVuKSc7CiRsYW5nWydhZGRwcm9wJ10gPSAnRWlnZW5zY2hhcCB0b2V2b2VnZW4nOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0VlbiB2ZXJwbGljaHQgdmVsZCAoJXMpIGlzIG5pZXQgaW5nZXZ1bGQnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdWdWwgaGllciBlZW4gbmlldXcgd2FjaHR3b29yZCBpbiBvbSB1dyBiZXN0YWFuZGUgd2FjaHR3b29yZCB0ZSB2ZXJhbmRlcmVuJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnSGV0IGxpamt0IGVyIGRhdCB1IG5pZXQgaW5nZWxvZ2QgYmVudCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmF0aWUnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdEaXQgYWNjb3VudCBpcyB2ZXJsb3Blbic7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVmVya2VlcmRlIG9wbWFhayBlLW1haWxhZHJlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ09uZ2VsZGlnZSBhZmxvb3BkYXR1bSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRm91dCBiaWogaW5zdGVsbGVuIGVpZ2Vuc2NoYXAgJXMgdm9vciBnZWJydWlrZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdPbmdlbGRpZ2UgZ3JvZXAgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdWZXJib3JnZW52ZWxkLWFhbmR1aWRpbmcnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ1ZlcmJvcmdlbnZlbGQta2xldXInOwokbGFuZ1snaGlkZGVuJ10gPSAnVmVyYm9yZ2VuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdFZW4gZWlnZW5zY2hhcCBtZXQgZGllIG5hYW0gaXMgYWwgaW4gZ2VicnVpayc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdHZWVuIGVpZ2Vuc2NoYXBwZW4gZ2VkZWZpbmllZXJkJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnVm9vciBkZXplIGdyb2VwIHppam4gZ2VlbiBlaWdlbnNjaGFwcGVuIGdlc2VsZWN0ZWVyZCc7CiRsYW5nWydub2dyb3VwcyddID0gJ0VyIHppam4gZ2VlbiBncm9lcGVuIGdlZGVmaW5pZWVyZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dldm9uZGVuIGdyb2VwKGVuKSc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTGlkbWFhdHNjaGFwIHZhbiBtaW5zdGVucyAmZWFjdXRlOyZlYWN1dGU7biBncm9lcCBpcyB2ZXJwbGljaHQnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1ZlcnBsaWNodCBsaWRtYWF0c2NoYXAgdmFuIG1pbnN0ZW5zICZlYWN1dGU7JmVhY3V0ZTtuIGdyb2VwJzsKJGxhbmdbJ2JhY2snXSA9ICdUZXJ1Zyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgaXMgZWVuIHZlcnBsaWNodCB2ZWxkJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdWZXJwbGljaHRlIHZlbGRlbiBtYXJrZXJlbiBtZXQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnVmVycGxpY2h0ZSB2ZWxkZW4gYmVuYWRydWtrZW4gbWV0JzsKJGxhbmdbJ25leHQnXSA9ICdWb2xnZW5kZSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0VlbiBncm9lcCBtZXQgZGllIG5hYW0gYmVzdGFhdCBhbCc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1ZlcnBsaWNodCB2ZWxkJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9uZWVsJzsKJGxhbmdbJ29mZiddID0gJ1VpdCc7CiRsYW5nWydzaXplJ10gPSAnR3Jvb3R0ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxiciAvPihNYXhpbWFsZSBhZm1ldGluZyB2YW4gZGUgYWZiZWVsZGluZyBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xlbmd0ZSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KGthcmFrdGVycyBpbiBkZSB0ZWtzdGludm9lciknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ09wdGllcyBrZXV6ZWxpanN0LCBnZXNjaGVpZGVuIGRvb3IgcmVnZWxlaW5kZW4uIFdhYXJkZW4ga3VubmVuIHZhbiB0ZWtzdCBnZXNjaGVpZGVuIHdvcmRlbiBtZXQgJnF1b3Q7PSZxdW90OywgYmlqdm9vcmJlZWxkOiBWcm91d2VsaWprPXYgJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgZ2VzY2hlaWRlbiBkb29yIGxpbmUgYnJlYWtzLiBXYWFyZGVuIGt1bm5lbiBnZXNjaGVpZGVuIHdvcmRlbiB2YW4gZGUgdGVrc3QgZG9vciBlZW4gPSB0ZWtlbiwgYmlqdm9vcmJlZWxkOiBWcm91dz12JzsKJGxhbmdbJ3Byb21wdCddID0gJ09tc2NocmlqdmluZyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUgJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlICc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1ZlbGRzdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnVnJhYWcgaW4gVmVyZ2V0ZW48YnIgLz5nZWJydWlrZXJzbmFhbSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdTZWxlY3RpZXZhayc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ01lZXJrZXV6ZWxpanN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMgJzsKJGxhbmdbJ2ltYWdlJ10gPSAnQWZiZWVsZGluZyc7CiRsYW5nWydlbWFpbCddID0gJ0UtbWFpbCBhZHJlcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1Rla3N0dmVsZCc7CiRsYW5nWydkcm9wZG93biddID0gJ0tldXplbGlqc3QnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxrb20nOwokbGFuZ1snbG9nb3V0J10gPSAnVWl0bG9nZ2VuJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdHZWJydWlrIGRlemUgZ3JvZXBzbmFhbSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNaWpuIEluc3RlbGxpbmdlbiB3aWp6aWdlbic7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIG5pZXQgZ2VsdWt0IC0gb25nZWxkaWdlIGdlYnJ1aWtlcnNuYWFtIG9mIHdhY2h0d29vcmQ/JzsKJGxhbmdbJ2xvZ2luJ10gPSAnTG9naW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdMb2dpbi1idXR0b24gdGVrc3QnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS1tYWlsIGFkcmVzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1dhY2h0d29vcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdPbnRob3VkIG1pam4gaW5zdGVsbGluZ2VuIG9wIGRlemUgY29tcHV0ZXInOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXJlbic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1dhY2h0d29vcmQgdmVyZ2V0ZW4/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0JlbnQgdSBkZSBsb2dpbmdlZ2V2ZW5zIHZlcmdldGVuPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ1N0YW5kYWFyZCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1NqYWJsb29uJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0dlYnJ1aWtlciBJRCBuaWV0IGdldm9uZGVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEaWUgZ2VicnVpa2Vyc25hYW0gKCVzKSBpcyBhbCBpbiBnZWJydWlrJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdHZWJydWlrIFNNVFAgb20gRS1tYWlsYWRyZXNzZW4gdGUgdmFsaWRlcmVuPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIHdhY2h0d29vcmQgbGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gd2FjaHR3b29yZCBsZW5ndGUnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBnZWJydWlrZXJzbmFhbSBsZW5ndGUnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW11bSBnZWJydWlrZXJzbmFhbSBsZW5ndGUnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnU2Vzc2lldmVybG9vcHRpamQgKHNlY29uZGVuKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnR2VicnVpayBjb29raWVzIG9tIGRlIGxvZ2lucyBhY3RpZWYgdGUgaG91ZGVuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnU3RhIEUtbWFpbCByZWdpc3RyYXRpZSB0b2UnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYWFyZGdyb2VwIHZvb3IgbmlldXdlIGdlYnJ1aWtlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdXaWp6aWcgaW5zdGVsbGluZ2Vuc2phYmxvb24nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1dhY2h0d29vcmRlbiBrb21lbiBuaWV0IG92ZXJlZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVmVya2VlcmRlIGdlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1ZlcmtlZXJkIHdhY2h0d29vcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdWZXJhbmRlciBnZWJydWlrZXInOwokbGFuZ1sndmFsaWQnXSA9ICdHZWxkaWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdHZWJydWlrZXJzbmFhbSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMgJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0RlemUgZ2VicnVpa2VyIGlzIGdlZW4gbGlkIHZhbiBlZW4gZ2VicnVpa2Vyc2dyb2VwJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdHZWVuIGVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdQb2dpbmcgb20gZHViYmVsZSBlaWdlbnNjaGFwcGVuIHRlIGltcG9ydGVyZW4nOwokbGFuZ1sndmFsdWUnXSA9ICdXYWFyZGUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvZXBlbic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWlnZW5zY2hhcHBlbic7CiRsYW5nWydwcm9wbmFtZSddID0gJ0VpZ2Vuc2NoYXBzbmFhbSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdFaWdlbnNjaGFwc3dhYXJkZSc7CiRsYW5nWydhZGQnXSA9ICdUb2V2b2VnZW4nOwokbGFuZ1snaGlzdG9yeSddID0gJ0dlc2NoaWVkZW5pcyc7CiRsYW5nWydlZGl0J10gPSAnQmV3ZXJrZW4nOwokbGFuZ1snZXhwaXJlcyddID0gJ1Zlcmxvb3B0JzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0RhdHVtIG9wZ2V2ZW4nOwokbGFuZ1snMTJocnMnXSA9ICcxMiBVdXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCBVdXInOwokbGFuZ1snNDhocnMnXSA9ICc0OCBVdXInOwokbGFuZ1snMXdlZWsnXSA9ICcxIFdlZWsgJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgV2VrZW4nOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNYWFuZCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNYWFuZGVuJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IE1hYW5kZW4nOwokbGFuZ1snMXllYXInXSA9ICcxIEphYXInOwokbGFuZ1snbmV2ZXInXSA9ICdOb29pdCc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdEZSBtb2R1bGUgaXMgZ2UmaXVtbDtuc3RhbGxlZXJkLjxici8+U3RlbCBkZSByZWNodGVuICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyZxdW90OyBpbi4gRGFhcm5hYXN0IGJldmVsZW4gd2UgYWFuIG9tIGRlIENhcHRjaGEtbW9kdWxlIHRlIGluc3RhbGxlcmVuLiBOYSBpbnN0YWxsYXRpZSBpcywgbmFhc3QgZGUgZ2VicnVpa2Vyc25hYW0gZW4gaGV0IHdhY2h0d29vcmQsIGRlIHZhbGlkYXRpZSB2YW4gZWVuIENhcHRjaGEtYWZiZWVsZGluZyB2ZXJwbGljaHQgb20gaW4gdGUga3VubmVuIGxvZ2dlbi4gRGl0IGlzIGJlZG9lbGQgb20gJiMwMzk7YnJ1dGUgZm9yY2UmIzAzOTsgYWFudmFsbGVuIHRlIHZvb3Jrb21lbi4gPHN0cm9uZz5MZXQgb3A6PC9zdHJvbmc+IERlIG5vY2FwdGNoYS1wYXJhbWV0ZXIga2FuIGdlYnJ1aWt0IHdvcmRlbiBvbSBkZXplIGZ1bmN0aW9uYWxpdGVpdCB1aXQgdGUgc2NoYWtlbGVuLCB6ZWxmcyBhbHMgZGUgQ2FwdGNoYS1tb2R1bGUgaXMgZ2UmaXVtbDtuc3RhbGxlZXJkLic7CiRsYW5nWydwYXNzd29yZCddID0gJ1dhY2h0d29vcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdOb2dtYWFscyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gZ3JvZXAgbWV0IGRpZSBuYWFtJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0dyb2VwIGJld2Vya2VuJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1ZlcnN0dXJlbic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVyZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnVmVyd2lqZGVyZW4nOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdXZWV0IHUgemVrZXIgZGF0IGRpdCBkZSBqdWlzdGUgaW5zdGVsbGluZ2VuIHZvb3IgZGV6ZSBncm9lcCB6aWpuP1xuSGV0IHVpdHpldHRlbiB2YW4gZWVuIGVpZ2Vuc2NoYXAgdmVyd2lqZGVydCBuaWV0cyB1aXQgZGUgZWlnZW5zY2hhcHBlbiB0YWJlbCB2YW4gZGV6ZSBncm9lcC9nZWJydWlrZXI7IGhldCBpcyBhbGxlZW4gbmlldCBiZXNjaGlrYmFhci4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZXplIGdyb2VwIHdpbHQgdmVyd2lqZGVyZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBlaWdlbnNjaGFwIGRlZmluaXRpZWYgd2lsdCB2ZXJ3aWpkZXJlbj9cbkFscyB1IGRhdCBkb2V0LCB2ZXJ3aWpkZXJ0IHUgbWV0ZWVuIG9vayBhbGxlIGVpZ2Vuc2NoYXBwZW4gZGllIGdla29wcGVsZCB6aWpuIGFhbiBkZSBnZWJydWlrZXJzLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdPbnZvbGRvZW5kZSBwYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOYWFtJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlZW0gbWV0IGhldCB0b2V2b2VnZW4gdmFuIGVpZ2Vuc2NoYXBwZW4nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZWVtIG1ldCBoZXQgdG9ldm9lZ2VuIHZhbiBncm9lcHNyZWxhdGllcyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVlbSBtZXQgaGV0IHRvZXZvZWdlbiB2YW4gZWVuIGdyb2VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlZW0gbWV0IGhldCB0b2V2b2VnZW4gdmFuIGVlbiBnZWJydWlrZXIgYWFuIGVlbiBncm9lcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlZW0gbWV0IGhldCB2ZXJ3aWpkZXJlbiB2YW4gZWVuIGVpZ2Vuc2NoYXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLYW4gZ2VlbiBFLW1haWwgYWRyZXMgdmluZGVuJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdHZWVuIHNjaHJpamZyZWNodGVuIGluIGRlIGJlc3RlbW1pbmdzbWFwJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdPbmdlbGRpZ2UgcGFyYW1ldGVycyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0thbiBnZWVuIGdyb2VwZW4gdmluZGVuJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnVG9lcGFzc2VuJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlciAnOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0dlYnJ1aWtlcnNuYWFtIChyZWd1bGllcmUgZXhwcmVzc2llKSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ09tc2NocmlqdmluZyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcm9lcHNuYWFtJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1RvZWdhbmcgZ2V3ZWlnZXJkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRm91dCc7CiRsYW5nWydhZGRncm91cCddID0gJ0dyb2VwIHRvZXZvZWdlbic7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0dyb2VwIGltcG9ydGVyZW4nOwokbGFuZ1snYWRkdXNlciddID0gJ0dlYnJ1aWtlciB0b2V2b2VnZW4nOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0dlYnJ1aWtlcihzKSBnZXZvbmRlbiBkaWUgdm9sZG9lbiBhYW4gZGUgZ2VnZXZlbiBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb2VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnR3JvZXAgc2VsZWN0ZXJlbic7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyYXRpZXNqYWJsb29uJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ1VpdGxvZ3NqYWJsb29uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnSW5sb2dzamFibG9vbic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sndXNlcnMnXSA9ICdHZWJydWlrZXJzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kdXNlciBiZWhlZXInOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTdGEgZ2VicnVpa2VycyB0b2UgaW4gdGUgbG9nZ2VuIG9wIGRlIGZyb250ZW5kIHZhbiB1dyBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdTdGFuZGFhcmQgYmlubmVua29tc3RwYWdpbmEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xhYXRzdCBiZXpvY2h0ZSBwYWdpbmEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5kZXJlIHBhZ2luYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1ZvZXIgZGUgdGVrc3QgdWl0IGRlIGFmYmVlbGRpbmcgaW4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmYW1wO3F1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZhbXA7cXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3UgbmVlZCB0byBkZWZpbmUgYXQgbGVhc3Qgb25lIHByb3BlcnR5LiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgKG9yIGVtYWlsIGFkZHJlc3MpIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPHA+PGI+Tm90ZTo8L2I+IE5ldyBpbnN0YWxsYXRpb25zIG9mIHRoZSBGRVUgbW9kdWxlIHNwZWNpZnkgdGhhdCB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAodGhpcyBvcHRpb24gY2FuIGJlIGNoYW5nZWQgaW4gdGhlIHByZWZlcmVuY2VzIHRhYikuICBTbyBpZiB1c2luZyB0aGlzIG9wdGlvbiB5b3Ugd2lsbCBub3QgbmVlZCB0byBjcmVhdGUgYW4gZW1haWwgYWRkcmVzcyBwcm9wZXJ0eS48L3A+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IG11c3QgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUvZW1haWwgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4NCjxwPlNvbWUgbGltaXRlZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBkYXRhYmFzZSBpcyBwb3NzaWJsZSB3aXRoIHNtYXJ0eSBhbmQgdGhlICRmZXVfc21hcnR5IG9iamVjdC48L3A+DQo8aDQ+RnVuY3Rpb25zOjwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJmFtcDtxdW90O2Fzc2lnbiZhbXA7cXVvdDsgcGFyYW1ldGVyLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X3VzZXJfcHJvcGVydGllcyg1LCYjMDM5O3VzZXJwcm9wcyYjMDM5Oyl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWVbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIHRoZSB0ZXh0IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG9wdGlvbiB2YWx1ZSBmb3IgYSBzcGVjaWZpZWQgZHJvcGRvd24gcHJvcGVydHkuPC9saT4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktJmFtcDtndDtnZXRfZHJvcGRvd25fdGV4dCgmIzAzOTthZ2VfcmFuZ2UmIzAzOTssJG9uZXByb3B2YWx1ZSl9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF9tdWx0aXNlbGVjdF90ZXh0KCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgc21hcnR5IGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2Ygb3B0aW9uIHRleHRzIGNvcnJlc3BvbmRpbmcgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb24gdmFsdWVzLjwvbGk+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LSZhbXA7Z3Q7Z2V0X211bHRpc2VsZWN0X3RleHQoJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTssJG9uZXByb3B2YWx1ZSwmIzAzOTtmYXZvcml0ZV9mb29kcyYjMDM5Oyl9PGJyLz57JGZhdm9yaXRlX2Zvb2RzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPC91bD4NCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9jYWxndXkxMDAwLmNvbSI+Y2FsZ3V5MTAwMC5jb208L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSZxdW90O2RlZmF1bHQmcXVvdDs8bGk+DQo8cD5BY3Rpb25zOg0KPHVsPg0KPGxpPjxlbT5kZWZhdWx0PC9lbT4gLSBUaGUgZGVmYXVsdCBhY3Rpb24sIHdoaWNoIGVuYWJsZXMgdGhlIG5vcm1hbCBmb3JtPSBiZWhhdmlvdXIuPC9saT4NCjxsaT48ZW0+cmVzZXRfc2Vzc2lvbjwvZW0+IC0gUHJvdmlkZSBhIGphdmFzY3JpcHQgY29udHJvbGxlZCB0ZW1wbGF0ZSB0byBhbGxvdyB0aGUgbWFudWFsLCBvciBhdXRvbWF0aWMgcGluZ2luZyBvZiB0aGUgdXNlciBzZXNzaW9uLiAgVGhpcyB0ZW1wbGF0ZSBjYW4gYmUgdXNlZCB0byByZW1pbmQgdGhlIHVzZXIgdGhhdCBoaXMgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIGFuZCB0byB0cmlnZ2VyIGl0cyByZXNldC4gIE5vcm1hbGx5IHRoaXMgbWV0aG9kIGlzIG5vdCByZXF1aXJlZCBhcyBhbnkgcGFnZSB0aGF0IGRpc3BsYXlzIHRoZSBGcm9udEVuZFVzZXIgY29udHJvbHMgd291bGQgaGFuZGxlIHRoaXMsIGp1c3QgcmVxdWlyaW5nIHRoZSB1c2VyIHRvIHZpZXcgYSBwYWdlIG9uIGEgcmVndWxhciBiYXNpcy4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBwYWdlcyB3aXRoIGFsb3Qgb2YgY29udGVudCByZXF1aXJpbmcgZXh0ZW5zaXZlIHJlYWRpbmcsIHRoaXMgbWF5IGJlIGEgdXNlZnVsIHNvbHV0aW9uLjwvbGk+DQo8bGk+PGVtPnZpZXd1c2VyPC9lbT4gLSBEaXNwbGF5IGEgcmVwb3J0IGZvciBhIHNpbmdsZSB1c2VyLCByZXF1aXJlcyB1c2Ugb2YgdGhlIHVpZCBwYXJhbWV0ZXIuPC9saT4NCjwvdWw+DQo8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDsgPC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZhbXA7Y29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPiZhbXA7bHQ7Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyZhbXA7Z3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+DQo8aDM+U3BvbnNvcnM8L2gzPg0KPHA+VGhlcmUgaGF2ZSBiZWVuIG1hbnkgc3BvbnNvcnMgZm9yIHRoaXMgbW9kdWxlLCBzb21lIG9mIHRoZXNlIGFyZSBsaXN0ZWQgYmVsb3c6PC9wPg0KPHVsPg0KIDxsaT48YSBocmVmPSJodHRwOi8vd3d3Lm1hdHRlcmhvcm5tYXJrZXRpbmcuY29tIj5NYXR0ZXJob3JuIE1hcmtldGluZzwvYT48L2xpPg0KIDxsaT48YSBocmVmPSJodHRwOi8vYnB0aS5ldSI+YnB0aS5ldTwvYT48L2xpPg0KPC91bD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4yMDk0MzM0NzQwLjEyNzI3OTk2MTUuMTI4MjY3NzI5NC4xMjgyNjc5OTQ5LjM3JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI4MjQ4Njk3Mi4zNS4zOC51dG1jc3I9bWFtbWFtaWFkZW11c2ljYWwubmx8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vYWRtaW4vc3lzdGVtaW5mby5waHAnOwokbGFuZ1sncWNhJ10gPSAnUDAtOTU4NDM0NzM2LTEyNzI3OTk2MTQ1NDknOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></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/IFxuIHBvIHRlaiBha2NqaSBza2Fzb3dhbmUgem9zdGFuxIUgdGXFvCBkYW5lIHXFvHl0a293bmlrJm9hY3V0ZTt3IGRvIG5pZWogcHJ6eXBpc2FueWNoLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdaYSBtYcWCbyBwYXJhbWV0ciZvYWN1dGU7dyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXp3YSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0geiBkb2RhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHJlbGFjamkgZ3J1cHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIGdydXB5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHXFvHl0a293bmlrYSBkbyBncnVweSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSB6ZSBza2Fzb3dhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05pZSBtb2fEmSBvZG5hbGXFusSHIGFkcmVzdSBlbWFpbCc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnQnJhayB1cHJhd25pZcWEIGRvIHphcGlzdSB3IGthdGFsb2d1IGRvY2Vsb3d5bSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnTmllcHJhd2lkxYJvd2UgcGFyYW1ldHJ5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTmllIG1vZ8SZIG9kbmFsZcW6xIcgxbxhZG55Y2ggZ3J1cCc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1phc3Rvc3VqJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRydWonOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05hendhIHXFvHl0a293bmlrYSAtIHd5cmHFvGVuaWUgcmVndWxhcm5lJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnT3Bpcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOYXp3YSBncnVweSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdEb3N0xJlwIHphYnJvbmlvbnknOwokbGFuZ1snZXJyb3InXSA9ICdCxYLEhWQnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdEb2RhaiBncnVwxJknOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnR1aiBncnVwxJknOwokbGFuZ1snYWRkdXNlciddID0gJ0RvZGFqIHXFvHl0a293bmlrYSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW8eXRrb3duaWsmb2FjdXRlO3cgem5hbGV6aW9ubyBzcGXFgm5pYWrEhWN5Y2gga3J5dGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwYSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1d5YmllcnogZ3J1cMSZJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcmVqZXN0cmFjamknOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnU3phYmxvbiB3eWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnU3phYmxvbiB6YWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnVXN0YXdpZW5pYSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvHl0a293bmljeSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdaYXJ6xIVkemFuaWUgdcW8eXRrb3duaWthbWkgRkVVJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUG96dyZvYWN1dGU7bCB1xbx5dGtvd25pa29tIGxvZ293YcSHIHNpxJkgbmEgc3Ryb25pZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRG9tecWbbG5hIHN0cm9uYSBnxYImb2FjdXRlO3duYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnT3N0YXRuaW8gb3R3aWVyYW5hIHN0cm9uYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdJbm5hIHN0cm9uYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1dwcm93YWTFuiB0ZWtzdCB6IG9icmF6a2EnOwokbGFuZ1snaGVscCddID0gJzxoMz5EbyBjemVnbyBzxYJ1xbx5PzwvaDM+DQo8cD5Nb2R1xYIgdGVuIHVtb8W8bGl3aWEgemFyesSFZHphbmllIGkgYWRtaW5pc3RyYWNqxJkgdcW8eXRrb3duaWthbWkgRkVVIDxpPih1xbx5dGtvd25pa2FtaSwga3Qmb2FjdXRlO3J6eSBuaWUgbWFqxIUgZG9zdMSZcHUgYWRtaW5pc3RyYWN5am5lZ28pPC9pPi4gUG96d2FsYSBuYSB0d29yemVuaWUgZ3J1cCB1xbx5dGtvd25payZvYWN1dGU7dyBvcmF6IG9yYXoga29udCwga3Qmb2FjdXRlO3JlIHVtb8W8bGl3aWFqxIUgdcW8eXRrb3duaWtvbSBsb2dvd2FuaWUgaSB3eWxvZ293YW5pZS4gTW/FvGUgYnnEhyB0YWvFvGUgdcW8eXdhbnkgcmF6ZW0geiBtb2R1xYJlbSBDdXN0b21Db250ZW50IGRvIHd5d2/Fgnl3YW5pYSBpIHd5xZt3aWV0bGFuaWEgciZvYWN1dGU7xbxuZWogdHJlxZtjaSByJm9hY3V0ZTvFvG55bSB1xbx5dGtvd25pa29tLCBwbyB1cHJ6ZWRuaW0gemFsb2dvd25pdS48L3A+DQo8aDM+Q2VjaHk8L2gzPg0KPHVsPg0KPGxpPjxwPld5Z2HFm25pxJljaWUga29udGEgdcW8eXRrb3duaWthLiBNb8W8ZXN6IFR3b3J6ecSHIHR5bWN6YXNvd3ljaCB1xbx5dGtvd25payZvYWN1dGU7dzwvcD48L2xpPg0KPGxpPjxwPkNlY2h5IGdydXB5IChkYXduaWVqOiB3xYJhxZtjaXdvxZtjaSkuIE1vxbxlc3ogxbzEhWRhxIcgciZvYWN1dGU7xbxuZWogaW5mb3JtYWNqaSBvZCB1xbx5dGtvd25payZvYWN1dGU7dyByJm9hY3V0ZTvFvG55Y2ggZ3Imb2FjdXRlO2I8L3A+PC9saT4NCjxsaT48cD5KZXN0IHcgc3RhbmllIG9ic8WCdcW8ecSHIHNldGtpIHXFvHl0a293bmlrJm9hY3V0ZTt3PC9wPjwvbGk+DQo8bGk+PHA+UG9zaWFkYSBvYnN6ZXJuZSBBUEkgdyBjZWx1IGRvZGF3YW5pYSBmdW5rY2pvbmFsbm/Fm2NpPC9wPjwvbGk+DQo8L3VsPg0KPGgzPkphayB0ZWdvIHXFvHl3YcSHPzwvaDM+DQo8dWw+DQo8bGk+PHA+UG8gaW5zdGFsYWNqaSBtYXN6IGRvc3TEmXAgZG8gcGFuZWx1IGFkbWluaXN0cmFjeWpuZWdvIG1vZHXFgnUgdcW8eXRrb3duaWsmb2FjdXRlO3cgRkVVIHcgbWVudSAmcXVvdDtVxbx5dGtvd25pY3kgaSBHcnVweSZxdW90Oy48L3A+PC9saT4NCjxsaT4NCjxwPlBvIGRydWdpZSwgbmFsZcW8eSB6ZGVmaW5pb3dhxIcgY2VjaHkuIFPEhSBvbmUgbmllemLEmWRueW1pIHBvbGFtaSBkZWZpbmljamksIHR1dGFqIG9rcmXFm2xhIHNpxJkgdHlwIGluZm9ybWFjamksIGt0Jm9hY3V0ZTtyZSB6YW1pZXJ6YSBzacSZIHByemVjaG93eXdhxIcgb3JheiBsaW1pdHkuIE5wLiBJbWnEmSwgV2llaywgV29qZXcmb2FjdXRlO2R6dHdvLCBLcmFqLCBFbWFpbCwgaXRwLjwvcD4NCjxwPjxiPlBhbWnEmXRhajo8L2I+IE5pZSBtdXNpc3ogZGVmaW5pb3dhxIcgY2VjaCBuYXp3eSB1xbx5dGtvd25pa2EgaSBoYXPFgmEsIHPEhSBvbmUgemFwZXduaW9uZSBhdXRvbWF0eWN6bmllPC9iPg0KPC9saT4NCjxsaT48cD5OYXN0xJlwbmllIG5hbGXFvHkgdXR3b3J6ecSHIGplZG7EhSAobHViIHdpxJljZWopIGdydXDEmSB1xbx5dGtvd25payZvYWN1dGU7dy4gS2llZHkgdXR3b3J6eXN6IGdydXDEmSwgem9zdGFuaWVzeiBwb3Byb3N6b25hL255IG8gcG9kYW5pZSBuYXp3eSBncnVweSwgb3BpcyBvcmF6IG8gc2tvamFyemVuaWUgY2VjaCB6IHTEhSBncnVwxIUsIHd5c3pjemVnJm9hY3V0ZTtsbmllbmllIGtvbGVqbm/Fm2NpIGljaCBzb3J0b3dhbmlhLCBvcmF6LCBjenkgamVzdCB0byBwb2xlIG9wY2pvbmFsbmUsIHd5bWFnYW5lLCBjenkgdWtyeXRlLjxpPih3ecWCxIVjemVuaWUgcG9sYSB0ZcW8IGplc3QgbW/FvGxpd2UgLSBtb8W8ZXN6IHphdGVtIG5pZSB6YXpuYWN6YcSHIGRhbmVqIGNlY2h5IHcgZ3J1cGllLCBrdCZvYWN1dGU7cmEgamVqIG5pZSBixJlkemllIHd5a29yenlzdHl3YcSHKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5QYW1pxJl0YWo6PC9iPiBaYW5pbSBwcnplamR6aWVzeiBkYWxlaiwgc3ByYXdkxbogY3p5IHdzenlzdGtpZSBwcmVmZXJlbmNqZSBzxIUgd8WCYcWbY2l3aWUgdXN0YXdpb25lLjwvcD48L2xpPg0KPGxpPjxwPlBvIHRyemVjaWUsIG5hbGXFvHkgdXR3b3J6ecSHIHXFvHl0a293bmlrJm9hY3V0ZTt3LiBOYSBwcm9jZXMgZG9kYXdhbmlhIHXFvHl0a293bmlrJm9hY3V0ZTt3IHNrxYJhZGFqxIUgc2nEmSBkd2Ega3Jva2kuIFBvZGN6YXMgdHdvcnplbmlhIHXFvHl0a293bmlrYSBuYXN0xIVwaSB6YXB5dGFuaWUgbyBqZWdvIG5henfEmSAobmF6d2EgdcW8eXRrb3duaWthKSwgaGFzxYJvIG9yYXogZGF0xJkgd3lnYcWbbmnEmWNpYSBrb250YSAoa2llZHkgamVnbyBsb2dpbiBwcnplc3RhbmllIGJ5xIcgYWt0eXdueSkuIE5hc3TEmXBuaWUgbmFsZcW8eSB3eWJyYcSHIGdydXB5LCBkbyBrdCZvYWN1dGU7cnljaCB1xbx5dGtvd25payBtYSBuYWxlxbxlxIcgaSBuYWNpc27EhcSHIFwmIzAzOTtEYWxlalwmIzAzOTs8L3A+DQo8cD48ZW0+UGFtacSZdGFqOiA8L2VtPkplc3QgdG8gcHJhY29jaMWCb25ueSBpIG51ZG55IHByb2NlcywgxYJhdHdpZWogamVzdCBwb3p3b2xpxIcgdcW8eXRrb3duaWtvbSBuYSBzYW1vZHppZWxuxIUgcmVqZXN0cmFjasSZLCBhIHBvdGVtIHR5bGtvIGVkeXRvd2HEhyBpbmZvcm1hY2plIGRvdHljesSFY2UgaWNoIHByenluYWxlxbxub8WbY2kgZ3J1cG93ZWouIFByb3NpbXkgamVkbmFrIHV0d29yennEhyBwcnp5bmFqbW5pZWogamVkbmVnbyB1xbx5dGtvd25pa2EgZG8gY2VsJm9hY3V0ZTt3IHRlc3Rvd3ljaCEgUFMgd2Vyc2ppIHBvbHNraWVqOiBtb8W8bmEgc2tvcnp5c3RhxIcgeiBtb2R1xYJ1IFNlbGZSZWdpc3RyYXRpb24sIMW8ZWJ5IHByb2NlcyBzYW1vZHppZWxuZWogcmVqZXN0cmFjamkgYnnFgiBqZXN6Y3plIMWCYXR3aWVqc3p5IDspPC9wPjwvbGk+DQo8bGk+PHA+TmEga29uaWVjLCBnZHkganXFvCBzeXN0ZW0gdXN0YWxpIHdzenlzdGtpZSB6IHd5xZt3aWV0bGFueWNoIHAmb2FjdXRlO2wgaW5mb3JtYWN5am55Y2ggZG90eWN6xIVjeWNoIGRhbmVnbyB1xbx5dGtvd25pa2EsIHd5xZt3aWV0bG9ueSB6b3N0YW5pZSBmb3JtdWxhcnosIGRvIGt0Jm9hY3V0ZTtyZWdvIG5hbGXFvHkgd3Bpc2HEhyB3c3p5c3RraWUgd3ltYWdhbmUgZGFuZSBvIHXFvHl0a293bmlrdS4gV3lwZcWCbmllbmllIGZvcm11bGFyemEgemFrb8WEY3p5IHByb2NlcyBkb2Rhd2FuaWEgdcW8eXRrb3duaWthPC9wPjwvbGk+DQo8bGk+PHA+VGVyYXogbW/FvG5hIGp1xbwgZG9kYcSHIGRvIHN0cm9ueSBrb8WEY293xIUgZnVua2Nqb25hbG5vxZvEhy4gUG9sZWdhIHRvIG5hIGRvZGFuaXUgem5hY3puaWthIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSBkbyBzdHJvbnkgbHViIHN6YWJsb251LCBnZHppZSBtYSBwb2phd2nEhyBzacSZIG9raWVua28gZG9zdMSZcG93ZSAoZm9ybXVsYXJ6IGxvZ3VqxIVjeSk8L3A+PC9saT4NCjwvdWw+DQo8aDM+V3NwYXJjaWU8L2gzPg0KPHA+TW9kdcWCIHRlbiBuaWUgamVzdCB3c3BpZXJhbnkga29tZXJjeWpuaWUuIEplZG5hayBkb3N0xJlwbmUgc8SFIHphc29ieSwga3Qmb2FjdXRlO3JlIG1vZ8SFIHBvbSZvYWN1dGU7Yzo8L3A+DQo8dWw+DQo8bGk+VyBjZWx1IHpuYWxlemllbmlhIG5ham5vd3N6ZWogd2Vyc2ppIG1vZHXFgnUsIEZBUSwgbHViIHpnxYJvc3plbmlhIGLFgsSZZHUgbHViIHpha3VwdSBrb21lcmN5am5lZ28gd3NwYXJjaWEgLSBuYWpwaWVydyBwcnplY3p5dGFqIHRlZ28gaGVscGEgcG8gYW5naWVsc2t1LCBwb3RlbSBvZHdpZWTFuiBzdHJvbsSZIGRvbW93xIUgbW9kdcWCdSBjYWxndXlcJiMwMzk7YSA8YSBocmVmPSZhbXA7YW1wO3F1b3Q7aHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyZhbXA7YW1wO3F1b3Q7PnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5Eb2RhdGtvd2UgZHlza3VzamUgbmEgdGVtYXQgdGVnbyBtb2R1xYJ1IHpuYWpkdWrEhSBzacSZIHImb2FjdXRlO3duaWXFvCBuYSBzdHJvbmllIDxhIGhyZWY9JmFtcDthbXA7cXVvdDtodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmcmYW1wO2FtcDtxdW90Oz5Gb3J1bSBDTVMgTWFkZSBTaW1wbGU8L2E+LjwvbGk+DQo8bGk+QXV0b3IgbW9kdcWCdSwgY2FsZ3V5MTAwMCwgY3rEmXN0byBqZXN0IG9iZWNueSBuYSA8YSBocmVmPSZhbXA7YW1wO3F1b3Q7aXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zJmFtcDthbXA7cXVvdDs+a2FuYWxlIENNUyBJUkM8L2E+LjwvbGk+DQo8bGk+TmEga29uaWVjLCBtb8W8bmEgc3ByJm9hY3V0ZTtib3dhxIcgb3NvYmnFm2NpZSBza29udGFrdG93YcSHIHNpxJkgeiBhdXRvcmVtIHByemV6IGVtYWlsLjwvbGk+DQo8L3VsPg0KPGgzPlBhcmFtZXRyeTwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcGNqb25hbG5pZSk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXk6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gV3nFm3dpZXRsYSBmb3JtdWxhcnogbG9naW51PC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gV3nFm3dpZXRsYSBmb3JtdWxhcnogbG9nb3V0dTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gV3nFm3dpZXRsYSBmb3JtdWxhcnogem1pYW55IHVzdGF3aWXFhDwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gV3nFm3dpZXRsYSBmb3JtdWxhcnogZG90eWN6xIVjeSB6YXBvbW5pYW5lZ28gaGFzxYJhPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gTmljIG5pZSB3ecWbd2lldGxhLCBsZWN6IGVrc3BvcnR1amUgd8WCYcWbY2l3b8WbY2kgaSBpbm5lIHptaWVubmUgZG90eWN6xIVjZSBvYmVjbmllIHphbG9nb3dhbmVnbyB1xbx5dGtvd25pa2EuIEplxbxlbGkgbmlrdCBuaWUgamVzdCB6YWxvZ293YW55LCDFvGFkbmUgem1pZW5uZSBuaWUgc8SFIGVrc3BvcnRvd2FuZS48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wY2pvbmFsbmllKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VcW8eXdhbmUgcmF6ZW0geiBmb3JtdWxhcnphbWkgbG9naW51LCBsb2dvdXR1IGkgem1pYW55IHVzdGF3aWXFhCwgcGFyYW1ldHIgdGVuIHphd2llcmEgaWQgc3Ryb255IGx1YiBhbGlhcyBzdHJvbnksIGRvIGt0Jm9hY3V0ZTtyZWogbmFzdMSZcHVqZSBwcnpla2llcm93YW5pZSwgcG8gdXByemVkbmltIHfFgmHFm2Npd3ltIHd5cGXFgm5pZW5pdSBmb3JtdWxhcnphPC9wPg0KPGxpPjxlbT4ob3Bjam9uYWxuaWUpPC9lbT4gb25seV9ncm91cHM9JnF1b3Q7Z3JvdXAxLCBncm91cDIsIGdyb3VwMyZxdW90OzwvbGk+DQo8cD5Vxbx5d2FuZSB3cmF6IHogZm9ybXVsYXJ6YW1pIGxvZ2ludS4gWmV6d2FsYSB1xbx5dGtvd25pa29tIG5hIHphbG9nb3dhbmllIHNpxJksIGplxbxlbGkgbmFsZcW8xIUgZG8gb2Rwb3dpZWRuaWVqIGdydXB5L2dydXAuPC9wPg0KPGxpPjxlbT4ob3Bjam9uYWxuaWUpPC9lbT4gY2FwdGNoYT0mcXVvdDsxJnF1b3Q7PC9saT4NCjxwPlXFvHl3YW5lIHdyYXogeiBmb3JtdWxhcnphbWkgbG9naW51LiBVYWt0eXduaWEgY2FwdGNoYSB3IHR5bSBmb3JtdWxhcnp1LiBBYnkgdGVuIHBhcmFtZXRyIG0mb2FjdXRlO2fFgiBkemlhxYJhxIcgcG9wcmF3bmllLCBtb2R1xYIgQ2FwdGNoYSBtdXNpIGJ5xIcgemFpbnN0YWxvd2FueS48L3A+DQo8L3VsPg0KPGgzPld5bWFnYW5pYTwvaDM+DQo8cD5XIGNlbHUgemFpbXBsZW1lbnRvd2FuaWEgZnVua2Nqb25hbG5vxZtjaSB6d2nEhXphbmVqIHogemFwb21uaWFueW1pIGhhc8WCYW1pLCBtb2R1xYIgdGVuIHd5bWFnYSB3Y3plxZtuaWVqc3plZ28gemFpbnN0YWxvd2FuaWEgbW9kdcWCdSBDTVNNYWlsZXI8L3A+DQo8aDM+UHJhd2EgYXV0b3Jza2llIGkgTGljZW5jamE8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSZhbXA7YW1wO3F1b3Q7bWFpbHRvOmNhbGd1eTEwMDBAaG90bWFpbC5jb20mYW1wO2FtcDtxdW90Oz48Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbT48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5Nb2R1xYIgdGVuIHpvc3RhxYIgd3lkYW55IG5hIGxpY2VuY2ppIDxhIGhyZWY9JmFtcDthbXA7cXVvdDtodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwmYW1wO2FtcDtxdW90Oz5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBQcnplZCB1xbx5Y2llbSB0ZWdvIG1vZHXFgnUgbmFsZcW8eSB6YWFrY2VwdG93YcSHIHdhcnVua2kgbGljZW5jamkuPC9wPg0KPHA+DQpUxYJ1bWFjemVuaWUgdyB3ZXJzamkgcG9sc2tpZWogcm9iaW9uZSBqZXN0IHByemV6IHNwb8WCZWN6bm/Fm8SHIENNUyBNUywgb2R3aWVkxbogbmFzIG5hIHBvbHNraW0gZm9ydW0gQ01TIE1TIC0gbnVtZXI5LiBXYXJ0byB3c3BvbW5pZcSHLCDFvGUgdHlsa28gYW5naWVsc2thIHdlcnNqYSBqZXN0IG5hamJhcmR6aWVqIGFrdHVhbG5hLCB6d8WCYXN6Y3phIGRsYSBkZXZlbG9wZXImb2FjdXRlO3cgLSBuaWUgemFwb21uaWpjaWUgbyB0eW0sIHRhbSBzxIUgbGVwc3plIGhlbHB5IDopDQo8L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNTgwNzU4ODkuMTIyMDUxODIwMS4xMjIwNTE4MjAxLjEyMjA1Mzc5ODUuMic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjA1MTgyMDEuMS4xLnV0bWNjbj0ocmVmZXJyYWwpfHV0bWNzcj1wb21vYy5wcGVscHJvLnBsfHV0bWNjdD0vYWRtaW4vZWRpdHRlbXBsYXRlLnBocHx1dG1jbWQ9cmVmZXJyYWwnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My40LjEwLjEyMjA1Mzc5ODUnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></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+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1NlbmhhJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnU2VuaGEgTm92YW1lbnRlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdKJmFhY3V0ZTsgZXhpc3RlIHVtIGdydXBvIGNvbSBlc3RlIG5vbWUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyIGdydXBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudmlhcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdFeGNsdWlyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnVm9jJmVjaXJjOyB0ZW0gY2VydGV6YSBxdWUgZXN0YXMgcyZhdGlsZGU7byBhcyBjb25maWd1cmEmY2NlZGlsOyZvdGlsZGU7ZXMgY29ycmV0YXMgcGFyYSBlc3RlIGdydXBvP1xuRGVzYXRpdmFyIHVtIHByb3ByaWVkYWRlIG4mYXRpbGRlO28gaXImYWFjdXRlOyBkZWxldGFyIG5lbmh1bWEgZW50cmFkYSBuYSB0YWJlbGEgcGFyYSBlc3RlIGdydXBvL3VzdSZhYWN1dGU7cmlvLiBBcGVuYXMgdG9ybmFyJmFhY3V0ZTsgYSBwcm9wcmllZGFkZSBpbmRpc3BvbiZpYWN1dGU7dmVsLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnVGVtIGNlcnRlemEgcXVlIHF1ZXIgZGVsZXRhciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnUmVhbG1lbnRlIHF1ZXIgZGVsZXRhciBlc3RhIHByb3ByaWVkYWRlP1xuRmF6ZXIgaXNzbyB0YW1iJmVhY3V0ZTttIGlyJmFhY3V0ZTsgZGVsZXRhciBhcyBlbnRyYWRhcyBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgaW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYW8gYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhbyBhZGljaW9uYXIgcmVsYWNpb25hbWVudG8gZW50cmUgZ3J1cG9zJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciB1c3UmYWFjdXRlO3JpbyBhbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZGVsZXRhciBwcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgdW0gZW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdTZW0gcGVybWlzcyZhdGlsZGU7byBkZSBlc2NyaXRhIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyJmFjaXJjO21ldHJvcyBpbnYmYWFjdXRlO2xpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBuZW5odW0gZ3J1cG8nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyYXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc3MmYXRpbGRlO28gcmVndWxhciBwYXJhIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRvIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjZXNzbyBOZWdhZG8nOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQWRpY2lvbmFyIEdydXBvJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXIgR3J1cG8nOwokbGFuZ1snYWRkdXNlciddID0gJ0FkaWNpb25hciBVc3UmYWFjdXRlO3Jpbyc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXN1JmFhY3V0ZTtyaW8gZW5jb250cmFkb3MgZW0gY29uZm9ybWlkYWRlIGNvbSBvIGNyaXQmZWFjdXRlO3Jpbyc7CiRsYW5nWydncm91cCddID0gJ0dydXBvJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWNpb25lIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbyBkZSBSZWdpc3Rybyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNb2RlbG8gZGUgc2EmaWFjdXRlO2RhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRlIExvZ2luJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyJmFjaXJjO25jaWFzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VyZW5jaWFtZW50byBkbyBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgcXVlIHVzdSZhYWN1dGU7cmlvcyBsb2d1ZW0gbm8gZnJvbnRlbmQgZG8gc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUCZhYWN1dGU7Z2luYSBkZSBmcmVudGUgcGFkci9hbyc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnJlVhY3V0ZTtsdGltYSBwJmFhY3V0ZTtnaW5hIGFjZXNzYWRhJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ091dHJhIHAmYWFjdXRlO2dpbmE6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRyZSBjb20gbyB0ZXh0byBkYSBpbWFnZW0nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBnR3JvdXBzJnF1b3Q7IG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICZxdW90O3ZpZXd1c2VyJnF1b3Q7PC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj48Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZz48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNjQ0MDMwOTUuMTIyOTk2NTg3Mi4xMjMwODk1NzY2LjEyMzA4OTk2NzUuMyc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjk5NjU4NzIuMS4xLnV0bWNjbj0oZGlyZWN0KXx1dG1jc3I9KGRpcmVjdCl8dXRtY21kPShub25lKSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></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/IFxuQ29sb2NhciB1bWEgcHJvcHJpZWRhZGUgb2ZmIG4mYXRpbGRlO28gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgbmEgdGFiZWxhIGRlIHByb3ByaWVkYWRlcyBkZXNzZSBncnVwby91dGlsaXphZG9yLiBFbGFzIHNpbXBsZXNtZW50ZSBuJmF0aWxkZTtvIGlyJmF0aWxkZTtvIGVzdGFyIGRpc3BvbiZpYWN1dGU7dmVpcy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1RlbSBhIGNlcnRlemEgcXVlIHF1ZXIgcmVtb3ZlciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnVGVtIGNlcnRlemEgZGUgcXVlIGRlc2VqYSBhcGFnYXIgY29tcGxldGFtZW50ZSBlc3RhIHByb3ByaWVkYWRlPyBcbkRlc3RhIGZvcm1hIHRhbWImZWFjdXRlO20gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgZG8gdXRpbGl6YWRvciBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZGljaW9uYXIgcmVsYSZjY2VkaWw7JmF0aWxkZTtvIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGEgYWRpY2lvbmFyIHV0aWxpemFkb3IgYSB1bSBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZXhjbHVpciB1bWEgcHJvcHJpZWRhZGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIHVtIGVuZGVyZSZjY2VkaWw7byBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05lbmh1bWEgcGVybWlzcyZhdGlsZGU7byBwYXJhIGVzY3JldmVyIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW52JmFhY3V0ZTtsaWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ04mYXRpbGRlO28gZm9pIGVuY29udHJhZG8gbmVuaHVtIGdydXBvJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBsaWNhcic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05vbWUgZGUgVXRpbGl6YWRvciBFeHByZXNzJm90aWxkZTtlcyBSZWd1bGFyZXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRlIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2Vzc28gTmVnYWRvJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJybyc7CiRsYW5nWydhZGRncm91cCddID0gJ0FkaWNpb25hciBHcnVwbyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGFyIEdydXBvJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBZGljb25hciBVdGlsaXphZG9yJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVdGlsaXphZG9yZXMgZW5jb250cmFkb3MgZGUgYWNvcmRvIGNvbSBjcml0JmVhY3V0ZTtyaW9zIGRlIGJ1c2NhJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3J1cG8nOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGRlIFJlZ2lzdG8nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9nb3V0JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9naW4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWNpcmM7bmNpYXMnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphZG9yZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VzdCZhdGlsZGU7byBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYW9zIHVzdSZhYWN1dGU7cmlvcyBhY2Vzc2FyICZhZ3JhdmU7IGZyZW50ZSBkbyBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdQcmltZWlyYSBwJmFhY3V0ZTtnaW5hIFBhZHImYXRpbGRlO28nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJyZVYWN1dGU7bHRpbWEgcCZhYWN1dGU7Z2luYSBhY2Vzc2FkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdXRyYSBwJmFhY3V0ZTtnaW5hOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0RpZ2l0ZSBvIHRleHRvIGRhIGltYWdlbSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBhbGxvd3MgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24gb2YgZnJvbnQgZW5kIHVzZXJzIDxpPih1c2VycyB3aG8gaGF2ZSBubyBhZG1pbiBhY2Nlc3NzKTwvaT4uICBJdCBhbGxvd3MgY3JlYXRpb24gb2YgdXNlciBncm91cHMsIGFuZCB1c2VyIGFjY291bnRzIGFuZCBhbGxvd3MgdXNlcnMgdG8gbG9naW4gYW5kIGxvZ291dC4gIGl0IGNhbiBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIEN1c3RvbUNvbnRlbnQgbW9kdWxlIHRvIGRpc3BsYXkgZGlmZmVyZW50IGNvbnRlbnQgdG8gZGlmZmVyZW50IHVzZXJzIG9uY2UgdGhleSBoYXZlIGxvZ2dlZCBpbjwvcD4NCjxoMz5GZWF0dXJlczwvaDM+DQo8dWw+DQo8bGk+PHA+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3VwczwvcD48L2xpPg0KPGxpPjxwPkNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Gb3Jnb3QgcGFzc3dvcmQsIGFuZCBmb3Jnb3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4uLi4gYWxsb3dzIHVzZXJzIHRvIHNldCBhIG5ldyBwYXNzd29yZCwgYW5kL29yIHRvIHJlY292ZXIgdGhlaXIgdXNlcm5hbWUgaWYgdGhleSBjb21wbGV0ZWx5IGZvcmdvdCBsb2dpbiBkZXRhaWxzLjwvcD48L2xpPg0KPGxpPjxwPkhhcyBhbiBleHRlbnNpdmUgQVBJIGZvciBhZGRpbmcgZnVuY3Rpb25hbGl0eTwvcD48L2xpPg0KPC91bD4NCjxoMz5Ib3cgZG8gSSB1c2UgaXQ8L2gzPg0KPHVsPg0KPGxpPjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIGFjY2VzcyBhZG1pbiBwYW5lbCB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdW5kZXIgdGhlICZxdW90O1VzZXJzICZhbXA7IGdHcm91cHMmcXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3Ugc2hvdWxkIGRlZmluZSBwcm9wZXJ0aWVzLiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBFbWFpbCBhZGRyZXNzLCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IHNob3VsZCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFwmIzAzOTtOZXh0XCYjMDM5OzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSZxdW90O25hbWUmcXVvdDs8L2xpPg0KPHA+Rm9ybXM6DQo8dWw+DQogPGxpPjxlbT5sb2dpbjwvZW0+IC0gRGlzcGxheSB0aGUgbG9naW4gZm9ybTwvbGk+DQogPGxpPjxlbT5sb2dvdXQ8L2VtPiAtIERpc3BsYXkgdGhlIGxvZ291dCBmb3JtPC9saT4NCiA8bGk+PGVtPmNoYW5nZXNldHRpbmdzPC9lbT4gLSBEaXNwbGF5IHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZm9ybTwvbGk+DQogPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0uPC9saT4NCjxsaT48ZW0+c2lsZW50PC9lbT4gPSBEaXNwbGF5IG5vdGhpbmcsIGJ1dCBleHBvcnQgcHJvcGVydGllcyBhbmQgb3RoZXIgc21hcnR5IHZhcmlhYmxlcyBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4gIElmIG5vIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGVuIG5vIHZhcmlhYmxlcyBhcmUgZXhwb3J0ZWQuPC9saT4NCjwvdWw+DQo8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXR1cm50bz0mcXVvdDtwYWdlJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4sIGxvZ291dCwgYW5kIGNoYW5nZXNldHRpbmdzIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBjb250YWlucyB0aGUgcGFnZSBpZCBvciBhbGlhcyBvZiBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8sIHdoZW4gdGhlIGZvcm0gaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZDwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG9ubHlfZ3JvdXBzPSZxdW90O2dyb3VwMSwgZ3JvdXAyLCBncm91cDMmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gIEJhc2ljYWxseSBvbmx5IGFsbG93cyB1c2VycyB0byBsb2dpbiBpZiB0aGV5IGJlbG9uZyB0byB0aGF0IHBhcnRpY3VsYXIgZ3JvdXAocykuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9zdHVuX2dyb3VwPSZxdW90O2dyb3VwJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9zdHVzZXJuYW1lIGZvcm0sIHRoaXMgZmVhdHVyZSBzcGVjaWZpZXMgdGhlIGZyb250ZW5kIHVzZXIgZ3JvdXAgdG8gYXNzdW1lIHRodCB1c2VycyBhcmUgbWVtYmVycyBvZi48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9JnF1b3Q7MSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiBoaXMgd2lsbCBkaXNuYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBhY3Rpb249bnVsbDwvbGk+DQo8cD5UaGUgb25seSBwb3NzaWJsZSB2YWx1ZSBmb3IgdGhpcyBwYXJhbWV0ZXIgaXMgJnF1b3Q7dmlld3VzZXImcXVvdDs8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1aWQ9bnVsbDwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIHZpZXd1c2VyIGFjdGlvbi4gIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIHRvIHNwZWNpZnkgd2hpY2ggdXNlciB0byB2aWV3IHRoZSBkZXRhaWxzIG9mLjwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCAmY29weTsgMjAwOCwgUm9iZXJ0IENhbXBiZWwgPGEgaHJlZj0ibWFpbHRvOmNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmciPjxjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnPjwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCihhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uPC9wPg0KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkDQphcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUNCmluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMNCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiANCnNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQpidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCllvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQphbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCk9yIHJlYWQgaXQgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5vbmxpbmU8L2E+PC9wPic7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjgzMTg1MjQ2NzQwMDAzNzYwMC4xMjIxMzk2MjQ5LjEyMjI0NTg4MzQuMTIyMjQ2NzIxMS40Myc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyMjIyMTE2OTIuMzMuOC51dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vaW5kZXgucGhwJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1My4xLjEwLjEyMjI0NjcyMTEnOwo/Pg==]]></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/IFxuIEZhY2FuZCBhY2VzdCBsdWNydSB2ZXRpIHN0ZXJnZSB0b2F0ZSBpbnRyYXJpbGUgZGUgbGEgdXRpbGl6YXRvcmkgcGVudHJ1IGFjZWFzdGEgcHJvcHJpZXRhdGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnN1ZmljaWVudGknOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWyduYW1lJ10gPSAnTnVtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBsYSBhZGF1Z2FyZSByZWxhdGllIGRlIGdydXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbWEgbGEgYWRhdWdhcmUgZ3J1cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlYSB1bnVpIHV0aWxpemF0b3IgaW50ci11biBncnVwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtYSBsYSBzdGVyZ2VyZWEgdW5laSBwcm9wcmlldGF0aSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ051IHMtYSBnYXNpdCBvIGFkcmVzYSBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1Blcm1pc2l1bmkgZGUgc2NyaWVyZSBpbnN1ZmljaWVudGUgcGVudHJ1IGZvbGRlcnVsIGRlc3RpbmF0aWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnZhbGl6aSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ051IGF1IGZvc3QgZ2FzaXRlIGdydXB1cmknOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyZSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cnUnOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc2llIHJlZ3VsYXJhIG51bWUgdXRpbGl6YXRvcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaWVyZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOdW1lIGdydXAnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXMgSW50ZXJ6aXMnOwokbGFuZ1snZXJyb3InXSA9ICdFcm9hcmUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGF1Z2FyZSBncnVwJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXJlIGdydXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkYXVnYXJlIHV0aWxpemF0b3InOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1V0aWxpemF0b3JpIGdhc2l0aSBjYXJlIGNvcmVzcHVuZCBjcml0ZXJpaWxvcic7CiRsYW5nWydncm91cCddID0gJ0dydXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3RhcmUgZ3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBpbnJlZ2lzdHJhcmUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmludGUnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphdG9yaSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdNYW5hZ2VtZW50IHV0aWxpemF0b3IgZnJvbnRlbmQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTZSBwZXJtaXRlIHV0aWxpemF0b3JpbG9yIHNhIHNlIGF1dGVudGlmaWNlIGluIGZyb250ZW5kIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1BhZ2luYSBpbXBsaWNpdGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1VsdGltYSBwYWdpbmEgYWNjZXNhdGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQWx0YSBwYWdpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdWNldGkgdGV4dHVsIGRpbiBpbWFnaW5lJzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPg0KPGgzPkZlYXR1cmVzPC9oMz4NCjx1bD4NCjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+DQo8bGk+PHA+Q2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkZvcmdvdCBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uLiBhbGxvd3MgdXNlcnMgdG8gc2V0IGEgbmV3IHBhc3N3b3JkLCBhbmQvb3IgdG8gcmVjb3ZlciB0aGVpciB1c2VybmFtZSBpZiB0aGV5IGNvbXBsZXRlbHkgZm9yZ290IGxvZ2luIGRldGFpbHMuPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgJnF1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZxdW90OyBtZW51LjwvcD48L2xpPg0KPGxpPg0KPHA+U2Vjb25kbHksIHlvdSBzaG91bGQgZGVmaW5lIHByb3BlcnRpZXMuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIEVtYWlsIGFkZHJlc3MsIGV0Yy48L3A+DQo8cD48Yj5Ob3RlOjwvYj4gWW91IGRvIG5vdCBuZWVkIHRvIGRlZmluZSBwcm9wZXJ0aWVzIGZvciB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdTwvYj4NCjwvbGk+DQo8bGk+PHA+TmV4dCB5b3Ugc2hvdWxkIGNyZWF0ZSBvbmUgb3IgbW9yZSB1c2VyIGdyb3Vwcy4gIFdoZW4geW91IGNyZWF0ZSBhIGdyb3VwLCB5b3UgYXJlIGFza2VkIGZvciBhIGdyb3VwIG5hbWUsIGEgZGVzY3JpcHRpb24gYW5kIHRvIGFzc29jaWF0ZSBwcm9wZXJ0aWVzIHdpdGggdGhhdCBncm91cCwgc3BlY2lmeSB0aGUgcHJvcGVydGllcyBzb3J0IG9yZGVyLCBhbmQgd2V0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkIDxpPihvZmYgaXMgYWxzbyB2YWxpZCk8L2k+PC9wPjwvbGk+DQo8bGk+PHA+PGI+Tm90ZTo8L2I+IEJlZm9yZSBwcm9jZWVkaW5nLCB5b3Ugc2hvdWxkIGVuc3VyZSB0aGF0IHRoZSBwcmVmZXJlbmNlcyBhcmUgc2V0IGNvcnJlY3RseS48L3A+PC9saT4NCjxsaT48cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgXCYjMDM5O05leHRcJiMwMzk7PC9wPg0KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVzdCBvbmUgdXNlcjwvcD48L2xpPg0KPGxpPjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+PC9saT4NCjxsaT48cD5Zb3UgYXJlIG5vdyByZWFkeSB0byBhZGQgdGhlIGZyb250IGVuZCBmdW5jdGlvbmFsaXR5IHRvIHlvdXIgc2l0ZS4gIFRoaXMgaXMgYXMgc2ltcGxlIGFzIGFkZGluZyB0aGUge2Ntc19tb2R1bGUgbW9kdWxlPUZyb250RW5kVXNlcnN9IHRhZyB0byB5b3VyIHBhZ2Ugb3IgdGVtcGxhdGU8L3A+PC9saT4NCjwvdWw+DQo8aDM+U21hcnR5IEZ1bmN0aW9uczwvaDM+DQo8cD5Tb21lIGxpbWl0ZWQgaW50ZXJhY3Rpb24gd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgZGF0YWJhc2UgaXMgcG9zc2libGUgd2l0aCBzbWFydHkgYW5kIHRoZSAkZmV1X3NtYXJ0eSBvYmplY3QuPC9wPg0KPGg0PkZ1bmN0aW9uczo8L2g0Pg0KPHVsPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCRncm91cG5hbWUsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGFuIGFycmF5IG9mIHVzZXJuYW1lcyBhbmQgdXNlcmlkcyBmb3IgYWxsIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAuICBUaGUgb3V0cHV0IGlzIGFzc2lnbmVkIHRvIGEgc21hcnR5IHZhcmlhYmxlIHNwZWNpZmllZCBpbiB0aGUgJnF1b3Q7YXNzaWduJnF1b3Q7IHBhcmFtZXRlci48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKCYjMDM5O21lbWJlcnMmIzAzOTssJiMwMzk7bXltZW1iZXJzJiMwMzk7KX08YnIvPnskbXltZW1iZXJzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGEgbGlzdCBvZiBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgYW5kIGFzc2lnbiB0aGVtIHRvIGEgc21hcnR5IHZhcmlhYmxlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoNSwmIzAzOTt1c2VycHJvcHMmIzAzOTspfTxici8+eyR1c2VycHJvcHN8QHByaW50X3J9PC9jb2RlPjwvcD4NCjwvbGk+DQoNCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWVbLCRhc3NpZ25dKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIHRoZSB0ZXh0IHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIG9wdGlvbiB2YWx1ZSBmb3IgYSBzcGVjaWZpZWQgZHJvcGRvd24gcHJvcGVydHkuPC9saT4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF9kcm9wZG93bl90ZXh0KCYjMDM5O2FnZV9yYW5nZSYjMDM5Oywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wPg0KPC9saT4NCg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfbXVsdGlzZWxlY3RfdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIHNtYXJ0eSBmdW5jdGlvbiByZXR1cm5zIGFuIGFycmF5IG9mIG9wdGlvbiB0ZXh0cyBjb3JyZXNwb25kaW5nIHRvIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9uIHZhbHVlcy48L2xpPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X211bHRpc2VsZWN0X3RleHQoJiMwMzk7ZmF2b3JpdGVfZm9vZHMmIzAzOTssJG9uZXByb3B2YWx1ZSwmIzAzOTtmYXZvcml0ZV9mb29kcyYjMDM5Oyl9PGJyLz57JGZhdm9yaXRlX2Zvb2RzfEBwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPC91bD4NCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcJiMwMzk7cw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly9jYWxndXkxMDAwLmNvbSI+Y2FsZ3V5MTAwMC5jb208L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICZxdW90O3ZpZXd1c2VyJnF1b3Q7PC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkIGFuZCBwcm9wZXJseSBjb25maWd1cmVkLjwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTQ3NzAwOTY1Ni4xMjcyOTEzNzk4LjEyNzQ2MDM3NDUuMTI3NDYyNzYxNi4zJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI3NDYwMzc0Ni4yLjMudXRtY3NyPWdvb2dsZXx1dG1jY249KG9yZ2FuaWMpfHV0bWNtZD1vcmdhbmljfHV0bWN0cj1jbXMgbXMnOwokbGFuZ1sncWNhJ10gPSAnUDAtMTczOTM0OTk3My0xMjcyOTEzNzk4NjgxJzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ9CY0LfQvNC10L3QuNGC0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAn0J3QtSDQstGB0YLRgNC+0LXQvdC90YvQtSDRhNC+0YDQvNGLJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAn0J3QsNC20LzQuNGC0LUg0LfQtNC10YHRjCwg0LXRgdC70Lgg0LLRiyDQt9Cw0LHRi9C70Lgg0YHQstC+0Lkg0LvQvtCz0LjQvSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAn0J3QsNC20LzQuNGC0LUg0LfQtNC10YHRjCwg0LXRgdC70Lgg0LLRiyDQt9Cw0LHRi9C70Lgg0YHQstC+0Lkg0L/QsNGA0L7Qu9GMJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAn0J3QsNC20LzQuNGC0LUg0LfQtNC10YHRjCwg0YfRgtC+0LHRiyDQstGL0LnRgtC4JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICfQndCw0LbQvNC40YLQtSDQt9C00LXRgdGMLCDRh9GC0L7QsdGLINC40LfQvNC10L3QuNGC0Ywg0YHQstC+0Lkg0L/QsNGA0L7Qu9GMINC40LvQuCDQtNGA0YPQs9GD0Y4g0LjQvdGE0L7RgNC80LDRhtC40Y4nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICfQn9C+0YHQvNC+0YLRgNC10YLRjCDRiNCw0LHQu9C+0L0g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2V2ZW50J10gPSAn0KHQvtCx0YvRgtC40LUnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSDRg9Cy0LXQtNC+0LzQu9C10L3QuNGPINC+INGB0L7QsdGL0YLQuNGP0YUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAn0JDQtNGA0LXRgSBlbWFpbCDRg9Cy0LXQtNC+0LzQu9C10L3QuNGPJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICfQqNCw0LHQu9C+0L0g0YPQstC10LTQvtC80LvQtdC90LjRjyDQv9C+IGVtYWlsJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ9Ci0LXQvNCwINGD0LLQtdC00L7QvNC70LXQvdC40Y8g0L/QviBlbWFpbCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ9Cj0LLQtdC00L7QvNC70LXQvdC40Y8g0L/QviBlbWFpbCc7CiRsYW5nWydPbkxvZ2luJ10gPSAn0J3QsCDQstGF0L7QtCc7CiRsYW5nWydPbkxvZ291dCddID0gJ9Cd0LAg0LLRi9GF0L7QtCc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICfQndCwINC40YHRgtC10LrRiNGD0Y4g0YHQtdGB0YHQuNGOJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ9Cd0LAg0LLQvdC+0LLRjCDRgdC+0LfQtNCw0L3QvdC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAn0J3QsCDRg9C00LDQu9C10L3QvdC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnT24gVXNlciBTZXR0aW5ncyBDaGFuZ2VkJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgRGVsZXRlZCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAn0JLQsNGI0LUg0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICfQnNGLINGA0LXQutC+0LzQtdC90LTRg9C10Lwg0JLQsNC8INGB0L7RhdGA0LDQvdC40YLRjCDRjdGC0YMg0LjQvdGE0L7RgNC80LDRhtC40Y4g0LIg0LHQtdC30L7Qv9Cw0YHQvdC+0LwsINC90L4g0LTQvtGB0YLRg9C/0L3QvtC8INC80LXRgdGC0LUuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY29kZSB2ZXJpZmljYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgRGV0YWlscyBUZW1wbGF0ZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgQ29uZmlybSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ9Ce0YjQuNCx0LrQsDog0LHQvtC70LXQtSDRh9C10Lwg0L7QtNC40L0g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINC40LzQtdC10YIg0YPQutCw0LfQsNC90L3Ri9C1INGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAn0J7RiNC40LHQutCwOiDQvdC10LLQvtC30LzQvtC20L3QviDQvdCw0LnRgtC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAn0J7RiNC40LHQutCwOiDQvdC10LLQvtC30LzQvtC20L3QviDQvdCw0LnRgtC4INCz0YDRg9C/0L/RgyDRgSDRjdGC0LjQvCDQuNC80LXQvdC10LwnOwokbGFuZ1sncmVhZG9ubHknXSA9ICfQotC+0LvRjNC60L4g0LTQu9GPINGH0YLQtdC90LjRjyc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAn0JrQu9Cw0YHRgSBVc2VyIE1hbmlwdWxhdG9yICc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICfQktGL0L/QvtC70L3QtdC9INCy0YvRhdC+0LQg0LDQtNC80LjQvdC40YHRgtGA0LDRgtC+0YDQsCc7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAn0J/QvtC60LDQt9Cw0YLRjCDRgtC+0LvRjNC60L4g0LfQsNC70L7Qs9C40L3QtdCy0YjQuNGF0YHRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAn0JLRi9GF0L7QtCDRjdGC0L7Qs9C+INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICfQndCw0YHRgtGA0L7QudC60Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAn0JjRgdGC0L7RgNC40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2V4cG9ydCddID0gJ9Ct0LrRgdC/0L7RgNGCJzsKJGxhbmdbJ2NsZWFyJ10gPSAn0J7Rh9C40YHRgtC60LAnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAn0K3QutGB0L/QvtGA0YIg0LjRgdGC0L7RgNC40Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINCyIEFTQ0lJINC/0L4g0LrRgNCw0LnQvdC10Lkg0LzQtdGA0LUnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICfQntGH0LjRgdGC0LjRgtGMINC40YHRgtC+0YDQuNGOINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQv9C+INC60YDQsNC50L3QtdC5INC80LXRgNC1JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ9CX0LDQsdGL0LvQuCDQstCw0Ygg0LvQvtCz0LjQvT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAn0K3QutGB0L/QvtGA0YIg0L7Qv9GA0LXQtNC10LvQtdC90LjRjyDQs9GA0YPQv9C/0YsgKNC4INGB0LLQvtC50YHRgtCyKSDQsiBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ9Ce0LHRgdC70YPQttC40LLQsNC90LjQtSDQuNGB0YLQvtGA0LjQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sneWVzJ10gPSAn0JTQsCc7CiRsYW5nWydubyddID0gJ9Cd0LXRgic7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICfQsic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiDQkdC10Lcg0L7Qs9GA0LDQvdC40YfQtdC90LjQuSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICfQl9CwINGC0LXQutGD0YnQuNC5INGH0LDRgSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICfQl9CwINGI0LXRgdGC0Ywg0YfQsNGB0L7Qsic7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICfQl9CwINC00LLQtdC90LDQtNGG0LDRgtGMINGH0LDRgdC+0LInOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICfQl9CwINC+0LTQuNC9INC00LXQvdGMJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ9CX0LAg0L7QtNC90YMg0L3QtdC00LXQu9GOJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICfQl9CwINC00LLQtSDQvdC10LTQtdC70LgnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ9CX0LAg0L7QtNC40L0g0LzQtdGB0Y/Rhic7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAn0JfQsCDRgtGA0Lgg0LzQtdGB0Y/RhtCwJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAn0JfQsCDRiNC10YHRgtGMINC80LXRgdGP0YbQtdCyJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ9CX0LAg0L7QtNC40L0g0LPQvtC0JzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ9CT0YDRg9C/0L/QuNGA0L7QstC60LAg0Lgg0YHQvtGA0YLQuNGA0L7QstC60LAnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ9CX0LDQv9C40YHQuCwg0YHQvtC+0YLQstC10YLRgdGC0LLRg9GO0YnQuNC1INC60YDQuNGC0LXRgNC40Y/QvCc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ9Cf0L4g0LDQu9GE0LDQstC40YLRgyDQkC3Qryc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAn0J/QviDQsNC70YTQsNCy0LjRgtGDINCvLdCQJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICfQn9C+INC00LDRgtC1ICjRg9Cx0YvQstCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICfQn9C+INC00LDRgtC1ICjQstC+0LfRgNCw0YHRgtCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICfQn9C+INGC0LjQv9GDINGB0L7QsdGL0YLQuNGPICjRg9Cx0YvQstCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ9Cf0L4g0YLQuNC/0YMg0YHQvtCx0YvRgtC40Y8gKNCy0L7Qt9GA0LDRgdGC0LDQvdC40LUpJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ9Cf0L4gSVAgKNGD0LHRi9Cy0LDQvdC40LUpJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAn0J/QviBJUCAo0LLQvtC30YDQsNGB0YLQsNC90LjQtSknOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ9CY0YHRgtC+0YDQuNGPINC90LUg0L3QsNC50LTQtdC90LAnOwokbGFuZ1sncmVzZXQnXSA9ICfQodCx0YDQvtGB0LjRgtGMJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ9CT0YDRg9C/0L/QuNGA0L7QstCw0YLRjCDQv9C+IElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAn0KTQuNC70YzRgtGAINGC0LjQv9CwINGB0L7QsdGL0YLQuNGPJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ9Cf0L7QutCw0LfRi9Cy0LDRgtGMINGC0L7Qu9GM0LrQviDRgdC+0LHRi9GC0LjRjywg0LrQvtGC0L7RgNGL0LUg0YDQsNC90YzRiNC1INGH0LXQvDonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ9Cb0LjQvNC40YIg0YHRgtGA0LDQvdC40YbRiyc7CiRsYW5nWydmb3InXSA9ICfQtNC70Y8nOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICfQntGC0YfRkdGCINC40YHRgtC+0YDQuNC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd1bmtub3duJ10gPSAn0J3QtdC40LfQstC10YHRgtC90YvQuSc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAg0LDQtNGA0LXRgSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAn0KLQuNC/INGB0L7QsdGL0YLQuNGPJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAn0JTQsNGC0LAnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ9CS0LXRgNC90YPRgtGM0YHRjyc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAn0J7Qv9C10YDQsNGG0LjRjyDQuNC80L/QvtGA0YLQsCDQt9Cw0LLQtdGA0YjQtdC90LAnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAn0J7QsdGA0LDQsdC+0YLQsNC90L4g0YHRgtGA0L7Quic7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAn0J7QsdC90LDRgNGD0LbQtdC90L4g0L7RiNC40LHQvtC6JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICfQlNC+0LHQsNCy0LvQtdC90L4g0LfQsNC/0LjRgdC10LknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ9Cd0LXQstC+0LfQvNC+0LbQvdC+INC90LDQudGC0Lgg0YHQstC+0LnRgdGC0LLQsCDQtNC70Y8g0LPRgNGD0L/Qv9GLICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAn0L3QtdGCINC+0YLQstC10YLQsCDQvtGCIFNNVFAg0YHQtdGA0LLQtdGA0LAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAn0KPQutCw0LfQsNC90L3Ri9C5INGE0LDQudC7ICglcykg0L3QtSDQvtCx0L3QsNGA0YPQttC10L0nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ9C90LXQstC10YDQvdC+0LUg0LfQvdCw0YfQtdC90LjQtSDQstGL0L/QsNC00LDRjtGJ0LXQs9C+INGB0L/QuNGB0LrQsCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ9Cf0YDQtdCy0YvRiNC10L3QuNC1INC80LDQutGB0LjQvNCw0LvRjNC90L7QuSDQtNC70LjQvdGLINC/0L7Qu9GPICVzICc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ9Ce0YjQuNCx0LrQsCDQuNC80L/QvtGA0YLQsCAo0YHRgtGA0L7QutCwICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAn0J3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFxcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG9cJ3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICfQmNC80L/QvtGA0YIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10Lkg0LIg0Y3RgtGDINCz0YDRg9C/0L/Rgyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICfQktGF0L7QtNC90L7QuSDRhNCw0LnQuyBDU1YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICfQktGF0L7QtNC90L7QuSDRhNCw0LnQuyBYTUwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAn0K3QutGB0L/QvtGA0YIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAn0JjQvNC/0L7RgNGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ9Ce0YfQuNGB0YLQutCwJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnSW1hZ2UgRGVzdGluYXRpb24gUGF0aCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0Nhbm5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2Vycyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVGhpcyB1c2VyIGlzIGFscmVhZHkgbG9nZ2VkIGluJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RoZSB0ZXh0IGZyb20gdGhlIGltYWdlIHdhcyBub3QgZW50ZXJlZCBjb3JyZWN0bHknOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0FsbG93IHVzZXJzIHRvIGxvZ2luIG1vcmUgdGhhbiBvbmNlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdJbWFnZSBGaWxlIEV4dGVuc2lvbnMgdGhhdCBVc2VycyBhbGxvd2VkIHRvIHVwbG9hZCc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+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+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnQSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyByZXN1bHRzIHJldHVybmVkIGZyb20gY3N2IGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5ndGggb2YgdXNlcm5hbWUgZmllbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHBhc3N3b3JkIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IHBhc3N3b3JkIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggdXNlcm5hbWUgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW52YWxpZCBFbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2UgY291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXNlciBBZGRlZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ1VzZXIgRGVsZXRlZCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wZXJ0eSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsdWUgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsIGFkZHJlc3MgYWxyZWFkeSB1c2VkJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQWxsb3cgZHVwbGljYXRlIGVtYWlscyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBhZGRyZXNzIGlzIHVzZXJuYW1lJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+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/0L7Qu9GPJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ9CU0LDQu9GM0YjQtSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAn0KDQsNC30LzQtdGAJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ9CU0LvQuNC90LAnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4o0YHQuNC80LLQvtC70L7QsiDQsiDQstCy0L7QtNC1INGC0LXQutGB0YLQsCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAn0KLQuNC/JzsKJGxhbmdbJ3R5cGUnXSA9ICfQotC40L8nOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICfQn9C+0LvQtSDRgdGC0LDRgtGD0YHQsCc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ9Ci0LXQutGB0YInOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ2ltYWdlJ10gPSAn0JjQt9C+0LHRgNCw0LbQtdC90LjQtSc7CiRsYW5nWydlbWFpbCddID0gJ9CQ0LTRgNC10YEgZW1haWwnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICfQntCx0LvQsNGB0YLRjCDRgtC10LrRgdGC0LAnOwokbGFuZ1snZHJvcGRvd24nXSA9ICfQodC/0LjRgdC+0LonOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICfQlNC+0LHRgNC+INC/0L7QttCw0LvQvtCy0LDRgtGMJzsKJGxhbmdbJ2xvZ291dCddID0gJ9Cy0YvRhdC+0LQnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ9CY0YHQv9C+0LvRjNC30YPQudGC0LUg0Y3RgtC+INC90LDQt9Cy0LDQvdC40LUg0LPRgNGD0L/Qv9GLJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ9CY0LfQvNC10L3QuNGC0Ywg0LzQvtC4INC90LDRgdGC0YDQvtC50LrQuCc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ9CS0YXQvtC0INC90LUg0YPQtNCw0LvRgdGPIC0g0J3QtdCy0LXRgNC90L7QtSDQuNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINC40LvQuCDQv9Cw0YDQvtC70Yw/JzsKJGxhbmdbJ2xvZ2luJ10gPSAn0LLRhdC+0LQnOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICfQmNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ9CQ0LTRgNC10YEgZW1haWwnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAn0J/QsNGA0L7Qu9GMJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAn0JfQsNC/0L7QvNC90LjRgtGMINC80LXQvdGPINC90LAg0Y3RgtC+0Lwg0LrQvtC80L/RjNGO0YLQtdGA0LUnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICfQoNC10LPQuNGB0YLRgNCw0YbQuNGPJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAn0JfQsNCx0YvQu9C4INCy0LDRiCDQv9Cw0YDQvtC70Yw/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ9CX0LDQsdGL0LvQuCDQstCw0Ygg0LvQvtCz0LjQvT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICfQn9C+INGD0LzQvtC70YfQsNC90LjRjic7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdDb3VsZCBub3QgZmluZCBpbmZvcm1hdGlvbiBmb3IgdGhpcyB1c2VyJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdUaGF0IHVzZXJuYW1lICglcykgaXMgYWxyZWFkeSBpbiB1c2UnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ9CY0YHQv9C+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/QvtGB0LvQtdC00L3QuNC5INC00L7RgdGC0YPQvyDQuiDRgdGC0YDQsNC90LjRhtC1JzsKJGxhbmdbJ290aGVycGFnZSddID0gJ9CU0YDRg9Cz0LDRjyDRgdGC0YDQsNC90LjRhtCwOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ9CS0LLQtdC00LjRgtC1INC60L7QtCDRgSDQutCw0YDRgtC40L3QutC4JzsKJGxhbmdbJ2hlbHAnXSA9ICc8aDM+V2hhdCBEb2VzIFRoaXMgRG8/PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPg0KPGgzPkZlYXR1cmVzPC9oMz4NCjx1bD4NCjxsaT48cD5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkdyb3VwIFByb3BlcnRpZXMuICBZb3UgY2FuIGFzayBmb3IgZGlmZmVyZW50IGluZm9ybWF0aW9uIGZyb20gbWVtYmVycyBvZiBkaWZmZXJlbnQgZ3JvdXBzPC9wPjwvbGk+DQo8bGk+PHA+Q2FwYWJsZSBvZiBoYW5kbGluZyBodW5kcmVkcyBvZiB1c2VyczwvcD48L2xpPg0KPGxpPjxwPkZvcmdvdCBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uLiBhbGxvd3MgdXNlcnMgdG8gc2V0IGEgbmV3IHBhc3N3b3JkLCBhbmQvb3IgdG8gcmVjb3ZlciB0aGVpciB1c2VybmFtZSBpZiB0aGV5IGNvbXBsZXRlbHkgZm9yZ290IGxvZ2luIGRldGFpbHMuPC9wPjwvbGk+DQo8bGk+PHA+SGFzIGFuIGV4dGVuc2l2ZSBBUEkgZm9yIGFkZGluZyBmdW5jdGlvbmFsaXR5PC9wPjwvbGk+DQo8L3VsPg0KPGgzPkhvdyBkbyBJIHVzZSBpdDwvaDM+DQo8dWw+DQo8bGk+PHA+QWZ0ZXIgaW5zdGFsbGF0aW9uIHlvdSBjYW4gYWNjZXNzIGFkbWluIHBhbmVsIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSB1bmRlciB0aGUgIlVzZXJzICYgZ0dyb3VwcyIgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3Ugc2hvdWxkIGRlZmluZSBwcm9wZXJ0aWVzLiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBFbWFpbCBhZGRyZXNzLCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IHNob3VsZCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFxcXCdOZXh0XFxcJzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlNtYXJ0eSBGdW5jdGlvbnM8L2gzPg0KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4NCjxoND5GdW5jdGlvbnM6PC9oND4NCjx1bD4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgkZ3JvdXBuYW1lLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhbiBhcnJheSBvZiB1c2VybmFtZXMgYW5kIHVzZXJpZHMgZm9yIGFsbCB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwLiAgVGhlIG91dHB1dCBpcyBhc3NpZ25lZCB0byBhIHNtYXJ0eSB2YXJpYWJsZSBzcGVjaWZpZWQgaW4gdGhlICJhc3NpZ24iIHBhcmFtZXRlci48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcnNfYnlfZ3JvdXBuYW1lKFwnbWVtYmVyc1wnLFwnbXltZW1iZXJzXCcpfTxici8+eyRteW1lbWJlcnN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKDUsXCd1c2VycHJvcHNcJyl9PGJyLz57JHVzZXJwcm9wc3xwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPC91bD4NCg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+VGhpcyBtb2R1bGUgZG9lcyBub3QgaW5jbHVkZSBjb21tZXJjaWFsIHN1cHBvcnQuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPg0KPHVsPg0KPGxpPkZvciB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtb2R1bGUsIEZBUXMsIG9yIHRvIGZpbGUgYSBCdWcgUmVwb3J0IG9yIGJ1eSBjb21tZXJjaWFsIHN1cHBvcnQsIHBsZWFzZSB2aXNpdCBjYWxndXlcXFwncw0KbW9kdWxlIGhvbWVwYWdlIGF0IDxhIGhyZWY9Imh0dHA6Ly90ZWNoY29tLmR5bmRucy5vcmciPnRlY2hjb20uZHluZG5zLm9yZzwvYT4uPC9saT4NCjxsaT5BZGRpdGlvbmFsIGRpc2N1c3Npb24gb2YgdGhpcyBtb2R1bGUgbWF5IGFsc28gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9Imh0dHA6Ly9mb3J1bS5jbXNtYWRlc2ltcGxlLm9yZyI+Q01TIE1hZGUgU2ltcGxlIEZvcnVtczwvYT4uPC9saT4NCjxsaT5UaGUgYXV0aG9yLCBjYWxndXkxMDAwLCBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIDxhIGhyZWY9ImlyYzovL2lyYy5mcmVlbm9kZS5uZXQvI2NtcyI+Q01TIElSQyBDaGFubmVsPC9hPi48L2xpPg0KPGxpPkxhc3RseSwgeW91IG1heSBoYXZlIHNvbWUgc3VjY2VzcyBlbWFpbGluZyB0aGUgYXV0aG9yIGRpcmVjdGx5LjwvbGk+ICANCjwvdWw+DQo8aDM+UGFyYW1ldGVyczwvaDM+DQo8dWw+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBmb3JtPSJuYW1lIjwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQogPGxpPjxlbT5sb3N0dXNlcm5hbWU8L2VtPiAtIERpc3BsYXkgdGhlIGxvc3QgdXNlcm5hbWUgZm9ybS48L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSJwYWdlIjwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0iZ3JvdXAxLCBncm91cDIsIGdyb3VwMyI8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gIEJhc2ljYWxseSBvbmx5IGFsbG93cyB1c2VycyB0byBsb2dpbiBpZiB0aGV5IGJlbG9uZyB0byB0aGF0IHBhcnRpY3VsYXIgZ3JvdXAocykuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9zdHVuX2dyb3VwPSJncm91cCI8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb3N0dXNlcm5hbWUgZm9ybSwgdGhpcyBmZWF0dXJlIHNwZWNpZmllcyB0aGUgZnJvbnRlbmQgdXNlciBncm91cCB0byBhc3N1bWUgdGh0IHVzZXJzIGFyZSBtZW1iZXJzIG9mLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0iMSI8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICJ2aWV3dXNlciI8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB1aWQ9bnVsbDwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIHZpZXd1c2VyIGFjdGlvbi4gIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIHRvIHNwZWNpZnkgd2hpY2ggdXNlciB0byB2aWV3IHRoZSBkZXRhaWxzIG9mLjwvcD4NCjwvdWw+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQNCm9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5SZXF1aXJlbWVudHM8L2gzPg0KPHA+SW4gb3JkZXIgdG8gaW1wbGVtZW50IHRoZSBmb3Jnb3R0ZW4gcGFzc3dvcmQgZnVuY3Rpb25hbGl0eSwgdGhpcyBtb2R1bGUgcmVxdWlyZXMgdGhlIENNU01haWxlciBtb2R1bGUgdG8gYmUgcHJldmlvdXNseSBpbnN0YWxsZWQ8L3A+DQo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4NCjxwPkNvcHlyaWdodCDCqSAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTM0ODcxOTQ4NzM3Mzg1NDIwMC4xMjE5MDY3NTE0LjEyMjE5ODkxMzcuMTIyMjIwMDIzNy42JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTIyMDcyMDMzNi40LjIudXRtY3NyPW1lcmtsZS5ydXx1dG1jY249KHJlZmVycmFsKXx1dG1jbWQ9cmVmZXJyYWx8dXRtY2N0PS9hZG1pbi9pbmRleC5waHAnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sk_SK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICfFvWlhZG5lJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnT2RzdHImYWFjdXRlO25pxaUgdcW+dmF0ZcS+YSc7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyJmFhY3V0ZTtjaWEgdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgU2V0dGluZ3MnOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0Rpc3BsYXkgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3MgYXJlIG9ubHkgYXBwbGljYWJsZSBpZiB1c2luZyB0aGUgJnF1b3Q7QnVpbHRpbiBBdXRoZW50aWNhdGlvbiZxdW90Oy4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byByZXF1ZXN0IGxvc3QgbG9naW4gaW5mb3JtYXRpb24sIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIGEgcGFzc3dvcmQgcmVzZXQsIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IHRoZWlyIHVzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCBjaGFuZ2UnOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0F1dGhlbnRpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnQnVpbHRpbiBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdGRVUgU3RhbmRhcmQgQXV0aGVudGljYXRpb24nOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdBdXRoZW50aWNhdGlvbiBNb2R1bGUvTWV0aG9kJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgc3VwcG9ydHMgdXNpbmcgYWx0ZXJuYXRlIGF1dGhlbnRpY2F0aW9uIG1ldGhvZHMsIHdpdGggdmFyeWluZyBjYXBhYmlsaXRpZXMuICBTb21lIGZ1bmN0aW9uYWxpdHkgd2lsbCBub3QgZnVuY3Rpb24gb3IgYmUgZGlzYWJsZWQgd2hlbiBub3QgdXNpbmcgdGhlIGJ1aWx0IGluIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1RoZSB2YWx1ZSBzcGVjaWZpZWQgZm9yICVzIGlzIGFscmVhZHkgaW4gdXNlIGJ5IGFub3RoZXIgdXNlcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlxdWUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgKCVzKSBpcyBub3QgdW5pcXVlJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdGb3JjZSB2YWx1ZXMgb2YgdGhpcyBwcm9wZXJ0eSB0byBiZSB1bmlxdWUgYWNyb3NzIGFsbCB1c2VyIGFjY291bnRzJzsKJGxhbmdbJ2hlbHBfcmV0dXJubGFzdCddID0gJ1VzZWQgd2l0aCB0aGUgbG9naW4gYW5kIGxvZ291dCBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgaWYgc3BlY2lmaWVkIHdpbGwgaW5kaWNhdGUgdGhhdCB0aGUgdXNlciBzaG91bGQgYmUgcmV0dXJuZWQgdG8gdGhlIHBhZ2UgKGJ5IHVybCkgdGhhdCB0aGUgdXNlciB3YXMgdmlld2luZyBiZWZvcmUgdGhlIGFjdGlvbiBvY2N1cnJlZC4gIFRoaXMgcGFyYW1ldGVyIHdpbGwgb3ZlcnJpZGUgdGhlIHJlZGlyZWN0IHByZWZlcmVuY2VzLCBhbmQgdGhlIHJldHVybnRvIHBhcmFtZXRlci4nOwokbGFuZ1snaGVscF9ub2lubGluZSddID0gJ1VzZWQgd2l0aCBvbmUgb2YgdGhlIGZvcm1zLCB0aGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgdGhhdCB0aGUgZm9ybXMgc2hvdWxkIG5vdCBiZSBwbGFjZWQgaW5saW5lLCBpbnN0ZWFkIHRoZSByZXN1bHRpbmcgb3V0cHV0IGFmdGVyIGZvcm0gc3VibWlzc2lvbiB3aWxsIHJlcGxhY2UgdGhlIGRlZmF1bHQgY29udGVudCBibG9jayc7CiRsYW5nWyd0aXRsZV9yZXNldF9zZXNzaW9uJ10gPSAnTG9naW4gU2Vzc2lvbiBUaW1lb3V0IFdhcm5pbmcnOwokbGFuZ1snbXNnX3Jlc2V0X3Nlc3Npb24nXSA9ICdZb3VyIGxvZ2luIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlLCBwbGVhc2UgY2xpY2sgJnF1b3Q7JnF1b3Q7T2smcXVvdDsgdG8gY29uZmlybSB5b3VyIGFjdGl2aXR5IG9uIHRoaXMgd2Vic2l0ZS4nOwokbGFuZ1snb2snXSA9ICdPayc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdSZXNldCBTZXNzaW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdG9ycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjdCBvbmUgb3IgbW9yZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgdG8gdmlldyB0aGlzIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0EgZ3JvdXAgbXVzdCBiZSBzZWxlY3RlZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCBZZWFyJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnRW5kIFllYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGh1bWJuYWlsIFNpemUnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ21vbnRocyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnRGVmYXVsdCB1c2VyIGV4cGlyeSBwZXJpb2QnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUHJvcGVydHkgU2V0dGluZ3MnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdSZWRpcmVjdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBhbmQgQ29va2llIFNldHRpbmdzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmllbGQgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGluZyBVc2VyJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpY2sgaGVyZSB0byBzaWduIG91dCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpY2sgaGVyZSB0byBhZGp1c3QgeW91ciBwYXNzd29yZCBvciBvdGhlciBpbmZvcm1hdGlvbic7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1ZpZXcgVXNlciBUZW1wbGF0ZSc7CiRsYW5nWydldmVudCddID0gJ1VkYWxvc8WlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgRXZlbnQgTm90aWZpY2F0aW9uJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIFN1YmplY3QnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBOb3RpZmljYXRpb25zJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdPbiBMb2dpbic7CiRsYW5nWydPbkxvZ291dCddID0gJ09uIExvZ291dCc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdPbiBTZXNzaW9uIEV4cGlyeSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdPbiBOZXcgVXNlciBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09uIFVzZXIgRGVsZXRlZCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPbiBVc2VyIFNldHRpbmdzIENoYW5nZWQnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgQ3JlYXRlZCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBEZWxldGVkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVGhlIGxvc3QgbG9naW4gZGV0YWlscyBmdW5jdGlvbmFsaXR5IGhhcyBzdWNjZXNzZnVsbHkgY29tcGxldGVkLiAgV2UgaGF2ZSBmb3VuZCBhIHVuaXF1ZSB1c2VybmFtZSB0aGF0IG1hdGNoZXMgdGhlIGRldGFpbHMgeW91IGVudGVyZWQuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdWYSZzY2Fyb247ZSB1xb4maWFjdXRlO3ZhdGXEvnNrZSBtZW5vIGplJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBEZXRhaWxzIFRlbXBsYXRlJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBDb25maXJtIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3I6IE1vcmUgdGhhbiBvbmUgdXNlciBhY2NvdW50IG1hdGNoZWQgdGhlIHByb3BlcnRpZXMgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIG1hdGNoaW5nIHVzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0NoeWJhOiBOZWJvbGEgbiZhYWN1dGU7amRlbiZhYWN1dGU7IHNrdXBpbmEgcyB0JnlhY3V0ZTttdG8gbWVub20nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdJYmEgbmEgxI0maWFjdXRlO3RhbmllJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdUcmllZGEgVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdPZGhsJmFhY3V0ZTtzZW5pZSBhZG1pbmlzdHImYWFjdXRlO3Rvcm9tJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdVayZhYWN1dGU7emHFpSBpYmEgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnT2RobCZhYWN1dGU7c2nFpSB0b2h0byB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnVmxhc25vc3RpIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnVnnEjWlzdGnFpSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRvdmHFpSBoaXN0Jm9hY3V0ZTtyaXUgZG8gQVNDSUknOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdWecSNaXN0acWlIGhpc3Qmb2FjdXRlO3JpdSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnWmFidWRsaSBzdGUgdmEmc2Nhcm9uO2UgcHJpaGxhc292YWNpZSAmdWFjdXRlO2RhamU/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydG92YcWlIHNrdXBpbnkgYSBpY2ggdmxhc3Rub3N0JmlhY3V0ZTsgZG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICcmVWFjdXRlO2Ryxb5iYSBoaXN0Jm9hY3V0ZTtyaWUgdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ3llcyddID0gJyZBYWN1dGU7bm8nOwokbGFuZ1snbm8nXSA9ICdOaWUnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAneic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBCZXogbGltaXR1ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJzEgaG9kaW51IHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICc2IGhvZCZpYWN1dGU7biBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnMTIgaG9kJmlhY3V0ZTtuIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0plZGVuIGRlbiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnSmVkZW4gdCZ5YWN1dGU7xb5kZcWIIHN0YXJlJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdmEgdCZ5YWN1dGU7xb5kbmUgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdKZWRlbiBtZXNpYWMgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdUcmkgbWVzaWFjZSBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2VzxaUgbWVzaWFjb3Ygc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0plZGVuIHJvayBzdGFyJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnWm9za3Vwb3ZhbmllIGEgdHJpZWRlbmllJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdaJmFhY3V0ZTt6bmFteSBvZHBvdmVkYWomdWFjdXRlO2NlIHBvZG1pZW5rZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ1pvc3R1cG5lIHBvZMS+YSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdWem9zdHVwbmUgcG9kxL5hIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlO2hvIG1lbmEnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ1pvc3R1cG5lIHBvZMS+YSBkJmFhY3V0ZTt0dW11JzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgZCZhYWN1dGU7dHVtdSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdab3N0dXBuZSBwb2TEvmEgdHlwdSB1ZGFsb3N0JmlhY3V0ZTsnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdWem9zdHVwbmUgcG9kxL5hIHR5cHUgdWRhbG9zdCZpYWN1dGU7JzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1pvc3R1cG5lIHBvZMS+YSBJUCBhZHJlc3knOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdWem9zdHVwbmUgcG9kxL5hIElQIGFkcmVzeSc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnSGlzdCZvYWN1dGU7cmlhIG5lbiZhYWN1dGU7amRlbiZhYWN1dGU7JzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXRuJnVhY3V0ZTvFpSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdab3NrdXBpxaUgcG9kxL5hIElQIGFkcmllcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRyb3ZhbmllIHBvZMS+YSB0eXBvdiB1ZGFsb3N0JmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnWm9icmF6acWlIGliYSBha2NpZSwga3RvciZlYWN1dGU7IHN1IG1lbmVqIGFrbzonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1N0ciZhYWN1dGU7bmtvdmFjJmlhY3V0ZTsgbGltaXQnOwokbGFuZ1snZm9yJ10gPSAncHJlJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnWiZhYWN1dGU7em5hbSB1xb4maWFjdXRlO3ZhdGXEvm92IGhpc3Qmb2FjdXRlO3JpZSc7CiRsYW5nWyd1bmtub3duJ10gPSAnTmV6biZhYWN1dGU7bWknOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIGFkcmVzYSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVHlwIHVkYWxvc3RpJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdOJmFhY3V0ZTt2cmF0JzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdJbXBvcnQga29tcGxldG4meWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdTcHJhY292YW4meWFjdXRlO2NoIHJpYWRrb3YnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0NoeWJ5JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdQcmlkYW4meWFjdXRlO2NoIHomYWFjdXRlO3puYW1vdic7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTmVuJmFhY3V0ZTtqZGVuJmVhY3V0ZTsgdmxhc3Rub3N0JmlhY3V0ZTsgcHJlIHNrdXBpbnUgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdCZXogb2RvenZ5IFNNVFAgc2VydmVyYSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdGaWxlIHNwZWNpZmllZCAoJXMpIGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnQ2h5Ym4mYWFjdXRlOyBob2Rub3RhIHYmeWFjdXRlO2Jlcm92JmVhY3V0ZTtobyBwb8S+YSBhbGVibyB2aWFjdiZ5YWN1dGU7YmVyb3YmZWFjdXRlO2hvIHBvxL5hICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnUG9sZSAlcyBwcmVzaWFobG8gbWF4aW0mYWFjdXRlO2xueSBwb8SNZXQgem5ha292JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnQ2h5YmEgcHJpIGltcG9ydGUgIChyaWFkb2sgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnQ291bGQgbm90IGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbnMgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdDb3VsZCBub3QgZmluZCBhIGNvbHVtbiB0byBtYXRjaCB0aGUgcmVxdWlyZWQgZmllbGQgJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdDb3VsZCBub3QgZmluZCBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdUaGUgZmlsZSBzcGVjaWZpZWQgZm9yIGltcG9ydCBpcyBub3QgaW4gdGhlIGNvcnJlY3QgZm9ybWF0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdOaWUgamUgbW/Fvm4mZWFjdXRlOyBvdHZvcmnFpSBzJnVhY3V0ZTtib3InOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0b3ZhxaUgdcW+JmlhY3V0ZTt2YXRlxL5vdiBkbyB0ZWp0byBza3VwaW55JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ1Zsb8W+acWlIENTViBzJnVhY3V0ZTtib3InOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdWbG/FvmnFpSBYTUwgcyZ1YWN1dGU7Ym9yJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydG92YcWlIHXFviZpYWN1dGU7dmF0ZcS+b3YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0b3ZhxaUgdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdWecSNaXN0acWlJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQ2VzdGEgayBvYnImYWFjdXRlO3prdSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0Nhbm5vdCBkZWxldGUgYSBncm91cCB0aGF0IHN0aWxsIGhhcyB1c2Vycyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVGhpcyB1c2VyIGlzIGFscmVhZHkgbG9nZ2VkIGluJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RoZSB0ZXh0IGZyb20gdGhlIGltYWdlIHdhcyBub3QgZW50ZXJlZCBjb3JyZWN0bHknOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0FsbG93IHVzZXJzIHRvIGxvZ2luIG1vcmUgdGhhbiBvbmNlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdJbWFnZSBGaWxlIEV4dGVuc2lvbnMgdGhhdCBVc2VycyBhbGxvd2VkIHRvIHVwbG9hZCc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+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+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIE5hc2xlZHVqJnVhY3V0ZTtjZSBtYWtyYSBtJm9jaXJjO8W+dSBiecWlIHBvdcW+aXQmZWFjdXRlOyB2IHQmeWFjdXRlO2NodG8gcG9saWFjaDogeyR1c2VybmFtZX0uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdVcHJhdnRlIHRvdG8gcG9sZSBwcmUgcmVzZXRvdmFuaWUgaGVzbGEgdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdVcHJhdnRlIHRvdG8gcG9sZSBwcmUgcmVzZXRvdmFuaWUgaGVzbGEgdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ1XFviZpYWN1dGU7dmF0ZcS+IHMgdCZ5YWN1dGU7bXRvIHXFviZpYWN1dGU7dmF0ZcS+c2smeWFjdXRlO20gbWVub20gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0NTViBleHBvcnQgbmV2ciZhYWN1dGU7dGlsIMW+aWFkbmUgdiZ5YWN1dGU7c2xlZGt5JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0TEusW+a2EgcG/EvmEgcHJlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0TEusW+a2EgcG/EvmEgcHJlIGhlc2xvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IGTEusW+a2EgaGVzbGEgbmllIGplIG5lcGxhdG4mYWFjdXRlOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCBkxLrFvmthIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlO2hvIG1lbmEgbmllIGplIG5lcGxhdG4mYWFjdXRlOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnTmVwbGF0biZhYWN1dGU7IGUtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EgcHJlIHRlbnRvICZ1YWN1dGU7xI1ldCBuZWJvbGkgbiZhYWN1dGU7amRlbiZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibCZlYWN1dGU7bSBzIG5hc3RhdmVuJmlhY3V0ZTttIHXFviZpYWN1dGU7dmF0ZcS+c2smeWFjdXRlO2NoIGluZm9ybSZhYWN1dGU7Y2lpJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgbmFzdGF2ZW4maWFjdXRlO20gdmxhc25vc3RpJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVxb4maWFjdXRlO3ZhdGXEviBwcmlkYWwgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVxb4maWFjdXRlO3ZhdGXEviB2eW1hemFsICB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdWbGFzbm9zxaUnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ0hvZG5vdGEgKHJlZ3VsJmFhY3V0ZTtybnkgdiZ5YWN1dGU7cmF6KSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm92YW5pZTogVGlldG8gcG9saWEgb3ZwbHluaWEgdmXEvmtvc8WlIHZzdHVwbiZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsgZm9ybXVsJmFhY3V0ZTtyb3YuIFpuJmlhY3V0ZTvFvmVuJmlhY3V0ZTttIHRvaHRvIMSNJmlhY3V0ZTtzbGEgbmEgZXhpc3R1aiZ1YWN1dGU7Y2VqIHN0ciZhYWN1dGU7bmtlIG5lZG9wb3J1xI11amVtZS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1N0ZSBzaSBpc3QmeWFjdXRlOywgxb5lIGNoY2V0ZSB6bWVuacWlIG5hc3RhdmVuaWEgbW9kdWx1Pyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EgdcW+IGplIHBvdcW+JmlhY3V0ZTt2YW4mYWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdQb3XFvmnFpSBjb29raWUgcHJlIHphcGFtJmF1bWw7dGFuaWUgcHJpaGxhc292YWMmaWFjdXRlO2NoICZ1YWN1dGU7ZGFqb3YnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdNZW5vIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Bvdm9sacWlIGR1cGxpY2l0biZlYWN1dGU7IGUtbWFpbHknOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EgamUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8gJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ1NrJnVhY3V0ZTsmc2Nhcm9uO2HFpSB1ZHLFvmHFpSAgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdiBwb21vY291IGNvb2tpZXMgPGVtPihjb29raWUgcmVzZXR1amUgYWt0aXZpdHUgbmEgc3RyJmFhY3V0ZTtua2FjaCk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcocG92b2xpxaUgdmlhYyB1xb4maWFjdXRlO3ZhdGXEvm92IHMgcm92bmFrb3UgZS1tYWlsb3ZvdSBhZHJlc291KSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnUG/FvmnFpSBvcHImYWFjdXRlO3ZuZW5pYSAmc2Nhcm9uO3BlY2lmaWNrJmVhY3V0ZTsgcHJlIEZyb250LWVuZCBVc2VyIG1vZHVsPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoWnZ5xI1ham5lIHMmdWFjdXRlOyBwcmUgRkVVc2VycyBtb2R1bCAgcG91xb4maWFjdXRlO3ZhbiZlYWN1dGU7IHJvdm5hayZlYWN1dGU7IG9wciZhYWN1dGU7dm5lbmlhIGFrbyBwcmUgYWRtaW5pc3RyYcSNbiZlYWN1dGU7IHJvemhyYW5pZS4gUG9raWHEviB2eWJlcmV0ZSB0JnVhY3V0ZTt0byBtb8W+bm9zxaUsIGJ1ZCZ1YWN1dGU7IHByZSBGRVVzZXNycyBwb3XFvml0JmVhY3V0ZTsgdmxhc3RuJmVhY3V0ZTsgbmFzdGF2ZW5pYS4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOYWhyYXQmeWFjdXRlOyBzJnVhY3V0ZTtib3IgbmVib2wgbiZhYWN1dGU7amRlbiZ5YWN1dGU7IChpbnRlcm4mYWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdQcmkgbmFociZhYWN1dGU7dmFuJmlhY3V0ZTsgcyZ1YWN1dGU7Ym9ydSBkbyZzY2Fyb247bG8gayBjaHliZS4gU2t1c3RlIHRvIHpub3Z1JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05ldmxvxb5pbGkgc3RlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ05ldmxvxb5pbGkgc3RlIGUtbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZXZsb8W+aWxpIHN0ZSBoZXNsbyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIHByaWhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVQT1pPUk5FTklFPC9iPiB6bWVuYSBzdCZhYWN1dGU7dmFqJnVhY3V0ZTtjaWNoIHZsYXNub3N0JmlhY3V0ZTssIGt0b3ImZWFjdXRlOyBzJnVhY3V0ZTsgcHJpcmFkZW4mZWFjdXRlOyBza3VwaW4mYWFjdXRlO20gbSZvY2lyYzvFvnUgc3Amb2NpcmM7c29iacWlIHByb2JsJmVhY3V0ZTtteSA8aT4ocHJlZG92JnNjYXJvbjtldGsmeWFjdXRlO20gcHJpIHNrciZhYWN1dGU7dGVuJmlhY3V0ZTsgbmlla3RvciZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTspPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUJmFhY3V0ZTt0byBmdW5rY2lhIG5lcHJhY3VqZSBwb2Qgd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTmV2eXR2JmFhY3V0ZTtyYWp0ZSB2bGFzbm9zxaUgcHJlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vLCBwcmV0b8W+ZSB0byB1xb4gamUgcyZ1YWN1dGU7xI1hc8Wlb3UgbW9kdWx1IEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydG92YcWlIHXFviZpYWN1dGU7dmF0ZcS+b3YgZG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydG9ydG92YcWlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydG92YcWlJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyJmFhY3V0ZTtjaWEnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdVcHJhdmnFpSB2bGFzbm9zxaUnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdWeXR2b3JlbiZlYWN1dGU7JzsKJGxhbmdbJ3NvcnRieSddID0gJ1pvcmFkacWlIHBvZMS+YSc7CiRsYW5nWydzb3J0J10gPSAnWm9yYWRlbmllJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSB2byB2eWJyYW5lai92eWJyYW4meWFjdXRlO2NoIHNrdXBpbiZhYWN1dGU7Y2gnOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnT2JtZWR6acWlIHYmeWFjdXRlO3NsZWRreSBkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdOaWUgamUgbW/Fvm4mZWFjdXRlOyBuJmFhY3V0ZTtqc8WlIHBvbG/Fvmt1IGUtbWFpbCBwcmUgdG9odG8gdcW+JmlhY3V0ZTt2YXRlxL5hLiBLb250YWt0dWp0ZSBhZG1pbmlzdHImYWFjdXRlO3RvcmEgd2VidS4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIGZvcm11bCZhYWN1dGU7ciB6bWVueSBoZXNsYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBzdHImYWFjdXRlO25reSBwcmUgZm9ybXVsJmFhY3V0ZTtyIHptZW55IG5hc3RhdmVuaWEnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcG8gcHJpaGwmYWFjdXRlO3NlbmkgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIG9kaGwmYWFjdXRlO3NlbmllIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnUG9yYWRpZSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdQb8SNZXQgdcW+JmlhY3V0ZTt2YXRlbG/Evm92LCBrdG9yJnlhY3V0ZTsgbW9tZW50JmFhY3V0ZTtsbmUgxb5pYWRhaiZ1YWN1dGU7IG8gcmVzZXQgaGVzbGE6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnT2RzdHJhbmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIHQmeWFjdXRlO8W+ZGXFiCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIG1lc2lhYyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVmxvxb5lbiZ5YWN1dGU7IGJvbCBuZXNwciZhYWN1dGU7dm55IGsmb2FjdXRlO2QsIHNrJnVhY3V0ZTtzdGUgdG8gem5vdnUnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0RvxI1hc24meWFjdXRlOyBrJm9hY3V0ZTtkIHByZSB2YSZzY2Fyb247ZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyBuZWJvbG8gbiZhYWN1dGU7amRlbiZlYWN1dGU7IHYgZGF0YWImYWFjdXRlO3plJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHZlcmlmaWsmYWFjdXRlO2NpdSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHphYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1Z5IGFsZWJvIG5pZWt0byBpbiZ5YWN1dGU7IHBvxb5pYWRhbCBvIHJlc2V0b3ZhbmllIGhlc2xhIHByZSB0ZW50byAmdWFjdXRlO8SNZXQuIMSOYWwmc2Nhcm9uO2llIGluJnNjYXJvbjt0cnVrY2llIG4mYWFjdXRlO2pkZXRlIHZvIHN2b2plaiBlLW1haWxvdmVqIHNjaHImYWFjdXRlO25reS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1Byb2JsZW0gcyBkYXRhYiZhYWN1dGU7em92JzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1QmdWFjdXRlO3RvIHNwciZhYWN1dGU7dnUgc3RlIGRvc3RhbGksIHByZXRvxb5lIG5pZWt0byBwb8W+aWFkYWwgbyBvYm5vdmVuaWUgemFidWRudXQmZWFjdXRlO2hvIGhlc2xhIGsgdiZhYWN1dGU7JnNjYXJvbjttdSAmdWFjdXRlO8SNdHUgbmEgbmEmc2Nhcm9uO2VqIHN0ciZhYWN1dGU7bmtlLiBQb2tpYcS+IGplIHRvIHRhaywgcG9zdHVwdWp0ZSBwb2TEvmEgbmnFviZzY2Fyb247aWUgdXZlZGVuJnlhY3V0ZTtjaCBpbiZzY2Fyb247dHJ1a2NpJmlhY3V0ZTsuIFBva2lhxL4gbmV0dSZzY2Fyb247JmlhY3V0ZTt0ZSBvIMSNbyBpZGUsIHRhayB0ZW50byBlLW1haWwgcHJvcyZpYWN1dGU7bSBpZ25vcnVqdGUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnSyZvYWN1dGU7ZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOYXNsZWR1aiZ1YWN1dGU7Y2kgayZvYWN1dGU7ZCBib2wgbiZhYWN1dGU7aG9kbmUgdnlnZW5lcm92YW4meWFjdXRlOyBwcmUgb3ZlcmVuaWUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gJnVhY3V0ZTvEjXR1LiBQbyBrbGlrbnV0JmlhY3V0ZTsgbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmUgbmEgc3RyJmFhY3V0ZTtua3UsIGtkZSB6YWQmYWFjdXRlO3RlIHRlbnRvIGsmb2FjdXRlO2QuUG9sZSBidWRlIHByZWR2eXBsbmVuJmVhY3V0ZTsuIFBva2lhxL4gbmllLCBrJm9hY3V0ZTtkIGplIHR1Oic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0tsaWtudXQmaWFjdXRlO20gbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmV0ZSBuYSBzdHImYWFjdXRlO25rdSwga2RlIG0mb2NpcmM7xb5ldGUgemFkYcWlIHZ5JnNjYXJvbjtpZSB1dmVkZW4meWFjdXRlOyBrJm9hY3V0ZTtkIGEgb2Jub3ZpxaUgdmEmc2Nhcm9uO2UgaGVzbG8nOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdOZW4mYWFjdXRlO2pkZW4meWFjdXRlOyBDTVNNYWlsZXIgbW9kdWwnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnTmEgZS1tYWlsICVzIGJvbGkgemFzbGFuJmVhY3V0ZTsgaW4mc2Nhcm9uO3RydWtjaWUgcHJlIG9ibm92ZW5pZSBoZXNsYS4gxI5ha3VqZW1lJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUG9raWHEviBzdGUgemFidWRsaSBhbGVibyBzdHJhdGlsaSBzdm9qZWhlc2xvLCB0YWsgcHJvcyZpYWN1dGU7bSB2eXBsxYh0ZSBzdm9qZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyBhIGUtbWFpbG9tIGRvc3RhbmVuZSBpbiZzY2Fyb247dHJ1a2NpZSBha28gcG9rcmHEjW92YcWlIHByaSBvYm5vdmVuJmlhY3V0ZTsgaGVzbGEnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJpIHN0cmF0ZSBoZXNsYSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJpIHN0cmF0ZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1ZsYXNub3PFpSAlcyBuZW4mYWFjdXRlO2pkZW4mYWFjdXRlOyc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnVmxhc25vc8WlIG4mYWFjdXRlO2pkZW4mYWFjdXRlOyc7CiRsYW5nWydhZGRwcm9wJ10gPSAnUHJpZGHFpSB2bGFzbm9zxaUnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ1BvdmlubiZlYWN1dGU7IHBvbGUgKCVzKSBib2xvIHByJmFhY3V0ZTt6ZG5lJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnWmFkYWp0ZSBub3YmZWFjdXRlOyBoZXNsbyc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1ByYXZkZXBvZG9ibmUgbmllIHN0ZSBwcmlobCZhYWN1dGU7c2VuJnlhY3V0ZTsnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyJmFhY3V0ZTtjaWEnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdUZW50byAmdWFjdXRlO8SNZXQgdnlwciZzY2Fyb247YWwnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ05lc3ByJmFhY3V0ZTt2bnkgZm9ybSZhYWN1dGU7dCBlLW1haWxvdmVqIGFkcmVzeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ05lcGxhdG4meWFjdXRlOyBkJmFhY3V0ZTt0dW0gZXhwaXImYWFjdXRlO2NpZSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnQ2h5YmEgcHJpIG5hc3RhdmVuJmlhY3V0ZTsgdmxhc25vc3QmaWFjdXRlOyAlcyBwcmUgdcW+JmlhY3V0ZTt2YXRlxL5hICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnTmVwbGFudCZlYWN1dGU7IElEIHNrdXBpbnkgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdabmHEjWtvdmHEjSBza3J5dCZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0ZhcmJhIHNrcnl0JmVhY3V0ZTtobyBwb8S+YSc7CiRsYW5nWydoaWRkZW4nXSA9ICdTa3J5dCZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdWbGFzdG5vc8WlIHMgdCZ5YWN1dGU7bXRvIG1lbm9tIHXFviBib2xhIG5hZGVmaW5vdmFuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVib2xpIG5hZGVmaW5vdmFuJmVhY3V0ZTsgxb5pYWRuZSB2bGFzdG5vc3RpJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVib2xpIHZ5YnJhbiZlYWN1dGU7IHZsYXNub3N0aSBwcmUgdCZ1YWN1dGU7dG8gc2t1cGludSc7CiRsYW5nWydub2dyb3VwcyddID0gJ8W9aWFkbmUgc2t1cGlueSBuaWUgcyZ1YWN1dGU7IG5hZGVmaW5vdmFuJmVhY3V0ZTsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdTa3VwaW55IG4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnSmUgbnV0JmVhY3V0ZTsgcHJpcmFkZW5pZSBhc3BvxYggayBqZWRuZWogc2t1cGluZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnVnnFvmFkb3ZhxaUgcHJpcmFkZW5pZSBhc3BvxYggZG8gamVkbmVqIHNrdXBpbnknOwokbGFuZ1snYmFjayddID0gJ1NwJmF1bWw7xaUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGplIHBvdmlubiZhYWN1dGU7IHBvbG/FvmthJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdPem5hxI1pxaUgcG92aW5uJmVhY3V0ZTsgcG9saWEgcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdadiZ5YWN1dGU7cmF6bmnFpSBwb8W+YWRvdmFuJmVhY3V0ZTsgcG9saWEnOwokbGFuZ1snbmV4dCddID0gJ8SOYWwmc2Nhcm9uO2llJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2t1cGluYSBzIHQmeWFjdXRlO210byBuJmFhY3V0ZTt6dm9tIHXFviBleGlzdHVqZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1Z5xb5hZG92YW4mYWFjdXRlOyc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZvbGl0ZcS+biZhYWN1dGU7JzsKJGxhbmdbJ29mZiddID0gJ1Z5cG4mdWFjdXRlO8WlJzsKJGxhbmdbJ3NpemUnXSA9ICdWZcS+a29zxaUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihtYXhpbSZhYWN1dGU7bG5hIHJvem1lciB2IHB4IHByZSBqZWRlbiB6IHJvem1lcm92IC0gdiZ5YWN1dGU7JnNjYXJvbjtrYSwgJnNjYXJvbjsmaWFjdXRlO3JrYSknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRMS6xb5rYSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihwb8SNZXQgem5ha292IHYgdGV4dG92b20gcG9saSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ1BvbG/Fvmt5IHJvemJhxL5vdmFjaWVobyBtZW51IG9kZGVsZW4mZWFjdXRlOyBub3YmeWFjdXRlO21pIHJpYWRrYW1pLic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdWZXJlam4meWFjdXRlOyBuJmFhY3V0ZTt6b3YgcG/EvmEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXYgcG/EvmEnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnUCZ5YWN1dGU7dGHFpSBwcmkgc3RyYXRlPGJyLz5Vxb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWyd0ZXh0J10gPSAnVGV4dCc7CiRsYW5nWydjaGVja2JveCddID0gJ1phJnNjYXJvbjtrcnQmYWFjdXRlO3ZhY2llIHBvbCZpYWN1dGU7xI1rbyc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ1ZpYWN2JnlhY3V0ZTtiZXJvdiZlYWN1dGU7IHBvbGUnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnU2t1cGluYSByYWRpbyBwcnZrb3YnOwokbGFuZ1snaW1hZ2UnXSA9ICdPYnImYWFjdXRlO3pvayc7CiRsYW5nWydlbWFpbCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dG92JmFhY3V0ZTsgb2JsYXPFpSc7CiRsYW5nWydkcm9wZG93biddID0gJ1JvemJhxL5vdmFjaWUgbWVudSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1ZpdGFqJzsKJGxhbmdbJ2xvZ291dCddID0gJ09kaGwmYWFjdXRlO3NpxaUnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ1BvdcW+acWlIHRvaG8gbWVubyBza3VwaW55JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1VwcmF2IG1vamUgbmFzdGF2ZW5pYSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0NoeWJhIHByaSBwcmlobCZhYWN1dGU7c2VuJmlhY3V0ZTsgLSBuZXNwciZhYWN1dGU7dm5lIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vIGFsZWJvIGhlc2xvPyc7CiRsYW5nWydsb2dpbiddID0gJ1ByaWhsJmFhY3V0ZTtzacWlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTiZhYWN1dGU7em92IHByaWhsYXNvdmFjaWVobyBwb2wmaWFjdXRlO8SNa2EnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnSGVzbG8nOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdaYXBhbSZhdW1sO3RhaiBzaSBtYSBuYSB0b210byBwb8SNJmlhY3V0ZTt0YcSNaSc7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJvdmHFpSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1phYnVkbnV0JmVhY3V0ZTsgcHJpaGxhc292YWNpZSAmdWFjdXRlO2RhamU/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnViZ5YWN1dGU7Y2hvZHppZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOZWJvbGkgbiZhYWN1dGU7amRlbiZlYWN1dGU7IMW+aWFkbmUgaW5mb3JtJmFhY3V0ZTtjaWUgbyB1xb4maWFjdXRlO3ZhdGXEvm92aSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVG90byB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgKCVzKSB1xb4gbmlla2RvIHBvdcW+JmlhY3V0ZTt2YSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnUG91xb5pxaUgU01UUCBwcmUgdmFsaWQmYWFjdXRlO2NpdSBlLW1haWxvdiZ5YWN1dGU7Y2ggYWRyaWVzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbSZhYWN1dGU7bG5hIGTEusW+a2EgaGVzbGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthIGhlc2xhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2VrdW5keSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1BvdcW+acWlIGNvb2tpZXMgbmEgdWRyxb5hbmllIHByaWhsJmFhY3V0ZTtzZW5pYSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1Bvdm9sacWlIGUtbWFpbG92JnVhY3V0ZTsgcmVnaXN0ciZhYWN1dGU7Y2l1JzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdWJnlhY3V0ZTtjaG9kemlhIHNrdXBpbnkgcHJlIG5vdiZlYWN1dGU7aG8gdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSB6bWVudSBuYXN0YXZlbiZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdIZXNsYSBzYSBuZXpob2R1aiZ1YWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05lc3ByJmFhY3V0ZTt2bmUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnTmVzcHImYWFjdXRlO3ZuZSBoZXNsbyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1VwcmF2acWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd2YWxpZCddID0gJ1NwciZhYWN1dGU7dm5lJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snc3RhdHVzJ10gPSAnU3Rhdic7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUZW50byB1xb4maWFjdXRlO3ZhdGXEviBuaWUgamUgcHJpcmFkZW4meWFjdXRlOyBkbyDFvmlhZG5laiBza3VwaW55JzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICfFvWlhZG5lIHZsYXNub3N0aSc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ1Bva3VzIG8gaW1wb3J0IGR1cGxpY2l0biZ5YWN1dGU7Y2ggdmxhc3Rub3N0JmlhY3V0ZTsnOwokbGFuZ1sndmFsdWUnXSA9ICdIb2Rub3R5JzsKJGxhbmdbJ2dyb3VwcyddID0gJ1NrdXBpbnknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1ZsYXNub3N0aSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ04mYWFjdXRlO3pvdiB2bGFzdG5vc3RpJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ0hvZG5vdGEgdmxhc25vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ1ByaWRhxaUnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpxaUnOwokbGFuZ1snZXhwaXJlcyddID0gJ1BsYW5vc8WlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJyZTY2Fyb247cGVjaWZpa3VqdGUgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB0JnlhY3V0ZTvFvmRlxYgnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB0JnlhY3V0ZTvFvmRuZSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG1lc2lhYyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtZXNpYWNlJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1lc2lhY292JzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bCAmdWFjdXRlO3NwZSZzY2Fyb247bmUgbmFpbiZzY2Fyb247dGFsb3ZhbiZ5YWN1dGU7LjxiciAvPiBOZXphYnVkbml0ZSBuYXN0YXZpxaUgcHImYWFjdXRlO3ZhICAmYW1wO3F1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzJmFtcDtxdW90Oy4nOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdIZXNsbyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1pub3ZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdTa3VwaW5hIHMgdCZ5YWN1dGU7bXRvIG4mYWFjdXRlO3p2b20gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1VwcmF2acWlIHNrdXBpbnUnOwokbGFuZ1snc3VibWl0J10gPSAnT2Rvc2xhxaUnOwokbGFuZ1snY2FuY2VsJ10gPSAnWnJ1JnNjYXJvbjtpxaUnOwokbGFuZ1snZGVsZXRlJ10gPSAnT2RzdHImYWFjdXRlO25pxaUnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTssIMW+ZSB0b3RvIGplIHNwciZhYWN1dGU7dm5lIG5hc3RhdmVuaWVwcmUgdCZ1YWN1dGU7dG8gc2t1cGludT9cbiBWeXBudXQmaWFjdXRlO20gdmxhc3Rub3N0JmlhY3V0ZTsgc2EgbmVvZHN0ciZhYWN1dGU7bmlhIMW+aWFkbmUgJnVhY3V0ZTtkYWplIHZvIHZsYXNub3N0aWFjaCB1xb4maWFjdXRlO3ZhdGXEvmEvc2t1cGlueS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1N0ZSBzaSBpc3QmeWFjdXRlOywgxb5lIGNoY2V0ZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHNrdXBpbnU/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdOYW96YWogY2hjZXRlIGtvbXBsZXRuZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHZsYXNub3PFpT9cblZ5bWHFvnUgc2EgdCZ5YWN1dGU7bSBhaiB2JnNjYXJvbjtldGt5IGhvZG5vdHkgdGVqdG8gdmxhc25vc3RpIHUgdcW+JmlhY3V0ZTt2YXRlxL5vY2guJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lZG9zdGF0b8SNbiZlYWN1dGU7IHBhcmFtZXRyZSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdNZW5vJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmwmZWFjdXRlO20gcHJpIHByaWQmYWFjdXRlO3ZhbiZpYWN1dGU7IHZsYXNub3N0JmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgb2RzdHImYWFjdXRlO25lbiZpYWN1dGU7bSB2bGFzbm9zdCZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsgZS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0JleiBwciZhYWN1dGU7diBuYSB6YXBpc292YW5pZSBkbyBjaWXEvm92JmVhY3V0ZTtobyBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0NoeWJuJmVhY3V0ZTsgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnU2t1cGluYSBuZWJvbGEgcHJpZGFuJmFhY3V0ZTsnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdQb3XFvmnFpSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ1JlZ3VsJmFhY3V0ZTtybnkgdiZ5YWN1dGU7cmF6IHByZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ1BvcGlzJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ04mYWFjdXRlO3pvdiBza3VwaW55JzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1ByJmlhY3V0ZTtzdHVwIHphbWlldG51dCZ5YWN1dGU7JzsKJGxhbmdbJ2Vycm9yJ10gPSAnQ2h5YmEnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdQcmlkYcWlIHNrdXBpbnUnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRvdmHFpSBza3VwaW51JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdQcmlkYcWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW+JmlhY3V0ZTt2YXRlbGlhIHNwbMWIdWomdWFjdXRlO2NpIGtyaXQmZWFjdXRlO3JpYSB2eWjEvmFkJmFhY3V0ZTt2YW5pYSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWeWJyYcWlIHNrdXBpbnUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSByZWdpc3RyJmFhY3V0ZTtjaXUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbiZhYWN1dGU7IHByZSBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcHJpaGwmYWFjdXRlO3NlbmllJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZHZvxL5ieSc7CiRsYW5nWyd1c2VycyddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQgKHNwciZhYWN1dGU7dmEgdcW+JmlhY3V0ZTt2YXRlxL5vdiknOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hvZHppYSBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU3RyJmFhY3V0ZTtua2EgcyBwb3NsZWRuJnlhY3V0ZTttIHByJmlhY3V0ZTtzdHVwb20nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSW4mYWFjdXRlOyBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVmxvxb50ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a2EnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBnR3JvdXBzJnF1b3Q7IG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KPGgzPlJlcXVpcmVtZW50czwvaDM+DQo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZDwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA1LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBob3RtYWlsLmNvbSI+PGNhbGd1eTEwMDBAaG90bWFpbC5jb20+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4nOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1hJ10gPSAnMTU2ODYxMzUzLjE0MjMxMDk3MjUuMTI4MDI1OTAxNi4xMjgyOTg3NzE0LjEyODI5OTExMTcuMTgnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjgyOTg4MzM5LjE3LjE1LnV0bWNzcj1mZWVkYnVybmVyfHV0bWNjbj1GZWVkOiBjbXNtYWRlc2ltcGxlL2Jsb2cgKENNUyBNYWRlIFNpbXBsZSl8dXRtY21kPWZlZWQnOwokbGFuZ1sncWNhJ10gPSAnUDAtNzQ4NDM5MTMxLTEyODAyNTkwMTc1MjQnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></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/EjWxhbm92JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRG92b2xpIHByaWphdm8gdXBvcmFibmlrb3YgcHJla28gc3BsZXRuZSBzdHJhbmknOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1ByaXZ6ZXRhIHZzdG9wbmEgc3RyYW4nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1phZG5qYSBkb3N0b3BhbmEgc3RyYW4nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnRHJ1Z2Egc3RyYW46ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVnBpJnNjYXJvbjtpdGUgYmVzZWRpbG8gcyBzbGlrZSc7CiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGlzIG1vZHVsZSBhbGxvd3MgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24gb2YgZnJvbnQgZW5kIHVzZXJzIDxpPih1c2VycyB3aG8gaGF2ZSBubyBhZG1pbiBhY2Nlc3NzKTwvaT4uICBJdCBhbGxvd3MgY3JlYXRpb24gb2YgdXNlciBncm91cHMsIGFuZCB1c2VyIGFjY291bnRzIGFuZCBhbGxvd3MgdXNlcnMgdG8gbG9naW4gYW5kIGxvZ291dC4gIGl0IGNhbiBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIEN1c3RvbUNvbnRlbnQgbW9kdWxlIHRvIGRpc3BsYXkgZGlmZmVyZW50IGNvbnRlbnQgdG8gZGlmZmVyZW50IHVzZXJzIG9uY2UgdGhleSBoYXZlIGxvZ2dlZCBpbjwvcD4NCjxoMz5GZWF0dXJlczwvaDM+DQo8dWw+DQo8bGk+PHA+VXNlciBhY2NvdW50IGV4cGlyYXRpb24uICBZb3UgY2FuIGNyZWF0ZSB0ZW1wb3JhcnkgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3VwczwvcD48L2xpPg0KPGxpPjxwPkNhcGFibGUgb2YgaGFuZGxpbmcgaHVuZHJlZHMgb2YgdXNlcnM8L3A+PC9saT4NCjxsaT48cD5Gb3Jnb3QgcGFzc3dvcmQsIGFuZCBmb3Jnb3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4uLi4gYWxsb3dzIHVzZXJzIHRvIHNldCBhIG5ldyBwYXNzd29yZCwgYW5kL29yIHRvIHJlY292ZXIgdGhlaXIgdXNlcm5hbWUgaWYgdGhleSBjb21wbGV0ZWx5IGZvcmdvdCBsb2dpbiBkZXRhaWxzLjwvcD48L2xpPg0KPGxpPjxwPkhhcyBhbiBleHRlbnNpdmUgQVBJIGZvciBhZGRpbmcgZnVuY3Rpb25hbGl0eTwvcD48L2xpPg0KPC91bD4NCjxoMz5Ib3cgZG8gSSB1c2UgaXQ8L2gzPg0KPHVsPg0KPGxpPjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIGFjY2VzcyBhZG1pbiBwYW5lbCB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgdW5kZXIgdGhlICZxdW90O1VzZXJzICZhbXA7IGdHcm91cHMmcXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3Ugc2hvdWxkIGRlZmluZSBwcm9wZXJ0aWVzLiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBFbWFpbCBhZGRyZXNzLCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IHNob3VsZCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFwmIzAzOTtOZXh0XCYjMDM5OzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlNtYXJ0eSBGdW5jdGlvbnM8L2gzPg0KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4NCjxoND5GdW5jdGlvbnM6PC9oND4NCjx1bD4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgkZ3JvdXBuYW1lLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhbiBhcnJheSBvZiB1c2VybmFtZXMgYW5kIHVzZXJpZHMgZm9yIGFsbCB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwLiAgVGhlIG91dHB1dCBpcyBhc3NpZ25lZCB0byBhIHNtYXJ0eSB2YXJpYWJsZSBzcGVjaWZpZWQgaW4gdGhlICZxdW90O2Fzc2lnbiZxdW90OyBwYXJhbWV0ZXIuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgmIzAzOTttZW1iZXJzJiMwMzk7LCYjMDM5O215bWVtYmVycyYjMDM5Oyl9PGJyLz57JG15bWVtYmVyc3xwcmludF9yfTwvY29kZT48L3A+DQo8L2xpPg0KPGxpPjxzdHJvbmc+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbil9PC9jb2RlPjwvc3Ryb25nPg0KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byBleHRyYWN0IGEgbGlzdCBvZiBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgYW5kIGFzc2lnbiB0aGVtIHRvIGEgc21hcnR5IHZhcmlhYmxlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoNSwmIzAzOTt1c2VycHJvcHMmIzAzOTspfTxici8+eyR1c2VycHJvcHN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICZxdW90O3ZpZXd1c2VyJnF1b3Q7PC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsIDxhIGhyZWY9Im1haWx0bzpjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnIj48Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZz48L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My45ODI5OTc3OTcuMTI0MTAyMzEwNy4xMjQxMDI1Nzc0LjEyNDEwMjgyNzUuMyc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI0MTAyMzEwNy4xLjEudXRtY2NuPShkaXJlY3QpfHV0bWNzcj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></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/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgdGEgYm9ydCBkZW4gaCZhdW1sO3IgZWdlbnNrYXBlbj9cbkdlbm9tIGF0dCB0YSBib3J0IGRlbiBmJm91bWw7cnN2aW5uZXIgYWxsYSBldmVudHVlbGxhIGFudiZhdW1sO25kYXJ1cHBnaWZ0ZXIgbWVkIGRlbiBoJmF1bWw7ciBlZ2Vuc2thcGVuLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdPdGlsbHImYXVtbDtja2xpZ2EgcGFyYW1ldHJhcic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGVuIGVnZW5za2FwIGYmb3VtbDtyIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ0V0dCBmZWwgdXBwc3RvZCBkJmFyaW5nOyBlbiByZWxhdGlvbiB0aWxsIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGF0dCBsJmF1bWw7Z2dhIHRpbGwgYW52JmF1bWw7bmRhcmUgdGlsbCBncnVwcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBtZWQgYXR0IHRhIGJvcnQgZW4gZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z29uIGUtcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnSW5nYSBza3JpdnImYXVtbDt0dGlnaGV0ZXIgdGlsbCBtJmFyaW5nO2xtYXBwZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ09naWx0aWdhIHBhcmFtZXRyYXInOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z3JhIGdydXBwZXInOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdWZXJrc3QmYXVtbDtsbCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGomYXVtbDtydCB1dHRyeWNrIGYmb3VtbDtyIGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cHBuYW1uJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1RpbGx0ciZhdW1sO2RlIG5la2FzJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRmVsJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTCZhdW1sO2dnIHRpbGwgZ3J1cHAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRlcmEgZ3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0wmYXVtbDtnZyB0aWxsIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdBbnYmYXVtbDtuZGFyZSBzb20gJm91bWw7dmVyZW5zc3QmYXVtbDttbWVyIG1lZCBrcml0ZXJpZXQnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwcCc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYXVtbDtsaiBncnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHV0bG9nZ25pbmcnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIGlubG9nZ25pbmcnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndXNlcnMnXSA9ICdBbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdIYW50ZXJpbmcgYXYgRnJvbnRlbmQgVXNlcic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBsb2dnYSBpbiB2aWEgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0Ymb3VtbDtydmFsZCBmJm91bWw7cnN0YXNpZGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1NlbmFzdCBsJmF1bWw7c3RhIHNpZGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5uYW4gc2lkYTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTa3JpdiBpbiB0ZXh0ZW4gaSBiaWxkZW4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmYW1wO3F1b3Q7VXNlcnMgJmFtcDsgZ0dyb3VwcyZhbXA7cXVvdDsgbWVudS48L3A+PC9saT4NCjxsaT4NCjxwPlNlY29uZGx5LCB5b3Ugc2hvdWxkIGRlZmluZSBwcm9wZXJ0aWVzLiAgUHJvcGVydGllcyBhcmUgZXNzZW50aWFsbHkgZmllbGQgZGVmaW5pdGlvbnMsIGhlcmUgeW91IHNwZWNpZnkgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24geW91IHdhbnQgdG8gZ2F0aGVyLCBhbmQgbGltaXRzLiBpLmU6ICBOYW1lLCBBZ2UsIENpdHksIFN0YXRlLCBDb3VudHJ5LCBFbWFpbCBhZGRyZXNzLCBldGMuPC9wPg0KPHA+PGI+Tm90ZTo8L2I+IFlvdSBkbyBub3QgbmVlZCB0byBkZWZpbmUgcHJvcGVydGllcyBmb3IgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0aGVzZSB3aWxsIGJlIHByb3ZpZGVkIGZvciB5b3U8L2I+DQo8L2xpPg0KPGxpPjxwPk5leHQgeW91IHNob3VsZCBjcmVhdGUgb25lIG9yIG1vcmUgdXNlciBncm91cHMuICBXaGVuIHlvdSBjcmVhdGUgYSBncm91cCwgeW91IGFyZSBhc2tlZCBmb3IgYSBncm91cCBuYW1lLCBhIGRlc2NyaXB0aW9uIGFuZCB0byBhc3NvY2lhdGUgcHJvcGVydGllcyB3aXRoIHRoYXQgZ3JvdXAsIHNwZWNpZnkgdGhlIHByb3BlcnRpZXMgc29ydCBvcmRlciwgYW5kIHdldGhlciBpdCBpcyBhbiBvcHRpb25hbCwgcmVxdWlyZWQsIG9yIGhpZGRlbiBmaWVsZCA8aT4ob2ZmIGlzIGFsc28gdmFsaWQpPC9pPjwvcD48L2xpPg0KPGxpPjxwPjxiPk5vdGU6PC9iPiBCZWZvcmUgcHJvY2VlZGluZywgeW91IHNob3VsZCBlbnN1cmUgdGhhdCB0aGUgcHJlZmVyZW5jZXMgYXJlIHNldCBjb3JyZWN0bHkuPC9wPjwvbGk+DQo8bGk+PHA+VGhpcmRseSB5b3Ugc2hvdWxkIGNyZWF0ZSBzb21lIHVzZXJzLiAgQWRkaW5nIHVzZXJzIGlzIGEgdHdvIHN0ZXAgcHJvY2Vzcy4gIFdoZW4gY3JlYXRpbmcgYSB1c2VyIHlvdSBhcmUgYXNrZWQgZm9yIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQsIGFuZCBhbiBleHBpcnkgZGF0ZSBmb3IgdGhhdCB1c2VyLiAgWW91IHRoZW4gbXVzdCBzZWxlY3QgdGhlIGdyb3VwcyB0aGF0IHRoYXQgdXNlciBpcyBhIG1lbWJlciBvZiwgYW5kIGNsaWNrIFwmIzAzOTtOZXh0XCYjMDM5OzwvcD4NCjxwPjxlbT5Ob3RlOiA8L2VtPlRoaXMgaXMgYSBsYWJvdXIgaW50ZW5zaXZlIGFuZCBib3JpbmcgcHJvY2VzcywgaXQgaXMgZWFzaWVyIHRvIGxldCB1c2VycyByZWdpc3RlciB0aGVtc2VsdmVzIDxlbT4oU2VlIHRoZSBTZWxmUmVnaXN0cmF0aW9uIE1vZHVsZSk8L2VtPiwgYW5kIHRoZW4geW91IGNhbiBlZGl0IHRoZWlyIGdyb3VwIGluZm9ybWF0aW9uLiAgYnV0IGZvciB0ZXN0aW5nIHB1cnBvc2VzLCBwbGVhc2UgY3JlYXRlIGF0IGxlc3Qgb25lIHVzZXI8L3A+PC9saT4NCjxsaT48cD5MYXN0bHksIGFmdGVyIHRoZSBzeXN0ZW0gaGFzIGRldGVybWluZWQgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBmaWVsZHMgdG8gYmUgcHJlc2VudGVkIGZvciB0aGF0IHVzZXIsIHlvdSBhcmUgcHJlc2VudGVkIHdpdGggYSBmb3JtIGFza2luZyBmb3IgYWxsIG9mIHRoZSByZXF1aXJlZCB1c2VyIGluZm9ybWF0aW9uLiAgQ29tcGxldGUgdGhpcyBmb3JtIHRvIGNvbXBsZXRlIHRoZSB1c2VyIGFkZGl0aW9uPC9wPjwvbGk+DQo8bGk+PHA+WW91IGFyZSBub3cgcmVhZHkgdG8gYWRkIHRoZSBmcm9udCBlbmQgZnVuY3Rpb25hbGl0eSB0byB5b3VyIHNpdGUuICBUaGlzIGlzIGFzIHNpbXBsZSBhcyBhZGRpbmcgdGhlIHtjbXNfbW9kdWxlIG1vZHVsZT1Gcm9udEVuZFVzZXJzfSB0YWcgdG8geW91ciBwYWdlIG9yIHRlbXBsYXRlPC9wPjwvbGk+DQo8L3VsPg0KPGgzPlNtYXJ0eSBGdW5jdGlvbnM8L2gzPg0KPHA+U29tZSBsaW1pdGVkIGludGVyYWN0aW9uIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGRhdGFiYXNlIGlzIHBvc3NpYmxlIHdpdGggc21hcnR5IGFuZCB0aGUgJGZldV9zbWFydHkgb2JqZWN0LjwvcD4NCjxoND5GdW5jdGlvbnM6PC9oND4NCjx1bD4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC4gIFRoZSBvdXRwdXQgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmYW1wO3F1b3Q7YXNzaWduJmFtcDtxdW90OyBwYXJhbWV0ZXIuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2Vyc19ieV9ncm91cG5hbWUoJiMwMzk7bWVtYmVycyYjMDM5OywmIzAzOTtteW1lbWJlcnMmIzAzOTspfTxici8+eyRteW1lbWJlcnN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYSBsaXN0IG9mIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgdXNlciBhbmQgYXNzaWduIHRoZW0gdG8gYSBzbWFydHkgdmFyaWFibGUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuPC9wPg0KPHA+RXhhbXBsZTo8YnIvPjxjb2RlPnskZmV1X3NtYXJ0eS0mYW1wO2d0O2dldF91c2VyX3Byb3BlcnRpZXMoNSwmIzAzOTt1c2VycHJvcHMmIzAzOTspfTxici8+eyR1c2VycHJvcHN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjwvdWw+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPlRoaXMgbW9kdWxlIGRvZXMgbm90IGluY2x1ZGUgY29tbWVyY2lhbCBzdXBwb3J0LiBIb3dldmVyLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgcmVzb3VyY2VzIGF2YWlsYWJsZSB0byBoZWxwIHlvdSB3aXRoIGl0OjwvcD4NCjx1bD4NCjxsaT5Gb3IgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbW9kdWxlLCBGQVFzLCBvciB0byBmaWxlIGEgQnVnIFJlcG9ydCBvciBidXkgY29tbWVyY2lhbCBzdXBwb3J0LCBwbGVhc2UgdmlzaXQgY2FsZ3V5XCYjMDM5O3MNCm1vZHVsZSBob21lcGFnZSBhdCA8YSBocmVmPSJodHRwOi8vdGVjaGNvbS5keW5kbnMub3JnIj50ZWNoY29tLmR5bmRucy5vcmc8L2E+LjwvbGk+DQo8bGk+QWRkaXRpb25hbCBkaXNjdXNzaW9uIG9mIHRoaXMgbW9kdWxlIG1heSBhbHNvIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJodHRwOi8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bXM8L2E+LjwvbGk+DQo8bGk+VGhlIGF1dGhvciwgY2FsZ3V5MTAwMCwgY2FuIG9mdGVuIGJlIGZvdW5kIGluIHRoZSA8YSBocmVmPSJpcmM6Ly9pcmMuZnJlZW5vZGUubmV0LyNjbXMiPkNNUyBJUkMgQ2hhbm5lbDwvYT4uPC9saT4NCjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS48L2xpPiAgDQo8L3VsPg0KPGgzPlBhcmFtZXRlcnM8L2gzPg0KPHVsPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9ybT0mcXVvdDtuYW1lJnF1b3Q7PC9saT4NCjxwPkZvcm1zOg0KPHVsPg0KIDxsaT48ZW0+bG9naW48L2VtPiAtIERpc3BsYXkgdGhlIGxvZ2luIGZvcm08L2xpPg0KIDxsaT48ZW0+bG9nb3V0PC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dvdXQgZm9ybTwvbGk+DQogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm08L2xpPg0KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtPC9saT4NCiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLjwvbGk+DQo8bGk+PGVtPnNpbGVudDwvZW0+ID0gRGlzcGxheSBub3RoaW5nLCBidXQgZXhwb3J0IHByb3BlcnRpZXMgYW5kIG90aGVyIHNtYXJ0eSB2YXJpYWJsZXMgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuICBJZiBubyB1c2VyIGlzIGxvZ2dlZCBpbiwgdGhlbiBubyB2YXJpYWJsZXMgYXJlIGV4cG9ydGVkLjwvbGk+DQo8L3VsPg0KPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89JnF1b3Q7cGFnZSZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luLCBsb2dvdXQsIGFuZCBjaGFuZ2VzZXR0aW5ncyBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgY29udGFpbnMgdGhlIHBhZ2UgaWQgb3IgYWxpYXMgb2YgYSBwYWdlIHRvIHJlZGlyZWN0IHRvLCB3aGVuIHRoZSBmb3JtIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQ8L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0mcXVvdDtncm91cDEsIGdyb3VwMiwgZ3JvdXAzJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuICBCYXNpY2FsbHkgb25seSBhbGxvd3MgdXNlcnMgdG8gbG9naW4gaWYgdGhleSBiZWxvbmcgdG8gdGhhdCBwYXJ0aWN1bGFyIGdyb3VwKHMpLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bl9ncm91cD0mcXVvdDtncm91cCZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbm9jYXB0Y2hhPSZxdW90OzEmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gaGlzIHdpbGwgZGlzbmFibGUgY2FwdGNoYSBvbiB0aGUgZm9ybS4gQnkgZGVmYXVsdCwgaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBmb3IgbG9naW4uICBUaGlzIGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBpbnRlbnRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPW51bGw8L2xpPg0KPHA+VGhlIG9ubHkgcG9zc2libGUgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIGlzICZxdW90O3ZpZXd1c2VyJnF1b3Q7PC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gdWlkPW51bGw8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+DQo8L3VsPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0DQpvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+DQo8aDM+UmVxdWlyZW1lbnRzPC9oMz4NCjxwPkluIG9yZGVyIHRvIGltcGxlbWVudCB0aGUgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHksIHRoaXMgbW9kdWxlIHJlcXVpcmVzIHRoZSBDTVNNYWlsZXIgbW9kdWxlIHRvIGJlIHByZXZpb3VzbHkgaW5zdGFsbGVkPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmFtcDtjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+JmFtcDtsdDtjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnJmFtcDtndDs8L2E+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCnRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4NCjxwPkhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZA0KYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlDQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQpNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gDQpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4NCjxwPlRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQpZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCkZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQpPciByZWFkIGl0IDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+b25saW5lPC9hPjwvcD4nOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My45MDYwNTI2NDIuMTI2NzgzNTczNC4xMjgwNDI0OTkwLjEyODA0NDExNTkuMTQ4JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI4MDQyNDk5MC4xNDcuOS51dG1jY249KHJlZmVycmFsKXx1dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2N0PS98dXRtY21kPXJlZmVycmFsJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE2MDUxODMwNzAtMTI2NzgzNTczMzg2NSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwo/Pg==]]></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/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYWRkaW5nIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCByZWxhdGlvbic7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gYWRkaW5nIGEgdXNlciB0byBhIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGRlbGV0aW5nIGEgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQ291bGQgbm90IGZpbmQgYW55IGdyb3Vwcyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPg0KPHA+VGhpcyBtb2R1bGUgYWxsb3dzIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uIG9mIGZyb250IGVuZCB1c2VycyA8aT4odXNlcnMgd2hvIGhhdmUgbm8gYWRtaW4gYWNjZXNzcyk8L2k+LiAgSXQgYWxsb3dzIGNyZWF0aW9uIG9mIHVzZXIgZ3JvdXBzLCBhbmQgdXNlciBhY2NvdW50cyBhbmQgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGFuZCBsb2dvdXQuICBpdCBjYW4gYmUgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIHRoZSBDdXN0b21Db250ZW50IG1vZHVsZSB0byBkaXNwbGF5IGRpZmZlcmVudCBjb250ZW50IHRvIGRpZmZlcmVudCB1c2VycyBvbmNlIHRoZXkgaGF2ZSBsb2dnZWQgaW48L3A+DQo8aDM+RmVhdHVyZXM8L2gzPg0KPHVsPg0KPGxpPjxwPlVzZXIgYWNjb3VudCBleHBpcmF0aW9uLiAgWW91IGNhbiBjcmVhdGUgdGVtcG9yYXJ5IHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+R3JvdXAgUHJvcGVydGllcy4gIFlvdSBjYW4gYXNrIGZvciBkaWZmZXJlbnQgaW5mb3JtYXRpb24gZnJvbSBtZW1iZXJzIG9mIGRpZmZlcmVudCBncm91cHM8L3A+PC9saT4NCjxsaT48cD5DYXBhYmxlIG9mIGhhbmRsaW5nIGh1bmRyZWRzIG9mIHVzZXJzPC9wPjwvbGk+DQo8bGk+PHA+Rm9yZ290IHBhc3N3b3JkLCBhbmQgZm9yZ290IHVzZXJuYW1lIGZ1bmN0aW9uYWxpdHkuLi4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L3A+PC9saT4NCjxsaT48cD5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHk8L3A+PC9saT4NCjwvdWw+DQo8aDM+SG93IGRvIEkgdXNlIGl0PC9oMz4NCjx1bD4NCjxsaT48cD5BZnRlciBpbnN0YWxsYXRpb24geW91IGNhbiBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBnR3JvdXBzJnF1b3Q7IG1lbnUuPC9wPjwvbGk+DQo8bGk+DQo8cD5TZWNvbmRseSwgeW91IHNob3VsZCBkZWZpbmUgcHJvcGVydGllcy4gIFByb3BlcnRpZXMgYXJlIGVzc2VudGlhbGx5IGZpZWxkIGRlZmluaXRpb25zLCBoZXJlIHlvdSBzcGVjaWZ5IHRoZSB0eXBlIG9mIGluZm9ybWF0aW9uIHlvdSB3YW50IHRvIGdhdGhlciwgYW5kIGxpbWl0cy4gaS5lOiAgTmFtZSwgQWdlLCBDaXR5LCBTdGF0ZSwgQ291bnRyeSwgRW1haWwgYWRkcmVzcywgZXRjLjwvcD4NCjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCwgdGhlc2Ugd2lsbCBiZSBwcm92aWRlZCBmb3IgeW91PC9iPg0KPC9saT4NCjxsaT48cD5OZXh0IHlvdSBzaG91bGQgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3ZXRoZXIgaXQgaXMgYW4gb3B0aW9uYWwsIHJlcXVpcmVkLCBvciBoaWRkZW4gZmllbGQgPGk+KG9mZiBpcyBhbHNvIHZhbGlkKTwvaT48L3A+PC9saT4NCjxsaT48cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LjwvcD48L2xpPg0KPGxpPjxwPlRoaXJkbHkgeW91IHNob3VsZCBjcmVhdGUgc29tZSB1c2Vycy4gIEFkZGluZyB1c2VycyBpcyBhIHR3byBzdGVwIHByb2Nlc3MuICBXaGVuIGNyZWF0aW5nIGEgdXNlciB5b3UgYXJlIGFza2VkIGZvciB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgYW4gZXhwaXJ5IGRhdGUgZm9yIHRoYXQgdXNlci4gIFlvdSB0aGVuIG11c3Qgc2VsZWN0IHRoZSBncm91cHMgdGhhdCB0aGF0IHVzZXIgaXMgYSBtZW1iZXIgb2YsIGFuZCBjbGljayBcJiMwMzk7TmV4dFwmIzAzOTs8L3A+DQo8cD48ZW0+Tm90ZTogPC9lbT5UaGlzIGlzIGEgbGFib3VyIGludGVuc2l2ZSBhbmQgYm9yaW5nIHByb2Nlc3MsIGl0IGlzIGVhc2llciB0byBsZXQgdXNlcnMgcmVnaXN0ZXIgdGhlbXNlbHZlcyA8ZW0+KFNlZSB0aGUgU2VsZlJlZ2lzdHJhdGlvbiBNb2R1bGUpPC9lbT4sIGFuZCB0aGVuIHlvdSBjYW4gZWRpdCB0aGVpciBncm91cCBpbmZvcm1hdGlvbi4gIGJ1dCBmb3IgdGVzdGluZyBwdXJwb3NlcywgcGxlYXNlIGNyZWF0ZSBhdCBsZXN0IG9uZSB1c2VyPC9wPjwvbGk+DQo8bGk+PHA+TGFzdGx5LCBhZnRlciB0aGUgc3lzdGVtIGhhcyBkZXRlcm1pbmVkIGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gZmllbGRzIHRvIGJlIHByZXNlbnRlZCBmb3IgdGhhdCB1c2VyLCB5b3UgYXJlIHByZXNlbnRlZCB3aXRoIGEgZm9ybSBhc2tpbmcgZm9yIGFsbCBvZiB0aGUgcmVxdWlyZWQgdXNlciBpbmZvcm1hdGlvbi4gIENvbXBsZXRlIHRoaXMgZm9ybSB0byBjb21wbGV0ZSB0aGUgdXNlciBhZGRpdGlvbjwvcD48L2xpPg0KPGxpPjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7Y21zX21vZHVsZSBtb2R1bGU9RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZTwvcD48L2xpPg0KPC91bD4NCjxoMz5TbWFydHkgRnVuY3Rpb25zPC9oMz4NCjxwPlNvbWUgbGltaXRlZCBpbnRlcmFjdGlvbiB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBkYXRhYmFzZSBpcyBwb3NzaWJsZSB3aXRoIHNtYXJ0eSBhbmQgdGhlICRmZXVfc21hcnR5IG9iamVjdC48L3A+DQo8aDQ+RnVuY3Rpb25zOjwvaDQ+DQo8dWw+DQo8bGk+PHN0cm9uZz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZSwkYXNzaWduKX08L2NvZGU+PC9zdHJvbmc+DQo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC4gIFRoZSBvdXRwdXQgaXMgYXNzaWduZWQgdG8gYSBzbWFydHkgdmFyaWFibGUgc3BlY2lmaWVkIGluIHRoZSAmcXVvdDthc3NpZ24mcXVvdDsgcGFyYW1ldGVyLjwvcD4NCjxwPkV4YW1wbGU6PGJyLz48Y29kZT57JGZldV9zbWFydHktPmdldF91c2Vyc19ieV9ncm91cG5hbWUoJiMwMzk7bWVtYmVycyYjMDM5OywmIzAzOTtteW1lbWJlcnMmIzAzOTspfTxici8+eyRteW1lbWJlcnN8cHJpbnRfcn08L2NvZGU+PC9wPg0KPC9saT4NCjxsaT48c3Ryb25nPjxjb2RlPnskZmV1X3NtYXJ0eS0+Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkLCRhc3NpZ24pfTwvY29kZT48L3N0cm9uZz4NCjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBhc3NpZ24gdGhlbSB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS48L3A+DQo8cD5FeGFtcGxlOjxici8+PGNvZGU+eyRmZXVfc21hcnR5LT5nZXRfdXNlcl9wcm9wZXJ0aWVzKDUsJiMwMzk7dXNlcnByb3BzJiMwMzk7KX08YnIvPnskdXNlcnByb3BzfHByaW50X3J9PC9jb2RlPjwvcD4NCjwvbGk+DQo8L3VsPg0KDQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5UaGlzIG1vZHVsZSBkb2VzIG5vdCBpbmNsdWRlIGNvbW1lcmNpYWwgc3VwcG9ydC4gSG93ZXZlciwgdGhlcmUgYXJlIGEgbnVtYmVyIG9mIHJlc291cmNlcyBhdmFpbGFibGUgdG8gaGVscCB5b3Ugd2l0aCBpdDo8L3A+DQo8dWw+DQo8bGk+Rm9yIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1vZHVsZSwgRkFRcywgb3IgdG8gZmlsZSBhIEJ1ZyBSZXBvcnQgb3IgYnV5IGNvbW1lcmNpYWwgc3VwcG9ydCwgcGxlYXNlIHZpc2l0IGNhbGd1eVwmIzAzOTtzDQptb2R1bGUgaG9tZXBhZ2UgYXQgPGEgaHJlZj0iaHR0cDovL3RlY2hjb20uZHluZG5zLm9yZyI+dGVjaGNvbS5keW5kbnMub3JnPC9hPi48L2xpPg0KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi48L2xpPg0KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+DQo8bGk+TGFzdGx5LCB5b3UgbWF5IGhhdmUgc29tZSBzdWNjZXNzIGVtYWlsaW5nIHRoZSBhdXRob3IgZGlyZWN0bHkuPC9saT4gIA0KPC91bD4NCjxoMz5QYXJhbWV0ZXJzPC9oMz4NCjx1bD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09JnF1b3Q7bmFtZSZxdW90OzwvbGk+DQo8cD5Gb3JtczoNCjx1bD4NCiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtPC9saT4NCiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm08L2xpPg0KIDxsaT48ZW0+Y2hhbmdlc2V0dGluZ3M8L2VtPiAtIERpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBmb3JtPC9saT4NCiA8bGk+PGVtPmZvcmdvdHB3PC9lbT4gLSBEaXNwbGF5IHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybTwvbGk+DQogPGxpPjxlbT5sb3N0dXNlcm5hbWU8L2VtPiAtIERpc3BsYXkgdGhlIGxvc3QgdXNlcm5hbWUgZm9ybS48L2xpPg0KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPg0KPC91bD4NCjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHJldHVybnRvPSZxdW90O3BhZ2UmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPg0KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gb25seV9ncm91cHM9JnF1b3Q7Z3JvdXAxLCBncm91cDIsIGdyb3VwMyZxdW90OzwvbGk+DQo8cD5Vc2VkIHdpdGggdGhlIGxvZ2luIGZvcm1zLiAgQmFzaWNhbGx5IG9ubHkgYWxsb3dzIHVzZXJzIHRvIGxvZ2luIGlmIHRoZXkgYmVsb25nIHRvIHRoYXQgcGFydGljdWxhciBncm91cChzKS48L3A+DQo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9JnF1b3Q7Z3JvdXAmcXVvdDs8L2xpPg0KPHA+VXNlZCB3aXRoIHRoZSBsb3N0dXNlcm5hbWUgZm9ybSwgdGhpcyBmZWF0dXJlIHNwZWNpZmllcyB0aGUgZnJvbnRlbmQgdXNlciBncm91cCB0byBhc3N1bWUgdGh0IHVzZXJzIGFyZSBtZW1iZXJzIG9mLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IG5vY2FwdGNoYT0mcXVvdDsxJnF1b3Q7PC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMuIGhpcyB3aWxsIGRpc25hYmxlIGNhcHRjaGEgb24gdGhlIGZvcm0uIEJ5IGRlZmF1bHQsIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgZm9yIGxvZ2luLiAgVGhpcyBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgaW50ZW50ZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLjwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGFjdGlvbj1udWxsPC9saT4NCjxwPlRoZSBvbmx5IHBvc3NpYmxlIHZhbHVlIGZvciB0aGlzIHBhcmFtZXRlciBpcyAmcXVvdDt2aWV3dXNlciZxdW90OzwvcD4NCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsPC9saT4NCjxwPlVzZWQgd2l0aCB0aGUgdmlld3VzZXIgYWN0aW9uLiAgVGhpcyBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQgdG8gc3BlY2lmeSB3aGljaCB1c2VyIHRvIHZpZXcgdGhlIGRldGFpbHMgb2YuPC9wPg0KPC91bD4NCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dA0Kb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KPGgzPlJlcXVpcmVtZW50czwvaDM+DQo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZDwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA4LCBSb2JlcnQgQ2FtcGJlbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+PGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmc+PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi48L3A+DQo8cD5Ib3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQNCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUw0KTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIA0Kc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS48L3A+DQo8cD5UaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQpNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQpHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCmFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQ0KT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+JzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMjEzNDYxMjA3Ny4xMjI2NDM0MTI2LjEyMjc0NDQyODMuMTIyNzc0MTIwOC4zJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTIyNzQ0NDI4NC4yLjIudXRtY3NyPWdvb2dsZXx1dG1jY249KG9yZ2FuaWMpfHV0bWNtZD1vcmdhbmljfHV0bWN0cj1jbXNtcyc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTIyNzc0MTIwOCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></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.feu_content_attribute_helper.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgZmV1X2NvbnRlbnRfYXR0cmlidXRlX2hlbHBlciBleHRlbmRzIENtc0NvbnRlbnRBdHRyaWJ1dGVIZWxwZXJCYXNlCnsKICBwcml2YXRlIHN0YXRpYyAkX2luc3RhbmNlOwoKCiAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpCiAgewogICAgLy8gbm90aGluZyBoZXJlLgogIH0KCgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X2luc3RhbmNlKCkKICB7CiAgICBpZiAoIXNlbGY6OiRfaW5zdGFuY2UpCiAgICAgIHsKICAgICAgICBzZWxmOjokX2luc3RhbmNlID0gbmV3IGZldV9jb250ZW50X2F0dHJpYnV0ZV9oZWxwZXIoKTsKICAgICAgfQogICAgCiAgICByZXR1cm4gc2VsZjo6JF9pbnN0YW5jZTsKICB9CgoKICBwcml2YXRlIHN0YXRpYyBmdW5jdGlvbiAmZ2V0X2ZldSgpCiAgewogICAgJGdDbXMgPSBjbXNtcygpOwogICAgcmV0dXJuICRnQ21zLT5tb2R1bGVzWydGcm9udEVuZFVzZXJzJ11bJ29iamVjdCddOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfYXR0cmlidXRlX3RhYnMoKQogIHsKICAgICRmZXUgPSBzZWxmOjpnZXRfZmV1KCk7CiAgICAkZGF0YSA9IGFycmF5KCk7CiAgICAkZGF0YVsndmlzaXRvcnMnXSA9IGFycmF5KCdwcm9tcHQnPT4kZmV1LT5MYW5nKCd2aXNpdG9yc190YWInKSwncGVybWlzc2lvbic9PicnKTsKICAgIHJldHVybiAkZGF0YTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2F0dHJpYnV0ZV9pbnB1dCgkYXR0ciwkY29udGVudF9vYmosJGFkZGluZykKICB7CiAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICAkZmV1ID0gc2VsZjo6Z2V0X2ZldSgpOwoKICAgIHN3aXRjaCggJGF0dHItPmdldF9uYW1lKCkgKQogICAgewogICAgY2FzZSAnZmV1X2dyb3Vwcyc6CiAgICAgICR0bXAgPSBhcnJheSgkZmV1LT5MYW5nKCdhbnlfbG9nZ2VkX2luX3VzZXInKT0+Jy0xJyk7CiAgICAgICR0MiA9ICRmZXUtPkdldEdyb3VwTGlzdCgpOwogICAgICBmb3JlYWNoKCAkdDIgYXMgJGsgPT4gJHYgKQoJewoJICAkdG1wWyRrXSA9ICR2OwoJfQogICAgICBpZiggaXNfYXJyYXkoJHRtcCkgKQoJewoJICAkc2VsID0gYXJyYXkoKTsKCSAgJHNlbF9zdHIgPSAkY29udGVudF9vYmotPmdldF9wcm9wZXJ0eV92YWx1ZSgnZmV1X2dyb3VwcycpOwoJICBpZiggJHNlbF9zdHIgKQoJICAgIHsKCSAgICAgICRzZWwgPSBleHBsb2RlKCcsJywkc2VsX3N0cik7CgkgICAgfQoJICAkcHJvbXB0ID0gJGZldS0+TGFuZygnZmV1X2dyb3Vwc19wcm9tcHQnKTsKCSAgJGZpZWxkID0gJGZldS0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCcnLCdmZXVfZ3JvdXBzW10nLCR0bXAsJHNlbCwKCQkJCQkgICAgICAgbWluKGNvdW50KCR0bXApLDUpKTsKCSAgcmV0dXJuIGFycmF5KCRwcm9tcHQuJzonLCRmaWVsZCk7Cgl9CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgJ2ZldV9yZWRpcmVjdCc6CiAgICAgIC8vIGdldCBhIGxpc3Qgb2YgcGFnZXMKICAgICAgJHZhbCA9ICRjb250ZW50X29iai0+Z2V0X3Byb3BlcnR5X3ZhbHVlKCdmZXVfcmVkaXJlY3QnLC0xKTsKICAgICAgJHByb21wdCA9ICRmZXUtPkxhbmcoJ2ZldV9yZWRpcmVjdF9wcm9tcHQnKTsKICAgICAgJGZpZWxkID0gQ21zQ29udGVudE9wZXJhdGlvbnM6OkNyZWF0ZUhpZXJhcmNoeURyb3Bkb3duKCR2YWwsJycsJ2ZldV9yZWRpcmVjdCcpOwogICAgICByZXR1cm4gYXJyYXkoJHByb21wdC4nOicsJGZpZWxkKTsKICAgICAgYnJlYWs7CiAgICB9CiAgICAKICB9CgoKICBmdW5jdGlvbiBnZXRfYXR0cmlidXRlc19mcm9tX2Zvcm1kYXRhKCRjb250ZW50X29iaiwkcGFyYW1zKQogIHsKICAgICRwcm9wcyA9IGFycmF5KCdmZXVfZ3JvdXBzJywnZmV1X3JlZGlyZWN0Jyk7CiAgICBmb3JlYWNoKCAkcHJvcHMgYXMgJG9uZSApCiAgICAgIHsKCXN3aXRjaCggJG9uZSApCgkgIHsKCSAgY2FzZSAnZmV1X2dyb3Vwcyc6CgkgICAgaWYoIGlzc2V0KCRwYXJhbXNbJG9uZV0pICkKCSAgICAgIHsKCQkkc3RyID0gaW1wbG9kZSgnLCcsJHBhcmFtc1skb25lXSk7CgkJJGNvbnRlbnRfb2JqLT5zZXRfcHJvcGVydHlfdmFsdWUoJG9uZSwkc3RyKTsKCSAgICAgIH0KCSAgICBlbHNlCgkgICAgICB7CgkJJGNvbnRlbnRfb2JqLT5zZXRfcHJvcGVydHlfdmFsdWUoJG9uZSwnJyk7CgkgICAgICB9CgkgICAgYnJlYWs7CgkgICAgCgkgIGRlZmF1bHQ6CgkgICAgaWYoIGlzc2V0KCRwYXJhbXNbJG9uZV0pICkKCSAgICAgIHsKCQkkY29udGVudF9vYmotPnNldF9wcm9wZXJ0eV92YWx1ZSgkb25lLCRwYXJhbXNbJG9uZV0pOwoJICAgICAgfQoJICB9CiAgICAgIH0KICB9CiAgCgp9IC8vIGVuZCBvZiBjbGFzcwojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_smarty.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgZmV1X3NtYXJ0eSAKewogIHZhciAkX21vZHVsZTsKICB2YXIgJF9wcm9wZXJ0aWVzOwoKICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICBmZXVfc21hcnR5IC0tIENvbnN0cnVjdG9yCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gZmV1X3NtYXJ0eSgmJG1vZHVsZSkKICB7CiAgICAkdGhpcy0+X21vZHVsZSA9JiAkbW9kdWxlOwogIH0KICAKCiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgZ2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgpCiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgZnVuY3Rpb24gZ2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgkZ3JvdXBuYW1lLCRhc3NpZ24pCiAgewogICAgaWYoIGVtcHR5KCRncm91cG5hbWUpICkgcmV0dXJuOwogICAgaWYoIGVtcHR5KCRhc3NpZ24pICkgcmV0dXJuOwogICAgaWYoICFpc19vYmplY3QoJHRoaXMtPl9tb2R1bGUpICkgcmV0dXJuOwoKICAgICRnaWQgPSAkdGhpcy0+X21vZHVsZS0+R2V0R3JvdXBJRCgkZ3JvdXBuYW1lKTsKICAgIGlmKCAhJGdpZCApIGZhbHNlOwogICAgJHVzZXJzZnVsbCA9ICR0aGlzLT5fbW9kdWxlLT5HZXRVc2Vyc0luR3JvdXAoJGdpZCk7CiAgICAKICAgICR1c2VycyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdXNlcnNmdWxsIGFzICRvbmV1c2VyICkKICAgICAgewoJJHVzZXJzW10gPSBhcnJheSgnaWQnPT4kb25ldXNlclsnaWQnXSwndXNlcm5hbWUnPT4kb25ldXNlclsndXNlcm5hbWUnXSk7CiAgICAgIH0KICAgIGdsb2JhbCAkZ0NtczsKICAgICRzbWFydHkgPSYgJGdDbXMtPkdldFNtYXJ0eSgpOwogICAgJHNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJHVzZXJzKTsKICAgIHJldHVybjsKICB9CgogIGZ1bmN0aW9uIGdldF91c2VyX2V4cGlyeSgkdWlkLCRhc3NpZ24gPSAnJykKICB7CiAgICBpZiggZW1wdHkoJHVpZCkgKSByZXR1cm47CiAgICBpZiggIWlzX29iamVjdCgkdGhpcy0+X21vZHVsZSkgKSByZXR1cm47CgogICAgJHJlcyA9ICR0aGlzLT5fbW9kdWxlLT5HZXRFeHBpcnlEYXRlKCR1aWQpOwogICAgaWYoICEkcmVzICkgcmV0dXJuOwoKICAgIGlmKCAkYXNzaWduICkKICAgICAgewoJZ2xvYmFsICRnQ21zOwoJJHNtYXJ0eSA9JiAkZ0Ntcy0+R2V0U21hcnR5KCk7Cgkkc21hcnR5LT5hc3NpZ24oJGFzc2lnbiwkcmVzKTsKCXJldHVybjsKICAgICAgfQogICAgcmV0dXJuICRyZXM7CiAgfQoKCiAgZnVuY3Rpb24gdXNlcl9leHBpcmVkKCR1aWQsJGFzc2lnbiA9ICcnKQogIHsKICAgIGlmKCBlbXB0eSgkdWlkKSApIHJldHVybjsKICAgIGlmKCAhaXNfb2JqZWN0KCR0aGlzLT5fbW9kdWxlKSApIHJldHVybjsKCiAgICAkcmVzID0gJHRoaXMtPl9tb2R1bGUtPklzQWNjb3VudEV4cGlyZWQoJHVpZCk7CgogICAgaWYoICRhc3NpZ24gKQogICAgICB7CglnbG9iYWwgJGdDbXM7Cgkkc21hcnR5ID0mICRnQ21zLT5HZXRTbWFydHkoKTsKCSRzbWFydHktPmFzc2lnbigkYXNzaWduLCRyZXMpOwoJcmV0dXJuOwogICAgICB9CiAgICByZXR1cm4gJHJlczsKICB9CgoKICBmdW5jdGlvbiBnZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQsJGFzc2lnbikKICB7CiAgICBpZiggZW1wdHkoJHVpZCkgKSByZXR1cm47CiAgICBpZiggZW1wdHkoJGFzc2lnbikgKSByZXR1cm47CiAgICBpZiggIWlzX29iamVjdCgkdGhpcy0+X21vZHVsZSkgKSByZXR1cm47CgogICAgJHJlcyA9ICR0aGlzLT5fbW9kdWxlLT5HZXRVc2VyUHJvcGVydGllcygkdWlkKTsKICAgIGlmKCAhJHJlcyApIHJldHVybjsKCiAgICAkcmVzMiA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkcmVzIGFzICRvbmUgKQogICAgICB7CgkkcmVzMlskb25lWyd0aXRsZSddXSA9ICRvbmVbJ2RhdGEnXTsKICAgICAgfQoKICAgIGdsb2JhbCAkZ0NtczsKICAgICRzbWFydHkgPSYgJGdDbXMtPkdldFNtYXJ0eSgpOwogICAgJHNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJHJlczIpOwogIH0KCiAgZnVuY3Rpb24gZ2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUsJGFzc2lnbiA9ICcnKQogIHsKICAgIGlmKCAhaXNfb2JqZWN0KCR0aGlzLT5fbW9kdWxlKSApIHJldHVybjsKICAgIGlmKCAkdGhpcy0+X3Byb3BlcnRpZXMgPT0gbnVsbCApCiAgICAgIHsKCSR0aGlzLT5fcHJvcGVydGllcyA9IGFycmF5KCk7CgkkdG1wID0gJHRoaXMtPl9tb2R1bGUtPkdldFByb3BlcnR5RGVmbnMoKTsKCWZvcmVhY2goICR0bXAgYXMgJG9uZSApCgkgIHsKCSAgICBpZiggJG9uZVsndHlwZSddID09IDQgfHwgJG9uZVsndHlwZSddID09IDUgKQoJICAgICAgewoJCSR0bXAyID0gJHRoaXMtPl9tb2R1bGUtPkdldFNlbGVjdE9wdGlvbnMoJG9uZVsnbmFtZSddKTsKCQkkb25lWydvcHRpb25zJ10gPSBhcnJheSgpOwoJCWZvcmVhY2goICR0bXAyIGFzICRrID0+ICR2ICkKCQkgIHsKCQkgICAgJG9uZVsnb3B0aW9ucyddWyR2XSA9ICRrOwoJCSAgfQoJICAgICAgfQoJICAgICR0aGlzLT5fcHJvcGVydGllc1skb25lWyduYW1lJ11dID0gJG9uZTsKCSAgfQogICAgICB9CgogICAgaWYoICFpc3NldCgkdGhpcy0+X3Byb3BlcnRpZXNbJHByb3BuYW1lXSkgKQogICAgICB7CglyZXR1cm4gRkFMU0U7CiAgICAgIH0KCiAgICBpZiggKCR0aGlzLT5fcHJvcGVydGllc1skcHJvcG5hbWVdWyd0eXBlJ10gIT0gNCAmJgoJICR0aGlzLT5fcHJvcGVydGllc1skcHJvcG5hbWVdWyd0eXBlJ10gIT0gNSkgfHwKCSFpc3NldCgkdGhpcy0+X3Byb3BlcnRpZXNbJHByb3BuYW1lXVsnb3B0aW9ucyddKSApCiAgICAgIHsKCXJldHVybiBGQUxTRTsKICAgICAgfQoKICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9wcm9wZXJ0aWVzWyRwcm9wbmFtZV1bJ29wdGlvbnMnXVskcHJvcHZhbHVlXSkgKQogICAgICB7CglyZXR1cm4gRkFMU0U7CiAgICAgIH0KCiAgICAkcmVzID0gJHRoaXMtPl9wcm9wZXJ0aWVzWyRwcm9wbmFtZV1bJ29wdGlvbnMnXVskcHJvcHZhbHVlXTsKICAgIGlmKCAkYXNzaWduICE9ICcnICkKICAgICAgewoJZ2xvYmFsICRnQ21zOwoJJHNtYXJ0eSA9JiAkZ0Ntcy0+R2V0U21hcnR5KCk7Cgkkc21hcnR5LT5hc3NpZ24oJGFzc2lnbiwkcmVzKTsKCXJldHVybjsKICAgICAgfQogICAgcmV0dXJuICRyZXM7CiAgfQoKICBmdW5jdGlvbiBnZXRfbXVsdGlzZWxlY3RfdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSwkYXNzaWduKQogIHsKICAgICR2YWx1ZXMgPSBleHBsb2RlKCcsJywkcHJvcHZhbHVlKTsKICAgICRyZXMgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJHZhbHVlcyBhcyAkb25lICkKICAgICAgewoJJHJlc1tdID0gJHRoaXMtPmdldF9kcm9wZG93bl90ZXh0KCRwcm9wbmFtZSwkb25lKTsKICAgICAgfQoKICAgIGdsb2JhbCAkZ0NtczsKICAgICRzbWFydHkgPSYgJGdDbXMtPkdldFNtYXJ0eSgpOwogICAgJHNtYXJ0eS0+YXNzaWduKCRhc3NpZ24sJHJlcyk7CiAgfQp9CgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_std_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgZmV1X3N0ZF9jb25zdW1lciBpbXBsZW1lbnRzIGZldV9hdXRoX2NvbnN1bWVyCnsKICBwdWJsaWMgZnVuY3Rpb24gaXNfYXV0aGVudGljYXRlZCgpCiAgewogICAgJG1vZCA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJG1vZC0+X0F0dGVtcHRMb2dpbldpdGhDb29raWUoKTsKICAgIHJldHVybiAkbW9kLT5Mb2dnZWRJbigpOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jYXBhYmlsaXRpZXMoKQogIHsKICAgICRyZXMgPSBhcnJheSgpOwogICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9MT0dJTjsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfTE9HT1VUOwogICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9DSEFOR0VTRVRUSU5HUzsKICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfTE9TVFVTRVJOQU1FOwogICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9GT1JHT1RQQVNTV0Q7CiAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0NIQU5HRVBBU1NXRDsKICAgIHJldHVybiAkcmVzOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGhhc19jYXBhYmlsaXR5KCRmbGFnKQogIHsKICAgIGlmKCBpbl9hcnJheSgkZmxhZywkdGhpcy0+Z2V0X2NhcGFiaWxpdGllcygpKSApCiAgICAgIHJldHVybiBUUlVFOwogICAgcmV0dXJuIEZBTFNFOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9sb2dpbl9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICB7CiAgICByZXR1cm47CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvZ291dF9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICB7CiAgICByZXR1cm47CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NoYW5nZXNldHRpbmdzX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcl9pbmZvKCkKICB7CiAgICBzdGFja190cmFjZSgpOwogICAgZGllKCdub3QgaW1wbGVtZW50ZWQnKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29ubmVjdGluZ19wcm9wZXJ0eV9uYW1lKCkKICB7CiAgICByZXR1cm4gc2VsZjo6UFJPUEVSVFlfVUlEOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF91bmlxdWVfaWRlbnRpZmllcigpCiAgewogICAgZGllKCd0aGlzIGlzIGludmFsaWQsIHNob3VsZCBub3QgYmUgY2FsbGluZyB0aGlzIGZvciB0aGlzIG9iamVjdCcpOwogIH0KfQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_query.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmNsYXNzIGZldV91c2VyX3F1ZXJ5X29wdAp7CiAgY29uc3QgTUFUQ0hfVVNFUk5BTUUgICA9ICcqdXNlcm5hbWUqJzsKICBjb25zdCBNQVRDSF9QQVNTV09SRCAgID0gJypwYXNzd29yZConOwogIGNvbnN0IE1BVENIX0VYUElSRVNfTFQgPSAnKmV4cGlyZXMtbHQqJzsKICBjb25zdCBNQVRDSF9HUk9VUCAgICAgID0gJypncm91cConOwogIGNvbnN0IE1BVENIX0dST1VQSUQgICAgPSAnKmdpZConOwogIGNvbnN0IE1BVENIX1BST1BFUlRZICAgPSAnKnByb3BlcnR5Kic7CgogIHByaXZhdGUgJF90eXBlOwogIHByaXZhdGUgJF9leHByOwogIHByaXZhdGUgJF9vcHQ7CgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdHlwZSwkZXhwciwkb3B0ID0gJycpCiAgewogICAgaWYoIGVtcHR5KCRleHByKSApCiAgICAgIHsKCXRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgICAgfQoKICAgIHN3aXRjaCgkdHlwZSkKICAgICAgewogICAgICBjYXNlIHNlbGY6Ok1BVENIX1VTRVJOQU1FOgogICAgICBjYXNlIHNlbGY6Ok1BVENIX1BBU1NXT1JEOgogICAgICBjYXNlIHNlbGY6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICAgIGNhc2Ugc2VsZjo6TUFUQ0hfR1JPVVA6CiAgICAgIGNhc2Ugc2VsZjo6TUFUQ0hfR1JPVVBJRDoKCSR0aGlzLT5fdHlwZSA9ICR0eXBlOwoJJHRoaXMtPl9leHByID0gJGV4cHI7CglicmVhazsKCiAgICAgIGNhc2Ugc2VsZjo6TUFUQ0hfUFJPUEVSVFk6CglpZiggZW1wdHkoJG9wdCkgKQoJICB7CgkgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZScpOwoJICB9CgkkdGhpcy0+X3R5cGUgPSAkdHlwZTsKCSR0aGlzLT5fZXhwciA9ICRleHByOwoJJHRoaXMtPl9vcHQgPSAkb3B0OwoJYnJlYWs7CgogICAgICBkZWZhdWx0OgoJdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZScpOwogICAgICB9CiAgfQoKICAKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3R5cGUoKQogIHsKICAgIHJldHVybiAkdGhpcy0+X3R5cGU7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9leHByKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9leHByOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vcHQ7CiAgfQp9IC8vIGNsYXNzCgoKY2xhc3MgZmV1X3VzZXJfcXVlcnkKewogIHByaXZhdGUgJF9hbmRfb3B0cyAgID0gYXJyYXkoKTsKICBwcml2YXRlICRfZ3JvdXBzID0gJyc7CiAgcHJpdmF0ZSAkX3FyZWNzICA9ICcnOwogIHByaXZhdGUgJF9xY291bnQgPSAnJzsKICBwcml2YXRlICRfcXBhcm1zID0gYXJyYXkoKTsKICBwcml2YXRlICRfcGFnZWxpbWl0ID0gMTAwMDAwOwogIHByaXZhdGUgJF9tZXRhX2NvdW50ICA9ICcnOwogIHByaXZhdGUgJF9tZXRhX25wYWdlcyA9ICcnOwogIHByaXZhdGUgJF9tZXRhX2N1cnBhZ2UgPSAxOwoKICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJHBhZ2VsaW1pdCkKICB7CiAgICAkcGFnZWxpbWl0ID0gKGludCkkcGFnZWxpbWl0OwogICAgJHBhZ2VsaW1pdCA9IG1heCgxLCRwYWdlbGltaXQpOwogICAgJHRoaXMtPl9wYWdlbGltaXQgPSAkcGFnZWxpbWl0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGFkZF9hbmRfb3B0KCR0eXBlLCR2YWx1ZSkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSBuZXcgZmV1X3VzZXJfcXVlcnlfb3B0KCR0eXBlLCR2YWx1ZSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHRfb2JqKGZldV91c2VyX3F1ZXJ5X29wdCYgJG9wdCkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSAkb3B0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGNvdW50X29wdHMoKQogIHsKICAgIHJldHVybiBjb3VudCgkdGhpcy0+X2FuZF9vcHRzKTsKICB9CgogIHByaXZhdGUgZnVuY3Rpb24gX2dldF9ncm91cHMoKQogIHsKICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9ncm91cHMpICkKICAgICAgewoJJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJJHRtcCA9ICRmZXUtPkdldEdyb3VwTGlzdEZ1bGwoKTsKCWlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApCgkgIHsKCSAgICAkdGhpcy0+X2dyb3VwcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCdncm91cG5hbWUnKTsKCSAgfQogICAgICB9CiAgICByZXR1cm4gJHRoaXMtPl9ncm91cHM7CiAgfQoKCiAgcHJpdmF0ZSBmdW5jdGlvbiBfYnVpbGRfcXVlcmllcygpCiAgewogICAgaWYoICR0aGlzLT5fcXJlY3MgIT0gJycgKSByZXR1cm47CiAgICBpZiggJHRoaXMtPl9xY291bnQgIT0gJycgKSByZXR1cm47CgogICAgaWYoICEkdGhpcy0+Y291bnRfb3B0cygpICkgCiAgICAgIHsKCXRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgICAgfQoKICAgICR3aGVyZSAgPSBhcnJheSgpOwogICAgJHFwYXJtcyA9IGFycmF5KCk7CiAgICAkam9pbnMgID0gYXJyYXkoKTsKICAgICRqY291bnQgPSAwOwogICAgZm9yZWFjaCggJHRoaXMtPl9hbmRfb3B0cyBhcyAmJG9wdCApCiAgICB7CiAgICAgIHN3aXRjaCggJG9wdC0+Z2V0X3R5cGUoKSApCgl7CgljYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfVVNFUk5BTUU6CgkgICR3aGVyZVtdICA9ICd1LnVzZXJuYW1lIExJS0UgPyc7CgkgICRxcGFybXNbXSA9IHN0cl9yZXBsYWNlKCcqJywnJScsJG9wdC0+Z2V0X2V4cHIoKSk7CgkgIGJyZWFrOwoKCWNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9QQVNTV09SRDoKCSAgJHdoZXJlW10gID0gJ3UucGFzc3dvcmQgPSA/JzsKCSAgJHFwYXJtc1tdID0gbWQ1KCRvcHQtPmdldF9leHByKCkpOwoJICBicmVhazsKCSAgCgljYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfRVhQSVJFU19MVDoKCSAgJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAoJG9wdC0+Z2V0X2V4cHIoKSk7CgkgICR3aGVyZVtdID0gInUuZXhwaXJlcyA8IHskdG1wfSI7CgkgIGJyZWFrOwoKCWNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUDoKCSAgJHRtcCA9ICR0aGlzLT5fZ2V0X2dyb3VwcygpOwoJICBpZiggIWlzc2V0KCR0bXBbJG9wdC0+Z2V0X2V4cHIoKV0pICkKCSAgICB7CgkgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CgkgICAgfQoJICAkam9pbnMgPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwoJICAkd2hlcmVbXSA9ICdibC5ncm91cGlkID0gPyc7CgkgICRxcGFybXNbXSA9ICRvcHQtPmdldF9leHByKCk7CgkgIGJyZWFrOwoKCWNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUElEOgoJICAkam9pbnMgPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwoJICAkd2hlcmVbXSA9ICdibC5ncm91cGlkID0gPyc7CgkgICRxcGFybXNbXSA9ICRvcHQtPmdldF9leHByKCk7CgkgIGJyZWFrOwoKCWNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9QUk9QRVJUWToKCSAgJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwoJICAkZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CgkgIGlmKCAhaW5fYXJyYXkoJG9wdC0+Z2V0X2V4cHIoKSxhcnJheV9rZXlzKCRkZWZucykpICkKCSAgICB7CgkgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CgkgICAgfQoJICAkamNvdW50Kys7CgkgICRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBwcnskamNvdW50fSAKICAgICAgICAgICAgICAgICAgICAgICAgT04gcHJ7JGpjb3VudH0udXNlcmlkID0gdS5pZCAKICAgICAgICAgICAgICAgICAgICAgICBBTkQgcHJ7JGpjb3VudH0udGl0bGUgPSAnIi4kb3B0LT5nZXRfZXhwcigpLiInIjsKCSAgaWYoIHN0cnN0cigkb3B0LT5nZXRfb3B0KCksJyonKSA9PT0gRkFMU0UgKQoJICAgIHsKCSAgICAgICR3aGVyZVtdID0gInByeyRqY291bnR9LmRhdGEgPSAnIi4kb3B0LT5nZXRfb3B0KCkuIiciOwoJICAgIH0KCSAgZWxzZQoJICAgIHsKCSAgICAgICR3aGVyZVtdID0gInByeyRqY291bnR9LmRhdGEgTElLRSAnIi5zdHJfcmVwbGFjZSgnKicsJyUnLCRvcHQtPmdldF9vcHQoKSkuIiciOwoJICAgIH0KCSAgYnJlYWs7Cgl9CiAgICB9CgogICAgLy8gYXNlbWJseQogICAgJHFyZWMgPSAnU0VMRUNUIHUuaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgdSc7CiAgICAkcWNudCA9ICdTRUxFQ1QgY291bnQodS5pZCkgQVMgY291bnQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgdSc7CiAgICAKICAgIGlmKCBjb3VudCgkam9pbnMpICkKICAgICAgewoJJHFyZWMgLj0gJyAnLmltcGxvZGUoJyAnLCRqb2lucyk7CgkkcWNudCAuPSAnICcuaW1wbG9kZSgnICcsJGpvaW5zKTsKICAgICAgfQogICAgaWYoIGNvdW50KCR3aGVyZSkgKQogICAgICB7CgkkcXJlYyAuPSAiXG5XSEVSRSAiLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwoJJHFjbnQgLj0gIlxuV0hFUkUgIi5pbXBsb2RlKCcgQU5EICcsJHdoZXJlKTsKICAgICAgfQoKICAgICR0aGlzLT5fcXJlY3MgID0gJHFyZWM7CiAgICAkdGhpcy0+X3Fjb3VudCA9ICRxY250OwogICAgJHRoaXMtPl9xcGFybXMgPSAkcXBhcm1zOwogICAgcmV0dXJuOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBwcmVwYXJlKCkKICB7CiAgICAkdGhpcy0+X2J1aWxkX3F1ZXJpZXMoKTsKICAgIGlmKCAhJHRoaXMtPl9xcmVjcyApIHJldHVybiBGQUxTRTsKICAgIGlmKCAhJHRoaXMtPl9xY291bnQgKSByZXR1cm4gRkFMU0U7CgogICAgZ2xvYmFsICRnQ21zOwogICAgJGRiID0gJGdDbXMtPkdldERiKCk7CgogICAgJHRtcCA9ICRkYi0+R2V0T25lKCR0aGlzLT5fcWNvdW50LCR0aGlzLT5fcXBhcm1zKTsKICAgIGlmKCAkdG1wICkKICAgICAgewoJJHRoaXMtPl9tZXRhX2NvdW50ID0gJHRtcDsKCSRucGFnZXMgPSAoaW50KSgkdGhpcy0+X21ldGFfY291bnQgLyAkdGhpcy0+X3BhZ2VsaW1pdCk7CglpZiggJHRoaXMtPl9tZXRhX2NvdW50ICUgJHRoaXMtPl9wYWdlbGltaXQgKQoJICB7CgkgICAgJG5wYWdlcysrOwoJICAgICR0aGlzLT5fbWV0YV9ucGFnZXMgPSAkbnBhZ2VzOwoJICB9CgkkdGhpcy0+X21ldGFfY3VycGFnZSA9IDE7CiAgICAgIH0KICAgIHJldHVybiBUUlVFOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbWF0Y2hfY291bnQoKQogIHsKICAgIGlmKCAkdGhpcy0+X21ldGFfbnBhZ2VzID09IDAgKQogICAgICB7CgkkcmVzID0gJHRoaXMtPnByZXBhcmUoKTsKCWlmKCAhJHJlcyApIHJldHVybiAkcmVzOwogICAgICB9CgogICAgaWYoIGVtcHR5KCR0aGlzLT5fbWV0YV9jb3VudCkgKSByZXR1cm4gMDsKICAgIHJldHVybiAkdGhpcy0+X21ldGFfY291bnQ7CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kYXRhKCRwYWdlbnVtID0gJycpCiAgewogICAgaWYoICR0aGlzLT5fbWV0YV9ucGFnZXMgPT0gMCApCiAgICAgIHsKCSRyZXMgPSAkdGhpcy0+cHJlcGFyZSgpOwoJaWYoICEkcmVzICkgcmV0dXJuICRyZXM7CiAgICAgIH0KICAgIGlmKCBlbXB0eSgkcGFnZW51bSkgKQogICAgICB7CgkkcGFnZW51bSA9ICR0aGlzLT5fbWV0YV9jdXJwYWdlOwogICAgICB9CgogICAgZ2xvYmFsICRnQ21zOwogICAgJGRiID0gJGdDbXMtPkdldERiKCk7CiAgICAkcGFnZW51bSA9IG1heCgxLCRwYWdlbnVtKTsKICAgICRwYWdlbnVtID0gbWluKDEwMDAwMCwkcGFnZW51bSk7CiAgICAKICAgICRzdGFydCA9ICR0aGlzLT5fcGFnZWxpbWl0ICogKCRwYWdlbnVtIC0gMSk7CiAgICAkZGJyID0gJGRiLT5TZWxlY3RMaW1pdCgkdGhpcy0+X3FyZWNzLCR0aGlzLT5fcGFnZWxpbWl0LCRzdGFydCwkdGhpcy0+X3FwYXJtcyk7CiAgICBpZiggISRkYnIgKQogICAgICB7CgkvLyBxdWVyeSBmYWlsZWQKCXJldHVybiBGQUxTRTsKICAgICAgfQogICAgCiAgICAkcmVzID0gYXJyYXkoKTsKICAgIHdoaWxlKCAkZGJyICYmICRyb3cgPSAkZGJyLT5GZXRjaFJvdygpICkKICAgICAgewoJJHJlc1tdID0gJHJvdzsKICAgICAgfQogICAgJGRici0+Q2xvc2UoKTsKICAgICR0aGlzLT5fbWV0YV9jdXJwYWdlID0gJHBhZ2VudW0gKyAxOwogICAgcmV0dXJuICRyZXM7CiAgfQoKfSAvLyBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgZmV1X3V0aWxzCnsKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHVzaW5nX3N0ZF9jb25zdW1lcigpCiAgewogICAgJGZldSA9IGNnZV91dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgJG5hbWUgPSAkZmV1LT5HZXRQcmVmZXJlbmNlKCdhdXRoX21vZHVsZScsJycpOwogICAgaWYoICRuYW1lID09ICcnIHx8ICRuYW1lID09ICdfX0JVSUxUSU5fXycgKQogICAgICB7CglyZXR1cm4gVFJVRTsKICAgICAgfQogICAgcmV0dXJuIEZBTFNFOwogIH0KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiAmZ2V0X3N0ZF9jb25zdW1lcigpCiAgewogICAgJG9iaiA9IG5ldyBmZXVfc3RkX2NvbnN1bWVyKCk7CiAgICByZXR1cm4gJG9iajsKICB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gJmdldF9hdXRoX2NvbnN1bWVyKCkKICB7CiAgICAkcmVzID0gbnVsbDsKICAgICRmZXUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICRuYW1lID0gJGZldS0+R2V0UHJlZmVyZW5jZSgnYXV0aF9tb2R1bGUnLCcnKTsKICAgIGlmKCAkbmFtZSA9PSAnJyB8fCAkbmFtZSA9PSAnX19CVUlMVElOX18nICkKICAgICAgewoJcmV0dXJuIHNlbGY6OmdldF9zdGRfY29uc3VtZXIoKTsKICAgICAgfQoKICAgICRtb2R1bGUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJG5hbWUpOwogICAgaWYoICEkbW9kdWxlICkgcmV0dXJuICRyZXM7CgogICAgJHJlcyA9ICRtb2R1bGUtPkdldEZldUF1dGhDb25zdW1lcigpOwogICAgcmV0dXJuICRyZXM7CiAgfQoKfSAvLyBjbGFzcwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.Random.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiNCRUdJTl9MSUNFTlNFDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIA0KIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQ0KIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZA0KIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIA0KIyAgd2Vic2l0ZS4NCiMgDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkDQojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQ0KIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TDQojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbiANCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0ENCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiNFTkRfTElDRU5TRQ0KDQovKioNCiAqIEdlbmVyYXRlIHJhbmRvbSBjaGFyYWN0ZXJzLg0KICoNCiAqIEBhdXRob3IgICAgTGF1cmVudGl1IFRhbmFzZSA8ZXhwZXJ0cGhwQHlhaG9vLmNvbT4NCiAqIEB2ZXJzaW9uICAgMS4xDQogKi8NCg0KY2xhc3MgUmFuZG9tDQp7DQoJLyoqDQoJICogU2V0IGRlZmF1bHQgY2hhcmFjdGVycy4NCiAgICAgKg0KICAgICAqIEB2YXIgICAgICBzdHJpbmcNCiAgICAgKiBAYWNjZXNzICAgcHJpdmF0ZQ0KICAgICAqLw0KDQoJdmFyICRfdmNyczsNCg0KCS8qKg0KCSAqIElmIGhhdmUgbnVtYmVyDQogICAgICoNCiAgICAgKiBAdmFyICAgICAgYm9vbA0KICAgICAqIEBhY2Nlc3MgICBwcml2YXRlDQogICAgICovDQoNCgl2YXIgJF92bnVtOw0KDQoJLyoqDQoJICogSWYgZG9lc24ndCBoYXZlIG51bWJlcg0KICAgICAqDQogICAgICogQHZhciAgICAgIGJvb2wNCiAgICAgKiBAYWNjZXNzICAgcHJpdmF0ZQ0KICAgICAqLw0KDQoJdmFyICRfdm5vdDsNCg0KCS8qKg0KCSAqIENvbnN0cnVjdG9yDQoJICoNCgkgKiBTZXQgZGVmYXVsdCB2YWx1ZXMNCgkgKg0KCSAqIEBwYXJhbSAgc3RyaW5nICAkY3JzICAgQ2hhcmFjdGVycyBvdXRwdXQNCgkgKiBAcGFyYW0gIGJvb2wgICAgJG51bSAgIFdpdGggbnVtYmVyDQoJICogQHBhcmFtICBib29sICAgICRub3QgICBXaXRoIG5vdCBudW1iZXINCgkgKi8NCg0KCWZ1bmN0aW9uIFJhbmRvbSgkY3JzID0gZmFsc2UsICRudW0gPSBmYWxzZSwgJG5vdCA9IGZhbHNlKXsNCgkJJHRoaXMtPl92bnVtID0gJG51bTsNCgkJJHRoaXMtPl92bm90ID0gJG5vdDsNCgkJaWYoISRjcnMpew0KCQkJJHRoaXMtPl92Y3JzID0gIjAxMjM0NTY3ODkiLg0KCQkJCSJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIuDQoJCQkJIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIjsNCgkJfWVsc2V7DQoJCQkkdGhpcy0+X3ZjcnMgPSAkY3JzOw0KCQkJaWYoKCRudW0gfHwgJG5vdCkgJiYgISR0aGlzLT5fcmVjKCRjcnMsICRudW0sICRub3QpKXsNCgkJCQlpZigkbnVtICYmICRub3QpICRlcnIgPSAibnVtYmVyIG9yIG5vdCBudW1iZXIiOw0KCQkJCWVsc2VpZigkbnVtKSAkZXJyID0gIm51bWJlciI7DQoJCQkJZWxzZWlmKCRub3QpICRlcnIgPSAibm90IG51bWJlciI7DQoJCQkJZWxzZSAkZXJyID0gImNvbXBhcmF0aW9uIjsNCgkJCQl0cmlnZ2VyX2Vycm9yKCJDbGFzcyBSYW5kb20gLSBTdHJpbmcgaW5wdXQgWyAiLiRjcnMuIiBdIGRvZXNuJ3QgaGF2ZSAiLiRlcnIsIEVfVVNFUl9FUlJPUik7DQoJCQl9DQoJCX0NCgl9DQoNCgkvKioNCgkgKiBDb21wYXJlIGlucHV0IHN0cmluZw0KCSAqDQoJICogQGFjY2VzcyAgcHJpdmF0ZQ0KCSAqIEBwYXJhbSAgIHN0cmluZyAgICRzdHIgICAgICBDaGFyYWN0ZXJzIGlucHV0DQoJICogQHBhcmFtICAgYm9vbCAgICAgJG51bWJlciAgIEhhdmUgbnVtYmVyDQoJICogQHBhcmFtICAgYm9vbCAgICAgJG5vdG51bSAgIEhhdmUgbm90IG51bWJlcg0KCSAqIEByZXR1cm4gIGJvb2wgICAgIElmIGhhdmUgbnVtYmVyIG9yL2FuZCBub3QgbnVtYmVyDQoJICovDQoNCglmdW5jdGlvbiBfcmVjKCRzdHIsICRudW1iZXIgPSB0cnVlLCAkbm90bnVtID0gdHJ1ZSl7DQoJCSRjbnQgPSBzdHJsZW4oJHN0cik7DQoJCSRzZXQxID0gJHNldDIgPSBmYWxzZTsNCgkJaWYoJG51bWJlciB8fCAkbm90bnVtKXsNCgkJCWZvcigkaT0wOyRpPCRjbnQ7JGkrKyl7DQoJCQkJaWYoJHN0cnskaX0gPT09IHN0cnZhbChpbnR2YWwoJHN0cnskaX0pKSkgJHNldDEgPSB0cnVlOw0KCQkJCWVsc2UgJHNldDIgPSB0cnVlOw0KCQkJCWlmKCRzZXQxICYmICRzZXQyKSBicmVhazsNCgkJCX0NCgkJCWlmKCRudW1iZXIgJiYgJG5vdG51bSkgcmV0dXJuICgkc2V0MSAmJiAkc2V0Mik7DQoJCQllbHNlaWYoJG51bWJlcikgcmV0dXJuICRzZXQxOw0KCQkJZWxzZWlmKCRub3RudW0pIHJldHVybiAkc2V0MjsNCgkJCWVsc2UgcmV0dXJuIHRydWU7DQoJCX1lbHNlIHJldHVybiB0cnVlOw0KCX0NCg0KCS8qKg0KCSAqIEdlbmVyYXRlIHJhbmRvbSBjaGFyYWN0ZXJzDQoJICoNCgkgKiBAYWNjZXNzICBwdWJsaWMNCgkgKiBAcGFyYW0gICBpbnQgICAgICAkbGVuICAgTGVuZ3RoIG9mIHRoZSBzdHJpbmcgeW91IHdhbnQgZ2VuZXJhdGVkDQoJICogQHJldHVybiAgc3RyaW5nICAgUmFuZG9tIGNoYXJhY3RlcnMNCgkgKi8NCg0KCWZ1bmN0aW9uIGdldCgkbGVuKXsNCgkJaWYoIShpc19pbnQoJGxlbikgJiYgJGxlbiA+IDApKSByZXR1cm4gJHRoaXMtPl92Y3JzOw0KCQkkcmV0ID0gIiI7DQoJCSRjbnQgPSBzdHJsZW4oJHRoaXMtPl92Y3JzKS0xOw0KCQlmb3IoJGk9MDskaTwkbGVuOyRpKyspICRyZXQgLj0gJHRoaXMtPl92Y3Jze3JhbmQoMCwgJGNudCl9Ow0KCQlpZigkdGhpcy0+X3ZudW0gfHwgJHRoaXMtPl92bm90KSByZXR1cm4gJHRoaXMtPl9yZWMoJHJldCwgJHRoaXMtPl92bnVtLCAkdGhpcy0+X3Zub3QpID8gJHJldCA6IFJhbmRvbTo6Z2V0KCRsZW4pOw0KCQllbHNlIHJldHVybiAkcmV0Ow0KCX0NCg0KfQ0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.RRUtils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgUlJVdGlscwp7CiAgZnVuY3Rpb24gYXJyYXlfa2V5X2V4aXN0c19zdWJzdHIoICRhcnIsICRleHByICkKICB7CiAgICAka2V5cyA9IGFycmF5X2tleXMoICRhcnIgKTsKICAgIGZvcmVhY2goICRrZXlzIGFzICRrICkKICAgICAgewoJaWYoIHN0cnN0ciggJGssICRleHByICkgKSByZXR1cm4gdHJ1ZTsKICAgICAgfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gYXJyYXlfZmluZF9rZXlfcmVnZXhwKCAkYXJyLCAkZXhwciApCiAgewogICAgJGtleXMgPSBhcnJheV9rZXlzKCAkYXJyICk7CiAgICBmb3JlYWNoKCAka2V5cyBhcyAkayApCiAgICAgIHsKCWlmKCBwcmVnX21hdGNoKCAkZXhwciwgJGsgKSApIHJldHVybiAkazsKICAgICAgfQogICAgcmV0dXJuIGZhbHNlOwogIH0KCgogIGZ1bmN0aW9uIGFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRhcnIxLCAkYXJyMiApCiAgewogICAgJHh4cmVzdWx0ID0gYXJyYXkoKTsKICAgIC8vIGFkZCBpdGVtcyBjb21tb24gdG8gYXJyMSBhbmQgYXJyMiAKICAgIC8vIGJ1dCBmYXZvciByZXF1aXJlZCBpdGVtcwogICAgaWYoICFpc19hcnJheSggJGFycjEgKSB8fCAhaXNfYXJyYXkoICRhcnIyICkgKQogICAgICB7CglyZXR1cm47CiAgICAgIH0KICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCWZvcmVhY2goICRhcnIyIGFzICRhMiApCgkgIHsKCSAgICBpZiggJGExWyduYW1lJ10gPT0gJGEyWyduYW1lJ10gKSAKCSAgICAgIHsKCQlpZiggJGExWydyZXF1aXJlZCddID09IDIgKSAKCQkgIHsKCQkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTEgKTsKCQkgICAgYnJlYWs7CgkJICB9CgkJZWxzZSAKCQkgIHsKCQkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTIgKTsKCQkgICAgYnJlYWs7CgkJICB9CgkgICAgICB9ICAgIAoJICB9CiAgICAgIH0KICAKICAgIC8vIGFkZCBpdGVtcyBpbiBhcnIxIG5vdCBpbiByZXN1bHQKICAgIGZvcmVhY2goICRhcnIxIGFzICRhMSApCiAgICAgIHsKCSRmb3VuZCA9IGZhbHNlOwoJZm9yZWFjaCggJHh4cmVzdWx0IGFzICRyZXMgKQoJICB7CgkgICAgaWYoICRhMVsnbmFtZSddID09ICRyZXNbJ25hbWUnXSApCgkgICAgICB7CgkJJGZvdW5kID0gdHJ1ZTsKCQlicmVhazsKCSAgICAgIH0KCSAgfQoJaWYoICEkZm91bmQgKQoJICB7CgkgICAgYXJyYXlfcHVzaCggJHh4cmVzdWx0LCAkYTEgKTsKCSAgfQogICAgICB9CiAgCiAgICAvLyBhZGQgaXRlbXMgaW4gYXJyMiBub3QgaW4gcmVzdWx0CiAgICBmb3JlYWNoKCAkYXJyMiBhcyAkYTIgKQogICAgICB7CgkkZm91bmQgPSBmYWxzZTsKCWZvcmVhY2goICR4eHJlc3VsdCBhcyAkcmVzICkKCSAgewoJICAgIGlmKCAkYTJbJ25hbWUnXSA9PSAkcmVzWyduYW1lJ10gKQoJICAgICAgewoJCSRmb3VuZCA9IHRydWU7CgkJYnJlYWs7CgkgICAgICB9CgkgIH0KCWlmKCAhJGZvdW5kICkKCSAgewoJICAgIGFycmF5X3B1c2goICR4eHJlc3VsdCwgJGEyICk7CgkgIH0KICAgICAgfQogICAgcmV0dXJuICR4eHJlc3VsdDsKICB9CgoKICBmdW5jdGlvbiBjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXkoICRlMSwgJGUyICkKICB7CiAgICBpZiggJGUxWydzb3J0X2tleSddIDwgJGUyWydzb3J0X2tleSddICkKICAgICAgewoJcmV0dXJuIC0xOwogICAgICB9CiAgICBlbHNlIGlmKCAkZTFbJ3NvcnRfa2V5J10gPiAkZTJbJ3NvcnRfa2V5J10gKQogICAgICB7CglyZXR1cm4gMTsKICAgICAgfQogICAgcmV0dXJuIDA7CiAgfQoKCiAgZnVuY3Rpb24gZXhwbG9kZV93aXRoX2tleSgkc3RyLCAkaW5nbHVlPSc9JywgJG91dGdsdWU9JyYnKQogIHsKICAgICRyZXQgPSBhcnJheSgpOwogICAgJGExID0gc3BsaXQoJG91dGdsdWUsJHN0cik7CiAgICBmb3JlYWNoKCAkYTEgYXMgJGEyICkKICAgICAgewoJbGlzdCggJGssICR2ICkgPSBzcGxpdCggJGluZ2x1ZSwgJGEyICk7CgkkcmV0WyAkayBdID0gJHY7CiAgICAgIH0KICAgIHJldHVybiAkcmV0OwogIH0KCgogIGZ1bmN0aW9uIGZpbmRfaW5kZXhfb2ZfdmFsdWUoICRkYXRhLCAkdmFsdWUsICRkZmx0ICkKICB7CiAgICAkaSA9IDA7CiAgICBmb3JlYWNoKCAkZGF0YSBhcyAkaz0+JHYgKQogICAgICB7CglpZiggJHYgPT0gJHZhbHVlICkKCSAgewoJICAgIHJldHVybiAkaTsKCSAgfQoJJGkrKzsKICAgICAgfQogICAgcmV0dXJuICRkZmx0OwogIH0KCgogIGZ1bmN0aW9uIGltcGxvZGVfd2l0aF9rZXkoJGFzc29jLCAkaW5nbHVlID0gJz0nLCAkb3V0Z2x1ZSA9ICcmJykKICB7CiAgICAkcmV0dXJuID0gbnVsbDsKICAgIGZvcmVhY2ggKCRhc3NvYyBhcyAkdGsgPT4gJHR2KSAkcmV0dXJuIC49ICRvdXRnbHVlLiR0ay4kaW5nbHVlLiR0djsKICAgIHJldHVybiBzdWJzdHIoJHJldHVybixzdHJsZW4oJG91dGdsdWUpKTsKICB9CgoKCiAgZnVuY3Rpb24gbXlDcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJG5hbWUsICR2YWx1ZT0nJywgJHNlbGVjdGVkdmFsdWU9JycsIAoJCQkJICRhZGR0dGV4dD0nJykKICB7CiAgICAkdGV4dCA9ICc8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWx1ZS4nIic7CiAgICAkYXJyID0gc3BsaXQoIiwiLCRzZWxlY3RlZHZhbHVlKTsKICAgIGZvcmVhY2goICRhcnIgYXMgJGEgKQogICAgICB7CglpZiAoJGEgPT0gJHZhbHVlKQoJICB7CgkgICAgJHRleHQgLj0gJyAnIC4gJ2NoZWNrZWQ9ImNoZWNrZWQiJzsKCSAgfQogICAgICB9CiAgICBpZiAoJGFkZHR0ZXh0ICE9ICcnKQogICAgICB7CgkkdGV4dCAuPSAnICcuJGFkZHR0ZXh0OwogICAgICB9CiAgICAkdGV4dCAuPSAiIC8+XG4iOwogICAgcmV0dXJuICR0ZXh0OwogIH0KCiAgZnVuY3Rpb24gbXlDcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICRuYW1lLCAkdmFsdWU9JycsICRpbWFnZT0nJywgJGFkZHR0ZXh0PScnKQogIHsKICAgIGdsb2JhbCAkZ0NtczsKICAgICR0ZXh0ID0gJzxpbnB1dCBuYW1lPSInLiRpZC4kbmFtZS4nIiB2YWx1ZT0iJy4kdmFsdWUuJyIgdHlwZT0nOwogICAgaWYgKCRpbWFnZSAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyJpbWFnZSInOwoJJGltZyA9ICRnQ21zLT5jb25maWdbJ3Jvb3RfdXJsJ10uRElSRUNUT1JZX1NFUEFSQVRPUi4kaW1hZ2U7CgkkdGV4dCAuPSAnIHNyYz0iJy4kaW1nLiciJzsKICAgICAgfQogICAgZWxzZSAKICAgICAgewoJJHRleHQgLj0gJyJzdWJtaXQiJzsKICAgICAgfQogICAgaWYgKCRhZGR0dGV4dCAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyAnLiRhZGR0dGV4dDsKICAgICAgfQogICAgJHRleHQgLj0gJyAvPic7CiAgICByZXR1cm4gJHRleHQgLiAiXG4iOwogIH0KCgogIGZ1bmN0aW9uIG15Q3JlYXRlSW5wdXRIaWRkZW4oICRpZCwgJG5hbWUsICR2YWx1ZT0nJywgJGFkZHRleHQ9JycsICRkZWxpbT0nLCcpCiAgewogICAgaWYoIGlzX2FycmF5KCAkdmFsdWUgKSApCiAgICAgIHsKCSR2YWwgPSBSUlV0aWxzOjppbXBsb2RlX3dpdGhfa2V5KCAkdmFsdWUgKTsKICAgICAgfQogICAgZWxzZQogICAgICB7CgkkdmFsID0gJHZhbHVlOwogICAgICB9CiAgICAkdmFsID0gc3RyX3JlcGxhY2UoJyInLCAnJnF1b3Q7JywgJHZhbCk7CiAgICAkdGV4dCA9ICc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSInLiRpZC4kbmFtZS4nIiB2YWx1ZT0iJy4kdmFsLiciJzsKICAgIGlmICgkYWRkdGV4dCAhPSAnJykKICAgICAgewoJJHRleHQgLj0gJyAnLiRhZGR0ZXh0OwogICAgICB9CiAgICAkdGV4dCAuPSAiIC8+XG4iOwogICAgcmV0dXJuICR0ZXh0OwogIH0KCiAgZnVuY3Rpb24gaXNfYXNzb2NpYXRpdmUoJiRhcnJheSl7CiAgICBpZiAoIWlzX2FycmF5KCRhcnJheSkpIHJldHVybiBmYWxzZTsKICAgIGZvcmVhY2goYXJyYXlfa2V5cygkYXJyYXkpIGFzICRrZXk9PiR2YWx1ZSkgewogICAgICBpZiggIWlzX251bWVyaWMoJGtleSkgKSByZXR1cm4gdHJ1ZTsKICAgIH0KICAgIHJldHVybiBmYWxzZTsKfQoKfSAvLyBFbmQgb2YgY2xhc3MKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/interface.feu_auth_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmludGVyZmFjZSBmZXVfYXV0aF9jb25zdW1lcgp7CiAgY29uc3QgQ0FQQUJJTElUWV9MT0dJTiA9ICdDQVBBQklMSVRZX0xPR0lOJzsKICBjb25zdCBDQVBBQklMSVRZX0xPR09VVCA9ICdDQVBBQklMSVRZX0xPR09VVCc7CiAgY29uc3QgQ0FQQUJJTElUWV9DSEFOR0VTRVRUSU5HUyA9ICdDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTJzsKICBjb25zdCBDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSA9ICdDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSc7CiAgY29uc3QgQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QgPSAnQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QnOwogIGNvbnN0IENBUEFCSUxJVFlfVVNFU1REQ0hBTkdFU0VUVElOR1MgPSAnQ0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9DSEFOR0VQQVNTV0QgPSAnQ0FQQUJJTElUWV9DSEFOR0VQQVNTV0QnOwoKICBjb25zdCBQUk9QRVJUWV9VU0VSTkFNRSA9ICdfX1VTRVJOQU1FX18nOwogIGNvbnN0IFBST1BFUlRZX1VJRCAgICAgID0gJ19fVUlEX18nOwoKICAvKioKICAgKiBSZXR1cm4gYSBmbGFnIGlmIHRoZSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQuCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGlzX2F1dGhlbnRpY2F0ZWQoKTsKCiAgLyoqCiAgICogUmV0dXJuIGFuIGFycmF5IHdpdGggdGhpcyBhdXRoZW50aWNhdGlvbiBtZXRob2RzIGNhcGFiaWxpdGllcwogICAqCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jYXBhYmlsaXRpZXMoKTsKCiAgLyoqCiAgICogVGVzdCBpZiB0aGUgY29uc3VtZXIgaGFzIHRoZSBjYXBhYmlsaXR5CiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGhhc19jYXBhYmlsaXR5KCRmbGFnKTsKCiAgLyoqCiAgICogQSBmdW5jdGlvbiB0byBkaXNwbGF5IGxvZ2luIGluZm9ybWF0aW8KICAgKiAob3IgYSBsaW5rIHRvIGEgbG9naW4gcGFnZSkKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvZ2luX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKCiAgLyoqCiAgICogQSBmdW5jdGlvbiB0byBkaXNwbGF5IGxvZ2luIGluZm9ybWF0aW9uCiAgICogKG9yIGEgbGluayB0byBhIGxvZ2luIHBhZ2UpCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoKICAvKioKICAgKiBBIGZ1bmN0aW9uIHRvIGRpc3BsYXkgdGhlIGNoYW5nZSBzZXR0aW5ncyBwYWdlCiAgICoKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NoYW5nZXNldHRpbmdzX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKCgogIC8qKgogICAqIEdldCB0aGUgdXNlciBpbmZvcm1hdGlvbiBmcm9tIHRoZSBleHRlcm5hbCBhdXRoZW50aWNhdGlvbiBzeXN0ZW0KICAgKiBmb3IgdXNlIGJ5IEZFVSAKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJfaW5mbygpOwoKCiAgLyoqCiAgICogR2V0IHRoZSBuYW1lIG9mIGFuIEZFVSBwcm9wZXJ0eSB0aGF0IGlzIHVzZWQgdG8gdW5pcXVlbHkgaWRlbnRpZnkKICAgKiBhIHVzZXIgCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jb25uZWN0aW5nX3Byb3BlcnR5X25hbWUoKTsKCgogIC8qKgogICAqIEdldCBhbiBpZGVudGlmaWVyIHRoYXQgdW5pcXVlbHkgaWRlbnRpZmllcyBhIHVzZXIgaW4gdGhpcyBlbnZpcm9ubWVudAogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdW5pcXVlX2lkZW50aWZpZXIoKTsKfQoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CgogICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgCiAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgCiAgICAvL1VzZXIgbGlzdAogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICBpZCBJIEtFWSwKCSAgICAgdXNlcm5hbWUgQyg4MCkgTk9UIE5VTEwsCiAgICAgICAgICAgICBwYXNzd29yZCBDKDMyKSBOT1QgTlVMTCwKICAgICAgICAgICAgIGNyZWF0ZWRhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIGV4cGlyZXMgIi5DTVNfQURPREJfRFQ7CgogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMiLCAKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgJGRiLT5DcmVhdGVTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2Vyc19zZXEiICk7CiAgICAKICAgIC8vR3JvdXAgbGlzdAogICAgJGZsZHMgPSAiCgkgICAgIGlkIEkgS0VZLAoJICAgICBncm91cG5hbWUgQygzMiksCgkgICAgIGdyb3VwZGVzYyBDKDEyOCkKCSAgICAiOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgJGRiLT5DcmVhdGVTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHNfc2VxIiApOwoKICAgIC8vIGxvZ2dlZGluCiAgICAkZmxkcyA9ICIKCSAgICAgc2Vzc2lvbmlkIEMoMjU1KSwKCSAgICAgbGFzdHVzZWQgSSwKCSAgICAgdXNlcmlkIEkKCSAgICAiOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4iLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAKICAgIC8vQ29ubmVjdGlvbnMgYmV0d2VlbiB1c2VycyBhbmQgZ3JvdXBzCiAgICAkZmxkcyA9ICIKCSAgICAgdXNlcmlkIEkgS0VZLAoJICAgICBncm91cGlkIEkgS0VZCgkgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgLy9wcm9wZXJ0eSBkZWZpbml0aW9uCiAgICAkZmxkcyA9ICIKICAgICAgICAgICAgIG5hbWUgICAgICBDKDQwKSBLRVksCiAgICAgICAgICAgICBwcm9tcHQgICAgQygyNTUpIE5PVCBOVUxMLAogICAgICAgICAgICAgdHlwZSAgICAgIEMoMjApIE5PVCBOVUxMLAogICAgICAgICAgICAgbGVuZ3RoICAgIEksCiAgICAgICAgICAgICBtYXhsZW5ndGggSSwKICAgICAgICAgICAgIGF0dHJpYnMgICBDKDI1NSksCiAgICAgICAgICAgICBmb3JjZV91bmlxdWUgSTEsCiAgICAgICAgICAgICBlbmNyeXB0ICAgSTEKICAgICAgICAgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwKCQkJCSAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgIC8vZHJvcGRvd24gc2VsZWN0IG9wdGlvbnMKICAgICRmbGRzID0gIgogICAgICAgICAgICAgb3JkZXJfaWQJCUksCiAgICAgICAgICAgICBvcHRpb25fbmFtZQlDKDQwKSBOT1QgTlVMTCwKICAgICAgICAgICAgIG9wdGlvbl90ZXh0CUMoMjU1KSBOT1QgTlVMTCwKICAgICAgICAgICAgIGNvbnRyb2xfbmFtZQlDKDQwKSBOT1QgTlVMTDsKICAgICAgICAgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAvLyBncm91cCBwcm9wZXJ0eSBtYXAKICAgIC8vIHVzZWQgdG8gYXNzb2NpYXRlIGEgcHJvcGVydHkgdG8gYSBncm91cAogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICAgbmFtZSAgICBDKDQwKSBLRVksCiAgICAgICAgICAgICAgZ3JvdXBfaWQgSSBLRVksCiAgICAgICAgICAgICAgc29ydF9rZXkgSSwgCiAgICAgICAgICAgICAgcmVxdWlyZWQgSSBOT1QgTlVMTCwKICAgICAgICAgICAgICBsb3N0dW5mbGFnIEkKICAgICAgICAgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIsCgkJCQkgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCiAgICAvL3VzZXIgcHJvcGVydGllcwogICAgJGZsZHMgPSAiCgkgICAgIGlkIEkgS0VZLAoJICAgICB1c2VyaWQgSSwKCSAgICAgdGl0bGUgQygxMDApLAoJICAgICBkYXRhIFgyCgkgICAgIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAkZGItPkNyZWF0ZVNlcXVlbmNlKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXNfc2VxIiApOwoKICAgIC8vIGZvcmdvdHRlbiBwYXNzd29yZCBzdHVmZgogICAgJGZsZHMgPSAiCgkgICAgIHVzZXJpZCBJIEtFWSwKICAgICAgICAgICAgIGNvZGUgQygyNSksCiAgICAgICAgICAgICBjcmVhdGVkICIuQ01TX0FET0RCX0RUOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgLy8gbG9naW4gaGlzdG9yeSBzdHVmZgogICAgJGZsZHMgPSAiCiAgICAgICAgICAgICB1c2VyaWQgSSwKCSAgICAgc2Vzc2lvbmlkIEMoMzIpLAogICAgICAgICAgICAgYWN0aW9uIEMoMzIpLAogICAgICAgICAgICAgcmVmZGF0ZSAiLkNNU19BRE9EQl9EVC4iLAogICAgICAgICAgICAgaXBhZGRyZXNzIEMoMjApIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiLAoJCQkJICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgLy8gdGVtcGxhdGVzCiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2xvZ2luZm9ybS50cGwnOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2xvZ2luZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKCiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9nb3V0Zm9ybScsICR0aGlzLT5kZmx0X2xvZ291dGZvcm10ZW1wbGF0ZSk7CgogICAgJGZuID0gZGlybmFtZShfX0ZJTEVfXykuJy90ZW1wbGF0ZXMvb3JpZ19jaGFuZ2VzZXR0aW5ncy50cGwnOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2NoYW5nZXNldHRpbmdzZm9ybScsIGZpbGVfZ2V0X2NvbnRlbnRzKCRmbikgKTsKCiAgICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS4nL3RlbXBsYXRlcy9vcmlnX2ZvcmdvdHBhc3N3b3JkMS50cGwnOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZm9ybScsZmlsZV9nZXRfY29udGVudHMoJGZuKSk7CgogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZW1haWxmb3JtJywgJHRoaXMtPmRmbHRfZm9yZ290cGFzc3dvcmR0ZW1wbGF0ZTIpOwoKICAgICRmbiA9IGRpcm5hbWUoX19GSUxFX18pLicvdGVtcGxhdGVzL29yaWdfZm9yZ290cGFzc3dvcmQzLnRwbCc7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmR2ZXJpZnlmb3JtJyxmaWxlX2dldF9jb250ZW50cygkZm4pKTsKCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfbG9zdHVuZm9ybV90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybScsJHRlbXBsYXRlKTsKICB9CgokZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX2xvc3R1bmZvcm1fY29uZmlybV90ZW1wbGF0ZS50cGwnKTsKaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCiAgewogICAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJywkdGVtcGxhdGUpOwogIH0KCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfbm90aWZpY2F0aW9uX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnbm90aWZpY2F0aW9uX3RlbXBsYXRlJywkdGVtcGxhdGUpOwogIH0KCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJyk7CmlmKCBmaWxlX2V4aXN0cyggJGZuICkgKQogIHsKICAgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX3ZpZXd1c2VyJywkdGVtcGxhdGUpOwogIH0KCiRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfcmVzZXRzZXNzaW9uX3RlbXBsYXRlLnRwbCcpOwppZiggZmlsZV9leGlzdHMoICRmbiApICkKICB7CiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLCR0ZW1wbGF0ZSk7CiAgfQoKICAgIC8vIHByZWZlcmVuY2VzCiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywgNik7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJywgMjApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ21pbl91c2VybmFtZWxlbmd0aCcsIDQpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcsIDQwKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycsIDE4MDApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLDApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnLCAtMSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywgJyonKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsICdibHVlJyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcsIDEpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9tYXJrZXInLCAnIScpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9jb2xvcicsICdncmVlbicpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9mb3Jnb3RwYXNzd2QnLCAnJyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJywgJycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsJycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dvdXQnLCcnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknLCcnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJywwKTsgCiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnLDEpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJywgMjApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJywgNDApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FsbG93X3JlcGVhdGVkX2xvZ2lucycsMCk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLCcuZ2lmLC5wbmcsLmpwZycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZWNvb2tpZXN0b3JlbWVtYmVyJywwKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJywwKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcsJHRoaXMtPkxhbmcoJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nKSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsNjApOwoKICAgIC8vIEV2ZW50cwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dpbicgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9nb3V0JyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25FeHBpcmVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25EZWxldGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25VcGRhdGVVc2VyJyApOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVHcm91cCcgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCgnT25VcGRhdGVHcm91cCcpOwogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25EZWxldGVHcm91cCcgKTsKCiAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCAnQ29yZScsICdDb250ZW50UG9zdFJlbmRlcicsIGZhbHNlICk7CiAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlclVwZGF0ZWQnLGZhbHNlKTsKICAgICR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcsZmFsc2UpOwogICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ01vZHVsZUluc3RhbGxlZCcsZmFsc2UpOwogICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ01vZHVsZUluc3RhbGxlZCcsZmFsc2UpOwogICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ01vZHVsZVVuaW5zdGFsbGVkJyxmYWxzZSk7CgogICAgLy8gcGVybWlzc2lvbnMKICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcycpOwoKPz4KCg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKJGRiID0mICR0aGlzLT5HZXREYigpOwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCAkZGIgKTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnNfc2VxIiApOwokZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHNfc2VxIiApOwokZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzX3NlcSIgKTsKCi8vIHRlbXBsYXRlcwokdGhpcy0+RGVsZXRlVGVtcGxhdGUoKTsKCi8vIHByZWZlcmVuY2VzCiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCk7CiAgICAKLy8gcGVybWlzc2lvbnMKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwoKLy8gRkVVc2Vycy1zcGVjaWZpYyBwZXJtaXNzaW9ucyAuLi4gbWF5IG9yIG1heSBub3QgZXhpc3QKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBSZW1vdmUgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgR3JvdXBzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEdyb3VwcycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cCBBc3NpZ25tZW50cycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIFJlbW92ZSBHcm91cHMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIE1vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIE1vZGlmeSBUZW1wbGF0ZXMnKTsKCi8vIEV2ZW50cwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkxvZ2luJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkxvZ291dCcgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25FeHBpcmVVc2VyJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkNyZWF0ZVVzZXInICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uRGVsZXRlVXNlcicgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25DcmVhdGVHcm91cCcgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25EZWxldGVHcm91cCcgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25VcGRhdGVVc2VyJyApOwoKJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ29yZScsJ0NvbnRlbnRQb3N0UmVuZGVyJyk7CiR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyVXBkYXRlZCcpOwokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlckRlbGV0ZWQnKTsKJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ29yZScsJ01vZHVsZUluc3RhbGxlZCcpOwokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywnTW9kdWxlSW5zdGFsbGVkJyk7CiR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCdNb2R1bGVVbmluc3RhbGxlZCcpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[XDw/cGhwCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBGcm9udEVuZFVzZXJzIChjKSAyMDA4IGJ5IFJvYmVydCBDYW1wYmVsbCAKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZCAKIyAgd2Vic2l0ZS4KIyAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFRoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluIAojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKc3dpdGNoKCAkb2xkdmVyc2lvbiApCiAgewogIGNhc2UgJzAuMS4wJzoKICBjYXNlICcwLjEuMSc6CiAgICB7CiAgICAgIC8vIHBlcm1pc3Npb25zCiAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLAoJCQkgICAgICAnTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzJyk7CiAgICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nLCAkdGhpcy0+ZGZsdF9mb3Jnb3RwYXNzd29yZHRlbXBsYXRlMSk7CiAgICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUyKTsKICAgICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkdmVyaWZ5Zm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUzKTsKICAgICAgCiAgICAgIC8vIGZvcmdvdHRlbiBwYXNzd29yZCBzdHVmZgogICAgICAkZmxkcyA9ICIKCSAgICAgICAgICAgICB1c2VyaWQgSSBLRVksCiAgICAgICAgICAgICAgICAgICAgIGNvZGUgQygyNSksCiAgICAgICAgICAgICAgICAgICAgIGNyZWF0ZWQgIi5DTVNfQURPREJfRFQ7CiAgICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiLAoJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAgIC8vIG5vdGljZSBubyBicmVhawogICAgfQogICAgCiAgY2FzZSAnMC4xLjInOgogICAgewogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2ZvcmdvdHBhc3N3ZCcsICcnKTsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9jaGFuZ2VzZXR0aW5ncycsICcnKTsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsJycpOwogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcsJycpOwogICAgICAvLyBub3RpY2Ugbm8gYnJlYWsKICAgIH0KICBjYXNlICcwLjEuMyc6CiAgY2FzZSAnMC4xLjQnOgogIGNhc2UgJzAuMS41JzoKICBjYXNlICcwLjEuNic6CiAgICB7CiAgICAgIC8vZHJvcGRvd24gc2VsZWN0IG9wdGlvbnMKICAgICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgICAkZmxkcyA9ICIKCQkJCSBvcmRlcl9pZAkJSSwKCQkJCSBvcHRpb25fbmFtZQlDKDQwKSBOT1QgTlVMTCwKCQkJCSBvcHRpb25fdGV4dAlDKDgwKSBOT1QgTlVMTCwKCQkJCSBjb250cm9sX25hbWUJQyg0MCkgTk9UIE5VTEw7CgkJCQkiOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTcWwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMiLAoJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICAgIAogICAgICAvLyBhbmQgY2xlYW51cCBwcm9wZXJ0eSBuYW1lcwogICAgICAkcSA9ICd1cGRhdGUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIHNldCBuYW1lID0gbGNhc2UocmVwbGFjZShuYW1lLCIgIiwiXyIpKSc7CiAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgIH0gLy9jYXNlCiAgICAKICBjYXNlICcwLjEuNyc6CiAgICB7CiAgICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwKCQkJCSAgICAgICJtYXhsZW5ndGggSSIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgIH0gLy8gY2FzZQoKICBjYXNlICcxLjAuMCc6CiAgICB7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJywxKTsKICAgIH0KCiAgY2FzZSAnMS4wLjEnOgogICAgewogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnLCAyMCk7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcsIDIwKTsKICAgIH0KCiAgY2FzZSAnMS4wLjUnOgogIGNhc2UgJzEuMC42JzoKICAgIHsKICAgICAgLy8gRXZlbnRzCiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9naW4nICk7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9nb3V0JyApOwogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkV4cGlyZVVzZXInICk7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uQ3JlYXRlVXNlcicgKTsKICAgICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25EZWxldGVVc2VyJyApOwogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkNyZWF0ZUdyb3VwJyApOwogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkRlbGV0ZUdyb3VwJyApOwoJICAgIAogICAgICAvLyBQcmVmZXJlbmNlcwogICAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywxKTsKCSAgICAKICAgICAgLy8gVGFibGVzCiAgICAgICRmbGRzID0gIgogICAgICAgICAgICAgdXNlcmlkIEkgS0VZLAoJICAgICBzZXNzaW9uaWQgQygzMiksCiAgICAgICAgICAgICBhY3Rpb24gQygzMiksCiAgICAgICAgICAgICB3aGVuIERUCiAgICAgICAgICAgICI7IAogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiLAoJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICB9CgogIGNhc2UgJzEuMS4wJzoKICAgIHsKICAgICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q2hhbmdlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMiLAoJCQkJCSJvcHRpb25fdGV4dCBDKDI1NSkgTk9UIE5VTEwiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICB9CgogIGNhc2UgJzEuMi4xJzoKICAgIHsKICAgICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25VcGRhdGVVc2VyJyApOwogICAgfQoKICBjYXNlICcxLjIuMic6CiAgICB7CiAgICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLgoJCQkJICAgICAgICJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiApOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkgICAgCiAgICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAgICRmbGRzID0gIgogICAgICAgICAgICAgdXNlcmlkIEksCgkgICAgIHNlc3Npb25pZCBDKDMyKSwKICAgICAgICAgICAgIGFjdGlvbiBDKDMyKSwKICAgICAgICAgICAgIHJlZmRhdGUgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgICAgIGlwYWRkcmVzcyBDKDIwKSI7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuCgkJCQkJIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiLAoJCQkJCSRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CiAgICB9CgkgIAoKICBjYXNlICcxLjMnOgogICAgewogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRjb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAiLAoJCQkJICAgICAgImxvc3R1bmZsYWcgSSIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkpOwoKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScsJycpOwogICAgfQoKICBjYXNlICcxLjMuMSc6CiAgICB7CiAgICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25fc3ViamVjdCcsJHRoaXMtPkxhbmcoJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nKSk7CiAgICAgICRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfbm90aWZpY2F0aW9uX3RlbXBsYXRlLnRwbCcpOwogICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKCXsKCSAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICR0aGlzLT5TZXRUZW1wbGF0ZSgnbm90aWZpY2F0aW9uX3RlbXBsYXRlJywkdGVtcGxhdGUpOwoJfQogICAgfQoKICBjYXNlICcxLjMuMic6CiAgICB7CiAgICAgICR0bXBfbmFtZSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllc190bXAnOwogICAgICAkcmVhbF9uYW1lID0gY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzJzsKCiAgICAgIC8vIDEgQ3JlYXRlIHRlbXBvcmFyeSB0YWJsZQogICAgICAvL3VzZXIgcHJvcGVydGllcwogICAgICAkZmxkcyA9ICIKCSAgICAgIGlkIEkgS0VZLAogIAkgICAgICB1c2VyaWQgSSwKIAkgICAgICB0aXRsZSBDKDEwMCksCgkgICAgICBkYXRhIFgyCgkgICAgIjsKICAgICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoJHRtcF9uYW1lLCRmbGRzLCR0YWJvcHRhcnJheSk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgICAgLy8gMi4gIENvcHkgYWxsIGRhdGEgZnJvbSBmZXVzZXJzX3Byb3BlcnRpZXMgdG8gdGVtcG9yYXJ5IHRhYmxlCiAgICAgICRxdWVyeSA9ICdJTlNFUlQgSU5UTyAnLiR0bXBfbmFtZS4nIChpZCx1c2VyaWQsdGl0bGUsZGF0YSkKICAgICAgICAgICAgICAgICAgICAgIFNFTEVDVCBpZCx1c2VyaWQsdGl0bGUsZGF0YSBGUk9NICcuJHJlYWxfbmFtZTsKICAgICAgJGRiLT5FeGVjdXRlKCRxdWVyeSk7CgogICAgICAvLyAzLiAgRHJvcCBmZXVzZXJzX3Byb3BlcnRpZXMKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIiApOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICAvLyA0LiAgUmVuYW1lIHRhYmxlIAogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+UmVuYW1lVGFibGVTUUwoJHRtcF9uYW1lLCRyZWFsX25hbWUpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICB9CgogIGNhc2UgJzEuMy4zJzoKICAgICRmbiA9IGNtc19qb2luX3BhdGgoZGlybmFtZShfX0ZJTEVfXyksJ3RlbXBsYXRlcycsJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJyk7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfdmlld3VzZXInLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCiAgY2FzZSAnMS40JzoKICBjYXNlICcxLjQuMSc6CiAgY2FzZSAnMS40LjInOgogIGNhc2UgJzEuNC4zJzoKICBjYXNlICcxLjQuNCc6CiAgY2FzZSAnMS41JzoKICAgIHsKICAgICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5BbHRlckNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwgInByb21wdCBDKDI1NSkgTk9UIE5VTEwiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjUuMSc6CiAgY2FzZSAnMS41LjInOgogIGNhc2UgJzEuNS4zJzoKICAgIHsKICAgICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5BbHRlckNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluJywgInNlc3Npb25pZCBDKDI1NSkiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjUuNCc6CiAgICB7CiAgICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImF0dHJpYnMgQygyNTUpIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS42LjUnOgogIGNhc2UgJzEuNi42JzoKICBjYXNlICcxLjYuNyc6CiAgY2FzZSAnMS42LjgnOgogIGNhc2UgJzEuNi45JzoKICBjYXNlICcxLjYuMTAnOgogICAgewogICAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCAnQ29yZScsICdDb250ZW50UG9zdFJlbmRlcicsIGZhbHNlICk7CiAgICB9CgogIGNhc2UgJzEuNi4xMSc6CiAgY2FzZSAnMS42LjEyJzoKICBjYXNlICcxLjYuMTMnOgogIGNhc2UgJzEuNi4xNCc6CiAgY2FzZSAnMS42LjE1JzoKICBjYXNlICcxLjYuMTYnOgogICAgewogICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKGRpcm5hbWUoX19GSUxFX18pLCd0ZW1wbGF0ZXMnLCdvcmlnX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZS50cGwnKTsKICAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCgl7CgkgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJICAkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfcmVzZXRzZXNzaW9uJywkdGVtcGxhdGUpOwoJfQogICAgfQoKICBjYXNlICcxLjcuMTEnOgogIGNhc2UgJzEuOCc6CiAgY2FzZSAnMS44LjEnOgogIGNhc2UgJzEuOC4yJzoKICBjYXNlICcxLjguMyc6CiAgY2FzZSAnMS44LjUnOgogIGNhc2UgJzEuOSc6CiAgY2FzZSAnMS45LjEnOgogIGNhc2UgJzEuOS4yJzoKICAgIHsKICAgICAgJGRiID0mICR0aGlzLT5HZXREYigpOwogICAgICAkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5BZGRjb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiIsCgkJCQkgICAgICAiZm9yY2VfdW5pcXVlIEkxIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS4xMCc6CiAgY2FzZSAnMS4xMC4xJzoKICBjYXNlICcxLjEwLjInOgogIGNhc2UgJzEuMTAuMyc6CiAgICB7CiAgICAgICRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKICAgICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImVuY3J5cHQgSTEiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjExJzoKICAgIHsKICAgICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJVcGRhdGVkJyxmYWxzZSk7CiAgICAgICR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcsZmFsc2UpOwogICAgfQoKICBjYXNlICcxLjExLjEnOgogIGNhc2UgJzEuMTInOgogICAgewogICAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCdDb3JlJywnTW9kdWxlSW5zdGFsbGVkJyxmYWxzZSk7CiAgICAgICR0aGlzLT5BZGRFdmVudEhhbmRsZXIoJ0NvcmUnLCdNb2R1bGVJbnN0YWxsZWQnLGZhbHNlKTsKICAgICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ29yZScsJ01vZHVsZVVuaW5zdGFsbGVkJyxmYWxzZSk7CiAgICB9CiAgfSAvLyBzd2l0Y2gKPz4KCg==]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/addgroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4KCntpZiBpc3NldCgkbWVzc2FnZSkgfQogIHtpZiBpc3NldCgkZXJyb3IpIH0KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQoKeyRzdGFydGZvcm19CntpZiBpc3NldCgkaGlkZGVuKX0KPGRpdj57JGhpZGRlbn08L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ncm91cG5hbWV9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZ3JvdXBuYW1lfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ncm91cGRlc2N9PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZ3JvdXBkZXNjfTwvcD4KPC9kaXY+Cgp7aWYgJHByb3Bjb3VudCA+IDB9Cjxici8+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9InBhZ2V0YWJsZSI+CiAgPHRoZWFkPgogICAgPHRyPgogICAgICA8dGg+eyRuYW1ldGV4dH08L3RoPgogICAgICA8dGg+eyRwcm9tcHR0ZXh0fTwvdGg+CiAgICAgIDx0aD57JHR5cGV0ZXh0fTwvdGg+CiAgICAgIDx0aD57JGZpZWxkc3RhdHVzdGV4dH08L3RoPgogICAgICA8dGg+eyR1c2VkaW5sb3N0dW50ZXh0fTwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPjwvdGg+CiAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPjwvdGg+CiAgICA8L3RyPgogIDwvdGhlYWQ+CiAgPHRib2R5PgogIHtmb3JlYWNoIGZyb209JHByb3BzIGl0ZW09J3Byb3BlJ30KICAgIHtjeWNsZSB2YWx1ZXM9InJvdzEscm93MiIgYXNzaWduPSdyb3djbGFzcyd9CiAgICA8dHIgY2xhc3M9Inskcm93Y2xhc3N9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3skcm93Y2xhc3N9JzsiPgogICAgICA8dGQ+eyRwcm9wZS0+aGlkZGVufXskcHJvcGUtPm5hbWV9PC90ZD4KICAgICAgPHRkPnskcHJvcGUtPnByb21wdH08L3RkPgogICAgICA8dGQ+eyRwcm9wZS0+dHlwZX08L3RkPgogICAgICA8dGQ+eyRwcm9wZS0+cmVxdWlyZWR9PC90ZD4KICAgICAgPHRkPnskcHJvcGUtPmFza2lubG9zdHVufTwvdGQ+CiAgICAgIDx0ZD57aWYgaXNzZXQoJHByb3BlLT5tb3ZldXApfXskcHJvcGUtPm1vdmV1cH17L2lmfTwvdGQ+CiAgICAgIDx0ZD57aWYgaXNzZXQoJHByb3BlLT5tb3ZlZG93bil9eyRwcm9wZS0+bW92ZWRvd259ey9pZn08L3RkPgogICAgPC90cj4KICB7L2ZvcmVhY2h9CiAgPC90Ym9keT4KPC90YWJsZT4KPC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVufXskc3VibWl0fXskY2FuY2VsfTwvcD4KPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/addprop.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQo8ZGl2Pnskb3JpZ190eXBlfTwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25hbWV9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9uYW1lfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9wcm9tcHR9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wcm9tcHR9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3R5cGV9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF90eXBlfTwvcD4KICA8L2Rpdj4KICB7aWYgaXNzZXQoJGZpZWxkcyl9CiAge2ZvcmVhY2ggZnJvbT0kZmllbGRzIGl0ZW09J29uZWZsZCd9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRvbmVmbGRbMF19PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRvbmVmbGRbMV19PC9wPgogIDwvZGl2PgogIHsvZm9yZWFjaH0KICB7L2lmfQp7aWYgaXNzZXQoJGlucHV0X2ZvcmNlX3VuaXF1ZSl9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mb3JjZV91bmlxdWUnKX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZvcmNlX3VuaXF1ZX08L3A+CiAgPC9kaXY+CnsvaWZ9CntpZiAkZGVmbi50eXBlICE9IDJ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lbmNyeXB0Jyl9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9lbmNyeXB0fTwvcD4KICA8L2Rpdj4Key9pZn0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhpZGRlbn17JHN1Ym1pdH17JGNhbmNlbH08L3A+CiAgPC9kaXY+CnskZW5kZm9ybX0K]]></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+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VzZXJuYW1lfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfdXNlcm5hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Bhc3N3b3JkfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcGFzc3dvcmR9Jm5ic3A7eyRpbmZvX3Bhc3N3b3JkfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9yZXBlYXRwYXNzd29yZH08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlcGVhdHBhc3N3b3JkfSZuYnNwO3skaW5mb19yZXBlYXRwYXNzd29yZH08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZXhwaXJlc308L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57aHRtbF9zZWxlY3RfZGF0ZSBwcmVmaXg9JGV4cGlyZXNfZGF0ZXByZWZpeCB0aW1lPSRleHBpcmVzZGF0ZSBzdGFydF95ZWFyPTIwMDAgZW5kX3llYXI9MjA0MH08L3A+CiAgPC9kaXY+CntpZiAkaXRlbWNvdW50ID4gMH0KPGJyLz4KeyRncm91cHN0aXRsZX0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aCB3aWR0aD0iNSUiPnskaWR0ZXh0fTwvdGg+CgkJCTx0aD57JG5hbWV0ZXh0fTwvdGg+CgkJCTx0aD57JGRlc2N0ZXh0fTwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPHRyIGNsYXNzPSJ7JGVudHJ5LT5yb3djbGFzc30iPgoJCQk8dGQ+eyRlbnRyeS0+aWR9PC90ZD4KCQkJPHRkPnskZW50cnktPm5hbWV9PC90ZD4KCQkJPHRkPnskZW50cnktPmRlc2N9PC90ZD4KCQkJPHRkPnskZW50cnktPm1lbWJlcn08L3RkPgoJCTwvdHI+CnsvZm9yZWFjaH0KCTwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPgogIDwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/adduser2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCR1c2VybmFtZSl9PGgzPnskZWRpdHRleHR9OiB7JHVzZXJuYW1lfTwvaDM+ey9pZn0Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQp7aWYgJGNvbnRyb2xjb3VudCA+IDB9Cntmb3JlYWNoIGZyb209JGNvbnRyb2xzIGl0ZW09Y29udHJvbH0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGNvbnRyb2wtPmhpZGRlbn08Zm9udCBjb2xvcj0ieyRjb250cm9sLT5jb2xvcn0iPnskY29udHJvbC0+cHJvbXB0fXskY29udHJvbC0+bWFya2VyfTwvZm9udD48L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGNvbnRyb2wtPmNvbnRyb2x9PC9wPgogIDwvZGl2PgogIHtpZiBpc3NldCgkY29udHJvbC0+aW1hZ2UpfQogICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskY29udHJvbC0+aW1hZ2V9PC9wPgogICAgPC9kaXY+CiAgey9pZn0KICB7aWYgJGNvbnRyb2wtPnJlcXVpcmVkICE9IHRydWV9CiAgICAge2lmIGlzc2V0KCRjb250cm9sLT5jb250cm9sMil9CiAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4KICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjb250cm9sLT5wcm9tcHQyfSZuYnNwO3skY29udHJvbC0+Y29udHJvbDJ9PC9wPgogICAgICAgPC9kaXY+CiAgICAgey9pZn0KICB7L2lmfQp7L2ZvcmVhY2h9Cjxici8+CnsvaWZ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRoaWRkZW4yfXskYmFja317JHN1Ym1pdH17JGNhbmNlbH08L3A+CiAgPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/adminprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQp7JHN0YXJ0Zm9ybX0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdnZW5lcmFsX3NldHRpbmdzJyl9OjwvbGVnZW5kPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdhdXRoX21vZHVsZScpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1hdXRoX21vZHVsZSI+CiAgICAgICAgICAgICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kYXV0aF9tb2R1bGVzIHNlbGVjdGVkPSRhdXRoX21vZHVsZX0KICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+CiAgICAgICAgICAgICAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fYXV0aF9tb2R1bGUnKX0KICAgICAgICAgICAgICAgIDwvcD4KCTwvZGl2PgogCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJyl9OjwvcD4KICAgICAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0nYXV0b19jcmVhdGVfdW5rbm93bicgc2VsZWN0ZWQ9JGF1dG9fY3JlYXRlX3Vua25vd259CiAgICAgICAgICAgICA8YnIvPiAKICAgICAgICAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nKX0KICAgICAgICAgIDwvcD4KICAgICAgICA8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnN9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FsbG93X3JlcGVhdGVkX2xvZ2luc308L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9yZXF1aXJlb25lZ3JvdXB9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlcXVpcmVvbmVncm91cH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9kZmx0Z3JvdXB9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2RmbHRncm91cH08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2V4cGlyZWFnZScpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9leHBpcmVhZ2V9Jm5ic3A7KHskbW9kLT5MYW5nKCdtb250aHMnKX0pPC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9yYW5kb211c2VybmFtZScpfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9yYW5kb211c2VybmFtZX08L3A+Cgk8L2Rpdj4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zfTxici8+CiAgICAgICAgICAgICAgICAgICB7JGluZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9uc308L3A+Cgk8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygnc2Vzc2lvbl9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9zZXNzaW9udGltZW91dH06PC9wPgoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfc2Vzc2lvbnRpbWVvdXR9PC9wPgoJPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ3Byb3BlcnR5X3NldHRpbmdzJyl9OjwvbGVnZW5kPgoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGh9OjwvcD4KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGh9PC9wPgoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zfTo8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnN9PC9wPgoJPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ25vdGlmaWNhdGlvbl9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkgICAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbm90aWZpY2F0aW9uc306PC9wPgogICAgICAgICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ub3RpZmljYXRpb25zfTwvcD4gICAgICAgIAoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTo8L3A+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTwvcD4gICAgICAgIAoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0fTo8L3A+CiAgICAgICAgICAgICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl9zdWJqZWN0fTwvcD4gICAgICAgIAoJPC9kaXY+Cgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZX06PC9wPgogICAgICAgICAgICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ub3RpZmljYXRpb25fdGVtcGxhdGV9PC9wPiAgICAgICAgCgk8L2Rpdj4KPC9maWVsZHNldD4KCiAgICAgICAge2lmICRkYXRhX251bXJlc2V0cmVjb3JkcyAhPSAiIn0KIAkgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICAgICAgICAgICAgICA8aHIgd2lkdGg9IjUwJSIgYWxpZ249ImxlZnQiLz4KICAJICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIAkgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9udW1yZXNldHJlY29yZHN9PC9wPgoJICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZGF0YV9udW1yZXNldHJlY29yZHN9PC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgoJICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgoJICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmVtb3ZlMXdlZWt9eyRpbnB1dF9yZW1vdmUxbW9udGh9eyRpbnB1dF9yZW1vdmVhbGx9PC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgey9pZn0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPgoJPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/admintasks.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQoKeyogQSBmb3JtIChzaW1wbGUgYnV0dG9uKSBmb3IgZXhwb3J0aW5nIHVzZXJzIHRvIGNzdiAqfQp7JHN0YXJ0Zm9ybX17JGlucHV0X2hpZGRlbn0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbGVnZW5kX2ltcG9ydHVzZXJzfTwvbGVnZW5kPgp7JGluZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0fTxoci8+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9pbXBvcnR1c2Vyc3RvZ3JvdXB9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ltcG9ydHVzZXJzdG9ncm91cH08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2ltcG9ydHVzZXJzZmlsZX06PC9wPgogICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ltcG9ydHVzZXJzZmlsZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfaW1wb3J0dXNlcnNidG59PC9wPgo8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KPGxlZ2VuZD57JGxlZ2VuZF9leHBvcnR1c2Vyc308L2xlZ2VuZD4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2V4cG9ydHVzZXJzfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9leHBvcnR1c2Vyc308L3A+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskbGVnZW5kX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2V9PC9sZWdlbmQ+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9leHBvcnR1c2VyaGlzdG9yeX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZXhwb3J0dXNlcmhpc3Rvcnl9Jm5ic3A7eyRidXR0b25fZXhwb3J0dXNlcmhpc3Rvcnl9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2NsZWFydXNlcmhpc3Rvcnl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2NsZWFydXNlcmhpc3Rvcnl9Jm5ic3A7eyRidXR0b25fY2xlYXJ1c2VyaGlzdG9yeX08L3A+CjwvZGl2Pgo8L2ZpZWxkc2V0Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_authtab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9CjxwPnskbW9kLT5MYW5nKCdpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJyl9PC9wPgo8ZmllbGRzZXQ+CjxsZWdlbmQ+eyRtb2QtPkxhbmcoJ2F1dGhfc2V0dGluZ3MnKX08L2xlZ2VuZD4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfc3VwcG9ydF9sb3N0dW4nKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPXN1cHBvcnRfbG9zdHVuIHNlbGVjdGVkPSRzdXBwb3J0X2xvc3R1bn0KICAgPGJyLz4KICAgeyRtb2QtPkxhbmcoJ2luZm9fc3VwcG9ydF9sb3N0dW4nKX0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdXBwb3J0X2xvc3RwdycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBwcmVmaXg9JGFjdGlvbmlkIG5hbWU9c3VwcG9ydF9sb3N0cHcgc2VsZWN0ZWQ9JHN1cHBvcnRfbG9zdHB3fQogICA8YnIvPgogICB7JG1vZC0+TGFuZygnaW5mb19zdXBwb3J0X2xvc3RwdycpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3B3ZmxkbGVuJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cHdmbGRsZW4iIHZhbHVlPSJ7JHB3ZmxkbGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbWlucHdsZW4nKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1taW5wd2xlbiIgdmFsdWU9InskbWlucHdsZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgPGJyLz4KICAgeyRtb2QtPkxhbmcoJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJyl9CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbWF4cHdsZW4nKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1tYXhwd2xlbiIgdmFsdWU9InskbWF4cHdsZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgPGJyLz4KICAgeyRtb2QtPkxhbmcoJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJyl9CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfdW5mbGRsZW4nKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH11bmZsZGxlbiIgdmFsdWU9InskdW5mbGRsZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9taW51bmxlbicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW1pbnVubGVuIiB2YWx1ZT0ieyRtaW51bmxlbn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICA8YnIvPgogICB7JG1vZC0+TGFuZygnd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnKX0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9tYXh1bmxlbicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW1heHVubGVuIiB2YWx1ZT0ieyRtYXh1bmxlbn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICA8YnIvPgogICB7JG1vZC0+TGFuZygnd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnKX0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWNvb2tpZV9rZWVwYWxpdmUgc2VsZWN0ZWQ9JGNvb2tpZV9rZWVwYWxpdmV9CiAgIDxici8+CiAgIHskbW9kLT5MYW5nKCdpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnKX0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBwcmVmaXg9JGFjdGlvbmlkIG5hbWU9dXNlY29va2llc3RvcmVtZW1iZXIgc2VsZWN0ZWQ9JHVzZWNvb2tpZXN0b3JlbWVtYmVyfQogICA8YnIvPgogICB7JG1vZC0+TGFuZygnaW5mb19jb29raWVzdG9yZW1lbWJlcicpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT11c2VybmFtZV9pc19lbWFpbCBzZWxlY3RlZD0kdXNlcm5hbWVfaXNfZW1haWx9CiAgIDxici8+CiAgIHskbW9kLT5MYW5nKCdpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJyl9CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBwcmVmaXg9JGFjdGlvbmlkIG5hbWU9YWxsb3dfZHVwbGljYXRlX2VtYWlscyBzZWxlY3RlZD0kYWxsb3dfZHVwbGljYXRlX2VtYWlsc30KICAgPGJyLz4KICAgeyRtb2QtPkxhbmcoJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscycpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWFsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMgc2VsZWN0ZWQ9JGFsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnN9CiAgIDxici8+CiAgIHskbW9kLT5MYW5nKCdpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnKX0KICA8L3A+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdkaXNwbGF5X3NldHRpbmdzJyl9PC9sZWdlbmQ+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3NpZ25pbl9idXR0b24nKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1zaWduaW5fYnV0dG9uIiB2YWx1ZT0ieyRzaWduaW5fYnV0dG9ufSIgc2l6ZT0iMTUiIG1heGxlbmd0aD0iMTUiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3JlcXVpcmVkZmllbGRtYXJrZXInKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1yZXF1aXJlZF9maWVsZF9tYXJrZXIiIHZhbHVlPSJ7JHJlcXVpcmVkX2ZpZWxkX21hcmtlcn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncmVxdWlyZWRmaWVsZGNvbG9yJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cmVxdWlyZWRfZmllbGRfY29sb3IiIHZhbHVlPSJ7JHJlcXVpcmVkX2ZpZWxkX2NvbG9yfSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3NlY3VyZWZpZWxkbWFya2VyJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9c2VjdXJlX2ZpZWxkX21hcmtlciIgdmFsdWU9Inskc2VjdXJlX2ZpZWxkX21hcmtlcn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnc2VjdXJlZmllbGRjb2xvcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXNlY3VyZV9maWVsZF9jb2xvciIgdmFsdWU9Inskc2VjdXJlX2ZpZWxkX2NvbG9yfSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2hpZGRlbmZpZWxkbWFya2VyJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9aGlkZGVuX2ZpZWxkX21hcmtlciIgdmFsdWU9InskaGlkZGVuX2ZpZWxkX21hcmtlcn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnaGlkZGVuZmllbGRjb2xvcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWhpZGRlbl9maWVsZF9jb2xvciIgdmFsdWU9InskaGlkZGVuX2ZpZWxkX2NvbG9yfSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF90aHVtYm5haWxfc2l6ZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXRodW1ibmFpbF9zaXplIiB2YWx1ZT0ieyR0aHVtYm5haWxfc2l6ZX0iIHNpemU9IjMiIG1heGxlbmd0aD0iMyIvPgogIDwvcD4KPC9kaXY+CjwvZmllbGRzZXQ+Cgp7aWYgaXNzZXQoJGVjb21tX29yZGVyY2FuY2VsbGVkKX0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdlY29tbWVyY2Vfc2V0dGluZ3MnKX06PC9sZWdlbmQ+CgogIDxwIGNsYXNzPSJwYWdlb3ZlcmZsb3ciPnskbW9kLT5MYW5nKCdpbmZvX3BhaWRyZWdfc2V0dGluZ3MnKX08L3A+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+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+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgPC9wPgo8L2Rpdj4KCnskZm9ybWVuZH0K]]></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[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4KPHA+eyRhZG1pbl9uYXZ9PC9wPgp7aWYgaXNzZXQoJG1lc3NhZ2UpfTxwPnskbWVzc2FnZX08L3A+ey9pZn0K]]></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[CntpZiAhaXNzZXQoJGl0ZW1jb3VudCkgfQo8cD4wJm5ic3A7eyRncm91cHNmb3VuZH08L3A+CntlbHNlfQo8cD57JGl0ZW1jb3VudH0mbmJzcDt7JGdyb3Vwc2ZvdW5kfTwvcD4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGggd2lkdGg9IjUlIj57JGlkdGV4dH08L3RoPgoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPgoJCQk8dGg+eyRkZXNjdGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPgoJCTwvdHI+Cgk8L3RoZWFkPgoJPHRib2R5Pgp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4KCQkJPHRkPnskZW50cnktPmlkfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZXNjfTwvdGQ+CgkJCTx0ZD57aWYgaXNzZXQoJGVudHJ5LT5leHBvcnRsaW5rKX17JGVudHJ5LT5leHBvcnRsaW5rfXsvaWZ9PC90ZD4KCQkJPHRkPnskZW50cnktPmVkaXRsaW5rfTwvdGQ+CgkJCTx0ZD57aWYgaXNzZXQoJGVudHJ5LT5kZWxldGVsaW5rKX17JGVudHJ5LT5kZWxldGVsaW5rfXsvaWZ9PC90ZD4KCQk8L3RyPgp7L2ZvcmVhY2h9Cgk8L3Rib2R5Pgo8L3RhYmxlPgp7L2lmfQoKPHAgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CntpZiAkcHJvcGNvdW50ID4gMH17JGFkZGxpbmt9Jm5ic3A7ey9pZn0Ke2lmIGlzc2V0KCRleHBvcnRsaW5rKX17JGV4cG9ydGxpbmt9Jm5ic3A7ey9pZn0KeyRpbXBvcnRsaW5rfQo8L3A+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/group_xml.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgZmV1X2dyb3VwIFsKICA8IUVMRU1FTlQgZmV1X2dyb3VwIChncnBfbmFtZSxncnBfZGVzY3JpcHRpb24scHJvcGVydHkqKT4KICA8IUVMRU1FTlQgZ3JwX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBncnBfZGVzY3JpcHRpb24gKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wZXJ0eSAocHJvcF9uYW1lLHByb3BfcHJvbXB0LHByb3BfdHlwZSxwcm9wX29wdGlvbj8scHJvcF9sZW5ndGg/LHByb3BfbWF4bGVuZ3RoPyxwcm9wX3NvcnRvcmRlcixwcm9wX3N0YXR1cyxwcm9wX2xvc3R1bmZsYWcpPgogIDwhRUxFTUVOVCBwcm9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3Byb21wdCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfdHlwZSAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3Bfb3B0aW9uIChvcF9uYW1lLG9wX3RleHQpPgogIDwhRUxFTUVOVCBwcm9wX2xlbmd0aCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbWF4bGVuZ3RoICgjUENEQVRBKT4KICA8IUVMRU1FTlQgcHJvcF9zb3J0b3JkZXIgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3N0YXR1cyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbG9zdHVuZmxhZyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIG9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBvcF90ZXh0ICgjUENEQVRBKT4KXT4KPGZldV9ncm91cD4KICA8Z3JwX25hbWU+eyRncm91cF9uYW1lfTwvZ3JwX25hbWU+CiAgPGdycF9kZXNjcmlwdGlvbj57JGdyb3VwX2Rlc2NyaXB0aW9ufTwvZ3JwX2Rlc2NyaXB0aW9uPgp7Zm9yZWFjaCBmcm9tPSRwcm9wZXJ0aWVzIGl0ZW09J3Byb3AnfQogIDxwcm9wZXJ0eT4KICAgIDxwcm9wX25hbWU+eyRwcm9wLT5uYW1lfTwvcHJvcF9uYW1lPgogICAgPHByb3BfcHJvbXB0PnskcHJvcC0+cHJvbXB0fTwvcHJvcF9wcm9tcHQ+CiAgICA8cHJvcF90eXBlPnskcHJvcC0+dHlwZX08L3Byb3BfdHlwZT4KICAgIHtmb3JlYWNoIGZyb209JHByb3AtPm9wdGlvbnMgaXRlbT0nb3B0aW9uJ30KICAgIDxwcm9wX29wdGlvbj4KICAgICAgPG9wX25hbWU+eyRvcHRpb24tPm5hbWV9PC9vcF9uYW1lPgogICAgICA8b3BfdGV4dD57JG9wdGlvbi0+dGV4dH08L29wX3RleHQ+CiAgICA8L3Byb3Bfb3B0aW9uPgogICAgey9mb3JlYWNofQogICAge2lmIGlzc2V0KCRwcm9wLT5sZW5ndGgpfQogICAgPHByb3BfbGVuZ3RoPnskcHJvcC0+bGVuZ3RofTwvcHJvcF9sZW5ndGg+CiAgICB7L2lmfQogICAge2lmIGlzc2V0KCRwcm9wLT5tYXhsZW5ndGgpfQogICAgPHByb3BfbWF4bGVuZ3RoPnskcHJvcC0+bWF4bGVuZ3RofTwvcHJvcF9tYXhsZW5ndGg+CiAgICB7L2lmfQogICAgPHByb3Bfc29ydG9yZGVyPnskcHJvcC0+c29ydG9yZGVyfTwvcHJvcF9zb3J0b3JkZXI+CiAgICA8cHJvcF9zdGF0dXM+eyRwcm9wLT5zdGF0dXN9PC9wcm9wX3N0YXR1cz4KICAgIDxwcm9wX2xvc3R1bmZsYWc+eyRwcm9wLT5sb3N0dW5mbGFnfTwvcHJvcF9sb3N0dW5mbGFnPgogIDwvcHJvcGVydHk+CnsvZm9yZWFjaH0KPC9mZXVfZ3JvdXA+]]></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+CnskdGl0bGV9CntpZiAkbWVzc2FnZSAhPSAnJ30KICB7aWYgJGVycm9yICE9ICcnfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQoge2lmICRjb250cm9sY291bnQgPiAwfQogIDxjZW50ZXI+CiAgPHRhYmxlIHdpZHRoPSI3NSUiPgogICAgIHtmb3JlYWNoIGZyb209JGNvbnRyb2xzIGl0ZW09Y29udHJvbH0KICA8dHI+CiAgICAgPHRkPnskY29udHJvbC0+aGlkZGVufTxmb250IGNvbG9yPSJ7JGNvbnRyb2wtPmNvbG9yfSI+eyRjb250cm9sLT5wcm9tcHR9eyRjb250cm9sLT5tYXJrZXJ9PC9mb250PjwvdGQ+CiAgICAgPHRkPgogICAgICAge2lmIGlzc2V0KCRjb250cm9sLT5pbWFnZSl9eyRjb250cm9sLT5pbWFnZX08YnIvPnsvaWZ9CiAgICAgICB7JGNvbnRyb2wtPmNvbnRyb2x9eyRjb250cm9sLT5hZGR0ZXh0fQogICAgICAge2lmIGlzc2V0KCRjb250cm9sLT5jb250cm9sMil9eyRjb250cm9sLT5wcm9tcHQyfSZuYnNwO3skY29udHJvbC0+Y29udHJvbDJ9PGJyLz57L2lmfQogICAgIDwvdGQ+CiAgPC90cj4KIHsvZm9yZWFjaH0KICA8L3RhYmxlPgogIDwvY2VudGVyPgogey9pZn0KIHskaGlkZGVufXskaGlkZGVuMn17JHN1Ym1pdH17JGNhbmNlbH0KeyRlbmRmb3JtfQo8IS0tIGNoYW5nZSBzZXR0aW5ncyB0ZW1wbGF0ZSAtLT4K]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword1.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBmb3Jnb3QgcGFzc3dvcmQgdGVtcGxhdGUgLS0+Cnskc3RhcnRmb3JtfQp7JHRpdGxlfQp7aWYgIWVtcHR5KCRtZXNzYWdlKSB9CiAge2lmICFlbXB0eSgkZXJyb3IpIH0KICAgIDxwPjxmb250IGNvbG9yPSJyZWQiPnskbWVzc2FnZX08L2ZvbnQ+PC9wPgogIHtlbHNlfQogICAgPHA+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQo8cD57JGxvc3Rwd19tZXNzYWdlfTwvcD4KPHA+eyRwcm9tcHRfdXNlcm5hbWV9Jm5ic3A7eyRpbnB1dF91c2VybmFtZX08L3A+CjxwPnskaGlkZGVufXskc3VibWl0fSZuYnNweyRjYW5jZWx9PC9wPgp7JGVuZGZvcm19CjwhLS0gZm9yZ290IHBhc3N3b3JkIHRlbXBsYXRlIC0tPiAK]]></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[eyogbG9naW4gZm9ybSB0ZW1wbGF0ZSAqfQp7KiB0aGlzIGlzIGEgc2FtcGxlIHRlbXBsYXRlLCBmZWVsIGZyZWUgdG8gY3VzdG9taXplIGl0ICp9Cnskc3RhcnRmb3JtfQp7aWYgJGVycm9yfQogIHskZXJyb3J9PGJyPgp7L2lmfQo8cD4KIHskcHJvbXB0X3VzZXJuYW1lfTombmJzcDt7JGlucHV0X3VzZXJuYW1lfTxici8+CiB7JHByb21wdF9wYXNzd29yZH06Jm5ic3A7eyRpbnB1dF9wYXNzd29yZH0KIHtpZiBpc3NldCgkY2FwdGNoYSl9CiAgIDxici8+CiAgIHskY2FwdGNoYV90aXRsZX06IHskaW5wdXRfY2FwdGNoYX08YnIvPgogICB7JGNhcHRjaGF9CiB7L2lmfQoge2lmIGlzc2V0KCRpbnB1dF9yZW1lbWJlcm1lKX0KICAgPGJyLz4KICAgeyRpbnB1dF9yZW1lbWJlcm1lfSZuYnNwO3skcHJvbXB0X3JlbWVtYmVybWV9PGJyLz4KIHsvaWZ9CiA8YnIvPgogPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRmZXVhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnbG9naW4nKX0iLz48YnIvPgogIDxhIGhyZWY9InskdXJsX2ZvcmdvdH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnaW5mb19mb3Jnb3RwdycpfSI+eyRtb2QtPkxhbmcoJ2ZvcmdvdHB3Jyl9PC9hPjxici8+CiAgPGEgaHJlZj0ieyR1cmxfbG9zdHVufSIgdGl0bGU9InskbW9kLT5MYW5nKCdpbmZvX2xvc3R1bicpfSI+eyRtb2QtPkxhbmcoJ2xvc3R1c2VybmFtZScpfTwvYT4KPC9wPgp7JGVuZGZvcm19Cg==]]></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+IDB9CiAgeyRzdGFydGZvcm19eyRoaWRkZW59CiAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KICAgICAgPGRpdiBjbGFzcz0icGFnZV9wcm9tcHQiPnskcHJvbXB0X3Bhc3N3b3JkfTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJwYWdlX2lucHV0Ij57JGlucHV0X3Bhc3N3b3JkfTwvZGl2PgogICAgPC9kaXY+CiAgICB7Zm9yZWFjaCBmcm9tPSRjb250cm9scyBpdGVtPSdlbnRyeSd9CiAgICAgICA8ZGl2IGNsYXNzPSJwYWdlcm93Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InBhZ2VfcHJvbXB0Ij57JGVudHJ5LT5oaWRkZW59eyRlbnRyeS0+cHJvbXB0fTwvZGl2CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlX2lucHV0Ij57JGVudHJ5LT5jb250cm9sfXskZW50cnktPmFkZHRleHR9PC9kaXY+CiAgICAgICA8L2Rpdj4KICAgIHsvZm9yZWFjaH0KICAgIDxkaXYgY2xhc3M9InBhZ2Vyb3ciPnskc3VibWl0fXskY2FuY2VsfTwvZGl2PgogICAgPGRpdiBjbGFzcz0icGFnZXJvdyI+CiAgICAgICB7JGNhcHRjaGFfdGl0bGV9eyRpbnB1dF9jYXB0Y2hhfXskY2FwdGNoYX0KICAgIDwvZGl2PgogIHskZW5kZm9ybX0Key9pZn0=]]></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[eyR0aXRsZX0Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CjxwPnskcHJvcGNvdW50fSZuYnNwO3skcHJvcHNmb3VuZH08L3A+CntpZiAkcHJvcGNvdW50ID4gMH0KPGJyLz4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIGNtc19zb3J0YWJsZSB0YWJsZXNvcnRlciI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGg+eyRuYW1ldGV4dH08L3RoPgoJCQk8dGg+eyRwcm9tcHR0ZXh0fTwvdGg+CgkJCTx0aD57JHR5cGV0ZXh0fTwvdGg+CgkJCTx0aD57JGxlbmd0aHRleHR9PC90aD4KCQkJPHRoPnskbW9kLT5MYW5nKCd1bmlxdWUnKX08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4Ke2ZvcmVhY2ggZnJvbT0kcHJvcHMgaXRlbT1wcm9wZX0KCQk8dHIgY2xhc3M9InskcHJvcGUtPnJvd2NsYXNzfSI+CgkJCTx0ZD57JHByb3BlLT5uYW1lfTwvdGQ+CgkJCTx0ZD57JHByb3BlLT5wcm9tcHR9PC90ZD4KCQkJPHRkPnskcHJvcGUtPnR5cGV9PC90ZD4KCQkJPHRkPnskcHJvcGUtPmxlbmd0aH08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e2lmICRwcm9wZS0+Zm9yY2VfdW5pcXVlfXskbW9kLT5MYW5nKCd5ZXMnKX17ZWxzZX17JG1vZC0+TGFuZygnbm8nKX17L2lmfTwvdGQ+CgkJCTx0ZD57JHByb3BlLT5lZGl0bGlua308L3RkPgoJCQk8dGQ+e2lmIGlzc2V0KCRwcm9wZS0+ZGVsZXRlbGluayl9eyRwcm9wZS0+ZGVsZXRlbGlua317L2lmfTwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0KPC9kaXY+Cjxici8+CjxwPnskYWRkbGlua308L3A+Cg==]]></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[e2xpdGVyYWx9CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KLyo8IVtDREFUQVsqLwpmdW5jdGlvbiBzZWxlY3RfYWxsKCkKewogIGNiID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoJ3svbGl0ZXJhbH17JGZldWFjdGlvbmlkfXNlbGVjdGVkW117bGl0ZXJhbH0nKTsKICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzZWxlY3RhbGwnKTsKICBzdCA9IGVsLmNoZWNrZWQ7CiAgZm9yKCBpID0gMDsgaSA8IGNiLmxlbmd0aDsgaSsrICkKICB7CiAgICBpZiggY2JbaV0udHlwZSA9PSAiY2hlY2tib3giICkKICAgIHsKICAgICAgY2JbaV0uY2hlY2tlZD1zdDsKICAgIH0KICB9Cn0KCmZ1bmN0aW9uIGNvbmZpcm1fZGVsZXRlKCkKewogIHZhciBjYiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKCd7L2xpdGVyYWx9eyRmZXVhY3Rpb25pZH1zZWxlY3RlZFtde2xpdGVyYWx9Jyk7CiAgdmFyIGNvdW50ID0gMDsKICBmb3IoIGkgPSAwOyBpIDwgY2IubGVuZ3RoOyBpKysgKQogIHsKICAgICBpZiggY2JbaV0uY2hlY2tlZCApCiAgICAgewogICAgICAgY291bnQrKzsKICAgICB9CiAgfQoKICBpZiggY291bnQgPiAyNTAgKQogIHsKICAgICBhbGVydCgney9saXRlcmFsfXskbW9kLT5MYW5nKCdlcnJvcl90b29tYW55c2VsZWN0ZWQnKX17bGl0ZXJhbH0nKTsKICAgICByZXR1cm4gZmFsc2U7CiAgfQogIHJldHVybiBjb25maXJtKCd7L2xpdGVyYWx9eyRtb2QtPkxhbmcoJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJyl9e2xpdGVyYWx9Jyk7Cn0KCi8qXV0+ICovCjwvc2NyaXB0Pgp7L2xpdGVyYWx9Cgp7JHN0YXJ0Zm9ybX0KPGZpZWxkc2V0Pgo8bGVnZW5kPnskcHJvbXB0X2ZpbHRlcn06PC9sZWdlbmQ+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2dyb3VwfTwvcD4KIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZmlsdGVyX2dyb3VwfTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3VzZXJmaWx0ZXJ9PC9wPgogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRmaWx0ZXJfcmVnZXh9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfcHJvcGVydHlmaWx0ZXJzZWx9PC9wPgogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRmaWx0ZXJfcHJvcGVydHlzZWx9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfcHJvcGVydHlmaWx0ZXJ9PC9wPgogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRmaWx0ZXJfcHJvcGVydHl9PC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbG9nZ2VkaW5vbmx5fTwvcD4KIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZmlsdGVyX2xvZ2dlZGlub25seX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9saW1pdH08L3A+CiA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGZpbHRlcl9saW1pdH08L3A+CjwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskcHJvbXB0X3NvcnR9OjwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9zb3J0Ynl9PC9wPgogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRmaWx0ZXJfc29ydGJ5fTwvcD4KPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogPHAgY2xhc3M9InBhZ2V0ZXh0Ij4mbmJzcDs8L3A+CiA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3NlbGVjdH17JGlucHV0X2hpZGRlbn08L3A+PGJyLz4KPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogPHA+eyRudW11c2Vyc30mbmJzcDt7JHVzZXJzaW5ncm91cH08L3A+CiA8cD57JGl0ZW1jb3VudH0mbmJzcDt7JHVzZXJzZm91bmR9PC9wPgo8L2Rpdj4Ke2lmICRpdGVtY291bnQgPiAwfQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUgY21zX3NvcnRhYmxlIHRhYmxlc29ydGVyIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JHVzZXJuYW1ldGV4dH08L3RoPgoJCQk8dGg+eyRjcmVhdGVkdGV4dH08L3RoPgoJCQk8dGg+eyRleHBpcmVzdGV4dH08L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+PGlucHV0IGlkPSJzZWxlY3RhbGwiIHR5cGU9ImNoZWNrYm94IiBuYW1lPSJqdW5rIiBvbmNsaWNrPSJzZWxlY3RfYWxsKCk7Ii8+PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KCQk8dHI+CgkJCTx0ZD57JGVudHJ5LT51c2VybmFtZX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+Y3JlYXRlZH08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZXhwaXJlc308L3RkPgoJCQk8dGQ+e2lmIGlzc2V0KCRlbnRyeS0+bG9nb3V0bGluayl9eyRlbnRyeS0+bG9nb3V0bGlua317L2lmfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5oaXN0b3J5bGlua308L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZWRpdGxpbmt9PC90ZD4KCQkJPHRkPntpZiBpc3NldCgkZW50cnktPmRlbGV0ZWxpbmspfXskZW50cnktPmRlbGV0ZWxpbmt9ey9pZn08L3RkPgoJCQk8dGQ+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGZldWFjdGlvbmlkfXNlbGVjdGVkW10iIHZhbHVlPSJ7JGVudHJ5LT5pZH0iLz48L3RkPgoJCTwvdHI+CSAKey9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KIDxkaXYgc3R5bGU9ImZsb2F0OiBsZWZ0OyI+eyRhZGRsaW5rfTwvZGl2PgogPGRpdiBzdHlsZT0iZmxvYXQ6IHJpZ2h0OyI+e2lmIGlzc2V0KCRwZXJtX3JlbW92ZXVzZXJzKSAmJiAkcGVybV9yZW1vdmV1c2VycyA9PSAxfTxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskZmV1YWN0aW9uaWR9YnVsa2RlbGV0ZSIgdmFsdWU9InskbW9kLT5MYW5nKCdkZWxldGVfc2VsZWN0ZWQnKX0iIG9uY2xpY2s9InJldHVybiBjb25maXJtX2RlbGV0ZSgpOyIvPnsvaWZ9PC9kaXY+CjwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/viewuser_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90ZW1wbGF0ZTF9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlMX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fSZuYnNwO3skZGVmYXVsdHN9PC9wPgo8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/UserManipulator.class.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsIAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkIAojICB3ZWJzaXRlLgojIAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4gCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoKY2xhc3MgVXNlck1hbmlwdWxhdG9yCnsKICB2YXIgJG1vZDsKCiAgLy8KICAvLyBJbnRlcm5hbHMKICAvLwoKICBmdW5jdGlvbiBVc2VyTWFuaXB1bGF0b3IoICYkdGhlX21vZHVsZSApCiAgewogICAgJHRoaXMtPm1vZCA9JiAkdGhlX21vZHVsZTsKICB9CgoKICBmdW5jdGlvbiAmR2V0RGIoKQogIHsKICAgIHJldHVybiAkdGhpcy0+bW9kLT5HZXREYigpOwogIH0KCgogIGZ1bmN0aW9uICZHZXRNb2R1bGUoKQogIHsKICAgIHJldHVybiAkdGhpcy0+bW9kOwogIH0KCgogIC8vCiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIC8vCgogIGZ1bmN0aW9uIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUsICRzb3J0a2V5LCAkbG9zdHVuLCAkdmFsICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCIpOwogIH0KCiAgLy8hIEFkZCBhIHNpbmdsZSBwcm9wZXJ0eSBkZWZpbml0aW9uCiAgLy8hIFxwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eQogIC8vISBccGFyYW0gcHJvbXB0IFRoZSBwcm9tcHQgdG8gZGlzcGxheSB0byB0aGUgdXNlcgogIC8vISAgICAgICBub3RlLCB0aGlzIHdpbGwgYmUgTGFuZ2lmaWVkCiAgLy8hIFxwYXJhbSB0eXBlICBUaGUgdHlwZSBvZiB0aGUgcHJvcGVydHkKICAvLyEgICAgICAgMCA9IHRleHQsIDEgPSBjaGVja2JveCwgMiA9IGVtYWlsCiAgLy8hIFxwYXJhbSByZXF1aXJlZCB3ZXRoZXIgb3Igbm90IHRoZSBwcm9wZXJ0eSBpcyByZXF1aXJlZAogIC8vISBccmV0dXJuIEFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGJvb2xlYW4gd2hpY2ggaW5kaWNhdGVzIHN1Y2Nlc3Mgb3IgZmFpbHVyZSwgdGhlCiAgLy8hICAgIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSBpbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IuCiAgLy8hCiAgZnVuY3Rpb24gQWRkUHJvcGVydHlEZWZuKCAkbmFtZSwgJHByb21wdCwgJHR5cGUsICRsZW5ndGggKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiTm90IEltcGxlbWVudGVkIik7CiAgfQoKICAvLyEgQWRkIGEgbmV3IGdyb3VwCiAgLy8hCiAgLy8hIEFkZHMgYSBuZXcgZ3JvdXAgd2l0aCB0aGUgc3VwcGxpZWQgbmFtZSBhbmQgZGVzY3JpcHRpb24KICAvLyEKICAvLyEgXHBhcmFtIG5hbWUgVGhlIG5ldyBncm91cCBuYW1lCiAgLy8hIFxwYXJhbSBkZXNjcmlwdGlvbiB0aGUgZ3JvdXAgZGVzY3JpcHRpb24KICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzIAogIC8vISAgICAodHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvbiBlcnJvcikuICBUaGUgc2Vjb25kIGVsZW1lbnQgKG9wdGlvbmFsKSBpcyBhbiBlcnJvciBzdHJpbmcgaW4gdGhlIAogIC8vISAgICBldmVudCBvZiBhbiBlcnJvci4KICAvLyEKICBmdW5jdGlvbiBBZGRHcm91cCggJG5hbWUsICRkZXNjcmlwdGlvbiApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogIH0KCiAgLy8hIEFkZCBhIG5ldyB1c2VyCiAgLy8hCiAgLy8hIEFkZCB0aGUgc3BlY2lmaWVkIHVzZXIgdG8gdGhlIGRhdGFiYXNlCiAgLy8hCiAgLy8hIFxwYXJhbSBuYW1lIFRoZSBkZXNpcmVkIHVzZXJuYW1lCiAgLy8hIFxwYXJhbSBwYXNzd29yZCBUaGUgZGVzaXJlZCBwYXNzd29yZCAodW5lbmNyeXB0ZWQpCiAgLy8hIFxwYXJhbSBleHBpcmVzIFRoZSBleHBpcnkgZGF0ZQogIC8vISBccmV0dXJuIGFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGRlc2NyaXB0aW9uIGRlc2NyaWJpbmcgdGhlIHJldHVybiBzdGF0dXMgCiAgLy8hICAgICh0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG9uIGVycm9yKS4gIFRoZSBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGlzIGFuIGVycm9yIHN0cmluZyBpbiB0aGUgCiAgLy8hICAgIGV2ZW50IG9mIGFuIGVycm9yLCBvciB0aGUgdXNlcmlkIG90aGVyd2lzZQogIC8vIQogIGZ1bmN0aW9uIEFkZFVzZXIoICRuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICAvLyEgQ2hlY2sgaWYgdGhlIHNwZWNpZmllZCB1c2VyIGhhcyB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24KICAvLyEgQXNzaWduIHRoZSB1c2VyIHNwZWNpZmllZCAoYnkgaWQpIHRvIHRoZSBncm91cCBzcGVjaWZpZWQgKGJ5IGlkKQogIC8vIQogIC8vIVxwYXJhbSAgdWlkICBUaGUgdXNlcmlkIGZvciB0aGUgbmV3IGFzc29jaWF0aW9uCiAgLy8hXHBhcmFtICBnaWQgIFRoZSBncm91cCBpZCBmb3IgdGhlIG5ldyBhc3NvY2lhdGlvbgogIC8vIVxyZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIENoZWNrIGlmIHRoZSBncm91cCBzcGVjaWZpZWQgaGFzIHRoZSByZXF1aXJlZCBwZXJtaXNzaW9uCiAgZnVuY3Rpb24gQ2hlY2tHcm91cFBlcm1pc3Npb24oICRnaWQsICRwZXJtICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgQ2hlY2sgdGhlIHN1cHBsaWVkIHBhc3N3b3JkIGFuZCBlbnN1cmUgaXQgbWFjaGVzIHRoZSBvbmUgaW4gdGhlIGRhdGFiYXNlCiAgLy8hCiAgLy8hXHBhcmFtcyB1c2VybmFtZSBUaGUgdXNlcm5hbWUgdG8gdGVzdCBmb3IKICAvLyFccGFyYW1zIHBhc3N3b3JkIFRoZSBwYXNzd29yZCB0byB0ZXN0CiAgLy8hXHJldHVybiB0cnVlIGlmIHBhc3N3b3JkcyBtYXRjaCwgZmFsc2Ugb3RoZXJ3aXNlLgogIC8vIQogIGZ1bmN0aW9uIENoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIENoZWNrIGlmIHRoZSB1c2VyIGhhcyB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24KICBmdW5jdGlvbiBDaGVja1VzZXJQZXJtaXNzaW9uKCAkcGVybSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gQ2hlY2tVc2VyUGVybWlzc2lvbkJ5VWlkKCAkdWlkLCAkcGVybSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gQ291bnRUZW1wQ29kZVJlY29yZHMoKQogIHsKICAgIHJldHVybiAwOwogIH0KCiAgCiAgZnVuY3Rpb24gRGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCIpOwogIH0KCiAgLy8hIERlbGV0ZSBhbGwgb2YgdGhlIGN1cnJlbnQgdXNlcnMgcHJvcGVydGllcwogIC8vIQogIC8vISBccmV0dXJuIHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb3RoZXJ3aXNlCiAgLy8hCiAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXMoKSAKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgRGVsZXRlIEFsbCBwcm9wZXJ0aWVzIGZvciBhIHNwZWNpZmllZCB1c2VyIGlkCiAgLy8hCiAgLy8hIFxwYXJhbSB1c2VyaWQKICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogIC8vIQogIGZ1bmN0aW9uIERlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgkdXNlcmlkKSAKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgRGVsZXRlIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAvLyEKICAvLyEgRGVsZXRlIHRoZSBncm91cCByZWNvcmQgZm9yIHRoZSBtYXRjaGluZCBpZAogIC8vIQogIC8vISBccmV0dXJuIGFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGRlc2NyaXB0aW9uIGRlc2NyaWJpbmcgdGhlIHJldHVybiBzdGF0dXMgCiAgLy8hICAgICh0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG9uIGVycm9yKS4gIFRoZSBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGlzIGFuIGVycm9yIHN0cmluZyBpbiB0aGUgCiAgLy8hICAgIGV2ZW50IG9mIGFuIGVycm9yLgogIC8vIQogIGZ1bmN0aW9uIERlbGV0ZUdyb3VwRnVsbCggJGlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBkZWZpbmVkIik7CiAgfQoKICBmdW5jdGlvbiBEZWxldGVHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCIpOwogIH0KCiAgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIERlbGV0ZSBhbGwgcHJvcGVydHkgZGVmaW5pdGlvbnMgKHVzZSB3aXRoIGNhdXRpb24pCiAgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZucygpCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBEZWxldGUgdGhlIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGlkCiAgLy8hIFxub3RlIFRoaXMgaXMgYSBkZXByZWNhdGVkIGZ1bmN0aW9uIGFzIGl0IHJlbGllcyBvbiB0aGUgdXNlcmlkIGJlaW5nIHNldCBpbiB0aGUgX0dFVAogIC8vISB2YXJpYWJsZS4KICAvLyEKICBmdW5jdGlvbiBEZWxldGVVc2VyKCRpZCkgIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBDb21wbGV0ZWx5IGRlbGV0ZSBhbGwgcmVmZXJlbmNlcyB0byB0aGUgc3VwcGxpZWQgdXNlciBpZAogIC8vIQogIC8vIVRoaXMgbWV0aG9kIGNvbXBsZXRlbHkgZGVsZXRlcyBhbnl0aGluZyBmcm9tIHRoZSBkYXRhYmFzZSByZWxhdGVkIHRvIHRoZSBzcGVjaWZpZWQgdXNlciBpZC4KICAvLyFzcGVjaWZpY2FsbHksIGdyb3VwIGFzc29jaWF0aW9ucywgcHJvcGVydGllcywgYW5kIHRoZSB1c2VyIHJlY29yZCBpdHNlbGYuCiAgLy8hCiAgLy8hXHBhcmFtIHVpZCB0aGUgdXNlcmlkIHRvIGRlbGV0ZSBhbGwgcmVmZXJlbmNlcyB0bwogIC8vIVxyZXR1cm4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gaW5kaWNhdGluZyBzdWNjZXNzIG9yIGZhaWx1cmUuCiAgLy8hICAgaWYgdGhlIGZpcnN0IGVsZW1lbnQgaXMgZmFsc2UsIHRoZW4gdGhlIHNlY29uZCBlbGVtZW50IHdpbGwgY29udGFpbiBhbiBlcnJvciBtZXNzYWdlLgogIC8vIQogIGZ1bmN0aW9uIERlbGV0ZVVzZXJGdWxsKCAkdWlkICkKICB7CiAgICByZXR1cm4gYXJyYXkoRkFMU0UsIk5vIGZ1bmN0aW9uIGRlZmluZWQiKTsKICB9CgoKICAvLyEgRGVsZXRlIGEgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50IHVzZXIKICAvLyEKICAvLyEgUmVtb3ZlIGEgcHJvcGVydHkgZnJvbSB0aGUgZGF0YWJhc2UgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAvLyEKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB0byBkZWxldGUKICAvLyEgXHBhcmFtIGFsbCAgIE9wdGlvbmFsbHkgZGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGlzIHVzZXIgIAogIC8vISBccmV0dXJucyB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aHdlcmlzZW4KICAvLyEKICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGw9ZmFsc2UpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBEZWxldGUgYSBwcm9wZXJ0eSBmb3IgYSBzcGVjaWZpZWQgdXNlcgogIC8vIQogIC8vIVxwYXJhbSB0aXRsZSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8gZGVsZXRlCiAgLy8hXHBhcmFtIHVzZXJpZCBUaGUgaWQgdG8gZGVsZXRlIHRoZSBwcm9wZXJ0eSBmb3IKICAvLyFccGFyYW0gYWxsIChvcHRpb25hbCkgRGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXJpZC4KICAvLyFccmV0dXJuIHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb3RoZXJ3aXNlLgogIC8vIQogIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLyogZXhwaXJ5Y29kZSBpcyBhIHN0cnRvdGltZSBzdHJpbmcgKi8KICBmdW5jdGlvbiBFeHBpcmVUZW1wQ29kZXMoJGV4cGlyeWNvZGUpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEV4cGlyZSBhbnkgYW5kIGFsbCB1c2VycyB0aGF0IGhhdmUgYmVlbiBhd2F5IGZvciB0b28gbG9uZwogIGZ1bmN0aW9uIEV4cGlyZVVzZXJzKCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCB0aGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgdXNlciB3aXRoIHRoZSBzcGVjaWZpZWQgaWQKICAvLyEKICAvLyFccmV0dXJuIEVtYWlsIGFkZHJlc3MsIG9yIGZhbHNlCiAgLy8hCiAgZnVuY3Rpb24gR2V0RW1haWwoJHVzZXJpZCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdlbmVyYXRlIGEgcmFuZG9tIChidXQgbm90IHVzZWQpIHVzZXJuYW1lCiAgLy8hCiAgLy8hXCByZXR1cm4gdXNlcm5hbWUsIG9yIGZhbHNlCiAgLy8hCiAgZnVuY3Rpb24gR2VuZXJhdGVSYW5kb21Vc2VybmFtZSggJHByZWZpeCA9ICd1c2VyJyApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCB0aGUgZ3JvdXBpZCBnaXZlbiBhIGdyb3VwIG5hbWUKICAvLyEKICAvLyEgXHJldHVybiBncm91cGlkIG9yIGZhbHNlCiAgLy8hCiAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKQogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGdyb3VwCiAgLy8hCiAgLy8hIFRoaXMgbWV0aG9kIHJldHVybnMgYW4gYXNzb2NpYXRpb24gd2l0aCB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcGVjaWZpZWQgCiAgLy8hIGdyb3VwIGlkCiAgLy8hICAgIGlkID0+IFRoZSByZXF1ZXN0ZWQgZ3JvdXAgaWQKICAvLyEgICAgZ3JvdXBuYW1lID0+IFRoZSBuYW1lIG9mIHRoZSBncm91cAogIC8vISAgICBncm91cGRlc2MgPT4gVGhlIGdyb3VwIGRlc2NyaXB0aW9uCiAgLy8hCiAgLy8hIFxwYXJhbSBnaWQgVGhlIGdyb3VwIGlkCiAgLy8hIFxwYXJhbSBhc3NvY2lhdGl2ZSBhcnJheSwgb3IgYXJyYXkgd2l0aCBmaXJzdCBlbGVtZW50IG9mIGZhbHNlLCBzZWNvbmQgZWxlbWVudCBjb250YWlucyBlcnJvciBtZXNzYWdlCiAgLy8hIFxyZXR1cm4gYW4gYXNzb2NpYXRpdmUgYXJyYXkgd2l0aCBncm91cCBpbmZvLCBvciBmYWxzZQogIC8vIQogIGZ1bmN0aW9uIEdldEdyb3VwSW5mbyggJGdpZCApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCBhIGxpc3Qgb2YgYWxsIG9mIHRoZSBncm91cHMsIGFuZCB0aGVpciBpZCdzCiAgLy8hCiAgLy8hIFxyZXR1cm4gYW4gYXNzb2NpYXRpdmUgYXJyYXkgY29udGFpbmluZyBncm91cCBuYW1lcyBhcyBrZXlzLCBhbmQgaWQncyBhcyB2YWx1ZXMKICAvLyEKICBmdW5jdGlvbiBHZXRHcm91cExpc3QoKQogIHsKICAgIHJldHVybiBhcnJheSgpOwogIH0KCiAgLy8hIEdldCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29tcGxldGUgbGlzdCBvZiBncm91cHMKICAvLyEKICAvLyEgVGhpcyBtZXRob2QgcmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gYXNzb2NpYXRpb25zLCByZXByZXNlbnRpbmcgYWxsIG9mIHRoZQogIC8vISBncm91cHMgaW4gdGhlIHRhYmxlLgogIC8vIQogIC8vISBccmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gYXNzb2NpYXRpb25zCiAgLy8hCiAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0RnVsbCgpCiAgewogICAgcmV0dXJuIGFycmF5KCk7CiAgfQoKICAvLyEgR2V0IHRoZSBncm91cCBuYW1lIGdpdmVuIGEgZ3JvdXAgaWQKICAvLyEKICAvLyEgXHJldHVybiBncm91cCBuYW1lLCBvciBmYWxzZQogIC8vIQogIGZ1bmN0aW9uIEdldEdyb3VwTmFtZSgkZ3JvdXBpZCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCB0aGUgZ3JvdXAgZGVzY3JpcHRpb24gZ2l2ZW4gYSBncm91cCBpZAogIC8vIQogIC8vISBccmV0dXJuIGdyb3VwIGRlc2NyaXB0aW9uLCBvciBmYWxzZQogIC8vIQogIGZ1bmN0aW9uIEdldEdyb3VwRGVzYygkZ3JvdXBpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBmdW5jdGlvbiBHZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgfQoKICAvLyEgR2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIHRoYXQgdGhlIHNwZWNpZmllZCB1c2VyIGJlbG9uZ3MgdG8KICAvLyEKICAvLyEgUmV0dXJuIGEgc3RyaW5nIG9mIGNvbW1hIGRlbGltaXRlZCBncm91cCBuYW1lcywgY29ycmVzcG9uZGluZyB0byB0aGUKICAvLyEgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXMgYSBtZW1iZXIgb2YKICAvLyEKICAvLyEgXHJldHVybiBhIGNvbW1hIGRlbGltaXRlZCBsaXN0IG9mIGdyb3VwIG5hbWVzLCBvciAibm9uZSIKICAvLyEKICBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHMoJHVzZXJpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgUmV0dXJuIGEgY29tcGxldGUgbGlzdCBvZiB0aGUgZ3JvdXBzIHRoYXQgdGhpcyB1c2VyIGJlbG9uZ3MgdG8KICAvLyEKICAvLyEgUmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gcmVjb3JkcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBncm91cHMgdGhhdAogIC8vISB0aGlzIHVzZXIgaXMgYXNzb2NpYXRlZCB3aXRoLgogIC8vIQogIC8vISBccGFyYW0gdXNlcmlkIFRoZSB1c2VyaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIGZhbHNlIG9uIGVycm9yLCBvdGhlcndpc2UsIGFuIGFycmF5IG9mIGdyb3VwaW5mbyByZWNvcmRzLgogIC8vIQogIGZ1bmN0aW9uIEdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCBhIHNpbmdsZSBwcm9wZXJ0eSBkZWZpbml0aW9uIGJ5IG5hbWUKICBmdW5jdGlvbiBHZXRQcm9wZXJ0eURlZm4oICRuYW1lICkKICB7CiAgICByZXR1cm4gRkFMU0U7CiAgfQoKICAvLyEgR2V0IGFuIGFycmF5IG9mIHByb3BlcnR5IGRlZmluaXRpb25zCiAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICB9CgogIGZ1bmN0aW9uIEdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoICR0aXRsZSApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICB9CgogIC8vISBHZXQgdGhlIHVzZXJpZCBvZiB0aGUgdXNlciB3aXRoIHRoZSBtYXRjaGluZyBuYW1lCiAgLy8hCiAgLy8hIFxyZXR1cm4gVXNlcklELCBvciBmYWxzZQogIC8vIQogIGZ1bmN0aW9uIEdldFVzZXJJRCgkdXNlcm5hbWUpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgaW5mb3JtYXRpb24gYWJvdXQgYSB1c2VyCiAgLy8hCiAgLy8hIFRoaXMgbWV0aG9kIHJldHVybnMgYW4gYXNzb2NpYXRpb24gd2l0aCB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcGVjaWZpZWQgCiAgLy8hIHVzZXIgaWQKICAvLyEgICBpZCA9IHRoZSByZXF1ZXN0ZWQgdXNlciBpZAogIC8vISAgIHVzZXJuYW1lID0gdGhlIHVzZXJzIG5hbWUKICAvLyEgICBwYXNzd29yZCA9IHRoZSAoZW5jcnlwdGVkKSB1c2VyIHBhc3N3b3JkCiAgLy8hICAgZW1haWwgICAgPSB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcwogIC8vISAgIGV4cGlyZXMgID0gdGhlIHVzZXJzIGV4cGlyeSBkYXRlCiAgLy8hICAgc3RhdHVzICAgPSB0aGUgdXNlcnMgc3RhdHVzCiAgLy8hCiAgLy8hIFxwYXJhbSB1aWQgVGhlIHVzZXJpZCB0byBpbnF1aXJlIGFib3V0CiAgLy8hIFxyZXR1cm4gYW4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IGNvbnRhaW5zIHJldHVybiBzdGF0dXMgKHRydWUvZmFsc2UpLCB0aGUgc2Vjb25kIGVsZW1lbnQKICAvLyEgICAgaXMgZWl0aGVyIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGRldGFpbHMgYWJvdmUsIG9yIGFuIGVycm9yIG1lc3NhZ2UuCiAgLy8hCiAgZnVuY3Rpb24gR2V0VXNlckluZm8oICR1aWQgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBSZXR1cm4gdGhlIHVzZXJuYW1lIHRoYXQgbWFjaGVzIHRoZSBzcGVjaWZpZWQgdXNlciBpZAogIC8vIQogIC8vIVxyZXR1cm4gVGhlIG1hdGNoaW5nIHVzZXJuYW1lLCBvciBmYWxzZQogIC8vIQogIGZ1bmN0aW9uIEdldFVzZXJOYW1lKCR1c2VyaWQpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgYSBzaW5nbGUgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50IHVzZXIKICAvLyEKICAvLyEgR2V0IGEgc2luZ2xlIHByb3BlcnR5IGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLgogIC8vISAKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBuYW1lIG9mIHRoZSBwYXJhbWV0ZXIgdG8gcmV0dXJuCiAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgQSB2YWx1ZSB0byByZXR1cm4gaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGF0IHVzZXIKICAvLyEgXHJldHVybiBUaGUgcHJvcGVydHkgdmFsdWUsIG9yIGZhbHNlLgogIC8vIQogIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRlZmF1bHR2YWx1ZT1mYWxzZSkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCBwcm9wZXJ0eSBpbmZvcm1hdGlvbiBmb3IgdGhlIHNwZWNpZmllZCB1c2VyIGlkCiAgLy8hCiAgLy8hIFxwYXJhbSB0aXRsZSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgd2UgYXJlIHNlYXJjaGluZyBmb3IKICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgdXNlcmlkIGZvciB3aG8ncyBwcm9wZXJ0eSB3ZSBhcmUgc2VhcmNoaW5nCiAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgVGhlIHZhbHVlIHRvIHJldHVybiBpZiB0aGlzIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGlzIHVzZXIKICAvLyEgXHJldHVybiBUaGUgcHJvcGVydHkgdmFsdWUsIG9yIGZhbHNlLgogIC8vIQogIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsICRkZWZhdWx0dmFsdWU9ZmFsc2UpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBHZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cAogIC8vISBpbmNsdWRpbmcgYWxsIG9mIHRoZWlyIHByb3BlcnRpZXMKICAvLyEgCiAgLy8hIFRoaXMgbWV0aG9kIHJldHVybnMgYW4gYXNzb2NpYXRpdmUgYXJyYXkgKHdpdGggdXNlcmlkIGFzIHRoZSBrZXkpCiAgLy8hIAogIC8vISBccGFyYW0gZ3JvdXBpZCB0aGUgZGVzaXJlZCBncm91cCBpZAogIC8vISBccmV0dXJuIGFuIGFycmF5IG9mIHVzZXIgaW5mb3JtYXRpb24gKHNlZSBHZXRVc2VySW5mbyksIG9yIGZhbHNlCiAgLy8hIFxzYSBHZXRVc2VySW5mbwogIC8vIQogIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdyb3VwaWQpCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIEdldCBhIGxpc3Qgb2YgdGhlIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAvLyEKICAvLyEgVGhpcyBtZXRob2QgcmV0dXJucyBhbiBhc3NvY2lhdGl2ZSBhcnJheSBjb250YWluaW5nIGEgY29tcGxldGUgc2V0IG9mIHRoZQogIC8vISBpbmZvcm1hdGlvbiBhYm91dCBhbGwgb2YgdGhlIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAvLyEgCiAgLy8hIFxwYXJhbSBncm91cGlkIHRoZSBkZXNpcmVkIGdyb3VwIGlkCiAgLy8hIFxyZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBpbmZvcm1hdGlvbiAoc2VlIEdldFVzZXJJbmZvKSwgb3IgZmFsc2UKICAvLyEgXHNhIEdldFVzZXJJbmZvCiAgLy8hCiAgZnVuY3Rpb24gR2V0VXNlcnNJbkdyb3VwKCAkZ3JvdXBpZCA9ICcnICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgUmV0dXJuIGFuIGFycmF5IG9mIHRoZSB1c2VyJ3MgcHJvcGVydGllcwogIC8vIQogIC8vISBSZXR1cm5zIGEgY29tcGxldGUgbGlzdCBvZiB0aGUgdXNlcnMgcHJvcGVydGllcwogIC8vIQogIC8vISBccGFyYW0gdWlkIFRoZSB1aWQgdG8gdGVzdAogIC8vISBccmV0dXJuIGZhbHNlIG9uIGVycm9yLCBvdGhlcndpc2UgYW4gYXJyYXkgb2YgYXNzb2NpYXRpb25zLCBlYWNoIGFzc29jaWF0aW9uCiAgLy8hICAgaGFzIHRoZSBmb2xsb3dpbmcga2V5czoKICAvLyEgICAgICBpZCAgICAgPSBUaGUgcHJvcGVydHkgaWQKICAvLyEgICAgICB1c2VyaWQgPSBUaGUgbWF0Y2hpbmcgdXNlciBpZAogIC8vISAgICAgIHRpdGxlICA9IFRoZSBwcm9wZXJ0eSB0aXRsZQogIC8vISAgICAgIGRhdGEgICA9IFRoZSBwcm9wZXJ0eSBkYXRhCiAgLy8hCiAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnRpZXMoJHVpZCkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBmdW5jdGlvbiBHZXRVc2VyVGVtcENvZGUoICR1aWQgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgfQoKICAvLyEgQSBmdW5jdGlvbiB0aGF0IHRlc3RzIHdldGhlciBhIGdyb3VwIHdpdGggdGhlIHNwZWZpZmllZCBpZCBleGlzdHMKICAvLyEKICAvLyEgXHBhcmFtIGdpZCBUaGUgZGVzaXJlZCBncm91cCBpZAogIC8vISBccmV0dXJuIGJvb2xlYW4KICAgLy8hCiAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeUlEKCAkZ2lkICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgQSBmdW5jdGlvbiB0aGF0IHRlc3RzIHdldGhlciBhIGdyb3VwIHdpdGggdGhlIG5hbWUgZXhpc3RzCiAgLy8hCiAgLy8hIFxwYXJhbSBnaWQgVGhlIGRlc2lyZWQgZ3JvdXAgbmFtZQogIC8vISBccmV0dXJuIGJvb2xlYW4KICAgLy8hCiAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBmdW5jdGlvbiBHZXRFeHBpcnlEYXRlKCAkdWlkICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICBmdW5jdGlvbiBJc0FjY291bnRFeHBpcmVkKCAkdWlkICkKICB7CiAgICByZXR1cm4gdHJ1ZTsKICB9CgogIC8vISBUZXN0IHdldGhlciB0aGUgc3BlY2lmaWVkIGVtYWlsIGFkZHJlc3MgcGFzc2VzIHRoZSBydWxlcy4KICAvLyEKICAvLyEgVGhpcyBtZXRob2Qgd2lsbCB0ZXN0IGlmIHRoZSBlbWFpbCBhZGRyZXNzIHN1cHBsaWVkIG1hdGNoZXMgdGhlIAogIC8vISBzZXQgcnVsZXMuICBPcHRpb25hbGx5LCB0aGUgZW1haWwgYWRkcmVzcyBjYW4gYmUgdmFsaWRhdGVkIHZpYQogIC8vISBzbXRwLgogIC8vIQogIC8vISBccGFyYW0gIGVtYWlsIFRoZSBhZGRyZXNzIHRvIHRlc3QKICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGluZGljdWF0ZXMgc3VjY2VzcyBvciBmYWlsdXJlCiAgLy8hICAgIHRoZSBzZWNvbmQgZWxlbWVudCBpcyB0aGUgZXJyb3IgbWVzc2FnZSwgaWYgYW4gZXJyb3Igb2NjdXJyZWQKICAvLyEKICBmdW5jdGlvbiBJc1ZhbGlkRW1haWxBZGRyZXNzKCAkZW1haWwgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBDaGVjayB0aGUgdmFsaWRpdHkgb2YgdGhlIHN1cHBsaWVkIHBhc3N3b3JkCiAgLy8hCiAgLy8hXHBhcmFtICBwYXNzd29yZCBUaGUgcGFzc3dvcmQgdG8gdGVzdC4KICAvLyFccmV0dXJuIHRydWUgaWYgdGhlIHBhc3N3b3JkIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBmdW5jdGlvbiBJc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIENoZWNrIHdldGhlciB0aGUgdXNlcm5hbWUgc3VwcGxpZWQgcGFzc2VzIHRoZSBydWxlcwogIC8vIQogIC8vIVxwYXJhbSB1c2VybmFtZSBUaGUgdXNlcm5hbWUgdG8gYmUgdGVzdGVkCiAgLy8hXHJldHVybiBib29sZWFuIHRydWUvZmFsc2UKICAvLyEKICBmdW5jdGlvbiBJc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFRlc3RzIHdldGhlciB0aGUgY3VycmVudCB1c2VyIGlzIGxvZ2dlZCBpbiBvciBub3QuCiAgZnVuY3Rpb24gTG9nZ2VkSW4oKSAKICB7CiAgICBpZiAoJHRoaXMtPkxvZ2dlZEluSWQoKT09ZmFsc2UpIHJldHVybiBmYWxzZTsgZWxzZSByZXR1cm4gdHJ1ZTsKICB9CgogIC8vISBSZXR1cm4gdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIGN1cnJlbnQgdXNlcgogIC8vIQogIC8vISBccmV0dXJucyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcgogIC8vISAgIGlmIG5vb25lIGlzIGxvZ2dlZCBpbiwgdGhlbiBhbiBlbXB0eSBzdHJpbmcgaXMgcmV0dXJuZWQKICAvLyEKICBmdW5jdGlvbiBMb2dnZWRJbkVtYWlsKCkgCiAgewogICAgcmV0dXJuICIiOwogIH0KCiAgLy8hIFJldHVybiB0aGUgdXNlcmlkIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICBmdW5jdGlvbiBMb2dnZWRJbklkKCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFJldHVybiB0aGUgdXNlcm5hbWUgb2YgdGhlIGN1cnJlbnQgdXNlcgogIC8vIQogIC8vISBccmV0dXJucyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHVzZXJuYW1lIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAvLyEgICBpZiBub29uZSBpcyBsb2dnZWQgaW4sIHRoZW4gYW4gZW1wdHkgc3RyaW5nIGlzIHJldHVybmVkCiAgLy8hCiAgZnVuY3Rpb24gTG9nZ2VkSW5OYW1lKCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gTG9naW4oICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzID0gJycsICRtZDVwdyA9IGZhbHNlLAoJCSAgJGZvcmNlX2xvZ291dCA9IGZhbHNlKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgfQoKCiAgLy8hIExvZ291dCB0aGUgY3VycmVudCB1c2VyCiAgZnVuY3Rpb24gTG9nb3V0KCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFRlc3Qgd2V0aGVyIGFuIGFzc29jaWF0aW9uIGV4aXN0cyBiZXR3ZWVuIHRoZSBzcGVjaWZpZWQgdXNlciBhbmQgZ3JvdXAKICAvLyEKICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgdXNlcmlkIHRvIHRlc3QKICAvLyEgXHBhcmFtIGdyb3VwaWQgVGhlIGdyb3VwaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIHRydWUgaWYgYW4gYXNzb2NpYXRpb24gZXhpc3RzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpIAogIHsKICAgIHJldHVybiBmYWxzZTsKICB9CgogIC8vISBSZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cAogIC8vIQogIC8vIVRoaXMgbWV0aG9kIHJldm9rZXMgdGhlIG1lbWJlcnNoaXAgb2YgdXNlciAkdWlkIGZyb20gZ3JvdXAgJGdpZAogIC8vIQogIC8vIVxwYXJhbSB1aWQKICAvLyFccGFyYW0gZ2lkCiAgLy8hXHJldHVybiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgY29udGFpbnMgZXhpdCBzdGF0dXMgKGJvb2xlYW4pLCB0aGUgc2Vjb25kIGVsZW1lbnQKICAvLyEgICAob3B0aW9uYWwpIHJldHVybnMgYW4gZXJyb3IgbWVzc2FnZSwgaWYgYW4gZXJyb3Igb2NjdXJyZWQuCiAgLy8hCiAgZnVuY3Rpb24gUmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApCiAgewogICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogIH0KCiAgZnVuY3Rpb24gUmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICkKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKICAvLyEgQSBtZXRob2QgdG8gbW9kaWZ5IGFuIGV4aXN0aW5nIGdyb3VwCiAgLy8hCiAgLy8hXHBhcmFtIGdpZCBBbiBleGlzdGluZyBncm91cCBpZAogIC8vIVxwYXJhbSBuYW1lIFRoZSBuZXcgZ3JvdXAgbmFtZQogIC8vIVxwYXJhbSBkZXNjIFRoZSBuZXcgZ3JvdXAgZGVzY3JpcHRpb24KICAvLyFccmV0dXJuIEFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGJvb2xlYW4gd2hpY2ggaW5kaWNhdGVzIHN1Y2Nlc3Mgb3IgZmFpbHVyZSwgdGhlCiAgLy8hICBzZWNvbmQgZWxlbWVudCAob3B0aW9uYWwpIGNvbnRhaW5zIGFuIGVycm9yIG1lc3NhZ2UgaW4gdGhlIGV2ZW50IG9mIGFuIGVycm9yLgogIC8vIQogIGZ1bmN0aW9uIFNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIGZ1bmN0aW9uIFNldFByb3BlcnR5RGVmbiggJG5hbWUsICRuZXduYW1lLCAkcHJvbXB0LCAkbGVuZ3RoLCAkdHlwZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIE1vZGlmeSBhbiBleGlzdGluZyBncm91cAogIC8vIQogIC8vISBccGFyYW0gdWlkIFRoZSBpZCBvZiB0aGUgZXhpc3RpbmcgdXNlcgogIC8vISBccGFyYW0gdXNlcm5hbWUgVGhlIG5ldyB1c2VyIG5hbWUKICAvLyEgXHBhcmFtIGVtYWlsIFRoZSBuZXcgZW1haWwgYWRkcmVzcwogIC8vISBccGFyYW0gcGFzc3dvcmQgVGhlIG5ldyAodW5lbmNyeXB0ZWQpIHBhc3N3b3JkCiAgLy8hIFxwYXJhbSBleHBpcmVzIFRoZSBuZXcgZXhwaXJ5IGRhdGUKICAvLyEgXHBhcmFtIHN0YXR1cyB0aGUgbmV3IHN0YXR1cwogIC8vISBccmV0dXJuIEFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBpcyBhIGJvb2xlYW4gd2hpY2ggaW5kaWNhdGVzIHN1Y2Nlc3Mgb3IgZmFpbHVyZSwgdGhlCiAgLy8hICAgIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSBpbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IuCiAgLy8hCiAgZnVuY3Rpb24gU2V0VXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzID0gZmFsc2UgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBTZXQgdGhlIHVzZXIncyBncm91cCBtZW1iZXJzaGlwcyBhYnNvbHV0ZWx5CiAgLy8hCiAgLy8hVGhpcyBtZXRob2QgcmVtb3ZlcyBhbGwgcHJldmlvdXMgZ3JvdXAgYXNzb2NpYXRpb25zLCBhbmQgc2V0cyBuZXcgb25lcwogIC8vIXRvIG1hdGNoIHRob3NlIGluIHRoZSBncnBpZHMgYXJyYXkuCiAgLy8hCiAgLy8hXHBhcmFtIHVpZCBUaGUgdXNlciBpZCB0byBlZGl0CiAgLy8hXHBhcmFtIGdycGlkcyBBbiBhcnJheSBvZiB1c2VyIGlkcyB0byBhc3NvY2lhdGUgd2l0aAogIC8vIVxyZXR1cm5zIHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb3RoZXJ3aXNlCiAgLy8hCiAgZnVuY3Rpb24gU2V0VXNlckdyb3VwcyggJHVpZCwgJGdycGlkcyApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gU2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKQogIHsKICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICB9CgogIC8vISBTZXQgdGhlIHVzZXIncyBwcm9wZXJ0aWVzIGFic29sdXRlbHkuCiAgLy8hCiAgLy8hIFRoaXMgbWV0aG9kIGRlbGV0ZXMgYW55IGV4aXN0aW5nIHVzZXIgcHJvcGVydGllcyBhbmQgc2V0cyB0aGVtIGFjY29yZGluZyB0byB0aGUgcHJvcGVydGllcwogIC8vISBzdXBwbGllZC4KICAvLyEKICAvLyEgXHBhcmFtIHVpZCBUaGUgdXNlciBpZCB0byBiZSBlZGl0ZWQKICAvLyEgXHBhcmFtIHByb3BzIEFuIGFycmF5IG9mIEtleT1WYWx1ZSBzdHJpbmdzIGNvbnNpc3Rpbmcgb2YgdGhlIHVzZXIgcHJvcGVydGllcy4KICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogIC8vIQogIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0aWVzKCAkdWlkLCAkcHJvcHMgKSAgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFNldCBhIHByb3BlcnR5IGZvciB0aGUgY3VycmVudCB1c2VyCiAgLy8hIAogIC8vISBTZXRzIGEgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAvLyEKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBwcm9wZXJ0eSBuYW1lCiAgLy8hIFxwYXJhbSBkYXRhICBUaGUgcHJvcGVydHkgdmFsdWUKICAvLyEgXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAvLyEKICBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydHkoJHRpdGxlLCRkYXRhKSAKICB7CiAgICByZXR1cm4gZmFsc2U7CiAgfQoKCiAgLy8hIFNldCBhIHByb3BlcnR5IGZvciB0aGUgcHJvdmlkZWQgdXNlcmlkCiAgLy8hCiAgLy8hIFNldHMgYSBwcm9wZXJ0eSBleGNsdXNpdmVseSBmb3IgYSBjZXJ0YWluIHVzZXIKICAvLyEKICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBwcm9wZXJ0eSBuYW1lCiAgLy8hIFxwYXJhbSBkYXRhICBUaGUgcHJvcGVydHkgdmFsdWUKICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgZGVzaXJlZCB1c2VyIGlkCiAgLy8hCiAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkgCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgZnVuY3Rpb24gU2V0VXNlclRlbXBDb2RlKCAkdWlkLCAkY29kZSApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8hIFRlc3QgaWYgdGhlIHVzZXIgaWQgaXMgYWxyZWFkeSB0YWtlbgogIC8vIQogIC8vISBUZXN0cyBpZiBhIHVzZXIgYnkgdGhhdCBpZCBhbHJlYWR5IGV4aXN0cwogIC8vIQogIC8vISBccGFyYW0gdWlkIFRoZSB1c2VyaWQgdG8gdGVzdAogIC8vISBccmV0dXJuIGJvb2xlYW4KICAvLyEKICBmdW5jdGlvbiBVc2VyRXhpc3RzQnlJRCggJHVpZCApCiAgewogICAgcmV0dXJuIGZhbHNlOwogIH0KCiAgLy8KICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgLy8KCn0gLy8gY2xhc3MKCj8+Cg==]]></data>
	</file>
</module>
